一种考虑用户未来偏好的基于深度强化学习的推荐方法技术

技术编号:36356778 阅读:12 留言:0更新日期:2023-01-14 18:13
本发明专利技术提供了一种考虑了用户未来偏好的基于深度强化学习的序列推荐算法。该方法包括:S1:根据用户t时刻的交互项目的顺序集合X

【技术实现步骤摘要】
一种考虑用户未来偏好的基于深度强化学习的推荐方法


[0001]本专利技术属于强化学习和推荐
,更具体地,涉及一种考虑用户未来偏好的基于深度强化学习的推荐方法。

技术介绍

[0002]近年来,随着云计算和大数据等网络技术的迅速发展,互联网的信息量爆炸式增长,尤其是在电子商务领域中,对于用户信息过载的问题越来越严重。推荐系统应运而生,个性化推荐技术利用用户某种兴趣点和购买特点可以帮助用户在海量的信息中心快速找到自己某种兴趣点和购买特点,向用户推荐感兴趣的内容,引导用户选择购买自己感兴趣的,适合自己使用的商品。
[0003]然而在基于电子商务的序列推荐系统中,推荐项目的准确性一直备受关注。然而只关注推荐项目的准确性,忽略了推荐项目的多样性,可能会使用户陷入“信息茧房”。从而使得推荐的内容越来越单一,这会降低用户的长期满意度,不利于电商平台。现有的推荐算法在学习用户偏好的时候,仅考虑历史上相互作用的项目之间的顺序相关性,以捕获用户的历史偏好。但是,用户的偏好本质上是随着时间的推移和多样化的方式,因此仅对历史偏好进行建模(不知道随时间不断发展的偏好趋势)可能会较差。
[0004]为了解决以上所述问题,我们将深度学习融入到强化学习中,不仅考虑用户的一般偏好(历史偏好)而且考虑了用户的相对未来偏好,将推荐过程建模成马尔科夫决策过程,并利用强化学习的特性,通过推荐产品并由此接受用户的反馈来动态的学习最优的策略,从而实现对用户的动态行为的学习,在准确性和多样性上都有了明显的提升。

技术实现思路

[0005]针对上述现有技术存在的缺陷,本专利技术提出了一种考虑用户未来偏好的基于深度强化学习的推荐方法,旨在解决现有方法只关注推荐的准确性,忽略了多样性的问题,并使用公开的数据集进行了实验,在多样性的相关指标上得到了提升。
[0006]S1:根据用户u的交互项目集合X
U
,生成用户的一般偏好(历史偏好)。其中交互项目集合X
u
是指用户交互过的前n个项目数据。
[0007]S2:根据用户u的交互项目集合X
U
,通过邻居序列提取模块得到用户邻居的相对未来交互序列,利用同S1一样的方法得到用户的未来偏好。
[0008]S3:将S1和S2得到的用户的一般偏好(历史偏好)和用户的未来偏好通过注意力网络合并成用户的综合偏好,并作为深度强化学习中的状态S
t

[0009]S4:构建马尔可夫决策过程,并建立Q网络。
[0010]S5:建立基于Double

DQN的推荐模型并进行训练,交替更新Double

DQN的推荐模型。
[0011]进一步地,步骤1中,所述的用户的集合为U={u1,u2,.......u
|U|
},商品的集合为V={v1,v2,.......v
|v|
},用户交互项目的顺序按时间排序为X
U
={X
1u
, X
2u
,....... X
|XU|u },u
∈U,用户在时间步长t上与用户进行交互的项目表示为x
tu
。我们首先从用户历史行为中计算用户嵌入,为了捕获动态的交互序列,我们将引入循环神经网络RNN应用于可变长度的用户嵌入的计算。我们使用长短期记忆单元LSTM作为RNN基本单元捕获时间动态。每个LSTM单元在t时刻包括了记忆细胞c
t
,输出门i
t
,遗忘门f
t
,输出门o
t
,这些门是根据上一个隐藏状态h
t
‑1和当前的输入x
t
计算的。[f
t
,i
t
,o
t
] = sigmoid(W[h
t
‑1,x
t
]),记忆细胞c
t
更新于部分的忘记存在的记忆和增加新的记忆:I
t
:I
t
=tanh(V[h
t
‑1,x
t
])c
t = f
t

c
t
‑1+i
t
·
I
t
。一旦记忆内容更新了,隐藏状态也会更新h
t
=o
t

tanh(c
t
)将用得到的用户u特征信息利用注意力网络进行融合得到s1中所描述的用户u的一般偏好(历史偏好)P
history

