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

一种基于元学习的异构图注意力神经网络的评论推荐方法与流程

2022-04-24 19:26:42 来源:中国专利 TAG:


1.本发明涉及推荐系统领域,更具体地,涉及一种基于元学习的异构图注意力 神经网络的评论推荐方法。


背景技术:

2.当前不少的互联网的应用都提供了评论功能,用户通常会在评论中分享他们 关于商品的观点。与此同时,其他用户通过浏览这些评论发现自己感兴趣的,并 会对这些评论进行投票。由于评论比商品的描述更具有真实性和主观性。评论是 当前内容平台的重要组成部分,不仅能够为用户决策提供参考,还能提升社区的 活跃性,吸引更多用户的加入。由于平台社区的活跃性,商品的评论可能会有爆 炸性的增长。而现有的评论排序方式都是通过时间或者热度进行排序,同时,目 前的一些方法致力于非个性化推荐,而忽略了用户的个性化偏好。这导致了推荐 系统易见的长尾问题,即用户很难发掘那些他们更感兴趣的评论。这些排序方式 既导致了用户获取评论的方式狭窄,又导致平台用户的活跃性大大降低。事实上, 给定一个商品,不同用户对该商品的评论偏好差异很大。此外,非个性化推荐可 能会限制对该商品的意见多样性(如一些新闻或视频),这样不利于提高用户的 粘性。因此,个性化的评论推荐的目标是推荐有用的评论,以满足用户的独特偏 好,并帮助用户做出决策。非个性化的排序的方法不能满足用户发现潜在感兴趣 评论的个性化需求,为了能够对挖掘更多有价值的评论,需要对评论进行个性化 排序。如图1所示,用户需要挖掘一些不同商品下的新的评论。
3.关于个性化评论推荐的方法很少,有些方法利用矩阵分解作用于对用户和评 论之间的交互进行建模。而moghaddam等人用评论者和商品表示评论,并假设 评论是由评论作者和相应的商品构成,利用张量分解对用户、评论者和商品之间 的交互进行建模。然而,之前的方法忽略了用户根据不同商品对评论的偏好变化。 他们只是或者根本没有使用用户/商品的评论语义表示。
4.此外,与大量评论相比,用户实际与之交互可以看作一种反馈,例如回复或 点赞,但是这样的评论交互很少。最近的推荐方法也难以应对评论推荐。根据统 计数据显示,每个评论的平均交互计数比movielens数据集中的用户和商品的交 互少得多。而在ciao数据集中,用户之间共同评分的评论数量也少于movielens 中的共同评分的商品数量。因此传统的推荐方法不适合这个问题。
5.(1)线性方法(例如:slim、ease)只能处理双向的交互。它不能扩展 到三元组(用户-商品-评论)交互,因为商品信息在评论推荐中很重要。此外, 很难找到具有共同评论的用户。这是基于邻域和基于模型的协同过滤方法的基础。
6.(2)基于图的方法(例如:lightgcn、hetgnn、hgt、gat)在推荐方 面取得了很大进步,并且可以轻松解决三元组交互的问题,但对极端稀疏的数据 集依旧难以处理,其中大多数评论节点觉其他节点有很少的交互。同时,用户
‑ꢀ
商品-评论之间关系的含义是多种多样的,所以需要设计一种能够处理这样的数 据的方法。


技术实现要素:

