一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种融合注意力机制的图神经网络模型推荐方法与流程

2022-03-14 00:53:35 来源:中国专利 TAG:


1.本发明涉及一种融合注意力机制的图神经网络模型推荐方法,可用于推荐算法技术领域。


背景技术:

2.在推荐系统中,基于图神经网络(gnn)的推荐算法是推荐系统应用的热门算法之一。2009年,图神经网络被提出,2017年gcn模型的出现使得图神经网络得到更加快速的发展。ngcf模型将gcn引入推荐算法,在用户项目图中进行高阶连通性的表达建模,从而以显性方式将协作信号有效地注入到嵌入过程中;bganr算法利用注意力机制,同时加入偏差以更好地捕获节点之间的高阶连接性。graphrec模型在gnn的基础上提出了一种具有一定原则的方法,该方法能够将用户商品图中的交互和观点同时捕捉到,同时对两个图进行建模,并且能够对异质的强度进行建模。
3.图神经网络作为一种从卷积神经网络(cnn)和图嵌入思想启发而来的新型拓展神经网络,可以在图领域对数据进行特征提取和表示,是一种高效、易扩展的新型神经网络结构,在学习图数据方面表现出了强大的功能。与传统的深度学习方法相比,图神经网络可以通过构建图模型来反映实体及其之间的联系。而随着有关注意力机制的文献发表,研究者们也开始考虑利用注意力机制来对现有相关社会化推荐算法进行改善。cheng等人在cheng z y,ding y,he xn,et al.a^3ncf anadaptive aspect attention model for rating prediction[c]//proceedings of the 27thinternational joint conference on artificial intelligence,louisiana,feb 2-feb 7,2018.menlo park:aaai,2018:3748-3754.中提出把注意力机制融入了推荐系统中,并进行了卓有成效的研究工作,验证了注意力机制在各种社会化推荐任务中的良好效果。


技术实现要素:

[0004]
本发明的目的就是为了解决现有技术中存在的上述问题,提出一种融合注意力机制的图神经网络模型推荐方法。
[0005]
本发明的目的将通过以下技术方案得以实现:一种融合注意力机制的图神经网络模型推荐方法,该方法包括以下步骤:
[0006]
s1:输入数据预处理,输入数据预处理分为两个部分,用户物品模型和用户社交模型;
[0007]
s2:在s1步骤得到的用户物品模型中,计算用户ui在集合v上的邻域节点集合n
v(ui)
=neighv(ui),n
v(ui)
集合中的物品节点vj按时间t升序排列,得到长度为l的物品序列s(ui)=[v1,v2,

,v
l
];对序列s(ui)中的物品元素vj通过onehot编码方式进行编码,然后进入嵌入层得到相应的嵌入向量以及对应评分的嵌入表示将与拼接并输入感知机降维,得到一个包含评分分值的物品信息表示e
′j并且更新物品序列s;
[0008]
s3:将s2步骤更新后的物品序列s作为门控循环单元的输入,同时输入初始隐藏状
态h0,得到门控循环单元在每个时刻最后输出构成的长度为l的序列,得到门控循环单元在每个时刻最后输出构成的长度为l的序列其中k为门控循环单元的堆叠层数;
[0009]
门控循环单元在时刻t进行下列计算:
[0010][0011]rt
=σ(w
ir
x
t
b
ir
w
hrh(t-1)
b
hr
)
ꢀꢀ
(2)
[0012]zt
=σ(w
iz
x
t
b
iz
w
hzh(t-1)
b
hz
)
ꢀꢀ
(3)
[0013]nt
=tanh(w
in
x
t
b
in
w
hnh(t-1)
b
hn
)
ꢀꢀ
(4)
[0014]ht
=(1-z
t
)
⊙nt
z
t
⊙h(t-1)
ꢀꢀ
(5)
[0015]
其中,δ表示dropout函数,σ表示sigmoid激活函数,

表示元素乘积;x
t
表示当前时刻的输入,h
(t-1)
表示gru单元上一时刻的隐藏状态;
[0016]
s4:拼接h’与并经过线性层以及非线性relu函数的激活,得到作为邻域集合nv(ui)的聚合结果;将聚合结果与顶点自身嵌入表示拼接,进行线性仿射与非线性激活,得到该用户节点第n次迭代的表示
[0017]
s5:在用户社交模型中,对于所有的用户和朋友,首先利用门控网络将用户和用户朋友嵌入,特征融合后得到融合嵌入向量表示;在得到融合向量s后,从注意力权重矩阵q中学习注意力向量;
[0018]
注意向量a的每个元素被定义为:然后,使用softmax函数对a进行归一化,得到最终结果:
[0019][0020]
朋友嵌入u
(i,j)
经由记忆矩阵q扩展到矩阵:
[0021]fl
=u
(i,j)
⊙ql
ꢀꢀ
(7)
[0022]
其中

