034 | 机器学习排序算法:单点法排序学习
洪亮劼
该思维导图由 AI 生成,仅供参考
在专栏里我们已经讲解过最经典的信息检索技术。这些技术为 2000 年之前的搜索引擎提供了基本的算法支持。不管是 TF-IDF、BM25 还是语言模型(Language Model),这些方法和它们的各类变种在很多领域(不限文本)都还继续发挥着作用。
然而,自从机器学习的思想逐渐渗透到信息检索等领域之后,一个最直观的想法就是如何用机器学习来提升信息检索的性能水平。这个思想引领了 2000 年到 2010 年这个领域的研究,产生了各类基于机器学习的排序算法,也带来了搜索引擎技术的成熟和发展。
我今天就从最简单也是最实用的一类机器学习排序算法讲起,那就是单点法排序学习(Pointwise Learning to Rank)。这类方法在工业界非常实用,得到广泛应用,在实际效果中也表现得很强健(Robust)。同时,理解这类模型可以为后面学习复杂的排序算法打下基础。
单点法排序学习的历史
早在 1992 年,德国学者诺伯特·福尔(Norbert Fuhr)就在一篇论文中最早尝试了用机器学习来做搜索系统参数估计的方法。三年之前,他还发表过一篇利用“多项式回归”(Polynomial Regression)来做类似方法的论文。诺伯特因其在信息检索领域的长期贡献,于 2012 年获得美国计算机协会 ACM 颁发的“杰拉德·索尔顿奖”。
1992 年,加州大学伯克利分校的一批学者在 SIGIR 上发表了一篇论文,文中使用了“对数几率”(Logistic Regression)分类器来对排序算法进行学习。可以说这篇论文是最早利用机器学习思维来解决排序算法学习的尝试。然而,由于机器学习和信息检索研究在当时都处于起步阶段,这些早期结果并不理想。
2000 年之后支持向量机在工业界和学术界逐渐火热,随之,利用机器学习进行排序算法训练重新进入人们的视野。搜索引擎成了第一次互联网泡沫的重要阵地,各类搜索引擎公司都开始投入使用机器学习来提升搜索结果的精度。这股思潮开启了整整十年火热的机器学习排序算法的研究和开发。
单点法排序学习详解
要想理解单点法排序学习,首先要理解一些基本概念。这些基本概念可以帮助我们把一个排序问题转换成一个机器学习的问题设置,特别是监督学习的设置。
我之前介绍的传统搜索排序算法比如 TF-IDF、BM25 以及语言模型,都是无监督学习排序算法的典范,也就是算法本身事先并不知道哪些文档对于哪些关键字是“相关”的。这些算法其实就是“猜测”相关性的一个过程。因此,传统信息检索发展出一系列理论来知道算法对每一个“关键字和文档对”(Query-Document Pair)进行打分,寄希望这样的分数是反映相关性的。
然而,从现代机器学习的角度看,毫无疑问,这样的排序算法不是最优的,特别是当相关信息存在的时候,是可以直接用这些相关信息来帮助算法提升排序精度的。
要想让训练排序算法成为监督学习,首先来看需要什么样的数据集。我们要建模的对象是针对每一个查询关键字,对所有文档的一个配对。也就是说,每一个训练样本至少都要包含查询关键字和某个文档的信息。这样,针对这个训练样本,就可以利用相关度来定义样本的标签。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
机器学习在信息检索领域的关键应用——单点法排序学习 单点法排序学习作为一种简单而实用的机器学习排序算法,在信息检索领域展现出强健的性能。该算法的发展历程可以追溯到20世纪90年代,但直到2000年后才得到更多显著效果的研究。文章详细介绍了单点法排序学习的问题设置,包括训练集、测试集以及测试环境。通过机器学习在信息检索中的应用,可以提升搜索结果的精度,为搜索引擎技术的成熟和发展做出贡献。此外,文章还提到了如何评估排序算法的好坏,包括精度、召回和F1值等评价指标。另外,文章还留下了一个思考题,即如何将传统的排序算法如TF-IDF、BM25和语言模型与单点法排序学习结合起来。总的来说,本文介绍了机器学习在信息检索中的关键应用,特别是单点法排序学习作为一种实用的排序算法,为读者提供了对这一领域发展的概览。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 技术内参》,新⼈⾸单¥98
《AI 技术内参》,新⼈⾸单¥98
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(5)
- 最新
- 精选
- 黑翼天佑将TF-IDF、BM25 和语言模型产出的得分作为特征,放到单点法排序中的二分类模型来进行训练?
作者回复: 是的。
2017-12-0612 - 梁中华可惜了,这个课程听晚了,理论介绍方面做的很好,但对于还没入门的同学能多点例子就更好了。另外最后总结部分只列标题意义不大,而应该真正的提取出要点,而不是提纲2018-11-135
- 黄德平用传统方法得到的相关度作为标签,训练一个回归模型,而非分类2018-12-164
- FF单点排序中的"单点"是相对于TF-IDF、BM25 这样的相关度和其它文章有关的算法来说的吗?2019-08-02
- yaolixu若建模为二分类问题,那么标签应该是0,,1,那么无法用相关度来定义样本的标签,该怎么处理? 解决方法是直接找个阈值,把训练样本的标签,转换为1或0吗?2018-11-07
收起评论