@TOC
论文名称:Neural Collaborative Filtering
原文地址:Neural
⚡本系列历史文章⚡
【推荐系统论文精读系列】(一)--Amazon.com Recommendations
【推荐系统论文精读系列】(二)--Factorization Machines
【推荐系统论文精读系列】(三)--Matrix Factorization Techniques For Recommender Systems
【推荐系统论文精读系列】(四)--Practical Lessons from Predicting Clicks on Ads at Facebook
【推荐系统论文精读系列】(五)--Neural Collaborative Filtering
【推荐系统论文精读系列】(六)--Field-aware Factorization Machines for CTR Prediction
【推荐系统论文精读系列】(七)--AutoRec Autoencoders Meet Collaborative Filtering
【推荐系统论文精读系列】(八)--Deep Crossing:Web-Scale Modeling without Manually Crafted Combinatorial Features
【推荐系统论文精读系列】(九)--Product-based Neural Networks for User Response Prediction
【推荐系统论文精读系列】(十)--Wide&Deep Learning for Recommender Systems
【推荐系统论文精读系列】(十一)--DeepFM A Factorization-Machine based Neural Network for CTR Prediction
【推荐系统论文精读系列】(十二)--Neural Factorization Machines for Sparse Predictive Analytics
一、摘要
近年来,深度神经网络在语音识别、计算机视觉和自然语言处理方面取得了巨大的成功。然而,深度神经网络在推荐系统上的探索相对较少受到关注。在这项工作中,我们致力于开发基于神经网络的技术来解决推荐中的关键问题——基于隐式反馈的协同过滤。
虽然最近的一些工作已经采用了深度学习来推荐,但他们主要使用它来模拟辅助信息,例如项目的文本描述和音乐的声学特征。在对协同过滤的关键因素——用户和项目特征之间的交互进行建模时,他们仍然求助于矩阵分解,并对用户和项目的潜在特征应用内积。
通过将内积替换为可以从数据中学习任意函数的神经结构,我们提出了一个通用框架NCF,简称基于神经网络的协同过滤。NCF是泛型的,可以在其框架下表达和推广矩阵分解。为了增强非线性NCF建模,我们建议利用多层感知器来学习用户-项目交互功能。在两个真实数据集上进行的大量实验表明,与最先进的方法相比,我们提出的NCF框架有了显著的改进。经验证据表明,使用更深层次的神经网络可以提供更好的推荐性能。
二、介绍
在信息爆炸的时代,推荐系统在缓解信息过载方面发挥着关键作用,已被许多在线服务广泛采用,包括电子商务、在线新闻和社交媒体网站。个性化推荐系统的关键在于根据用户过去的互动(如评分和点击)对项目的偏好进行建模,称为协同过滤。在各种协同过滤技术中,矩阵分解(MF)是最流行的一种,它将用户和项目投影到共享的潜在空间中,使用潜在特征向量来表示用户或项目。此后,用户在项目上的交互被建模为其潜在向量的内积。
通过Netflix大奖的推广,MF已成为基于潜在因素模型的推荐的事实上的方法。许多研究工作致力于增强MF,例如将其与基于邻居的模型集成,将其与项目内容的主题模型相结合,并将其扩展到因子分解机,以便对特征进行一般建模。尽管MF对于协同过滤非常有效,但众所周知,其性能可能会受到交互功能(内部产品)的简单选择的阻碍。例如,对于显式反馈的评级预测任务,众所周知,MF模型的性能可以通过在交互函数中加入用户和项目偏差项来提高。虽然这似乎只是内积运算符的一个微不足道的调整,但它指出了设计更好、专用的交互函数以模拟用户和项目之间的潜在特征交互的积极效果。内积只是线性地结合潜在特征的乘法,可能不足以捕获用户交互数据的复杂结构。
本文探讨了如何使用深层神经网络从数据中学习交互函数,而不是以前的许多工作所做的手工。神经网络已被证明能够逼近任何连续函数,最近发现深度神经网络(DNN)在从计算机视觉、语音识别到文本处理等多个领域都是有效的。然而,与大量关于MF方法的文献相比,采用DNN进行推荐的工作相对较少。尽管最近的一些进展已经将DNN应用于推荐任务并显示出有希望的结果,但它们大多使用DNN对辅助信息进行建模,如项目的文本描述、音乐的音频特征和图像的视觉内容。关于关键协同过滤效果的建模,他们仍然求助于MF,使用内部产品将用户和项目潜在特征结合起来。
这项工作解决了上述研究问题的形式化神经网络建模方法的协同过滤。我们关注隐性反馈,它通过观看视频、购买产品和点击物品等行为间接反映用户的偏好。与显性反馈(即评级和评论)相比,隐性反馈可以自动跟踪,因此内容提供商更容易收集。然而,由于没有观察到用户满意度,而且负面反馈的自然稀缺性,因此利用它更具挑战性。在这篇论文中,我们探讨了如何利用DNN对含噪隐式反馈信号建模的中心主题。
这项工作的主要贡献如下。
- 我们提出了一种神经网络结构来建模用户和项目的潜在特征,并设计了一个基于神经网络的协同过滤通用框架NCF。
- 我们表明,MF可以解释为NCF的一种特化,并利用多层感知器赋予NCF建模高度的非线性。
- 我们在两个真实世界的数据集上进行了大量实验,以证明我们的NCF方法的有效性以及深度学习用于协同过滤的前景。
三、准备知识
3.1 从隐式数据中进行学习
让M和N分别表示用户和项目的数量。我们定义了用户-项目交互矩阵
带有隐式反馈的推荐问题被描述为估算Y中未观察到的条目的分数的问题,该分数用于对条目进行排序。基于模型的方法假设数据可以由基础模型生成(或描述)。
为了估计参数
向前推进一步,我们的NCF框架使用神经网络参数化交互函数f来估计
3.2 矩阵分解
MF将每个用户和项目与潜在特征的实值向量相关联。让
其中K表示潜在空间的维度。如我们所见,MF对用户和项目潜在因素的双向交互进行建模,假设潜在空间的每个维度相互独立,并以相同的权重线性组合。因此,MF可以被视为潜在因素的线性模型。
图1说明了内积函数如何限制MF的表达能力。为了更好地理解该示例,有两种设置需要事先明确说明。首先,由于MF将用户和项目映射到同一潜在空间,两个用户之间的相似性也可以用内积来衡量,或等效地衡量,它们的潜在向量之间的夹角的余弦。第二,不损失一般而言,我们使用Jaccard系数作为MF需要恢复的两个用户的基本事实相似度。
让我们先关注图1A中的前三行(用户)。很容易得到S23(0.66)>S12(0.5)>S13(0.4)。因此,在图1B中可以绘出P1、P2和P3的几何关系,如图1B所示。现在,让我们考虑一个新用户U4,它的输入以图1A中的虚线给出。我们可以有S41(0.6)>S43(0.4)>S42(0.2),这意味着u4与u1最为相似,其次是u3,最后是u2。但是,如果MF模型将p4放置在离p1最近的位置(图1b中用虚线显示了这两个选项),则将导致p4比p3更接近p2,不幸的是,这将导致较大的排名损失。
上面的例子显示了使用简单固定的内积来估计低维潜在空间中复杂的用户-项目交互可能造成的MF限制。我们注意到解决该问题的一种方法是使用大量潜在因子K。但是,这可能会对模型的泛化产生不利影响(例如,过度拟合数据),特别是在稀疏设置中。在这项工作中,我们通过使用数据中的DNN学习交互函数来解决这一限制。
四、神经协同过滤
我们首先介绍了一般的NCF框架,详细说明了如何使用强调隐式数据二进制特性的概率模型来学习NCF。然后,我们证明了MF可以在NCF下表达和推广。为了探索用于协同过滤的DNN,我们提出了一个NCF的实例,使用多层感知器(MLP)最后,我们提出了一个新的神经矩阵分解模型,该模型在NCF框架下集成了MF和MLP,它结合了MF的线性和MLP的非线性的优点来建模用户-项目的潜在结构。
4.1 总体框架
为了对协同过滤进行全面的神经处理,我们采用多层表示法对用户-项目交互yui进行建模,如图2所示,其中一层的输出作为下一层的输入。底部输入层由两个分别描述用户 u 和项目 i 的特征向量;它们可以n可以定制以支持用户和项目的广泛建模,例如上下文感知、基于内容和基于邻居的由于我们使用的是一个简单的二值化特征,所以我们可以使用一个简单的二值化特征来对输入进行二值化用于表示用户和项目的内容功能。
在输入层之上是嵌入层;它是一个完全连接的层,将稀疏表示投影到一个稠密向量。得到的用户(项)嵌入可以看作是用户(项)的潜在向量在潜在因素模型的背景下,用户嵌入和项目嵌入被输入到多层神经结构中,我们称之为神经协同过滤层,以将潜在向量映射到预测分数。神经CF层的每一层都可以定制,以发现用户-项目交互的某些潜在结构最后一个隐藏层X的尺寸决定了模型的能力。最终的输出层是预测分数
我们现在将NCF的预测模型表述为:
4.1.1 学习NCF
为了了解模型参数,现有的逐点方法主要使用平方损失进行回归:
其中Y表示Y中观察到的相互作用集,Y− 表示负实例集,可以是所有(或从)未观察到的交互;
考虑到隐式反馈的一类性质,我们可以将yui的值视为一个标签-1表示项目i与u相关,否则为0。然后,预测分数
这是NCF方法要最小化的目标函数,其优化可以通过执行随机梯度下降(SGD)来完成。细心的读者可能已经意识到,它与二进制交叉熵损失(也称为日志损失)是相同的。通过对NCF进行概率处理,我们将隐式反馈的推荐视为一个二进制分类问题。由于在推荐文献中很少研究ClassificationWare日志损失,我们在这项工作中对其进行分析,并在第4.3节中对消极情况Y进行实证验证−, 我们在每次迭代中从未观察到的交互中均匀地对它们进行采样,并控制采样率w.r.t.观察到的交互数量。虽然非均匀采样策略(例如,项目流行度偏差)可能进一步提高性能,但我们将此探索留作将来的工作。
4.2 广义矩阵分解(GMF)
我们现在展示了如何将MF解释为我们的NCF框架的一个特例。由于MF是最流行的推荐模型,并且已经在文献中进行了广泛的研究,因此能够恢复MF允许NCF模拟一大系列的因子分解模型。
由于对输入层的用户(项)ID进行了一次热编码,得到的嵌入向量可视为用户(项)的潜在向量。假设用户潜在向量
其中表示向量的元素乘积。然后,我们将向量投影到输出层:
其中,a和h分别表示输出层的激活函数和边权重。直观地说,如果我们使用a为自身函数,并将h强制为1的权值向量,我们可以准确地恢复MF模型。
在NCF框架下,MF可以很容易地推广和扩展。例如,如果我们允许在没有统一约束的情况下从数据中学习h,它将导致MF的一个变体,该变体允许潜在维度的不同重要性。如果我们对a使用一个非线性函数,它将MF推广到一个非线性设置,这可能更复杂在这项工作中,我们在NCF下实现了一个广义的MF模型,它使用sigmoid函数
4.3 多层感知机(MLP)
由于NCF采用两条路径对用户和项目进行建模,因此通过将两条路径连接起来来组合这两条路径的功能是很直观的。这种设计已广泛应用于多模式深度学习工作。然而,简单的向量连接不能解释用户和项目潜在特征之间的任何交互,这不足以建模协同过滤效果。为了解决这个问题,我们建议在连接向量上添加隐藏层,使用标准MLP来了解用户和项目潜在特征之间的交互。从这个意义上说,我们可以赋予模型很大的灵活性和非线性,以了解pu和qi之间的相互作用,而不是只使用固定元素的GMF方法。
其中Wx、bx和a分别表示第x层感知器的权重矩阵、偏置向量和激活函数。对于MLP层的激活函数,可以自由选择sigmoid、双曲正切(tanh)和整流器(ReLU)等。我们想分析每个函数:
1)sigmoid函数限制每个神经元处于(0,1)中,这可能会限制模型的性能;众所周知,它会受到饱和的影响,当神经元的输出接近0或1时,神经元就会停止学习。
2) 尽管tanh是一个更好的选择,并已被广泛采用,但它只能在一定程度上缓解sigmoid的问题,因为它可以被视为sigmoid的重新缩放版本 。
3)因此,我们选择ReLU,这在生物学上更合理,并且被证明是非饱和的;此外,它鼓励稀疏激活,非常适合稀疏数据,并使模型不太可能过度拟合。
我们的实证结果表明,ReLU的性能略好于tanh,而tanh又明显优于sigmoid。至于网络结构的设计,一个常见的解决方案是遵循塔式模式,其中底层最宽,每个连续层的神经元数量较少(如图2所示)。前提是,通过在更高层使用少量隐藏单元,他们可以了解数据的更多抽象特征。根据经验,我们采用塔式结构,将每一层的层数减少一半。
4.4 GMF与MLP的融合
到目前为止,我们已经开发了两个NCF-GMF实例,一个是应用线性核对潜在特征交互进行建模,另一个是使用非线性核从数据中学习交互函数的MLP。于是问题出现了:我们如何在国家合作框架下融合转基因食品和MLP,
这样它们就可以相互加强,更好地模拟复杂的用户iterm交互?
一个简单的解决方案是让GMF和MLP共享同一嵌入层,然后组合它们的交互函数的输出。这种方法与著名的神经张量网络(NTN)具有相似的精神。
然而,共享GMF和MLP的嵌入可能会限制融合模型的性能。例如,这意味着GMF和MLP必须使用相同大小的嵌入件;对于两个模型的最佳嵌入大小变化很大的数据集,此解决方案可能无法获得最佳集成。
为了给融合模型提供更多的灵活性,我们允许GMF和MLP学习单独的嵌入,并通过连接它们的最后一个隐藏层来组合这两个模型。图3说明了我们的建议。
其中pGu和pMu分别表示GMF和MLP部件的用户嵌入;以及用于项目嵌入的类似qGi和qMi符号。如前所述,我们使用ReLU作为MLP层的激活函数。该模型结合了MF的线性和DNN的非线性,用于建模用户-项目潜在结构。我们把这个模型称为“NeuMF”,是神经矩阵分解的缩写。模型w.r.t.的导数。每个模型参数都可以通过标准反向传播进行计算,由于空间限制,此处省略了标准反向传播。
4.4.1 预训练
由于NeuMF目标函数的非凸性,基于梯度的优化方法只能找到局部最优解。据报道,初始化对深度学习模型的收敛和性能起着重要作用。由于NeuMF是GMF和MLP的集合,我们建议使用GMF和MLP的预训练模型初始化NeuMF。
我们首先用随机初始化训练GMF和MLP,直到收敛。然后,我们使用它们的模型参数作为NeuMF参数相应部分的初始化。唯一的调整是在输出层上。
其中hGMF和hMLP分别表示预训练GMF和MLP模型的h向量;α是决定两个预训练模型之间权衡的超参数。
为了从头开始训练GMF和MLP,我们采用了自适应矩估计(Adam),它通过对频繁参数执行较小更新和对不频繁参数执行较大更新来调整每个参数的学习率。Adam方法对这两种模型的收敛速度都比普通SGD快,并且减轻了调整学习速度的痛苦。将预先训练好的参数输入NeuMF后,我们使用香草SGD而不是Adam对其进行优化。这是因为Adam需要保存动量信息以正确更新参数。由于我们仅使用预先训练的模型参数初始化NeuMF,并且放弃保存动量信息,因此不适合使用基于动量的方法进一步优化NeuMF。
REFERENCES
[1] I. Bayer, X. He, B. Kanagal, and S. Rendle. A generic coordinate descent framework for learning from implicit feedback. In WWW, 2017.
[2] A. Bordes, N. Usunier, A. Garcia-Duran, J. Weston, and O. Yakhnenko. Translating embeddings for modeling multi-relational data. In NIPS, pages 2787–2795, 2013.
[3] T. Chen, X. He, and M.-Y. Kan. Context-aware image tweet modelling and recommendation. In MM, pages 1018–1027, 2016.
[4] H.-T. Cheng, L. Koc, J. Harmsen, T. Shaked, T. Chandra, H. Aradhye, G. Anderson, G. Corrado, W. Chai, M. Ispir, et al. Wide & deep learning for recommender systems. arXiv preprint arXiv:1606.07792, 2016.
[5] R. Collobert and J. Weston. A unified architecture for natural language processing: Deep neural networks with multitask learning. In ICML, pages 160–167, 2008.
[6] A. M. Elkahky, Y. Song, and X. He. A multi-view deep learning approach for cross domain user modeling in recommendation systems. In WWW, pages 278–288, 2015.
[7] D. Erhan, Y. Bengio, A. Courville, P.-A. Manzagol, P. Vincent, and S. Bengio. Why does unsupervised pre-training help deep learning? Journal of Machine Learning Research, 11:625–660, 2010.
[8] X. Geng, H. Zhang, J. Bian, and T.-S. Chua. Learning image and user features for recommendation in social networks. In ICCV, pages 4274–4282, 2015.
[9] X. Glorot, A. Bordes, and Y. Bengio. Deep sparse rectifier neural networks. In AISTATS, pages 315–323, 2011.
[10] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. In CVPR, 2016.
[11] X. He, T. Chen, M.-Y. Kan, and X. Chen. TriRank: Review-aware explainable recommendation by modeling aspects. In CIKM, pages 1661–1670, 2015.
[12] X. He, M. Gao, M.-Y. Kan, Y. Liu, and K. Sugiyama. Predicting the popularity of web 2.0 items based on user comments. In SIGIR, pages 233–242, 2014.
[13] X. He, M.-Y. Kan, P. Xie, and X. Chen. Comment-based multi-view clustering of web 2.0 items. In WWW, pages 771–782, 2014.
[14] X. He, H. Zhang, M.-Y. Kan, and T.-S. Chua. Fast matrix factorization for online recommendation with implicit feedback. In SIGIR, pages 549–558, 2016.
[15] R. Hong, Z. Hu, L. Liu, M. Wang, S. Yan, and Q. Tian.
Understanding blooming human groups in social networks.
IEEE Transactions on Multimedia, 17(11):1980–1988, 2015.
[16] R. Hong, Y. Yang, M. Wang, and X. S. Hua. Learning
visual semantic relationships for efficient visual retrieval. IEEE Transactions on Big Data, 1(4):152–161, 2015.
[17] K. Hornik, M. Stinchcombe, and H. White. Multilayer feedforward networks are universal approximators. Neural Networks, 2(5):359–366, 1989.
[18] L. Hu, A. Sun, and Y. Liu. Your neighbors affect your ratings: On geographical neighborhood influence to rating prediction. In SIGIR, pages 345–354, 2014.
[19] Y. Hu, Y. Koren, and C. Volinsky. Collaborative filtering for implicit feedback datasets. In ICDM, pages 263–272, 2008.
[20] D. Kingma and J. Ba. Adam: A method for stochastic optimization. In ICLR, pages 1–15, 2014.
[21] Y. Koren. Factorization meets the neighborhood: A multifaceted collaborative filtering model. In KDD, pages 426–434, 2008.
[22] S. Li, J. Kawale, and Y. Fu. Deep collaborative filtering via marginalized denoising auto-encoder. In CIKM, pages 811–820, 2015.
[23] D. Liang, L. Charlin, J. McInerney, and D. M. Blei. Modeling user exposure in recommendation. In WWW, pages 951–961, 2016.
[24] M. Nickel, K. Murphy, V. Tresp, and E. Gabrilovich. A review of relational machine learning for knowledge graphs. Proceedings of the IEEE, 104:11–33, 2016.
[25] X. Ning and G. Karypis. Slim: Sparse linear methods for top-n recommender systems. In ICDM, pages 497–506, 2011.
[26] S. Rendle. Factorization machines. In ICDM, pages 995–1000, 2010.
[27] S. Rendle, C. Freudenthaler, Z. Gantner, and L. Schmidt-Thieme. Bpr: Bayesian personalized ranking from implicit feedback. In UAI, pages 452–461, 2009. [28] S. Rendle, Z. Gantner, C. Freudenthaler, and
L. Schmidt-Thieme. Fast context-aware recommendations with factorization machines. In SIGIR, pages 635–644, 2011.
[29] R. Salakhutdinov and A. Mnih. Probabilistic matrix factorization. In NIPS, pages 1–8, 2008.
[30] R. Salakhutdinov, A. Mnih, and G. Hinton. Restricted boltzmann machines for collaborative filtering. In ICDM, pages 791–798, 2007.
[31] B. Sarwar, G. Karypis, J. Konstan, and J. Riedl. Item-based collaborative filtering recommendation algorithms. In WWW, pages 285–295, 2001.
[32] S. Sedhain, A. K. Menon, S. Sanner, and L. Xie. Autorec: Autoencoders meet collaborative filtering. In WWW, pages 111–112, 2015.
[33] R. Socher, D. Chen, C. D. Manning, and A. Ng. Reasoning with neural tensor networks for knowledge base completion. In NIPS, pages 926–934, 2013.
[34] N. Srivastava and R. R. Salakhutdinov. Multimodal learning with deep boltzmann machines. In NIPS, pages 2222–2230, 2012.
[35] F. Strub and J. Mary. Collaborative filtering with stacked denoising autoencoders and sparse inputs. In NIPS Workshop on Machine Learning for eCommerce, 2015.
[36] T. T. Truyen, D. Q. Phung, and S. Venkatesh. Ordinal boltzmann machines for collaborative filtering. In UAI, pages 548–556, 2009.
[37] A. Van den Oord, S. Dieleman, and B. Schrauwen. Deep content-based music recommendation. In NIPS, pages 2643–2651, 2013.
[38] H. Wang, N. Wang, and D.-Y. Yeung. Collaborative deep learning for recommender systems. In KDD, pages 1235–1244, 2015.
[39] M. Wang, W. Fu, S. Hao, D. Tao, and X. Wu. Scalable semi-supervised learning by efficient anchor graph regularization. IEEE Transactions on Knowledge and Data Engineering, 28(7):1864–1877, 2016.
[40] M. Wang, H. Li, D. Tao, K. Lu, and X. Wu. Multimodal graph-based reranking for web image search. IEEE Transactions on Image Processing, 21(11):4649–4661, 2012.
[41] M. Wang, X. Liu, and X. Wu. Visual classification by l1 hypergraph modeling. IEEE Transactions on Knowledge and Data Engineering, 27(9):2564–2574, 2015.
[42] X. Wang, L. Nie, X. Song, D. Zhang, and T.-S. Chua. Unifying virtual and physical worlds: Learning towards local and global consistency. ACM Transactions on Information Systems, 2017.
[43] X. Wang and Y. Wang. Improving content-based and hybrid music recommendation using deep learning. In MM, pages 627–636, 2014.
[44] Y. Wu, C. DuBois, A. X. Zheng, and M. Ester. Collaborative denoising auto-encoders for top-n recommender systems. In WSDM, pages 153–162, 2016.
[45] F. Zhang, N. J. Yuan, D. Lian, X. Xie, and W.-Y. Ma. Collaborative knowledge base embedding for recommender systems. In KDD, pages 353–362, 2016.
[46] H. Zhang, F. Shen, W. Liu, X. He, H. Luan, and T.-S. Chua. Discrete collaborative filtering. In SIGIR, pages 325–334, 2016.
[47] H. Zhang, Y. Yang, H. Luan, S. Yang, and T.-S. Chua. Start from scratch: Towards automatically identifying, modeling, and naming visual attributes. In MM, pages 187–196, 2014.
[48] Y. Zheng, B. Tang, W. Ding, and H. Zhou. A neural
autoregressive approach to collaborative filtering. In ICML, pages 764–773, 2016.