CN112905900A - 基于图卷积注意力机制的协同过滤推荐算法 - Google Patents
基于图卷积注意力机制的协同过滤推荐算法 Download PDFInfo
- Publication number
- CN112905900A CN112905900A CN202110363686.0A CN202110363686A CN112905900A CN 112905900 A CN112905900 A CN 112905900A CN 202110363686 A CN202110363686 A CN 202110363686A CN 112905900 A CN112905900 A CN 112905900A
- Authority
- CN
- China
- Prior art keywords
- user
- model
- graph
- embedding
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000007246 mechanism Effects 0.000 title claims abstract description 35
- 238000001914 filtration Methods 0.000 title claims abstract description 23
- 230000003993 interaction Effects 0.000 claims abstract description 57
- 239000013598 vector Substances 0.000 claims abstract description 40
- 230000014509 gene expression Effects 0.000 claims abstract description 23
- 238000012549 training Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 8
- 230000002452 interceptive effect Effects 0.000 claims description 17
- 230000002776 aggregation Effects 0.000 claims description 11
- 238000004220 aggregation Methods 0.000 claims description 11
- 230000004931 aggregating effect Effects 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000010276 construction Methods 0.000 abstract description 3
- 230000001419 dependent effect Effects 0.000 abstract description 3
- 238000013480 data collection Methods 0.000 abstract 1
- 239000010410 layer Substances 0.000 description 51
- 238000000034 method Methods 0.000 description 24
- 230000000694 effects Effects 0.000 description 19
- 239000011159 matrix material Substances 0.000 description 18
- 238000013528 artificial neural network Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000002474 experimental method Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 239000002356 single layer Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000006116 polymerization reaction Methods 0.000 description 2
- 238000000547 structure data Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 239000013604 expression vector Substances 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于图卷积注意力机制的协同过滤推荐算法,该方法包括:首先是数据采集、处理以及划分数据集,其次是GACF模型的构建,最后是模型训练以及通过预测用户与项目之间的关联分数进行推荐。本发明提出的图卷积注意力机制协同过滤模型,首先利用图嵌入技术将用户‑项目的交互信息映射到向量空间,然后通过图卷积网络学习用户‑项目交互图的嵌入表达,再利用注意力机制为邻居节点分配不同的权重,聚合邻居节点的特征信息可使邻居节点之间的权重仅依赖于节点之间的特征表达,从而提高模型的泛化能力,最后将图卷积层学习到的多个嵌入向量加权聚合,得到用户‑项目之间的关联分数。
Description
技术领域
本发明属于计算机人工智能的技术领域,尤其涉及一种基于图卷积注意力机制的协同过滤推荐算法。
背景技术
在这个数据大爆炸的时代,为了缓解信息过载问题,推荐系统已经被广泛应用于个性化信息过滤。目前应用最广泛的推荐技术是协同过滤推荐算法,它基于相似的用户会对项目表现出相似的偏好这一假设,通过用户历史行为记录探索用户的隐性偏好,并根据用户的隐式偏好进行推荐。早期的推荐模型直接使用用户和项目的ID号作为嵌入向量,导致所学习的嵌入表达具有局限性。随后,许多研究者将用户ID以及它的交互记录作为嵌入向量(如SVD++模型、NAIS模型和GC-MC模型)提高了嵌入质量。但是,从用户-项目交互图的角度来看,SVD++和NAIS等模型仅仅利用了用户的一阶邻居进行嵌入学习,虽然GC-MC模型考虑了用户-项目的高阶连接性,但是此模型并未将这种高阶信息编码进嵌入表达的学习过程中,从而影响了推荐准确度。
数据稀疏性和冷启动问题影响了协同过滤技术的推荐性能。社交网络的出现,使得越来越多的推荐算法利用社交网络提供的丰富信息来缓解数据稀疏性和冷启动等问题。但是,传统的基于社交网络推荐算法往往会忽略用户-项目之间隐式关系,为了建模用户-项目信息网络的隐式关系,研究人员提出一系列的图嵌入(Graph embedding,GE)模型。卷积神经网络借助其强大的建模能力得到了快速发展,但卷积神经网络只能处理欧式空间数据(如文本、图像等)。用户-项目交互图是图结构数据,属于非欧式空间数据,不满足平移不变性。图卷积神经网络是一种针对图结构数据的深度学习模型,利用图卷积神经网络建模图上的复杂信息使其具有强大的特征表征能力,PinSage、NGCF和LightGCN等均为典型的图卷积协同过滤技术。但它们聚合邻居节点的特征方式完全依赖于图结构,不利于扩展到其他的图结构,从而局限了模型的泛化能力。
发明内容
基于以上现有技术的不足,本发明所解决的技术问题在于提供一种基于图卷积注意力机制的协同过滤推荐算法,更好的提高了推荐精度和模型的可解释性。
针对以往模型的缺陷,本发明提出的模型利用用户-项目交互图的拓扑结构,将用户-项目之间的高阶连接信息加入到嵌入表达的学习过程中,考虑了用户-项目之间的交互信息,以此揭示了用户/项目之间的耦合关系。
本发明的基于图卷积注意力机制的协同过滤推荐算法,包括以下步骤:
步骤1:数据采集、数据处理、数据集划分。
数据采集:本发明的数据集采用Gowalla数据集,此数据集包括29858条用户数据,40981条项目数据以及1027370条用户与项目交互数据。
数据处理:将采集到的欧式空间数据构造为非欧式空间数据(即图数据),主要做法是将用户与项目之间的交互数据构造为用户-项目交互二部图。
数据集划分:将处理好的数据集随机选取80%的历史交互作为训练集,用于训练模型;其余作为测试集,用于评估模型的泛化能力。对于数据集中每一个可以观察到的用户项目交互,将其视为正样本,然后执行负采样策略为用户没有交互的项目配对负样本;
步骤2:模型的构建。
首先将用户-项目交互图中的交互信息映射到向量空间,然后通过图卷积网络学习用户-项目交互图的嵌入表达,利用交互图的拓扑结构对用户-项目的高阶连接信息进行建模。再利用注意力机制为邻居节点分配不同的权重,聚合邻居节点的特征信息可使邻居节点之间的权重仅依赖于节点之间的特征表达,从而提高模型的泛化能力,最后将图卷积层学习到的多个嵌入向量加权聚合捕获不同卷积层的嵌入影响。
步骤3:模型训练及项目推荐:
将步骤1中得到的训练集和测试集分别用于训练和评估步骤3中构建的模型,模型通过内积得到用户-项目之间的关联分数。最终根据得到的关联分数判断是否将项目推荐给用户。
可选的,在步骤S1中,首先下载Gowalla集,其次进行数据预处理,将采集到的欧式空间数据构造为非欧式空间数据(即图数据),主要做法是将用户与项目之间的交互数据构造为用户-项目交互二部图。最后,对于数据集中每一个可以观察到的用户项目交互,将其视为正样本,然后执行负采样策略为用户没有交互的项目配对负样本;
可选的,在步骤S2中,其计算方法如下:
S201:构造嵌入层(输入层):嵌入层主要包括用户ID嵌入和项目ID嵌入两部分。
S202:构造加入注意力机制的嵌入传播层:根据嵌入层传送的用户ID/项目ID匹配其一阶邻居ID作为嵌入传播层的输入,并将其目标节点与一阶邻居节点分别送入注意力机制和哈达玛积两个模块中进行学习,将学习到的嵌入向量再送入下一层的嵌入传播层,以此类推。
S203:构造预测层(输出层):预测用户与项目之间的关联分数。
可选的,在步骤S3中,其计算方法为:
将嵌入传播层学习到的嵌入向量合并为最终的嵌入向量,模型将最终的嵌入向量进行简单的内积处理得到用户与项目之间的关联分数进行预测,并为最终用户推荐可能感兴趣的项目。
由上,本发明的融合图卷积神经网络和注意力机制的协同过滤推荐方法至少具有如下有益效果:
(1)、本发明考虑在用户-项目交互二部图中学习嵌入表示,在模型嵌入层便考虑了用户与项目之间的交互信息,通过嵌入传播在用户项目交互图上建模高阶连通性,使得模型可以学习到高维特征信息,以此获得更有效的嵌入,提高了推荐的准确性。
(2)、本发明运用了注意力机制聚合邻居节点对目标用户的影响,使得在嵌入传播层学习到的邻居权重为可变权重,捕获了不同邻居节点的重要性影响,其次注意力机制这种聚合方式独立于图结构,提高了模型的泛化能力,使推荐系统具有更好的推荐效果和可解释性。
(3)、本发明使用内积作为最后得到的用户嵌入和项目嵌入的交互函数,得到用户与项目之间的关联分数,简化了模型的时间复杂度和空间复杂度,提高了模型的推荐性能。
(4)、本发明是协同过滤技术与社交网络图数据推荐的结合,可以很好的解决数据稀疏性和冷启动问题。
(5)、本发明使用图卷积神经网络(GCN)学习特征中每一维度之间的高阶交互关系,GCN强大的建模能力可以挖掘用户-项目交互图的局部/全局的特征信息,而且具有较少的参数,因此更容易训练和泛化。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下结合优选实施例,并配合附图,详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例的附图作简单地介绍。
图1为数据处理图;
图2为嵌入层用户-项目高阶连接性交互图;
图3为本发明的基于图卷积注意力机制的协同过滤推荐算法的模型架构图;
图4为数据稀疏度效果对比图;
图5为前top-k推荐效果图;
图6为项目聚类效果图。
具体实施方式
下面结合附图详细说明本发明的具体实施方式,其作为本说明书的一部分,通过实施例来说明本发明的原理,本发明的其他方面、特征及其优点通过该详细说明将会变得一目了然。在所参照的附图中,不同的图中相同或相似的部件使用相同的附图标号来表示。
本发明针对现有技术无法聚合邻居节点的不同影响进行有效的建模。图1~图6给出了数据处理以及图卷积注意力机制网络模型的具体设计结构。
第一步,构建用户-项目交互二部图。首先将数据集中获取的用户与项目交互数据进行处理,将处理好的欧式空间数据构造为非欧式空间数据,即用户-项目二部图。
第二步,构建嵌入层用户-项目高阶连接性交互图。利用上述构造的用户-项目交互二部图的拓扑结构对用户-项目的高阶连接信息进行建模。
第三步,构建模型架构图。在第一步构造的用户-项目二部图的基础上,首先使用图嵌入技术将用户-项目的交互信息映射到向量空间,然后通过图卷积网络学习用户-项目交互图的嵌入表达,利用交互图的拓扑结构对用户-项目的高阶连接信息进行建模,再利用注意力机制为邻居节点分配不同的权重,聚合邻居节点的特征信息可使邻居节点之间的权重仅依赖于节点之间的特征表达,从而提高模型的泛化能力,最后将图卷积层学习到的多个嵌入向量加权聚合得到最终的嵌入表达。
第四步,生成预测结果。将模型生成的最终的用户/项目的嵌入向量进行内积,得到用户与项目之间的关联分数,并且根据关联分数为用户推荐感兴趣的项目。
GACF模型架构图的具体算法如下:
构建模型的嵌入层。
根据推荐模型,本发明的一个用户u(或项目i)嵌入向量表示为cu∈Rd,其中R为用户项目交互矩阵,d表示嵌入大小。由此可以得到用户和项目嵌入向量构成的初始嵌入向量查找表。
Em=[eu1,eu2,…,euM,ei1,ei2,…,eiN] (1)
其中用户集U={u1,u2,…,uM}包含M个用户,项目集I={i1,i2,…,iN}包含N个项目,用户与项目之间的交互构成了交互矩阵,记为Rm×n,m和n分别为用户和项目的数量。这个嵌入查找表作为用户嵌入和项目嵌入的初始状态,以端到端的方式进行传递和优化。在传统的推荐模型中,这些用户/项目的ID被表示为嵌入向量直接送入交互层并获得预测分数。但是,在本发明的模型中,为了达到更好的推荐效果本发明根据用户-项目交互图中的高阶连接性来获得交互信息构建用户和项目的嵌入向量,由此在嵌入层本发明将考虑了用户与项目之间交互信息。
构建模型的加入注意力机制的嵌入传播层
受NGCF和GAT模型的启发以及GCN神经网络的消息传递机制的基础上,本发明对加入注意力机制的嵌入传播层的设计如下。首先说明单阶传播设计,然后将其推广到高阶传播。
1、单阶传播
一般地,用户交互的项目直接反映了用户偏好,例如,与某个项目交互的用户可以被视为此项目的特征,从而用于度量两个项目之间的协作相似性。在此基础上执行用户与项目之间嵌入传播,主要由消息构建和消息聚合两部分构成。
(1)消息构建
对于用户-项目交互图中存在的一个连接的用户-项目对(u,i),定义从项目i到用户u的消息为:
mu←i=f(ei,eu,pui) (2)
其中,u←i表示从项目到用户的方向传递,m为表示传递消息的嵌入向量。f()是一个消息编码函数,输入为这个用户-项目节点对中用户u对项目i的嵌入向量eu和ei,以及相关系数pui,相关系数p用来控制(u,i)边上每次传播时的衰减因子。
在本发明中消息编码函数f()实现为:
其中,W1、W2∈Rd’×d为可训练的权重矩阵,矩阵维度为d’×d,d’为转换大小。传统的图卷积神经网络仅考虑嵌入向量ei的影响,但是,本发明设计的图卷积神经网络模型中,不仅考虑了ei的影响,还考虑了ei与eu之间的交互信息,并且通过哈达玛积(ei⊙eu)的方式将用户与项目的交互信息编码到消息传递机制中,其中⊙表示逐元素相乘。这使得模型中传递的消息依赖于ei和eu之间的亲密度值,更准确地说,相似的项目之间可以传递更多的消息。
根据图卷积神经网络原理,相关性系数p设置为图数据的拉普拉斯范数:
其中,Nu和Ni分别表示用户u交互的项目集、与项目i交互的用户集。从表示学习的角度看,系数p表示项目对用户偏好程度的贡献率,从消息传递角度看,系数p可以看作一个受用户-项目节点连接的边长度影响的衰减系数(边长度越长,则p的值越小,连接边的影响越小)。传统的图卷积神经网络不能为每个邻居节点分配不同的权重,如在卷积时对所有的邻居节点均一视同仁,不能根据节点的重要性分配不同的权重。针对这一问题,本发明采用了注意力机制,可以为不同的节点分配不同的权重,使得模型训练时依赖成对的相邻节点,而不依赖具体的图结构。
依据图注意力机制(GAT)原理,邻居节点i对目标节点u的影响,可以由注意力相关分数表示:
eui=Leaky Relu(a(eu||ei)) (5)
其中,为注意力分数(设置为α=0.5)。为了使注意力相关分数便于比较以及得到注意力权重,引入了softmax函数对目标用户u的所有邻居节点i进行归一化,如式(6)所示:
(2)消息聚合
通过聚合目标用户u的邻居节点特征来更新用户u的嵌入表达eu,聚合函数可以抽象为:
其中,eu表示用户u在单层传播之后得到的用户嵌入向量,为了获得用户u的原始特征,在邻域聚合的过程中,本发明还考虑用户u的自连接,自连接可表示为:
mu←u=W1eu (8)
其中,W1与式(3)中的W1为同一权重矩阵,与eu同理,本发明还可以获得项目i在单层传播之后的项目嵌入表达ei。
2、高阶传播
通过堆叠多个单阶传播层来挖掘高阶的连接信息,这种高阶连接信息对评估用户与项目之间的关联分数是至关重要的。通过堆叠l层的加入注意力机制的嵌入传播层,用户(或项目)可以获得l-阶自身节点和邻接节点传播的特征消息。由单阶传播可知,在第l层时传播形式如下:
其中,高阶自连接和高阶邻居节点影响的具体表达形式如下:
m(l) u←u=W1 (l)eu (l-1) (10)
3、传播过程的矩阵形式
单阶传播和高阶传播只是对单个节点进行算法上的描述,为了实现传播过程中能够对节点进行批量的计算,本发明设计了逐层传播的矩阵形式,如式(12)所示:
其中,E(l)表示所有用户和项目节点在第l层得到的嵌入向量,且I为单位矩阵,为拉普拉斯矩阵,具体定义为;
其中,矩阵R∈RM×N为交互矩阵,矩阵A为邻接矩阵,矩阵0为全零矩阵。矩阵D为对角矩阵,且第t个对角元素Dtt=|Nt|,故而,非零非对角元素为等同于式(4)中pui。通过实现传播过程的矩阵形式,可以高效的更新用户与项目的节点信息。
构建模型的预测层
在经过l层传播后,得到了用户u的多个嵌入表达,即{eu (1),…,eu (l)}。由于通过不同层获得的嵌入表达向量在用户偏好方面有不同的影响。故而,本发明将它们连接起来,构成用户的最终嵌入表达。同理,本发明对经过l层传播后得到的多个项目嵌入表达(即:{ei (1),…,ei (l)})进行相同的操作,得到最终的项目嵌入表达。最终的用户和项目嵌入表达如式(14)(15):
其中,βl≥0表示第k层嵌入在构成最终嵌入表达中的重要性,在本发明中设置βl为βl=1/(1+L)。参数βl也可以将其设置为可以自动优化的模型参数,但是在本发明中将βl设置为手动调整了超参数,经实验也会产生良好的性能。
最后,在模型预测部分,本发明采用了简单的内积交互函数,通过内积运算得到用户对目标项目的偏好:
模型优化
为了学习模型参数,本发明使用了贝叶斯(BPR)损失函数对模型进行优化,主要原因是因为贝叶斯损失函数考虑了观测到的交互和未观测到的交互之间的相对顺序。具体地说,它假设观测到的交互对用户偏好的影响更大,优化目标如下:
其中,O={(u,i,j)|(u,i)∈R+,(u,j)∈R-}被定义为数据集合,每一个数据都是一个三元组。
R+表示观测到的用户-项目交互,R-表示未观测到的用户-项目交互,σ()是sigmoid函数。
为L2正则化项,λ||Θ||2为正则化系数,控制L2正则化强度防止过拟合,Θ={E,{W1 (l),W2 (l)}L l=1}表示所有可训练的模型参数。
实验结果说明
实验结果表明:至少在以下几方面,本发明模型的益处:
(1)与近年提出的先进推荐算法比较,本发明的模型取得了更好的推荐效果。
(2)引入注意力机制的聚合方式,对GACF模型的推荐效果表现是有效的。
(3)本发明的模型可以缓解数据稀疏性对推荐性能的消极影响。
(4)本发明设计的高阶连接性与单层连接对目标节点聚合效果进行比较,证明了高阶连接性的模型的聚合效果更好。
本发明采用的数据集为Gowalla数据集,对于数据集,本发明随机选择每个用户的80%的交互历史构成训练集,剩下的20%作为测试集。表1给出了数据集的统计信息。
表1实验数据信息
1、对比算法
本发明提出的图卷积注意力机制协同过滤模型(简称为GACF)分别与两种非图神经网络模型(如MF和NeuMF)和三种图神经网络模型(如Hop-Rec、GC-MC和NGCF)共5个主流模型比较,现对这5种模型进行介绍:
(1)MF模型:该模型利用奇异值(简称为SVD)方法对矩阵进行分解,通过贝叶斯个性化排名损失函数对模型进行优化,并将用户-项目交互作为交互函数的目标值。
(2)NeuMF模型:该模型是一个经典的基于深度学习的协同过滤推荐算法,它结合了传统矩阵分解和多层感知机,通过元素层面上的用户和项目嵌入和串联多个隐藏层来捕获用户-项目之间的非线性特征交互,能够捕获用户和项目间的关联关系。
(3)Hop-Rec模型:该模型基于图神经网络,通过在图上的随机游走并结合图顶点的度,以一定概率采样用户和项目的高阶关系,可以显式的建模用户和项目之间的高阶偏好。
(4)GC-MC模型:该模型基于消息传递的图自动编码,通过编码器生成用户和项目表示,并利用用户和项目的一阶交互信息来捕捉它们之间的隐性特征,提高了推荐模型的泛化能力。
(5)NGCF模型:该模型是基于图卷积神经网络的最新推荐模型,它利用了用户-项目交互图的拓扑结构将交互信息嵌入到学习过程中,并构建了三层图卷积神经网络对交互信息进行嵌入传播学习,通过将传播层学习的嵌入向量进行聚合,得到用户-项目之间的关联分数。
2、评估指标
本发明中对于测试集中的每个用户,本发明将用户未交互的所有项目视为负样本,将用户已经交互的项目作为正样本。本发明的模型以及本发明中所选取的对比模型均输出用户对所有项目的偏好分数,为了评估top-k推荐和偏好排序的有效性,本实验采用top-k召回率(Recall@K)和归一化折现积累收益(NDCG@K)作为评价指标。召回率计算的是所有“被正确推荐的项目”占所有“应该被推荐的正确的项目”的比例,如式(18)所示:
其中,R(u)是为用户推荐的项目集合,T(u)为测试集上用户感兴趣的项目的集合。
归一化折现积累收益是一种基于排名的测试指标,排名靠前的项目得分更高。NDCG的表示由DCG和IDCG共同表示,DCG表示某个用户对项目集喜爱程度的评分,IDCG表示某个用户对项目集喜爱程度由高到底的评分。
其中表示用户对第i个项目的评分,是指按照评分高低的排序取前top-k个物品的评分,log2(i+1)是一个位置递减权重。
实验结果分析
1、总体比较
本发明将本发明所提出的模型与对比模型在相同数据集上分别进行实验,实验结果如表2所示。
表2总体比较
Table.2 Overall Performance Comparison
从模型性能的总体比较来看,本发明提出的GACF模型在两个不同的数据集相比于其他模型的Recall@20和NDCG@20均有明显提高,说明了本发明模型具有良好的泛化能力。与经典的MF模型相比,在Gowalla数据集上,Recall@20和NDCG@20分别提高了10.49%和10.65%。与NeuMF模型相比,在Gowalla数据集上,Recall@20和NDCG@20分别提高了10.18%和9.59%。与GC-MC模型相比,在Gowalla数据集上,Recall@20和NDCG@20分别提高了9.29%和9.33%。与Hop-Rec模型相比,在Gowalla数据集上,Recall@20和NDCG@20分别提高了9.18%和8.18%。与NGCF模型相比,在Gowalla数据集上,Recall@20和NDCG@20分别提高了7.92%和7.07%。
原因是本发明模型使用了最先进的图卷积神经网络用于协同过滤推荐技术,并且在模型训练过程中对用户-项目之间的高阶连接信息进行建模,另外还引入了注意力机制聚合了邻近节点信息,考虑了邻居节点影响的重要性,最后为每一层嵌入传播层分配不同的权重,综合考虑每一层嵌入传播层对最终向量表达的影响。经典的MF模型在两个数据集上所表现出来的性能都是最差的,这表明MF模型直接将用户-项目交互作为交互函数的目标值不足以捕捉用户和项目之间的复杂关系,这大大限制了MF模型的推荐效果。NeuMF模型的推荐性能优于MF模型,这是因为NeuMF模型考虑了用户和项目嵌入之间的非线性特征交互的重要性,然而MF与NeuMF模型在建模过程中均没有明确的对用户和项目在嵌入学习过程中的连接性建模,因此导致了MF与NeuMF模型的推荐效果均不是很好。
与另外三个图神经网络推荐模型相比,本发明模型仍表现出很好的推荐效果。原因是GC-MC模型虽然在建模时考虑了用户-项目连接性的一阶邻居影响,但是此模型没有充分挖掘用户与项目之间的非线性特征交互,这导致了GC-MC模型在NDCG@20上的表现不如NeuMF模型,但在Recall@20上的表现优于MF与NeuMF模型。Hop-Rec模型利用高阶邻居来丰富训练数据,对用户和项目之间的高阶偏好进行建模,但是该模型仅考虑相似的用户。NGCF模型相比于其他的模型都取得了明显的提高,通过堆叠多个嵌入传播层能够以显式的方式捕获用户与项目之间的高阶连接信息进行嵌入学习,但是NGCF模型没有聚合邻居节点的影响,并且将每一层嵌入传播层学习到的嵌入向量直接拼接为最终的嵌入向量表达,因而没有考虑每一层嵌入传播层对最终嵌入向量的影响。
2、数据稀疏情况下模型推荐效果。
数据稀疏性限制了协同过滤推荐算法的性能,原因是不活跃用户的交互历史的嵌入学习不足以构成高质量嵌入表达。因此,本发明利用用户与项目之间的连接信息缓解数据稀疏性对推荐性能的影响。本发明对不同稀疏度的用户组进行实验,基于每一个用户的交互记录将测试集共分为四组。例如,在Gowalla数据集中,每个用户的交互次数分别小于24、50、117、1014,如图4所示。由于Recall@20主要受空间影响,因此本发明仅讨论了对于不同活跃度的用户组的ndcg@20性能指标。
通过观察图5可以发现,GACF模型、NGCF模型以及Hop-Rec模型在所有不同活跃度的用户组上NDCG@20表现总体上优于其他模型,这表明利用用户与项目之间的高阶连接性可以促进活跃性较低的用户的嵌入学习表达,原因是利用高阶连接性可以有效的捕捉用户与项目之间的交互信息,并且图5还表明了GACF模型在缓解数据稀疏性对推荐效果的影响最为有效。
为了探究注意力机制和以不同权重聚合每一层对最终嵌入向量对模型推荐效果的影响,实验对模型的top-k推荐的有效性进行了Recall@20和NDCG@20两方面的评估,其中k分别取值为20、40、60、80、100,结果如图5所示。从图5可知,本发明模型在两个数据集上所表现出的效果均远高于其他模型,这是由于本发明模型的嵌入传播层中加入了注意力机制,使得嵌入传播层的每一层都能聚合邻居节点对目标节点的不同影响,并聚合了嵌入传播层学习到多个嵌入向量对最终嵌入向量的影响,本发明模型根据每一层学习的嵌入向量的重要性赋予它们不同的权重。综上可以说明本发明模型所推荐的前top-k列表更具个性化。
为了验证用户-项目之间的高阶连接性对提高推荐性能的有效性,从Gowalla数据集中随机选择了六名用户以及与他们相关的项目并赋予他们相同的颜色,通过观察相同颜色的项目是否更容易形成集群来验证推荐性能,更容易聚类的模型则它所表现出的推荐效果更好。本发明设计了GACF-0和GACF-3两个推荐模型,其中GACF-0表示用户与项目之间仅是单层连接,GACF-3表示用户与项目之间为三层连接,与这六名随机用户相关项目的聚类效果图如图6所示。从图6可知,GACF-3模型中用户与项目之间的关联性在嵌入空间中得到了更好的表达,图6中相同颜色的项目更容易形成集群并且更容易聚类,这也反映出本发明所提出的用户-项目高阶连接性思想对推荐表现的有效性。
本发明通过注意力机制聚合邻居节点信息,依据邻居节点的重要性为其分配不同的权值,并且本发明提出的聚合方式独立于图结构,能够有效提高模型的泛化能力。
本发明将用户与项目之间的交互数据构造成用户-项目交互图,这是一种图卷积神经网络可以处理的图数据,很好的利用了图卷积神经网络强大的建模能力,使得模型更容易训练和泛化,并且缓解了数据稀疏性对协同过滤技术的影响。
Claims (4)
1.基于图卷积注意力机制的协同过滤推荐算法,其特征在于,包括以下步骤:
步骤1:数据采集、数据处理、数据集划分;
步骤2:模型的构建;
首先将用户-项目交互图中的交互信息映射到向量空间,然后通过图卷积网络学习用户-项目交互图的嵌入表达,利用交互图的拓扑结构对用户-项目的高阶连接信息进行建模;再利用注意力机制为邻居节点分配不同的权重,聚合邻居节点的特征信息可使邻居节点之间的权重仅依赖于节点之间的特征表达,从而提高模型的泛化能力,最后将图卷积层学习到的多个嵌入向量加权聚合捕获不同卷积层的嵌入影响;
步骤3:模型训练及项目推荐:
将步骤1中得到的训练集和测试集分别用于训练和评估步骤3中构建的模型,模型通过内积得到用户-项目之间的关联分数,最终根据得到的关联分数判断是否将项目推荐给用户。
2.如权利要求1所述的基于图卷积注意力机制的协同过滤推荐算法,其特征在于,在步骤S1中:
首先下载Gowalla集,其次进行数据预处理,将采集到的欧式空间数据构造为非欧式空间数据,将用户与项目之间的交互数据构造为用户-项目交互二部图;对于数据集中每一个可以观察到的用户项目交互,将其视为正样本,然后执行负采样策略为用户没有交互的项目配对负样本。
3.如权利要求1所述的基于图卷积注意力机制的协同过滤推荐算法,其特征在于,在步骤S2中,其计算方法如下:
S201:构造嵌入层:嵌入层主要包括用户ID嵌入向量和项目ID嵌入向量两部分;
S202:构造加入注意力机制的嵌入传播层:根据嵌入层传送的用户ID/项目ID匹配其一阶邻居ID作为嵌入传播层的输入,并将其目标节点与一阶邻居节点分别送入注意力机制和哈达玛积两个模块中进行学习,将学习到的嵌入向量再送入下一层的嵌入传播层,以此类推;
S203:构造预测层:预测用户与项目之间的关联分数。
4.如权利要求1所述的基于图卷积注意力机制的协同过滤推荐算法,其特征在于,在步骤S3中,其计算方法为:
将嵌入传播层学习到的嵌入向量加权聚合为最终的嵌入向量,模型将最终的嵌入向量进行简单的内积处理得到用户与项目之间的关联分数进行预测,并为最终用户推荐可能感兴趣的项目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110363686.0A CN112905900B (zh) | 2021-04-02 | 2021-04-02 | 基于图卷积注意力机制的协同过滤推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110363686.0A CN112905900B (zh) | 2021-04-02 | 2021-04-02 | 基于图卷积注意力机制的协同过滤推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112905900A true CN112905900A (zh) | 2021-06-04 |
CN112905900B CN112905900B (zh) | 2023-11-17 |
Family
ID=76110216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110363686.0A Active CN112905900B (zh) | 2021-04-02 | 2021-04-02 | 基于图卷积注意力机制的协同过滤推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112905900B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113570058A (zh) * | 2021-09-22 | 2021-10-29 | 航天宏康智能科技(北京)有限公司 | 推荐方法和装置 |
CN113568410A (zh) * | 2021-07-29 | 2021-10-29 | 西安交通大学 | 一种异构智能体轨迹预测方法、系统、设备及介质 |
CN113672811A (zh) * | 2021-08-24 | 2021-11-19 | 广东工业大学 | 一种基于拓扑信息嵌入的超图卷积协同过滤推荐方法、系统及计算机可读存储介质 |
CN113689267A (zh) * | 2021-08-31 | 2021-11-23 | 华东师范大学 | 一种自适应卷积网络协同过滤的商品推荐方法 |
CN113688974A (zh) * | 2021-07-28 | 2021-11-23 | 湖南科技大学 | 一种基于轻量化图卷积网络的移动应用推荐方法 |
CN113744023A (zh) * | 2021-08-20 | 2021-12-03 | 太原理工大学 | 一种基于图卷积网络的双通道协同过滤推荐方法 |
CN113807422A (zh) * | 2021-09-07 | 2021-12-17 | 南京邮电大学 | 融合多特征信息的加权图卷积神经网络评分预测模型 |
CN113918834A (zh) * | 2021-10-22 | 2022-01-11 | 重庆理工大学 | 融合社交关系的图卷积协同过滤推荐方法 |
CN113918833A (zh) * | 2021-10-22 | 2022-01-11 | 重庆理工大学 | 通过社交网络关系的图卷积协同过滤实现的产品推荐方法 |
CN114130034A (zh) * | 2021-11-19 | 2022-03-04 | 天津大学 | 基于注意力机制与强化学习的多智能体游戏ai设计方法 |
CN114662009A (zh) * | 2021-12-13 | 2022-06-24 | 菏泽汇豪纺织有限公司 | 一种基于图卷积的工业互联网工厂协同推荐算法 |
CN115062732A (zh) * | 2022-08-18 | 2022-09-16 | 睿驰(深圳)智能有限公司 | 基于大数据用户标签信息的资源共享合作推荐方法及系统 |
CN115098931A (zh) * | 2022-07-20 | 2022-09-23 | 江苏艾佳家居用品有限公司 | 一种用于挖掘用户室内设计个性化需求的小样本分析方法 |
CN115221413A (zh) * | 2022-08-03 | 2022-10-21 | 湖北工业大学 | 一种基于交互式图注意力网络的序列推荐方法及系统 |
WO2023065859A1 (zh) * | 2021-10-20 | 2023-04-27 | 华为技术有限公司 | 物品推荐方法、装置及存储介质 |
WO2023087914A1 (zh) * | 2021-11-19 | 2023-05-25 | 腾讯科技(深圳)有限公司 | 推荐内容的选择方法、装置、设备、存储介质及程序产品 |
CN116542720A (zh) * | 2023-07-05 | 2023-08-04 | 湖北工业大学 | 一种基于图卷积网络的时间增强信息序列推荐方法及系统 |
CN117828514A (zh) * | 2024-03-04 | 2024-04-05 | 清华大学深圳国际研究生院 | 一种基于图结构学习的用户网络行为数据异常检测方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190362220A1 (en) * | 2018-05-25 | 2019-11-28 | Sap Se | Attentive neural collaborative filtering for modeling implicit feedback |
US20200226472A1 (en) * | 2019-01-10 | 2020-07-16 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and methods for a supra-fusion graph attention model for multi-layered embeddings and deep learning applications |
AU2020101604A4 (en) * | 2020-07-31 | 2020-09-10 | The University of Xinjiang | A Recommendation with Item Cooccurrence based on Metric Factorization |
CN111753207A (zh) * | 2020-06-29 | 2020-10-09 | 华东师范大学 | 一种基于评论的神经图协同过滤模型 |
CN112115378A (zh) * | 2020-09-16 | 2020-12-22 | 长沙理工大学 | 基于图卷积协同过滤的推荐预测系统以及推荐预测方法 |
CN112488791A (zh) * | 2020-11-30 | 2021-03-12 | 中国传媒大学 | 一种基于知识图谱卷积算法的个性化推荐方法 |
CN112541131A (zh) * | 2020-12-07 | 2021-03-23 | 东北大学 | 一种基于邻居用户的多个兴趣影响的推荐方法 |
-
2021
- 2021-04-02 CN CN202110363686.0A patent/CN112905900B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190362220A1 (en) * | 2018-05-25 | 2019-11-28 | Sap Se | Attentive neural collaborative filtering for modeling implicit feedback |
US20200226472A1 (en) * | 2019-01-10 | 2020-07-16 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and methods for a supra-fusion graph attention model for multi-layered embeddings and deep learning applications |
CN111753207A (zh) * | 2020-06-29 | 2020-10-09 | 华东师范大学 | 一种基于评论的神经图协同过滤模型 |
AU2020101604A4 (en) * | 2020-07-31 | 2020-09-10 | The University of Xinjiang | A Recommendation with Item Cooccurrence based on Metric Factorization |
CN112115378A (zh) * | 2020-09-16 | 2020-12-22 | 长沙理工大学 | 基于图卷积协同过滤的推荐预测系统以及推荐预测方法 |
CN112488791A (zh) * | 2020-11-30 | 2021-03-12 | 中国传媒大学 | 一种基于知识图谱卷积算法的个性化推荐方法 |
CN112541131A (zh) * | 2020-12-07 | 2021-03-23 | 东北大学 | 一种基于邻居用户的多个兴趣影响的推荐方法 |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688974A (zh) * | 2021-07-28 | 2021-11-23 | 湖南科技大学 | 一种基于轻量化图卷积网络的移动应用推荐方法 |
CN113688974B (zh) * | 2021-07-28 | 2023-10-24 | 湖南科技大学 | 一种基于轻量化图卷积网络的移动应用推荐方法 |
CN113568410A (zh) * | 2021-07-29 | 2021-10-29 | 西安交通大学 | 一种异构智能体轨迹预测方法、系统、设备及介质 |
CN113744023A (zh) * | 2021-08-20 | 2021-12-03 | 太原理工大学 | 一种基于图卷积网络的双通道协同过滤推荐方法 |
CN113744023B (zh) * | 2021-08-20 | 2023-09-29 | 太原理工大学 | 一种基于图卷积网络的双通道协同过滤推荐方法 |
CN113672811A (zh) * | 2021-08-24 | 2021-11-19 | 广东工业大学 | 一种基于拓扑信息嵌入的超图卷积协同过滤推荐方法、系统及计算机可读存储介质 |
CN113672811B (zh) * | 2021-08-24 | 2023-04-18 | 广东工业大学 | 一种基于拓扑信息嵌入的超图卷积协同过滤推荐方法、系统及计算机可读存储介质 |
CN113689267A (zh) * | 2021-08-31 | 2021-11-23 | 华东师范大学 | 一种自适应卷积网络协同过滤的商品推荐方法 |
CN113689267B (zh) * | 2021-08-31 | 2022-04-05 | 华东师范大学 | 一种自适应卷积网络协同过滤的商品推荐方法 |
CN113807422A (zh) * | 2021-09-07 | 2021-12-17 | 南京邮电大学 | 融合多特征信息的加权图卷积神经网络评分预测模型 |
CN113570058A (zh) * | 2021-09-22 | 2021-10-29 | 航天宏康智能科技(北京)有限公司 | 推荐方法和装置 |
WO2023065859A1 (zh) * | 2021-10-20 | 2023-04-27 | 华为技术有限公司 | 物品推荐方法、装置及存储介质 |
CN113918833A (zh) * | 2021-10-22 | 2022-01-11 | 重庆理工大学 | 通过社交网络关系的图卷积协同过滤实现的产品推荐方法 |
CN113918833B (zh) * | 2021-10-22 | 2022-08-16 | 重庆理工大学 | 通过社交网络关系的图卷积协同过滤实现的产品推荐方法 |
CN113918834B (zh) * | 2021-10-22 | 2022-10-28 | 重庆理工大学 | 融合社交关系的图卷积协同过滤推荐方法 |
CN113918834A (zh) * | 2021-10-22 | 2022-01-11 | 重庆理工大学 | 融合社交关系的图卷积协同过滤推荐方法 |
WO2023087914A1 (zh) * | 2021-11-19 | 2023-05-25 | 腾讯科技(深圳)有限公司 | 推荐内容的选择方法、装置、设备、存储介质及程序产品 |
CN114130034A (zh) * | 2021-11-19 | 2022-03-04 | 天津大学 | 基于注意力机制与强化学习的多智能体游戏ai设计方法 |
CN114662009B (zh) * | 2021-12-13 | 2022-11-18 | 菏泽汇豪纺织有限公司 | 一种基于图卷积的工业互联网工厂协同推荐方法 |
CN114662009A (zh) * | 2021-12-13 | 2022-06-24 | 菏泽汇豪纺织有限公司 | 一种基于图卷积的工业互联网工厂协同推荐算法 |
CN115098931B (zh) * | 2022-07-20 | 2022-12-16 | 江苏艾佳家居用品有限公司 | 一种用于挖掘用户室内设计个性化需求的小样本分析方法 |
CN115098931A (zh) * | 2022-07-20 | 2022-09-23 | 江苏艾佳家居用品有限公司 | 一种用于挖掘用户室内设计个性化需求的小样本分析方法 |
CN115221413A (zh) * | 2022-08-03 | 2022-10-21 | 湖北工业大学 | 一种基于交互式图注意力网络的序列推荐方法及系统 |
CN115062732A (zh) * | 2022-08-18 | 2022-09-16 | 睿驰(深圳)智能有限公司 | 基于大数据用户标签信息的资源共享合作推荐方法及系统 |
CN116542720A (zh) * | 2023-07-05 | 2023-08-04 | 湖北工业大学 | 一种基于图卷积网络的时间增强信息序列推荐方法及系统 |
CN116542720B (zh) * | 2023-07-05 | 2023-09-19 | 湖北工业大学 | 一种基于图卷积网络的时间增强信息序列推荐方法及系统 |
CN117828514A (zh) * | 2024-03-04 | 2024-04-05 | 清华大学深圳国际研究生院 | 一种基于图结构学习的用户网络行为数据异常检测方法 |
CN117828514B (zh) * | 2024-03-04 | 2024-05-03 | 清华大学深圳国际研究生院 | 一种基于图结构学习的用户网络行为数据异常检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112905900B (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112905900A (zh) | 基于图卷积注意力机制的协同过滤推荐算法 | |
US11010658B2 (en) | System and method for learning the structure of deep convolutional neural networks | |
CN112529168B (zh) | 一种基于gcn的属性多层网络表示学习方法 | |
Salaken et al. | Seeded transfer learning for regression problems with deep learning | |
CN113918832B (zh) | 基于社交关系的图卷积协同过滤推荐系统 | |
CN113918833B (zh) | 通过社交网络关系的图卷积协同过滤实现的产品推荐方法 | |
CN114357312B (zh) | 基于图神经网络自动建模的社区发现方法及个性推荐方法 | |
CN113918834B (zh) | 融合社交关系的图卷积协同过滤推荐方法 | |
CN112884045B (zh) | 基于多视角的随机删边嵌入模型的分类方法 | |
Sheng et al. | Enhanced graph neural network for session-based recommendation | |
Zhang et al. | Graph attention network with dynamic representation of relations for knowledge graph completion | |
CN116071128A (zh) | 一种基于多行为特征提取与自监督学习的多任务推荐方法 | |
CN113887694A (zh) | 一种注意力机制下基于特征表征的点击率预估模型 | |
CN117131282B (zh) | 融合层注意力机制的多视角图对比学习推荐方法与系统 | |
Gan et al. | VIGA: A variational graph autoencoder model to infer user interest representations for recommendation | |
CN113342994A (zh) | 一种基于无采样协作知识图网络的推荐系统 | |
Si et al. | Multi-label classification with high-rank and high-order label correlations | |
CN117390267A (zh) | 基于知识图谱的个性化多任务增强推荐模型 | |
Cao et al. | Implicit user relationships across sessions enhanced graph for session-based recommendation | |
CN115564013B (zh) | 提高网络表示学习表示能力的方法、模型训练方法和系统 | |
CN115660882A (zh) | 社交网络中用户间关系预测方法及多头混合聚合图卷积网络 | |
CN115982373A (zh) | 结合多级交互式对比学习的知识图谱推荐方法 | |
Yan et al. | Modeling long-and short-term user behaviors for sequential recommendation with deep neural networks | |
Li et al. | Dual-scale Contrastive Learning for multi-behavior recommendation | |
CN117171448B (zh) | 一种基于图神经网络的多行为社会化推荐方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |