一种基于Transformer编码器和位置编码的推荐方法技术

技术编号:35997113 阅读:66 留言:0更新日期:2022-12-17 23:13
本发明专利技术涉及推荐方法技术领域,尤其涉及一种基于Transformer编码器和位置编码的推荐方法,通过加入位置编码,能够基于用户所有购买历史行为做序列推荐,考虑到用户兴趣的多样性,通过引入Transformer编码器,编码器为FM和DNN生成更好的上下文对齐向量,编码器通过与其他特征的线索对齐特征嵌入,编码器生成的嵌入有利于进一步的特征交互,从而挖掘出特征之间的相关性,从而向用户提供更为准确更加符合实际需求的推荐结果。实际需求的推荐结果。实际需求的推荐结果。

【技术实现步骤摘要】
一种基于Transformer编码器和位置编码的推荐方法


[0001]本专利技术涉及推荐方法
,尤其涉及一种基于Transformer编码器和位置编码的推荐方法。

技术介绍

[0002]随着互联网及各种智能移动设备在全球范围内的发展和普及,互联网逐渐满足了人们对信息的需求,众多电子商务网站利用推荐系统推送自己的项目,电商推荐系统根据用户的历史浏览记录,对这些记录了用户和物品的交互信息以及其他信息进行建模,预测用户的兴趣并且挖掘出用户的一些潜在个性化需求。例如在电子商务、视频电影推荐、网络音乐和社交网络等场景中,一方面,推荐系统,可以快速帮助用户找到对他们有价值的信息,另一方面可以使信息呈现在对其感兴趣的用户面前,达到消费者和生产者双赢的局面。因此推荐系统具有重要的应用价值。
[0003]目前主流的个性化推荐方法主要分为传统的协同过滤推荐方法和基于深度学习的推荐方法。
[0004]随着深度学习技术的快速发展,研究者们逐渐发现将深度学习应用到推荐系统上的效果优于传统的推荐方法,因此基于深度学习的推荐方法应时而生。基于深度学习的推荐方法大多采用Embedding&MLP模式,即将高维稀疏的特征数据经过嵌入层(embedding)转化为低维稠密向量,然后将映射结果传入MLP算法进行高阶非线性特征交互的学习。但是这种方法有两个局限性,这些算法在进行特征交互之前仅仅依赖特征嵌入,然后把所有的嵌入特征进行无差别的特征交互,这显然是不合理的,因为有效的特征组合对于算法的预测至关重要,另外这些算法也忽略了用户行为序列中的顺序信息。

技术实现思路

[0005]有鉴于此,本专利技术的目的在于提出一种基于Transformer编码器和位置编码的推荐方法,以解决现有算法忽略了用户行为序列中的顺序信息的问题和不能充分挖掘用户潜在兴趣的问题。。
[0006]基于上述目的,本专利技术提供了一种基于Transformer编码器和位置编码的推荐方法,包括:
[0007]S1、通过嵌入层将数据集中的高维稀疏特征映射成低维稠密向量;
[0008]S2、对嵌入的特征加入位置编码,作为标记用户行为序列的位置信息;
[0009]S3、引入Transformed中的Encode编码器对加入位置编码的嵌入特征进行编码;
[0010]S4、将编码器的输出馈送到FM和DNN分别进行显示交互和隐式特征交互;
[0011]S5、将FM和DNN的中间输出映射到sigmoid激活函数,进行目标预测,并输出推荐结果。
[0012]优选地,在步骤S1之前,本方法还包括:
[0013]将文件形式的数据集进行预处理,将数据集中包含用户和项目的数值型特征x
dense
和类别型特征x
sparse
分别处理,其中类别特征的单值特征使用one

hot编码x
sparse

one
=[0,1,0

0,0]m
,多值特征使用multi

hot编码x
sparse

