一种序列推荐方法及设备技术

技术编号:35755549 阅读:13 留言:0更新日期:2022-11-26 19:02
本发明专利技术公开一种序列推荐方法及设备,进入随机嵌入层,将项目表示为分布,将不确定性引入到项目嵌入中,获得随机嵌入;进入自我注意层,建立自适应随机嵌入的自我注意变体;进入前馈网络和层输出,前馈网络采用两个具有ELU激活的点式完全连接层,在学习随机嵌入时引入非线性;采用层输出包括剩余连接、层规范化和脱落层;进入预测层,根据输出嵌入预测下一项,获得预测排名;采用正则化项来增强正样本项和负样本项之间的距离,正负BPR损失作为基准损失来衡量排名预测误差;采用排名做推荐。本发明专利技术能够有效提升序列推荐准确性和效率,使得推荐技术更加合理有效。荐技术更加合理有效。荐技术更加合理有效。

【技术实现步骤摘要】
一种序列推荐方法及设备


[0001]本专利技术属于通信技术
,特别是涉及一种序列推荐方法及设备。

技术介绍

[0002]随着互联网应用逐渐广泛,序列推荐技术显得越来越重要,比如购物、听音乐、看视频等等序列推荐场景出现的越来越频繁。目前存在着多种序列推荐技术,对序列推荐产生了重要的影响,但仍存在改进空间。
[0003]顺序推荐(SR)由于其成功性和可扩展性,引起了学术界和业界的广泛关注。SR方法通过按时间顺序对交互进行排序,将每个用户的历史交互格式化为一个序列。SR的目标是描述用户不断变化的兴趣,并预测下一个首选项。SR通过在序列中建模项目

项目转换关系来编码用户的动态兴趣。
[0004]目前已知的几种顺序推荐的方案:(1)马尔可夫链Markov Chain:通过历史数据构建项目之间的转移矩阵,之后只需要通过建立好的转移矩阵就可以预测下一个可能的项目是什么了。(2)循环深度网络RNN:给定一个历史用户

项目交互序列,基于循环神经网络(RNN)的序列推荐通过对给定交互的顺序依赖关系建模来预测下一个可能的交互。其中,比较经典的模型是GRU4Rec。(3)注意力机制Transformer:Transformer技术引入了自我注意机制来揭示位置

项目

项目关系。比较典型的模型有SASRec和BERT4Rec。SASRec是根据Transformer技术的改进的,允许捕捉长期语义,拥有注意机制,预测较少的动作。它从动作历史记录中确定哪些项目是“相关的”,并用于预测下一个项目。BERT4Rec同样改进了Transformer技术,采用顺序双向建模。
[0005]基于Transformer的方法将项目嵌入为向量,使用点积自我注意力的方法来衡量项目之间的关系,表现出优越的能力。但是基于点积自我注意的方法未能考虑动态不确定性和协作传递性的问题。现有的SR方法假设动态用户兴趣是确定性的。因此,推断出的用户嵌入是潜在空间中的固定向量,不足以表示各种用户兴趣,尤其是在真实的动态环境中。项目转换反映了用户顺序行为的演变过程,有时很难理解,一个项目转换中的两个项目甚至可能不在同一产品类别中。因此,如果用户有很大一部分意外的项目转换,那么使用确定性流程对该用户进行建模可以获得次优的建议。BPR衡量用户对积极项目和随机抽样的消极项目的偏好得分之间的差异。然而,不能保证正项在潜在空间中离负项更远。

技术实现思路

[0006]为了解决上述问题,本专利技术提出了一种序列推荐方法及设备,能够有效提升序列推荐准确性和效率,使得推荐技术更加合理有效。
[0007]为达到上述目的,本专利技术采用的技术方案是:一种序列推荐方法,包括步骤
[0008]S10,进入随机嵌入层,将项目表示为分布,将不确定性引入到项目嵌入中,获得随机嵌入;
[0009]S20,进入Wasserstein自我注意层,建立自适应随机嵌入的自我注意变体;
[0010]S30,进入前馈网络和层输出,前馈网络采用两个具有ELU激活的点式完全连接层,在学习随机嵌入时引入非线性;采用层输出包括剩余连接、层规范化和脱落层;
[0011]S40,进入预测层,根据输出嵌入预测下一项,获得预测排名;
[0012]S50,采用正则化项来增强正样本项和负样本项之间的距离,正负BPR损失作为基准损失来衡量排名预测误差;
[0013]S60,采用排名做推荐。
[0014]进一步的是,使用多维椭圆高斯分布来表示项,椭圆高斯分布由平均向量和协方差向量控制,其中协方差引入项目的潜在不确定性;
[0015]对于所有项目,定义一个平均嵌入表M
μ
和协方差嵌入表M
Σ

[0016]由于均值和协方差识别不同的信号,为均值和协方差引入单独的位置嵌入P
μ
和P
Σ
,获得用户的均值和协方差序列嵌入,计算公式为:
[0017][0018]随机嵌入表示为d

