共计 18306 个字符,预计需要花费 46 分钟才能阅读完成。
反馈疾速,竞争强烈的算法较量是算法从业者晋升技术水平的重要形式,从若干行业外围问题形象出的算法较量具备很强的实际意义。本文联合笔者在 7 次 Kaggle/KDD Cup 中的冠军教训,对于多领域建模优化,AutoML 技术框架,以及面对新问题如何剖析建模三个方面进行了介绍。心愿可能让读者播种较量中的通用高效建模办法与问题了解思路。
1 背景与简介
反馈疾速、竞争强烈的算法较量是算法从业者晋升技术水平的重要形式。从若干行业外围问题中形象出的算法较量题目具备很强的实际意义,而较量的实时积分榜促使参加者不断改进,以试图超过以后的最佳实际,而且获胜计划对于工业界与学术界也有很强的推动作用,例如 KDD Cup 较量产出的 Field-Aware Factorization Machine(FFM)算法 [1]、ImageNet 较量产出的 ResNet 模型[2] 在业界都有着宽泛的利用。
美团到店广告品质预估团队在美团外部算法大赛 MDD Cup 中取得了第一名,受大赛组委会的邀请,心愿分享一些比拟通用的较量教训。本文是笔者 7 次 Kaggle/KDD Cup 冠军教训(如下图 1 所示)的分享,心愿能帮忙到更多的同学。
大家都晓得,Kaggle/KDD Cup 的较量均为国内顶级赛事,在较量圈与工业界有着很大的影响力。具体而言,Kaggle 是国内上最大的顶级数据挖掘平台,领有寰球几十万用户,通过高额奖金与分享气氛产出了大量优良算法计划,例如 Heritage Health 奖金高达三百万美元。目前,Kaggle 较量在艾滋病钻研、棋牌评级和交通预测等方面均获得了突出成绩,得益于此,Kaggle 平台起初被 Google 公司收买。
ACM SIGKDD(国内数据挖掘与常识发现大会,简称 KDD)是数据挖掘畛域的国内顶级会议。KDD Cup 较量是由 SIGKDD 主办的数据挖掘钻研畛域的国内顶级赛事。从 1997 年开始,每年举办一次,是目前数据挖掘畛域最具影响力的赛事。该较量同时面向企业界和学术界,星散了世界数据挖掘界的顶尖专家、学者、工程师、学生等加入,为数据挖掘从业者们提供了一个学术交流和研究成果展现的平台。
通过剖析不难发现,KDD Cup 举办 20 年来,始终紧密结合工业界前沿与热点问题,演进次要分为三个阶段。第一阶段从 2002 年左右开始,专一于互联网的热点举荐零碎方面问题,包含举荐、广告,行为预测等;第二阶段聚焦在传统行业问题,比拟关注教育、环境、医疗等畛域;而在第三阶段,自 2019 年以来,重点关注非监督问题,例如 AutoML、Debiasing、强化学习等问题,这类较量的独特特点是通过以前办法难以解决现有的新问题。这三个阶段趋势也肯定水平反馈着以后工业界与学术界的难点与重点,无论从形式、办法,还是从问题维度,都呈现出从窄到宽,从规范向非标准演进的趋势。
本文会先介绍笔者的 7 次 KDD Cup/Kaggle 较量冠军的计划与了解,问题波及举荐、广告、交通、环境、人工智能公平性等多个畛域问题。接着会介绍在以上较量中施展关键作用的 AutoML 技术框架,包含自动化特色工程,自动化模型优化,自动化模型交融等,以及如何通过该技术框架系统性建模不同的问题。最初再介绍以上较量造成的通用办法,即面对一个新问题,如何进行剖析、了解、建模、与挑战解决、从而实现问题的深度优化。
本文次要面向以下两类读者,其余感兴趣的同学也欢送理解。
- 算法较量爱好者,心愿了解国内数据挖掘顶级较量冠军计划的办法与逻辑,获得更好的名次。
- 工业界工程师与研究员,借鉴较量办法,利用于理论工作,获得更优的后果。
2 多领域建模优化
本局部将咱们将以上较量分为三个局部进行计划介绍,第一部分为举荐零碎问题;第二局部为工夫序列问题,跟第一局部的重要差异在于预测的是将来的多点序列,而非举荐零碎的单点预估;第三局部为自动化机器学习问题,该问题较量输出不为繁多数据集,而是多问题的多数据集,并且在最终评估的 b 榜数据集问题也是未知的。因而,对于计划的鲁棒性要求十分高。如表 1 所示,后续将具体介绍七个较量赛道的获胜计划,但会合并为五个外围解决方案进行具体的介绍。
2.1 举荐零碎问题
本节次要介绍 Kaggle Outbrain Ads Click Prediction 和 KDD Cup 2020 Debiasing 较量。二者工作都是面向用户下一次点击预估问题,但因为利用场景与背景的不同,存在着不同的挑战:前者的数据规模宏大,波及到数亿个用户在千级别数量异构站点上的数十亿条浏览记录,对模型优化、交融有着严格的要求;后者则尤为关注举荐零碎中的偏差问题,要求参赛选手提出无效的解决方案,来缓解选择性偏差以及风行度偏差,从而进步举荐零碎的公平性。本节将别离介绍这两场较量。
Kaggle Outbrain Ads Click Prediction:基于多层级多因子的模型交融计划
比赛问题与挑战:比赛要求在 Outbrain 网页内容发现平台上,预估用户下一次点击网页广告,具体参考:Kaggle Outbrain 较量介绍详情[26]。参赛选手会面对以下两个重要挑战:
- 异构性:平台提供需求方平台(DSP)广告投放服务,波及到用户在数千个异质站点上的行为刻画。
- 超高维稠密性:特色高维稠密,数据规模宏大,蕴含了 7 亿个用户、20 亿次浏览记录。
基于多层级多因子的模型交融计划:针对本次赛题的挑战,咱们队采纳了基于多层级多因子的模型交融计划来进行建模。一方面对于异构站点行为,繁多模型不易于全面刻画,另一方面,亿级别的数据规模给多模型的别离优化带来了较大的空间。因为 FFM 具备弱小的特色穿插能力以及较强的泛化能力,能更好地解决高维稠密特色。因而,咱们抉择该模型作为交融基模型的主模型。模型交融通过不同模型学习到有差异性的内容,从而无效开掘用户在不同站点上的异质行为。模型交融的要害是产生并联合“好而不同”的模型3。基于多层级多因子的模型交融计划首先通过模型差异性、特色差异性多个角度来结构模型之间的差异性,而后通过多层级以及应用基学习器的多特色因子(模型 pCTR 预估值、隐层表征)进行交融:
具体地,如上图 3 所示。第一层级的目标是构建出有差异性的单个模型,次要通过不同类型的模型在用户最近行为、全副行为数据以及不同特色汇合上别离进行训练,来产生差异性。第二层级则通过不同单个模型的组合进一步产生差异性,差异性的晋升来源于两个方面,别离是模型组合形式的不同(用不同模型,依据单模型特色进行打分)以及用于模型组合的特色因子的不同,这里特色因子包含模型的打分以及模型中的隐层参数。第三层级则是思考如何将不同交融后果组合在一起。因为划分进去的验证数据集较小,如果应用简单非线性模型往往容易过拟合。所以这里应用了一个基于束缚的线性模型来取得第二层级模型的交融权重。
上述计划同咱们业务中模型相比,采纳更多的模型交融,在获得高精度的同时产生了更高的开销,而在理论业务中要更加重视成果与效率的均衡。
KDD Cup 2020 Debasing:基于 i2i 多跳游走的 Debiasing 计划
比赛问题与挑战:比赛是以电子商务平台为背景,预估用户下一次点击的商品。并围绕着如何缓解举荐零碎中的选择性偏差以及风行度偏差进行开展,具体参考:KDD Cup 2020 Debiasing 较量介绍详情[27]。举荐零碎中的偏差问题有很多,除了上述两种偏差,还有曝光偏差、位次偏差等等5。咱们团队之前也对位次偏差进行了相干钻研[7]。而本次比赛为了更好地掂量举荐系统对历史低热度商品的举荐成果,选手的问题次要采纳 NDCG@50_half 指标进行排名。该指标是从整个评测数据集中取出一半历史曝光少的点击商品,因为是低热度且有被点击的商品,能够跟更好的评估偏差问题。本次较量蕴含了以下挑战:
- 赛题只提供点击数据,结构候选集时须要思考选择性偏差问题。
- 不同商品热度差别大,商品历史点击次数出现一个长尾散布,数据存在重大的风行度偏差问题,并且评估指标 NDCG@50_half 用于考查低热度商品的排序品质。
基于 i2i 游走的 Debiasing 排序计划:咱们的计划为基于 i2i 建模的排序框架。如图所示,整体流程蕴含四个阶段:i2i 构图与多跳游走、i2i 样本构建、i2i 建模以及 u2i 排序。前两个阶段解决了选择性偏差问题,后两个阶段则侧重于解决风行度偏差问题。
第一个阶段是基于用户行为数据和商品多模态数据构建 i2i 图,并在该图上多跳游走生成候选样本。这种形式扩充了商品候选集,更好地近似零碎实在候选集,缓解了选择性偏差。
第二个阶段是依据不同 i2i 关系计算 i2i 候选样本的类似度,从而决定每种 i2i 关系下候选样本的数量,最终造成候选集。通过不同候选的构造方法,摸索出更多有差别的候选商品,能够进一步缓解选择性偏差问题。
第三个阶段包含基于 i2i 样本集的自动化特色工程,以及应用风行度加权的损失函数进行打消风行度偏差的建模。自动化特色工程中蕴含了商品多模态信息的刻画,这类信息可能反馈商品在热度信息以外的竞争关系,可能肯定水平上缓解风行度偏差问题。而风行度加权的损失函数定义如下:
其中,参数 α 与风行度成反比,来减弱风行商品的权重,从而打消风行度偏差。参数 β 是正样本权重,用于解决样本不均衡问题。
第四个阶段首先将 i2i 打分通过 Max 操作进行聚合,突出打分汇合中低热度商品的高分信号,从而缓解风行度偏差问题。而后对商品列表的打分联合商品热度进行调整解决,进而缓解风行度偏差问题。
对于该较量的更多细节,大家能够参考《KDD Cup 2020 Debiasing 较量冠军技术计划及在美团的实际》一文。
2.2 工夫序列问题
时序系列问题:工夫序列问题相比于举荐零碎问题的有较大差别。在工作上,举荐零碎预测的是将来单个点,而工夫序列预测将来多个点;在数据上,举荐零碎通常蕴含用户、商品、上下文等多维信息,工夫序列通常蕴含工夫空间上变动的数值序列信息。
工夫序列比赛:在本文中,工夫序列比赛次要介绍 KDD Cup 2018 Fresh Air 和 KDD Cup 2017 HighWay Tollgates Traffic Flow Prediction。它们都是工夫序列问题,前者是预测将来两天的污染物浓度以及变动,后者是预测将来几个小时高速交通状况和变动。它们的共同点一是传统行业问题,实际意义强;二是存在各种突变性、稳定性低;三是都波及到多地区、多空间问题,需联合时空进行建模。它们的异同点是污染物浓度渐变须要一个短期工夫能力产生,数据在渐变时存在肯定规律性,但交通渐变具备强偶发性,交通路线容易受到偶发性车祸、偶发性地质灾害等影响,数据不会呈现出显著的规律性。
KDD Cup 2018 Fresh Air:基于时空门控 DNN 和 Seq2Seq 的空气质量预测计划
比赛问题及挑战:比赛指标是预测北京和伦敦 48 个站点在将来 48 小时里 PM2.5/PM10/O3 的浓度变动,具体参考:KDD Cup 2018 较量介绍详情[28]。参赛选手须要解决以下两个挑战:
- 时序性:预测将来 48 小时的净化浓度状况,理论污染物浓度存在渐变的状况。如图 5 所示,站点 2 在 05-05 以及 05-06、05-07 之间存在大量的稳定和渐变。
- 空间性:不同站点上污染物浓度有显著差别,并且和站点之间的拓扑构造相关联。如图所示,站点 1、2 的波形有较大差异,然而在 05-07 产生了雷同的凸起。
基于 Spatial-temporal Gated DNN 与 Seq2Seq 的模型交融计划[9]:为了强化工夫序列和空间拓扑的建模,咱们引入了 Spatial-temporal Gated DNN 与 Seq2Seq 两个模型,并与 LightGBM 一起构建模型交融计划,具体如下。
(1)Spatial-temporal Gated DNN:对于时序问题而言,因为将来预测邻近工夫点的统计特征值差别较小,间接应用 DNN 模型会使得不同小时和站点的预测值差异性小,因而咱们在 DNN 中引入 Spatial-temporal Gate 来突出时空信息。如下图 6 所示,Spatial-temporal Gated DNN 采纳了双塔构造,拆分了时空信息和其余信息,并且通过门函数来管制和强调时空信息,最终可能进步模型对时空的敏感度,试验中发现引入 swish 激活函数 f(x) = x · sigmoid(x)能晋升模型精度。
(2)Seq2Seq:只管 Spatial-temporal Gated DNN 相比 DNN 对时空信息进行了强化,然而它们的数据建模形式都是将样本的历史数据复制 48 份,别离打上将来 48 小时的标签,相当于别离预测 48 小时的净化浓度值。这种形式其实和工夫序列预测工作有所脱离,失去了工夫连续性。而 Seq2Seq 建模形式能够很天然地解决这一问题,并且获得了不错的成果。下图 7 是本次较量中,咱们采纳的 Seq2Seq 模型构造。针对时序性挑战,历史天气特色通过工夫前后组织成序列输出到编码器当中,解码器依赖于编码后果以及将来天气预报特色进行解码,失去 48 小时的污染物浓度序列。将来天气预报信息对齐到解码器每个小时的解码过程中,解码器能够通过天气预报中的天气信息(比方风级、气压等)来无效预估出渐变值。针对空间性挑战,计划在模型中退出站点嵌入以及空间拓扑结构特征来刻画空间信息,在模型中和天气信息进行拼接以及归一化,从而实现时空联结建模。
(3)模型交融:咱们队采纳了 Stacking 交融的形式,单个学习器通过不同模型、数据、建模形式来构建差异性。LightGBM 模型应用了天气品质、历史统计、空间拓扑等特色,Spatial-temporal Gate 则是引入了门构造,强化了时空信息。Seq2Seq 利用序列到序列的建模形式,刻画了序列的连续性、波动性。最初应用了基于束缚的线性模型将不同的单个学习器进行交融。
更多详情,大家可参考 SIGKDD 会议论文:AccuAir: Winning Solution to Air Quality Prediction for KDD Cup 2018。
KDD Cup 2017 Traffic Flow Prediction:基于穿插验证降噪与多损失交融的高稳定性交通预测计划
比赛问题及挑战:比赛指标是以 20 分钟为工夫窗口,给定前 2 小时高速公路入口到关卡的行驶情况,预测将来 2 小时的行驶情况,具体可参考:KDD Cup 2017 较量介绍详情[29]。比赛依据行驶情况的不同,分为了行驶工夫预测和交通流量预测两个赛道。参赛选手须要解决以下两个挑战:
- 数据小、噪声多。如下图 8 所示,框中时间段的数值散布和其余时间段的散布有显著的差别。
- 极值对后果影响大,评估指标应用了 MAPE,如下式,其中 At 代表理论值,Ft 代表预测值,当理论值为较小值(特地为极小值)时,这一项对整个和式的奉献领有很大的权重。
基于穿插验证降噪的极值点优化模型交融计划:
(1)基于穿插验证的降噪,因为在线仅能进行一天一次的提交,并且最终的评测会由 A 榜测试集切到 B 榜测试集,并且因为 A 榜数据集小在线评测指标存在不稳定性,故而离线迭代验证的形式就显得尤为重要。为了能使离线迭代相信,咱们采纳两种验证形式进行辅助,第一种是下一天同时间段验证,咱们在训练集最初 M 天上对每一天都取在线同一时间段的数据集,失去 M 个验证集。第二种是 N -fold 天级采样验证,相似 N -fold 穿插验证,咱们取最初 N 天的每一天数据作为验证集,失去 N 个验证集。这两种办法独特辅助模型离线成果的迭代,保障了咱们在 B 榜上的鲁棒性。
(2)极值点问题优化和模型交融:因为 MAPE 对于极值较敏感,咱们在标签、损失、样本权重等不同方面别离进行多种不同解决,例如标签上进行 Log 变换和 Box-Cox 变换,Log 变换是对标签进行 Log 转换,模型拟合后对预估值进行还原,这样能帮忙模型关注于小值同时更鲁棒,损失应用 MAE、MSE 等多种,样本权重上利用标签对样本进行加权等,咱们在 XGBoost、LightGBM、DNN 上引入这些解决生成多个不同模型进行模型交融,优化极值点问题,达到鲁棒成果。
备注:特别感谢独特加入 KDD Cup 2017 的陈欢、燕鹏、黄攀等同学。
2.3 自动化机器学习问题
自动化机器学习问题 [10] 次要包含 KDD Cup 2019 AutoML 和 KDD Cup 2020 AutoGraph 较量。该类问题,个别具备以下三个个性:
- 数据多样性强:15+ 个数据集,来源于不同畛域问题,且不会标识数据起源,要求选手设计的自动化机器学习框架可能兼容多畛域的数据,并对不同畛域数据做出肯定的适配。
- 自动化的鲁棒性:公共排行榜与公有榜评测数据不一样,最终评分依照多个数据集的均匀排名 / 得分失去,要求可能在未曾见过的数据集上失去鲁棒的后果。
- 性能限度:与事实问题搜寻空间有较大对应,须要在无限工夫和内存上求解。
KDD Cup 2020 AutoGraph:基于代理模型的主动多层次图学习优化计划
比赛问题及挑战 :自动化图示意学习挑战赛(AutoGraph)是第一个利用于图构造数据的 AutoML 挑战,详情请见 KDD Cup 2020 AutoGraph 较量介绍[30]。比赛抉择图结点多分类工作来评估示意学习的品质,参与者需设计自动化图示意学习[11-13] 解决方案。该计划须要基于图的给定特色、邻域和构造信息,高效地学习每个结点的高质量示意。较量数据从实在业务中收集,蕴含社交网络、论文网络、常识图谱等多种畛域共 15 个,其中 5 个数据集可供下载,5 个反馈数据集评估计划在公共排行榜的得分,残余 5 个数据集在最初一次提交中评估最终排名。
每个数据集给予了图结点 id 和结点特色,图边和边权信息,以及该数据集的工夫估算(100-200 秒)和内存算力(30G)。每个训练集随机将划分 40% 结点为训练集,60% 结点为测试集,参赛者设计自动化图学习解决方案,对测试集结点进行分类。每个数据集会通过精度(Accuracy)来确定排名,最终排名将依据最初 5 个数据集的均匀排名来评估。综上,本次较量须要在未见过的 5 个数据集上间接执行自动化图学习计划,参赛者过后面临着以下挑战:
- 图模型具备高方差、稳定性低等特点。
- 每个数据集都有严格的工夫估算和内存算力限度。
基于代理模型的自动化多层次模型优化[14]
多类别层次化图模型优化:
(1)候选图模型的生成:事实世界中的图通常是多种属性的组合,这些属性信息很难只用一种办法捕获齐全,因而,咱们应用了基于谱域、空域、Attention 机制等多种不同类型的模型来捕获多种属性关系。不同模型在不同数据集上成果差别较大,为了避免后续模型交融时退出成果较差的模型,会对 GCN、GAT、APPNP、TAGC、DNA、GraphSAGE、GraphMix、Grand、GCNII 等候选模型进行疾速筛选,失去模型池。
(2)层次模型集成 :这部分共蕴含两个维度的集成。第一层为 模型自集成 ,为了解决图模型对初始化特地敏感,同种模型精度稳定可达±1% 的问题,采纳了同模型的自集成,同时生成多个同种模型,并取模型预测的平均值作为该种模型的输入后果,胜利升高了同种模型方差,进步了模型在不同数据集上的稳定性。第二层为 不同模型集成,为了无效地利用来自本地和寰球邻域的信息,充沛捕捉图的不同性质,咱们采纳加权集成了不同品种的图模型,进一步提高性能。同时针对在参数搜寻阶段,须要同时优化模型内参数 α,以及多种模型加权集成参数 β,应用模型集成参数和模型内参数通过互迭代的梯度降落进行求解,无效晋升了速度。
基于代理模型与最终模型的两阶段优化:数据集采样,对子图依据 Label 进行档次采样,缩小模型验证工夫;代理模型与 Bagging,计算多个较小隐层模型的均匀后果,疾速对该类模型进行评估。应用 Kendall Rank 和 SpeedUp 均衡准确度与减速倍率,失去适合的代理模型。最终通过代理模型失去了最优的超参数,而后再对最终的大模型在搜寻好的参数上进行模型训练。
具体详情,大家可参考团队 ICDE 2022 论文,AutoHEnsGNN: Winning Solution to AutoGraph Challenge for KDD Cup 2020。
3 AutoML 技术框架
3.1 自动化框架概述
通过上述的多场较量,团队在多领域建模中一直总结与优化,形象出其中较为通用的模块,总结失去针对数据挖掘类问题时的一套较为通用的解决方案——AutoML 框架。该框架蕴含数据预处理,自动化特色工程 [15] 和自动化模型优化 [16-20] 三个局部。其中数据预处理局部次要负责特色分类、数据编码、缺失值解决等常见的根底操作,不过多开展。次要针对 AutoML 框架的自动化特色工程和自动化模型优化两个局部进行具体介绍。
3.2 自动化特色工程
特色工程是机器学习中至关重要的工作,特色的好坏间接决定了模型精度的下限。目前常见的形式是人工手动对特色进行组合与变换,但人工特色开掘存在速度较慢、无奈开掘全面等问题。因而,设计全面开掘的自动化特色工程可能比拟好地解决上述问题,自动化特色工程次要蕴含三个局部:
- 一、二阶特色算子:对数据的根底操作,能够失去更为简单的高阶特色。特色算子蕴含三个,频数编码是指对于类别型特色在样本中次数、nunique 等值的统计。指标编码指对数值型特色进行均值、求和、最大最小、百分位等操作。时序差分是指对于对工夫特色进行差分解决。一阶算子应用一个实体计算,二阶算子应用二个实体计算,如用户在某品类下的订单数量,应用了用户与品类两个实体。
- 疾速特征选择:因为自动化特色工程是针对全副实体顺次依照不同特色算子进行的笛卡尔积组合,会产生大量的有效特色,故须要进行疾速特征选择。应用 LightGBM 模型疾速辨认无效特色及无用特色,从指标晋升及特色重要性角度思考,裁剪掉没用的特色,同时标识重要特色与其余特色再次进行更为高阶的组合。
- 高阶特色算子:基于一、二阶特色算子组合构建的新特色,进一步与其余特色进行高阶组合,基于 K 阶(K>=1)的 K + 1 高阶组合循环迭代,可能产出大量人为思考有余的高阶特色。
高阶特色算子按多实体后果是否齐全匹配,分为 Match 形式——匹配全副实体,All 形式——匹配局部实体,失去另一实体的全副值的计算结果,这样两种特色产出形式。下图中举例说明,Match 形式匹配用户与时间段两个实体,失去用户在该时间段的均匀订单价格;All 形式则只匹配用户,失去用户在所有时间段的均匀订单价格。
相较于 DeepFM、DeepFFM 等算法,自动化特色工程具备三个方面的劣势。首先在存在多表信息的状况下,容易利用非训练数据的信息,如在广告场景中,通过特色能够利用天然数据的信息,相比间接应用天然数据训练,不容易产生散布不统一等问题;其次,只通过模型主动穿插学习,对于某些强特色穿插没有手动结构学习得充沛,许多显示穿插特色如用户商品点击率等往往有较强的业务意义,让模型间接感知组合好的特色往往比主动学习特色间的关系更为简略;第三方面对于许多高维度稠密 ID 特色,如亿级别以上的举荐或广告场景中,DeepFM、DeepFFM 对于这些特色的学习很难充沛,自动化特色工程能给这些稠密 ID 结构很强的特色示意。
3.3 自动化模型优化
基于重要度的网格搜寻:在咱们框架中采纳的是全局基于重要度依照贪婪的形式进行搜寻,加快速度;失去的最优后果再进行小畛域更具体网格搜寻,缓解贪婪策略导致的部分最优。依据以往较量教训,总结不同模型的超参重要性排序如下:
- LightGBM:学习率 > 样本不均衡率 > 叶子数 > 行列采样等。
- DNN:学习率 >Embedding 维度 > 全连贯层数和大小。值得一提的是,超参搜寻在整个迭代过程中会进行屡次,同时迭代后期与迭代前期参数搜寻策略也有所不同,迭代后期,个别会抉择更大的学习率,更小 Embedding 维度和全连贯层数等,升高模型参数量放慢迭代速度,而在前期则抉择更多参数,取得更好的成果。
- 模型交融:模型交融的关键点在于结构模型间的差异性,LightGBM 和 DNN 的模型自身差异性较大,同种模型中差异性次要体现在,数据差别、特色差别、超参差别三个方面。数据差别次要通过自动化行采样实现,主动生成不同数据采样的模型;特色差别通过自动化列采样,生成特色采样的模型;超参差别通过高优参数扰动生成,在最优部分进行参数组网格部分扰动。模型交融办法个别 Blending、Stacking 或简略 Mean Pooling 等,交融前进行须要进行模型粒度剪枝(去除成果较差的模型防止影响交融成果)与正则化。
3.4 AutoML 框架近期实战:MDD Cup 2021 美团外卖图谱举荐较量冠军计划
在 2021 年 8 - 9 月美团举办的外部算法较量 MDD Cup 2021 中,美团到店广告平台品质预估团队利用了 AutoML 框架并取得了冠军。上面联合这场较量,介绍框架在具体问题中的利用。
MDD Cup 2021 须要参赛者依据用户、商家在图谱中的属性、用户的历史点击、实时点击以及下单行为,预测下次购买的商家。蕴含周围的 135 万个订单行为,波及 20 万个用户,2.9 万个商家,17.9 万个菜品,订单关联菜品数据共 438 万条,形成常识图谱。应用 Hitrate@5 作为评估指标。
数据预处理阶段:进行特色分类、异样值解决、对立编码等操作。次要波及用户(用户画像特色等)、商家(品类、评分、品牌等)、菜品(口味、价格、食材等)三种实体数据及点击、购买(LBS、价格、工夫等)两类交互数据,对原始数据进行特色分类、数据编码、缺失值解决等常见预处理操作。
自动化特色工程:一、二阶特色算子,首先对于类别、数据、时序、标签四类原始特色,依照可形象的三种实体及两类交互数据进行一、二阶特色穿插,使用频数编码、指标编码与时序差分算子操作,在多时段上统计失去一、二阶统计特色。举例说明,如频数编码可计算用户点击某商家的次数、用户购买商家品类的 nunique 值,用户在某场景的下单数量等。指标编码可计算用户的均匀订单价格,用户点击次数最多的商家品类等。时序差分可计算如用户购买某口味菜品的均匀时间差等。多时段统计则意味着上述特色均可在不同时段上计算失去。
疾速特征选择,上述主动产出的一、二阶统计特色数量共有 1000+,其中存在大量有效特色,故应用 LightGBM 模型,从指标晋升与重要性角度进行特色筛选与重要标识。如用户 x 菜品口味的特色没什么成果,进行筛除;用户最常购买的价格区间则很有成果,标识为重要特色进行高阶组合。
高阶特色算子,基于一、二阶特色算子组合构建的新特色,能够作为输出进行高阶特色组合。这里值得一提的是,高阶特色组合存在两种模式,第一种原始特色的更高阶组合,如用户在某个商家中最喜爱的菜品口味,联合三个实体,并不需要额定的运算,第二种需应用一、二阶新特色,其中频数编码的后果能够间接应用,指标编码与时序差分须要先进行数值分桶操作转换为离散值后才可应用,如用户订单价格区间的众数 x 商家订单价格平均值的分桶的联结 count。循环进行特色组合与筛选后就失去了最终的特色集。
自动化模型优化:模型局部应用了 LightGBM 和 DIN 的交融计划,迭代过程中屡次进行了主动超参搜寻,通过自动化行、列采样及最优参数部分扰动结构了具备差异性的多个模型,交融失去最终的后果。
4 通用建模办法与了解
本节会就较量的通用建模办法进行介绍,即面对一个新问题,如何进行疾速高效的整体方案设计。
4.1 建模框架与办法
在面对新问题时,咱们次要将技术框架分为以下三个阶段,即探索性建模、关键性建模、自动化建模。三个阶段具备逐步深入,进一步补充的作用。
探索性建模:较量后期,首先进行问题了解,包含评估指标与数据表了解,而后进行根底的模型搭建,并线上提交验证一致性。在一致性验证过程中往往须要屡次提交,找到同线上指标统一的评估形式。探索性建模的外围指标是要找到迭代思路与办法,所以须要对问题做多方面摸索,在摸索中找到正确的方向。
个别在非时序问题,采纳 N -fold 办法结构多个验证集,并能够灵便变换生成种子,失去不同的汇合。而在时序问题,个别会采纳滑窗形式,结构同线上提交工夫统一的验证集,并能够向前滑动 k 天,来结构 k 个验证集。在多个验证集评估中,能够参考均值,方差,极值等参考指标综合评估,失去同线上统一的后果。
关键性建模:较量中期,会就关键问题进行深挖,达成计划在榜单 Top 行列,在问题了解方面,会尽可能就评估形式进行损失函数自定义设计。
分类问题优化,能够联合 Logloss、AUC Loss[21]、NDCG Loss 等不同损失函数进行 Mix Loss 设计。而回归问题的损失函数设计要更简单,一方面能够联合平方误差,绝对值误差等进行损失函数设计,另一方面能够联合 Log 变换,Box-cox 变换等解决回归异样值等问题。
自动化建模:较量前期,因为基于人的了解一方面在细节与角度有盲区,另一方面较难进行形象关系的建模,所以咱们会采纳自动化建模进行补充。如下图 18 所示,先基于关系型多表输出,进行自动化关联,而后通过生成式自动化特色工程构建大量特色,再进行特征选择与迭代,而后基于模型输出进行自动化超参搜寻与模型抉择,最终基于多模型进行自动化交融构建,将生成的多元化模型关系进行抉择与赋权。
自动化建模个别采纳如图 18 的框架,先进行多表关联,而后基于先扩大后过滤的逻辑进行特征选择,下一步基于精选特色与多个超参范畴进行超参搜寻,最初采纳 XGBoost[22]、LightGBM、DNN、RNN、FFM 等不同模型进行自动化模型交融。
4.2 同工业界办法分割
算法较量绝对于工业界理论状况而言,一个重要区别是工业界波及线上零碎,在工程方面性能的挑战更大,在算法方面波及更多的线上线下成果一致性问题。因而算法较量会在模型复杂度、模型精度更进一步,在算法较量中也产出了 ResNet、Field-aware Factorization Machine(FFM)、XGBoost 等算法模型,广泛应用于工业界理论零碎。
在空气质量预测中,咱们采纳了时空联合的 Spatial-temporal Gated DNN 网络进行无效建模,同空气质量问题相靠近,在美团的理论业务中也面临着时空相结合的建模问题,以用户行为序列建模为例。咱们对用户的历史时空信息和以后时空信息进行了充沛的建模和交互[24]。咱们分辨出用户行为的三重时空信息,即:用户点击产生时的工夫、用户申请收回的地理位置、用户所点击的商户的地理位置。
基于上述三重时空信息,咱们提出 Spatio-temporal Activator Layer(如图 19):三边时空注意力机制神经网络来对用户历史行为进行建模,具体通过对申请经纬度信息、商户经纬度信息和申请工夫的交互进行学习。针对空间信息穿插,咱们进一步采纳地理位置哈希编码和球面间隔相结合的形式;针对工夫信息穿插,咱们也采纳相对与绝对工夫相结合的形式,无效实现用户行为序列在不同时空条件下的三边表白。最初,经上述网络编码后的时空信息通过注意力机制网络交融,失去 LBS 场景下用户超长行为序列对不同申请候选的个性化表白。
相比较而言,较量中的 Spatial-temporal Gated DNN 更重视时空交融信息对于预测值的影响,因为须要预测的工夫序列问题,更侧重于不同的工夫、空间信息有可能将差异性建模充沛。而在美团业务中的时空网络重视于细粒度刻画空间信息,源于不同的球面间隔,不同的区块地位影响大,须要多重信息深度建模。更多详情,大家可参考团队的 CIKM 论文:Trilateral Spatiotemporal Attention Network for User Behavior Modeling in Location-based Search[23]。
在理论建模中,绝对于较量波及到更多线上局部,而较量次要专一于离线数据集的精度极值。同 Debiasing 较量相比,在理论线上零碎中,波及到 Bias 等更多的问题,以 Position Bias 为例,理论的展现数据高位点击率人造高于低位,然而一部分是源于用户高下位之间的浏览习惯差别,因而对于数据的间接建模不足以表征对于高下位广告点击率与品质的评估。咱们在美团理论广告零碎中,设计了地位组合预估框架进行建模,获得不错的成果,这里不再详述。具体详情,大家可参考团队 SIGIR 论文:Deep Position-wise Interaction Network for CTR Prediction[7]。
4.3 建模要害了解
统一的评估形式是决定模型泛化能力的要害
在较量的机制中,通常最终评测的 Private Data 和此前始终榜单的 Public Data 并不是一份数据,有时切换数据会有几十名的名次抖动,影响最终排名。因而防止过拟合到惯例迭代的 Public Data 是最终取胜的要害。那么在此问题上,如何结构同线上散布统一的验证集呢?从一致性角度,个别会结构工夫距离统一的验证集。而局部问题数据乐音较重,能够用动静滑窗等形式结构多个验证集相结合。统一的验证集决定着前面的迭代方向。
大数据重视模型的深入,小数据重视模型的鲁棒
不同数据集重视的内容不一样,在数据充沛的场景下,外围问题是模型深入,以解决特色之间穿插,组合等简单问题。而在小数据下,因为乐音多,不稳定性强,外围问题是模型的鲁棒。高数据敏感性是方案设计的要害。
方差与偏差的均衡是前期领导优化的要害
从误差合成角度去了解,平方误差能够合成为偏差 (Bias) 与方差(Variance)[25],在中后期模型复杂度较低时,通过晋升模型复杂度,可能无效减低偏差。而在偏差曾经被高度优化的前期,方差的优化是要害,因而在前期会通过 Emsemble 等形式,在单模型复杂度不变的根底上,通过模型交融优化后果。
AutoML 的要害是人为先验的一直缩小
在使用 AutoML 框架的同时,会有一些超参数等荫蔽的人为先验,把 AutoML 技术也以模型视角来了解,同样存在模型复杂度越高越容易过拟合的问题,迭代中的一个关键问题不是评估成果的好坏,而是计划是否存在不必要的超参数等信息,是否一直地简化 AutoML 的建模,一直地自动化,自适应适配各类问题。
最初,也特别感谢 Convolution Team、Nomo Team、Getmax Team、Aister Team 等队伍的队友们。
总结
本文基于笔者 7 次算法较量的冠军经验,分享举荐零碎、工夫序列及自动化机器学习等不同畛域较量中的算法教训,接着联合具体问题介绍 AutoML 技术框架,最初总结较量中通用的建模计划,联合工业界计划介绍其与较量的分割。心愿文章中的一些算法较量相干教训可能帮忙算法爱好者更好地参加比赛,能为大家提供一些思路,启迪更多的工程师与研究员在理论工作中获得更优后果。将来,咱们团队将继续关注国内算法比赛,踊跃进行较量思路与工业计划联合的尝试,同时也欢送大家退出咱们团队,文末附有招聘信息,期待你的邮件。
作者简介
胡可、兴元、明健、刚强,均来自美团广告平台品质预估团队。
参考文献
- [1] Juan Y , Zhuang Y , Chin W S , et al. Field-aware Factorization Machines for CTR Prediction[C]// the 10th ACM Conference. ACM, 2016.
- [2] He K , Zhang X , Ren S , et al. Identity Mappings in Deep Residual Networks[J]. Springer, Cham, 2016.
- [3] Ali, Jehad & Khan, Rehanullah & Ahmad, Nasir & Maqsood, Imran. (2012). Random Forests and Decision Trees. International Journal of Computer Science Issues(IJCSI). 9.
- [4] Robi Polikar. 2006. Ensemble based systems in decision making. IEEE Circuits and systems magazine 6, 3 (2006), 21–45.
- [5] Jiawei Chen, Hande Dong, Xiang Wang, Fuli Feng, Meng Wang, and Xiangnan He. 2020. Bias and Debias in Recommender System: A Survey and Future Directions. arXiv preprint arXiv:2010.03240 (2020).
- [6] H. Abdollahpouri and M. Mansoury,“Multi-sided exposure bias in recommendation,”arXiv preprint arXiv:2006.15772, 2020.
- [7] Huang J, Hu K, Tang Q, et al. Deep Position-wise Interaction Network for CTR Prediction[J]. arXiv preprint arXiv:2106.05482, 2021.
- [8] KDD Cup 2020 Debiasing 较量冠军技术计划及在美团的实际.
- [9] Luo Z, Huang J, Hu K, et al. AccuAir: Winning solution to air quality prediction for KDD Cup 2018[C]//Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 2019: 1842-1850.
- [10] He Y, Lin J, Liu Z, et al. Amc: Automl for model compression and acceleration on mobile devices[C]//Proceedings of the European conference on computer vision (ECCV). 2018: 784-800.
- [11] Yang Gao, Hong Yang, Peng Zhang, Chuan Zhou, and Yue Hu. 2020. Graph neural architecture search. In IJCAI, Vol. 20. 1403–1409.
- [12] Matheus Nunes and Gisele L Pappa. 2020. Neural Architecture Search in Graph Neural Networks. In Brazilian Conference on Intelligent Systems. Springer, 302– 317.
- [13] Huan Zhao, Lanning Wei, and Quanming Yao. 2020. Simplifying Architecture Search for Graph Neural Network. arXiv preprint arXiv:2008.11652 (2020).
- [14] Jin Xu, Mingjian Chen, Jianqiang Huang, Xingyuan Tang, Ke Hu, Jian Li, Jia Cheng, Jun Lei:“AutoHEnsGNN: Winning Solution to AutoGraph Challenge for KDD Cup 2020”, 2021; arXiv:2111.12952.
- [15] Selsaas L R, Agrawal B, Rong C, et al. AFFM: auto feature engineering in field-aware factorization machines for predictive analytics[C]//2015 IEEE International Conference on Data Mining Workshop (ICDMW). IEEE, 2015: 1705-1709.
- [16] Yao Shu, Wei Wang, and Shaofeng Cai. 2019. Understanding Architectures Learnt by Cell-based Neural Architecture Search. In International Conference on Learning Representations.
- [17] Kaicheng Yu, Rene Ranftl, and Mathieu Salzmann. 2020. How to Train Your Super-Net: An Analysis of Training Heuristics in Weight-Sharing NAS. arXiv preprint arXiv:2003.04276 (2020).
- [18] Haixun Wang, Wei Fan, Philip S Yu, and Jiawei Han. 2003. Mining concept-drifting data streams using ensemble classifiers. In Proceedings of the ninth ACM SIGKDD international conference on Knowledge discovery and data mining. 226–235.
- [19] Robi Polikar. 2006. Ensemble based systems in decision making. IEEE Circuits and systems magazine 6, 3 (2006), 21–45.
- [20] Chengshuai Zhao, Yang Qiu, Shuang Zhou, Shichao Liu, Wen Zhang, and Yanqing Niu. 2020. Graph embedding ensemble methods based on the heterogeneous network for lncRNA-miRNA interaction prediction. BMC genomics 21, 13 (2020), 1–12.
- [21] Rosenfeld N , Meshi O , Tarlow D , et al. Learning Structured Models with the AUC Loss and Its Generalizations.
- [22] Chen T , Tong H , Benesty M . xgboost: Extreme Gradient Boosting[J]. 2016.
- [23] Qi, Yi, et al. “Trilateral Spatiotemporal Attention Network for User Behavior Modeling in Location-based Search”, CIKM 2021.
- [24] 广告深度预估技术在美团到店场景下的冲破与畅想.
- [25] Geurts P . Bias vs Variance Decomposition for Regression and Classification[J]. Springer US, 2005
- [26] Kaggle Outbrain 较量链接:https://www.kaggle.com/c/outbrain-click-prediction.
- [27] KDD Cup 2020 Debiasing 较量链接 https://tianchi.aliyun.com/competition/entrance/231785/introduction.
- [28] KDD Cup 2018 较量链接:https://www.biendata.xyz/competition/kdd_2018/.
- [29] KDD Cup 2017 较量链接:https://tianchi.aliyun.com/competition/entrance/231597/introduction.
- [30] KDD Cup 2020 AutoGraph 较量链接:https://www.automl.ai/competitions/3
招聘信息
美团到店广告平台算法团队立足广告场景,摸索深度学习、强化学习、人工智能、大数据、常识图谱、NLP 和计算机视觉前沿的技术倒退,摸索本地生存服务电商的价值。次要工作方向包含:
- 触发策略:用户用意辨认、广告商家数据了解,Query 改写,深度匹配,相关性建模。
- 品质预估:广告品质度建模。点击率、转化率、客单价、交易额预估。
- 机制设计:广告排序机制、竞价机制、出价倡议、流量预估、估算调配。
- 创意优化:智能创意设计。广告图片、文字、团单、优惠信息等展现创意的优化。
岗位要求:
- 有三年以上相干工作教训,对 CTR/CVR 预估、NLP、图像了解、机制设计至多一方面有利用教训。
- 相熟罕用的机器学习、深度学习、强化学习模型。
- 具备优良的逻辑思维能力,对解决挑战性问题充满热情,对数据敏感,长于剖析 / 解决问题。
- 计算机、数学相干业余硕士及以上学历。
具备以下条件优先:
- 有广告 / 搜寻 / 举荐等相干业务教训。
- 有大规模机器学习相干教训。
感兴趣的同学可投递简历至:chengxiuying@meituan.com(邮件题目请注明:广平算法团队)。
浏览美团技术团队更多技术文章合集
前端 | 算法 | 后端 | 数据 | 平安 | 运维 | iOS | Android | 测试
| 在公众号菜单栏对话框回复【2020 年货】、【2019 年货】、【2018 年货】、【2017 年货】等关键词,可查看美团技术团队历年技术文章合集。
| 本文系美团技术团队出品,著作权归属美团。欢送出于分享和交换等非商业目标转载或应用本文内容,敬请注明“内容转载自美团技术团队”。本文未经许可,不得进行商业性转载或者应用。任何商用行为,请发送邮件至 tech@meituan.com 申请受权。