- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 视频嵌入链接 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
网易云音乐重排序分享-彭正超
实际的工业推荐系统通常包含召回-粗排-精排-重排四个模块,其中重排作为推荐系统产生最终推荐列表前的最后一环,通常会包含多样性打散、业务干预等人工制定的业务规则,规则的好坏将直接影响最终的用户体验及业务指标,此外精排环节为了性能考虑一般使用pointwise模型对候选物品进行打分,忽略了推荐列表内物品之间的相互关系,因此使用个性化模型进行重排序逐渐变成推荐系统的标准配置,本次分享将介绍网易云音乐歌曲推荐中落地个性化重排序模型的思考和实践。
个人介绍
彭正超,网易云音乐资深推荐算法工程师。
2018年加入网易云音乐,现从事网易云音乐会员商业化算法相关工作。曾就职阿里巴巴,2015年硕士毕业于电子科技大学计算机学院。
展开查看详情
1 . . cn u g ic . a ww 个性化重排序在 w 社 区 网易云音乐歌曲推荐的实践 智 能 人 工 U G A IC 彭正超
2 . 目录 . cn u g . aic ww 重排序问题及挑战 w 社 音乐推荐重排序实践区 总结展望 智 能 人 工 U G A IC
3 . 重排问题及挑战 . cn u g . a ic 召回候选 召回候选 召回 排序 排序 粗排 ww 精排 精排 重排 w 推荐池 社 千~万 区 百~千 十~百 智 能 工 召回:从可推荐池中找出与用户有一定相关性的候选集,多路,多来源,多算法 人 G 粗排:合并不同召回来源召回结果统一度量,考虑目标同时控制输入精排数量 ICU 精排:根据众多特征使用复杂模型使业务目标最大化,结果排序取topn A 重排:考虑用户体验、业务规则、多样性、业务目标;规则+模型 3/23
4 . 重排问题及挑战 . cn u g 问题 . a ic 根据输入的用户u,待排序列表 ww ,特征xi(用户特征,列表中item特征,用户-item交互特征,上下文特征), w 对 重排序使得用户有真实反馈的item位置更前 社 区 挑战 智 能 • • 响应时间、规则策略 人 工 多目标:点击、播放、收藏、付费等 • U G 多阶段:长转化链路 IC • 多样性:偏好多样 4/23 A
5 . 业界解决方案 . cn u g ic 模型 . a ww w • Pointwise:Wide&deep,DeepFM 区 • 未考虑排序列表item之间相互关系 • Pairwise:RankSVM,RankNet • • Pair样本构造困难,badcase影响大 Listwise:DLCM,PRM 能 社 • • 多样性:MMR,DPP 工 智 RNN,self-attention学习列表相互关系,样本难收集 人 • 贪心构造推荐结果/转化成行列式点过程问题解决 U G A IC 5/23
6 . 业务介绍 . cn u g . aic 持续播放 ww 播放时长 w 社 区 点击播放 智 能 人 工 G 会员付费 触发付费权益 U 推荐歌曲曝光 推荐歌曲播放 A IC 优化目标:播放时长、会员付费 6/23
7 . 个性化重排-PRM模型 . cn u g . a 样本 ic ww • 播放场景:完整播放 w • 会员转化场景:收银台触发 社 区 特征 • 用户基础画像 能 • 歌曲属性特征 智 • 用户偏好-歌曲属性交叉 工 • 预训练向量内积 G人 IC U 7/23 A Pei C, Zhang Y, Zhang Y, et al. Personalized re-ranking for recommendation[C]//Proceedings of the 13th ACM Conference on Recommender Systems. 2019: 3-11.
8 . 个性化重排-效果 . cn u g . a ic w 线上效果 经验 w w 区 • 特征选取:精排已经包含大量精细特征,考虑性能只使 • 人均播放pv增加6.4% 社 用部分属性类特征和交叉特征 • 播放时长增加2.7% • Multi-head:对重排影响不明显,考虑性能head=1 能 • 会员转化人数提升1.7% • 位置信息:非常重要,直接影响排序结果好坏 工 智 G人 IC U 8/23 A
9 . 位置信息 . cn u g ic position embedding . a ww concat(用户,歌曲,交叉特征) w 与 k×n 最 大 区 转 化 + 按位相加 社 率 的 能 比 值 trainable position embedding 智 k:列表长度 k×n 工 位置 G人 U n:特征维度 推荐列表自然形成的position bias A IC 9/23
10 . 位置信息 . cn g 列归一化,颜色越深代表权重越大。如:第2列第3行权重 u 表示第2个位置平均受第3个位置的影响程度 ic 测试集所有用户self-attention权重按位置平均 . a ww w 社 区VS 智 能 人 工 G 利用位置信息很重要 IC U 使用Position Embedding显式的学习bias 不使用位置信息 A 使得每个位置受转化率高的位置的影响更大 10/23
11 . 进一步优化-长转化链路 . cn u g 完整的歌曲下载转化会员链路 . a ic ww w 曝光 付款成功 社 区 代理目标 曝光 播放 打开播放页 智 能 点击下载按钮 触发收银台 点击购买 付款成功 离开 人 工 离开 离开 离开 离开 U G A IC 核心问题:数据稀疏 11/23
12 . 长转化链路-跨场景样本 . cn u g a ic Solution1——挖掘跨场景的转化样本 w . 场景1 曝光 播放 打开播放页 点击下载按钮 w w 离开 社 区 能 场景2 曝光 播放 打开播放页 点击下载按钮 触发收银台 点击购买 付款成功 工 智 G人 U 线上效果:会员转化人数1.7%->7.4% A IC 12/23
13 . 长转化链路-拆分阶段 . cn u g ESMM . a ic 拆分转化链路:引入两个辅助任务pctr,pctcvr训练cvr ww w 社 区 loss function 智 能 人 工 U G A IC Ma X, Zhao L, Huang G, et al. Entire space multi-task model: An effective approach for estimating post-click conversion rate[C]//The 41st International ACM SIGIR Conference on Research & Development in Information 13/23 Retrieval. 2018: 1137-1140.
14 . 长转化链路-拆分阶段 . cn u g 直接使用ESMM存在的问题 . a ic 0 1 ww vs 0.1 0.4 0.3 0.2 w • ESMM二分类->重排多分类样本怎么取? 区 • 不同阶段的loss差异大 能 社 工 智 G人 IC U loss_pctcvr,量级1e-4 loss_pctr,量级1e-1 14/23 A
15 . 长转化链路-拆分阶段 . cn u g 拆分下载转化会员链路为三个阶段目标 . a ic 曝光 付款成功 ww w 社 区 能 曝光 播放 打开播放页 点击下载按钮 触发收银台 点击购买 付款成功 工 智 代理目标 人 曝光 播放 打开播放页 点击下载按钮 触发收银台 点击购买 付款成功 U G 阶段1:view 阶段2:trig 阶段3:buy A IC 拆分阶段原则:转化比例适中,样本采集容易 15/23
16 . 长转化链路-多阶段重排序 . cn u g Solution2——多阶段重排序 1 0.55 .aic 1 0.75 w 0 0.03 0 0.03 w 1 0.40 0 0.20 w • 上阶段label为1的,下阶段label可能也为1或0 0 0.01 下一阶段 0 0.01 • 上阶段label为0的,下阶段label一定是0 区 0 0.01 0 0.01 能 社 label prob label prob 在原顺序基础上做局部调整 工 智 人 • Label:上轮label=0的尽量不动,上轮label=1的在本轮再局部调整 G • Prob:y_k=f(x; pv; pe; y_k-1),上轮的概率分布作为本轮先验概率分布特征 IC U 16/23 A
17 . 多阶段重排序 . cn u g ic 曝光顺序序列 logits_0=1/(1+log(1+pos_0)) . a w logits_view logits_trig w prm-view prm-trig prm-buy pred pos_view pos_trig w view*alpha+trig*alpha+ 区 view trig+view*alpha label buy loss1 + 能 社 loss2 + loss3 = loss 工 智 minimize 人 多个loss之间数量级可比 U G C • 长转化链路问题:转化成多阶段排序问题 17/23 A • I 多目标训练,同时后阶段label包含前label
18 . 多阶段排序结构 . cn u g ic position_k-1 concat&add logits_k position_k label_k label_k-1 . a x1 l1 + pe1 ww + w x2 l2 + pe2 + softmax 区 Transformer linear x3 l3 + pe3 Encode + ... ... xn ... ln + ... 能 pen 社 ... ... + ... 工 智 G人 Feature logits_k-1 PE_k-1 Corss U 梯度不回传 Entropy IC × 18/23 A 上阶段的logits,pos作为下阶段先验信息输入下层PRM
19 . 结果分析 . cn u g 线上效果 . aic w • 收银台单阶段->收银台和购买二阶段,会员购买人数提升7%->16% w • 增加播放页曝光三阶段,会员购买人数再提升3% w loss之间数量级可比 社 区 智 能 人 工 U G A IC 19/23
20 . 结果分析-user case . cn u g ic 序号 歌曲名 view trig buy view_score trig_score buy_score 序号 歌曲名 view trig buy view_score trig_score buy_score .a 1 Telescope 1 0 0 0.075 0.045 0.030 19 即兴 1 0 0 0.022 0.017 0.018 2 The Cure 0 0 0 0.064 0.059 0.053 20 红黑 1 0 0 0.037 0.057 0.053 w 3 Yellow 1 0 0 0.041 0.005 0.005 21 不在 1 0 0 0.017 0.016 0.018 w 4 Dancin 1 0 0 0.045 0.038 0.028 22 勉为其难 1 0 0 0.025 0.022 0.023 5 Reality 1 0 0 0.040 0.034 0.028 23 江南 1 0 0 0.019 0.015 0.016 w 6 Because of You 1 0 0 0.049 0.067 0.054 24 脆弱星球 1 0 0 0.027 0.032 0.036 7 Wrap Me In Plastic 1 1 1 0.047 0.088 0.076 25 同花顺 0 0 0 0.011 0.001 0.001 区 8 Sugar 1 0 0 0.039 0.039 0.055 26 意外 0 0 0 0.025 0.022 0.023 9 We Can't Stop 1 0 0 0.031 0.033 0.030 27 有些 0 0 0 0.011 0.008 0.008 社 10 Counting Sheep 1 0 0 0.031 0.032 0.032 28 陪我长大 0 0 0 0.011 0.001 0.001 能 11 如果的事 1 0 0 0.026 0.021 0.027 29 欢 0 0 0 0.011 0.007 0.009 12 侧脸 1 0 0 0.034 0.033 0.037 30 理由 1 0 0 0.018 0.019 0.021 智 那些你对我说 13 可不可以 1 0 0 0.038 0.036 0.037 31 0 0 0 0.016 0.018 0.019 过的话 工 14 DEAR JOHN 1 1 0 0.046 0.052 0.061 32 In The End 1 0 0 0.012 0.002 0.002 15 茫 1 0 0 0.037 0.045 0.049 33 无 0 0 0 0.000 0.000 0.000 人 16 是想你的声音啊 1 0 0 0.034 0.052 0.059 34 无 0 0 0 0.000 0.000 0.000 G 17 会不会 1 0 0 0.033 0.049 0.047 35 无 0 0 0 0.000 0.000 0.000 U 18 殉情的抹香鲸 1 0 0 0.029 0.034 0.041 IC 真实行为:用户在多首歌触发view动作,7,14位歌曲触发了trig动作,最终在7位歌曲触发购买 A 预测路径:首先预测view分数,然后传递到下轮预测trig分数,最后从trig分数较高里预测buy 20/23
21 . 结果分析-user case . cn u g ic 序号 歌曲名 view trig buy view_score trig_score buy_score 序号 歌曲名 view trig buy view_score trig_score buy_score .a 7 Wrap Me In Plastic 1 1 1 0.047 0.088 0.076 11 如果的事 1 0 0 0.026 0.021 0.027 14 DEAR JOHN 1 1 0 0.046 0.052 0.061 26 意外 0 0 0 0.025 0.022 0.023 w 16 是想你的声音啊 1 0 0 0.034 0.052 0.059 22 勉为其难 1 0 0 0.025 0.022 0.023 w 8 Sugar 1 0 0 0.039 0.039 0.055 30 理由 1 0 0 0.018 0.019 0.021 那些你对我说 w 6 Because of You 1 0 0 0.049 0.067 0.054 31 0 0 0 0.016 0.018 0.019 过的话 20 红黑 1 0 0 0.037 0.057 0.053 21 不在 1 0 0 0.017 0.016 0.018 区 2 The Cure 0 0 0 0.064 0.059 0.053 19 即兴 1 0 0 0.022 0.017 0.018 15 茫 1 0 0 0.037 0.045 0.049 23 江南 1 0 0 0.019 0.015 0.016 社 17 会不会 1 0 0 0.033 0.049 0.047 29 欢 0 0 0 0.011 0.007 0.009 能 18 殉情的抹香鲸 1 0 0 0.029 0.034 0.041 27 有些 0 0 0 0.011 0.008 0.008 13 可不可以 1 0 0 0.038 0.036 0.037 3 Yellow 1 0 0 0.041 0.005 0.005 智 12 侧脸 1 0 0 0.034 0.033 0.037 32 In The End 1 0 0 0.012 0.002 0.002 24 脆弱星球 1 0 0 0.027 0.032 0.036 28 陪我长大 0 0 0 0.011 0.001 0.001 工 10 Counting Sheep 1 0 0 0.031 0.032 0.032 25 同花顺 0 0 0 0.011 0.001 0.001 人 9 We Can't Stop 1 0 0 0.031 0.033 0.030 35 无 0 0 0 0.000 0.000 0.000 1 Telescope 1 0 0 0.075 0.045 0.030 34 无 0 0 0 0.000 0.000 0.000 G 5 Reality 1 0 0 0.040 0.034 0.028 33 无 0 0 0 0.000 0.000 0.000 U 4 Dancin 1 0 0 0.045 0.038 0.028 A IC 最终buy_score综合考虑了view,trig,buy更接近业务目标,同时具有一定语种多样性 21/23
22 . 总结&展望 . cn u g 总结 . a ic • 音乐推荐场景落地个性化重排,并取得业务效果升 ww w • 重排场景对位置信息合适的建模很重要 • 长转化链路带来了建模困难,核心问题在于数据稀疏 • 社 区 初步尝试从多阶段重排序和跨场景样本挖掘两个方面缓解数据稀疏问题,业务效果明显 展望 智 能 • • 人 工 数据稀疏:如何利用转化后样本? 多阶段拆分:更优雅的方式进行建模? • U G 多目标:同时优化多个业务目标 IC • 多样性:仍待解决 22/23 A
23 . . cn u g . aic ww w 区 Thanks 社 智能 人工 U G A IC 23/23