共计 5891 个字符,预计需要花费 15 分钟才能阅读完成。
粗排是工业界搜广推零碎的重要模块。美团搜寻排序团队在优化粗排成果的摸索和实际中,基于业务理论场景,从精排联动和成果性能联结优化两方面优化粗排,晋升了粗排的成果。本文介绍了美团搜寻粗排的迭代路线、基于常识蒸馏和主动神经网络抉择的粗排优化工作,心愿为从事相干工作的同学带来一些启发或者帮忙。
1. 前言
家喻户晓,在搜寻、举荐、广告等大规模工业界应用领域,为了均衡性能和成果,排序零碎广泛采纳级联架构[1,2],如下图 1 所示。以美团搜寻排序零碎为例,整个排序分为粗排、精排、重排和混排层;粗排位于召回和精排之间,须要从千级别候选 item 汇合中筛选出百级别 item 汇合送给精排层。
从美团搜寻排序全链路视角扫视粗排模块,目前粗排层优化存在如下几个挑战点:
- 样本抉择偏差:级联排序零碎下,粗排离最初的后果展现环节较远,导致粗排模型离线训练样本空间与待预测的样本空间存在较大的差别,存在重大的样本抉择偏差。
- 粗排精排联动:粗排处于召回和精排之间,粗排须要更多获取和利用后续链路的信息来晋升成果。
- 性能束缚:线上粗排预测的候选集远远高于精排模型,然而理论整个搜寻系统对性能有严格的要求,导致粗排须要重点关注预测性能。
本文将围绕上述挑战点来分享美团搜寻粗排层优化的相干摸索与实际,其中样本抉择偏差问题咱们放在精排联动问题中一起解决。本文次要分成三个局部:第一局部会简略介绍美团搜寻排序粗排层的演进路线;第二局部介绍粗排优化的相干摸索与实际,其中第一个工作是采纳常识蒸馏和比照学习使精排和粗排联动来优化粗排成果,第二个工作是思考粗排性能和成果 trade-off 的粗排优化,相干工作均已全量上线,且效果显著;最初是总结与瞻望局部,心愿这些内容对大家有所帮忙和启发。
2. 粗排练进路线
美团搜寻的粗排技术演进分为以下几个阶段:
- 2016 年:基于相关性、品质度、转化率等信息进行线性加权,这种办法简略然而特色的表达能力较弱,权重人工确定,排序成果存在很大的晋升空间。
- 2017 年:采纳基于机器学习的简略 LR 模型进行 Pointwise 预估排序。
- 2018 年:采纳基于向量内积的双塔模型,两侧别离输出查问词、用户以及上下文特色和商户特色,通过深度网络计算后,别离产出用户 & 查问词向量和商户向量,再通过内积计算失去预估分数进行排序。该办法能够提前把商户向量计算保留好,所以在线预测快,然而两侧信息的穿插能力无限。
- 2019 年:为了解决双塔模型无奈很好地建模穿插特色的问题,将双塔模型的输入作为特色与其余穿插特色通过 GBDT 树模型进行交融。
- 2020 年至今:因为算力的晋升,开始摸索 NN 端到端粗排模型并且继续迭代 NN 模型。
现阶段,工业界粗排模型罕用的有双塔模型,比方腾讯 [3] 和爱奇艺[4];交互式 NN 模型,比方阿里巴巴[1,2]。下文次要介绍美团搜寻在粗排降级为 NN 模型过程中的相干优化工作,次要包含粗排成果优化、成果 & 性能联结优化两个局部。
3. 粗排优化实际
随着大量的成果优化工作 [5,6] 在美团搜寻精排 NN 模型落地,咱们也开始摸索粗排 NN 模型的优化。思考到粗排有严格的性能束缚,间接将精排优化的工作复用到粗排是不实用的。上面会介绍对于将精排的排序能力迁徙到粗排的精排联动成果优化工作,以及基于神经网络构造主动搜寻的成果和性能 trade-off 优化工作。
3.1 精排联动成果优化
粗排模型受限于打分性能束缚,这会导致模型构造相比精排模型更加简略,特色数量也比精排少很多,因而排序成果要差于精排。为了补救粗排模型构造简略、特色较少带来的成果损失,咱们尝试常识蒸馏办法 [7] 来联动精排对粗排进行优化。
常识蒸馏是目前业界简化模型构造并最小化成果损失的广泛办法,它采取一种 Teacher-Student 范式:结构复杂、学习能力强的模型作为 Teacher 模型,构造较为简单的模型作为 Student 模型,通过 Teacher 模型来辅助 Student 模型训练,从而将 Teacher 模型的“常识”传递给 Student 模型,实现 Student 模型的成果晋升。精排蒸馏粗排的示意图如下图 2 所示,蒸馏计划分为以下三种:精排后果蒸馏、精排预测分数蒸馏、特色表征蒸馏。上面会别离介绍这些蒸馏计划在美团搜寻粗排中的实践经验。
3.1.1 精排后果列表蒸馏
粗排作为精排的前置模块,它的指标是初步筛选出品质比拟好的候选汇合进入精排,从训练样本选取来看,除了惯例的用户产生行为(点击、下单、领取)的 item 作为正样本,曝光未产生行为的 item 作为负样本外,还能够引入一些通过精排模型排序后果结构的正负样本,这样既能肯定水平缓解粗排模型的样本抉择偏置,也能将精排的排序能力迁徙到粗排。上面会介绍在美团搜寻场景下,应用精排排序后果蒸馏粗排模型的实践经验。
策略 1 :在用户反馈的正负样本根底上,随机选取大量精排排序靠后的未曝光样本作为粗排负样本的补充,如图 3 所示。该项改变离线 Recall@150(指标解释参看附录)+5PP,线上 CTR +0.1%。
策略 2 :间接在精排排序后的汇合外面进行随机采样失去训练样本,精排排序的地位作为 label 结构 pair 对进行训练,如下图 4 所示。离线成果相比策略 1 Recall@150 +2PP,线上 CTR +0.06%。
策略 3 :基于策略 2 的样本集选取,采纳对精排排序地位进行分档结构 label,而后依据分档 label 结构 pair 对进行训练。离线成果相比策略 2 Recall@150 +3PP,线上 CTR +0.1%。
3.1.2 精排预测分数蒸馏
后面应用排序后果蒸馏是一种比拟毛糙应用精排信息的形式,咱们在这个根底上进一步增加预测分数蒸馏[8],心愿粗排模型输入的分数与精排模型输入的分数散布尽量对齐,如下图 5 所示:
在具体实现上,咱们采纳两阶段蒸馏范式,基于事后训练好的精排模型来蒸馏粗排模型,蒸馏 Loss 采纳的是粗排模型输入和精排模型输入的最小平方误差,并且增加一个参数 Lambda 来管制蒸馏 Loss 对最终 Loss 的影响,如公式(1)所示。应用精排分数蒸馏的办法,离线成果 Recall@150 +5PP,线上成果 CTR +0.05%。
3.1.3 特色表征蒸馏
业界通过常识蒸馏实现精排领导粗排表征建模曾经被验证是一种无效晋升模型成果的形式[7],然而间接用传统的办法蒸馏表征有以下缺点:第一是无奈蒸馏粗排和精排之间的排序关系,而前文已提到,排序后果蒸馏在咱们的场景中,线下、线上均有成果晋升;第二是传统采纳 KL 散度作为表征度量的常识蒸馏计划,把表征的每一维独立看待,无奈无效地蒸馏高度相干的、结构化的信息[9],而在美团搜寻场景下,数据是高度结构化的,因而采纳传统的常识蒸馏策略来做表征蒸馏可能无奈较好地捕捉这种结构化的常识。
在上文公式 (1) 的根底上,补充比照学习表征蒸馏 Loss,离线成果 Recall@150 +14PP,线上 CTR +0.15%。相干工作的具体内容能够参考咱们的论文[10](正在投稿中)。
3.2 成果性能联结优化
后面提到线上预测的粗排候选集较大,思考到零碎全链路性能的束缚,粗排须要思考预测效率。前文提到的工作都是基于简略 DNN + 蒸馏的范式来进行优化,然而存在如下两个问题:
- 目前受限于线上性能而只应用了简略特色,未引入更加丰盛的穿插特色,导致模型成果还有进一步晋升的空间。
- 固定粗排模型构造的蒸馏会损失蒸馏成果,从而造成次优解[11]。
依据咱们的实践经验,间接在粗排层引入穿插特色是不能满足线上时延要求的。因而为了解决以上问题,咱们摸索并实际了基于神经网络架构搜寻的粗排建模计划,该计划同时优化粗排模型的成果和性能,抉择出满足粗排时延要求的最佳特色组合和模型构造,整体架构图如下图 7 所示:
上面咱们对其中的神经网络架构搜寻(NAS)以及引入效率建模这两个关键技术点进行简略介绍:
通过神经网络架构搜寻的建模来联结优化粗排模型的成果和预测性能,离线 Recall@150 +11PP,最终在线上延时不减少的状况下,线上指标 CTR +0.12%;具体工作可参考[13],已被 KDD 2022 接管。
4. 总结
从 2020 年开始,咱们通过大量的工程性能优化使粗排层落地 MLP 模型,在 2021 年咱们持续在 MLP 模型根底上,继续迭代粗排模型来晋升粗排成果。首先,咱们借鉴业界罕用的蒸馏计划来联动精排优化粗排,从精排后果蒸馏、精排预测分数蒸馏、特色表征蒸馏三个层面别离进行了大量试验,在不减少线上延时的状况下,晋升粗排模型成果。
其次,思考到传统蒸馏形式无奈很好解决排序场景中的特色结构化信息,咱们自研了一套基于比照学习的精排信息迁徙粗排计划。
最初,咱们进一步思考到粗排优化实质上是成果和性能的 trade-off,采纳多指标建模的思路同时优化成果和性能,落地神经网络架构主动搜寻技术来进行求解,让模型主动抉择效率和成果最佳的特色汇合和模型构造。后续咱们会从以下几个方面持续迭代粗排层技术:
- 粗排多指标建模:目前的粗排实质上还是一个单指标模型,目前咱们正在尝试将精排层的多指标建模利用于粗排。
- 粗排联动的全零碎动静算力调配:粗排能够管制召回的算力以及精排的算力,针对不同场景,模型须要的算力是不一样的,因而动静算力调配能够在不升高线上成果的状况下减小零碎算力耗费,目前咱们曾经在这个方面获得了肯定的线上成果。
5. 附录
传统的排序离线指标多以 NDCG、MAP、AUC 类指标为规范,对于粗排来说,其本质更偏差于以汇合抉择为指标的召回类工作,因而传统的排序指标不利于掂量粗排模型迭代成果好坏。咱们借鉴 [6] 中 Recall 指标作为粗排离线成果的掂量指标,即以精排排序后果为 ground truth,掂量粗排和精排排序后果 TopK 的对齐水平。Recall 指标具体定义如下:
该公式的物理含意即为掂量粗排排序前 K 个和精排排序前 K 的重合度,该指标更加合乎粗排汇合抉择的实质。
6. 作者简介
晓江、所贵、李想、曹越、培浩、肖垚、达遥、陈胜、云森、利前等,均来自美团平台 / 搜寻举荐算法部。
7. 参考文献
- [1] Wang Z, Zhao L, Jiang B, et al. Cold: Towards the next generation of pre-ranking system[J]. arXiv preprint arXiv:2007.16122, 2020.
- [2] Ma X, Wang P, Zhao H, et al. Towards a Better Tradeoff between Effectiveness and Efficiency in Pre-Ranking: A Learnable Feature Selection based Approach[C]//Proceedings of the 44th International ACM SIGIR Conference on Research and Development in Information Retrieval. 2021: 2036-2040.
- [3] https://mp.weixin.qq.com/s/Jf…
- [4] https://mp.weixin.qq.com/s/Rw…
- [5] https://tech.meituan.com/2020…
- [6] https://tech.meituan.com/2021…
- [7] Tang, Jiaxi, and Ke Wang. “Ranking distillation: Learning compact ranking models with high performance for recommender system.” Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 2018.
- [8] Hinton, Geoffrey, Oriol Vinyals, and Jeff Dean. “Distilling the knowledge in a neural network.” arXiv preprint arXiv:1503.02531 (2015).
- [9] Chen L, Wang D, Gan Z, et al. Wasserstein contrastive representation distillation[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2021: 16296-16305.
- [10] https://arxiv.org/abs/2207.03073
- [11] Liu Y, Jia X, Tan M, et al. Search to distill: Pearls are everywhere but not the eyes[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 7539-7548.
- [12] Cai H, Zhu L, Han S. Proxylessnas: Direct neural architecture search on target task and hardware[J]. arXiv preprint arXiv:1812.00332, 2018.
- [13] https://arxiv.org/abs/2205.09394
招聘信息
搜寻举荐算法部 / 根底算法组是负责美团搜寻研发的外围团队,使命是打造世界一流的搜索引擎,依靠 Deep Learning(深度学习)、NLP(自然语言解决)、Knowledge Graph(常识图谱)等技术,解决美团海量用户、商家、商品数据,一直加深对用户、场景、查问和服务的了解,高效地撑持状态各样的生存服务搜寻,解决搜寻后果的多业务混排、相关性、个性化等问题,给用户极致的搜寻体验。搜寻举荐算法部长期招聘搜寻举荐算法专家,感兴趣的同学能够将简历发送至:tech@meituan.com(邮件主题:美团平台 / 搜寻举荐算法部)。
浏览美团技术团队更多技术文章合集
前端 | 算法 | 后端 | 数据 | 平安 | 运维 | iOS | Android | 测试
| 在公众号菜单栏对话框回复【2021 年货】、【2020 年货】、【2019 年货】、【2018 年货】、【2017 年货】等关键词,可查看美团技术团队历年技术文章合集。
| 本文系美团技术团队出品,著作权归属美团。欢送出于分享和交换等非商业目标转载或应用本文内容,敬请注明“内容转载自美团技术团队”。本文未经许可,不得进行商业性转载或者应用。任何商用行为,请发送邮件至 tech@meituan.com 申请受权。