酒店排序算法的探索与实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 酒店排序算法的探索 与实践 成鑫鑫 | 技术运营中心/算法组/搜索推荐
2. 2020年七月加入去哪儿网,两年多时间 见证了深度排序算法在国内酒店搜索中 的演进,探索总结了一些适合去哪儿业 成鑫鑫 务的特征处理和模型迭代方法。
3. 目 录 A 酒店搜索简介 B 搜索算法流程 C 特征工程探秘 D 样本选择浅谈 E 未来规划 CONTENTS
4. 01 酒店搜索简介
5. 酒店搜索功能介绍
6. 酒店搜索功能介绍
7. 用户搜索流程
8. 排序方式 排序方式 排序逻辑 欢迎度排序 模型打分、挂牌分组、产品加权、强插逻辑 好评优先 是否可订、评分评论数加权后降序、评论数据降 序、价格升序、7天订单量降序 低价优先 是否可订、价格升序、7天订单量降序 高价优先 是否可订、是否有评分、价格降序、评分降序、 7天订单量降序 评论数优先 是否可订、评论数降序、评分降序、价格升序、 7天订单量降序 距离优先 是否可订、距离由近到远、7天内订单量降序
9. 酒店搜索的特点 酒店搜索 功能定位 淘宝/京东等电商搜索 商家和用户的连接器 推荐种类 单一(只有酒店、民宿...) 种类多 算法功能 满足需求 满足并挖掘需求 个性化程度 中 高 位置约束 强 基本没有
10. 02 搜索算法流程
11. 搜索算法通用流程 基本概念 常用方法 从全量数据中找出尽可能符合 用户预期的结果 协同过滤、基于内容、热门、规则、 模型的召回等 (搜索召回前会有意图 识别过程) 排序 将召回的结果按用户兴趣度从 大到小排序 粗排:使用简单模型排序,减少精 排压力 精排:使用复杂模型排序,尽可能 准确描述用户兴趣 重排序:满足其他目标,比如惊喜 度、多样性、业务目标 结果呈现 相关数据的拼装,将信息展现 给用户 召回
12. 搜索系统
13. 搜索排序主流程
14. 精排模型目标 ⚫ 精排模型要做什么事? ○ ⚫ ⚫ 给用户推出更好的酒店!!! 模型目标: S2O ● S2O = 下单用户 / 搜索用户 ● CTR ( 次要目标) = 点击数 / 曝光数 样本选择: ● 下单样本是正样本,曝光未下单是负样本 ● 点击样本是正样本, 曝光未点击是负样本
15. 模型结构 多目标的必要性 1、点击是必经一环 2、缓解幸存者偏差 3、推荐结果普适性
16. 模型评估 线下 评估 线上 评估 模型效果评估指标:AUC、NDCG、召回率等 业务可理解指标:新模型排序位置相对于老模型位置上升、相等、下降 的比例, 新旧模型diff 率 AB测试:S2O等 效果监测:Session点击率,平均点击位置、下单酒店平均展示位置 等
17. 03 特征工程
18. 特征工程的重要性 样本和特征决定了结果的上限,模型只是不断趋近于这个上限 特征收集 -> 特征分析 -> 特征处理 买菜/挑菜 -> 摘菜/洗菜 -> 切菜
19. 特征举例 维度 举例 用户维度 用户历史点击价格、用户购买价格、用户筛选档次... 酒店维度 酒店价格、酒店CTR 、酒店S2O、酒店单量占比... 交叉特征 用户是否点击过此酒店、7天之内收藏过该酒店...
20. 特征分析 统计量分析 缺失率、集中度、均值、分位数、 方差 等 对比分析 如:高星酒店占比,poi距离三公 里内订单占比 分布分析 频数分布、频率分布,直方图、 饼图等(正态、泊松) 特征分析是特征工程的基础 目的 :建立对数据的基本认知,初步筛选特征 周期性分析 比如酒店s2o的周期性变化 相关性分析 主要指特征和label 的相关性 交叉分析 特征之间交叉分析(场景和s2o的 交叉)
21. 特征处理 01 02 03 连续型特征 离散型特征 缺失值处理
22. 连续型特征处理 处理方式 离散化 / 分 箱 特征缩放 具体怎么做 ● 人工分箱(等宽、等频) ● 自动分箱(AutoDis) ● 模型分桶(树模型) ● 对数变换 、平方根变换 ● 倒数变换 ● 平滑变换(比值类型的特征) ● GuassRank
23. 连续型特征处理 酒店S2O特征: log 变换 贝叶斯平滑
24. 思考题 1、根据用户的经纬度快速找到周围五公里的酒店? 2、快速找到北京市单量占比最多的一个地方? 要求:这个地方大概方圆五公里 经纬度作为特征怎么处理?
25. 特征处理举例 经纬度特征的处理(geo hash) GeoHash是一种地址编码方法。他能够把二维的空间经纬度数据编码成一个字符串 一.首先将经纬度变成二进制 ○ 比如这样一个点( 39.923201, 116.390705 ) ● 纬度的范围是( -90 , 90 ),其中间值为 0 。对于纬度 39.923201 , 在区间( 0 , 90 )中,因此得到一个 1 ;( 0 , 90 )区间的中间值为 4 5 度 , 纬 度 3 9 . 9 2 3 2 0 1小 于 4 5 , 因 此 得 到 一 个 0 , 依 次 计 算 下 去 , 即可得到纬度的二进制表示 : 10111000110001111001 ● 同理可以得到经度 116.390705 的二进制表示为: 11010010110001000100 二.经纬度合并(经度占偶数位,纬度占奇数位 ) ● 11100 11101 00100 01111 00000 01101 01011 00001 三.按照 Base32 进行编码 ● 具体操作是先将上一步得到的合并后二进制转换为 10 进制数据,然后对 应 生 成 B as e 3 2 码 。 需 要 注 意 的 是 , 将 5 个 二 进 制 位 转 换 成 一 个 b as e 3 2 码。 ● 上例最终得到的值为: wx4g0ec1
26. 特征处理-离散型特征 一. one hot 编码 二. embedd i n g 隐向量 (深度模型常用方 法) 三. C ount Encoding 统计某类别型特 征 发生 的 频次 四. Targe t encodin g ○ 用类别对应的标签 期 望来 代 替原 始 类别 ● 问题: 长尾类别可能会过 拟 合 ● 改进:平滑处理
27. 特征处理-缺失值处理 1、直接补全 0 1 ⚫ 缺失值的填充往往根据业务决定 ⚫ 中值、均值、默认值、众数、分布、随机、预测 2、构造哑变量 0 2 ⚫ 加入一个专门标识位,标识是否缺失. ⚫ 缺点:模型不一定能学习到 3、组合特征 0 3 特征 + 标识
28. 特征验证 离线指标 线上指标 参数、重要性 离线验证 线上验证 数据分析验证 PDP,ICE 猜想 - 训练 - 离线验证 - 上线 - 线上验证 特征工程的闭环
29. 特征验证-PDP、ICE 100(酒店评分) 288(酒店3个月CTR) a. 特征清洗有问题 b. 样本中没有这样的特征分布 c. 组合特征的影响 1. 模型解释: 观察某个特征的不同取值对预测值有什么样的影响 2. 模型debug:某个特征与预测值之间的关系不符合理论分析或者直觉的时候, 有可能是某些环 节出了问题 3. 特征选择:当某个特征的PDP曲线几乎水平或者无规律抖动, 这个特征可能是无用的特征.
30. 特征工程取得的收益 S2O相对提升 0.81% 一.加了分场景S2O特征(特征交叉分析) 折合年化收益千万 元以上 三.CTR特征平滑处理 二.经纬度 geo hash 之后的统计特征 四.特征缺失值优化
31. 04 样本选择浅谈
32. 样本选择 01 正样本怎么确定 03 正负样本比例 05 热销酒店负样本 02 负样本怎么确定 04 高活用户、低活用 户 06 难负样本和易负样 本比例
33. 热销酒店负样本降采样 ⚫ 这个是和很多推荐系统不一样的地方 ⚫ 拿短视频类的推荐系统举例,这些系统有一个很重要的指标是 “推荐结果的多样性”, 推荐策略上会打压非常热门的视频。 ⚫ 销量top20%的酒店,占了70%左右的单量。 ⚫ 这些酒店曝光多,同时作为负样本的几率就更大,负样本多又 会抑制曝光。 ⚫ 我们对负样本中的热销酒店做了降采样。实验证明这个方法是 有效的。
34. 难负样本和易负样本 模型目标: 识别宠物是不是哈士奇 正样本: 难负样本:和正样本很 像的负样本 易负样本:和正样本不 像的负样本 负样本: 难负样本 易负样本
35. 样本选择取得的收益 S2O相对提升 0.69% 一.高活、低活用户样本采样优化 折合年化收益千万 元以上 三.难负样本、易负样本采样优化 二.热销酒店负样本降采样
36. 05 未来规划
37. 未来规划 自然排序和广告混排 端上重排 小场景的优化
38. 分享完毕,谢谢聆听!

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