表示向量的元素积;矩阵f表示不同潜在方面中的朋友偏好;
[0023]
最后,为了生成朋友向量表示,使用注意力分数来计算f的加权表示:
[0024]f(i,j)
=∑a
lfl
ꢀꢀ
(8)
[0025]
输出是一个特定的关系向量f
(i,j)
,可以看作是用户i的第j个朋友对此用户偏好的影响向量;设f
(i,1)
,f
(i,2)
…f(i,j)
为注意力记忆模块生成的用户j的朋友关系向量;
[0026]
s6:利用多头注意力机制,对于每一个用户(q),将其与上层得到的输入朋友向量(k)进行比较,得到不同朋友影响下的输出向量,公式如下:
[0027][0028]
p
(i,j)
=multiheadattention(q,k,v)=concat(head,

head)
ꢀꢀꢀꢀ
(10)
[0029]
s7:将上层的输出与用户本身相融合,得到用户综合兴趣偏好;受门控机制的影响,门控g和最终得到的用户在受到朋友的不同方面影响下ii的计算公式为:
[0030][0031]

[0032][0033]
优选地,在所述s3步骤中,门控循环单元的堆叠层数k为2。
[0034]
优选地,在所述s3步骤中,dropout函数的丢弃概率为0.5。
[0035]
优选地,在所述s4步骤中,用户节点迭代的次数n为5。
[0036]
优选地,在所述s4步骤中,初始嵌入维度为64。
[0037]
优选地,在所述s6步骤中,多头注意力机制通过将q、k和v进行线性映射,并对映射结果进行放缩点积注意力操作,然后将放缩点积注意力的结果拼接后输入线性映射层,最后得到多头注意力机制的结果;表示向量q和k的特征维,用来避免过大的内积值。
[0038]
优选地,在所述s3步骤中,门控循环单元将x
t
和h
(t-1)
两者拼接,通过独立全连接层,得到r
t
控制的重置门控因子和z
t
控制的遗忘门控因子;其中(1-z
t
)
⊙nt
:表示对原本隐藏状态的选择性“遗忘”;z
t
⊙h(t-1)
:表示对包含当前节点信息的进行选择性“记忆”。
[0039]
本发明采用以上技术方案与现有技术相比,具有以下技术效果:针对当前推荐系统准确率不高,无法准确利用社交网络信息和时序信息的问题,该方法可以把用户与项目的时序信息考虑在内,并且能够融入用户的社交网络信息。本技术方案充分利用了时序信息和社交网络信息,加入多头注意力机制对用户进行推荐时,着重考虑在不同方面朋友对用户的影响,而非考虑朋友之间的相互影响,使得该算法有更好的性能。
附图说明
[0040]
图1为本发明的一种融合注意力机制的图神经网络模型推荐方法的流程图。
具体实施方式
[0041]
本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而形成的技术方案,均落在本发明要求保护的范围之内。
[0042]
本发明揭示了一种融合注意力机制的图神经网络模型推荐方法,如图1所示,该方法包括以下步骤:
[0043]
s1:输入数据预处理,输入数据预处理分为两个部分,用户物品模型和用户社交模型;
[0044]
s2:在s1步骤得到的用户物品模型中,计算用户ui在集合v上的邻域节点集合n
v(ui)
=neighv(ui),n
v(ui)
集合中的物品节点vj按时间t升序排列,得到长度为l的物品序列s(ui)=[v1,v2,

,v
l
];对序列s(ui)中的物品元素vj通过onehot编码方式进行编码,然后进入嵌入层得到相应的嵌入向量以及对应评分的嵌入表示将与拼接并输入感知机降维,得到一个包含评分分值的物品信息表示e
′j并且更新物品序列s;
[0045]
s3:将s2步骤更新后的物品序列s作为门控循环单元的输入,同时输入初始隐藏状
态h0,得到门控循环单元在每个时刻最后输出构成的长度为l的序列,得到门控循环单元在每个时刻最后输出构成的长度为l的序列其中k=2为门控循环单元的堆叠层数;
[0046]
门控循环单元在时刻t进行下列计算:
[0047][0048]rt
=σ(w
ir
x
t
b
ir
w
hrh(t-1)
b
hr
)
ꢀꢀ
(14)
[0049]zt
=σ(w
iz
x
t
b
iz
w
hzh(t-1)
b
hz
)
ꢀꢀ
(15)
[0050]nt
=tanh(w
in
x
t
b
in
w
hnh(t-1)
b
hn
)
ꢀꢀ
(16)
[0051]ht
=(1-z
t
)
⊙nt
z
t
⊙h(t-1)
ꢀꢀ
(17)
[0052]
其中,δ表示dropout函数,丢弃概率为0.5,σ表示sigmoid激活函数,

