ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)

Restricted Boltzmann Machines for Collaborative Filtering

Ruslan Salakhutdinov, Andriy Mnih, Geoffrey Hinton

University of Toronto

http://www.cs.toronto.edu/~rsalakhu/papers/rbmcf.pdf

用于协同过滤的很多方法都不能处理非常大的数据集。这篇文章利用一种双层无向图模型,RBM,对表格形式的数据进行建模,比如用户对电影的评分数据。

针对这种模型,作者们给出了比较高效的学习和推理过程,并将其用于Netflix数据集,该数据集包含一亿多条用户电影评分数据。

结果显示,RBM的效果优于经过精调的SVD模型。多个RBM模型的预测结果和多个SVD模型的结果线性组合之后,误差率相对Netflix自有系统的评分好了超过6%。

协同过滤通常将用户对矩阵的评分矩阵分解成两个矩阵的乘积,一个是用户特征构成的矩阵,一个是商品特征构成的矩阵。

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第1张图片

本文所提方法不能利用极大似然估计来求解,但是可以利用对梯度的近似来求解

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第2张图片

显示层和隐含层的意义如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第3张图片

RBM的结构如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第4张图片

对于第i个电影,评分为k的概率,表达式及参数解释如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第5张图片

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第6张图片

边际分布以及能量函数的定义如下,容易看出,没有评分的电影对能量函数没有贡献

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第7张图片

学习时,虽然可以利用马尔可夫链蒙特卡洛方法,但是,该方法计算速度慢,方差也较高

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第8张图片

可以利用对比散度来辅助,该方法基于吉布斯采样,相对mcmc,该方法不仅比较高效,而且方差也不高

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第9张图片

预测评分时,既可以选择具有最大概率的评分,也可以选择概率和评分的乘积期望最大的,后者效果好一些

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第10张图片

不止可以利用二值的隐含层单元,也可以利用高斯型隐含层,表达式和对应的能量函数如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第11张图片

考虑了电影是否被评分,可以得到条件RBM

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第12张图片

条件RBM可以用于时序型数据

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第13张图片

一般的RBM参数较多,减少隐含层单元又会导致学习能力没那么强

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第14张图片

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第15张图片

为了应对大数据量,作者们提出了分解RBM

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第16张图片

数据集描述及分割方式如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第17张图片

模型参数设置如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第18张图片

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第19张图片

几种RBM的收敛速度对比如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第20张图片

SVD及对应表达式如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第21张图片

条件分解RBM跟SVD的效果对比如下

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第22张图片

RBM展开可以得到自编码

ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton)_第23张图片


              我是分割线


您可能感兴趣

SIGIR2019|基于BERT的深度学习模型在信息检索中的应用(已开源)

SIGIR2019|基于注意力机制的新型深度学习模型(采莓树模型BIRD,已开源)

SIGIR2019|深度学习如何更好地用于学习排序(LTR)(已开源)

SIGIR2019|利用DeepSHAP来解释神经检索模型(已开源)

SIGIR2019|胶囊网络来解释你喜欢什么不喜欢什么(已开源)

KDD2018|基于GBM的动态定价回归模型

KDD2018|超越deepfm的CTR预估模型深层兴趣网络DIN(已开源)

RecSys2019|优于DeepFM和XDeepFM的CTR模型FiBiNET

SIGIR2018|选择性GBDT(SelGB)用于排序学习(已开源)

AAAI2018|斯坦福大学提出并开源增强生成式模型

ijcai2017|CTR经典模型DeepFM,FNN,PNN,W&D,LR,FM对比(哈工大诺亚方舟提出CTR模型)

ICML2019|一种基于强化学习的推荐系统(GAN用户模型,佐治亚理工学院联合蚂蚁金服提出且已开源)

ICML2018|GBDT中如何寻找影响较大样本(普林斯顿大学联合Yandex提出并开源)

IJCAI2019|基于对抗变分自编码的协同过滤框架VAEGAN

聊聊CatBoost

聊聊XGBoost CatBoost LightGBM RF GBDT

IJCAI2019|新型特征增广GBDT--AugBoost(已开源)

IJCAI2019|清华大学提出并开源新型梯度提升决策树(梯度提升分段线性回归树)

新型梯度提升决策树GBDT-SPARSE(谷歌微软FaceBook加州大学联合提出)

ICML2019|深度学习鼻祖之一Bengio提出并开源图马尔科夫神经网络

GBDT,LR,深度学习如何联合发力(以推荐系统和游戏为例)

大规模GBDT系统应用场景及效果对比(LightGBM,XgBoost,DimBoost等)

新型在线预测模型DeepGBM(基于GBDT扩展的深度学习框架)

顶会中深度学习用于CTR预估的论文及代码集锦 (3)

ICML 2018 深度学习论文及代码集锦(5)

深度学习用于文本摘要的论文及代码集锦

深度学习用于机器翻译的论文及代码集锦

深度学习用于序列标注中的论文及代码集锦

深度学习在推荐系统中的应用及代码集锦(4)

深度学习在OCR中的应用论文及代码集锦 (2)

你可能感兴趣的:(ICML2007|深度学习用于协同过滤的开篇作之一(出自深度学习鼻祖之一Hinton))