一种基于多方面增强的图神经网络推荐方法

文档序号:26589204发布日期:2021-09-10 20:19阅读:69来源:国知局
一种基于多方面增强的图神经网络推荐方法

1.本发明属于数据挖掘技术领域,具体涉及智能推荐领域中的一种基于多方面增强的图神经网络推荐方法。


背景技术:

2.互联网的普及和电子商务的发展将丰富的信息和多样化的产品呈现给人们,但伴随而来的是严重的信息过载问题。信息过载的出现使得用户很难从海量的数据找到自己感兴趣的信息。推荐系统作为解决信息过载的重要手段已经成为许多搜索引擎、电子商务、新闻资讯等网站的核心组件。协同过滤[文献1]是目前应用最成功的一种推荐算法,它建模用户的历史交互以捕捉潜在的用户偏好和项目属性特征,并设计交互函数来计算用户对项目的预测评分,进而为用户提供个性化的推荐列表。然而数字的评分缺乏有效的信息来体现用户购买商品的深层次原因,并且容易受到数据稀疏性的影响。因此,最近的许多研究致力于结合多种形式的辅助信息进行推荐的混合推荐方法。用户生成评论能直接体现用户的购买意图和偏好,已经被许多研究证实引入文本信息能够有效的提升推荐系统的性能。
[0003]
以往的结合文本进行混合推荐的方法大多利用主题模型学习评论的主题特征[文献2]或采用神经网络来捕捉文本上下文特征[文献3],[文献4]。随后的工作关注“有用的”文本,例如[文献5],[文献6]引入注意力机制为评论中不同词语或属于一个用户或项目的多条评论自适应地分配权重。然而大多数基于评论的推荐忽略了用户对项目的偏好可能是多方面的这样一个事实。“方面”被定义为能描述产品特征的词或短语。例如一条“这件衣服款式很好看但是价格有点贵”的评论表达了用户对衣服“外观”和“价格”不同的情感极性。这两个方面对用户的购买决定分别起着积极和消极相反的作用。为了对用户偏好进行多方面的建模,[文献7]将方面描述为一组潜在主题的多项分布。anr[文献8]通过对文本嵌入进行aspect

specific的矩阵投影得到获得用户或项目的方面级表示。此外,更多的文章[文献9],[文献10]借助额外的情感分析方法进行方面特征的学习,结合方面特征和用户评分捕捉更加全面和准确的用户偏好。这些方法表明,利用评论中提及的方面捕捉细粒度的偏好特征能够有效提升偏好建模的准确性。
[0004]
基于图神经网络(graph neural networks,gnns)的方法将用户

项目交互构建为一个二部图,借助图结构上的多跳信息传播学习更加丰富的偏好特征。he等人[文献11],[文献12]利用图卷积网络[文献13](graph convolutional networks,gcn)优化随机的用户和项目嵌入。它将用户(或项目)的嵌入表示为邻居项目(或用户)的聚合从而在多层卷积中捕获高阶连通性,即多跳邻居表现出的用户偏好的相似性。图注意力网络[文献14](graph attention networks,gat)区分不同邻居的重要性,采用多头注意力建模邻居节点的注意力权重。mu等人[文献15]通过分配由多头注意力计算的特定权重来区分不同邻居的重要性。他们使用图形拓扑结构来丰富评级数据,从而有效地克服了数据稀疏性问题。dgcf[文献16]和mgat[文献17]分别在意图和模态的粒度上对用户的兴趣进行建模。然而,他们忽略了文本评论中体现的多方面的用户意图,导致无法捕捉细粒度的用户偏好。
[0005]
[文献1]koren y,bell r,volinsky c.matrix factorization techniques for recommender systems[j].computer,2009,42(8):30

37.
[0006]
[文献2]bao y,fang h,zhang j.topicmf:simultaneously exploiting ratings and reviews for recommendation.//twenty

eighth aaai conference on artificial intelligence.aaai press,2014:2

