1.一种考虑重复购买行为的会话推荐方法,其特征在于:根据用户当前会话中的购买行为序列,得到用户购买行为表征;用户当前会话为ST={v1,v2,…,vτ,…,vt},其中,vτ代表第τ个物品,T表示当前会话的时间段下标,且ST的向量表征为{x1,x2,…,xτ,…,xt},其中 用户当前会话ST中包含了用户购买行为序列|AT|表示序列AT的个数,AT的向量表征为 采用平均池对购买行为序列进行表征,如下:其中,AT是当前会话中的购买行为序列,是购买行为序列AT中购买的物品, 是物品a
的向量表示,|AT|表示序列AT的个数,p是购买行为序列表征;
s
根据用户当前会话,得到用户短期兴趣表征p ;本方法采用门控循环单元网络GRU对用户当前会话进行表征;GRU的输入序列为当前会话ST={v1,v2,…,vτ,…,vt};最后得到当前会话表征为 用户短期兴趣表征为当前会话表征l
更新用户长期兴趣表征p ;用户当前会话所在时间为T,用户历史所有会话表征仍然采用门控循环单元网络GRU结构得到,此时用户历史会话表征序列为l
用户长期兴趣的序列性不强,因此采用平均池获得用户较为稳定的长期兴趣表征p:其中,ZT‑1为时间T之前的用户历史会话表征列表, 为用户第τ个历史会话表征,|ZT‑1|l
表示序列ZT‑1的个数;p是用户的长期兴趣表征;
根据用户的短期和长期兴趣表征,在重复推荐模式和探索推荐模式中选择;在本方法l
中,基于用户的当前会话ST和用户长期兴趣p ,用户下一个交互物品vt+1的概率P(vt+1|ST,l
p)进一步分解为:
l l l l l
P(vt+1|ST,p)=P(r|ST,p)P(vt+1|r,ST,p)+P(e|ST,p)P(vt+1|e,ST,p)l l
其中,r和e分别代表重复模式和探索模式;P(r|ST,p)和P(e|ST,p)代表基于当前会话l l l
ST和用户长期兴趣p ,计算重复模式和探索模式的概率;P(vt+1|r,ST,p)和P(vt+1|e,ST,p)分别代表在重复模式和探索模式下,推荐物品vt+1的概率;判断推荐模式采用重复模式还是l l
探索模式也就是计算概率P(r|ST,p)和P(e|ST,p);
在重复模式下,根据用户的短期、长期兴趣表征和购买行为表征,在用户历史购买的物品序列中进行推荐;令用户历史购买序列为BT‑1={v1,v2,…,vl},用户历史购买序列BT‑1的向量表征为 其中上标a表示购买行为;那么,在重复模式下,用户历史购买的物l
品的推荐概率P(vτ|r,ST,p)是:其中, 是用户历史购买序列中第τ个物品vτ的向量表征; 和s
是模型参数,在模型训练时更新,共同决定了第τ个物品vτ的重要程度;V代表物品集合;p 、l a l
p和p分别为用户短期、长期兴趣表征以及当前会话中的购买行为表征;从P(vτ|r,ST,p)计算公式中看出,历史购买的物品和当前购买物品越相似,推荐该物品的概率越低;
在探索模式下,根据用户的短期兴趣表征和用户长期兴趣,对不在用户历史购买的物l
品序列中的物品进行推荐,物品推荐概率计算公式P(vτ|e,ST,p)为:s l
其中,xτ为物品集合V‑BT‑1中的物品vτ的向量表征;p和p分别为用户短期和长期兴趣表l
征;对于vτ∈BT‑1的物品, 也就是推荐概率P(vτ|e,ST,p)=0;
构建损失函数,训练模型参数;采用对数似然损失函数:l
其中,OT是训练集中所有的会话集合;P(vτ|ST,p)表示基于用户的当前会话ST和用户长l
期兴趣p ,预测用户下一个交互物品vτ的概率,vτ是会话序列中真实交互的物品;我们采用Adam优化器更新模型参数。
2.根据权利要求1所述的一种考虑重复购买行为的会话推荐方法,其中,所述对用户当前交互序列进行表征的门控循环单元网络GRU具体公式为:zτ=σ(Wxz·xτ+Whz·hτ‑1)rτ=σ(Wxr·xτ+Whr·hτ‑1)其中,rτ是重置门,zτ为更新门,这两个门控向量决定了哪些信息能作为门控循环单元的输出; 是当前记忆内容;xτ是当前层的节点输入; 和分别是控制更新门zτ和重置门rτ的参数; 和 是控制当前记忆内容 的参数;⊙是元素级别的矩阵相乘,σ是sigmoid函数;当前会话表征为
3.根据权利要求1所述的一种考虑重复购买行为的会话推荐方法,其中,用于判断推荐l l
模式采用重复模式还是探索模式的概率P(r|ST,p)和P(e|ST,p)具体为:s l
其中, 是模型权重参数,p和p 分别是用户动态的短期兴趣表征和静态的长期兴趣表征; 表示向量连接操作,softmax是softmax函数;从公式中看出,选择重复模式和探索模式是一个二分类问题,且是一个软分类问题。