信息检索(IR)—排序学习技术

1 引入

回顾搜索引擎的发展历史,其发展的过程如下图所示:


在之前的文章中,我们介绍了基于链接分析的搜索引擎,下面我们来介绍基于排序学习的搜索引擎中的排序学习技术。

1.1 基本概念和基本过程

排序学习是指应用有监督学习的机制训练排序模型来用于信息的表示。 其基本的过程如下图所示:

1.2 排序学习的基本分类

  1. Pointwise单文档方法:用类别号表示排序的相关度。
  2. Pairwise排序学习:将排序问题表示成两两文档之间的偏序关系。
  3. Listwise文档列表方法:将一个查询对应的所有搜索结果列表作为一个训练实例。

2 排序算法简述

2.1 Pointwise

Pointwise处理对象是单一的文档,将文档转换成特征向量之后,主要是将排序问题转换成机器学习常规的分类或者回归问题。如下图所示:


根据上图所示,我们可以将Pointwise抽象成一个多分类排序问题(McRank),排序函数通过多分类分类模型学习得到,对于一个文档xjx_jxj​,分类器输出文档的相关性标签ypjy_{pj}ypj​,排序值等于分类器的输出结果的合并。
pj,k=P(ypj=k),f(xj)=∑k=1Kpj,kkp_{j,k}=P(y_{pj}=k),f(x_j)=∑_{k=1}^Kp_{j,k}kpj,k​=P(ypj​=k),f(xj​)=k=1∑K​pj,k​k

2.2 Pointwise实例

2.3 Pointwise的局限性

Pointwise完全从单文档的分类角度计算,没有考虑文档之间的相对顺序。假设相关度是查询无关的,只要(query,di)的相关度相同,那么他们就被划分到一个级别中,属于同一类。这样就导致训练样本的不一致,并且对于预测为同一label级别的文档之间也无法相对排序。

2.4 Pairwise排序学习

Pairwise主要将排序问题转为了文档对顺序的判断,如下图所示:

2.5 Ranking SVM

这里我们举一个使用Pairwise的具体算法,Ranking SVM算法。Ranking SVM是一种使用SVM分类器学习两两样本间偏序关系的模型。

2.6 Pairwise思想的局限性

首先,Pairwise只考虑了两个文档的先后顺序,没有考虑文档出现在搜索列表中的位置。其次,排在前面的文档更为重要,如果出现在前面的文档判断错误,惩罚函数要明显高于排在后面的判断错误。Pairwise也会导致闭环的出现,例如:1>2,2>3,3>1。

与此同时,不同的查询,其相关文档数量的差异很大,转换成文档对之后,有的查询可能有几百对文档,有的可能有几十个。这对学习系统的效果评价带来的偏置。我们举一个例子来说明这种局限性:

2.7 Listwise排序学习

对于这种策略而言,其训练实例为查询和文档排序的列表,而不是文档对。对于这种策略而言,其重点在于如何定义Listwise的损失函数。

对于排序列表的集合而言,其等价于排列的概率分布,使用概率分布对于排序列表来说,是更加直观并且合理的一种表示:文档的排列和文档检索结果的排序列表一一对应。举个例子来说:

进一步,我们应该如何定义排序的概率呢?这里我们使用Plackett-Luce模型定义一个排列的概率:


最后,我们可以定义不同的排序列表之间的距离:这里我们使用KL散度来定义不同排序列表之间的距离:

3 总结

本文主要讲述的在排序学习中的三种思想,没有讲述具体的算法,有兴趣的读者可以去了解不同策略下的具体算法。

4 参考

  1. 哈工大——信息检索

