DLRM

深度学习推荐模型
授权协议 MIT
开发语言 Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 不详
投 递 者 徐洋
操作系统 跨平台
开源组织 Facebook
适用人群 未知
 软件概览

DLRM(Deep Learning Recommendation Model)是深度学习推荐模型的实现,用于个性化推荐。

该模型输入有密集和稀疏的特性,前者是浮点值的向量,后者是嵌入表的稀疏索引列表,嵌入表由浮点值向量组成。所选择的矢量被传递到由三角形表示的 mlp 网络,在一些情况下,矢量通过操作符(Ops)进行交互。

output:
                    probability of a click
model:                        |
                             /\
                            /__\
                              |
      _____________________> Op  <___________________
    /                         |                      \
   /\                        /\                      /\
  /__\                      /__\           ...      /__\
   |                          |                       |
   |                         Op                      Op
   |                    ____/__\_____           ____/__\____
   |                   |_Emb_|____|__|    ...  |_Emb_|__|___|
input:
[ dense features ]     [sparse indices] , ..., [sparse indices]

更精确的模型层定义:

  1. 完全连接的 mlp 层

    z = f(y)

    y = Wx + b

  2. 嵌入查找(对于稀疏索引列表 p=[p1,...,pk])

    z = Op(e1,...,ek)

    obtain vectors e1=E[:,p1], ..., ek=E[:,pk]

  3. Operator Op 可以是以下之一

    Sum(e1,...,ek) = e1 + ... + ek

    Dot(e1,...,ek) = [e1'e1, ..., e1'ek, ..., ek'e1, ..., ek'ek]

    Cat(e1,...,ek) = [e1', ..., ek']'

    其中,' 表示转置操作

要求:

  • pytorch-nightly (6/10/19)
  • onnx (可选)
  • torchviz (可选)
  • sok dlrm数据 下载terebate数据: https://ailab.criteo.com/ressources/ # Usage: dlrm_raw input_dir output_dir --train {days for training} --test {days for testing} $ dlrm_raw ./ ./ \ --train 0,1,2,3,4,5,6,7,8,

  • 人工智能相关技术开发,很多时候都需要大型科技企业提供资源方可顺利进行。其中社群在这方面投放不少资源,最近再次将旗下人工智能工具开源,为开源开发社群提供实际协助。这次开源的是深度学习建议模型(Deep Learning Recommendation Model,DLRM)。DLRM 是先进的 AI 模型,用于生产环境提供个人化结果。模型可用于 社群的 PyTorch、社群分布式学习框架 Caffe2

  • 参考:https://mp.weixin.qq.com/s/mUNjLuOG2UvztCEP3wyPPw 代码:https://github.com/facebookresearch/dlrm   转载于:https://www.cnblogs.com/graybird/p/11247806.html

 相关资料
  • 我试图解决序列完成的问题。假设我们有基本真值序列(1,2,4,7,6,8,10,12,18,20) 我们模型的输入是一个不完整的序列。i、 e(1,2,4,10,12,18,20)。从这个不完整序列中,我们想要预测原始序列(地面真值序列)。哪些深度学习模型可以用来解决这个问题? 这是编码器-解码器LSTM体系结构的问题吗? 注:我们有数千个完整的序列来训练和测试模型。 感谢您的帮助。

  • 主要内容 课程列表 专项课程学习 辅助课程 论文专区 课程列表 课程 机构 参考书 Notes等其他资料 卷积神经网络视觉识别 Stanford 暂无 链接 神经网络 Tweet 暂无 链接 深度学习用于自然语言处理 Stanford 暂无 链接 自然语言处理 Speech and Language Processing 链接 专项课程学习 下述的课程都是公认的最好的在线学习资料,侧重点不同,但推

  • Google Cloud Platform 推出了一个 Learn TensorFlow and deep learning, without a Ph.D. 的教程,介绍了如何基于 Tensorflow 实现 CNN 和 RNN,链接在 这里。 Youtube Slide1 Slide2 Sample Code

  • 推荐系统是针对消费者过度选择的直观防线。 鉴于网络上可用信息的爆炸性增长,用户经常受到无数产品,电影或餐馆的欢迎。 原文:Deep Learning based Recommender System: A Survey and New Perspectives (arxiv 1707.07435)

  • 现在开始学深度学习。在这部分讲义中,我们要简单介绍神经网络,讨论一下向量化以及利用反向传播(backpropagation)来训练神经网络。 1 神经网络(Neural Networks) 我们将慢慢的从一个小问题开始一步一步的构建一个神经网络。回忆一下本课程最开始的时就见到的那个房价预测问题:给定房屋的面积,我们要预测其价格。 在之前的章节中,我们学到的方法是在数据图像中拟合一条直线。现在咱们不

  • 深度学习的总体来讲分三层,输入层,隐藏层和输出层。如下图: 但是中间的隐藏层可以是多层,所以叫深度神经网络,中间的隐藏层可以有多种形式,就构成了各种不同的神经网络模型。这部分主要介绍各种常见的神经网络层。在熟悉这些常见的层后,一个神经网络其实就是各种不同层的组合。后边介绍主要基于keras的文档进行组织介绍。

  • Python 是一种通用的高级编程语言,广泛用于数据科学和生成深度学习算法。这个简短的教程介绍了 Python 及其库,如 Numpy,Scipy,Pandas,Matplotlib,像 Theano,TensorFlow,Keras 这样的框架。

  • 你拿起这本书的时候,可能已经知道深度学习近年来在人工智能领域所取得的非凡进展。在图像识别和语音转录的任务上,五年前的模型还几乎无法使用,如今的模型的表现已经超越了人类。