维椭圆高斯分布其中并且并且
[0019]进一步的是,在Wasserstein自我注意层建立自适应随机嵌入的自我注意变体时:
[0020]表示作为自我关注的价值观,分别获取项目s
k
和项目s
t
的随机嵌入;
[0021]采用Wasserstein距离来测量两个项目的随机嵌入之间的距离,计算A
kt
表示项目s
k
和项目s
t
之间的注意值,k≤t,包括:
[0022]对于两个项目s
k
和s
t
,相应的随机嵌入是和
[0023]其中:
[0024][0025]其中,分别表示对应的项目的不同距离值,Σ表示协方差距离,μ表示平均值距离,K表示项目s
k
中第K个项目,T表示项目s
t
中第T个项目;
[0026]将注意力权重定义为2

Wasserstein距离W2(
·
,
·
),获得自我关注的注意值:
[0027][0028]进一步的是,建立自我项目在序列每个位置的输出嵌入是之前步骤中嵌入的加权和,其中权重是归一化的注意值获得自我关注的注意值为:
[0029][0030]其中,A
jt
表示从第j个项目到第t个项目的注意力值。
[0031]进一步的是,由于每个项都表示为具有均值和协方差的随机嵌入,因此均值和协方差的聚合,采用高斯分布的线性组合特性,计算公式为:
[0032][0033]其中并且k≤t;
[0034]输出结果和共同形成新生成序列的随机嵌入,将历史序列信号与不确定性意识聚合在一起。
[0035]进一步的是,两个具有ELU激活的点式完全连接层,在学习随机嵌入时引入非线性:
[0036][0037][0038]其中以及表示学习参数;
[0039]采用剩余连接、层规范化和脱落层,层输出为:
[0040][0041][0042]如果堆叠更多层,Z
μ
和Z
Σ
作为下一个Wasserstein自我注意层的输入。
[0043]进一步的是,根据输出嵌入预测下一项,包括步骤:
[0044]在序列的第t个位置的项目s
t
,计算第t+1位置上的下一个项目j的预测分数,表示为两个项目和的2

Wasserstein距离:
[0045][0046]其中和是给定序列(s1,s2,

,s
t
)的表示,1≤t≤n;)的表示,1≤t≤n;和是输入随机嵌入表M
μ
和M
Σ
的的嵌入索引;
[0047]按升序排列分数来生成排名前N的推荐列表。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种序列推荐方法,其特征在于,包括步骤S10,进入随机嵌入层,将项目表示为分布,将不确定性引入到项目嵌入中,获得随机嵌入;S20,进入Wasserstein自我注意层,建立自适应随机嵌入的自我注意变体;S30,进入前馈网络和层输出,前馈网络采用两个具有ELU激活的点式完全连接层,在学习随机嵌入时引入非线性;采用层输出包括剩余连接、层规范化和脱落层;S40,进入预测层,根据输出嵌入预测下一项,获得预测排名;S50,采用正则化项来增强正样本项和负样本项之间的距离,正负BPR损失作为基准损失来衡量排名预测误差;S60,采用排名做推荐。2.根据权利要求1所述的一种序列推荐方法,其特征在于,使用多维椭圆高斯分布来表示项目,椭圆高斯分布由平均向量和协方差向量控制,其中协方差引入项目的潜在不确定性;对于所有项目,定义一个平均嵌入表M
μ
和协方差嵌入表M
Σ
;由于均值和协方差识别不同的信号,为均值和协方差引入单独的位置嵌入P
μ
和P
Σ
,获得用户的均值和协方差序列嵌入,计算公式为:随机嵌入表示为d

维椭圆高斯分布其中并且并且3.根据权利要求1或2所述的一种序列推荐方法,其特征在于,在Wasserstein自我注意层建立自适应随机嵌入的自我注意变体时:表示作为自我关注的价值观,分别获取项目s
k
和项目s
t
的随机嵌入;采用Wasserstein距离来测量两个项目的随机嵌入之间的距离,计算A
kt
表示项目s
k
和项目s
t
之间的注意值,k≤t,包括:对于两个项目s
k
和s
t
,相应的随机嵌入是和其中:其中:其中,分别表示对应的项目的不同距离值,Σ表示协方差距离,μ表示平均值距离,K表示项目s
k
中第K个项目,T表示项目s
t
中第T个项目;将注意力权重定义为2

Wasserstein距离W2,获得自我关注的注意值:4.根据权利要求3所述的一种序列推荐方法,其特征在于,建立自我项目在序列每个位
置的输出嵌入是之前步骤中嵌入的加权和,其中权重是归一化的注意值获得自我关注的注意值为:其中,A
jt
表示:从第j个项目到第t个项目的注意力值。5.根据权利要求4所述的一种序列推荐方法,其特征在于,由于每个项都表示为具有均值和协方差的随机嵌入,因此均值和协方差的聚合,采用高斯分布的线性组合特性,计算公式为:其中并且k≤t;输出结果和共同形成新生成序列的随机嵌入,将历史序列信号与不确定性意识聚合在一起。6...

【专利技术属性】
技术研发人员:王都史远王书海赵晓亮王焕君彭浩
申请(专利权)人:石家庄铁大科贤信息技术有限公司河北古牛科技服务有限公司
类型:发明
国别省市:

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

1