毛建新 杨艳丽 肖鹏 聂岩磊 孙贞 王爱东 范亚国
摘要:目前基于电商的推荐算法的缺陷在于预测结果难以解释,用户节点和商品节点的信息没有得到充分利用。事实上,用户和商品具有的属性信息并不是孤立存在的,我们考虑将其视为知识图谱节点,融合图谱信息,提出了一种融合了注意力机制的的图卷积神经网络推荐算法。首先构建包含商品和属性的大规模电商领域知识图谱,对数据进行预处理,在这个基础上采样商品邻域节点,采取注意力机制的卷积算法,将重要的属性信息融合到商品向量中去,并使用采取了负采样策略的交叉熵损失函数。相比传统的推荐算法,图卷积的感知域能有效建模商品的高维距离,提取图谱节点的邻域信息并获取给定节点的表示,利用好图谱上的关联信息能捕捉到潜在的用户爱好,为预测结果提供合理的解释。我们的模型在真实的推荐数据集上与最优的基准模型进行对比实验,实验结果证明了其有效性和合理性。
关键词:电商知识图谱;图卷积网络;推荐系统;可解释性
引言
海量商品数据的推荐在电商系统中是一项复杂的任务,商品数据的积累使得信息的筛选变得十分困难,用户难以在短时间里从庞大的商品库中找到最适合的商品,而个性化推荐算法的运用就是为了解决这个问题。推荐算法能从用户行为和商品数据中挖掘到有用的信息,帮助用户更精准地找到自己需要的商品。推荐算法还能学习记录到用户的历史行为,作为推荐数据的补充。
目前在电商推荐系统中,协同过滤是一种经典的技术,其思想可以理解为相似的用户往往青睐同一种类型的商品,具体而言是将用户和商品以id为基础进行向量化,再通过用户的行为进行相关相似度的计算,这能较大地提升预测的准确性。然而,基于协同过滤的算法不能很好地解决推荐算法的冷启动和用户商品交互的稀疏性问题,为了解决这些问题,人们提出了协同过滤的改进算法,采用了新的思路。基于这一点,知识图谱的推荐系统]有了很大的发展,Zhang等人 提出了CKE框架,試图使用多模态向量嵌入模型学习包括交互和物品信息的编码,充分融合物品的多个属性特征,来提高算法的准确性,缺点是没有对算法的可解释性和冷启动做出贡献,Wang等人提出了RippleNet模型,把用户视为信息扩展的中心,用户对商品的评分可以被看作是图谱中的一条路径,把实体和商品节点的信息作为知识信息加入,向外层扩展并计算相似度,预测的时候融合各层分数得到最终结果,但缺点是系统的冷启动问题仍不能得到有效解决。
基于知识图谱的推荐算法需要有效建模来自知识图谱的高维结构信息和语义信息,图神经网络是一种将现有神经网络应用到图数据处理的方法,能够有效地建模结构化数据,其中图卷积网络(graph convolutional networks)算法能在非欧几何的空间上进行卷积操作,可以聚合邻域节点的信息来更新给定实体的表示,这样的优势使得它能够用来有效提取图空间的特征,节点邻域蕴含有价值的信息,但同时具有很多噪声节点,而注意力机制能够对节点的重要性进行加权,因此,本文提出在知识图谱上应用一种基于图卷积网络和注意力机制的方法优化推荐策略,我们采取了固定大小邻域作为卷积感知域的采样方式,并使用三种不同的聚合策略。该算法的主要工作如下:
1、以有向图的方式构建了推荐商品知识图谱,建模了用户商品节点和属性的关系
2、提出在卷积感知域中融合注意力机制的推荐算法KGACN(knowledge graph based graph attention and convolutional network),将用户商品交互信息和商品属性进行融合,充分利用节点邻域的信息,提高了预测的性能。
3、在真实数据集上进行了对比实验,根据F1,AUC等指标以及可解释性分析,证明了该算法的有效性。
1相关工作
1.1知识图谱
知识图谱最早在2012被谷歌提出,最早被应用于提升搜索引擎性能,,通过引入知识信息提高用户搜索的质量。知识图谱的发展基于人们的一个认识,即可以使用图来表示数据,也可以使用图的方式来强化数据应用,其在工业界的发展,逐渐引起了学术界的重视。在这之前的人们一直在探索有效的数据驱动和应用方法,让机器能直接理解使用数据。而知识图谱的本质作为一种语义网络,由各种代表实体和概念的节点以及代表不同节点之间关系的边组成,其构建来自于非结构化、结构化的知识,在多个来源构成的大规模知识体系的构建、存储和推理应用场景中都有用武之地。基于图结构存储的数据形式,能形象地来表达真实世界中各种事物的关系。
在电商采购领域中,知识图谱有着大量的真实应用场景,每天都有大量的商品信息的更新,知识图谱提供一种全新的存储和管理模式,同时由于语义网络的连接,能丰富商品自身的信息,加强商品信息的表达。一个完整的知识图谱由各种三元组(h,r,t)构成,三元组的头尾节点h,t代表图谱中的实体,关系r是知识图谱中的边。
1.2图神经网络
传统的深度神经网络如CNN,RNN在解决欧式空间的数据取得了很好的效果,但是针对图结构数据的建模却需要一种新的方法去解决,图G的定义可以用(V,E)来表示,其中V代表其中的图上的节点,E代表节点之间的联系,图神经网络作为一种直接作用到图结构上的神经网络,可以学习到图结构的特征,获取图节点的嵌入表示,应用到下游任务如链接预测和节点分类等任务中可以有效地缓解系统的冷启动问题并提升预测和排序效果。图卷积网络相比复杂的深度学习模型具有更加清晰的信息传导特性。
1.3注意力机制
注意力机制和人认识事物的原理有异曲同工之妙,基本思想是人大脑思考的资源是有限的,大脑增强资源利用率的的方法并不是主动滤过噪声信息,而是会优先将注意力分配到重要的事物之上,来提升信息处理的效率。注意力机制最早被应用于机器翻译领域,后来在自然语言处理领域和其他神经网络模型中得到了广泛应用。我们在具体实践中可以把注意力机制理解一种为对向量进行加权求和的方式。多数都是采取一种统一的运算框架来计算注意力分数。
假设有三个输入向量,分别是值向量Value:∈R和查询向量query ∈R,键向量Key∈R,首先计算查询向量和键向量之间的相似度分数Sim
将分数传入softmax层,计算每一位对应的权重,一方面可以进行归一化,另一方面可以通过softmax的机制增加对重要的信息赋予的权重。
得到权重系数后,对值向量进行加權求和,
注意力机制可以对知识图谱上节点的邻域节点给予不同程度的关注。
2基于图注意力卷积神经网络的知识图谱推荐算法
2.1 问题建模
基于电商场景的知识图谱推荐场景可以如下方式描述:已知拥有大小为M的用户集合U{u,u,u,u,….,u},数量大小为N的商品集合V{v,v,v,v,…,v},用户和商品交互矩阵为Y 其中Y[i][j]=1代表以用户ui选择了商品v,在用户和商品数据基础上,我们构建了以商品知识图谱K,该图谱由一系列三元组构成,商品具有品类、品牌等关系和属性,头尾节点对应商品sku及其各项属性值,关系对应商品的属性,用户交互可表示为(user,choose,item)的形式,同样可以通过三元组的形式添加在知识图谱中。
给定用户商品交互矩阵Y和知识图谱Kg,我们的目标是预测任意用户u是否对一个商品v具有潜在的喜好,假定该商品在之前从未被用户接触过。即本文提出的算法目标是学习一个预测函数:
其中p是用户u喜爱商品v的概率分数,args为模型参数
2.2网络设计
模型由三个模块组成,第一是图的构建,根据原始数据构建用户商品的邻接图,第二是使用融合注意力机制的图卷积网络生成节点的表示,注意力机制能将固定数量的邻域节点特征进行加权融合,挖掘出和用户喜好密切相关的属性信息。
2.3 基于图卷积神经网络的图谱推荐系统
2.3.1、构建图谱
首先构建以商品和商品属性的知识图谱,并检查商品属性是否符合要求。
2.3.2、预处理层
对原始数据进行预处理,包括对商品和用户结点分配标识符,并构造id唯一的字典,同时提取商品中属性,我们将属性同样视作具有独一id的结点,将商品属性和商品,用户属性和用户作为三元组的头尾结点导入到图谱中。在构造好的图谱里,包括用户到商品再到商品属性的路径和结点邻域信息,这些信息将作为后续的模型输入。
2.3.3、嵌入层:
嵌入层的作用在于提炼用户、商品对应的特征,首先要根据构建相关字典获取统计信息,以词袋向量或独热向量等方式构建预编码的高维度向量,接着通过嵌入层转换为低维稠密向量,每个结点的嵌入向量蕴含了该节点的特征,将该嵌入层向量输入到其他隐藏层后,输入模型进行带有注意力机制的卷积操作。
2.3.4、注意力卷积层:
考虑到实际图谱中不同节点的邻域差别很大,以致于引入太多不匹配的节点会对计算过程产生了非常大的噪音和干扰,所以我们采取固定数量的采样策略,对一阶邻域节点进行卷积操作,并通过注意力机制赋予结点不同的权重。
2.3.5、节点聚合函数
在进行归一化之前我们执行三种不同三种聚合策略:
1、节点特征和其邻域特征相加(KGACN-sum)
2、节点特征和其邻域特征进行拼接(KGACN-concat)
3、只保留节点邻域特征(KGACN-neighbor)
2.3.6、损失函数
我们认为正例和负例样本都有价值,因此采取了负采样的训练策略,并添加L2正则项,损失函数定义如下:
其中CE是交叉熵损失函数,u为用户,N为负样本综述,P为一个负样本集合。
3实验分析
3.1数据集与评测分析
我们构建了电商场景下的推荐数据集Caigou-recommend,其中共涉及大约二十万用户和一百余万的商品数据。与之对比的公开数据集MoviesLens是一个广泛使用的电影推荐领域的基准数据集,总共包含超过两千万电影网站的评分,最大的数据集使用约14万用户的数据,并覆盖了27,000部电影。另外一个数据集LastFM是一个在线音乐推荐数据集,包含两千用户和近四千首音乐。
和公开数据集相比,电商推荐数据有一个特点,即具有更低的评价密度,电商推荐场景下用户对商品的交互行为包括浏览点击收藏和购买,对商品的关注仅限于特定商品和类型,因此交互具有稀疏性,评价密度较低。
评价密度可以理解为每个用户评价商品的数量的平均数,假设每个用户对每个商品都进行了评价,那么评价密度将是最高的百分之百。如果没有任何用户对商品进行过评价,则评价密度为0%。
3.2评价指标
我们的实验采用了两个指标。
F1:一种衡量分类任务的指标,指精确率和召回率的调和平均值,
其中精确率p是指在测试集中所有被预测为正类的数据中实际为正类且被预测为正类的数据所占的比例,召回率r是指在测试集中所有实际为正类的数据中实际为正类且被预测为正类的数据所占的比例。在推荐算法评估中,f1值越高,预测效果越好。
AUC:也是一種衡量二分类模型性能的指标,首先要知道接收者特征操作曲线(roc曲线),roc曲线的横坐标是模型的伪阳性率,纵坐标是模型的真阳性率,通过改变模型判定为正例的阈值,我们可以获得一组点的坐标,从而画出roc曲线,由原理可知,roc曲线越接近左上角则模型在较高真阳性率的同时能保持低的伪阳性率,因此,roc曲线方面积即AUC,代表着模型对正负样本的区分能力,auc越高,模型预测效果越好。
3.3对比模型
SVD:一种基于矩阵分解的技术,在推荐系统中主要是在协同过滤的时候利用SVD分解将数据映射到低维空间,在计算相似度的时候能消去噪声,减少计算量。
LIbFM:基本思想来自于经典的SVD矩阵分解,将SVD模型扩展到了多特征的情况,通过特征交叉的方式解决了数据稀疏场景下的组合特征问题,
LibFM-TransE:通过知识嵌入模型TransE加强了知识表示,提升了LibFM的性能。
CKE:在协同过滤的基础上提出一种联合多源知识信息的联合框架,能学习到用户和商品的嵌入向量,额外信息的利用能有效缓解协同过滤中数据的稀疏问题。
RippleNet:也是一种基于图谱的推荐方法,考虑到用户偏好的传播路径,以用户点击过的实体为中心扩散,形成某种在图谱上传播的涟漪,最终呈现出用户重点关注的区域分布,图谱中实体传播到另外一个实体的元路径能反映用户对多跳实体的潜在偏好。
3.4参数设置
我们的超参数设置如下。对于SVD模型,我们的学习率lr=0.5,嵌入向量维度D=16,对于两种LibFM,lr=0.1,D=16,其中transe对应的向量维度d=32,对于CKE模型,嵌入向量维度D=32,学习率lr=0.5,对于Ripplenet模型,D=8,多跳路径长度H=2,学习率lr=0..01,其他超参数和原始模型代码保持一致。对于KGACN 模型,D=16,邻域采样大小K=4,学习率lr=0.01。
3.5实验结果与分析
3.5.1不同模型对比效果
根据实验结果我们注意到,基于图谱的SVD和LibFM模型虽然只是基础模型,但是表现要比同等的CKE模型取得更好的效果,这意味着CKE模型并不能充分利用到知识图谱的信息。
LibFM+TransE模型比LibFM表现更好,这证明知识图谱信息的引入,使得模型可以在图谱上做表示训练,将有助于推荐性能的提升。
和其他基本模型相比Ripplenet表现有较大提升,该模型同样利用到了图谱中的多跳邻域结构,因此能够有效建模对推荐算法来说很重要的邻接距离信息。
KGACN模型的表现超过前面的对比模型,这是因为模型不仅应用了邻域信息,同时考虑到邻域信息提取的影响,对固定数量的商品邻域结点进行采样减少了模型计算的复杂度和噪声干扰,同时注意力机制也更有益于捕获对用户来说重要的偏好。此外,在三种聚合方式中,采取拼接的办法聚合邻域信息具有最好的效果。
3.5.2邻域采样大小对比
我们发现在KGACN模型在K=8的时候表现最好,这是因为太小的采样面积使得模型不能学习到充分的邻域信息,而太大的采样面积会引入太多噪声,影响模型效果
3.5.3 嵌入向量维度大小对比
我们也针对不同的嵌入层维度做了对比测试,实验发现在D=32的时候模型的表现最好,因为一般来说嵌入层向量维度大小代表着模型将能学习到的信息深度,越大自然能学习到关于商品和用户的越多信息,然而太大的嵌入层会使得模型过拟合。
3.5.4可解释性分析
基于知识图谱的推荐系统弥补了协同过滤方法的不足,通过引入知识内容丰富了模型的信息,知识图谱中从用户节点到商品节点的元路径提高了模型的可解释性。
4总结:
本文提出了基于知识图谱的注意力卷积图神经网络算法KGACN。卷积图神经网络能够在知识图谱上融合节点邻域的信息,学习到更佳的实体表示,而注意力机制能分辨不同节点所体现出来的权重,赋予模型过滤不重要信息的能力。此外,知识图谱的节点之间具有大量的联系,在建立了商品到商品,商品到属性的关系之后,有助于提升推荐算法的呈现给用户的结果的多样性。
本文主要以商品端为中心来提升推荐算法的效果,后续将考虑从用户端信息入手,同时研究更有效的知识图谱信息融合算法,以更进一步地挖掘出框架的潜能。
参考文献
[1]Jin Huang,Wayne Xin Zhao,Hongjian Dou,Ji-Rong Wen,and Edward Y Chang.2018. Improving Sequential Recommendation with Knowledge-Enhanced Memory Networks. In the 41st International ACM SIGIR Conference on Research &
[2]Development in Information Retrieval. ACM,505–514.Thomas N Kipf and Max Welling. 2017. Semi-supervised classification with graph convolutional networks. In the 5th International Conference on LearningRepresentations.
[3]Hongwei Wang,Jia Wang,Miao Zhao,Jiannong Cao,and Minyi Guo. 2017. Joint Topic-Semantic-aware Social Recommendation for Online Voting. In Proceedings of the 2017 ACM on Conference on Information and Knowledge Management. ACM,347–356.
[4]HongweiWang,Fuzheng Zhang,Min Hou,Xing Xie,Minyi Guo,and Qi Liu. 2018 SHINE:signed heterogeneous information network embedding for sentiment link prediction. In Proceedings of the 11th ACM International Conference on Web Search and Data Mining. ACM,592–600.
[5]Yehuda Koren. 2008. Factorization meets the neighborhood:a multifaceted collaborative filtering model. In Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM,426–434.
[6]Petar Velickovic,Guillem Cucurull,Arantxa Casanova,Adriana Romero,Pietro Lio,and Yoshua Bengio. 2018. Graph attention networks. In Proceedings of the 6th International Conferences on Learning Representations.
[7]Antoine Bordes,Nicolas Usunier,Alberto Garcia-Duran,Jason Weston,and Oksana Yakhnenko. 2013. Translating embeddings for modeling multi-relational data. In Advances in Neural Information Processing Systems. 2787–2795.
[8]Fuzheng Zhang,Nicholas Jing Yuan,Defu Lian,Xing Xie,and Wei-Ying Ma.2016. Collaborative knowledge base embedding for recommender systems. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM,353–362.
[9]Hongwei Wang,Fuzheng Zhang,Jialin Wang,Miao Zhao,Wenjie Li,Xing Xie,and Minyi Guo. 2018. RippleNet:Propagating User Preferences on the Knowledge Graph for Recommender Systems. In Proceedings of the 27th ACM International Conference on Information and Knowledge Management. ACM.
[10]Petar Velickovic,Guillem Cucurull,Arantxa Casanova,Adriana Romero,Pietro Lio,and Yoshua Bengio. 2018. Graph attention networks. In Proceedings of the 6th International Conferences on Learning Representations.