《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)

1 原文

《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)

2 整理(参考搜狐技术产品,相关资料感觉好少。。。)

2.1 摘要

协同过滤作为集体智慧方法的典型代表作,在推荐系统的发展过程中占据着很高的位置,其简单容易理解的特性使其成为了大多企业的首要推荐方法,也带来了很好的推荐效果。但是作为集体智慧,其发挥的场景也往往受限,例如稀疏数据下的协同过滤就往往难以发挥很好的作用;协同过滤往往只采用了ID特征(或者评分特征)对其本身的一些信息特征很少利用;在协同过滤的实现过程中,矩阵分解采用的是dot计算,不符合inequality property,这很大程度上阻碍了其表现。

传统的基于协同过滤的方法将用户对物品的评分作为单一信息源用于训练,生成推荐;但是在数据非常稀疏的情况下,会大大降低推荐的效果。

CTR(Collaborative topic regression,协同主题回归)是一个能将两种不同信息员紧密融合在一起的方法;但是,当辅助信息比较稀疏的时候,CTR训练得到的潜在表示并不是很有效。

因此,本文中采用了一个层次贝叶斯模型:CDL(Collaborative deep learning,协同深度学习),同时利用了内容信息的深度表示学习和评分(反馈)矩阵的协同过滤。

2.2 背景

推荐系统中的现有方法主要有以下三大类:

基于内容的方法(content-based):利用用户画像或者产品介绍进行推荐
基于协同过滤的方法(Collaborative Filtering, CF):利用用户过去的行为或者偏好进行推荐
混合方法:组合基于内容的方法和基于协同过滤(CF)的方法进行推荐

目前,推荐系统主要面临以下问题:

获取用户画像比获取用户行为困难
基于协同过滤(CF)的方法有局限性:
▫ 当评分非常稀疏时,会严重影响预测精度
▫ 新用户或新物品的冷启动问题

因此,近些年混合的方法受到了越来越多的关注。根据评分信息和辅助信息之间是否存在双向的交互,我们可以进一步把混合的方法进行划分:

松耦合方法:将辅助信息处理一遍之后,为协同过滤(CF)模型提供特征;由于信息流是单向的,因此评分信息无法为有用特征的提取提供反馈,对于这种分类,一般得依靠手动、冗长的特征工程流程来提高效果
紧耦合方法:允许双向交互。一方面,评分信息可以影响特征的学习;另一方面,提取的特征可以进一步提高CF模型(例如,基于稀疏评分矩阵的矩阵分解方法)的预测能力。通过使用双向交互,紧耦合方法可以自动从辅助信息中提取特征,并且自然地平衡评分和辅助信息的影响

CTR是一个最近提出的紧耦合方法,它是一个概率图模型,能够无缝地集成一个主题模型LDA(latent Dirichlet allocation,潜在狄利克雷模型)和一个基于模型的CF方法:PMF(probabilistic matrix factorization,概率矩阵分解)。但是,当辅助信息非常稀疏的时候,训练得到的潜在表示经常不够高效。

另一方面,深度学习模型最近在计算机视觉和自然语言处理应用的训练高效表示和实现高效性能方便展示了巨大的潜力。在深度学习模型中,可以使用监督式学习和非监督式学习特征。尽管由于深度学习模型可以自动学习特征,深度学习模型比简单模型更受欢迎;但是在获取和学习物品之间相似度和潜在关系方面,深度学习模型可能稍逊于简单模型(例如CF)。因此,需要通过协同进行深度学习来集成深度学习和CF。
但是,目前只有很少的尝试开发基于CF的深度学习模型。但是基本上的有一些问题:

部分方法实际上属于基于CF模型的方法,因为它们并没有融合基于内容的信息,而这些内容的信息对于精准推荐往往非常重要。
这些模型的深度学习组件都没有对噪音进行建模,因此它们非常不稳定;这些模型实现的性能提升主要是通过松耦合方法,而没有探究内容信息和评分之间的交互

为了解决上述问题,本我们调研了一种新颖的紧耦合推荐方法:CDL(collaborative deep learning,协同深度学习)。

2.3 理论

《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
SDAE是一个前馈神经网络,通过在输出中学习预测干净输入来学习输入数据的训练表示(编码),如图所示。一般说来,中间的隐层被限制为瓶颈(如X2X_2),而输入层是干净输入数据X0X_0的脏数据版本。SDAE解决下面的优化问题:
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
泛化的SDAE
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
协同深度学习
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)
《Collaborative Deep Learning for Recommender Systems》整理以及未理解的部分问题(求解答)

3 问题

1、CDL是训练了两个网络还是一个网络?
2、XcX_c与评分R的关系是什么,有什么联系么?