multi
=[1,1,0

1,0]m
,m代表编码维度;
[0014]对处理过的分为训练集、验证集和测试集。
[0015]优选地,步骤S5进一步包括:
[0016]第一部分:基于FM的推荐方法,每一个特征引入一个具有低维与稠密特性的向量特征,并使用特征间向量特征的内积来衡量特征间的相关性,得到特征的一阶重要性和二阶相关性;
[0017]第二部分:基于DNN的推荐方法,得到特征之间的高阶交互。
[0018]优选地,步骤S5进一步包括:
[0019]将基于FM算法的结果和基于DNN的结果进行拼接,放入输出层通过sigmoid激活函数拼接输出;
[0020]使用交叉熵损失函数计算模型的损失值,通过反向传播更新模型参数,使用L2正则防止过拟合;
[0021]基于预测输出,挑选出其中评分最高的n个项目作为推荐结果。
[0022]优选地,步骤S2进一步包括:
[0023]嵌入层的输出矩阵为[E1;E2;...;E
M
],将位置编码加入到嵌入层的公式如下:
[0024]E={e
i
+PE
i
|i∈n}
[0025]其中:e
i
表示用户第i个行为历史特征,PE
i
表示第i个行为发生的次序,对于位置编码,采用不同频率的正弦和余弦函数,计算公式如下:
[0026][0027][0028]其中,pos代表该特征在序列中的位置,i代表嵌入维度,位置编码的每个维度对应于正弦波,由于正弦和余弦函数具有周期性,对于任何固定偏移量k,PE
pos+k
的位置都能表示成PE
pos
的线性函数。
[0029]优选地,步骤S3进一步包括:
[0030]通过多头注意力机制,从输入向量集E映射到三个向量,相似性矩阵S由每对q和k向量计算,根据计算出的相似性矩阵S对v进行加权求和,最后将不同注意力头的输出合并为最终输出;
[0031]残差连接,并进行层归一化;
[0032]通过前馈神经网络,将特征嵌入映射到更高维的嵌入空间,返回到原始维空间;
[0033]残差连接,并进行层归一化。
[0034]优选地,相似性矩阵S计算公式采用双线性函数计算,公式为:
[0035][0036]其中,从输入向量集E映射到三个向量,相似性矩阵由每对q和k
向量计算,为可学习的参数矩阵。
[0037]优选地,将不同注意力头的输出合并为最终输出的合并函数采用最大池化的方法,合并的具体公式为:
[0038]Merge
maxpool
(O
(1)
,O
(2)
,

,O
(H)
)=Maxpool(O
(1)
,O
(2)
,

,O
(H)
)
[0039]其中,O表示不同多头注意力的输出结果。
[0040]优选地,步骤S4中的特征交互为两个并行结构,共享编码器输出的结果。
[0041]优选地,本推荐方法采用分布式的Spark计算。
[0042]本专利技术的有益效果:
[0043]1、由于用户的序列顺序对预测用户潜在兴趣变化十分重要,因为用户的一个行为可能依赖于很久以前的行为,而一个用户对不同目标项的点击行为受到不同兴趣部分的影响,通过加入位置编码,用户行为序列中的顺序信息,能够基于用户所有购买历史行为综合推荐,而不是针对“下一次购买”推荐。
[0044]2、引入Transformer编码器,编码器为FM和DNN生成更好的上下文对齐向量。与本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Transformer编码器和位置编码的推荐方法,其特征在于,包括:S1、通过嵌入层将数据集中的高维稀疏特征映射成低维稠密向量;S2、对嵌入的特征加入位置编码,作为标记用户行为序列的位置信息;S3、引入Transformed中的Encode编码器对加入位置编码的嵌入特征进行编码;S4、将编码器的输出馈送到FM和DNN分别进行显示交互和隐式特征交互;S5、将FM和DNN的中间输出映射到sigmoid激活函数,进行目标预测,并输出推荐结果。2.根据权利要求1所述的基于Transformer编码器和位置编码的推荐方法,其特征在于,步骤S1之前,所述方法还包括:将文件形式的数据集进行预处理,将数据集中包含用户和项目的数值型特征x
dense
和类别型特征x
sparse
分别处理,其中类别特征的单值特征使用one

hot编码x
sparse

one
=[0,1,0

0,0]
m
,多值特征使用multi

hot编码x
sparse

multi
=[1,1,0

1,0]
m
,m代表编码维度;对处理过的分为训练集、验证集和测试集。3.根据权利要求1所述的基于Transformer编码器和位置编码的推荐方法,其特征在于,步骤S5进一步包括:第一部分:基于FM的推荐方法,每一个特征引入一个具有低维与稠密特性的向量特征,并使用特征间向量特征的内积来衡量特征间的相关性,得到特征的一阶重要性和二阶相关性;第二部分:基于DNN的推荐方法,得到特征之间的高阶交互。4.根据权利要求1所述的基于Transformer编码器和位置编码的推荐方法,其特征在于,步骤S5进一步包括:将基于FM算法的结果和基于DNN的结果进行拼接,放入输出层通过sigmoid激活函数拼接输出;使用交叉熵损失函数计算模型的损失值,通过反向传播更新模型参数,使用L2正则防止过拟合;基于预测输出,挑选出其中评分最高的n个项目作为推荐结果。5.根据权利要求1所述的基于Transformer编码器和位置编码的推荐方法,其特征在于,步骤S2进一步包括:嵌入层的输出矩阵为[E1;E2;...;E
M
]...

【专利技术属性】
技术研发人员:王卫东胡克富姜元昊周枫
申请(专利权)人:江苏科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1