表示元素乘积;x
t
表示当前时刻的输入,h
(t-1)
表示gru单元上一时刻的隐藏状态;两者拼接,通过独立全连接层,得到r
t
控制的重置门控因子和z
t
控制的遗忘门控因子;其中(1-z
t
)
⊙nt
:表示对原本隐藏状态的选择性“遗忘”;z
t
⊙h(t-1)
:表示对包含当前节点信息的进行选择性“记忆”;
[0053]
s4:拼接h’与并经过线性层以及非线性relu函数的激活,得到作为邻域集合nv(ui)的聚合结果;将聚合结果与顶点自身嵌入表示拼接,进行线性仿射与非线性激活,得到该用户节点第n次迭代的表示当用户节点迭代5次时,效果最好,不会出现过拟合现象;
[0054]
s5:在用户社交模型中,对于所有的用户和朋友,首先利用门控网络将用户和用户朋友嵌入,特征融合后得到融合嵌入向量表示,其中初始嵌入维度为64;在得到融合向量s后,从注意力权重矩阵q中学习注意力向量;
[0055]
注意向量a的每个元素被定义为:然后,使用softmax函数对a进行归一化,得到最终结果:
[0056][0057]
朋友嵌入u
(i,j)
经由记忆矩阵q扩展到矩阵:
[0058]fl
=u
(i,j)
⊙ql
ꢀꢀ
(19)
[0059]
其中

表示向量的元素积;矩阵f表示不同潜在方面中的朋友偏好;
[0060]
最后,为了生成朋友向量表示,使用注意力分数来计算f的加权表示:
[0061]f(i,j)
=∑a
lfl
ꢀꢀ
(20)
[0062]
输出是一个特定的关系向量f
(i,j)
,可以看作是用户i的第j个朋友对此用户偏好的影响向量;设f
(i,1)
,f
(i,2)
…f(i,j)
为注意力记忆模块生成的用户j的朋友关系向量;
[0063]
s6:利用多头注意力机制,对于每一个用户(q),将其与上层得到的输入朋友向量(k)进行比较,得到不同朋友影响下的输出向量,公式如下:
[0064]
[0065]
p
(i,j)
=multiheadattention(q,k,v)=concat(head,

head)
ꢀꢀꢀꢀ
(22)
[0066]
多头注意力机制通过将q、k和v进行线性映射,并对映射结果进行放缩点积注意力操作,然后将放缩点积注意力的结果拼接后输入线性映射层,最后得到多头注意力机制的结果;表示向量q和k的特征维,用来避免过大的内积值;
[0067]
s7:将上层的输出与用户本身相融合,得到用户综合兴趣偏好;受门控机制的影响,门控g和最终得到的用户在受到朋友的不同方面影响下ii的计算公式为:
[0068][0069][0070]
本发明在处理用户评分时利用图神经网络进行深度特征学习,提取用户的特征表示。在处理社交信息中,利用多头注意力机制更加全面的考虑朋友在不同方面给用户带来的影响,深层次的突出了相关重要朋友在某一个方面的重要影响,同时,利用门控网络进行融合,提高了最终推荐的准确率。
[0071]
该方法包括利用门控循环单元对项目的时间序列信息进行遗忘与记忆,增强对时序信息的抽象能力;利用门控神经网络对输入的用户和朋友做融合,获得丰富的交互嵌入表示;使用注意力记忆网络,获得朋友在不同方面对于用户的影响;采用多头注意力机制来调节朋友之间的影响力大小;最后,基于用户本身的兴趣爱好融合朋友影响,继而对项目进行推荐。本发明能够提高推荐结果的准确性。
[0072]
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神和基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
[0073]
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。本发明尚有多种实施方式,凡采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献