SCI论文(www.lunwensci.com):
摘要:近年来,图神经网络被证明是针对图数据研究的一个有效工具,而在推荐系统中用户和商品之间的关系可以被视为一个二分图,则可以尝试将图神经网络的相关技术原理应用到推荐系统。目前图神经网络方法存在局限有:高阶节点在信息传播过程中会携带噪声或负面信息;深层网络面临过平滑问题,即:网络深度达到一定层数后,由于节点特征聚合过多高阶节点信息,导致不同类别不可区分,此时模型的学习能力不增反降;两个问题都对后续学习任务造成负面影响,其学习策略存在进一步优化的空间。针对这一问题,本文基于图卷积神经网络设计了一个新的推荐算法双向协同过滤推荐算法,将原本的大规模图划分为多个子图进行融合学习,并使用注意力机制对多个节点表示进行组合优化。相比于现有模型,该模型能够得到更高的准确度和召回率。
关键词:图卷积神经网络;兴趣感知;注意力机制;推荐系统
Bidirectional Collaborative Filtering Recommendation Algorithm Based on Graph Convolution Network
GAO Fei,LIN Kaijie
(Nanjing University of Science and Technology School of Computer Science and Engineering,Nanjing Jiangsu 210094)
【Abstract】:In recent years,graph neural network has been proved to be an effective tool for graph data research,in the recommendation system the relationship between users and products can be regarded as a bipartite graph,then we can try to apply the related technical principles of graph neural network to the recommendation system.The current graph neural network method has limitations:High-level nodes will carry noise or negative information in the process of information dissemination;The deep network has faced a smoothing problem,Namely:after the network depth reaches a certain number of layers,because node features aggregate too much high-order node information,it makes different categories indistinguishable,at this time the learning ability of the model does not increase but decreases;Both problems have a negative impact on follow-up learning tasks,there is room for further optimization of its learning strategies.For the problem,This paper designs a new recommendation algorithm based on graph convolution neural network--Bidirectional collaborative filtering recommendation algorithm,the original large-scale graph is divided into multiple subgraphs for fusion learning,the attention mechanism is used to optimize the combination of multiple node representations.Compared to existing models,the model can get higher accuracy and recall.
【Key words】:graph convolution neural network;interest perception;attention mechanism;recommendation system
0引言
推荐系统已经成为各种在线平台的重要技术之一,其目的是预测用户是否会与项目交互[1]。其中,基于协同过滤的模型通过对历史用户-项目交互进行建模[2],在学习用户和项目表示方面取得了有效进展[3-4]。
最近,基于GCN(Graph Convolution Neural Net-work)[5-6]的模型在推荐方面成效显著,GCN模型的主要功能是利用图的连通性提取附加信息迭代地聚集来自邻居的特征信息,从而改进用户和项目的嵌入表示。
NGCF[7]利用图的高阶连通性缓解推荐系统中的稀疏性问题,然而GCN遭受过平滑问题,因图卷积运算实际上可以看作是一种特殊的图拉普拉斯平滑,这使得节点表示在多层图卷积之后变得不可区分[8]。
针对上述问题,Chen提出LR-GCN[9]模型,通过增加残差运算来缓解过平滑效应。He等人[10]进一步指出原始GCN模型中的特征变换和非线性激活对最终性能几乎无积极影响,甚至会随着训练产生更多的消极影响;基于此提出的Light-GCN模型只保留了邻域聚合的操作,并去除了聚合操作中的“自循环”以缓解过平滑问题。
为了减少负面信息的传播,DropEdge[11]在每个训练周期从输入图中随机移除一定数量的边,并从理论上证明了DropEdge要么降低了过平滑的收敛速度,要么减轻了过平滑带来的信息损失。同期提出的IMP-GCN[12]模型认为并非所有来自高阶邻居的信息在现实中都是积极的,通过将用户随机分为两个子图进行学习,切断了两个子图间用户的关联边,从而过滤掉高阶图卷积运算中消极信息的传播。然而,在IMP-GCN中,仅仅将用户划分为没有交集的子图会导致一部分的信息损失,忽略了不同组用户之间可能存在的潜在联系;并且由于仅用户进行划分,在学习过程中忽略了购买时商品因素对购买结果的影响。另外,在聚合多个子图的嵌入节点时,IMP-GCN采用简单加和的方式进行节点最终表示的学习,没有考虑不同部分的实际权重。作者参考了IMP-GCN,将同一个图结构分成若干子图,对于每个子图分别利用Light-GCN进行学习,得到不同的嵌入表示,将最终结果进行堆叠。由于分子图时可阻隔一些高阶信息,可以适当缓解过平滑问题。另外,考虑到在进行子图划分时,将用户划分到完全不同的类别中,忽视了用户购买因素的多样性。所以将一些用户分类到多个不同的类别中,而不仅仅是一个。与此同时,在子图划分时,用户和商品是两个完全不同的考虑角度,作者从两种角度出发进行学习,得到两种不同的低纬表示并采用GANTE[13]注意力机制学习权值参数,以得到更为有效的节点表示。经过实验,该模型可以过滤掉高阶图卷积运算中的负信息传播,并且相对于单方向的学习方式提高了精度,并在三个大规模真实数据集上进行了大量实验,验证了模型的有效性。
基于以上考虑,本文提出了一种兴趣感知消息传递推荐模型基于图卷积神经网络的双向协同过滤模型。该模型使用两种方式来划分子图,即将用户和商品分别进行了子图划分,并在分类时进行了组间交叉即同一个用户可能会划分到不同类别,而不仅仅是一个。在子图中进行高阶图卷积运算,学到基于子图间用户弱关联[12]的用户-项目节点表示,和子图间项目弱关联的用户-项目节点表示,并使用GANTE[13]注意力机制进行优化。
这项工作的主要贡献如下:
(1)作者提出了基于图卷积神经网络的双向协同过滤模型,该模型使用将用户和项目分别进行了子图交叉分类,并使用优化的注意力机制获得最终节点嵌入。实验证明,该方法对缓解过平滑问题是有效的。(2)作者设计了子图生成模块,考虑图的结构信息,从用户-项目二分图中分别对用户、项目进行交叉分组,并利用GATNE注意力机制学习节点嵌入的表示。(3)作者对三个基准数据集进行了实证研究,以评估所提出的模型。结果表明,该模型可以学习到更好的用户/项目节点表示。
1基于图卷积神经网络的双向协同过滤模型
1.1 IMP-GCN模型概述
假设A∈RN×M是用户-项目关系的邻接矩阵,其中N和M分别表示用户和项目的数量。非零条目aui∈A表示用户u∈U与项目i∈I有交互关系,否则,该条目为空。基于该关系矩阵可以构造用户-项目二分图G=(W,E),其中W为节点集,E为边集,非零条目aui∈A表示用户u和项目i之间有一条边。上述信息作为GCN的输入,通过迭代的聚集二分图中相邻节点的特征来学习用户和项目的表示。IMP-GCN以轻量的设计实现较优的性能,用eu(0)表示第0层用户u的嵌入,用ei(0)表示第0层项目i的嵌入,低阶聚合操作如下:
其中e
u(k)和e
i(k)分别表示用户u和项目i在k层传播后的嵌入,Nu表示与用户u交互的项目集,Ni表示与项目i交互的用户集,

