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

异质信息网络中基于协同注意力机制的推荐的制作方法

2022-02-22 09:59:56 来源:中国专利 TAG:


1.本发明设计了一种异质信息网络中基于协同注意力机制的推荐模型,属于推荐系统领域。


背景技术:

2.早期,推荐系统中最经典的方法是矩阵分解,主要利用用户的历史交互信息进行推荐,传统的推荐方法通常会出现冷启动问题和数据稀疏问题,许多研究人员开始利用一些辅助信息用于推荐,如位置信息、社会信息和异构信息等。由于异质信息网络可以建模丰富的信息,在推荐系统中通常用来建模辅助数据信息,以实现更好的推荐效果。大部分基于异质信息网络的方法通常利用基于元路径的相似性来学习用户和项目的表示,对不同对象进行相似性度量,在研究异质信息网络中衡量对象间的结构相似性时,需要考虑连接两个对象的元路径种类,因为不同的元路径所表示的语义不同,在不同的语义情形下可能产生不同的相似性结果, pathsim方法用来评估基于对称路径的相同类型对等对象间的相似性;路径约束的随机游走模型pcrw,用于衡量文献异质信息网络中实体之间的相似性;hetesim用来度量任意元路径下任意对象之间的相似性;基于元路径语义的推荐系统heterecom用来评估电影间的相似性。
3.另一方面,网络表示学习在结构特征提取方面取得了进展,越来越多的异质信息网络表示学习方法应用于推荐中,herec基于元路径的随机游走生成节点序列以学习节点的嵌入表示,并将其集成到矩阵分解框架中用于商品推荐;huerec假设用户或项目在不同元路径下有共同的特征,从而利用所有元路径学习统一的用户和项目的表示;lgrec融合用户和物品的直接交互信息和基于元路径的广义交互信息,利用协同注意力机制实现top-n推荐; mcrec利用协同注意力机制来建模交互中的元路径和涉及到的用户和项目之间的相互影响; neuacf利用深度神经网络学习用户和项目不同方面的潜在特征,并以注意力机制融合得到最终的表示。
4.以上方法虽然取得了一定的成果,但是主要存在以下两方面不足:第一,现有的方法将用户和项目的信息转换成低维稠密向量生成用户和项目的嵌入表达,没有对用户和项目信息进一步处理;第二,在基于元路径上下文往往提取元路径交互的重要特征,忽略了特征信息的完整性;第三,在用户、项目和元路径融合时往往存在冗余信息,降低了推荐效果。


技术实现要素:

5.针对以上不足,我们提出了异质信息网络中基于协同注意力机制模型,该模型利用协同注意力机制以一种相互增强的方式提升用户和项目之间的表达,并以最大池化和平均池化相结合的方式利用异质信息网络提供的丰富元路径信息同时捕获元路径的重要特征和基本特征,最后,利用注意力机制处理融合之后的冗余信息。因此,该模型具有较优的推荐效果。
6.本发明采用的技术方案如下:
7.一种异质信息网络中基于协同注意力机制的推荐模型,其特征在于该发明包括以下步骤:
8.s1、读取数据集中的数据信息,生成用户和项目表示。
9.s2、将步骤s1中得到的用户和项目的表示采用协同注意力机制来进行生成表示。
10.s3、对步骤s2中得到的协同注意力机制生成表示分别对行和列进行最大池化操作,分别生成用户和项目的最终表示。
11.s4、在元路径的基础上得到的路径节点序列,采用卷积神经网络学习路径节点序列的表示。
12.s5、将步骤s4中得到的路径节点序列,分别采用最大池化和平均池化生成元路径的表示。
13.s6、对步骤s5中得到的元路径表示,采用注意力机制学习注意力权重,得到元路径上下文的最终表示。
14.s7、将步骤s3中得到的用户与项目的表示和步骤s6中得到的元路径上下文的表示进行联合表示。
15.s8、对步骤s7中得到的联合表示利用注意力机制获取其重要特征。
16.进一步地,步骤s1的具体方法为:
17.读取数据集中的数据信息,并对数据进行预处理,得到训练集、测试集和负样本。对于每个用户u和项目v,都存在与其直接相连的项目和用户,建立查找层转换成低维的稠密向量,即和lu表示与用户直接相连的项目数,lv表示与项目直接相连的用户数。该层对应了两个参数矩阵,即p∈r
|u|
×d和q∈r
|v|
×d其中,d表示节点的嵌入维度,|u| 和|v|分别表示用户u和项目v的总数目。因此,用户和项目的原始嵌入信息表示为矩阵:
18.xu=look-up(p,pu)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
19.yv=look-up(q,qv)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
20.其中,和分别对应模型图中用户和项目的原始嵌入。
21.进一步地,步骤s2的具体方法为:
22.每个用户有多个与其直接相连的项目,但并非所有的项目对该用户有相同的作用,对于每个项目亦是如此,因此,我们采用协同注意力机制[6],分别为用户和项目选择较为重要的项目和用户。计算用户和项目之间的协同注意力矩阵m中的每一项m
i,j
由用户、注意力矩阵a和用户直接相连的项目共同确定。m
i,j
可以按照如下公式进行计算:
[0023][0024][0025][0026]
其中,表示采用normal分布随机初始化的注意力矩阵,d1表示协同注意力的隐藏层大小,和分别表示用户和项目的原始嵌入矩阵,和分别表示第一层的注意力权重和偏置项,和分别表示第二层的注意力权重和偏置项,f(
·
)为relu函数。
[0027]
进一步地,步骤s3的具体方法为:
[0028]
协同注意力矩阵中的每一行表示与该用户直接相连的用户信息,每一列表示与该项目直接相连的项目信息,因此,通过最大池化即可得到用户和项目的重要邻居向量和利用 softmax归一化,公式计算如下所示:
[0029][0030][0031][0032][0033]
xu=x
uau
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0034]yv
=y
vav
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(11)
[0035]
其中,和表示用户和项目的重要邻居向量,通过归一化得到的概率可以确定特征的重要性,筛选用户和项目的重要邻居特征xu∈r1×d,yv∈r1×d。
[0036]
进一步地,步骤s4的具体方法为:
[0037]
mcrec[7]采用基于特征的矩阵分解框架svdfeature进行采样,并且已经取得了不错的效果,因此,本文采用相同的采样策略进行路径采样。输入相应的元路径(如umum),该元路径对应多条路径节点序列,如u
1-m
2-u
2-m1、
……
、ui′‑m1-u
2-mj′
,其中, i