8.
[0007]
[文献3]zheng l,noroozi v,yu p s.joint deep modeling of users and items using reviews for recommendation[c]//the tenth acm international conference.acm,2017.
[0008]
[文献4]lu y,dong r,smyth b.coevolutionary recommendation model:mutual learning between ratings and reviews[c]//proceedings of the 2018world wide web conference.2018:773

782.
[0009]
[文献5]liu d,li j,du b,et al.daml:dual attention mutual learning between ratings and reviews for item recommendation[c]//the 25th acm sigkdd international conference.acm,2019.
[0010]
[文献6]chen c,zhang m,liu y,et al.neural attentional rating regression with review

level explanations[c]//the 2018world wide web conference.2018.
[0011]
[文献7]cheng z,ding y,zhu l,et al.aspect

aware latent factor model:rating prediction with ratings and reviews[c]//proceedings of the 2018world wide web conference.2018:639

648.
[0012]
[文献8]chin j y,zhao k,joty s,et al.anr:aspect

based neural recommender[c]//the 27th acm international conference.acm,2018.
[0013]
[文献9]kim d,park c,oh j,et al.convolutional matrix factorization for document context

aware recommendation.//proceedings of the 10th acm conference on recommender systems.acm,2016:233

240.
[0014]
[文献10]zhang y,lai g,zhang m,et al.explicit factor models for explainable recommendation based on phrase

level sentiment analysis[c]//proceedings of the 37th international acm sigir conference on research&development in information retrieval.2014:83

92.
[0015]
[文献11]wang x,he x,wang m,et al.neural graph collaborative filtering[c]//the 42nd international acm sigir conference.acm,2019.
[0016]
[文献12]he x,deng k,wang x,et al.lightgcn:simplifying and powering graph convolution network for recommendation[c]//sigir'20:the43rd international acm sigir conference on research and development in information retrieval.acm,2020.
[0017]
[文献13]thomas n.kipf and max welling.semi

supervised classification with graph convolutional networks[c]//iclr,2017.
[0018]
[文献14]velikovi p,cucurull g,casanova a,et al.graph attention networks[j].2017.
[0019]
[文献15]mu n,zha d,he y,et al.graph attention networks for neural social recommendation[c]//2019ieee 31st international conference on tools with artificial intelligence(ictai).ieee,2019:1320

1327.
[0020]
[文献16]wang x,jin h,zhang a,et al.disentangled graph collaborative filtering[j].2020.
[0021]
[文献17]tao z,wei y,wang x,et al.mgat:multimodal graph attention network for recommendation[j].information processing&management,2020,57(5):102277.


技术实现要素:

[0022]
本发明所要解决的技术问题是针对上述现有技术存在的问题和不足,提供一种基于多方面增强的图神经网络推荐方法,重点是通过并行地构建多个方面感知图将用户偏好解耦为不同的方面,以借助高阶的邻居聚合学习细粒度的偏好特征,并设计一个基于路由的融合机制,为不同的方面自适应的分配权重实现多方面偏好特征的动态融合,捕捉更为全面的用户偏好特征,从而提升推荐结果的准确性、透明度和可解释性。
[0023]
本发明为解决上述技术问题采用以下的技术方案:一种基于多方面增强的图神经网络推荐方法,包括以下步骤:
[0024]
步骤1,对评论信息进行预处理,从输入的文本评论中提取共享的方面集合以分析用户购买行为的共性特征;
[0025]
步骤2,根据提取到的方面集合为数据集中的每条评论构建“评论

方面”对,基于bert模型来提取针对特定方面的情感特征;利用嵌入层将评分信息映射为低维稠密的用户交互特征和项目交互特征;
[0026]
步骤3,并行地构建多个异构方面感知图捕捉用户多方面的购买偏好,引入方面情感特征进行方面感知的邻居聚合;
[0027]
步骤4,增加自适应的路由融合模块为不同方面的偏好动态分配权重,实现细粒度偏好的动态融合,得到融合后的用户特征和项目特征;
[0028]
步骤5,将上述过程构建的用户特征和项目特征作为最终的用户特征和项目特征的初始化参数,并利用贝叶斯个性化排序进行训练得到最终的用户