7.本发明提供一种效果较好的基于元学习的异构图注意力神经网络的评论推 荐方法。
8.为了达到上述技术效果,本发明的技术方案如下:
9.一种基于元学习的异构图注意力神经网络的评论推荐方法,包括以下步骤:
10.s1:构造元数据;
11.s2:进行上下文挖掘;
12.s3:进行个性排序;
13.s4:进行元学习。
14.进一步地,所述步骤s1中,利用数据集中所有的用户与评论的交互数据, 分别提取每个用户的评论投票数据,并将这些数据以用户-商品-评论的形式构建 成一个新的数据集;利用该新的数据集,根据一定的比例来划分成支持数据集和 查询数据集,两类数据集将在两个不同的元学习阶段使用。
15.进一步地,所述步骤s1的具体过程是:
16.由于每个用户都被视为一个任务,即对于每个用户的交互历史,将其划分为 它分为两部分,支持集和查询集,在支持集su中,它包括用户和评论交互数据, 由于每个评论都属于一个单独的商品,将相应的商品纳入到形成(u,v,r)的样本; 在查询集qu中,它也包含了交互信息,而且由于该模型应该向用 户推荐一个评论列表,所以样本不应该是一个单一的交互样本,而是排序后的评 论列表;构建排序对作为样本,一个排序对中包含一个已经发生的交互三元组 (u,v,r

)和一个从未发生的的交互三元组(u,v,r-),根据数据集的统计,大多数 用户只对一个商品下的评论进行了交互,假设用户喜欢有交互的评论而不是同一 商品下的其他非交互评论,那么样本的标签是正样本交互的偏好分数应该大于负 样本的分数;同时,交互也包含很多潜在的信息,包括用户的其他用户的交互, 浏览过该物品的其他用户以及评论文本内容,而这些潜在信息并不直接包含在样 本中。
17.进一步地,所述步骤s2中,利用词嵌入的方法将评论文本转化为词向量, 并设计合适方法来实现在具有用户-商品-评论关系的节点之间消息传播机制。
18.进一步地,所述步骤s2的具体过程是:
19.1)、图中节点包含内部特征,构建一个函数来快速利用内部特征,在评论推 荐中,除了用户和物品的固有特征外,一个重要的特征是评论的内容特征,它弥 补了数据稀疏性,r=fs(w0,w1,...,wn)其中,wi指评论中的word2vec训练后 的词向量,fs可以是任何语义的提取函数,包括lstm、par2vec和transformer; 对于用户和物品的嵌入,除了用户画像特征和类别特征进行初始化之外,我们可 以将其随机初始化;然后用函数f
emb
将它们映射到新空间,与独热编码进行初始 化不同,随机初始化是可扩展的,它可以很容易地扩展到新的用户/商品;
20.2)、设计合适的方法来传播节点之间的关系:在获得节点固有的特征嵌入后, 建立消息的功能构建节点间的信息交换功能;在评论推荐中,用户-商品-评论的 交互包含6种类型的关系:用户浏览了该商品(u-》i),该商品被用户浏览了 (i-》u),用户对评论进行投票(u-》r),评论是由用户发出的(r-》u),该商品 包含该评论(i-》r),该评论属于商品(r-》i);由于每个关系都有一个特殊的语 义,采用不同的参数来描述每个关系的信息传播过
程中的特征表示,那么用户、 商品、评论在不同关系中的邻居的消息聚合表示为:
[0021][0022][0023][0024]nu
,nv,nr分别表示用户、商品、评论的邻居节点集合;
[0025]
而每一个聚合函数可以类似地表示为如下所示:
[0026][0027]
其中,表示注意力权重,w代表网络 参数;
[0028]
3)、基于消息的传播过程,每个节点可以纳入一个邻居的特征,为了更好地 捕捉复杂的上下文信息,进行两次消息传播过程;考虑到计算的有效性,我们不 需要需要计算图中的所有传播,而是计算交互周围的局部图,因此,提取每个交 互的局部图,由于局部图的规模不同会影响融合上下文信息的能力,用h跳来表 示局部图的规模,采用广度优先遍历的方法来生成局部图;局部图的初始节点(即 第0跳)是(u,v,r),然后考虑到与用户u交互的的商品和评论,已经与评论r交互 的用户也与商品v和属于商品v的其他评论进行了交互,得到第1跳局部图;基于 新增加的节点,得到第2跳局部图;由于用户/物品的交互关系由于用户/商品的 交互通常是稀疏的,因此对比于全局图在局部图上进行的信息传播可以减少很多, 在局部图上进行的计算量也比在全局图上进行的计算减少得多;
[0029]
在获得每个节点的嵌入后,将预测用户u对目标商品v的评论r的偏好,对目 标商品v中的评论r的偏好;用户的偏好会发生变化,特别是对相应商品的评论中 的评论,故而用户的偏好捕捉表示为如下:
[0030]u″
=f
trans
(u,v)=mlp(u,v)
[0031]
mlp代表一个全连接网络层,然后基于转换后的用户嵌入,得到用户对评 论的个性化偏好:
[0032]
s(u,v,r)=u
‘’
·r[0033]
其中,
·
表示点积,s()表示用户对评论的偏好的概率。
[0034]
进一步地,所述步骤s3中,利用每个节点的若干跳的邻居特征,设计围绕 每种交互的广度优先遍历的局部图构建方法。
[0035]
进一步地,所述步骤s3的具体过程是:
[0036]
1)、每个用户、商品和评论都有一个初始嵌入u0,v0,r0;
[0037]
2)、初始嵌入应该随着上下文而更新:
[0038]
基于支持集它可以构建一个交互图,其中用户/商品的交互图,构建一个交 互图,其中用户/物品/评论被认为是被认为是节点,交互被表示为边,除了用户 与评论的交互,评论和其对应的商品也被认为是也被认为是有交互的,用户和被 交互的评论所对应的商品也是被认为有交互的,通过交互图,信息在节点之间传 播在节点之间传播,因此用户的嵌入表示为:
[0039][0040]
其中,nu表示用户u的邻居节点集,ei表示相应邻居节点的嵌入邻居节点的 嵌入,同样地,我们可以得到传播的商品和评论的嵌入u

