神策数据-推荐系统的实践与思考

神策数据算法专家胡士文从以下四方面分享了推荐系统构建过程的实践与思考,如下: 第一,算法。到底应该选择什么样的算法? 第二,数据。当确定了算法时,应该选择什么样的数据?怎样加工数据?用什么样方法采集数据? 第三,在线服务。当模型训练完毕,数据准备充分之后,就会面对接收用户请求返回推荐结果的事项,这其中包含哪些问题? 第四,评估方法。在做推荐系统时,企业该如何评估推荐系统的落地效果? 该文档是神策数据《智能推荐——应用场景与技术难点剖析》闭门会上神策数据算法专家胡士文分享的《推荐系统的实践与思考》的完整版 PPT。
展开查看详情

1.推荐系统的实践与思考 神策数据算法专家 胡士文

2.推荐系统的四要素 算法 我该选择什么样的算法 数据 我需要采集哪些数据,并作什么样的加工 在线 如何保证响应性能,并具有高可扩展性 服务 效果 如何构建指标体系;如何指导后续迭代 评估

3.标签

4.协同过滤

5.深度学习

6.深度学习目的之一:向量化

7.实现一个深度学习模型的“百问” ”训练数据该用什么格式“ ”多少训练数据量合适“ ”怎么调参呢“ ”该用多“深”的模型“ ”数据该怎么采样“ ”需要GPU吗“ ”模型训练太慢了怎么办“ …

8.算法 冷启动 新内容 新用户

9.新内容冷启动

10.基于深度学习的语义理解模型

11.这么多模型,怎么放到一个推荐系统里面 海量 Item 排序列表 推荐结果 军事 财经 召回 排序 规则 体育 游戏 美食 视频

12.数据——所有算法的根基 推荐算法 模型 + 数据

13.数据——我们需要哪些数据? 用户行为 物品信息 用户画像 外部数据

14.数据——用户行为数据举例 验证效果 分析问题 训练模型 A/B Test

15.数据 一个完整的用于推荐系统的数据采集方案: 事件设计 用户打通:distinct id 内容打通:视频+新闻的类别 行为打通

16.曝光日志的常见字段

17.如何采集

18.SDK 埋点的优势 • 有成熟的埋点事件和埋点验证方案 接入 • SDK 有埋点接口和文档指导客户埋点,无需关注上报问题(客户需 成本低 要梳理埋点,易埋错、少埋、重复埋点) 优势 • 直接将数据上报,无需通过层层数据传递 容错性高 • 数据上报后实时更新模型(如走客户自身埋点和其客户端,数据出现 问题,难以回溯埋点问题、传输问题,数据质量维护成本高)

19.从行为数据到训练数据 构造正负例 特征工程 实时特征(效果) 数据采样

20.从行为数据到训练数据 构造正负例 特征工程 数据采样

21.构造正负例例

22.特征工程,以电商为例 商品画像 用户画像 品类 年龄 品牌 性别 商品状况 注册时间 价格 品类偏好 性别 品牌偏好 热度 商品状况偏好 点击率 价格偏好 收藏比率 咨询比率 加购比率

23.踩坑分享 小流量上线后,效果不符合预期 发现两方面的数据异常 命中行为模型的用户少 很多请求的 id 未出现在日志中 问题? 如何解决

24.在线服务 ”如何具备高可扩展性“ ”如何实现不同场景不同时效性“ ”如何实现 A/B Test“ ”监控和报警怎么做“ ”如何实现高维向量查询“ …

25.高维向量查询 Faiss Facebook 于 2017 年开源 用于大规模的高维向量相似性搜索 可支持十亿规模

26.在线服务系统部署示意图 客户业务后端 http Nginx 模型服务 群 thrift 在线服务 群 在线存储 (Python) (Python Tornado) (Redis Cluster) 注: 模型服务群 与 在线存储 redis cluster 亦使用 Nginx 进行负载均衡。

27.不同场景不同时效性的支持 综合 feed 推荐最近 3 天的文章,最近 7 天的视频 历史频道推荐最近 30 天的文章,最近 60 天的视频 相关文章推荐最近 7 天的文章 相关视频推荐最近 30 天的视频

28.评估方法 ü 点击率(pCTR) ü 留存率 ü 点击人数比(uCTR) ü 转化率 ü 人均点击次数 ü…

29.评估方法 时效性 多样性 稳定性 覆盖率