清雨影的Blog
  • README
  • 机器学习
    • 一般话题
      • 再谈正则化项
      • 论文阅读:“快把卷积神经网络中的平移不变性带回来”
      • 半监督/无监督学习收集
      • 收藏夹
    • 推荐系统
      • Understanding LightGCN in a visualized way
      • Learning To Rank 之 RankNet
      • 随想: BPR Loss 与 Hinger Loss
      • 关于AA测试和AB测试的一些思考
      • 无采样的矩阵分解
      • 收藏夹
    • 强化学习
      • Re:从零开始的Multi-armed Bandit
  • 高级物理引擎实战指南笔记
    • 弹簧质点系统
    • 光滑粒子法
    • 专题:线性方程组求解
  • 有限单元法
    • 1. 引论
    • 2. 基于直接刚度法的杆系有限元方法
    • 3. 针对复杂几何形状变形体的力学描述(1)
  • Web开发相关技术
    • JWT简介
  • 技术杂文
    • React-Script转Vite时引用路径的问题
    • Let's encrypt -- 让我们一起愉快的使用HTTPS
    • 干掉吸血雷,重塑和谐P2P环境
    • 开源CAN总线信号可编程台架
    • Linux下利用mdadm设置软件 RAID
    • 互不联网时代的自给自足
    • 为什么我劝你不要使用云计算?
    • 科学的公司内网连接技术选型
    • 构建家用NAS过程中的碎碎念
    • 简易的Linux迁移指北
    • 记录一次rsync命令引起的异常
    • 为FFMPEG添加Intel QSV支持
    • 备忘录
    • 福冈外免切替(中国驾照换日本驾照)攻略
    • 记一个离谱的MySQL语句的性能问题
    • 拯救变砖的OpenWRT路由器
    • 使用FRP进行内网穿透
  • 政治不正确
    • 吃屎系列:资本家如何喂员工吃屎
      • 华为251事件记忆
    • 吃屎系列:资本家如何喂用户吃屎
      • 互不联网公司是如何强奸用户的(持续更新)
    • 吃屎系列:大学如何喂学生吃屎
    • 推荐系统如何让我们变得极端
    • 互联网政治圈观察日志
    • 中国网络防火长城简史
    • 《线性代数》(同济版)——教科书中的耻辱柱
    • 杂谈
      • 访谈:为什么毛泽东时代工人的积极性很高?
      • 90年代到21世纪初的商业环境
    • 为什么不应该用国产手机
    • “救救孩子”
  • 随园食单
    • ボロネーゼ
    • 甜酒酿的制作
    • 香草与香料
    • 皮塔饼
    • 韭菜鸡蛋饼
    • 牛肉蔬菜汤
由 GitBook 提供支持
在本页

这有帮助吗?

  1. 机器学习
  2. 推荐系统

随想: BPR Loss 与 Hinger Loss

上一页Learning To Rank 之 RankNet下一页关于AA测试和AB测试的一些思考

最后更新于2年前

这有帮助吗?

在之前的文章里,我们在的时候意外的得到了BPR Loss:

Lω=−∑i,j∈Slog(sigmoid(si−sj))L_{\omega} = - \sum_{i,j \in S}{log(sigmoid(s_i-s_j))}Lω​=−i,j∈S∑​log(sigmoid(si​−sj​))

我们说过,Ranknet可以不定用NN,任何可微的模型都可以塞到后端去。其实我们一直没有用贝叶斯的观点来看Ranknet,只是给分数的差值加了一层 sigmoid 之后使用 二元交叉熵损失函数,四舍五入一个亿…啊不对…等于是Logistic回归了,结果就导出了BPR Loss一样的形式。

嗯?Logistic回归?也就是说只要是分类模型都可以往上咔咔猛造咯?那为啥一定得是Logistic回归呢?我们可以把身子换了,那干脆把头也换了?

其实,平时还会用到另一个Loss,合页损失,一般用在SVM上:

那SVM效果会比Logistic回归好多少吗?不会的,画出来一看就知道了:

x = [-5:0.01:5];
plot(x,max(0,1-x),x,log(1+exp(-x)))
legend('hinger','BPR')

简直就是:

我在我们的系统上做了一些离线实验,结果是BPR略微胜利,我认为原因可能在BPR更加嫩滑…啊不对…光滑上。但是就计算量而言,肯定是Hinger Loss要远远小于BPR Loss。

Lω=∑i,j∈Smax(0,1−si+sj)L_{\omega} = \sum_{i,j \in S}{max(0,1-s_i+s_j)}Lω​=i,j∈S∑​max(0,1−si​+sj​)
加速Ranknet
这不巧了吗,这不巧了吗
异父异母的亲兄弟啊