,v

,r


[0041]
3)、基于更新的节点嵌入,它将计算出用户的对评论的偏好:
[0042]
由于偏好不仅与用户/评论有关,也与它们之间的间接商品有关,因此偏好 预测函数将是s(u,v,r)=f
pre
(u,v,r),最后,根据偏好预测,将计算出正向交互 的概率正面交互的偏好大于负面交互的偏好的概率,即表示为:
[0043]
p(u,v,r

,r-)=σ(s
-s-)。
[0044]
进一步地,所述步骤s4中,利用元训练的两类数据集对局部和全局参数分 别进行更新,在云测试阶段来对其进行评论偏好预测。
[0045]
进一步地,所述步骤s4的具体过程是:
[0046]
由于评论推荐的数据集非常稀疏,所以它非常适合进行元学习框架,每个用 户通常有限的交互评论,该模型可以快速学习并捕捉到用户的偏好,并适应到新 的推荐场景任务中,在元学习中,它被分成两个阶段,元训练阶段τ
tr
和元测试 阶段τ
te
,在元训练阶段,模型将学习先验知识(即共享参数)跨越几个任务.在每 个任务τu∈τ
tr
中,它包含支持集su和查询集qu;在支持集上,模型将先前的知 识适应于新的场景中并只需更新少数的梯度,就可以在局部对模型的参数进行更 新;通过更新参数,模型对查询集的结果进行预测并计算损失;基于查询集上的 损失函数,前向传播到全局参数,该模型将更新全局参数并改变先验知识,从形 式上看为:
[0047][0048]
其中,l是损失函数,其可以表示为对数损失函数,即为:
[0049][0050]
其中,θ是先验知识(即模型的参数),是适应特定任务的参 数,在评论推荐场景中,对每个用户的推荐作为一项任务来对待,用户与评论的 交互历史可以被视为支持集,即样本(u,v,r)∈su,该方法利用支持集局部地和暂 时地适应模型的先验知识,其过程表示为:
[0051][0052]
其中,θ
(g)

