Kim D, Park C, Oh J, et al. Convolutional matrix factorization for document context-aware recommendation[C]//Proceedings of the 10th ACM Conference on Recommender Systems. ACM, 2016: 233-240.
ABSTRACT
用户到项目评分数据的稀疏性是推荐系统质量恶化的主要因素之一。为了处理稀疏性问题,一些推荐技术考虑辅助信息来提高评分预测精度。特别地,当评分数据稀疏时,基于文档建模的方法通过利用文本数据(例如评论,摘要或概要)来提高准确性。然而,由于词袋模型的固有限制,它们在有效利用文档的上下文信息方面存在困难,只能对文档浅层理解。本文提出了一种新颖的上下文感知推荐模型,将卷积神经网络(CNN)集成到概率矩阵分解(PMF)中的卷积矩阵分解(ConvMF)。ConvMF捕获文档的上下文信息,并进一步提高评分预测精度。我们在三个真实世界的数据集的测试显示,ConvMF显著优于现有先进的推荐模型,即使评分数据极为稀少。我们还展示了ConvMF成功地捕获了文档中单词的微妙上下文差异。我们的实实验和数据集可在http://dm.postech.ac.kr/ConvMF获得。
1. INTRODUCTION
电子商务服务中的用户和项目数量的爆炸式增长增加了用户对项目评分数据的稀疏性。最终,这种稀疏性降低了传统协同过滤技术的评分预测精度。为了提高准确性,一些推荐技术提出了不仅要考虑评分信息,还考虑用户的人口统计信息、社会网络和项目描述文件等的辅助信息。
最近,研究者们已经提出了基于文档建模方法(如LDA主题模型和堆栈去噪自动编码器(SDAE))的方法来利用项目描述文档如评论,摘要或概要。具体来说,Wang等人提出的协作主题回归(CTR),其结合了主题建模(LDA)和协同过滤的概率方法。提出了不同的CTR,将LDA整合到协同过滤中,以不同的集成方法分析项目描述文档。 最近,Wang等人提出将SDAE整合到概率矩阵分解(PMF)中的协同深度学习(CDL),从而在评分预测精度方面产生更准确的潜在模型。
然而,现有的集成模型并不能完全捕获文档信息,因为它们使用的词袋模型忽略诸如周围单词和单词顺序的文档的上下文信息。 例如,假设在文件中给出了以下两个句子:“人们相信这个人”,“人们最终背叛了他的信任”,由于LDA和SDAE认为该文件是一个不可忽略的单词的集合,所以他们无法区分每一个事件 的“信任”。 确切地说,虽然每个“信任”的发生似乎都具有几乎相同的含义,但是这些词之间存在微妙的句法差异 - 一个动词和一个名词。 文档中的这种微妙的差异对于更深入地理解文档也是一个非常重要的因素,并且进一步的这种理解有助于提高评分预测精度。
为了解决上述问题,我们采用卷积神经网络(CNN),它是最先进的机器学习方法,在诸如计算机视觉,自然语言处理(NLP)和信息检索等各个领域表现出了高性能。 CNN通过建模组件有效地捕获图像或文档的局部特征,这些模型组件包括局部感知野,共享权重和下采样。因此,CNN的使用有助于更深入地了解文档信息,并且产生比LDA和SDAE更好的潜在模型,特别是对于由于缺乏评分而诉诸于其描述文档的项目。 此外,CNN能够利用诸如Glove等预先训练的词嵌入模型来更深入地了解项目描述文档。 请注意,LDA和SDAE不能利用预先训练的词嵌入模型,因为它们采用了词袋模型。
然而,现有的CNN不适合推荐任务,因为卷机网络的目标与推荐目标不同。 具体来说,常规CNN主要解决分类任务,即预测单词,短语或文档的标签。 相反,推荐的目标被认为是一个回归任务,旨在准确地近似用户对项目的评分。 因此,现有的CNN不能直接适用于我们的推荐任务。
为了解决这个技术问题,我们提出了一种文档上下文环境设置推荐模型,卷积矩阵因式分解(ConvMF),通过利用卷积神经网络(CNN)捕获项目描述文档的上下文信息,进一步提高了评分预测精度。ConvMF正是将CNN无缝集成到PMF中,而PMF通常用于推荐任务。因此,综合模式遵循推荐目标,最终有效地利用协作信息和上下文信息。因此,即使评分数据非常稀疏,ConvMF也能准确地预测未知的评分。
为了证明ConvMF的有效性,我们对三种不同的现实世界数据集进行ConvMF的评估。我们对评分数据集的各种稀疏性的实验广泛证明,ConvMF显着优于现有的先进的模型。 ConvMF的优越性验证了即使评分数据非常稀疏,ConvMF能够生成有效反映项目描述文档的上下文信息的项目潜在模型。我们还定性证明ConvMF确实在文档中捕捉到一个单词的微妙的语境差异。此外,我们研究预先训练的词嵌入模型是否有助于提高ConvMF的评分预测精度。除了实验代码和数据集。详细的实验结果也可在http://dm.postech.ac.kr/ConvMF获得。
我们的贡献总结如下。
- 我们解决了基于词袋模型方法的局限性,并开发了一种新颖的文档上下文感知推荐模型(ConvMF)。
- 为了利用评分和项目描述文档,我们以概率的角度将CNN无缝集成到PMF中。
- 我们广泛地展示了ConvMF在三个现实世界数据集上与现有的先进模型在定量和定性上结果的优势。
本文的其余部分组织如下。 第2节简要回顾了最具代表性的协同过滤技术和CNN模型。 第3节介绍了对ConvMF的概述,介绍了ConvMF的CNN架构,并介绍了如何优化ConvMF。 第4节通过实验评估ConvMF并讨论评估结果。 第5节总结了我们的贡献,并提供未来的工作。
2. PRELIMINARY
在本节中,我们简要回顾了矩阵分解(MF)(最流行的协同过滤技术)和卷积神经网络(CNN)。
2.1 Matrix Factorization
传统的协同过滤技术被分为两类[5]:基于内存的方法(例如最近邻域)和基于模型的方法(例如潜在因子模型)。 一般来说,基于模型的方法已知可以产生更准确的推荐结果。 因此,在本节中,我们描述了MF,这是最流行的基于模型的方法。
MF的目标是在共享隐空间中寻找用户和项目的潜在模型,共享隐空间中用户项目关系的强度(即用户对项目的评分)由内部产品计算。假设我们有N个用户,M个项目和一个用户项目评级矩阵
其中
2.2 Convolutional Neural Network
卷积神经网络(CNN)是具有以下组件的前馈神经网络的变体:1)用于产生局部特征的卷积层,2)通过仅选择几个典型的局部特征(即,通过激活功能具有最高分数的特征)来表示数据作为更简洁表示的池化(或子采样)层 ,局部特征来自上一层,其通常是卷积层。
虽然CNN最初是为计算机视觉开发的,但是CNN的关键思想已经积极应用于信息检索和NLP,如搜索查询检索,句子建模和分类和其他传统的NLP任务。虽然针对NLP任务需要对CNN架构进行大量修改,但最终都有助于提高各种NLP任务的性能。
然而,CNN尚未被积极应用于推荐系统领域。据我们所知,van den Oord等人首先将CNN应用于音乐推荐,通过声学分析观点利用CNN分析了歌曲,并提出了一种基于声学CNN获得的项目潜在模型来预测评分的模型。然而,他们的CNN模型,专为声信号处理而设计,不适合处理文档。文档和声学信号对周围特征的质量有固有的差异。一定时间的信号固有地类似于其周围的信号,即具有轻微时间差的信号,而文档中某个位置处的一个字与周围的字有很大的语义差异。周围特征之间的这种相似度的差异影响局部特征的质量,最终需要不同的CNN架构。此外,该模型还没有充分反映协同信息。具体来说,项目潜在模型主要由通过CNN进行音频信号分析的结果而不是协同信息决定。因此,总体推荐的性能甚至没有达到加权矩阵分解(WMF),WMF这是处理隐式反馈数据集的常规基于MF的协同过滤技术之一。
3. CONVOLUTIONAL MATRIX FACTORIZATION
在本节中,我们通过三个步骤解释了提出的模型—卷积矩阵因式分解(ConvMF)的细节:1)介绍ConvMF的概率模型,并描述桥接PMF和CNN的关键思想,以便利用评分和项目说明文档。2)我们解释CNN的详细架构,通过分析项目描述文档生成文档潜在模型。3)最后,我们描述如何优化ConvMF的潜在变量。
3.1 Probabilistic Model of ConvMF
图1显示了ConvMF的概率模型的概述,它将CNN集成到PMF中。 假设我们有N个用户和M个项目,并且观察到的评分由
其中
作为用户潜在模型的生成模型,我们将传统的先验,方差为
然而,与常规PMF中项目潜在模型的概率模型不同,我们假设项目潜在模型由三个变量生成:1)CNN中的内部权重W,2)表示项目 j 的文档的 Xj,以及3)ε变量 作为高斯噪声,使我们能够进一步优化评级的项目潜在模型。 因此,最终项目潜在模型通过以下等式获得。
对于W中的每个权重
项目的隐模型的条件分布:
其中X是项目的描述文件集合。使用从CNN模型获得的文档潜向矢量作为高斯分布的平均值,并将该项目的高斯噪声用作高斯分布的方差,作为CNN和PMF之间的桥梁的重要作用,有助于完全分析两种描述 文件和评分。
3.2 CNN Architecture of ConvMF
我们的CNN架构的目标是从项目文档中生成文档潜在向量,用于组合具有ε变量的项目潜在模型。 图2显示了我们的CNN架构,由四层组成; 1)嵌入层,2)卷积层,3)池层,4)输出层。
Embedding Layer
嵌入层将原始文档转换成表示下一个卷积层的文档的密集数字矩阵。 详细地说,关于该文件作为l 个单词的序列,我们通过连接文档中的单词的向量来将文档表示为矩阵。单词向量随机初始化或初始化用训练前的单词嵌入模型,如Glove。 通过优化过程进一步训练单词向量。 然后,文档矩阵
其中l 是文档的长度。p是单词
Convolution Layer
卷积层提取上下文特征。 正如我们在2.2节中讨论的,文档本质上不同于信息处理或计算机视觉的上下文信息。 因此,我们使用[2,11]中的卷积架构来正确分析文档。 上下文特征
其中 * 是卷积运算符,
然而,一个共享权重捕获到一种类型的上下文特征。 因此,我们使用多个共享权重来捕获多种类型的上下文特征,这使得我们能够生成与
Pooling Layer
池化层从卷积层提取代表性的特征,并且还通过构建固定长度特征向量的池操作来处理可变长度的文档。 在卷积层之后,文档被表示为
其中
Output Layer
一般情况下,在输出层,从上一层获得的高级特征应该转换为特定的任务。 因此,我们在用户和项目潜在模型的k维空间上投影
其中
最终,通过上述过程,我们的CNN架构成为将原始文档作为输入的函数,并返回每个文档的潜在向量作为输出:
其中W表示所有权重和偏置变量以防止杂乱,
3.3 Optimization Methodology
为了优化用户潜在模型,项目潜在模型,CNN权重和偏差变量等变量,我们使用最大后验(MAP)估计如下。
由公式5,得到:
其中
我们采用坐标下降,它在固定剩余变量的同时迭代地优化潜变量。 具体来说,同时暂时假设W和V(或U)为常数,那么等式(6)变成了U(或V)的二次函数。然后,通过简单地将优化函数L相对于
其中
然而,
为了优化
总体优化过程(
Time Complexity Analysis
在每个迭代时期,所有用户和项目潜在模型在
4. EXPERIMENT
在本节中,我们评估ConvMF对现实世界数据集的实验性能。 我们广泛的实验结果表明1)当数据集非常稀疏时,ConvMF显着优于其他竞争对手,2)即使数据集变得密集,ConvMF对竞争对手的改进也将进一步增加,3)当数据集非常稀疏时,预训练的词嵌入模型有助于提高ConvMF的性能, 4)性能最好的参数验证ConvMF能很好地缓解数据稀疏性,以及5)ConvMF确实捕捉到微妙的语境差异。
4.1 Experimental Setting
Datasets
为了证明我们的模型在评分预测方面的有效性,我们使用了从MovieLens和Amazon获得的三个真实世界数据集。 这些数据集包括用户对1到5级别的项目的明确评分。亚马逊数据集包含作为项目描述文件的项目评论。 由于MovieLens不包括项目描述文档,因此我们从IMDB获取了相应项目的文档(即绘图摘要)。
类似于[23]和[24],我们对所有数据集的预处理描述文件如下:1)将原始文档的最大长度设置为300,2)删除停止字,3)计算每个单词的tf-idf得分,4) 删除文档频率高于0.5的语料库特定停止词,5)选择顶部8000个不同的单词作为词汇,6)从原始文档中删除所有非词汇单词。 结果,每篇文档的单词数量在MovieLens-1m(ML-1m)上分别为97.09,MovieLens-10m(ML-10m)为92.05,Amazon Instant Video(AIV)为91.50。
我们删除了在每个数据集中没有其描述文档的项目,特别是对于Amazon数据集的情况,我们删除了少于3个评分的用户。 因此,每个数据的统计显示三个数据集具有不同的特征(表1)。准确地说,即使通过预处理删除了几个用户,与其他数据相比,Amazon数据集仍然非常稀疏。
Competitors and Parameter Setting
我们将两个版本的ConvMF与以下基准进行了比较。
- PMF [20]:概率矩阵因式分解是一种标准评分预测模型,协作过滤过程仅使用用户评分。
- CTR [23]:协作主题回归是一种最先进的推荐模型,它结合了协作过滤(PMF)和主题建模(LDA)来使用评分和文档。
- CDL [24]:协同深度学习是另一种最先进的推荐模式,通过使用SDAE分析文档来提高评分预测精度。
- ConvMF:卷积矩阵因式分解是我们提出的模型。
- ConvMF +:卷积矩阵因子分解与预先训练的词嵌入模型是我们提出的模型的另一个版本,我们使用Glove [18]预先训练的词嵌入模型。
我们将U和V的隐特征维度的大小设置为50(如[24]),并且从0到1随机地初始化U和V。表2显示了每个模型通过网格搜索找到的最优的通用参数(
Implementation Detail
我们使用NVIDIA Geforce TitanX GPU的Python和Keras 库实现ConvMF。为了训练CNN的权重,我们使用了基于批量批量的RMSprop,每个小批量由128个训练项目组成。对于详细的CNN架构,我们使用以下设置:1)我们将文档的最大长度设置为300. 2-1)ConvMF:我们初始化了尺寸为200的随机的字隐向量。这些字隐向量将被训练 通过优化过程。 2-2)ConvMF +:我们通过尺寸为200的预训练词嵌入模型初始化了潜在向量。通过优化过程将训练这些字隐向量。 3)在卷积层中,我们使用各种窗口大小(3,4和5)来共享权重来考虑周围词的不同长度,并且我们使用每个窗口大小的100个共享权重。 4)代替与CNN权重相关的L2正规化,我们使用dropout并设置dropout率为0.2以防止CNN过度拟合。
Evaluation Protocol
为了评估每个模型在真实世界数据集中的整体性能,我们将每个数据集随机分为训练集(80%),验证集(10%)和测试集(10%)。 训练集至少包含每个用户和项目的一个评分,以便PMF处理所有用户和项目。 作为评估指标,我们使用均方根误差(RMSE),这与常规评分预测模型的目标函数直接相关。
我们展示了每个模型的测试错误率,使用early-stopping时在200次迭代中达到了最小的验证错误。对于我们的结果的可靠性,我们从数据拆分过程重复了5次评估过程,并报告了平均测试误差。
4.2 Experimental Results
1) Quantitative Results on MovieLens and Amazon Datasets
表3显示了ConvMF,ConvMF +和三个竞争对手的总体评分预测误差。 请注意,“改进”表示“ConvMF”相对于最佳竞争对手的相对改善。 与三个模型相比,ConvMF和ConvMF +在所有数据集上都有显着的改进。
对于相对密集数据集的MovieLens数据集,ConvMF比最佳竞争对手CDL上的提升值在ML-1m数据集上为3.92%,ML-10m数据集为2.79%。 我们还观察到,PMF与两个竞争对手之间的性能差异在ML-1m数据集上是微不足道的。 这意味着给定足够的评分来生成用户和项目潜在模型,不能捕获上下文信息的文档分析方法无法产生更准确的潜在模型。 然而,ConvMF和PMF之间的显着性能差距表明,即使给出足够的评级,对文档的深入了解也可以更准确地调整潜在模型。
对于亚马逊数据集,如图3和图4所示,这是一个非常稀疏和倾斜的数据集,ConvMF在最佳竞争对手CDL上的改进是16.60%。 与相对密集和平衡的MovieLens数据集的改进相比,这种改进更加显着,这表明ConvMF即使使用稀疏和偏斜的数据也可以有效地分析文档来构建精确的项目潜在模型。 请注意,尽管CTR使用了项目文档,CTR的RMSE仍高于PMF。 这意味着在这种稀疏和偏斜的数据集中,由LDA部分CTR和由PMF部分CTR构建的用户潜在模型构建的项目潜在模型很可能不在同一潜在空间中。
2) Quantitative Results Over Various Sparseness on ML-1m
我们通过从ML-1m数据集中随机抽样,生成不同稀疏度的七个附加数据集。如表4所示,ConvMF在所有稀疏范围内显着优于三个竞争对手。具体来说,我们观察到,当数据密度从0.93%上升到3.71%时,ConvMF在最佳竞争对手(CDL)上的改善从2.98%一直提高到3.92%。这意味着ConvMF通过在每个项目的评分数量均匀地增加时利用评分来产生更准确的潜在模型 - 评分数据变得密集,而评分数据的偏度几乎一致,图3和图4支持这一结论。为了更加精确,ML-1m(稀疏)和ML-1m(密集)数据集,其训练集由整个数据集的20%到80%分别与项目几乎相同,前者在物品上比后者有相对较少的评分数。 ConvMF的性能随着数据集密度的增加而不断增加,这表明ConvMF的CNN被良好地集成到PMF中以推荐任务。
3) Impact of Pre-trainedWord Embedding Model
与CTR和CDL不同,ConvMF能够利用使用预先训练的词嵌入模型,如Glove [18]。 因此,我们通过使用Glove的预先训练的词嵌入模型初始化ConvMF的CNN的嵌入层来调查预训练的词嵌入模型对我们的推荐任务的影响。
表3显示了ConvMF +与ConvMF在三个数据集上的边际变化:ML-1m,ML-10m和AIV数据集分别为-0.22%,0.35%和0.51%。 请注意,数据集的稀疏度依次为ML-1m,ML-10m和AIV。 尽管有微小的变化,我们观察到一致的趋势,随着评分数据变得越来越差,预先训练的词嵌入模型有助于提高ConvMF的性能。 这是因为预先训练的词嵌入模型的语义和句法信息补充了平分的不足。 我们还观察到,给定足够数量的评分来训练潜在模型,预先训练的词嵌入模型使ConvMF的性能恶化。 换句话说,当评分数据相对密集的时候,由于评分直接反映了用户和项目之间的关系,最好是充分利用评分而不是额外使用从外部文档获得的预先训练的词嵌入模型。
此外,我们研究了在不同的
4) Parameter Analysis
我们研究了三个参数对ConvMF的性能影响:
图5显示了根据Amazon数据集上不同
图7显示了
5) Qualitative Evaluation
ConvMF的性能受到由共享权重
具体来说,作为案例研究,我们从ML-10m数据集训练的模型中选择
这种比较意味着ConvMF区分了“信任”一词的微妙语境差异。因此,我们得出结论,ConvMF捕获文档中单词的上下文意义,甚至可以通过不同的共享权重来区分相同单词的微妙上下文差异。
5. CONCLUSION AND FUTURE WORK
在本文中,我们讨论了在描述文档中考虑周边词和单词的语境信息提供了对描述文件的更深入的了解,并且我们开发了一种新颖的文档上下文感知推荐模型ConvMF,将CNN无缝集成到PMF中,以便在评分预测的描述文档中捕获上下文信息。广泛的结果表明,ConvMF显着优于最先进的竞争对手,这意味着ConvMF很好地处理了上下文信息的稀疏问题。此外,由于ConvMF基于MF的推荐模型的PMF,因此ConvMF能够扩展到组合其他仅基于考虑评分的基于MF的推荐模型,例如SVD ++ [12]。
作为下一个研究方向,由于众所周知,深度神经网络的无监督预训练对性能有很大的影响,我们尝试开发用于描述文档的卷积自动编码器。通过无监督的方式,它使得我们不仅可以预先训练嵌入层的权重变量,还可以预测ConvMF的CNN部分的所有剩余权重变量。我们期望自动编码器的无监督预训练显着提高了推荐的性能评级数据极其稀少。
6. ACKNOWLEDGMENTS
This research was supported by Next-Generation Information Computing Development Program through the National Research Foundation of Korea(NRF) funded by the Ministry of Education, Science and Technology (No. 2012M3C4A7033344) and the ICT R&D program of MSIP/IITP [B0101-15-0307, Basic Software Research in Human-level Lifelong Machine Learning (Machine Learning Center)] and the Industrial Core Technology Development Program (10049079, Development of Mining core technology exploiting personal big data) funded by the Ministry of Trade, Industry
and Energy (MOTIE, Korea)