[0012]进一步地,步骤2中,我们通过协同过滤比较用户之间的相似性,以根据历史互动隐式地提取邻居行为,我们采用皮尔逊相关系数:I(i)是一组由用户i,r
ik , `r
i
进行交互/评级的项目,代表用户i对项目k的速率和用户i的平均率。用户相似性s
i
的范围从[

1,1]不等,根据此定义,用户i和j之间的相似性与值成正比。接着我们采用一个映射函数f(x)=(x+1)/2使得PCC相似性的范围在[0,1]之间。对于历史上只有一个常见项目的用户,当用户对公共项目的偏好相似时,PCC相似性获得1,而当用户的偏好是

1时,则可以鼓励邻居的多样性,同时损害相似性计算的公平性。除此之外还设计了一个滤波器来提取相似用户:使用目标项目作为键值,从项目

用户映射中提取一个用户集合,其中的用户均与目标项目发生过交互。然后为每个邻居用户u构建一个相对于目标项目s
tu
的未来序列,其中每个项目的交互都发生在目标项s
tu
之后:其中R表示时间戳。F
u
就是当前用户的相对未来序列。将其送入同S1的LSTM中得到用户的未来偏好P
future

[0013]进一步地,步骤三中,我们用用户的综合偏好的隐藏状态h
t
作为用户的状态s
t
,计算公式如下:S
t
=a
h
s
h
+a
f
s
f
,其中a
h
,a
f
是用户对于一般偏好(历史偏好)和未来偏好的关注度。s
h
,s
f
分别是用户的一般偏好(历史偏好)和未来偏好的嵌入向量。计算公式如下:
其中q,W和b分别是可训练的查询向量、权重矩阵和偏置项。δ(

)是一种非线性激活函数。可以看出,其中的可训练的网络参数就是q,W,b。
[0014]进一步地,步骤四中,我们考虑采用强化学习(RL)方法来进行顺序推荐。就强化学习(RL)而言,我们可以将下一个项目推荐问题作为马尔可夫决策过程(MDP),在该过程中,推荐代理通过顺序推荐项目以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种考虑了用户未来偏好的基于深度强化学习的序列推荐算法,其特征在于,具体包括以下步骤:S1:根据用户u的交互项目集合X
U
,生成用户的一般偏好(历史偏好),其中交互项目集合Xu是指用户交互过的前n个项目数据;S2:根据用户u的交互项目集合X
U
,通过邻居序列提取模块得到用户邻居的相对未来交互序列,利用同S1一样的方法得到用户的未来偏好;S3:将S1和S2得到的用户的一般偏好(历史偏好)和用户的未来偏好通过注意力网络合并成用户的综合偏好,并作为深度强化学习中的状态S
t
;S4:构建马尔可夫决策过程,并建立Q网络;S5:建立基于Double

DQN的推荐模型并进行训练,交替更新Double

DQN的推荐模型根据权利要求1所述的一种考虑了用户未来偏好的基于深度强化学习的序列推荐算法其特征在于,步骤1中,所述的用户的集合为U={u1,u2,.......u
|U|
},商品的集合为V={v1,v2,.......v
|v|
},用户交互项目的顺序按时间排序为X
U
={X
1u
, X
2u
,....... X
|XU|u },u∈U,用户在时间步长t上与用户进行交互的项目表示为x
tu
,我们首先从用户历史行为中计算用户嵌入,为了捕获动态的交互序列,我们将引入循环神经网络RNN应用于可变长度的用户嵌入的计算,我们使用长短期记忆单元LSTM作为RNN基本单元捕获时间动态,每个LSTM单元在t时刻包括了记忆细胞c
t
,输出门i
t
,遗忘门f
t
,输出门o
t
,这些门是根据上一个隐藏状态h
t
‑1和当前的输入x
t
计算的,[f
t
,i
t
,o
t
] = sigmoid(W[h
t
‑1,x
t
]),记忆细胞c
t
更新于部分的忘记存在的记忆和增加新的记忆:I
t
:I
t
=tanh(V[h
t
‑1,x
t
])c
t = f
t

c
t
‑1+i
t
·
I
t
,一旦记忆内容更新了,隐藏状态也会更新h
t
=o
t

tanh(c
t
)将用得到的用户u特征信息利用注意力网络进行融合得到s1中所描述的用户u的一般偏好(历史偏好)P
history
。2.根据权利要求1所述的一种考虑了用户未来偏好的基于深度强化学习的序列推荐算法其特征在于,步骤2中,我们通过协同过滤比较用户之间的相似性,以根据历史互动隐式地提取邻居行为,我们采用皮尔逊相关系数:I(i)是一组由用户i,r
ik , `r
i
进行交互/评级的项目,代表用户i对项目k的速率和用户i的平均率,用户相似性s
i
的范围从[

1,1]不等,根据此定义,用户i和j之间的相似性与值成正比,接着我们采用一个映射函数f(x)=(x+1)/2使得PCC相似性的范围在[0,1]之间,对于历史上只有一个常见项目的用户,当用户对公共项目的偏好相似时,PCC相似性获得1,而当用户的偏好是

1时,则可以鼓励邻居的多样性,同时损害相似性计算的公平性,除此之外还设计了一个滤波器来提取相似用户:使用目标项目作为键值,从项目

用户映射中提取一个用户集合,其中的用户均与目标项目发生过交互,然后为每个邻居用户u构建一个相对于目标项目s
tu
的未来序列,其中每个项目的交互都发生在目标项s
tu
之后:
其中R表示时间戳,F
u
就是当前用户的相对未来序列,将其送入同S1的LSTM中得到用户的未来偏好P
future
。3.根据权利要求1所述的一种考虑了用户未来偏好的基于深度强化学习的序列推荐算法其特征在于,步骤3中,我们用用户的综合偏好的隐藏状态h
t
作为用户的状态S,计算公式如下:S
t
=...

【专利技术属性】
技术研发人员:郑虹孙建陈志雨郭建伟刘钢
申请(专利权)人:长春工业大学
类型:发明
国别省市:

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

1