和j

分别为用户和项目对应的下标,以u
1-m
2-u
2-m1为例,我们计算出u1与m2、m2与 u2以及u2与m1的两两相似性,对三个相似性求平均,最后根据平均相似性对所有的候选路径节点序列排序,保留平均相似性最高的k个路径节点序列。
[0038]
本文采用cnn处理得到的节点序列,cnn由卷积层(通过卷积运算产生新的特征)和最大池化层、平均池化层组成。某条元路径ρ对应的路径节点序列为p,采用cnn学习路径节点序列p的表达h
p

[0039]hp
=cnn(c
p
;θ)
ꢀꢀ
(12)
[0040]
其中,θ表示cnn中的相关参数,c
p
∈r
l
×d表示每个元路径的路径节点序列p拼接而成的矩阵,l表示路径节点序列的长度,d表示节点的嵌入维度,本文将cnn中的滤波器数量设置为个,则
[0041]
进一步地,步骤s5的具体方法为:
[0042]
每个元路径可以生成多条路径节点序列,节点序列经过cnn处理后,需要降维处理,采用最大池化可以选择重要的维度特征,但为了保证元路径特征的完整性,我们还采用了平均池化,元路径ρ的最终表达c
ρ
的计算如下所示:
[0043][0044]
[0045][0046]
其中,表示从元路径ρ中选取的k条路径节点序列的低维向量表达,表示向量的连接操作,和分别为重要维度特征和完整维度特征,至此,为了避免出现过拟合现象,引入了dropout机制随机丢弃神经网络中的部分神经元。
[0047]
进一步地,步骤s6的具体方法为:
[0048]
每个元路径所体现的语义不同,每个用户对不同的元路径有不同的偏好,即使对同一个元路径中的项目也有不同的语义,因此,需要学习用户和项目在元路径交互的重要性。本文采用两层架构实现注意力机制,利用softmax归一化得到元路径特征的注意力权重,与元路径的嵌入c
ρ
相乘计算加权和得到最终的嵌入cu→v,计算如下所示:
[0049][0050][0051][0052]
其中,f(
·
)为relu激活函数,c
ρ
∈r1×d表示元路径的嵌入,和表示第一层的权重矩阵和偏置项,和为第二层的权重矩阵和偏置项, d2表示路径注意力层的隐藏层大小,mu→
υ
表示当前交互所考虑的元路径的集合,cu→
υ
是基于元路径的上下文的最终嵌入。
[0053]
进一步地,步骤s7的具体方法为:
[0054]
在前面,我们已经得到用户和项目的最终嵌入以及元路径的最终嵌入,这三部分的嵌入融合如下所示:
[0055][0056]
其中,xu∈r1×r和y
υ
∈r1×d分别为用户和项目的最终嵌入,cu→v∈r1×d是基于元路径上下文的最终嵌入,表示向量的连接操作。
[0057]
进一步地,步骤s8的具体方法为:
[0058]
融合之后的嵌入表达存在冗余信息,引入了不必要的噪声,从而降低了推荐效果,因此,我们采用注意力机制提取嵌入表达中的重要特征用于推荐,注意力及最终嵌入表达如下所示:
[0059]
za=f(w
(2)
f(w
(1)hu,v
b
(1)
) b
(2)
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(20)
[0060]
α
u,v
=softmax(za)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(21)
[0061]zu,v
=h
u,v
α
u,v
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(22)
[0062]
其中,h
u,v
∈r1×
3d
为融合后的嵌入表达,w
(1)
∈r
3d
×d和b
(1)
∈rd×1分别为第一层的权重矩阵和偏置项,w
(2)
∈rd×1和b
(2)
∈r1×1分别为第二层的权重矩阵和偏置项。
[0063]
融合后的嵌入表达经过注意力机制处理之后,送入包含两个隐藏层的多层感知机中,进行非线性学习,采用relu函数作为激活函数,则多层感知机的输出z为:
[0064]
z=f(w
(2)
f(w
(1)zu,v
b
(1)
) b
(2)
)
ꢀꢀ
(23)
[0065]
其中,输入为z
u,v
∈r1×
3d
,w
(1)
∈r
3d
×d和b
(1)
∈rd×1分别为第一层的权重矩阵和偏置项, w
(2)
∈rd×1和b
(2)
∈r1×1分别为第二层的权重矩阵和偏置项。
[0066]
本发明利用协同注意力机制学习用户和项目之间的表示,并在学习元路径上下文表示中将元路径节点序列分别利用最大池化和平均池化计算路径的有效表示,同时也验证了基于 attention的特征融合的有效性。将用户、项目和元路径上下文的有效表示结合起来,最终实现排序推荐,提高了推荐性能。
附图说明
图1是本发明的整体框架图。
再多了解一些

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

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

相关文献