大规模推荐模型深度学习系统的总结
推荐场景的重要性
腾讯PCG的图文、视频推荐(如腾讯视频、腾讯新闻、QQ看点等)以及腾讯系内容推荐(如阅文集团、QQ音乐),对推荐系统的依赖程度非常高。
核心特点
- 特征动态变化:用户与推荐系统交互,7x24小时流式学习;item和user新增、离开/遗忘导致embedding空间动态变化。
- 热点现象:存在大量热点key,训练与推理的hotkey高度重合。
- 稀疏表示:embedding以稀疏方式表达信息。
数据的时空特点
- 短时间内部分命中:短时间内只有部分item和user被命中,只有部分参数被用到。
- 热点key变化:热点key变化较慢。
机器学习特点
解决方案
- 分布式训练框架
- 基于参数服务器架构的分布式训练框架,TB级模型分片存储/更新,百TB数据分片训练。
- 异步训练流水线和多级存储,提升性能,降低内存成本。
- GPU训练
- 利用GPU进行多级存储训练,减少节点数,提升性价比。
- 在线推理服务
- 分布式Serving架构,支持多模型和模型多版本,降低内存消耗。
- 模型压缩
- 通过量化、稀疏化、混合压缩等方式,减少模型大小,降低推理成本。
- Embedding表优化
- 使用Double Hashing等方法设计更小的Embedding表,减少内存占用。
未来方向
- 多场景建模:适应不同场景的推荐需求。
- 端云协同:实现端云一体的协同推荐技术,提高资源利用率。
- 全链路自适应:推荐全链路自适应,根据请求量调整模型配置,最大化资源利用。
总结
腾讯的大规模推荐模型应用已达到千亿级特征(TB级)的在线/离线训练和在线推理服务,并通过多种优化手段达到业界先进水平。