Learning2Rank-lambda loss解读(2)

本文深入解析LambdaLoss框架,从似然函数、排列分布到损失函数的解决策略。通过概率定义损失,探讨LambdaRank的重新推导,揭示EM算法在优化中的应用。
摘要由CSDN通过智能技术生成

上一篇文章中,将LambdaLoss分为如下三个方面进行介绍

  1. 排序中会遇到的问题
  2. LambdaLoss Framework解读
  3. 由评测指标驱动的损失函数的定义

参考论文为《The LambdaLoss Framework for Ranking Metric Optimization》
这次接着LambdaLoss Framework解读开始。

2. LambdaLoss Framework解读

我们以概率的形式来定义损失,具体可参考Learning2Rank-lambda loss解读(1)。
我们可以认为一个文档序列的得分s可以表征一个特定的分布。用 π \pi π表示一个特定的资料排序,然后用 { P ( π ∣ s ) : π ∈ Π } \{ P(\pi|s): \pi \in \Pi\} { P(πs):πΠ}来表示这种排列的概率。看到这里大家是不是有点眼熟了,后验概率最大化。由于 π \pi π我们并不知道,所以可以将 π \pi π视为隐变量,这样s决定了一组特定的资料排列 π \pi π,然后在这种排列下,求解出现特定labe的概率,即
P ( y ∣ s ) = ∑ π ∈ Π P ( y ∣ s , π ) P ( π ∣ s ) P(y|s) = \sum_{\pi \in \Pi} P(y|s,\pi)P(\pi|s) P(ys)=πΠP(ys,π)P(πs)
基于这个概率表示,我们可以重新定义损失。我们的目标是使上述概率达到最大,换言之可以取负号将其设置为最小,然后通过算法的方法求解。
l ( y , s ) = − l o g 2 P ( y ∣ s ) = − l o g 2 ∑ π ∈ Π P ( y ∣ s , π ) P ( π ∣ s ) l(y,s) = -log_2 P(y|s) = -log_2 \sum_{\pi \in \Pi} P(y|s,\pi)P(\pi|s) l(y,s)=log2P(ys)=log2πΠP(ys,π)P(πs)
基于上述公式,可以讲损失拆为两部分,似然函数 P ( y ∣ s , π ) P(y|s,\pi) P(ys,π)和分布函数 P ( π ∣ s ) P(\pi|s) P(πs)

2.1 似然函数

似然函数可以定义为两种形式,简单的如Bradley-Terry模型。复杂一些的考虑资料在排列中的位置。
对于简单的形式,通过sigmoid函数定义该概率,注意在损失中只保留排序出错的pair:
P ( y i > y j ∣ s i , s j ) = 1 1 + e − σ ( s i − s j ) P(y_i > y_j | s_i, s_j) = \frac {1}{1+e^{-\sigma (s_i-s_j)}} P(yi>yjsi,sj)=1+eσ(sisj)1 l ( y , s ) = − l o g 2 P ( y ∣ s ) = ∑ y i > y j l o g 2 ( 1 + e − σ ( s i − s j ) ) l(y,s) = -log_2 P(y|s) = \sum_{y_i>yj} log_2 (1+e^{-\sigma(s_i -s_j)}) l(y,s)=log2P(ys)=yi>yjlog2(1

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值