AI为推荐系统“加料”, 实现个性化消费者服务
2020-09-30 16:41
如果您想开发全球一流的推荐系统,全球专家团队的建议是将GPU加速的AI与古老的智慧相结合。
NVIDIA团队赢得了今年ACM RecSys挑战赛的冠军。这是一项年度竞赛,汇集业内500余名专家,包罗推荐系统相关的最新研究,这些推荐系统可横跨餐厅到房地产等众多领域,为消费者提供个性化建议。
团队在9月22日至26日的线上活动中介绍了参赛作品,其作品已作为开源代码提供。他们还与开发RAPIDS 和Merlin等NVIDIA产品的同事分享经验教训,以便客户能够享受他们的劳动成果。
GPU服务器赋力推荐系统
今年的竞赛由Twitter赞助,要求研究人员梳理包含1.46亿条推文的数据集,以预测用户会对哪些内容点赞、回复或转发。NVIDIA团队的研究工作领先于34个竞争对手,这在一定程度上要归功于采用4个NVIDIA V100 Tensor Core GPU的系统,该系统对数十万用户操作进行了分析。
他们的成果十分惊人。GPU加速软件在不到一分钟的时间内完成了工程设计,而这在CPU上需要将近一个小时的时间,速度提高了500倍。四组GPU加持的系统将AI模型的训练时间提升至采用CPU训练的120倍。与最初采用CPU相比,GPU使该团队交付端到端解决方案的速度提高了280倍。
“我们在功能工程方面实现了500倍的提速,这让我震惊不已,” Even Oldridge博士说道。在过去的一年中,他的机器学习团队人数增加了三倍,设计出了NVIDIA Merlin推荐系统框架。
与CPU相比,GPU和UCX等框架可提供高达500倍的加速。
竞赛激发出有关软件升级的想法
这项竞赛催生了有关数据转换的工作,这将使NVTabular的未来版本更加强大。NVTabular是一个Merlin库,可将Excel工作簿这样的表格作为推荐系统的基础,以简化新功能的工程设计。
“我们能够夺冠部分归功于我们能够快速制作原型。”获奖团队中的一位推荐系统专家Benedikt Schifferer说道。
Schifferer还将此归功于两个现有工具。DASK是一种开源调度工具,使团队能够将需要大量内存的工作分配到多GPU中。cuDF是NVIDIA RAPIDS加速数据科学框架的一部分,使该团队能够基于GPU运行常用的Pandas库。
“基于CPU运行Pandas在数据中搜索功能需要花费数小时,”团队中为数不多的数据科学家之一Chris Deotte说道,他凭借在比赛中的出色表现而获得了Kaggle大师的头衔。
“当我们将代码转换到RAPIDS时,就能在几分钟内实现对功能的探索。这就带来了巨大改观,我们能够搜索数百种功能并有所获,最终赢得了这场比赛。” Deotte说道,他是在所有四个Kaggle类别中都获得 “大师”头衔的两位参赛者之一。
推荐系统的更多增强功能正在开发进程中。例如,基于GPU的文本处理日后有望进一步完善,这对于推荐系统是一种重要的数据类型。
“灵光一现”锁定成功
Deotte赞扬了巴西的一位同事Gilberto Titericz,称他的深入洞察推动着团队前进。
“他追踪了Twitter粉丝随时间的变化,而事实证明,这一功能提升了我们的预测准确性,成效非常好。” Deotte说道。
“我看到一些变化与时间相关,便将其绘制下来,” Titericz说道,他连续两年被评为全球最顶尖的Kaggle大师。
“当我看到堪称完美的结果时,还以为是自己犯了错误,但是我抓住这个机会提交了它。令我惊讶的是,它在排行榜上的得分很高,可见我的直觉是正确的。” 他补充道。
最后,该团队综合了由Titericz、Schifferer和日本同事Kazuki Onodera设计的互补AI模型,它们全部基于XGBoost开发(一种非常适合推荐系统的算法)。
团队的几位成员也是Kaggle精英团队的成员,NVIDIA创始人兼首席执行官黄仁勋称其为KGMON,Pokemon的mon。该团队在过去四年中赢得了数十场比赛。
推荐系统在B2C领域日益受欢迎
对于许多团队成员而言,包括法国南部的团队负责人Jean-Francois Puget,这不只是一份朝九晚五的工作。
“比赛阶段,我们夜以继日,周末无休,立志成为全球第一。”Puget说道。在深度学习走向商业化的二十年前,他获得了机器学习博士学位。
如今,这项技术正在迅速传播。
今年的ACM RecSys包括来自亚马逊和Netflix等公司的三十多个论文分享和演讲,这些公司通过推荐系统,帮助人们找到喜爱的书籍和影片,促进这一领域的发展成熟。现在,各行各业的消费品公司也都开始采取行动,包括宜家和Etsy,它们将在今年的ACM RecSys上亮相。
“在过去的三四年中,业界注重更提供个性化的体验,真正了解用户的需求,” Schifferer说道。这是一个循环,“客户的选择会影响训练数据,因此一些公司每四小时就对AI模型进行一次训练,有些则表示他们会持续进行训练AI模型。”
这就是团队为何要努力创建像Merlin这样的框架,使推荐系统能够在GPU上轻松快速地大规模运行。NVIDIA获胜团队的其他成员还有来自德国的Christof Henkel、来自美国的Jiwei Liu和Bojan Tunguz,来自巴西的Gabriel De Souza Pereira Moreira,以及来自荷兰的Ahmet Erdem。