工业界推荐系统必读论文:基于深度学习的推荐模型——DLRM

2020 年 5 月 17 日 图与推荐


作者丨纪厚业

单位丨北京邮电大学博士生

研究方向丨异质图神经网络及其应用


引言


推荐系统尤其是深度推荐系统已经在工业界得到了广泛应用,尤其是在电商场景下(如淘宝和京东的商品推荐)。一个好的工业级推荐系统可以推动业务增长带来大量的经济效益。那么,工业级推荐系统的最佳实践是怎样的呢?Facebook 的推荐团队在本文给出了他们的答案。


本文详细介绍了 Facebook 最新的推荐系统实践包括特征处理、算法建模、代码实现和平台介绍。如此详细清楚的论文,可以说是工业界推荐系统的必读论文之一。作者也开源了代码和最优超参数供大家学习:


https://github.com/facebookresearch/dlrm




模型架构


本文所设计的推荐系统架构如 Fig 1 所示。整个模型主要包含:特征工程(包含 spare 和 dense 特征),用于特征建模 Embedding 和 Embedding Lookup,用于特征转换的 NNs,用于特征交互的 Interactions 以及最后的预测 NNs。



特征表示 Embedding


在实际的推荐场景中,用户和商品通常都有丰富的特征信息。用户的特征通常用性别,年龄,居住地等。如何将这些类别特征转为模型可以处理的向量呢。本文的做法是将这些类别特征编码为 one-hot 的向量,然后通过 embedding lookup 来得到其表示。



以用户的性别为例,性别男的 one-hot 编码为 [1, 0] 性别女的 one-hot 编码为 [0,1]。然后,我们针对性别初始化一个关于性别的 embedding matrix,该矩阵大小为 2*d,2 代表性别的可能取值,d 代表 embedding 的维度。那么通过 embedding lookup,性别男的 embedding 其实就是 embedding matrix的第一行,性别女的 embedding 就是 embedding matrix 的第二行。通过上述操作,我们就将难以处理的类别特征转化为了神经网络方便处理的向量。


上述过程得到是类别特征的初始 embedding,我们可以通过 MLP 对其进行非线性转换。初始的特征 embedding 会在模型优化过程中学习到具有区分度的特征表示。


特征交互 Interaction


在得到特征的表示后,我们通过内积等简单操作实现模型的预测:



但是,如果我们能够抓住的描述特征关联性,那么模型的预测能力可能会进一步提升。例如,经典的 FM:



特征交叉的好处到底在哪呢?这里给一个形象的例子:经度和纬度分开看并不能精准定位某个地区,但是当经纬度结合起来就可以精准定位地区,该地区的每一部分拥有的类似的特性。


模型预测 NNs


有了特征的表示及其交互之后,我们可以将其送入到 MLP 中,并利用 Sigmoid 函数预测最终的点击概率。



可以看出,本文所提出的 DLRM 模型其实并没有很复杂,但是却将工业界的一些实践方法给出了清晰的介绍。


模型实现


DLRM 实现所需要的相关接口在 PyTorch 和 Caffe2 中都有实现,见 Table 1。




模型并行


在工业界的大规模数据下,模型并行是必不可少的一个步骤。DLRM 模型的主要参数来自于特征的 embedding,后面特征交互和模型预测部分的参数其实很少。假设我们有一亿个用户,如果对其 ID 进行 embedding,那么 embedding matrix 就会有一亿行,这是一个非常大的参数矩阵。


对于特征 embedding 部分,这里采用的是模型并行,将一个大的embedding 矩阵放到多个设备上,然后更新相应的特征 embedding。


对于特征交互和模型预测部分,这里的参数量相对较少而且用户/商品的数量无关,本文采用的是数据并行的方式。在多个设备上计算梯度,然后将梯度合并来更新模型。


实验


本文在随机数据,合成数据和公开数据上进行了实验。对比算法主要是Deep cross network。整个实验运行在 Facebook 的 Big Basin platform 上。



具体实验结果如下:



可以看出,本文所提出的 DLRM 算法明显超越谷歌的 DCN。


总结


本文提出了一种工业级推荐系统 DLRM 并实验验证了其优越性。同时,作者也给出了工业界推荐系统的最佳实践,相关代码和超参数设置也进行了开源。可以说,本文是在工业界做推荐系统的必读论文之一。




点击以下标题查看更多往期内容: 






#投 稿 通 道#

 让你的论文被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。


📝 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志


📬 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通




🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



关于PaperWeekly


PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。


▽ 点击 | 阅读原文 | 下载论文 & 源码

登录查看更多
0

相关内容