(l)
表示局部参数和全局参数,基于适应后的模型,它可预测当 用户在查询集的遇到新商品中的评论时,用户对于评论的查询集样本为 (u,v,r)∈su;虽然在预测值和真实值之间会存在误差,但利用误差的查询集,该 模型将在全局地并且永久地更新其参数,以形成新的先验知识,其更新过程表示 为:
[0053]
[0054][0055]
在元测试阶段,它也包含多个任务,在每个任务τu∈τ
te
中,基于学到的先 验知识,模型适应具有支持集的新场景的参数,对于元测试阶段的查询集,它需 要使用更新的参数对查询集的预测结果进行建模;
[0056]
对于评论推荐场景,具有从元训练阶段学习到的先验知识的模型将在元测试 阶段适应具有有限交互即元测试阶段的支持集的新用户,然后适应的模型应该在 一些新场景即元测试阶段的查询集上为用户做出评论推荐。
[0057]
进一步地,使用1个全连接层对用户和评论的向量进行融合,最终将输出 0-1间的概率值,来表示用户对于评论的偏好程度。
[0058]
与现有技术相比,本发明技术方案的有益效果是:
[0059]
本发明能通过元学习过程和图神经网络模型,将原始数据构造成所需要的元 数据模式。并经过设计的局部图提取算法对用户-商品-评论三类节点的关系进行 构建,扩展出以每个用户新为任务的图注意力网络结构,用于捕捉用户对应评论 的偏好信息;克服了现有按照时间或者热度非个性化评论排序方法以及一些已有 的基于图神经网络的个性化排序方法在稀疏数据集上的不足,利用元学习方法和 图神经网络的理论,提供一种为用户推荐更有价值评论的个性化排序方法。
附图说明
[0060]
图1个性化评论推荐示例图;
[0061]
图2本发明总体框架结构图;
[0062]
图3本发明的内部模块图。
[0063]
具体实施方式
[0064]
附图仅用于示例性说明,不能理解为对本专利的限制;
[0065]
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实 际产品的尺寸;
[0066]
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理 解的。
[0067]
下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0068]
如图2-3所示,本发明提供了一种基于元学习的异构图注意力神经网络的评 论推荐方法,包括以下步骤:
[0069]
s1:构造元数据;
[0070]
s2:进行上下文挖掘;
[0071]
s3:进行个性排序;
[0072]
s4:进行元学习。
[0073]
步骤s1中,利用数据集中所有的用户与评论的交互数据,分别提取每个用 户的评论投票数据,并将这些数据以用户-商品-评论的形式构建成一个新的数据 集;利用该新的
数据集,根据一定的比例来划分成支持数据集和查询数据集,两 类数据集将在两个不同的元学习阶段使用;
[0074]
步骤s1的具体过程是:
[0075]
由于每个用户都被视为一个任务,即对于每个用户的交互历史,将其划分为 它分为两部分,支持集和查询集,在支持集su中,它包括用户和评论交互数据, 由于每个评论都属于一个单独的商品,将相应的商品纳入到形成(u,v,r)的样本; 在查询集qu中,它也包含了交互信息,而且由于该模型应该向用 户推荐一个评论列表,所以样本不应该是一个单一的交互样本,而是排序后的评 论列表;构建排序对作为样本,一个排序对中包含一个已经发生的交互三元组 (u,v,r

)和一个从未发生的的交互三元组(u,v,r-),根据数据集的统计,大多数 用户只对一个商品下的评论进行了交互,假设用户喜欢有交互的评论而不是同一 商品下的其他非交互评论,那么样本的标签是正样本交互的偏好分数应该大于负 样本的分数;同时,交互也包含很多潜在的信息,包括用户的其他用户的交互, 浏览过该物品的其他用户以及评论文本内容,而这些潜在信息并不直接包含在样 本中。
[0076]
步骤s2中,利用词嵌入的方法将评论文本转化为词向量,并设计合适方法 来实现在具有用户-商品-评论关系的节点之间消息传播机制;
[0077]
步骤s2的具体过程是:
[0078]
1)、图中节点包含内部特征,构建一个函数来快速利用内部特征,在评论推 荐中,除了用户和物品的固有特征外,一个重要的特征是评论的内容特征,它弥 补了数据稀疏性,r=fs(w0,w1,...,wn)其中,wi指评论中的word2vec训练后 的词向量,fs可以是任何语义的提取函数,包括lstm、par2vec和transformer; 对于用户和物品的嵌入,除了用户画像特征和类别特征进行初始化之外,我们可 以将其随机初始化;然后用函数f
emb
将它们映射到新空间,与独热编码进行初始 化不同,随机初始化是可扩展的,它可以很容易地扩展到新的用户/商品;
[0079]
2)、设计合适的方法来传播节点之间的关系:在获得节点固有的特征嵌入后, 建立消息的功能构建节点间的信息交换功能;在评论推荐中,用户-商品-评论的 交互包含6种类型的关系:用户浏览了该商品(u-》i),该商品被用户浏览了 (i-》u),用户对评论进行投票(u-》r),评论是由用户发出的(r-》u),该商品 包含该评论(i-》r),该评论属于商品(r-》i);由于每个关系都有一个特殊的语 义,采用不同的参数来描述每个关系的信息传播过程中的特征表示,那么用户、 商品、评论在不同关系中的邻居的消息聚合表示为:
[0080][0081][0082][0083]nu
,nv,nr分别表示用户、商品、评论的邻居节点集合;
[0084]
而每一个聚合函数可以类似地表示为如下所示:
[0085]
[0086]
其中,表示注意力权重,w代表网络 参数;
[0087]
3)、基于消息的传播过程,每个节点可以纳入一个邻居的特征,为了更好地 捕捉复杂的上下文信息,进行两次消息传播过程;考虑到计算的有效性,我们不 需要需要计算图中的所有传播,而是计算交互周围的局部图,因此,提取每个交 互的局部图,由于局部图的规模不同会影响融合上下文信息的能力,用h跳来表 示局部图的规模,采用广度优先遍历的方法来生成局部图;局部图的初始节点(即 第0跳)是(u,v,r),然后考虑到与用户u交互的的商品和评论,已经与评论r交互 的用户也与商品v和属于商品v的其他评论进行了交互,得到第1跳局部图;基于 新增加的节点,得到第2跳局部图;由于用户/物品的交互关系由于用户/商品的 交互通常是稀疏的,因此对比于全局图在局部图上进行的信息传播可以减少很多, 在局部图上进行的计算量也比在全局图上进行的计算减少得多;
[0088]
在获得每个节点的嵌入后,将预测用户u对目标商品v的评论r的偏好,对目 标商品v中的评论r的偏好;用户的偏好会发生变化,特别是对相应商品的评论中 的评论,故而用户的偏好捕捉表示为如下:
[0089]u″
=f
trans
(u,v)=mlp(u,v)
[0090]
mlp代表一个全连接网络层,然后基于转换后的用户嵌入,得到用户对评 论的个性化偏好:
[0091]
s(u,v,r)=u
‘’
·r[0092]
其中,
·
表示点积,s()表示用户对评论的偏好的概率。
[0093]
步骤s3中,利用每个节点的若干跳的邻居特征,设计围绕每种交互的广度 优先遍历的局部图构建方法;
[0094]
步骤s3的具体过程是:
[0095]
1)、每个用户、商品和评论都有一个初始嵌入u0,v0,r0;
[0096]
2)、初始嵌入应该随着上下文而更新:
[0097]
基于支持集它可以构建一个交互图,其中用户/商品的交互图,构建一个交 互图,其中用户/物品/评论被认为是被认为是节点,交互被表示为边,除了用户 与评论的交互,评论和其对应的商品也被认为是也被认为是有交互的,用户和被 交互的评论所对应的商品也是被认为有交互的,通过交互图,信息在节点之间传 播在节点之间传播,因此用户的嵌入表示为:
[0098][0099]
其中,nu表示用户u的邻居节点集,ei表示相应邻居节点的嵌入邻居节点的 嵌入,同样地,我们可以得到传播的商品和评论的嵌入u