项目评分的预测值。
[0029]
进一步的,所述步骤1具体为,
[0030]
对评论信息进行预处理包括过滤占位符和无效的评论,随后利用sentires工具从所有的用户评论中提取出用户关心的方面,包括单词或短语,并根据方面出现的次数降序排列选择排名靠前的n个方面组成方面集合
[0031]
进一步的,所述步骤2具体为,
[0032]
步骤2.1,对于数据集中的每条评论,针对方面集合中的每一个方面构建“评论

方面”对作为后续步骤的输入,随后使用预训练的bert模型提取构建句子的特征作为方面情感特征;方面情感特征提取的过程简记为:
[0033]
h
u,i,a
=bert(c
ui

a)∈r
d
[0034]
其中c
ui
表示用户对项目的评论,h
u,i,a
表示用户u对项目i在方面上提取的评论特征,d表示方面特征的维度;
[0035]
步骤2.2,对于评分信息,采用一个嵌入函数来得到用户和项目的稠密向量表示,具体表示如下:
[0036][0037]
其中u,i分别为用户和项目的ids,p
a
∈r
m
×
d
和q
a
∈r
n
×
d
分别代表针对方面a的用户嵌入矩阵和项目嵌入矩阵,通过随机初始化得到,m,n分别为用户数量和项目数量,e
u,a
,e
i,a
∈r
d
分别表示映射得到用户交互特征和项目交互特征;d表示交互特征的维度。
[0038]
进一步的,所述步骤3具体为,
[0039]
步骤3.1,在学习到评论体现的方面情感特征和评分特征,并行地构建多个异构地方面感知图其中表示方面集合,表示方面的个数;目的是利用方面情感特征优化信息聚合捕捉细粒度的用户偏好;其中,任一异构的无向图被定义为g
a
=(v,h
a
),表示由用户和项目构成的节点集合,h
a
为边的集合,h
u,i,a
∈h
a
不仅表示u和i之间有边,而且代表了用户对项目在方面a上的情感特征,即赋予了边实际的含义;
[0040]
步骤3.2,在给定方面感知的交互图g
a
后,利用图神经网络捕捉用户交互图的结构特征并优化节点嵌入,因此设计一个方面感知的邻居聚合方法,在捕捉细粒度的用户偏好的同时减少噪声项目对偏好学习的影响,将一个节点的特征表示为其邻居节点的特征聚合:
[0041][0042]
其中e

n,a
为更新后的节点特征,n
n
为节点n的邻居集合,π
n,t,a
为n

t上信息传播的衰减因子,控制有多少信息可以从节点t传递到节点n;w
a
为一个可训练的权重矩阵;另外设计了方面感知的注意力,其中加入了节点的细粒度的方面特征来控制信息流动,能够根据用户偏好和项目属性在该方面的契合度来计算注意力权重π
n,t,a
,形式化为如下的形式:
[0043][0044]
其中e
n,a
,e
t,a
和h
n,t,a
分别为方面级的节点特征、邻居特征和方面情感特征;||表示连接操作(concatenate),为每个方面特定的权重向量;leakyrelu是非线性的激活函数,最后应用softmax函数计算π
n,t,a
的值;
[0045]
为了构建评论特征和评分特征的双向交互,在每一次卷积操作后,根据信息聚合的结果反过来对评论特征进行更新,并将调整后的边特征加入下一次的卷积操作中:
[0046]
h

n,t,a
=h
n,t,a
+e

n,a tanh(e
t,a
)
[0047]
其中h

n,t,a
为更新后的边特征,tanh表示非线性函数;
[0048]
步骤3.3,采用多层的图卷积来实现信息在图结构上的高阶传播,将多层的图卷积定义如下:
[0049]
[0050]
其中,和分别表示当前节点和邻居节点的特征,上角标(l+1)和(l)表示卷积的层数,为了简便,将上述方面感知的邻居聚合算法,即整个步骤3.2的计算过程简记为agg(
·
);在计算时,将初始化的节点特征作为在多层卷积的节点特征表示之后,通过求平均得到优化后的节点方面级向量表示l为限定卷积层数的超参数:
[0051][0052]
最终经过多个并行的方面感知图,得到节点的嵌入表示其中上角标a1,a2,

