CN111523047B - 基于图神经网络的多关系协同过滤算法 - Google Patents

基于图神经网络的多关系协同过滤算法 Download PDF

Info

Publication number
CN111523047B
CN111523047B CN202010283068.0A CN202010283068A CN111523047B CN 111523047 B CN111523047 B CN 111523047B CN 202010283068 A CN202010283068 A CN 202010283068A CN 111523047 B CN111523047 B CN 111523047B
Authority
CN
China
Prior art keywords
user
graph
article
node
relation
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.)
Active
Application number
CN202010283068.0A
Other languages
English (en)
Other versions
CN111523047A (zh
Inventor
邓晓衡
刘奥
李练
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN202010283068.0A priority Critical patent/CN111523047B/zh
Publication of CN111523047A publication Critical patent/CN111523047A/zh
Application granted granted Critical
Publication of CN111523047B publication Critical patent/CN111523047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Abstract

本发明提供了一种基于图神经网络的多关系协同过滤算法,包括:步骤1,对用户与物品的历史交互数据进行处理,从中抽取所有用户序列UU和物品序列SI;步骤2,分别将每个用户序列SU和每个物品序列SI分别构造为用户关系图GU=(VU,EU)和物品关系图GI=(VI,EI)。本发明所提供的基于图神经网络的多关系协同过滤算法,从用户与物品交互数据中通过构造物品关系图和用户关系图同时对物品关系和用户关系进行建模,并将多关系融入用户与物品交互的学习过程中,学习多关系对用户与物品交互的影响,从而使模型能够更好对用户偏好进行建模。

Description

基于图神经网络的多关系协同过滤算法
技术领域
本发明涉及信息处理技术领域,特别涉及一种基于图神经网络的多关系协同过滤算法。
背景技术
协同过滤是在工业界中应用最广泛的推荐算法之一,可以有效解决海量数据带来的“信息过载”问题。协同过滤可以基于用户与物品的历史交互数据(如评分、点击)学习用户的偏好,从而为用户生成新的推荐内容。好的推荐算法不仅能够帮助用户找到感兴趣的内容,提升用户体验,还能为商家增加流量,创造丰厚的利润。
然而传统的协同过滤模型,如矩阵分解,神经协同过滤等,在对用户偏好进行建模时往往只考虑了用户与物品之间的关系,而忽视了物品之间的关系和用户之间的关系,从而不足以从用户与物品历史交互中充分地学习到用户的偏好,用户与物品的交互行为通常受到两方面因素的影响:1.用户的历史偏好,由用户历史交互过的物品之间的关系所体现,能直接影响用户对一个新物品的兴趣,现有的考虑物品关系的协同过滤算法并没有考虑到用户角色在用户与物品交互中的重要作用;2.用户的社交关系,即用户之间的关系,一个用户的偏好往往受到其社交朋友的影响,从而间接的影响用户的决策行为,而现有的考虑用户关系的推荐模型同样也没有考虑到物品之间复杂的关系,而且需要明确的社交关系数据,这在现实中往往难以获取,另外,传统的推荐模型也没有考虑不同历史物品(用户)的关系对模型预测用户偏好的贡献是不同的。
综上所述,在协同过滤中,同时考虑用户与物品、物品与物品以及用户与用户之间的多种关系对与用户偏好的建模是至关重要的。
发明内容
本发明提供了一种基于图神经网络的多关系协同过滤算法,其目的是为了解决传统的协同过滤模型在对用户偏好进行建模时往往只考虑了用户与物品之间的关系,而忽视了物品之间的关系和用户之间的关系,从而不足以从用户与物品历史交互中充分地学习到用户的偏好的问题。
为了达到上述目的,本发明的实施例提供了一种基于图神经网络的多关系协同过滤算法,包括:
步骤1,对用户与物品的历史交互数据进行处理,从中抽取所有用户序列SU和物品序列SI
步骤2,分别将每个用户序列SU和每个物品序列SI分别构造为用户关系图GU=(VU,EU)和物品关系图GI=(VI,EI),其中,VU为用户关系图中的所有用户节点,EU为用户关系图中的用户节点之间边的集合,VI为物品关系图中的所有物品节点,EI为物品关系图中的物品节点之间边的集合;
步骤3,同时将用户ID、物品ID和对应的用户关系图GU、物品关系图GI输入到MRCF模型中,通过初始化嵌入矩阵Eu、Ei
Figure BDA0002447442630000021
分别将用户ID、物品ID、用户关系图中的用户节点和物品关系图中的物品节点映射为嵌入向量,分别表示为eu∈Rd、ei∈Rd
Figure BDA0002447442630000022
Figure BDA0002447442630000023
其中,d表示嵌入向量的维度;
步骤4,对步骤3中得到的用户关系图和物品关系图中的节点嵌入向量
Figure BDA0002447442630000024
Figure BDA0002447442630000025
通过关系化图神经网络来学习用户关系图中的用户节点之间的复杂关系和物品关系图中物品节点之间的复杂关系,得到不断更新之后的节点嵌入向量
Figure BDA0002447442630000026
Figure BDA0002447442630000027
步骤5,对于步骤4得到的所有节点更新之后的嵌入向量
Figure BDA0002447442630000028
Figure BDA0002447442630000029
可以组成用户关系图的嵌入矩阵Gu和物品关系图的嵌入矩阵Gi,再通过简单点积注意力机制学习不同历史用户节点关系对目标用户的影响和不同历史物品节点关系对目标物品的影响,并生成用户关系图和物品关系图的全局表示gu和gi
步骤6,对于步骤3得到的用户ID和物品ID的嵌入向量eu和ei,步骤5得到的对应的用户关系图和物品关系图的全局表示gu和gi,将用户关系图的全局表示gu和用户ID的嵌入向量eu相连接,将物品关系图的全局表示gi与物品ID的嵌入向量ei相连接;
步骤7,通过训练模型,最小化模型的损失函数,计算出损失函数的梯度,通过梯度的反向传播优化模型的参数,生成满意的推荐效果的推荐模型。
其中,所述步骤3具体包括:
MRCF模型设置有输入与嵌入层、关系化图神经网络、简单点积注意力机制、交互层和预测层;
输入与嵌入层分别将一个用户ID映射为一个嵌入向量和一个物品ID映射为一个嵌入向量,符号分别为eu∈Rd和ei∈Rd,并将用户关系图和物品关系图中节点的嵌入向量分别描述为
Figure BDA0002447442630000031
Figure BDA0002447442630000032
其中,d表示嵌入向量的维度;通过构造一个参数矩阵,实现一个嵌入向量的查找表如下所示:
Figure BDA0002447442630000033
其中,u表示用户,i表示物品,M和N分别表示用户和物品的数目。
其中,所述步骤4具体包括:
关系化图神经网络将用户与物品的交互显式地建模并且融合到学习物品关系图和用户关系图中节点的嵌入向量的过程中,关系化图神经网络在每次更新物品关系图中节点的嵌入向量前对节点的嵌入向量的信息进行重新构建如下所示:
Figure BDA0002447442630000034
其中,
Figure BDA0002447442630000035
表示重新构建后的节点的嵌入向量,Wr表示可以训练的权重矩阵,将节点信息映射到潜在空间中,将用户u和物品i的交互信息通过
Figure BDA0002447442630000036
的方式编码进了节点的信息传递中,⊙表示逐元素相乘,
Figure BDA0002447442630000037
表示归一化系数,Nu表示用户u历史交互过所有的物品;
使节点信息在物品关系图中进行传播,即为每个节点汇聚它们邻居节点的嵌入向量,例如,在第t个时间步,第k个物品节点的信息传播过程可以定义为如下公式:
Figure BDA0002447442630000041
其中,T表示节点信息传播的次数,A表示用户u对应的物品关系图的邻接矩阵,Ak表示邻接矩阵的第k列,表示了节点k与其他节点的邻接关系,若物品i与物品j相连,则Aij=wij,否则为0,ak为汇聚了节点k的所有邻居节点之后的信息,在节点之间的信息传递完成后,使用门控循环单元来控制上一个时间步的邻居节点的信息的融入,并且更新当前节点的嵌入向量:
生成更新门如下所示:
Figure BDA0002447442630000042
其中,z表示更新门;
生成重置门如下所示:
Figure BDA0002447442630000043
其中,r表示重置门;
生成节点当前时间步的侯选嵌入向量如下所示:
Figure BDA0002447442630000044
在门的控制下,将侯选嵌入向量和节点上一个时间步的嵌入向量进行合并,作为节点的更新之后的嵌入向量如下所示:
Figure BDA0002447442630000045
在节点信息传播了T次步骤之后,得到物品关系图中每个节点最终的嵌入向量
Figure BDA0002447442630000046
使用
Figure BDA0002447442630000047
代替
Figure BDA0002447442630000048
物品关系图中每个节点的最终嵌入向量不仅包含了节点自身的特征,还包含了T跳的邻居节点的特征。
其中,所述步骤5具体包括:
对于步骤4中所得到更新之后的图节点嵌入向量,提出了一种改进的点积注意力机制:简单点积注意力机制,显式的建模关系图对目标用户和目标物品的影响,并且赋予每个节点嵌入不一样的权重后汇聚生成关系图的动态全局表示,简单点积注意力机制的形式化表示如下所示:
Figure BDA0002447442630000051
其中,Q,K,V分别代表向量矩阵,Q表示queries,k表示keys,V表示values,Wq表示用于映射的参数矩阵,
Figure BDA0002447442630000052
表示缩放因子,为了防止点积操作产生过大的输出值将Softmax函数推入梯度极小的区域;
使用当前的用户嵌入向量eu或物品嵌入向量ei作为Q,用户关系图或物品关系图中的节点嵌入同时作为k和V,用户关系图中节点的嵌入矩阵可以被定义为
Figure BDA0002447442630000053
物品关系图中节点的嵌入矩阵可以被定义为
Figure BDA0002447442630000054
Figure BDA0002447442630000055
因此,注意力函数的输入中Q等同于用户的嵌入向量eu或物品的嵌入向量ei,K和V等同于用户关系图中的节点嵌入矩阵Gu或者物品关系图中的节点嵌入矩阵Gi,关系图中节点嵌入向量对当前用户或者物品的影响可以用以下公式计算:
gu=Attention(eu,Gu,Gu) (9)
gi=Attention(ei,Gi,Gi) (10)
其中,eu或ei等同于公式(8)中输入的Q,gu或gi等同于公式(8)中输入的K和V,Gu表示用户关系图中节点的嵌入矩阵,Gi表示物品关系图中节点的嵌入矩阵。
其中,所述步骤6具体包括:
将用户关系图的全局表示gu和用户ID的嵌入向量eu相连接,将物品关系图的全局表示gi与物品ID的嵌入向量ei相连接如下所示:
Figure BDA0002447442630000056
其中,
Figure BDA0002447442630000057
表示目标用户最终向量表示,
Figure BDA0002447442630000058
表示目标物品的最终向量表示,式(11)中“||”符号表示向量连接操作,通过这种方式,能学习到用户关系对目标用户的影响,还能学习到物品关系对目标物品的影响。
其中,所述步骤6还包括:
多层感知机的具体形式为:
Figure BDA0002447442630000059
Figure BDA0002447442630000061
其中,WL表示第L层感知机的权重矩阵,bL表示第L层感知机的偏置向量,ACT表示激活函数,aL表示第L层感知机的输入向量;通过多层感知机学习
Figure BDA0002447442630000062
Figure BDA0002447442630000063
之间的高阶交互,最后预测用户对物品的交互分数
Figure BDA0002447442630000064
所述基于图神经网络的多关系协同过滤算法使用整流线性单元作为激活函数,在获得了交互层的输出aL后,计算预测分数
Figure BDA0002447442630000065
作为用户和物品交互的概率,计算方式如下:
Figure BDA0002447442630000066
其中,σ(·)是sigmoid函数,W表示预测层的权重矩阵,通过公式(13),MRCF模型会输出一个0到1范围内的值,作为预测用户对物品的兴趣值。
其中,所述步骤7具体包括:
MRCF模型的损失函数采用的是二元交叉熵损失函数,如下所示:
Figure BDA0002447442630000067
其中,
Figure BDA0002447442630000068
表示MRCF模型预测用户u对物品i的交互分数,yui表示训练样本中用户u对物品i的真实交互分数。
本发明的上述方案有如下的有益效果:
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,从用户与物品交互数据中通过构造物品关系图和用户关系图同时对物品关系和用户关系进行建模,通过关系化图神经网络学习图中物品之间的高阶关系和用户之间的高阶关系,通过简单点积注意力机制可以为关系图中每个物品节点和每个用户节点计算不同的权重,从而学习不同历史物品对目标物品的影响和不同历史用户对目标用户的影响,能够有效地对多关系建模,并将多关系融入用户与物品交互的学习过程中,学习多关系对用户与物品交互的影响,从而使模型能够更好对用户偏好进行建模。
附图说明
图1为本发明的多关系建模图;
图2为本发明的模型架构图;
图3为本发明的实验结果比较图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的协同过滤模型在对用户偏好进行建模时往往只考虑了用户与物品之间的关系,而忽视了物品之间的关系和用户之间的关系,从而不足以从用户与物品历史交互中充分地学习到用户的偏好的问题,提供了一种基于图神经网络的多关系协同过滤算法。
如图1至图3所示,本发明的实施例提供了一种基于图神经网络的多关系协同过滤算法,包括:步骤1,对用户与物品的历史交互数据进行处理,从中抽取所有用户序列SU和物品序列SI;步骤2,分别将每个用户序列SU和每个物品序列SI分别构造为用户关系图GU=(VU,EU)和物品关系图GI=(VI,EI),其中,VU为用户关系图中的所有用户节点,EU为用户关系图中的用户节点之间边的集合,VI为物品关系图中的所有物品节点,EI为物品关系图中的物品节点之间边的集合;步骤3,同时将用户ID、物品ID和对应的用户关系图GU、物品关系图GI输入到MRCF模型中,通过初始化嵌入矩阵Eu、Ei
Figure BDA0002447442630000071
分别将用户ID、物品ID、用户关系图中的用户节点和物品关系图中的物品节点映射为嵌入向量,分别表示为eu∈Rd、ei∈Rd
Figure BDA0002447442630000072
Figure BDA0002447442630000073
其中,d表示嵌入向量的维度;步骤4,对步骤3中得到的用户关系图和物品关系图中的节点嵌入向量
Figure BDA0002447442630000074
Figure BDA0002447442630000075
通过关系化图神经网络来学习用户关系图中的用户节点之间的复杂关系和物品关系图中物品节点之间的复杂关系,得到不断更新之后的节点嵌入向量
Figure BDA0002447442630000076
Figure BDA0002447442630000077
步骤5,对于步骤4得到的所有节点更新之后的嵌入向量
Figure BDA0002447442630000078
Figure BDA0002447442630000079
可以组成用户关系图的嵌入矩阵Gu和物品关系图的嵌入矩阵Gi,再通过简单点积注意力机制学习不同历史用户节点关系对目标用户的影响和不同历史物品节点关系对目标物品的影响,并生成用户关系图和物品关系图的全局表示gu和gi;步骤6,对于步骤3得到的用户ID和物品ID的嵌入向量eu和ei,步骤5得到的对应的用户关系图和物品关系图的全局表示gu和gi,将用户关系图的全局表示gu和用户ID的嵌入向量eu相连接,将物品关系图的全局表示gi与物品ID的嵌入向量ei相连接;步骤7,通过训练模型,最小化模型的损失函数,计算出损失函数的梯度,通过梯度的反向传播优化模型的参数,生成满意的推荐效果的推荐模型。
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,物品序列为一个用户历史交互过的所有物品组成,并按照时间戳进行排序,属于同一个物品序列的所有物品之间的关系体现了用户的历史偏好,同样,用户序列为与同一个物品有过交互的所有用户组成,按照时间戳排序,根据集体智慧的思想,可以认为与同一个物品产生过交互的不同用户之间存在着一定的协同相似度,隐含着他们之间的协同关系,通过隐式反馈数据构建的用户关系,称之为“隐式社交关系”,所述基于图神经网络的多关系协同过滤算法并不需要明确的社交关系数据,从而更具有一般性。通过引入了图结构分别对复杂的物品关系和用户关系进行建模,图1描述了多关系的建模流程图,从图1中可以发现图结构的数据比序列结构包含了更丰富的信息,越能体现物品之间复杂的联系和用户之间复杂的联系,例如,图1(b)中的物品关系图中的物品节点i2、i3和i4组成了的强连通分量,反映了它们之间密切的链接关系,这是序列结构数据很难捕捉到的。所述步骤2中的物品关系图具体的构图规则为:对于一个用户u,它的物品序列可以表示为一个序列
Figure BDA0002447442630000081
并且按照时间戳进行排序,其中,iu,k∈I表示曾与用户u产生过交互行为的物品。因大量的数据,对于计算成本和空间成本太昂贵,用户的兴趣往往会随着时间的推移而发生变化,时间越近的行为越能够表达出用户的近期偏好,则不能使用用户的全部历史行为信息,基于如上的考虑,选择每个用户的最近交互的K个物品,如果两个物品在序列中接连的出现,那么它们之间就由一条有向边相连。例如:一条边
Figure BDA0002447442630000082
表示一个用户在行为序列中接连的访问了物品is,k-1和物品is,k,见图1。由于可能会在序列中重复出现多个物品,因此,根据两个关联物品的出现总数除以该边缘的起始节点的出度,为每个边缘分配归一化的权重wij,具体而言,边的权重wij等于行为历史中转移到物品i的物品j的归一化频率,这样,构造的物品关系图可以基于隐式数据表示物品的协作相似性和复杂过渡。用户关系图的构建与物品关系图的构建规则同理。
其中,所述步骤3具体包括:MRCF模型设置有输入与嵌入层、关系化图神经网络、简单点积注意力机制、交互层和预测层;
输入与嵌入层分别将一个用户ID映射为一个嵌入向量和一个物品ID映射为一个嵌入向量,符号分别为eu∈Rd和ei∈Rd,并将用户关系图和物品关系图中节点的嵌入向量分别描述为
Figure BDA0002447442630000091
Figure BDA0002447442630000092
其中,d表示嵌入向量的维度;通过构造一个参数矩阵,实现一个嵌入向量的查找表如下所示:
Figure BDA0002447442630000093
其中,u表示用户,i表示物品,M和N分别表示用户和物品的数目。
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,用户ID与用户关系图中的节点不共享嵌入向量,物品ID与物品关系图中的节点不共享嵌入向量,使MRCF模型更加灵活并且能更好的学习向量表征。
其中,所述步骤4具体包括:
关系化图神经网络将用户与物品的交互显式地建模并且融合到学习物品关系图和用户关系图中节点的嵌入向量的过程中,关系化图神经网络在每次更新物品关系图中节点的嵌入向量前对节点的嵌入向量的信息进行重新构建如下所示:
Figure BDA0002447442630000094
其中,
Figure BDA0002447442630000095
表示重新构建后的节点的嵌入向量,Wr表示可以训练的权重矩阵,将节点信息映射到潜在空间中,将用户u和物品i的交互信息通过
Figure BDA0002447442630000096
的方式编码进了节点的信息传递中,⊙表示逐元素相乘,
Figure BDA0002447442630000097
表示归一化系数,Nu表示用户u历史交互过所有的物品;
使节点信息在物品关系图中进行传播,即为每个节点汇聚它们邻居节点的嵌入向量,例如,在第t个时间步,第k个物品节点的信息传播过程可以定义为如下公式:
Figure BDA0002447442630000098
其中,T表示节点信息传播的次数,A表示用户u对应的物品关系图的邻接矩阵,Ak表示邻接矩阵的第k列,表示了节点k与其他节点的邻接关系,若物品i与物品j相连,则Aij=wij,否则为0,ak为汇聚了节点k的所有邻居节点之后的信息,在节点之间的信息传递完成后,使用门控循环单元来控制上一个时间步的邻居节点的信息的融入,并且更新当前节点的嵌入向量:
生成更新门如下所示:
Figure BDA0002447442630000101
其中,z表示更新门;
生成重置门如下所示:
Figure BDA0002447442630000102
其中,r表示重置门;
生成节点当前时间步的侯选嵌入向量如下所示:
Figure BDA0002447442630000103
在门的控制下,将侯选嵌入向量和节点上一个时间步的嵌入向量进行合并,作为节点的更新之后的嵌入向量如下所示:
Figure BDA0002447442630000104
在节点信息传播了T次步骤之后,得到物品关系图中每个节点最终的嵌入向量
Figure BDA0002447442630000105
使用
Figure BDA0002447442630000106
代替
Figure BDA0002447442630000107
物品关系图中每个节点的最终嵌入向量不仅包含了节点自身的特征,还包含了T跳的邻居节点的特征。
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,提出了一种新的图神经网络结构,称作关系化图神经网络,关系化图神经网络基于门控图神经网络(Gated Graph Neural Networks,GGNN)改进而来,关系化图神经网络能将用户与物品的交互显式地建模并且融合到学习物品关系图中节点的嵌入向量和用户关系图中节点的嵌入向量的过程中,关系化图神经网络不仅可以学习图中物品节点之间和用户节点之间的高阶关系,还能将用户于物品的交互信号融入到学习过程中,通过式(2)-式(7)的操作可以得到更新之后物品关系图中每个物品节点的向量表示,更新之后用户关系图中每个用户节点的向量表示也可以通过式(2)-式(7)类似的操作得到,更新门和重置门,控制哪些信息应该被保留和丢弃,T表示节点信息传播的次数,传一次就是一跳邻居,即关系化图神经网络的层数,一层就等于传播一次。
其中,所述步骤5具体包括:对于步骤4中所得到更新之后的图节点嵌入向量,提出了一种改进的点积注意力机制:简单点积注意力机制,显式的建模关系图对目标用户和目标物品的影响,并且赋予每个节点嵌入不一样的权重后汇聚生成关系图的动态全局表示,简单点积注意力机制的形式化表示如下所示:
Figure BDA0002447442630000111
其中,Q,K,V分别代表向量矩阵,Q表示queries,k表示keys,V表示values,Wq表示用于映射的参数矩阵,
Figure BDA0002447442630000112
表示缩放因子,为了防止点积操作产生过大的输出值将Softmax函数推入梯度极小的区域;
使用当前的用户嵌入向量eu或物品嵌入向量ei作为Q,用户关系图或物品关系图中的节点嵌入同时作为k和V,用户关系图中节点的嵌入矩阵可以被定义为
Figure BDA0002447442630000113
物品关系图中节点的嵌入矩阵可以被定义为
Figure BDA0002447442630000114
Figure BDA0002447442630000115
因此,注意力函数的输入中Q等同于用户的嵌入向量eu或物品的嵌入向量ei,K和V等同于用户关系图中的节点嵌入矩阵Gu或者物品关系图中的节点嵌入矩阵Gi,关系图中节点嵌入向量对当前用户或者物品的影响可以用以下公式计算:
gu=Attention(eu,Gu,Gu) (9)
gi=Attention(ei,Gi,Gi) (10)
其中,eu或ei等同于公式(8)中输入的Q,gu或gi等同于公式(8)中输入的K和V,Gu表示用户关系图中节点的嵌入矩阵,Gi表示物品关系图中节点的嵌入矩阵。
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,可以注意到简单点积注意力机制只在最后对Softmax函数之后应用了非线性变换,参数量仅为原始Transformer中的点积注意力机制的参数三分之一,有助于加快模型训练速度,这是一种更加简单注意力的方式。
其中,所述步骤6具体包括:将用户关系图的全局表示gu和用户ID的嵌入向量eu相连接,将物品关系图的全局表示gu与物品ID的嵌入向量ei相连接如下所示:
Figure BDA0002447442630000121
其中,
Figure BDA0002447442630000122
表示目标用户最终向量表示,
Figure BDA0002447442630000123
表示目标物品的最终向量表示,式(11)中“||”符号表示向量连接操作,通过这种方式,能学习到用户关系对目标用户的影响,还能学习到物品关系对目标物品的影响。
其中,所述步骤6还包括:多层感知机的具体形式为:
Figure BDA0002447442630000124
其中,WL表示第L层感知机的权重矩阵,bL表示第L层感知机的偏置向量,ACT表示激活函数,aL表示第L层感知机的输入向量;通过多层感知机学习
Figure BDA0002447442630000125
Figure BDA0002447442630000126
之间的高阶交互,最后预测用户对物品的交互分数
Figure BDA0002447442630000127
所述基于图神经网络的多关系协同过滤算法使用整流线性单元作为激活函数,在获得了交互层的输出aL后,计算预测分数
Figure BDA0002447442630000128
作为用户和物品交互的概率,计算方式如下:
Figure BDA0002447442630000129
其中,σ(·)是sigmoid函数,W表示预测层的权重矩阵,通过公式(13),MRCF模型会输出一个0到1范围内的值,作为预测用户对物品的兴趣值。
其中,所述步骤7具体包括:MRCF模型的损失函数采用的是二元交叉熵损失函数,如下所示:
Figure BDA00024474426300001210
其中,
Figure BDA00024474426300001211
表示MRCF模型预测用户u对物品i的交互分数,yui表示训练样本中用户u对物品i的真实交互分数。
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,可以用任何编程语言实现部署,通过在两个真实世界的数据集下进行实验,使用常用推荐指标HR和NDCG评估模型效果,为了评估所述基于图神经网络的多关系协同过滤算法在推荐任务上的表现,基于三个真实世界中推荐数据集进行实验分析:MovieLens,Amazon music(Amusic)和Retailrocket。这些数据集在场景主题,大小,稀疏性都有所不同,并且在网上都能公开获取,然后将所述基于图神经网络的多关系协同过滤算法与五个对比算法进行对比实验,使用常用推荐评价指标HR和NDCG进行评估实验效果。
采用了留一法(Leave-one-out)作为模型的评估方法,对于每个用户,保留他最近的一次交互数据作为测试集,其余的作为训练集,由于在评估阶段,对于每一个用户都与全部的物品进行评估排序是非常耗时的,所以遵循以下的策略:在用户没有交互过的物品中随机采样99个物品,与用户的最近的一次交互的物品组成测试集,对于这100个测试物品,模型将会对其预测用户感兴趣的概率并且排序,使用两个评价指标来衡量模型推荐的质量:Hit Ratio(HR)和Normalized discounted cumulative gain(NDCG)。HR@k是衡量推荐任务中召回率的常用指标,用来测量测试物品是否在推荐列表的前k位(1表示在,0表示不在)。NDCG@k是一个常用的衡量推荐列表排序质量的指标,正样本被排序在列表的越前面则得到的分数越高。
对五个不同的对比算法进行说明:ItemPop:这是一种非个性化的方法,常作为推荐任务的基准。它根据商品的流行度进行排序,例如物品被交互过的次数,然后向用户推荐最热门的一些物品。MF:这是标准的矩阵分解方法,通过物品向量和用户向量的点积来建模用户的偏好。NeuMF:神经因子分解机模型通过利用多层感知机来建模用户-物品交互的高阶特征,对MF模型进行了扩展。NAIS:此方法使用注意力机制对用户交互过的物品进行聚集,考虑了物品与物品之间的关系,是前沿的推荐算法。DeepICF:此方法是ItemCF的变种,使用深度神经网络对物品之间的高阶关系进行建模从而进行推荐。
对实验参数设置进行详细说明:为了公平起见,对于每一个模型,都会在验证集上使用网格搜索进行调参,选取每个模型表现最好的超参数,验证集由每个用户最近的第二次交互的物品组成。使用Adam方法优化除了ItemPop之外的所有的模型,其中嵌入向量的维度batch_size的大小固定为256。为了防止过拟合,对于每个基于学习的模型,在{1e-5,1e-4,…,1}范围对正则化系数lambda进行调整。至于嵌入向量的大小d,在实验中评估了{16,32,64,128}范围中的值。对于MRCF模型的交互层设置为两层隐藏全连接网络,维度分别为200,80。对于负采样比例,在范围{2,3,4,5}中进行调整。所有模型都是从头开始训练,使用Xavier初始化方法对基于学习的模型参数的进行初始化。关于学习率,在范围{0.00001,0.0001,…,0.1}之间进行调整。对于MRCF模型,物品序列和用户序列的最大值K的选取范围为{20,30,50,80,100}。对于基线方法的其他的参数,使用默认值。
实验分析:图3汇总了每个模型在不同数据集上的结果,通过对实验结果进行分析,观察到:MRCF模型一直在所有的数据集上表现最好,取得了最高的HR、NDCG分数,MRCF模型通过关系化图神经网络同时学习用户之间的高阶关系和物品之间的高阶关系,而MF,NeuMF仅仅考虑了用户和物品之间的关系,这说明了多关系对用户偏好影响的重要性。此外,相比于DeepICF模型,MRCF模型使用图结构建模用户之间丰富的联系和物品之间丰富的联系,使用关系化图神经网络学习关系图中用户节点之间的高阶关系和物品节点之间的高阶关系,并且通过简单点积注意力机制捕捉不同用户对目标用户影响的关系强弱和不同物品对目标物品影响的关系强弱,最后再利用多层感知机将用户关系和物品关系融入到用户与物品交互的学习过程中,而DeepICF和NAIS并没有显式的对用户间的复杂关系和物品间的复杂关系进行建模,也没有考虑到用户偏好的动态变化,由实验结果可以得出,相较于其他的推荐算法,所述基于图神经网络的多关系协同过滤算法可以有效提升推荐效果。
本发明的上述实施例所述的基于图神经网络的多关系协同过滤算法,同时考虑了物品关系和用户关系对用户偏好的影响,有效提升推荐效果,基于用户与物品交互数据,通过将物品序列和用户序列构造成图,分别对物品之间的复杂关系和用户之间的复杂关系进行了建模,提出了关系化图神经网络,学习用户关系图中用户节点之间的高阶关系和物品关系图中物品节点之间的高阶关系,提出了简单点积注意力机制,学习不同历史用户对目标用户的影响和不同历史物品对目标物品的影响。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (5)

1.一种基于图神经网络的多关系协同过滤方法,其特征在于,包括:
步骤1,对用户与物品的历史交互数据进行处理,从中抽取所有用户序列SU和物品序列SI
步骤2,分别将每个用户序列SU和每个物品序列SI分别构造为用户关系图GU=(VU,EU)和物品关系图GI=(VI,EI),其中,VU为用户关系图中的所有用户节点,EU为用户关系图中的用户节点之间边的集合,VI为物品关系图中的所有物品节点,EI为物品关系图中的物品节点之间边的集合;
步骤3,同时将用户ID、物品ID和对应的用户关系图GU、物品关系图GI输入到MRCF模型中,通过初始化嵌入矩阵分别将用户ID、物品ID、用户关系图中的用户节点和物品关系图中的物品节点映射为嵌入向量,分别表示为eu∈Rd、ei∈Rd
Figure FDA0003651225000000011
Figure FDA0003651225000000012
其中,d表示嵌入向量的维度;具体包括:
MRCF模型设置有输入与嵌入层、关系化图神经网络、简单点积注意力机制、交互层和预测层;
输入与嵌入层分别将一个用户ID映射为一个嵌入向量和一个物品ID映射为一个嵌入向量,符号分别为eu∈Rd和ei∈Rd,并将用户关系图和物品关系图中节点的嵌入向量分别描述为
Figure FDA0003651225000000013
Figure FDA0003651225000000014
其中,d表示嵌入向量的维度;通过构造一个参数矩阵,实现一个嵌入向量的查找表如下所示:
Figure FDA0003651225000000015
其中,u表示用户,i表示物品,M和N分别表示用户和物品的数目;
步骤4,对步骤3中得到的用户关系图和物品关系图中的节点嵌入向量
Figure FDA0003651225000000016
Figure FDA0003651225000000017
通过关系化图神经网络来学习用户关系图中的用户节点之间的复杂关系和物品关系图中物品节点之间的复杂关系,得到不断更新之后的节点嵌入向量
Figure FDA0003651225000000018
Figure FDA0003651225000000019
步骤5,对于步骤4得到的所有节点更新之后的嵌入向量
Figure FDA00036512250000000110
Figure FDA00036512250000000111
可以组成用户关系图的嵌入矩阵Gu和物品关系图的嵌入矩阵Gi,再通过简单点积注意力机制学习不同历史用户节点关系对目标用户的影响和不同历史物品节点关系对目标物品的影响,并生成用户关系图和物品关系图的全局表示gu和gi
其中,所述步骤5具体包括:
对于步骤4中所得到更新之后的图节点嵌入向量,提出了一种改进的点积注意力机制:简单点积注意力机制,显式的建模关系图对目标用户和目标物品的影响,并且赋予每个节点嵌入不一样的权重后汇聚生成关系图的动态全局表示,简单点积注意力机制的形式化表示如下所示:
Figure FDA0003651225000000021
其中,Q,K,V分别代表向量矩阵,Q表示queries,k表示keys,V表示values,Wq表示用于映射的参数矩阵,
Figure FDA0003651225000000022
表示缩放因子,为了防止点积操作产生过大的输出值将Softmax函数推入梯度极小的区域;
使用当前的用户嵌入向量eu或物品嵌入向量ei作为Q,用户关系图或物品关系图中的节点嵌入同时作为k和V,用户关系图中节点的嵌入矩阵可以被定义为
Figure FDA0003651225000000023
物品关系图中节点的嵌入矩阵可以被定义为
Figure FDA0003651225000000024
Figure FDA0003651225000000025
因此,注意力函数的输入中Q等同于用户的嵌入向量eu或物品的嵌入向量ei,K和V等同于用户关系图中的节点嵌入矩阵Gu或者物品关系图中的节点嵌入矩阵Gi,关系图中节点嵌入向量对当前用户或者物品的影响可以用以下公式计算:
gu=Attention(eu,Gu,Gu) (9)
gi=Attention(ei,Gi,Gi) (10)
其中,eu或ei等同于公式(8)中输入的Q,gu或gi等同于公式(8)中输入的K和V,Gu表示用户关系图中节点的嵌入矩阵,Gi表示物品关系图中节点的嵌入矩阵;
步骤6,对于步骤3得到的用户ID和物品ID的嵌入向量eu和ei,步骤5得到的对应的用户关系图和物品关系图的全局表示gu和gi,将用户关系图的全局表示gu和用户ID的嵌入向量eu相连接,将物品关系图的全局表示gi与物品ID的嵌入向量ei相连接;
步骤7,通过训练模型,最小化模型的损失函数,计算出损失函数的梯度,通过梯度的反向传播优化模型的参数,生成推荐模型。
2.根据权利要求1所述的基于图神经网络的多关系协同过滤方法,其特征在于,所述步骤4具体包括:
关系化图神经网络将用户与物品的交互显式地建模并且融合到学习物品关系图和用户关系图中节点的嵌入向量的过程中,关系化图神经网络在每次更新物品关系图中节点的嵌入向量前对节点的嵌入向量的信息进行重新构建如下所示:
Figure FDA0003651225000000031
其中,
Figure FDA0003651225000000032
表示重新构建后的节点的嵌入向量,Wr表示可以训练的权重矩阵,将节点信息映射到潜在空间中,将用户u和物品i的交互信息通过
Figure FDA0003651225000000033
的方式编码进了节点的信息传递中,⊙表示逐元素相乘,
Figure FDA0003651225000000034
表示归一化系数,Nu表示用户u历史交互过所有的物品;
使节点信息在物品关系图中进行传播,即为每个节点汇聚它们邻居节点的嵌入向量,在第t个时间步,第k个物品节点的信息传播过程可以定义为如下公式:
Figure FDA0003651225000000035
其中,T表示节点信息传播的次数,A表示用户u对应的物品关系图的邻接矩阵,Ak表示邻接矩阵的第k列,表示了节点k与其他节点的邻接关系,若物品i与物品j相连,则Aij=wij,否则为0,ak为汇聚了节点k的所有邻居节点之后的信息,在节点之间的信息传递完成后,使用门控循环单元来控制上一个时间步的邻居节点的信息的融入,并且更新当前节点的嵌入向量:
生成更新门如下所示:
Figure FDA0003651225000000036
其中,z表示更新门;
生成重置门如下所示:
Figure FDA0003651225000000041
其中,r表示重置门;
生成节点当前时间步的侯选嵌入向量如下所示:
Figure FDA0003651225000000042
在门的控制下,将侯选嵌入向量和节点上一个时间步的嵌入向量进行合并,作为节点的更新之后的嵌入向量如下所示:
Figure FDA0003651225000000043
在节点信息传播了T次步骤之后,得到物品关系图中每个节点最终的嵌入向量
Figure FDA0003651225000000044
使用
Figure FDA0003651225000000045
代替
Figure FDA0003651225000000046
物品关系图中每个节点的最终嵌入向量不仅包含了节点自身的特征,还包含了T跳的邻居节点的特征。
3.根据权利要求2所述的基于图神经网络的多关系协同过滤方法,其特征在于,所述步骤6具体包括:
将用户关系图的全局表示gu和用户ID的嵌入向量eu相连接,将物品关系图的全局表示gi与物品ID的嵌入向量ei相连接如下所示:
Figure FDA0003651225000000047
其中,
Figure FDA0003651225000000048
表示目标用户最终向量表示,
Figure FDA0003651225000000049
表示目标物品的最终向量表示,式(11)中“||”符号表示向量连接操作,通过这种方式,能学习到用户关系对目标用户的影响,还能学习到物品关系对目标物品的影响。
4.根据权利要求3所述的基于图神经网络的多关系协同过滤方法,其特征在于,所述步骤6还包括:
多层感知机的具体形式为:
Figure FDA00036512250000000410
其中,WL表示第L层感知机的权重矩阵,bL表示第L层感知机的偏置向量,ACT表示激活函数,aL表示第L层感知机的输入向量;通过多层感知机学习
Figure FDA0003651225000000051
Figure FDA0003651225000000052
之间的高阶交互,最后预测用户对物品的交互分数
Figure FDA0003651225000000053
所述基于图神经网络的多关系协同过滤方法使用整流线性单元作为激活函数,在获得了交互层的输出aL后,计算预测分数
Figure FDA0003651225000000054
作为用户和物品交互的概率,计算方式如下:
Figure FDA0003651225000000055
其中,σ(·)是sigmoid函数,W表示预测层的权重矩阵,通过公式(13),MRCF模型会输出一个0到1范围内的值,作为预测用户对物品的兴趣值。
5.根据权利要求4所述的基于图神经网络的多关系协同过滤方法,其特征在于,所述步骤7具体包括:
MRCF模型的损失函数采用的是二元交叉熵损失函数,如下所示:
Figure FDA0003651225000000056
其中,
Figure FDA0003651225000000057
表示MRCF模型预测用户u对物品i的交互分数,yui表示训练样本中用户u对物品i的真实交互分数。
CN202010283068.0A 2020-04-13 2020-04-13 基于图神经网络的多关系协同过滤算法 Active CN111523047B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010283068.0A CN111523047B (zh) 2020-04-13 2020-04-13 基于图神经网络的多关系协同过滤算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010283068.0A CN111523047B (zh) 2020-04-13 2020-04-13 基于图神经网络的多关系协同过滤算法

Publications (2)

Publication Number Publication Date
CN111523047A CN111523047A (zh) 2020-08-11
CN111523047B true CN111523047B (zh) 2022-08-09

Family

ID=71902072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010283068.0A Active CN111523047B (zh) 2020-04-13 2020-04-13 基于图神经网络的多关系协同过滤算法

Country Status (1)

Country Link
CN (1) CN111523047B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814977B (zh) * 2020-08-28 2020-12-18 支付宝(杭州)信息技术有限公司 训练事件预测模型的方法及装置
CN112084407B (zh) * 2020-09-08 2024-03-12 辽宁工程技术大学 一种融合图神经网络和注意力机制的协同过滤推荐方法
CN112115377B (zh) * 2020-09-11 2022-05-27 安徽农业大学 一种基于社交关系的图神经网络链路预测推荐方法
CN112488355A (zh) * 2020-10-28 2021-03-12 华为技术有限公司 基于图神经网络预测用户评级的方法和装置
CN112465226B (zh) * 2020-11-27 2023-01-20 上海交通大学 一种基于特征交互和图神经网络的用户行为预测方法
CN112446739B (zh) * 2020-12-10 2023-04-18 中科人工智能创新技术研究院(青岛)有限公司 一种基于分解机和图神经网络的点击率预测方法及系统
CN112650932B (zh) * 2021-01-04 2022-09-23 重庆邮电大学 一种融合社交和位置关系的神经协同过滤poi推荐方法
CN113407817A (zh) * 2021-01-25 2021-09-17 北京工业大学 一种基于注意力机制的图神经协同过滤方法
CN112990972B (zh) * 2021-03-19 2022-11-18 华南理工大学 一种基于异构图神经网络的推荐方法
CN113240105B (zh) * 2021-03-30 2022-01-07 浙江大学 一种基于图神经网络池化的电网稳态判别方法
CN112967101B (zh) * 2021-04-07 2023-04-07 重庆大学 一种基于社交用户多交互信息的协同过滤物品推荐方法
WO2022222037A1 (zh) * 2021-04-20 2022-10-27 中国科学院深圳先进技术研究院 一种基于图神经网络推理的可解释推荐方法
CN113496349B (zh) * 2021-06-04 2024-04-02 南京塔鸽科技有限公司 一种基于ai交互共识的区块链学习档案及信用因子构建方法
CN113379494A (zh) * 2021-06-10 2021-09-10 清华大学 基于异质社交关系的商品推荐方法、装置和电子设备
CN113704626B (zh) * 2021-09-06 2022-02-15 中国计量大学 一种基于重构社交网络的会话社交推荐方法
CN116150425A (zh) * 2021-11-19 2023-05-23 腾讯科技(深圳)有限公司 推荐内容的选择方法、装置、设备、存储介质及程序产品
CN115187343B (zh) * 2022-07-20 2023-08-08 山东省人工智能研究院 基于注意图卷积神经网络的多行为推荐方法
CN115761654B (zh) * 2022-11-11 2023-11-24 中南大学 一种车辆重识别方法
CN115688907B (zh) * 2022-12-30 2023-04-21 中国科学技术大学 基于图传播的推荐模型训练方法及基于图传播的推荐方法
CN115952359A (zh) * 2023-03-10 2023-04-11 特斯联科技集团有限公司 推荐系统召回方法及装置、电子设备、存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110490717A (zh) * 2019-09-05 2019-11-22 齐鲁工业大学 基于用户会话及图卷积神经网络的商品推荐方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9558244B2 (en) * 2014-10-22 2017-01-31 Conversable, Inc. Systems and methods for social recommendations
US20200074301A1 (en) * 2018-09-04 2020-03-05 Beijing Jingdong Shangke Information Technology Co., Ltd. End-to-end structure-aware convolutional networks for knowledge base completion

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110490717A (zh) * 2019-09-05 2019-11-22 齐鲁工业大学 基于用户会话及图卷积神经网络的商品推荐方法及系统

Also Published As

Publication number Publication date
CN111523047A (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
CN111523047B (zh) 基于图神经网络的多关系协同过滤算法
CN112232925A (zh) 一种融合知识图谱对商品进行个性化推荐的方法
CN108829763B (zh) 一种基于深度神经网络的影评网站用户的属性预测方法
CN111797321B (zh) 一种面向不同场景的个性化知识推荐方法及系统
CN112115377B (zh) 一种基于社交关系的图神经网络链路预测推荐方法
CN111881342A (zh) 一种基于图孪生网络的推荐方法
CN112364976B (zh) 基于会话推荐系统的用户偏好预测方法
CN112950324B (zh) 一种知识图谱辅助的成对排序个性化电商推荐方法及系统
CN108563755A (zh) 一种基于双向循环神经网络的个性化推荐系统及方法
CN112488791A (zh) 一种基于知识图谱卷积算法的个性化推荐方法
CN113590900A (zh) 一种融合动态知识图谱的序列推荐方法
CN115186097A (zh) 一种基于知识图谱和强化学习的交互式推荐方法
CN113918832B (zh) 基于社交关系的图卷积协同过滤推荐系统
CN111723285A (zh) 一种基于评分的深度谱卷积协同过滤推荐方法
CN113918834B (zh) 融合社交关系的图卷积协同过滤推荐方法
CN115270007B (zh) 一种基于混合图神经网络的poi推荐方法及系统
CN112765461A (zh) 一种基于多兴趣胶囊网络的会话推荐方法
CN113918833A (zh) 通过社交网络关系的图卷积协同过滤实现的产品推荐方法
CN113704438B (zh) 一种基于分层注意力机制的异构图的会话推荐方法
CN113326384A (zh) 一种基于知识图谱的可解释推荐模型的构建方法
CN113704439B (zh) 一种基于多来源信息异构图的会话推荐方法
CN115840853A (zh) 一种基于知识图谱和图注意力网络的课程推荐系统
CN114564594A (zh) 一种基于双塔模型的知识图谱用户偏好实体召回方法
CN114625969A (zh) 一种基于交互近邻会话的推荐方法
CN113744023A (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