任务描述:以用户的历史购买行为为基础,针对每个用户,推荐其可能购买的商品排序
-
方法概述:
-
BPR
首先使用BPR(Bayesian Personalized Ranking)推荐模型。BPR中文名称为贝叶斯个性化排序,它是基于矩阵分解的排序算法。它的算法训练集是一个个的三元组$<u,i,j>$,其表示对用户u来说,商品$i$的优先级要高于商品$j$。
我们的预测目标是得到一个预测排序矩阵$\hat{X}$,这个矩阵可以被分解为$\hat{X}:=W H^{t}$,其中$W$为$U×k$维矩阵,$H$为$I×k$维矩阵,$k$远小于$U$和$I$
由于BPR是基于用户维度的,所以对于任意一个用户u,对应的任意一个物品i我们期望有:^xui=〈wu,hi〉=k∑f=1wuf⋅hifx^ui=〈wu,hi〉=∑f=1kwuf⋅hif
$x^{\wedge} u i$表示物品$i$对于用户$u$的排序优先度。此时我们再令^xuij:=^xui−^xujx^uij:=x^ui−x^uj
可得到最终需要求解的最大对数后验估计函数∑(u,i,j)∈DSlnσ(^xui−^xuj)−λθ∥θ∥2∑(u,i,j)∈DSlnσ(x^ui−x^uj)−λθ‖θ‖2
-