美文网首页
BPR算法笔记

BPR算法笔记

作者: 锦绣拾年 | 来源:发表于2021-08-09 00:17 被阅读0次

    推荐对级排序模型

    对级排序模型,

    目标函数:如何让逆序对最小。

    目标函数.png

    使用铰链损失(Hinge Loss)作为代理损失函数

    L_{hinge}(f,u,x_i^+,x_j^-)=(1-(f(u,x_i^+)-f(u,x_j^-)))^+

    (1-(f(u,x_i^+)-f(u,x_j^-)))^+=max(1-(f(u,x_i^+)-f(u,x_j^-)),0)

    指数损失

    L_{exp}(f,u,x_i^+,x_j^-)=exp(-(f(u,x_i^+)-f(u,x_j^-)))

    逻辑斯蒂损失

    也是BPR算法的损失

    L_{logistic}(f,u,x_i^+,x_j^-)=log(1+exp(-(f(u,x_i^+)-f(u,x_j^-))))

    bpr

    目标:最大化后验概率p(\theta|\Omega)

    给定训练集,寻找参数集合,概率最大化。

    贝叶斯公式。

    P(\Theta|>_u) \propto p(>_u|\Theta)p(\Theta)

    去掉了p(>_u),因为对于样本是一样的。

    p(\Theta)正则项。

    两个假设(通过独立假设,把联合概率转换成简单概率相乘)

    1.用户之间的偏好行为相互独立

    2.同一用户对不同项目对的偏序相互独立

    \prod_{u\in U}p(>_u|\Theta)=\prod_{(u,i,j)\in D_s}p(i>_uj|\Theta)

    只考虑i属于正反馈样本集,j属于负反馈样本集的情况。

    概率如何得到呢?

    用sigmoid函数,来估计p(i\succ_u j |\theta)

    P(i\succ_u j |\Theta):=\sigma(\hat{r}_{uij}(\Theta))

    \hat{r}_{uij}:=\hat{r}_{ui}-\hat{r}_{uj}

    推导.png 伪码.png

    https://blog.csdn.net/JHSHUN/article/details/108908943

    http://d0evi1.com/bpr/

    相关文章

      网友评论

          本文标题:BPR算法笔记

          本文链接:https://www.haomeiwen.com/subject/fmmavltx.html