是对称归一项,IMP_GCN中认为该项可以有效避免嵌入规模随着卷积运算而增加。
在高阶的信息传导过程中IMP_GCN随机将用户分为2类,每一类只保留该类用户和与该类用户相邻的商品节点,得到n个子图,对于每个子图经k层传播之后商品和用户得到的低维表示结果如下:
其中,eis(k)表示在子图s中进行k层卷积后项目i的节点表示,Nis表示子图s中与项目i交互的用户集在k层卷积后,用户u和项目i的最终嵌入是在IMP-GCN中每一层嵌入的组合:
其中,αk≥0是分配给第k层的超参数,他表示该层在构成最终嵌入过程中的贡献。
从公式(2)可知,在迭代的聚集高阶邻居特征之后,节点的嵌入将变得越来越相似,不利于挖掘用户购买商品的潜在因素,并导致过度平滑的问题。为了避免这种情况并缓解过平滑问题,分别对用户和项目进行了子图交叉划分,在子图中进行高阶图卷积运算,在这两种方案中约束部分节点信息在子图间的传播,学习到基于子图间用户弱关联的用户-项目节点表示和子图间项目弱关联的用户-项目节点表示,然后使用GANTE注意力机制进行优化。为了实现这一目标,作者提出了双向协同过滤模型。
1.2双向协同过滤模型
1.2.1消息传递策略
通过随机构造子图,希望子图中传递的信息有助于该节点的嵌入学习,采用随机生成子图的方式,总的思路是现将用户进行随机分为n组,与那些用户相关联的项目也属于这个子图。然后对于原始输入再对物品进行随机分为n组,与那些物品相关联的用户也属于这个子图。让GsU表示用户分类方式下的一个子图,GsI表示项目分类方式下的一个子图。下面以用户分类子图为例分析消息传递过程:
鉴于用户和项目之间的直接邻居提供了用户最感兴趣以及最重要的信息,特别地,进行一阶传播时,使用了所有的一阶邻居节点[14-15];用eUu(0)表示用户第0层用户u的嵌入,用eUi(0)表示用户分类第0层项目i的嵌入,卷积操作如下:
其中,eUu(1)表示用户分类第1层用户u的节点表示,用eUi(1)表示用户分类第1层项目的节点嵌入。
对于高阶图卷积,为了降低噪声的影响,子图中的节点只能利用该子图中的节点信息,因为一个用户所对应的所有直接节点在分类时同属于该子图,所以该用户节点可以接收所有可达节点的信息。而一个项目所对应的所有直接节点可能处在不同的子图中,该项目节点只能接收所有子图内可达节点的信息。使用eUis(k)表示在用户分类方式中,经过k层卷积,项目i在子图GsU的嵌入表示,于是可定义高阶传播为:
使用一个标识矩阵来存储项目和用户所属的子图,这样就可以保证一个节点的嵌入表示只对同一子图中的其他节点的嵌入表示有影响。对于用户分类方式采用相同的方法。通过学习,得到n种嵌入表示,组合每一层获得的嵌入表示,以形成用户u和项目i的最终嵌入表示。对于用户分类方式而言eUis可以看作从子图GUs中学到的组内特征嵌入。
其中,SU是项目i所属的子图。
双向协同过滤流程如图1所示:
双向协同过滤模型第一层信息按照未划分子图的方式进行节点学习,高阶信息则通过分别对用户和项目进行子图交叉划分进行表示学习,得到用户EU和项目EI的嵌入表示后,使用GATNE自注意力机制进行融合学习。
1.2.2矩阵传播规则
使用矩阵传播机制来实现模型的传播算法,这种方式可以同时更新所有的用户和项目嵌入表示。E(0)是用户和项目节点嵌入表示矩阵,E(k)表示k层迭代后的节点表示,EsU(k)和EsI(k)表示k层迭代后用户分类/项目分类子图的项目表示。第一层嵌入传播可以描述为:
其中,L是用户-项目关系矩阵的拉普拉斯矩阵。
在高阶图卷积层中涉及子图的传播时,以用户分类方式为例,子图嵌入传播过程可以描述为:
其中,k≥2,LsU代表子图EsU的拉普拉斯矩阵,然后继续传播(k-1)层的嵌入,形成k层嵌入:
汇总了所有涉及不同子图的k层嵌入,以形成最终的k层嵌入,对项目进行分类的方式同理:
最后,结合所有的层嵌入,分别得到用户-项目的最终表示:
1.2.3注意力机制与预测
对于用户分类方式和项目分类方式,每种方式内学习出的嵌入表示,采用注意力机制学习两组节点嵌入的权值,从而得到最终的节点表示。
GATNE模型适用于多重异构网络的嵌入学习,主要思路是:每个节点针对每种边类型都学到了一个表示。但是这两种表示之间并不是完全独立的。GATNE模型挖掘了他们相互影响的方式。模型利用其中嵌入学习方式,将两种分类方式得到的两种节点嵌入表示形式,将第k层的节点嵌入拼接为矩阵Ui:
其中,用户分类和项目分类方式下的第i个节点嵌入表示为EUi,EIi。
使用自注意力机制计算每种分类方式下对于各个节点的权重ai,U,ai,I:
其中,wr和Wr是按用户分类训练得到的参数,wI和WI是按项目分类训练得到的参数。紧接着,得到节点vi在r关系下的表示向量:
将学习出的用户节点的嵌入表示为eu,项目节点的嵌入表示为ei,对于给定的用户u和项目i,用户对项目的偏好可通过内积计算:
通过上述计算可得到用户与商品间的兴趣评分,从而用于下游推荐任务。
1.2.4损失优化
这项工作目标是实现top-n推荐,即推荐一组符合目标用户偏好的n个项目。与评级预测相比,这在真正的商业系统中是一项更实际的任务采用成对学习方法进行优化[16]。为了进行成对学习,它需要构建一个
{u,i+,i-}三元组,观察用户u和项目i+之间的相关性,以及用户u和项目i-之间的无关性。该方法假设正项目i+应该比负项目i-的优先级更高,则目标函数表示为:
其中,O={(u,i+,i-)|(u,i+)|∈R+,(u,i-)∈R-}表示训练集;R+表示在训练数据集中观察到的用户u和项目i+之间的交互关系,R-表示在训练数据集中未观察到的用户u和项目i-之间的交互关系λ和θ分别代表正则化权重和模型的参数,L2范数的正则化项用于防止过拟合。采用小批量Adam优化预测模型利用梯度下降的方法来更新模型参数。
2实验结果及分析
2.1实验目的
通过实验数据,主要希望解决下面三个问题:问题1:该模型与其他模型对比的优势体现在哪里?问题2:该模型在层数增加时是否对过拟合问题有一定的缓和问题3:该模型不同部分对模型分别起到什么作用?
2.2实验基本信息
2.2.1实验数据集
实验数据选取了Store,Yelp2018,Gowalla三个公开数据集,根据下图的数据集统计方法,可以看到三个数据集处于不同的数量级。所以可以有效的评估推荐系统模型的准确性,不同数据集的指标统计如表1所示。
2.2.2性能评价指标
对于测试集中的每个用户,将用户未与之交互的所有项目视为负面项目。实验评估采用了两种广泛使用推荐评估指标:召回率(recall)和归一化折扣累积增益(ndcg)。
2.3实验结果
2.3.1实验数据结果
双向协同过滤模型与其他模型对比结果如表2所示,所有百分号均被忽略。
以上实验都是模型在三层神经网络的结果下的结果(本模型是在5层神经网络架构下)。通过观察表2,可以看到该模型在不同三个数据集中recall分别提升了2.83%、2.95%、1.56%。ndcg分别提升了1.64%、1.47%、4.57%。
2.3.2网络层数实验对比
双向协同过滤模型在不同层数的表现如图2所示:
图2模型均是在10%的交叉分类并且增加自注意机制之后的实验结果。通过观察可以看出该模型通过在不同层数下和LightGCN模型进行比较,发现模型在层数增加时,在原始LightGCN的模型下在模型层数到达5层时,因为可能遭受了过平滑问题和聚合噪声信息等问题,模型性能开始下降。该模型在模型层数增加时未出现性能下降现象。相反,层数增加有利于该模型性能的提升。
2.3.3消融实验
双向协同过滤模型不同部分的消融性试验结果如表3所示:
上述实验是在5层神经网络架构的模型下的结果,结果%均被忽略。将实验分为如下几组:第一组和第四组均对商品进行划分,前者没有交叉,后者分类结果中有交叉。第二、三组对商品划分,规则同上。第五组和第六组均对用户和商品以其划分通过两个方向对节点嵌入进行学习,前者只是简单加和,后者增加了子注意力机制。
根据实验结果可以发现,1:在分类的过程中,让不同类中的商品或用户有一定的交叉,对模型效果提升有一定的帮助。根据第一组和第二组实验的对比,三个实验对实验结果平均提升了1.13%2:通过对不同用户分类和商品进行分类两条路径进行学习,并且通过注意力机制进行组合,学习不同路径的重要程度。和对单路径模型学习对比,在三个数据集中召回率分别提升了2.83%,2.95%,1.56%。
2.3.4子图构建实验对比
交叉分类对双向协同过滤模型影响试验结果如图3所示:
在已有的子图分类模型中,主流有IMP模型中子图利用构建构造ID低维嵌入表示的方法对用户进行分类和自监督对比学习模型中利用随机选取节点构造连通图的方式构造子图。前者由缺乏优化函数从而只能达到随机效果,后者由于未对用户和商品进行区分,无法保留二分图的特性。在本模型中,采用对用户和商品分别进行随机分类的方法进行子图构建,实验数据表明,随即构建子图对实验结果并没有过大的影响,并且在一定的交叉比例下效果还有良好的提升。分组间数据交叉的实验结果表明当数据交叉结果至10%时效果最明显。此外,使用有交叉的数据设置在一定程度上增强了模型的泛化能力。
3总结与展望
近期基于图神经网络的推荐系统模型中,现有的模型未能有效发掘用户潜在的购买特征,同时遭受多层数堆叠时时带来的过平滑风险。本文基于的思想,对原图进行分子图处理,去除掉图中的高阶冗余信息,并且从多方向学习不同组的低维嵌入表示,通过注意力机制进行融合学习。实验使模型具有更好的性能和。
下一步工作可以考虑从两个方面进一步优化模型:(1)对于两种不同方向的学习结果的结合方式可以进行更好的优化。(2)对于分子图的方法可以采用一定的准则,使其具有更好的可解释性。
参考文献
[1]苏静,许天琪,张贤坤,等.基于图卷积与外积的协同过滤推荐模型[J/OL].计算机应用研究:1-5[2021-06-05].https://doi.org/10.19734/j.issn.1001-3695.2021.02.0053.
[2]Steffen Rendle,Zeno Gantner,Christoph Freudenthaler,etc.Fast context-aware recommendations with factorization machines[C].In SIGIR,2011:635-644.
[3]Paul Covington,Jay Adams,and Emre Sargin.Deep Neural Networks for YouTube Recommendations[C].In RecSys,2016:191-198.
[4]RexYing,RuiningHe,KaifengChen,etc.GraphConvolutional Neural Networks for Web-Scale Recommender Systems[C].In KDD(Data Science track),2018:974-983.
[5]Rianne van den Berg,Thomas N.Kipf,and Max Welling.Graph Convolutional Matrix Completion[C].InACM SIGKDD:Deep Learning Day.ACM,2018:145-155.
[6]魏晓辉,孙冰怡,崔佳旭.基于图神经网络的兴趣活动推荐算法[J].吉林大学学报(工学版),2021,51(1):278-284.
[7]Xiang Wang,Xiangnan He,Meng Wang,etc.Neural Graph Collaborative Filtering[C].In Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval.ACM,2019:165-174.
[8]刘欢,李晓戈,胡立坤,等.基于知识图谱驱动的图神经网络推荐模型[J].计算机应用,2021,41(7):1865-1870.
[9]Chen L,Wu L,Hong R,eta.Revisiting graph based collaborativefiltering:A linear residual graph convolutional network approach[J].Proceedings of the AAAI Conference on Artificial Intelligence,2020,34(1):27-34.
[10]He,X.,Deng,K.,Wang,etc.MLightgcn:Simplifying and powering graph convolution network for recommendation[C].InProceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval,2020:639-648.
[11]Yu Rong,Wenbing Huang,Tingyang Xu,etc.The Truly Deep Graph Convolutional Networks for Node Classification[J].arXiv preprint arXiv:2019.
[12]Liu,F.,Cheng,Z.,Zhu,L.,etc.Interest-aware Message-Passing GCN for Recommendation[C].InProceedings of the Web Conference,2021:1296-1305.
[13]Cen,Y.,Zou,X.,Zhang,J.,etc.Representation learning for attributed multiplex heterogeneous network[C].InProceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery&Data Mining,2019:1358-1368.
[14]Thomas N.Kipf and Max Welling.2017.Semi-Supervised Classificationwith Graph Convolutional Networks.In ICLR.
[15]Felix Wu,Amauri H.Souza Jr,etc.Simplifying Graph Convolutional Networks[C].In ICML,2019:6861-6871.
[16]SteffenRendle,ChristophFreudenthaler,ZenoGantn er,andLarsSchmidt-Thieme.BPR:Bayesian Personalized Ranking from Implicit Feedback[C].In UAI,2009:452-461.[17]Xiangnan He,Lizi Liao,Hanwang Zhang,etc.c Neural collaborative filtering[C].In Proceedings of the 26th International Conference on World Wide Web.IW3C2,2021:173-182.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网!
文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jisuanjilunwen/37111.html