,v

,r


[0100]
3)、基于更新的节点嵌入,它将计算出用户的对评论的偏好:
[0101]
由于偏好不仅与用户/评论有关,也与它们之间的间接商品有关,因此偏好 预测函数将是s(u,v,r)=f
pre
(u,v,r),最后,根据偏好预测,将计算出正向交互 的概率正面交互的偏好大于负面交互的偏好的概率,即表示为:
[0102]
p(u,v,r

,r-)=σ(s
-s-)。
[0103]
步骤s4中,利用元训练的两类数据集对局部和全局参数分别进行更新,在 云测试阶段来对其进行评论偏好预测;
[0104]
步骤s4的具体过程是:
[0105]
由于评论推荐的数据集非常稀疏,所以它非常适合进行元学习框架,每个用 户通常有限的交互评论,该模型可以快速学习并捕捉到用户的偏好,并适应到新 的推荐场景任务中,在元学习中,它被分成两个阶段,元训练阶段τ
tr
和元测试 阶段τ
te
,在元训练阶段,模型将学习先验知识(即共享参数)跨越几个任务.在每 个任务τu∈τ
tr
中,它包含支持集su和查询集qu;在支持集上,模型将先前的知 识适应于新的场景中并只需更新少数的梯度,就可以在局部对模型的参数进行更 新;通过更新参数,模型对查询集的结果进行预测并计算损失;基于查询集上的 损失函数,前向传播到全局参数,该模型将更新全局参数并改变先验知识,从形 式上看为:
[0106][0107]
其中,l是损失函数,其可以表示为对数损失函数,即为:
[0108][0109]
其中,θ是先验知识(即模型的参数),是适应特定任务的参 数,在评论推荐场景中,对每个用户的推荐作为一项任务来对待,用户与评论的 交互历史可以被视为支持集,即样本(u,v,r)∈su,该方法利用支持集局部地和暂 时地适应模型的先验知识,其过程表示为:
[0110][0111]
其中,θ
(g)

(l)
表示局部参数和全局参数,基于适应后的模型,它可预测当 用户在查询集的遇到新商品中的评论时,用户对于评论的查询集样本为 (u,v,r)∈su;虽然在预测值和真实值之间会存在误差,但利用误差的查询集,该 模型将在全局地并且永久地更新其参数,以形成新的先验知识,其更新过程表示 为:
[0112][0113][0114]
在元测试阶段,它也包含多个任务,在每个任务τu∈τ
te
中,基于学到的先 验知识,模型适应具有支持集的新场景的参数,对于元测试阶段的查询集,它需 要使用更新的参数对查询集的预测结果进行建模;
[0115]
对于评论推荐场景,具有从元训练阶段学习到的先验知识的模型将在元测试 阶段适应具有有限交互即元测试阶段的支持集的新用户,然后适应的模型应该在 一些新场景即元测试阶段的查询集上为用户做出评论推荐;使用1个全连接层对 用户和评论的向量进行融合,最终将输出0-1间的概率值,来表示用户对于评论 的偏好程度。
[0116]
相同或相似的标号对应相同或相似的部件;
[0117]
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
[0118]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非 是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明 的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施 方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进 等,均应包含在本发明权利要求的保护范围之内。
再多了解一些

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

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

相关文献