信息检索(IR)—排序学习技术相关推荐

  1. 【推荐系统】推荐系统中的排序学习

    " 本文首先介绍排序学习的三种主要类别,然后详细介绍推荐领域最常用的两种高层排序学习算法框架:BPR和LambdaMART.因为排序学习的算法和实践大都来源于信息检索,一些理论也必须从信息检 ...

  2. 排名算法(三)--排序学习

    转自:https://blog.csdn.net/anshuai_aw1/article/details/86018105 Learning to rank(简写 LTR.L2R) 也叫排序学习,指的 ...

  3. 推荐系统中的排序学习

    " 本文首先介绍排序学习的三种主要类别,然后详细介绍推荐领域最常用的两种高层排序学习算法框架:BPR和LambdaMART.因为排序学习的算法和实践大都来源于信息检索,一些理论也必须从信息检 ...

  4. 深入浅出排序学习:写给程序员的算法系统开发实践

    引言 我们正处在一个知识爆炸的时代,伴随着信息量的剧增和人工智能的蓬勃发展,互联网公司越发具有强烈的个性化.智能化信息展示的需求.而信息展示个性化的典型应用主要包括搜索列表.推荐列表.广告展示等等. ...

  5. 【代码+论文】基于自适应排序学习的个性化推荐方法

    题目: Adaptive Pointwise-Pairwise Learning-to-Rank for Content-based Personalized Recommendation 论文地址: ...

  6. 推荐常用的排序学习算法——BPR(贝叶斯个性化排序)

    文章目录 1. 排序学习 1.1 优势 1.2 排序学习在推荐领域的作用 1.3 排序学习设计思路 1.3.1 单点法(Pointwise) 1.3.2 配对法(Pairwise) 1.3.3 列表法 ...

  7. 深度学习技术在美图个性化推荐的应用实践

    导读:美图秀秀社交化的推进过程中,沉淀了海量的优质内容和丰富的用户行为.推荐算法连接内容消费者和生产者,在促进平台的繁荣方面有着非常大的价值 .本次分享探讨美图在内容社区推荐场景下应用深度学习技术提升 ...

  8. 报名 | 清华大数据论坛之深度学习技术与应用

    时光荏苒,春华秋实,厚重的积淀和改革创新的新发展给予清华人自信和力量.在清华大学108周年校庆的喜庆气氛里,清华大学大数据研究中心.清华-快手未来媒体数据联合研究院共同主办"清华大数据论坛之 ...

  9. ACL 2020 | 基于多级排序学习的层次化实体标注

    ©PaperWeekly 原创 · 作者|龚俊民 学校|新南威尔士大学硕士生 研究方向|NLP.可解释学习 论文标题:Hierarchical Entity Typing via Multi-leve ...

最新文章

  1. python数据库查询不出结果_记一次pymysql查询不到表中最新插入的数据的问题
  2. DNN安装报错-The stored procedure 'dbo.GetPortalAliasByPortalID' doesn't exist.如何解决
  3. pyqt5动态添加按钮
  4. html和html5学习
  5. VS2008打包(含水晶报表)与安装注意事项
  6. 在WildFly中将Apache Camel和Spring添加为jboss模块
  7. nls_lang.sh: 114: [[: not found
  8. oracle 计算复杂 数据跑不出来 如何分批次_如何配置PG的数据库缓冲
  9. centos运行C程序
  10. 解决aapt命令在Linux下无法运行的问题
  11. SWPUACM第一届程序设计大赛
  12. Luogu1856 [USACO5.5]矩形周长Picture(矩形周长并)
  13. CAT扫盲:最常用的CAT翻译软件
  14. Subclipse in Eclipse的安装和使用
  15. iphone计算机同样答案,学会这4招,iPhone搭配Windows电脑一样好用
  16. 国家集训队论文集 1999-2009 (附99~15论文下载地址)
  17. morning 是字符串的内容变成good_小洁详解《R数据科学》--第十章 使用stringr处理字符串(上)...
  18. 1074: 百钱买百鸡
  19. crontab 每天凌晨12点定时器_清运队长每天凌晨3点转运垃圾,因为垃圾分类工作时间大大减少了...
  20. Promise(微任务)- 让你看完就懂

热门文章

  1. mac将finder侧栏中文件夹的中文变英文
  2. 一个无缝衔接的css动画
  3. 自醒-【德鲁克的经典五问】
  4. 2018:寒冬下的温暖
  5. java 太阳系模型练习3-- 行星运行轨迹练习
  6. win7如何设置wifi热点_win7设置wifi热点的方法
  7. iMeta | 兰州大学刘勇勤组揭示植物定殖对冰川前缘微生物群落动态的影响
  8. 微信文件删除了怎么恢复,3个实用有用的方法
  9. n个自然数中取出r个数字的排列组合(python)实现
  10. 基于SVM技术的手写数字识别