Batmaz Z , Yurekli A , Bilge A , et al. A review on deep learning for recommender systems: challenges and remedies[J]. Artificial Intelligence Review, 2018:1-37.
本文分析了在推荐系统中使用的深度学习模型、针对推荐系统挑战的补救措施、对推荐领域的认识和流行程度以及有目的性的特性四个维度内已有的研究
贡献
- 对基于深度学习的推荐系统进行了系统分类和详细分析
- 关注推荐系统面临的挑战,并根据建议的补救措施对现有文献进行分类
- 对现有基于深度学习的推荐领域进行了调查
- 讨论了最新的研究成果,并找出不足,提供见解
CF算法遵循的两种主要的方法:
混合推荐系统的各种
系统的伸缩性:随着系统中用户和/或项目数量的增长,许多算法往往会放慢速度或需要更多的计算资源。因此,可伸缩性变成了一个需要有效管理的重大挑战
1. 受限玻尔兹曼机
在推荐系统中使用RBMs可以对项目或用户之间的成对相关性进行建模。可将用户-用户和项目-项目关联结合起来(Georgiev K, Nakov P (2013) A non-iid framework for collaborative filtering with restricted Boltzmann
machines. ),方法是生成一个混合模型,其中隐藏层连接到两个可见层(一个用于项目,一个用于用户)
2. 深层信念网络(DBN)
DBNs主要用于提取特征和分类任务,尤其是文本和音频数据
在推荐领域的应用:
- 从音频内容中提取隐藏的和有用的特征,用于基于内容和混合的音乐推荐。
- 文本数据的推荐系统,用于分析用户偏好,其中词打的语义表示是由DBNs提供的。
3. Autoencoders——自编码器一种前馈神经网络
自编码器用于降维和提取更多的潜在特征,在推荐系统中的用途,如:特征提取、降维和生成预测。特别是用于处理稀疏性和可伸缩性问题
DAEs在推荐系统中用于从损坏的数据中预测缺失值
SDAEs在推荐系统中用户找到一种更密集的输入矩阵形式
这两种方法还允许来自多个数据源的数据,将辅助信息集成到推荐系统中。
相关论文:
(1)Wang H, Shi X, Yeung DY (2015a) Relational stacked denoising autoencoder for tag recommendation.
(2)Li S, Kawale J, Fu Y (2015) Deep collaborative filtering via marginalized denoising auto-encoder.
(3)Strub F, Gaudel R, Mary J (2016) Hybrid recommender system based on autoencoders
(4)Ying H, Chen L, Xiong Y, Wu J (2016) Collaborative deep ranking: a hybrid pair-wise recommendation algorithm with implicit feedback.
(5)Wei J, He J, Chen K, Zhou Y, Tang Z (2017) Collaborative filtering and deep learning based recommendation system for cold start items.
4. 递归神经网络(RNN)
与传统的基于最近邻和矩阵因子分解的方法相比,RNNs对推荐覆盖率和短期预测有较好的结果,主要是由于RNNs对用户品味的演化,以及用户与物品潜在特征的共同演化。
相关论文:
(1)利用RNNs表示用户行为的时间、上下文方面,将这些表示与用户偏好的潜在因素结合起来,从而提高更准确的推荐Ko YJ, Maystre L, Grossglauser M (2016) Collaborative recurrent neural networks for dynamic recommender systems.
(2)用于非线性表示用户和物品之间的潜在特征之间的影响,以及它们随时间的共同演化Dai H, Wang Y, Trivedi R, Song L (2017) Deep coevolutionary network: embedding user and item features for recommendation
5. 卷积神经网络(CNN)
CNNs在推荐系统应用是提取文本信息的语义,特别是用于上下文感知的推荐系统。
CNNs主要用于从数据中提取潜在因素和特征,尤其从图像和文本中提取,已达到推荐的目的。
相关论文:Wu H, Zhang Z, Yue K, Zhang B, Zhu R (2017b) Content embedding regularized matrix factorization for recommender systems.
深度学习在推荐领域有利于从多个来源分析数据,发现隐藏的特征。可为推荐系统(如伸缩性和稀疏性等)的挑战提供解决方案。
还可以利用深度学习从不同的数据源生成推荐、降维、特征提取等,将其集中于推荐系统中。
基于CF推荐系统克服稀疏性问题的方案:
- 利用深度学习技术将高维稀疏用户项矩阵转化为低维密集集来解决冷启动问题。
相关论文:
(1)Shu J, Shen X, Liu H, Yi B, Zhang Z (2018) A content-based recommendation algorithm for learning resources.一种基于内容的学习资源推荐算法
(2)Yang C, Bai L, Zhang C, Yuan Q, Han J (2017) Bridging collaborative filtering and semi-supervised learning: a neural approach for poi recommendation. 桥接协同过滤与半监督学习:一种用于POI推荐的神经网络方法
(3)Unger M, Bar A, Shapira B, Rokach L (2016) Towards latent context-aware recommendation systems. 利用自动编码器来处理上下文感知系统中由于集成了高上下文特征而导致的稀疏性,作者从带有自动编码器的传感器中提取的上下文特征的低维潜在表示。
- 利用深度学习技术,基于偏好矩阵和边信息提取用户和项目的高层表示,然后结合矩阵分解来处理稀疏性和冷启动问题。
相关论文:
(1)从内容信息中提取的timeSVD++和特征与SDAEs相结合,处理冷启动和稀疏性问题。Wei J, He J, Chen K, Zhou Y, Tang Z (2017) Collaborative filtering and deep learning based recommendation system for cold start items. 基于协同过滤和深度学习的冷启动项目推荐系统
(2)利用潜在因子模型将CNNs提取的潜在因子整合到矩阵因子分解中来处理稀疏性问题。Shen X, Yi B, Zhang Z, Shu J, Liu H (2016) Automatic recommendation technology for learning resources with convolutional neural network.
- 将内容信息直接集成到推荐流程中,解决一些研究中存在的稀疏性和冷启动问题。
相关论文:
(1) Strub F, Gaudel R, Mary J (2016) Hybrid recommender system based on autoencoders.
(2)利用深度神经网络从用户的隐式反馈和条目的文本内容信息中学习条目表示,但是没考虑文本的上下文和顺序。Ebesu T, Fang Y (2017) Neural semantic personalized ranking for item cold-start recommendation.
可以看出,稀疏性和冷启动问题主要是利用特征工程中的深度学习技术,将异构数据源中提取的特征集成到推荐过程中来处理的。在各种深度学习技术中,自动编码器、CNNs和DBNs是最常用的深度学习技术。
利用深度学习 技术提取高维用户偏好和物品评级的低维潜在因素
相关论文:
建立多试图深度神经网络,将高位特征映射到低维特征,处理可扩展性问题。Elkahky AM, Song Y, He X (2015) A multi-view deep learning approach for cross domain user modeling in recommendation systems.
修改深度学习模型的某些部分以提高可扩展性是推荐系统的首选方法。
提出了用户和物品两方面的神经协自回归模型,作者开发了随机优化算法来扩大自回归模型的学习过程。Du C, Li C, Zheng Y, Zhu J, Liu C, Zhou H, Zhang B (2016) Collaborative filtering with user-item coautoregressive models.
推荐系统的主要领域,主要是由于在电影推荐领域具有很多偏好数据集公开,并且这些数据集非常适合CF任务。
相关论文:
- 将自动编码器引入CF任务,并在MovieLens数据集上评估模型。Ouyang Y, Liu W, Rong W, Xiong Z (2014) Autoencoder-based collaborative filtering. 和 Sedhain S, Menon AK, Sanner S, Xie L (2015) Autorec: autoencoders meet collaborative filtering.
- 将辅助信息与SDAEs集成,同样使用了MovieLens数据集进行了评估。Wang H, Shi X, Yeung DY (2015a) Relational stacked denoising autoencoder for tag recommendation.
- 自回归模型使用在电影推荐领域Zheng Y, Tang B, Ding W, Zhou H (2016b) A neural autoregressive approach to collaborative filtering. 和Du C, Li C, Zheng Y, Zhu J, Liu C, Zhou H, Zhang B (2016) Collaborative filtering with user-item co-autoregressive models. arxiv:1612.07146
图书推荐领域与电影推荐领域有着密切的关系,因为两者的最终产品都具有相似的消费周期和内容特征。
相关论文:
- 提出了一种在电子学习环境下为学生提供个性化书籍推荐的方法Shen X, Yi B, Zhang Z, Shu J, Liu H (2016) Automatic recommendation technology for learning resources with
convolutional neural network.- 改进电子学习系统的建议Shu J, Shen X, Liu H, Yi B, Zhang Z (2018) A content-based recommendation algorithm for learning resources
- 协同知识库嵌入推荐系统。Zhang F, Yuan NJ, Lian D, Xie X, Ma WY (2016a) Collaborative knowledge base embedding for recommender systems.
社交网络平台允许用户与朋友保持联系,并结识志同道合的新朋友。根据社交网络的定义,很容易推断出推荐在社交网络服务中扮演着重要的角色。用户配置文件、朋友、关注者、喜欢、评论和标记构成了这个领域中的推荐术语。
相关论文:
探究了兴趣点推荐中的上下文因素Unger M, Bar A, Shapira B, Rokach L (2016) Towards latent context-aware recommendation systems. 和Yang C, Bai L, Zhang C, Yuan Q, Han J (2017) Bridging collaborative filtering and semi-supervised learning: a neural approach for poi recommendation.
除了以上领域,还有许多关于与医疗保健、住宿、广告、软件和社会保障的研究,这些将深度学习应用得到推荐系统领域中。
(最近时间内重点研究技术)
主要是研究用户的偏好随着时间的演变,以提供更合适的推荐,动态推荐系统处理用户偏好的这种时间变化。
通过使用RNN来考虑用户偏好随时间的变化,相关论文:
(1)一种表示推荐系统中用户上下文状态的协同序列模型Ko YJ, Maystre L, Grossglauser M (2016) Collaborative recurrent neural networks for dynamic recommender systems.
(2)利用LSTTMs处理用户兴趣的变化,将CF解释为序列预测问题Devooght R, Bersini H (2017) Long and short-term recommendations with recurrent neural networks.
(3)利用双向LSTMs区分用户的静态和动态兴趣。Kumar V, Khattar D, Gupta S, Gupta M, Varma V (2017) Deep neural architecture for news recommendation.
除却RNN以外的方法:利用SDAEs提取项目特征,并将这些特征与timeSVD++算法结合,环节动态推荐系统的稀疏性问题Wei J, He J, Chen K, Zhou Y, Tang Z (2017) Collaborative filtering and deep learning based recommendation system for cold start items
推荐系统将时间、位置和社会地位等上下文信息集成到推荐过程中,来提高推荐的质量。(比如,从事的具体工作,目标领域,工作状态,社会地位)
相关论文:
- 利用双CNNs对用户和条目两方面的文本信息进行建模,将单词顺序和周围的单词作为上下文,以更准确地表示用户和条目。Wu H, Zhang Z, Yue K, Zhang B, Zhu R (2017b) Content embedding regularized matrix factorization for recommender systems.
- 利用双重本地和全局关注层地CNNs从聚合的用户和 项目评审文本中提取捕获上下文的复杂特征,由两个独立的CNN表示复杂的特征Seo S, Huang J, Yang H, Liu Y (2017a) Interpretable convolutional neural networks with dual local and global attention for review rating prediction.
- 利用DBNs更准确地表示来自异构数据源地POIs,用于空间感知地POI建议。Yin H, Wang W, Wang H, Chen L, Zhou X (2017) Spatial-aware hierarchical collaborative deep learning for poi recommendation.
- 利用梯度分布的人工神经网络Paradarami TK, Bastian ND, Wightman JL (2017) A hybrid recommender system using artificial neural networks.
综上:基于深度学习的方法用于上下文感知地推荐系统的两个目的:
标签推荐系统,可以环节稀疏性问题,帮助分析用户发现用户和项目的隐藏表示。
相关论文:
在user-tag和item-tag矩阵上用两种不同的自动编码器表示用户和条目深层语义模型Xu Z, Lukasiewicz T, Chen C, Miao Y, Meng X (2017b) Tag-aware personalized recommendation using a hybrid deep model.
基于绘画的推荐系统依赖于当前会话中用户最近的行为,有助于处理冷启动问题。
RNNs用于推荐系统中,用于为用户估计会话中的下一个事件。
相关论文:
- 利用基于GRU的RNN预测会话中的下一个事件。Hidasi B, Karatzoglou A, Baltrunas L, Tikk D (2016a) Session-based recommendations with recurrent neural networks
- 将过去的会话信息整合到当前会话中Quadrana M, Karatzoglou A, Hidasi B, Cremonesi P (2017) Personalizing session-based recommendations with hierarchical recurrent neural networks.