,a
k
用来区分不同方面的特征并且
[0053]
进一步的,所述步骤4具体为,
[0054]
步骤4.1,在自适应路由融合模块,将每个方面感知的节点嵌入作为一个胶囊,并将方面融合的过程形式化为一个双层胶囊网络;对于任意的采用动态路由算法来计算每个胶囊激活第二层胶囊的可能性,具体地,将融合后的偏好特征s
n
表示为不同方面嵌入地加权连接:
[0055][0056]
其中c
a
=softmax(b
a
)为耦合系数,用来评估不同方面对用户整体偏好的贡献大小,通过以下两个步骤来计算b
a
:首先针对加权连接得到s
n
∈r
d
,应用一个非线性的squashing函数得到向量v
n
,squashing函数可以在保持输入方向不变的情况下将长度压缩为[0,1],即:
[0057][0058]
随后根据v
n
和胶囊中原始向量的一致性来计算得到b
a
,即首先将v
n
分割为个特征向量然后根据公式计算得到b
a
;通过这样迭代的方式,自适应地调整不同方面特征对最终用户偏好和项目属性的建模,实现多方面特征的自适应融合,得到最终的用户特征表示和项目特征表示
[0059]
进一步的,所述步骤5具体为,
[0060]
选择贝叶斯个性化排序损失进行回归,bpr是一个成对的损失函数,它假设用户交互的项目相比未观察到的项应该有更高的分数,表达式如下:
[0061][0062]
其中表示预测评分,表示三元组的训练数据,对于所有的用户,i,j分别为集合和的随机采样;σ(
·
)为sigmoid函数;表示训练参数的l2正则化,λ是超参数。
[0063]
本发明采用以上技术方案与现有技术相比,具有以下的技术效果:
[0064]
1.本文将整体的用户偏好解耦为不同的方面,通过并行地构建多个方面感知图来学习不同方面的用户偏好,能够有效地建模多因素影响下的用户购买决定。同时设计了一个方面感知的邻居聚合方法,能够借助方面情感特征来控制交互图上高阶的信息传播,动态调整不同邻居对用户偏好建模的影响。
[0065]
2.用户生成评论直观体现了用户的偏好,基于bert模型挖掘用户评论中隐含的方面级用户偏好,作为边来构建用户交互图,克服了原有“0/1”值表达用户交互的不足。同时评论特征的引入有效地缓解了仅利用评分面临的数据稀疏性问题。
[0066]
3.基于路由的方面融合机制将特征融合的过程视作一个两层胶囊网络,基于动态路由计算不同方面对总体偏好的贡献,模拟用户对不同方面关注程度的特异性,在准确建模用户偏好的同时提升推荐结果的可解释性。
[0067]
结合以上三点,本发明所采用的一种基于多方面增强的图神经网络推荐方法能够更加准确的学习用户偏好特征和项目属性特征,从而提高推荐系统的性能。
附图说明
[0068]
图1是本发明一种基于混合神经网络融合评论信息和评分信息的项目推荐方法的流程示意图。
具体实施方式
[0069]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明做进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0070]
基于多方面增强的图神经网络推荐方法使用bert模型学习用户的方面情感特征,并借此构建异构的方面感知图。利用高阶的邻居聚合捕捉细粒度的偏好特征;随后借助一个基于路由的融合模块自适应地融合多方面的特征得到用户和项目的统一表示,从而提升推荐系统的推荐性能和可解释性。
[0071]
如图1所示,本发明公开了一种基于混合神经网络融合评论信息和评分信息的项目推荐方法,其具体实现包括以下步骤:
[0072]
一种基于多方面增强的图神经网络推荐方法,包括如下步骤:
[0073]
步骤1,对评论信息进行预处理,从输入的文本评论中提取共享的方面集合以分析用户购买行为的共性特征;
[0074]
步骤2,根据提取到的方面集合为数据集中的每条评论构建“评论

