机器学习在Qunar酒店房型推荐中的应用

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 2022 机器学习在Qunar酒店房型推荐中的应用 算法组 > 周明
2. 个人简介 2 Loss Function 学历 武汉理工大学,硕士学位,研 究方向:机器学习,深度学习 两篇论文,一项专利 经历 2018加入去哪儿,算法开发工程 师 酒店房型推荐,辅营推荐,航班 搜索排序
3. 3 45min我可以得到什么? 2 1 产品&运维 开发 - 业内推荐算法领域常⻅思路 - 对房型“猜你喜欢”模型有个简单且 - 业内推荐算法常用的模型 - 业务问题如何转化为机器学习问题 - 数据如何驱动算法优化 - 房型“猜你喜欢”模型迭代路径和优 清晰的认识 - 推荐算法模型的特征维度 - 一个算法模型的产出周期 - 算法是否可以为自己的业务服务 化时的思考方向与逻辑 - 模型经验复用
4. 目录 4 1 “猜你喜欢”业务背景 2 模型迭代路径&收益 3 问题与解决方案 4 总结与展望
5. 5 “猜你喜欢”业务背景
6. 现有酒店D⻚ top1 房型进订率低,竞品均有“猜你喜欢”推荐 6 35.4% top1 房型进订率为 35.4% 携程 美团
7. 业务问题 7 业务问题 携程有,我们没有,现 在有一个“猜你喜欢”置 顶报价位,能不能推准 点?
8. 一次酒店的购买流程 列表⻚ List S2D 8 详情⻚ Detail D2B 填单⻚ Booking B2O 支付⻚ Order
9. 业内常用评价指标 转化率指标(pv维度) D2B = 进订量 Detail量 D2O = • • • Order量 9 用户体验指标 进订率@1 = 命中率@1 = Detail量 进订量:填单⻚(booking) pv Detail 量:详情⻚(detail) pv Order 量:提交订单 pv • • top1 房型的进订量 总进订量 top 1 房型的订单量 总订单量 top 1 房型进订量:从第一位房型进入填单⻚pv top 1 房型订单量:从第一位房型支付订单 pv
10. 10 模型迭代路径&收益
11. 模型迭代路径 11 LambdaMART Deep model CTCVR CTR Objective:binary 评估指标: • AUC • GAUC • 进订占比@1 业务效果: • 进订占比@1 35.8% Objective:binary 评估指标: • AUC • GAUC • 命中率@1 业务效果: • 命中率@1 77.9% Objective:binary 评估指标: • AUC • GAUC • 命中率@1 业务效果: • 命中率@1 84.5% Objective:lambdarank 评估指标: • NDCG • 命中率@1 业务效果: • 命中率@1 87.8%
12. 一期线上D2O显著提升 0.64% ,进订率@1提升 35.8% QTA平台AB实验效果 • • 12 实验组:猜你喜欢 对照组:原有规则 35.8% 进订率@1提升 35.8% D2O 0.6404%;D2B 1.7548% 进订率@1 = top1 房型的进订量 总进订量
13. 二期线上D2O显著提升 0.6124% ,命中率@1相对提升 71.1% 13 D2O AB实验效果 0.355 对照组 低价 实验组 猜你喜欢 0.344 71.1% 0.333 0.321 命中率@1提升 71.1% 0.31 20211116 20211119 20211122 20211125 20211128 20211201 D2O 0.6124%,P值0.0012 命中率@1 = top1 房型的订单量 总订单量
14. 14 问题与解决方案
15. 15 “小步快跑” CTR模型 CTR预估模型 target 预测用户进订房型概率 样本空间:用户酒店房型点击行为 • 正样本:曝光且点击 • 负样本:曝光未点击 模型:LightGBM 损失函数:log loss 评估指标:进订率@1 D2B 1.7548%;B2O D2B = 进订量 Detail量 1.06%;D2O B2O = 0.6404% Order量 进订量
16. 问题:一期CTR模型线上D2O显著提升0.64%,但B2O显著下降1.06% D2O = 16 Order量 Detail量 上线猜你喜欢 B2O = Order量 进订量
17. 解决方案:关注点击的同时考虑转化,并且优化目标引入位置因素 17 在酒店主流程用户隐式反馈行为链中,行为越深,数量越少,权重越高 search “商务尊享” detail booking order pay 优化思路 思路一: • 用户点击行为较为随机,关注点击的同时需要考虑转化 思路二: “异国水床” • • 点击、下单的样本权重不一样,下单权重高于点击 由于猜你喜欢只能推荐第一个,首位推荐更为关键,考虑位置因素
18. 18 优化思路一
19. 解决方案:CTCVR预估模型,命中率@1相对提升 77.9% CTCVR预估模型 CTR预估模型 target 预测用户进订房型概率 样本空间:用户酒店房型点击行为 • 正样本:曝光且点击 • 负样本:曝光未点击 模型:LightGBM 损失函数:log loss 评估指标:进订率@1 19 target 问题: 1. CTR仅关注较为随机的点 击行为 方案: 1. 样本优化,加入购买行为 2. 评估指标优化 预测用户点击购买房型概率 样本空间:用户酒店房型点击购买行为 • 正样本: 曝光点击且购买 • 负样本: 曝光未点击+曝光点击未购买 模型:LightGBM 损失函数:log loss 评估指标: 命中率@1
20. 问题:树模型特征交叉能力有限 FM:二阶特征交叉 20 树模型:特征组合 深度模型:高阶特征交叉
21. 解决方案:DNN模型,命中率@1相对提升 84.5% TF网络结构图 特征处理 • 连续特征Log变换 • 添加空值标志位:特征是否存在缺失值 • 归一化\标准化 • 特征选择和基于特征相关性筛选 模型训练结果 21
22. 曝光未点击的样本不一定是负样本 22 曝光 曝光 点击 点击 转化 positive sample negative sample 转化 unknown sample 1. CTCVR认为用户对某房型的点击概率低,则用户对房型的转化概率也低,不是在所有场景都适用 2. CTCVR没有考虑用户行为链中的点击行为,只关注了成单转化的行为数据,这部分数据较为稀疏 3. “猜你喜欢”可被看作一个广告位,广告排序一般综合考虑CTR和CVR结果,结合bid计算排序分值
23. 问题:同一测试集下,CVR模型效果远不如CTR模型 23 CVR预估模型 target 34.8% 预测用户购买房型概率 样本空间:用户酒店房型购买行为 • 正样本:点击且购买 • 负样本:点击未购买 模型:LightGBM 损失函数:log loss 评估指标:命中率@1 命中率@1下降 34.8%
24. 传统CVR模型的的SSB和DS问题 24 • SSB(Sample selection bias) : 1. 样本选择偏差,点击样本空间的数据分布 与曝光样本空间的数据分布不一致 2. 数据分布不一致主要原因是曝光未点击的 样本是MNAR(missing not at random) • DS(Data sparsity) : 1. 数据稀疏性,点击转化样本远小于曝光样 online predict detail offline train booking order 房型CVR预估样本空间 offline train: • booking + order online predict: • detail + booking + order 本 2. 房型曝光点击率为12.6%,曝光转化率为 4.5%,点击转化率为36.1%
25. 25 ESMM多目标模型,命中率@1相对提升 85.5% 全样本空间下,基于CTR和CTCVR辅助学习CVR p(y = 1,z = 1 | x) = p(y = 1 | x) * p(z = 1 | y = 1,x) pCTCVR y :点击 z pCTR pCVR :转化 ESMM 损失函数 L(Θ cvr , Θ ctr ) = detail + booking + order l N ∑ i=1 l(y i , f(x i ; Θ ctr )) + :交叉熵损失函数 优点: • 全样本空间下拟合CVR,缓解SSB问题 • CTR task 和 CVR task embedding层参数共享,迁移学习范式缓解DS问题 • ESMM模型是一种框架,两个子网络可以替换成别的网络结构,可拓展性强 • 基于不同业务场景,多个任务的loss权重可灵活调整 N ∑ i=1 l(y i ℘z i , f(x i ; Θ ctr ) * f(x i ; Θ cvr ))
26. 26 优化思路二
27. 27 “猜你喜欢”房型推荐本质上是一个排序问题 LTR(Learning to Rank)三种方法框架 Pointwise 一个房型为一个样本 将排序问题转化为分类、回归问题 Pairwise 一次query中的房型对为一个样本 将排序问题转化为pairwise分类问题 Listwise 一次query中的房型列表为一个样本 直接对排序进行建模(query level),优 化排序评估指标和最小化排序loss McRank\CTR\CTCVR RankNet\Ranking SVM LambdaRank\LambdaMART 未考虑房型的位置信息 仅考虑了房型pair的相对位置信息 考虑了房型的列表位置信息 更关注列表中后面的房型排序情况 更关注列表中后面的房型排序情况 更关注列表中头部的房型排序情况
28. 问题:猜你喜欢只关注首位推荐,而基于log loss的CTCVR模型更在意尾部排序 1 Cost = − (y i log(p i ) + (1 − y i )log(1 − p i ))) N ∑ i=1 p i :预测概率 y i :label label score label score label score 0 0.9 0 0.9 0 0.9 0 0.8 0 0.8 0 0.8 0 0.7 1 0.7 0 0.7 1 0.6 0 0.6 1 0.6 0 0.5 0 0.5 0 0.5 0 0.4 0 0.4 0 0.4 0 0.3 0 0.3 0 0.3 1 0.2 1 0.2 1 0.2 0 0.1 0 0.1 0 0.1 房型list v1 房型list v2 房型list v3 Cost = 0.42957 Cost = 0.40825 Cost = 0.40356 0.4300 0.4225 N 28 模型倾向从 v1 向 v3 方向迭代 cost更低 梯度更大 0.4150 0.4075 房型list v1 房型list v2 房型list v3
29. 解决方案:调整样本权重,引入NDCG评价指标,关注top K排序结果 ∂C −σ λ ij = = Δ NDCG σ(s −s )) ∂s i 1+ e i j K label score label score label score 0 0.9 0 0.9 0 0.9 0 0.8 0 0.8 0 0.8 0 0.7 3 0.7 0 0.7 3 0.6 0 0.6 3 0.6 0 0.5 0 0.5 0 0.5 0 0.4 0 0.4 0 0.4 0 0.3 0 0.3 0 0.3 1 0.2 1 0.2 1 0.2 0 0.1 0 0.1 0 0.1 房型列表 v1 NDCG = 0.4427 房型列表 v2 NDCG = 0.5 模型倾向从 v1 向 v2 方向迭代 29 房型列表 v3 NDCG = 0.4476 r(i) 2 − 1 DCG q @K = ∑ log 2 (i + 1) i i :房型列表中第i个房型 :一个query K :top K个房型 q r(i) :一个query中第i个房型的相关性分数 NDCG q @K = = DCG q @K IDCG q IDCG q = max(DCG q @K) NDCG@K = = NDCG q @K | q |
30. 30 LambdaMART模型,命中率@1相对提升 87.8% CTCVR预估模型 LambdaMART模型 target target 预测用户点击购买房型概率 样本空间:用户房型点击购买行为 • 正样本:曝光点击且购买 • 负样本:曝光未点击+曝光点击未购买 模型:LightGBM 评估指标:命中率@1 问题: 1. 仅考虑转化的样本,损失 了点击样本的信息 2. 损失函数未关注位置信息 方案: 1. 加入点击样本,调整点 击、转化样本权重 2. 评估指标优化 预测用户购买房型概率 样本空间:用户房型点击购买行为 • 最好:点击且购买,label=3 • 一般:曝光仅点击,label=1 • 不好:曝光未点击,label=0 模型:LightGBM 评估指标:NDCG和命中率@1
31. 31 NDCG与订单命中率@1更具有正相关性 指标迭代: AUC & GAUC & 进订率@1 & 命中率@1 —> NDCG + 命中率@1 模型迭代:CTR —> CVR —> CTCVR —> DNN —> ESMM —> LambdaMART —> TF-Ranking 传统预估模型 rank模型 不同模型的离线效果 不同模型AUC表现 不同模型NDCG表现 不同模型命中率@1表现 0.95 0.8 0.58 0.925 0.77 0.506 0.9 0.74 0.433 0.875 0.71 0.359 0.85 baseline ctr ctrvr dnn 0.68 rank baseline ctr ctrvr dnn 0.285 rank baseline ctr ctrvr dnn rank
32. 数据和特征决定模型效果上限 32 User侧特征 • 用户基本属性特征 • 用户机票特征群 • 用户离线特征:用户行为序列向量;历史进订\购买行 • 为;价格、床型、取消确认规则偏好 用户近实时行为:3d进订\购买房型统计;点击酒店价格 统计; 上下文特征 Item侧特征 • 房型基本属性特征:床型、 • • • 早餐、取消确认规则 酒店、房型热度 城市一二线及省会特征 房型价格交叉排序统计 特征工程 • 用户所在地域 • 目的地城市属性:是否省会、 • • 一二三线城市 搜索与入住日期衍生特征群 酒店房型数量
33. 33 总结与展望
34. 总结与规划 复盘总结 - 34 总结 未来规划 - 广告思路 :CTR和CVR的无偏估 模型的基本假设要 反映真实业务 计,结合bid计算排序分值 关系 - 排序思路 :list-wise模型要优于 - 数据和特征是模型效果的上限 不断优化特征工程 + 持续改进训练数 据 > 尝试不同模型 - 工程化是基本功 不稳定、性能/扩展性差的系统无法 真实应用在业务场景 具备工程能力才能小步快跑,快速迭 代 展望 point-wise,深度学习优于传统机 器学习方法 ,使用TF-Ranking优 化构建深度排序模型
35. 未来规划-广告排序 ESMM 有偏预估CVR 35 基于因果推断和双鲁棒的CVR无偏估计
36. 未来规划-TF Ranking 36
37. THANK YOU

Accueil - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-16 21:56
浙ICP备14020137号-1 $Carte des visiteurs$