1.一种基于多兴趣重复网络的会话推荐方法,其特征在于:根据用户当前交互会话序列,得到用户当前多兴趣表征;用户当前交互的会话可以表示为ST={x1,x2,…,xτ,…,xt},其中,xτ代表用户交互的第τ个物品,T表示当前会话的时间段下标,且ST的向量表征为{x1,x2,…,xτ,…,xt},其中 d是物品向量表征的长度;采用基于门机制的多兴趣胶囊网络从物品序列中抽取出用户多兴趣,伪代码为:其中, 为会话中第i个物品向量表征, 是第j个兴趣的表征且qj为所有用户共享;用户兴趣的个数参数为M; 和 是第j个兴趣的训练参数;
为转移矩阵,被所有兴趣共享;⊙是门机制中常用的向量元素级别(element‑wise)的乘法;通过兴趣相关的门机制(interest‑specific gating mechanism)和转移矩阵,可以从物品向量xi中抽取出不同兴趣空间下的向量表征 方法是胶囊网络中的动态路由部分,输入参数 是第i个物品向量表征xi映射到第j个兴趣空间的向量表征,输入参数r是动态路由算法的迭代次数,输出参数vj代表用户多兴趣向量表征;bij是第i个物品向量表征到第j个兴趣的连接系数,cij是系数bij归一化后的连接系数;squash是胶囊网络中常用的squash向量激活函数,公式为根据用户历史购买物品序列,得到用户历史购买多兴趣表征;用户历史购买物品序列可以表示为BT‑1={x1,x2,…,xl},用户历史消费序列BT‑1的向量表征为 其中上标a表示购买行为;本方法在基于门机制的多兴趣胶囊网络算法的基础上,继续改进胶囊网络从用户历史购买物品序列中抽取出用户多兴趣;为了使得在重复模式中增加推荐结果的多样性,本方法提出一种增强推荐多样性的多兴趣胶囊网络算法;该算法根据场景继续改进胶囊网络连接系数bij的归一化方式;
根据用户当前多兴趣表征和用户历史购买多兴趣表征,得到重复推荐模式(推荐用户历史购买物品)的概率;基于用户的当前会话ST和用户历史购买物品序列BT‑1,推荐下一个交互物品xt+1的概率P(xt+1|ST,BT‑1)可以进一步分解为:P(xt+1|ST,BT‑1)=P(r|ST,BT‑1)·P(xt+1|r,ST,BT‑1)+(1‑P(r|ST,BT‑1))·P(xt+1|e,ST)其中,r和e分别代表重复模式(repeat mode)和探索模式(explore mode),重复模式指在用户历史购买物品集中推荐,探索模式指在用户历史购买物品集以外的候选物品集中推荐;P(r|ST,BT‑1)代表基于当前交互会话序列ST和用户历史购买物品序列BT‑1,重复模式的概率;P(xt+1|r,ST,BT‑1)和P(xt+1|e,ST)分别代表在重复模式和探索模式下,推荐物品xt+1的概率;重复模式的概率P(r|ST,BT‑1)主要由当前会话中抽取的多兴趣vj决定,且多兴趣vj的权重由历史购买兴趣 和当前兴趣vj的相似度 决定,这里采用余弦相似度来计算向量相似度;参数 是转化向量,σ是sigmoid函数;
在重复模式下,根据用户的当前多兴趣表征和历史购买多兴趣表征,在用户历史购买的物品序列中进行推荐;推荐物品xi∈BT‑1的概率为P(xi∣r,ST,BT‑1):其中, 是向量之间的相似度函数; 表示物品xi是购买兴趣 的概率;V代表物品集合;
在探索模式下,根据用户的当前多兴趣表征,对不在用户历史购买物品序列中的物品进行推荐;
其中, 和 是模型需要训练的参数;vτ为物品集合V‑BT‑1中的物品xτ的向量表征;vj是从用户当前交互会话中抽取出的多兴趣;对于xτ∈BT‑1的物品, 也就是推荐概率P(xτ∣e,ST)=0;
构建损失函数,训练模型参数;采用对数似然损失函数:其中, 是训练集中所有的会话序列;P(xτ∣ST,BT‑1)表示基于用户的当前会话ST和用户历史购买物品序列BT‑1,预测用户下一个交互物品xτ的概率,xτ是会话序列中真实交互的物品;我们采用Adam优化器更新模型参数。
2.根据权利要求1所述的一种基于多兴趣重复网络的会话推荐方法,其中,所述一种增强推荐多样性的多兴趣胶囊网络算法的伪代码为:其中, 为用户历史购买序列中第i个物品向量表征;
以及 和从用户当前交互会话序列中抽
取多兴趣的胶囊网络共享; 方法是胶囊网络中的动态路由部分,输入参数a
是第i个购买物品向量表征 映射到第j个购买兴趣空间的向量表征,输入参数r是动态路由算法的迭代次数; 方法的输出参数 代表用户历史购买多兴趣向量表征; 是第i个购买物品向量表征到第j个购买兴趣的连接系数, 是系数 归一化后的连+
接参数; 表示在购买兴趣胶囊内对参数 进行归一化,τ是温度系数;当τ→0 ,购买兴趣胶囊趋向于只关注一个物品胶囊;而当τ→∞,物品胶囊对于情感胶囊的作用趋于一致;所+
以可以通过温度系数τ来控制推荐的多样性,当τ→0 ,推荐结果更能够体现用户兴趣的多样性;而当τ→∞,推荐结果偏向于从主要兴趣中挑选相关物品; 是在购买兴趣胶囊间对参数 进行归一化,用于对物品胶囊进行兴趣分类,即判断物品体现用户哪种购买兴趣;
squash是胶囊网络中常用的squash向量激活函数,公式为 输出的购买兴趣向量 的长度 且向量长度 代表购买兴趣 的概率,向量 的方向代表购买兴趣 的属性。