简介:分享见解及最佳实践
NVIDIA与诸如腾讯等创新型全球领导者的推荐社区密切合作,使其能够重新将最佳实践、见解和经验纳入我们的推荐框架。NVIDIA致力于简化推荐系统的构建、部署和优化过程。而我们的工程团队也在积极迎接行业挑战、举办社区活动,并与腾讯等推荐系统先锋密切合作。作为一名专家工程师,孔祥庭领导着腾讯广告与深度学习平台的设计与开发。孔祥庭受邀参加GTC春季会议,而我们也有幸对他进行采访,了解他关于推荐系统构建的见解。
孔祥庭专访 — 腾讯专家工程师
问题:你在腾讯就职什么工作?
孔祥庭:我是腾讯的一名专家工程师,负责广告推荐系统的设计和开发。同时我也主管着腾讯广告和深度学习平台的运行。我们的平台支持机器学习模型优化、训练和推理,可应用于多种业务场景中,如广告、金融科技和网络数据挖掘。
问题:你的团队在腾讯负责什么?
孔祥庭:我们的团队主要开发机器学习平台,我们负责特征工程、模型训练和在线推理。我们正努力实现GPU基于0到1的新一代高性能分布式广告推荐训练系统。
问题:你的工作,以及你整个团队的工作是如何影响腾讯的整体业务的?
孔祥庭:我们的广告推荐训练平台覆盖了整个腾讯业务流。腾讯广告推荐系统被广泛应用于微信、朋友圈、QQ、腾讯游戏、腾讯视频、腾讯新闻等业务。腾讯广告收入甚至达到上亿。广告推荐的准确性是增加广告收入的一大助力。
腾讯广告推荐被广泛应用
问题:你的团队是一个相对较新的团队吗?腾讯决定投资推荐系统的原因是什么?
孔祥庭:我们的团队已经成立多年,广告业务是腾讯内部比较重要的业务之一,而广告推荐系统则用来提高腾讯的整体广告收入。
问题:你的团队主要开发的是什么样的推荐系统?
孔祥庭:我们团队的主要关注点就是广告推荐系统,负责广告训练平台的优化。腾讯广告推荐系统包含线下特征工程、训练平台、线上推理系统、线上特征工程和游戏平台。广告推荐是一个逐渐筛选的过程。整理阶段包括回顾、预排序和排序。每个阶段都有不同的要求。模型的快速调查和迭代更是对训练性能提出了更高的要求。
腾讯广告推荐系统
HugeCTR — 广告推荐系统加速框架
问题:你的团队是如何进行培训的?
孔祥庭:我们会组织每周一次或每两周一次的技术分享会。
问题:你的团队是如何评估推荐系统的?微调吗?
孔祥庭:我们通过推荐系统来优化算法策略,增加更多的样本和特征,然后评估其是否能带动收入增长。随着样本数据训练数量和样本特征的增加,广告推荐的准确性得以提高。但这样一来,训练时间会延长,且模型的更新频率会受到影响。为了保证模型更新不脱轨,我们需要不断提升模型的训练性能。模型的训练性能得到提升后,我们就可以训练更多的数据,提高模型的准确率,从而增加广告收入。
问题:你如何对推荐系统进行优化?据我们了解,腾讯通过使用 HugeCTR来进行嵌入式优化。这又是如何帮你实现工作流程的优化呢?
孔祥庭:作为一个推荐系统的训练框架,HugeCTR被集成到广告推荐训练系统中,使得模型训练的更新频率更快,并通过训练更多的样本来提升线上广告效果。
问题:你如何选择合适的技术、工具包、方法和框架来进行你的工作?
孔祥庭:我们选择的技术或框架必须与社区生态兼容,这样我们才能更好地进行后续升级。
问题:你如何解决模型的缩放问题?
孔祥庭:模型越大,越利于我们学习更多的特征,也越能提高模型的准确度。
问题:你的团队近期有哪些成功的项目?
孔祥庭:我们在训练框架中开发了一种并行数据分布式解决方案(以提高多GPU扩展性)。
问题:最近有没有在你的推荐系统工作流程中使用某种特定的方法?
孔祥庭:我们最近在广告推荐训练系统中集成了CSR [Common Sparse Row/通用稀疏行]管道。CSR类型训练数据的生成,使得训练数据可以直接在GPU上进行读取。通过我们对数据处理流水线的优化,CPU负载大幅降低,GPU利用率得到显著提高。
问题:面对一个刚刚起步的团队,他们正在为公司进行推荐系统的构建、部署和优化…你会给他们提出怎样的建议,来帮他们加速或简化推荐系统的工作流程呢?
孔祥庭:选择成熟且与社区生态兼容的技术框架,方便进行后续的系统升级。
供参考的其他社区资源
以简化推荐系统的工作流程为目的,NVIDIA整合了来自行业大佬(包括腾讯等创新型推荐系统应用者)的最佳实践、见解和学习经验。如果你想要了解更多的最佳实践案例,来加速推荐系统的工作流程,请查看以下信息来源和大事件:
- 腾讯全球数字会议
- GTC 2021春季会议:了解腾讯如何在Merlin上部署广告系统
- GTC秋季演示 — 腾讯与NVIDIA Merlin的合作
- 推荐系统深度学习峰会