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

[1] Convolutional Matrix Factorization forDocument Context-Aware

Recommendation

Donghyun Kim et al.

RecSys 2016

http://uclab.khu.ac.kr/resources/publication/C_351.pdf

这篇文章提出一种能够利用上下文信息的推荐模型,卷积矩阵分解 (convolutional matrix factorization,ConvMF),这种模型将卷积神经网络融入到概率矩阵分解中。这种做法可以捕捉文档的上下文信息,进而提高打分的预测准确率。

模型图示如下

数据集统计信息如下

参数设置如下

结果如下

各因素的影响如下

下面是参数分析

代码地址

https://github.com/cartopy/ConvMF

数据集地址

http://dm.postech.ac.kr/~cartopy/ConvMF/data/movielens.tar

http://dm.postech.ac.kr/~cartopy/ConvMF/data/aiv.tar

PPT

http://dm.postech.ac.kr/~cartopy/ConvMF/ConvMF_RecSys16_for_public.pdf

[2] A Neural Autoregressive Approach to Collaborative Filtering

Yin Zheng et al.

ICML 2016

https://pdfs.semanticscholar.org/f5e6/3fb54e1e338c246b20aacf1b3d629b8baf3d.pdf

这篇文章提出了CF-NADE结构,即神经自回归结构,可以用于协同过滤。该结构源于基于限制性玻尔兹曼机 (Restricted Boltzmann Machine,RBM)的协同过滤模型和神经自回归分布估计(Neural Autoregressive Distribution Estimator ,NADE)。这篇文章通过不同评分之间参数共享来提升模型效果。CF-NADE的因子分解版本具有更好的扩展性。此外,作者考虑了偏好的有序性,提出有序的损失函数来优化CF-NADE,用以提升模型效果。CF-NADE可以扩展到深层模型,此时会增加一定的计算复杂度。

实验结果如下

下面是各方法效果对比

配置及耗时统计如下

代码地址

https://github.com/Ian09/CF-NADE

[3] Collaborative Recurrent Neural Networks forDynamic Recommender Systems

Young-Jun Ko,Lucas Maystre,Matthias Grossglauser

ACML 2016

http://proceedings.mlr.press/v63/ko101.pdf

这篇文章的思想源于用于协同过滤的隐含因子模型和语言建模,基于循环神经网络提出了有一种协同序列模型。这种模型可以捕捉用户的上下文状态,将其表示为个性化隐含向量,并且将商品表示为一种实值嵌入。

处理序列的算法伪代码如下

协同RNN训练伪代码如下

数据集统计信息如下

算法效果比较如下

代码地址

https://github.com/lca4/collaborative-rnn

[4] Hybrid Recommender System based on Autoencoders

Florian Strub, Romaric Gaudel, Jérémie Mary

the 1st Workshop on Deep Learning for Recommender Systems 2016

https://hal.inria.fr/hal-01336912v2/document

这篇文章的损失函数能够对缺失值自适应,而且可以融入一些辅助信息,比如年龄,性别等。

各算法效果对比如下

各数据集耗时统计及所需资源如下

代码地址

https://github.com/fstrub95/Autoencoders_cf

[5] Content-Aware Collaborative Music Recommendation Using Pre-trained Neural Networks

Dawen Liang, Minshu Zhan, Dan Ellis

ISMIR 2015

http://dawenl.github.io/publications/LiangZE15-ccm.pdf

这篇文章利用语义标注信息训练基于内容的神经网络模型,并将其作为协同过滤模型中的先验知识。

各模型效果对比如下

代码地址

https://github.com/dawenl/content_wmf

[6] TransNets: Learning to Transform for Recommendation

Rose Catherine, William Cohen

RecSys 2017

https://cseweb.ucsd.edu/classes/fa17/cse291-b/reading/p288-catherine.pdf

这篇文章提出的模型为TransNets,这种模型是对DeepCoNN的一种扩展,扩展思路在于加入了一个隐含层来表示目标用户-目标商品对。该文作者还对这一层加入了正则。

这篇论文基于卷积神经网络来处理文本,CNN处理文本的一般结构如下

DeepCoNN的结构如下

TransNets结构如下

训练TransNets的伪代码如下

对输入进行变换以及测试TransNets的伪代码如下

扩展的TransNets子结构如下

数据集统计信息如下

各方法效果对比如下

原始评论与预测评论对比如下

代码地址

https://github.com/rosecatherinek/TransNets

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180912G0AO9700?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券