admin管理员组文章数量:1652188
【ICML2007】Learning to Rank: From Pairwise Approach to Listwise Approach
原文链接
目录
- Abstract
- intro
- probability models
- Permutation Probability
- Top One Probability
- 讨论为什么优于pairwise方法
- 总结
Abstract
学习排序多用于文件检索,collaborative filtering.以前学习排序的方法将object pairs作为instance,这里将ranking定为数据序列的预测任务,把list of objects当作instance,引入两个概率模型,排列概率和顶一概率,定义了列表损失函数进行学习。
intro
每个query对应一个score降序的最优排列(例如点击率),目标就是定义一个ranking function给document评分,达到近似的效果。
之前方法是用classification的思想解决的,从ranking list收集文档对,计算文档对的相关程度标签,进行分类。pairwise方法有以下优点:(1)现存有很多方法可以直接用(2)特定场景下pairwise feature很容易获得。
但也有以下缺点:(1)其学习的目标是最小化文档对的分类错误,而不是最小化文档排序的错误。学习目标和实际目标(MAE,NDCG)不符。(2)训练过程可能是极其耗时的,因为生成的文档对样本数量可能会非常多。(3)对于文档对iid的假设太过强。(4)生成的文档对由于query不同而不同,使结果更倾向对应更多文档对的query
本文解决方法:(1)提出listwise方法,在学习中把<query,document list>当作instance,与pointwise把<query,document>作为训练不考虑文档顺序关系,pairwise考虑了同一query的文档相关性排序不同.(2)用概率分布计算listwise损失,引入两个概率模型,排列概率和顶一概率,定义了列表损失函数进行学习。
probability models
Permutation Probability
对于每种排列都有其对应的最大似然值,定义某一种排列
π
\pi
π的概率,最大似然值
n个document有n!排列,这种计算排列的方式复杂度达到n!所以选用更有效率的top K计算,本文采用K=1对应n种排列情况,最简单
Top One Probability
本文将函数选为exp函数,进而变成了求softmax操作
此时可以用top1 后形成的概率分布,运用cross entropy这样衡量分布差异的函数去计算loss,也就是将排列问题转化为分布拟合问题,同时top1实际上是将分布变得粗粒度抽样了,使得开头一样的很多排列对应一个值。
这里有个形象的解释图:
讨论为什么优于pairwise方法
-
pair方法的成对数据太多,训练的模型可能会倾向于拥有更多查询文档对的query。少量query拥有大量的document,每个样本对实际相当于一个输入输入,相当于数据集有引导偏差。
-
pairwsie的损失函数对于性能度量过于松散,这里文章通过loss与NDCG指标的图展示了pairwise loss并不是与NDCG是完全负相关。
总结
把pairwise的问题换个思路重新建模,从而挖掘到数据中因为query对分布不平衡而导致训练效果没那么好的原因,思路在当时还是很有创新的,毕竟pairwise类似冒泡法,让人们直观感觉理想下是能学到最好排列的,但是实际上当时大家没有考虑到训练中样本的问题,毕竟训练的手段也只是一种对理想的近拟,而换成listwise的思想,跳出这个固有的思维框架,并且最终的负相关的曲线图也证明了作者想法。
本文标签: 笔记论文RANKLearningPairwise
版权声明:本文标题:Learning to Rank: From Pairwise Approach to Listwise Approach论文笔记 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1729578459a1207312.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论