RankNet

RankNet


RankNet 论文的笔记。原文:
Learning to rank using gradient descent.

模型

  • 特征 xid
  • 模型函数: f:d

f(xi)>f(xj) 则表示模型预测 i 排在 j 前面: xixj

后验概率 Pij=P(xixj) 用如下形式:

Pij=11+eoijoijoiojoif(xi)

损失函数使用交叉熵的形式,并根据上面的定义变形为:

CijC(oij)=P¯ijlogPij(1P¯ij)log(1Pij)=P¯ijoij+log(1+eoij)

其中根据样本中两个 item 排序的在前、在后和同序关系,目标取值为:

P¯ij={1,0.5,0}

关于假设合理性的讨论

论文中已经证明上述模型假设的一致性、传递性。由于 oik=oioj+(ojok)=oij+ojk ,则容易得到:

Pij=PijPjk1+2PijPjkPijPjk

  • 自洽性
    上式满足 0<Pij<1 .

  • 传递性:
    在概率等于 p{0,0,5,1} 的时候,等号具有传递性:

    P(AB)=p,P(BC)=p,P(AC)=P

    P<0.5 时,小于号传递性:

    P(AB)=p,P(BC)=p,P(AC)<P

    0.5<P<1 时,大于号传递性:

    P(AB)=p,P(BC)=p,P(AC)>P

    以上的传递不限于两步,经过多步仍然满足。

优模型化

oi 的取值使用神经网络模型

oi=g3jw32jg2(kw21jkxk+b2j)+b3ig3i

其中 g3,g2,w32,w21,b2,b3 分别为第三、第二层激活函数,第三、第二层的权重、第二、第三层偏置。

定义一个 pair 样本的损失为 l(o2o1) (论文中用 f 表示,这里换成 l),则参数的梯度 αl=(αo2αo1)l 。注意 αo2=αf(x2)

lb3=l(g3(x2)g3(x1))Δ32Δ31lw32i=Δ32g2i(x2)Δ31g2i(x1)lb2i=Δ32w32ig2i(x2)Δ31w32ig2i(x1)Δ22,iΔ21,ilw21ij=Δ22,ix2,jΔ21,ix1,j

所有参数都可以根据上面的梯度,用梯度下降法来优化。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值