面向信息检索的排序学习算法研究
【摘要】:排序学习(learning to rank)是一种融合了机器学习技术和信息检索技术的方法,一种介于分类和回归之间的学习,它解决的是有关排序的问题。排序学习通过使用一组有标签的数据和机器学习技术自动产生一个符合用户要求的排序模型。由于排序学习在文件检索,推荐系统等领域都具有广泛的应用,最近几年排序学习受到越来越多的研究者的关注。本文从排序学习的基本概念说起,介绍了三类排序学习方法:基于单个样本的排序学习方法(pointwise),基于样本对的排序学习方法(pairwise)和基于整个样本队列的排序学习方法(listwise)。分别介绍了三类方法的代表算法,分析这些传统的排序学习算法并总结优缺点,引入面向直接优化评估标准的排序学习算法,考虑到这类算法虽然能得到较好的排序模型,但是在一些高纬度、大规模等真实场景中往往效果不好。在此基础上以期构造更为高效的排序学习算法。具体而言,论文主要包括以下两个方面内容:(1)大多数现有的排序学习算法都假定训练数据是干净的即没有噪音的,但是由于查询意图的模糊性、缺乏相关领域的知识,以及相关性级别的模糊定义,使得普通的注释者很难给某些文档提供可靠的关联标签。因此,在排序学习的训练数据中,相关标签通常包含噪音。如果忽略这个事实,排序学习算法的性能将会受到损害。针对这个问题,提出基于多目标优化的排序学习算法。该算法首先定义了三个目标:收益函数、风险函数和样本数量,针对这三个目标采用NSGA-Ⅱ进化算法优化三个目标。接着,提出一种Hybridization-encouraged Mechanism(HEM)的选择策略,并利用此策略,进一步提高了该算法的性能。基准数据集上的实验验证了所提算法的有效性。(2)传统的排序学习算法往往只关注模型的精度而忽略了模型的稀疏度,如何设计面向稀疏模型的排序学习算法是一个挑战。为了解决这个问题,本文提出一个面向稀疏模型的随机排序学习算法。该算法首先将mini-batch框架应用在排序学习上,并使用L1作为正则化项旨在产生稀疏模型。然后,针对简单的添加L1正则化项并不一定会产生稀疏模型的问题,采用FTRL(Follow-The-Regularized-Leader)的方法进行内部优化,从而获得高稀疏性的排序模型。接着,提出了一种feature-wise的学习速率更新策略,并利用此策略,进一步提高了该算法的性能。使得该算法不仅能得到较好的稀疏度,同时也能获得较高的精度。LETOR数据集上的实验证明了,本章所提出的算法与几个基准算法相比具有明显的优势。