推荐系统,是指根据用户的习惯、偏好或兴趣,从不断到来的大规模信息中识别满足用户兴趣的信息的过程。推荐推荐任务中的信息往往称为物品(Item)。根据具体应用背景的不同,这些物品可以是新闻、电影、音乐、广告、商品等各种对象。推荐系统利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程。个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品。随着电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费大量的时间才能找到自己想买的商品。这种浏览大量无关的信息和产品过程无疑会使淹没在信息过载问题中的消费者不断流失。为了解决这些问题,个性化推荐系统应运而生。个性化推荐系统是建立在海量数据挖掘基础上的一种高级商务智能平台,以帮助电子商务网站为其顾客购物提供完全个性化的决策支持和信息服务。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【CVPR 2020-商汤】8比特数值也能训练卷积神经网络模型
专知会员服务
25+阅读 · 2020年5月7日
近期必读的6篇顶会WWW2020【推荐系统】相关论文-Part3
专知会员服务
57+阅读 · 2020年4月14日
近期必读的5篇AI顶会CVPR 2020 GNN (图神经网络) 相关论文
专知会员服务
78+阅读 · 2020年3月3日
【WWW2020-华为诺亚方舟论文】元学习推荐系统MetaSelector
专知会员服务
55+阅读 · 2020年2月10日
专知会员服务
87+阅读 · 2020年1月20日
近期必读的9篇 CVPR 2019【视觉目标跟踪】相关论文和代码
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
六篇 CIKM 2019 必读的【图神经网络(GNN)】长文论文
专知会员服务
37+阅读 · 2019年11月3日
初学者系列:Deep FM详解
专知
108+阅读 · 2019年8月26日
近期必读的12篇「推荐系统」相关论文
PaperWeekly
33+阅读 · 2019年3月7日
基于深度交叉特征的推荐系统
微信AI
9+阅读 · 2019年2月1日
业界 | 从FM推演各深度CTR预估模型(附代码)
大数据文摘
8+阅读 · 2018年7月16日
CTR预估专栏 | 一文搞懂DeepFM的理论与实践
AI前线
13+阅读 · 2018年7月6日
深度学习在CTR预估中的应用 | CTR深度模型大盘点
PaperWeekly
15+阅读 · 2018年4月11日
深度学习在推荐系统上的应用
架构文摘
13+阅读 · 2018年2月22日
【推荐系统】详解基于内容的推荐算法
产业智能官
23+阅读 · 2018年1月11日
Hardness-Aware Deep Metric Learning
Arxiv
6+阅读 · 2019年3月13日
Next Item Recommendation with Self-Attention
Arxiv
5+阅读 · 2018年8月25日
Arxiv
8+阅读 · 2018年5月1日
Arxiv
7+阅读 · 2018年1月31日
VIP会员
相关VIP内容
【CVPR 2020-商汤】8比特数值也能训练卷积神经网络模型
专知会员服务
25+阅读 · 2020年5月7日
近期必读的6篇顶会WWW2020【推荐系统】相关论文-Part3
专知会员服务
57+阅读 · 2020年4月14日
近期必读的5篇AI顶会CVPR 2020 GNN (图神经网络) 相关论文
专知会员服务
78+阅读 · 2020年3月3日
【WWW2020-华为诺亚方舟论文】元学习推荐系统MetaSelector
专知会员服务
55+阅读 · 2020年2月10日
专知会员服务
87+阅读 · 2020年1月20日
近期必读的9篇 CVPR 2019【视觉目标跟踪】相关论文和代码
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
六篇 CIKM 2019 必读的【图神经网络(GNN)】长文论文
专知会员服务
37+阅读 · 2019年11月3日
相关资讯
初学者系列:Deep FM详解
专知
108+阅读 · 2019年8月26日
近期必读的12篇「推荐系统」相关论文
PaperWeekly
33+阅读 · 2019年3月7日
基于深度交叉特征的推荐系统
微信AI
9+阅读 · 2019年2月1日
业界 | 从FM推演各深度CTR预估模型(附代码)
大数据文摘
8+阅读 · 2018年7月16日
CTR预估专栏 | 一文搞懂DeepFM的理论与实践
AI前线
13+阅读 · 2018年7月6日
深度学习在CTR预估中的应用 | CTR深度模型大盘点
PaperWeekly
15+阅读 · 2018年4月11日
深度学习在推荐系统上的应用
架构文摘
13+阅读 · 2018年2月22日
【推荐系统】详解基于内容的推荐算法
产业智能官
23+阅读 · 2018年1月11日
Top
微信扫码咨询专知VIP会员