方面”对,基于bert模型来提取针对特定方面的情感特征;利用嵌入层将评分信息映射为低维稠密的用户交互特征和项目交互特征;
[0075]
步骤3,并行地构建多个异构方面感知图捕捉用户细粒度的购买偏好,引入方面情感特征进行方面感知的邻居聚合;
[0076]
步骤4,增加自适应的路由融合模块为不同方面的偏好动态分配权重,动态融合细粒度偏好,得到融合后的用户特征和项目特征。
[0077]
步骤5,将上述过程构建的用户特征和项目特征作为最终的用户特征和项目特征
的初始化参数,并利用贝叶斯个性化排序进行训练得到最终的用户

项目评分的预测值。
[0078]
作为本发明一种基于多方面增强的图神经网络推荐方法进一步的优化方案,所述步骤1的详细步骤为:
[0079]
对评论信息进行预处理主要是过滤占位符和无效的评论,随后利用sentires工具从所有的用户评论中提取出用户关心的方面(单词或短语),并根据方面出现的次数降序排列选择排名靠前的n个方面组成方面集合。
[0080]
作为本发明一种基于多方面增强的图神经网络推荐方法进一步的优化方案,所述步骤2的详细步骤为:
[0081]
步骤2.1:对于数据集中的每条评论,我们针对方面集合中的每一个方面构建“评论

方面”对作为后续步骤的输入。随后使用预训练的bert模型提取构建句子的特征作为方面情感特征。我们将方面情感特征提取的过程简记为:
[0082]
h
u,i,a
=bert(c
ui

a)∈r
d
[0083]
其中c
ui
表示用户对项目的评论,h
u,i,a
表示用户u对项目i在方面a上提取的评论特征,d表示方面特征的维度。在下文如果没有特别说明,a表示方面集合中的任一方面。
[0084]
步骤2.2:对于评分信息,我们采用一个嵌入函数来得到用户和项目的稠密向量表示。one

hot编码的用户和项目ids被作为输入利用嵌入矩阵映射为低维稠密的潜在因子向量。特别地,我们将交互特征也人为的划分为不同的方面以捕捉用户的不同方面的细粒度偏好。交互特征学习的过程形式化为:
[0085][0086]
其中u,i分别为用户和项目的ids,p
a
∈r
m
×
d
和q
a
∈r
n
×
d
分别代表针对方面a的用户嵌入矩阵和项目嵌入矩阵,通过随机初始化得到,m,n分别为用户数量和项目数量,e
u,a
,e
i,a
∈r
d
分别表示映射得到用户交互特征和项目交互特征;d表示交互特征的维度,和方面特征的维度相同。
[0087]
作为本发明一种基于多方面增强的图神经网络推荐方法进一步的优化方案,所述步骤3的详细步骤为:
[0088]
步骤3.1:在学习到评论体现的方面情感特征和评分特征之后,并行地构建多个异构的方面感知图其中表示方面集合,表示方面的个数。目标是利用方面情感特征优化传统的信息聚合方式捕捉细粒度的用户偏好。任一异构的无向图被定义为g
a
=(v,h
a
),其中表示由用户和项目构成的节点集合,在下文,我们将用户和项目不加区分的视作节点n,节点的嵌入表示为e
n,a
∈r
d
,由交互特征学习得到。h
a
为边的集合,和之前不同的是,这里的h
u,i,a
∈h
a
不仅表示u和i之间有边,而且代表了用户对项目在方面a上的情感特征,即赋予了边实际的含义。
[0089]
步骤3.2:在给定方面感知的交互图g
a
后,我们利用图神经网络捕捉用户交互图的结构特征并优化节点嵌入。因此我们设计一个方面感知的邻居聚合方法,在捕捉细粒度的用户偏好的同时减少噪声项目对偏好学习的影响。我们将一个节点的特征表示为其邻居节点的特征聚合:
[0090][0091]
其中e

