基于深度学习的多角度综合推荐模型
Multi-view Comprehensive Recommendation Model Based on Deep Learning
摘要│在传统的推荐领域中,因受限于用户和物品交互的稀疏性,人们常用的推荐算法例如协同过滤往往面临着性能不佳和准确性不理想等问题。随着互联网的兴起,数据量呈现出爆发式增长,深度学习技术得到了很好的发展。作为解决这些问题的一种新思路,与深度学习结合的推荐方法开始进入我们的视野。我们对如何使用深度学习的方法对各种辅助信息进行处理来优化推荐系统进行了重点研究。
关键词│推荐系统;协同过滤;深度学习;卷积神经网络
文章编号│ 2096-255X(2018)12—0032—06中图分类号│ TP181 文献标识码│A
Abstract │ In the traditional recommendation field, due to the sparseness of user and item interaction, Commonly used recommendation algorithms such as collaborative filtering often face problems such as poor performance and poor accuracy. With the rise of the Internet, the amount of data has exploded, and deep learning technology has been well developed. As a new way to solve these problems, the recommended method combined with deep learning began to enter our field of vision. We focused on how to use the deep learning method to process various auxiliary information to optimize the recommendation system.
Keywords │ Recommendation system, collaborative filtering, deep learning, convolutional neural network
引言
近些年来,由于大数据、云计算等新技术的快速发展,各种应用和服务层出不穷带来了信息的爆炸式增长,如何从如此海量复杂的数据中提取有用信息成为了目前各行各业关注的重点问题。到目前为止,推荐系统,作为发挥这些数据作用最成熟的方式,得到了学术界和工业界的高度关注。在众多的推荐方法中,协同过滤(CF)通过利用用户和物品的历史交互记录或打分偏好,取得了显着的效果,是目前应用最多的推荐算法。但缺点也是明显的[1]:数据稀疏导致算法表现不理想的问题(一个用户评分过的项目仅占总体的少部分);冷启动时面临的问题(新用户和物品在数据集中没有历史交互或者评分记录)。为了解决这些问题,新出现的混合推荐系统使用物品内容等辅助信息来提升协同过滤的性能,通常可以获得更好的推荐结果。
随着互联网的发展,越来越多类型的数据能够被获取,包括标签、文本、图像等数据类型。这些数据中隐藏着丰富的用户行为和个性化需求等用户画像信息。使用深度学习的方法能够从这些多源异构数据中提取深层特征表示,从而提升协同过滤方法的效果。
在本文中,我们提出了一个新的推荐框架,将协同过滤与辅助信息的不同语义表示相结合,大幅度提升了推荐模型的性能。
1. 概述
本文的内容安排如下:引言部分介绍了我们的模型是为了解决数据稀疏和冷启动时面临的问题而提出的。第一节概述了文章的内容安排,文章的框架。第二节深入介绍了组件的使用。在第三节中,主要阐述了如何有效地将协同过滤与信息特征提取整合到一个模型中。第四节分析了实验结果,第五节对文章结论进行了简要回顾。
通过充分利用三种辅助信息(结构数据,文本数据和视觉数据),我们提出了一个深度学习协作过滤模型。模型主要包括两个部分:1)特征提取;2)协同联合学习。
在特征提取部分,我们分别从结构知识,文本知识和视觉知识中提取物品的三个潜在特征向量表示。这些特征向量表示物品实体在每个域中的潜在表示。对于结构特征部分,我们应用网络嵌入过程来查找结构知识中异构网络的潜在表示。对于文本部分,我们应用卷积神经网络,用于从文本知识中找到潜在的向量进行表示。同时。我们应用一种被称为贝叶斯堆叠卷积自动编码器的无监督深度学习模型来从视觉信息中找到潜在表示。
在协同联合学习步骤中,物品的潜在向量最终表示为来自多源异构数据的三个特征向量以及潜在偏移向量的集合。然后通过优化物品之间的成对排名来学习用户和物品的潜在特征向量。最
后使用协同过滤从这些用户和物品的潜在向量中生成最终推荐。
2.特征向量提取 2.1. 结构化数据
结构化信息,这种信息被称为异构网络,具有多种类型的实体和多种类型的连接。网络结构代表物品实体之间存在的相似性,这对优化推荐结果很有用。
首先,我们使用无向图G =(V,E)来表示这个结构化的知识,其中 是一组代表不同实体的顶点,E是一组指向这些实体之间不同类型关系的边。
Transr[2] 是一种用于异构网络的嵌入方法。与其他在同一空间 Rk 中嵌入实体和关系的方法不同,Transr使用不同的语义空间来表示实体和关系,两个空间由特定关系矩阵桥接。在Transr中,对于网络中的每个三元组( )( 和 vt是两个连接的实体,r是它们的连接类型),实体嵌入到向量vh,vt ∈ Rk中,并且关系嵌入连接r ∈ Rd中。对于每个关系r,我们设置一个投影矩阵Mr ∈ Rk×d,它将实体从实体空间投影到关系空间。
如图1示,实体的投影向量定义为: 图1 该三元组的评分函数相应地定义为:
在这里,我们使用 sigmoid函数来计算这些成对的三元组评分概率。然后将Transr扩展为贝叶斯版本,并提出如下生成过程: 1.对于每一个实体v,v 〜;
2.对于每一个关系r,r 〜 和 Mr 〜。3.每个四元组(vh,r,vt,)∈ S,从概率分布中得出;其中S是满足下列条件的值的四元组集合:是一个正确的三元组,而(vh,r,) 是一个不正确的三元组; 是 sigmoid 逻辑函数。
对于每个物品实体j,我们使用来自贝叶斯 Transr 的嵌入向量 vj来代表其结构化表示。
2.2. 文本数据
这里我们采用的是基于CNN的网络模型。该网络由嵌入层、卷积层、池化层、输出层组成。
嵌入层,将输入文档转换成数字矩阵,然后再作为卷积层的输入。这样一篇文档矩阵 就可以被表示成:
l 代表文档的长度,p代表单词嵌入层的维度, 表示单词 i 嵌入向量。卷积层在文档矩阵上做卷积,文本领域的卷积通常是在一维上做卷积。一个文本卷积后的特征 通过以下公式产生:
其中 *表示卷积操作, 表示偏置,f表示激活函数,这里为了防止梯度消失,常使用relu作为激活函数。这样通过卷积核 卷积出来的特征向量 就可以表示成:
池化层,从卷积层的输出中提取代表特征,并且通过构建一定长度特征向量的池操作来处理可变长度的输入文档。
输出层,将上一层输出的高级特征向量根据特定目的进行转换。在本模型中,是为了得到文档的向量表示,过程如下:
其中是连接矩阵, 是偏置, k是输出的文档向量的维度。
上面的整个计算可以被总结为:
其中 表示文档j的向量表示, 表示文档j输入,W表示卷积网络的权重集合。
2.3. 图形数据
针对图形对象来说,基于卷积层的深度学习架构通常优于其他常见的完全连接架构,因为它们可以在潜在的更高级别特征表示中保留图像的邻域关系和空间局部性。我们采用堆叠卷积自动编码器(SCAE)来处理图像对象。
假设 SCAE 中存在 Lv层,我们使用4维张量 来表示清晰图像的集合,其中第j行是物品实体j 的 RGB颜色空间中的原始像素3维张量 。类似地,我们使用Z0来表示损坏的图像(通过添加高斯噪声随机屏蔽 的一些条目)。接下来,对于每个层l,我们使用 Zl来表示输出,使用Ql来表示权重参数,并且使用cl来表示偏差参数。
卷积层的映射为:
其中 *表示卷积运算符,它可以保留先前输出的本地连接。给定清晰的图像输入 和损坏的输入Z0,在贝叶斯 SCAE中,每层l的生成过程如下:
1.对于权重参数,令Q1 〜;
2.对于偏置参数,令cl 〜;
3.对于图层的输出,
(a)如果第1层是完全连接层:
令Zl〜;
(b)否则:令 Zl 〜。
中间层的嵌入矢量,即 是物品实体j的视觉表示。
3.联合协同过滤
为了将协同过滤与来自辅助信息的特征向量提取结合,我们提出了“联合协同过滤”的方法。
给定用户隐式反馈R,我们考虑学习方法中物品之间的成对排名。在协同过滤中,我们使用潜在特征向量ui 作为用户i 的表示,并使用潜在特征向量ηj 作为物品j的表示。物品潜在特征向量可以重新表示为: 那么成对偏好概率可以给出为:
联合协同过滤模型的生成过程如下: 1.对于结构化、文本和视觉数据的生成过程不再赘述; 2.对于每个实体j,令实体的潜在偏移向量 然后设置实体的潜在特征向量为:
3.对于每个用户i,令其潜在特征向量为
4.对于每个三元组 ,从概率分布
出。
在这里,D是三元组的集合,其中每个三元组(i,j,j')满足 且 (j' 是从用户i不感兴趣的物品中随机抽样出来的)。注意 和 是隐性反馈偏好与结构知识,文本知识和视觉知识之间连接的桥梁。
最大化 u,e,r,m,w,b,q 和 c的后验概率等同于最大化对数似然,如下所示: 中得
为了最大化方程式 (6)中的目标,我们采用随机梯度下降(Sgd)算法。在每次迭代中,对于随机采样的三元组(i,j,j') ∈ D,我们发现子集 满足其中每个四元组包含物品j 或物品j'。然后我们使用相应目标函数的梯度为每个参数执行SGD更新。
根据以下排名标准给出用户i的最终物品推荐:
4. 实验4.1. 数据的介绍
为了证明所提出模型的有效性,我们使用来自不同领域(电影和书籍)的两个数据集进行实验研究。第一个数据集是Movielens-1m,我们仅提取训练集和测试集的正评级(评级为5),删除评分低于3的用户。第二个数据集称为 Intent Books,是从微软的 Bing 搜索引擎和微软的 Satori 知识库得到的。在该数据集中,用户对书籍的兴趣是从点击/查询动作中获取的。
我们还使用 Satori知识库来提取这两个数据集的结构信息,文本信息和视觉信息。首先,我们将每个影片从 Movielens-1m数据集映射成实体。接下来,为了构建结构信息,我们提取出子图,该子图包含项目实体和项目实体相近的实体以及对应关系。
[3]然后,对于文本信息,我们使用哈希的方法 来预处理从电影情节和书籍描述中提取的文本信息。最后,对于视觉信息,我们使用电影实体的海报图像和书本实体的封面图像作为数据集来训练
和测试我们的模型。
4.2.基准模型的选取和介绍
为了评估模型的性能,我们选取了四个基准模型与本文模型进行对比,分别介绍如下:
[4]
LIBFM:LIBFM 是一种最先进的功能分解模型。在本文中,我们使用项目的属性作为LIBFM 的输入。
BPRMF:基于贝叶斯的个性化排名的矩阵分解模型[6],它基于用户的成对偏好,进行单一协同过滤。相比文中的方法,此模型完全忽略结构知识的使用。
BPRMF+TRANSE:该方法结合了 BPRMF和网络嵌入方法Transe[5]。此模型的构建思路和文中提出的模型思路相似,除了使用Transe,它还忽略了异质性实体和关系,与Transr有所不同。
CTR:协作主题回归模型[6],是一种利用文本信息进行推荐的方法,集成了协同过滤和主题建模。
BPRMF+SDAE:与本文模型相比,此方法的区别在于使用了堆叠去噪自动编码器来处理视觉知识。
4.3. 评价指标
精度不是一个合适的反映隐式反馈推荐结果质量的度量。因此,在我们的实验中,我们使用MAP @ K(平均精度)来评估前 K推荐的表现。
对于每个数据集,我们随机选择70%与每个用户相关联的项目构成训练集,使用剩余的项目作为测试集。对于每个评估方案,我们随机选择不重复的五个训练集进行评估,平均表现报告如图2和图3所示。
4.4. 实验结果
通过对比发现,本文提出的模型JCF(协同联合过滤)比几种推荐领域常见的基准模型在MAP@K(平均精度)这个指标上都有一定的提升。在 Movielens-1m 数据集的文本数据部分,效果比较优的CTR(协同主题过滤)方法提升了21%左右。其他的,无论是在 Movielens-1m 数据集还是 Intentbooks 数据集上,JCF模型在三种数据上面的表现均优于基准模型。但是在Intentbooks 数据集上的表现出来的优势不是那么明显。
5. 总结
本文针对传统推荐模型存在的不足,提出了一个使用辅助信息提高推荐模型效果的方法——JCF(联合协同过滤),该方法集成了协同过滤和辅助信息特征提取,通过提取结构、文本和图像等辅助信息的潜在特征向量来提高协同过滤的准确度,在此过程中使用到了多个深度学习模型。最后,我们在两个公开数据集上的大量实验验证了本文JCF模型的有效性,结果表明在多种情况下模型的表现都要优于传统推荐模型。
参考文献│
[1] 黄立威 , 江碧涛 , 吕守业 , 等 . 基于深度学习的推荐系统研究综述 [J]. 计算机学报, 2018.
[2]Lin H, Liu Y, Wang W, et al. Learning Entity and Relation Embeddings for Knowledge Resolution[j]. Procedia Computer Science, 2017, 108:345-354.
[3]Huang P S, He X, Gao J, et al. Learning deep structured semantic models for web search using clickthrough data[j]. 2013:2333-2338.
[4]Rendle S. Factorization Machines with libfm[j]. Acm Transactions on Intelligent Systems & Technology, 2012, 3(3):1-22.
[5]Bordes A, Usunier N, Garcia-duran A, et al. Translating embeddings for modeling multi-relational data[c]//advances in neural information processing systems. 2013: 2787-2795.
[6]Wang C, Blei D M. Collaborative topic modeling for recommending scientific articles[c]//proceedings of the 17th ACM SIGKDD international conference on Knowledge discovery and data mining. ACM, 2011: 448-456.
基金项目│
科技部重点研发专项 (NO.2017YFB0802704); 上海市优秀技术带头人计划 (NO.16XD1424400)
Foundation Item: National Key Research and Development Program of China(no.2017yfb0802704);
Shanghai Technology Research Leader(no.16xd1424400)
作者简介│
陈明毅(1993—),男,硕士,主要研究方向为大数据应用、深度学习;
邱卫东(1973—),男,教授,主要研究方向为密码学、信息安全。