Skip to main content
QUICK REVIEW

[论文解读] Deep Learning Recommendation Model for Personalization and Recommendation Systems

Maxim Naumov, Dheevatsa Mudigere|arXiv (Cornell University)|May 31, 2019
Recommender Systems and Techniques参考文献 23被引用 390
一句话总结

DLRM 展示了一个用于个性化推荐的最先进神经网络,它通过嵌入处理稀疏分类特征,通过 MLP 处理密集特征,将二阶交互显式化,并通过最终的 MLP 预测事件概率。它还引入一种混合模型/数据并行策略,以在多 GPU 硬件上扩展嵌入和 MLP。

ABSTRACT

With the advent of deep learning, neural network-based recommendation models have emerged as an important tool for tackling personalization and recommendation tasks. These networks differ significantly from other deep learning networks due to their need to handle categorical features and are not well studied or understood. In this paper, we develop a state-of-the-art deep learning recommendation model (DLRM) and provide its implementation in both PyTorch and Caffe2 frameworks. In addition, we design a specialized parallelization scheme utilizing model parallelism on the embedding tables to mitigate memory constraints while exploiting data parallelism to scale-out compute from the fully-connected layers. We compare DLRM against existing recommendation models and characterize its performance on the Big Basin AI platform, demonstrating its usefulness as a benchmark for future algorithmic experimentation and system co-design.

研究动机与目标

  • 在个性化推荐与 CTR 预测中说明神经模型的必要性。
  • 提出一个统一的架构(分类特征的嵌入、连续特征的底部密集 MLP),将因子分解机风格的交互与 MLP 头结合起来。
  • 提供 DLRM 的开源 PyTorch 和 Caffe2 实现。
  • 通过混合模型/数据并行策略解决大嵌入表的内存与计算挑战。

提出的方法

  • 通过大型嵌入表对分类特征进行嵌入,以将稀疏输入映射到密集向量。
  • 用底部 MLP 处理连续特征,以获得与嵌入长度相匹配的密集表示。
  • 通过嵌入向量与密集特征之间的点积计算明确的二阶交互,可能将其输入到一个关注交互的路径。
  • 将交互与处理后的密集特征拼接,并通过顶层 MLP 产生通过 sigmoid 的概率。
  • 使用标准损失(交叉熵)配合 SGD/Adagrad 优化器进行训练和评估,并与 Deep and Cross Networks 等基线模型进行比较。
  • 实现一种混合并行策略:嵌入的模型并行(内存瓶颈)与 MLP 的数据并行(计算瓶颈),并带有自定义的嵌入路由和 all-to-all 通信(但 PyTorch/Caffe2 本身并不原生支持)。

实验结果

研究问题

  • RQ1如何将基于嵌入的分类特征表示有效地与密集特征处理集成,以提升 CTR/预测性能?
  • RQ2在 DLRM 中二阶交互的影响与其他模型中的高阶交互相比如何?
  • RQ3混合模型/数据并行策略能否在多 GPU 硬件上高效训练极大的嵌入表?
  • RQ4在公开的 CTR 数据集上,DLRM 与现有模型(如 DCN)在精度和参数效率方面的对比如何?

主要发现

  • DLRM 在 Criteo Ad Kaggle 数据集上比 DCN 的训练和验证准确率略高,且没有进行广泛的超参数调整。
  • 在单插槽设备配置下,具有大嵌入表和大量 MLP 的情况下,嵌入查找在 CPU 上主导运行时,而全连接层在 GPU 上主导。
  • 模型包含数亿参数(在报道的配置中约为 540M),在嵌入参数与 MLP 参数之间保持平衡。
  • 一种专门化的混合并行方法(嵌入模型并行,MLP 数据并行)使在多 GPU 硬件上的扩展成为可能,并且性能分析显示显著改进和现实的时序基准(CPU ~256s,GPU ~62s 对于一个示例配置)。
  • 作者提供了 PyTorch 和 Caffe2 的开源实现,并在 Big Basin AI 平台上使用 8 张 Nvidia Tesla V100 GPU 进行评估。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。