n,a
为更新后的节点特征,n
n
为节点n的邻居集合,π
n,t,a
为n

t上信息传播的衰减因子,控制有多少信息可以从节点t传递到节点n,w
a
为一个可训练的权重矩阵。本文设计了方面感知的注意力,其中加入了节点的细粒度的方面特征来控制信息流动,能够根据用户偏好和项目属性在该方面的契合度来计算注意力权重π
n,t,a
,形式化为如下的形式:
[0092][0093]
其中e
n,a
,e
t,a
和h
n,t,a
分别为方面级的节点特征、邻居特征和方面情感特征;||表示连接操作(concatenate),为每个方面特定的权重向量;leakyrelu是非线性的激活函数,最后应用softmax函数计算π
n,t,a
的值。
[0094]
为了构建评论特征和评分特征的双向交互,在每一次卷积操作后,我们根据信息聚合的结果反过来对评论特征进行更新,并将调整后的边特征加入下一次的卷积操作中:
[0095]
h

n,t,a
=h
n,t,a
+e

n,a tanh(e
t,a
)
[0096]
其中h

n,t,a
为更新后的边特征,tanh表示非线性函数。
[0097]
步骤3.3:我们采用多层的图卷积来实现信息在图结构上的高阶传播。这样的操作可以结合多跳邻居的特征作为对节点的补充,从而缓解评分数据的稀疏性。我们将多层的图卷积定义如下:
[0098][0099]
其中,和分别表示当前节点和邻居节点的特征,上角标(l+1)和(l)表示卷积的层数。为了简便,我们将上述方面感知的邻居聚合算法(即整个步骤3.2的计算过程)简记为agg(
·
)。在计算时,将初始化的节点特征作为在多层卷积的节点特征表示之后,通过求平均得到优化后的节点方面级向量表示l为限定卷积层数的超参数:
[0100][0101]
最终经过多个并行的方面感知图,我们得到节点的嵌入表示其中上角标a1,a2,

,a
k
用来区分不同方面的特征并且
[0102]
作为本发明一种基于多方面增强的图神经网络推荐方法进一步的优化方案,所述步骤4的详细步骤为:
[0103]
步骤4.1:在自适应路由融合模块,将每个方面感知的节点嵌入作为一个胶囊,并将方面融合的过程形式化为一个双层胶囊网络。对于任意的我们采用一个动态路由算法来计算每个胶囊激活第二层胶囊的可能性。具体地,我们将融合后的偏好特征s
n
表示为不同方面嵌入地加权连接:
[0104][0105]
其中c
a
=softmax(b
a
)为耦合系数,用来评估不同方面对用户整体偏好的贡献大小。我们通过以下两个步骤来计算b
a
。首先针对加权连接得到s
n
∈r
d
,应用一个非线性的squashing函数得到向量v
n
,squashing函数可以在保持输入方向不变的情况下将长度压缩为[0,1],即:
[0106][0107]
随后根据v
n
和胶囊中原始向量的一致性来计算得到b
a
,即首先将v
n
分割为个特征向量然后根据公式计算得到b
a
。通过这样迭代的方式,我们自适应地调整不同方面特征对最终用户偏好和项目属性的建模,实现多方面特征的自适应融合,得到最终的用户特征表示和项目特征表示
[0108]
作为本发明一种基于多方面增强的图神经网络推荐方法进一步的优化方案,所述步骤5的详细步骤为:
[0109]
步骤5.1:我们选择贝叶斯个性化排序(bayesian personalized ranking,bpr)损失进行回归。bpr是一个成对的损失函数,它假设用户交互的项目相比未观察到的项应该有更高的分数。形式化地,我们有:
[0110][0111]
其中表示预测评分,表示三元组的训练数据,对于所有的用户,i,j分别为集合和的随机采样;σ(
·
)为sigmoid函数;表示训练参数的l2正则化,λ是超参数。
[0112]
应理解,上述实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1