手机淘宝推荐中的排序学习-博客-云栖社区-阿里云
周梁:淘宝推荐机器学习技术专家,中国科学院自动化研究所机器学习博士,主要研究工作方向是机器学习、大规模并行算法优化。先后从事过广告CTR预估,MPI机器学习平台搭建,手淘个性化推荐等多方面工作。
排序学习是推荐、搜索、广告的核心问题。在手机淘宝的推荐场景中,受制于展示空间的限制,排序学习显得尤为重要。在淘宝,如何从十亿的商品中,挑选出用户 今天喜欢的商品,也是个巨大的挑战。 本次我们分享排序学习在手机淘宝中的应用,其中包括:解决了哪些问题,遇到了哪些挑战,以及做了哪些改进。
手淘推荐介绍
图1手淘推荐业务全覆盖
用户提升体验,千人千面;商家提供流量,提升转换;平台引导行为,流量分配。
图2手淘推荐系统
Match:基于内容,行为的推荐。场景,社交,人群,个人的长期兴趣,短期行为。
图3排序学习的原因
排序学习分类:PointWise:
PairWise:
ListWise:直接优化整个集合序列,不再做Transform,优化目标NDCG.
业务实例
图4店铺内推荐业务
业务:只可以推荐同店铺商品,可以是相似搭配。目标:CTR.方法:PointWise。
图5模型
样本构造:
模型目标:预测<user,item> ctr,并按照ctr排序。
手机埋点的困难:曝光,点击收集,Native 版本,H5 版本。
正负样本处理:
1. 点击/曝光PV
2. (点击 + 折算成交)/曝光PV
3. (点击 + 折算的成交)/(有效点击以上PV截断)
4. (点击 + 折算的成交)/(泊松采样的虚拟PV)
特征设计
ID类特征,User、Item 、Context基本特征,移动特定场景相关特征:设备ID VS 用户ID;城市区域特征;手机型号特征,PC & Mobile 特征融合。
每个特征权重反映该特征在数据中的统计意义,方便进行特征组合和模型debug,比较方便引入在线学习。
特征工程
图6年龄匹配
特征组合,交叉特征,例如年龄匹配。
个性化模型,特征交叉
– User:U1={张三,男,年龄35},U2={李四,男,年龄29}
– Item:I1={鼠标},I2={枕头}
– 训练集:U1点了I1,没点I2
– 预测:U2对I1、I2的喜好
– 特征归并,{张三,男,年龄35,鼠标},无泛化能力
– 特征交叉:{张三,男,年龄35,鼠标,男_鼠标}
– 对常见问题的解决方法
– 性别匹配:user性别与item性别交叉
– 年龄匹配:user年龄与item年龄交叉
– 购买力匹配:user购买力与item购买力交叉
– 用户类目偏好:user id与item类目id交叉
– Position bias:训练时引入pos id为特征
– 多Matchtype融合:引入Matchtype id为特征
– 人群属性偏好:人群特征同item id做交叉
实时用户特征
用户的Session 特征 怎么办?:用户当前时刻看了多少本类目商品;用户是否已经在别的场景下看过了本商品;用户是否已经购买本类目同款商品。
在线学习:离线特征提取,在线模型学习(FTRL)
图8在线学习
行业市场业务
图9
业务:个性化行业模块排序,个性化图文排序,最大化点击。
目标:行业流量的均衡。
方法:优化auc,Pairwise-ranknet。
PairWise思考:只考虑了两篇文档的相对顺序,对于不同的查询相关文档集的数量差异很大,投入产出比看,pairwise最佳。
业务场景Position因素:前两个图的面积明显占优,统计数据显示CTR明显占优。
流量均衡考虑。
图10 BPR模型
BPR:Bayesian Personalized Ranking。
构造pair样本是关键:
1. Click > Skip Above
2. Last Click > Skip Above
3. Click > Earlier Click
4. Click > No-Click Next
图11女装瀑布流
业务:瀑布流个性化,多目标优化。目标:CTR,CVR,客单价。方法:优化NDCG,listwise-lambdamart。
图12多目标融合
优化NDCG
DCG (Discounted Cumulative Gain)
NDCG(Normalized Version)
图13
左图pairwise错误相比右图小(13 VS 11);希望出现红色的梯度方向和强度;直接优化NDCG。
LambdaRank 不再从Cost Function出发推导梯度,反而直接计算梯度来优化NDCG等一类的IR指标。
Mart(Multiple Additive Regression Tree) 与 Lambda 结合 , 得到 LambdaMart。
特征表示:
- 连续特征表示,便于Mart训练以及特征选择、组合
- User,Item,Context的各个维度反馈特征
- User Session 维度特征
- 各种子目标模型的Score
- LBS特征反馈
图14样本构造
多目标构成ListWise,输入Lambdamart,按照等权重构造梯度权重。
等权重构造梯度权重的问题:样本有偏;训练较慢。
改进策略:按人工加权方式修正梯度强度;针对多种不同等级pair构造中,每个List只挑选最大违反的同类型pair做当前轮训练。
图15计划&展望
日志:手机日志收集,终端较多,多App间协作。
特征:家庭用户特征同账户问题,地域特征,PC、Mobile 特征对齐。
目标:业务目标多,LTR有较大的应用空间。
实时:在线模型更新,用户行为特征挖掘。