论文部分内容阅读
排序学习是当前信息检索与机器学习领域研究的热点问题之一,它在诸如文档检索、协同过滤、自然语言解析等领域有广泛的应用。排序学习的目标就是应用机器学习技术自动地从训练数据中学习出一个排序函数对目标对象进行排序。针对排序学习问题,目前人们已经提出了很多算法,根据输入表示以及损失函数的不同,它们大致可分为点级方法(pointwise approach)、对级方法(pairwise approach)和列表级方法(listwise approach)三类方法。排序学习是一种有监督学习,因此需要提供一个带标记训练数据集。但是在实际问题中,获取带标记的数据是费时而且昂贵的。为了在排序问题中利用大量存在的未标记样例,自然而然地产生了半监督排序学习问题。借助半监督学习技术从大量无标签数据集中发现隐含的排序信息,对于减少标注代价,提高排序算法的性能具有非常重大的实际意义。因此本文旨在将半监督学习技术应用于排序学习问题,从而开发出半监督情况下的排序学习算法。本研究的主要工作如下:首先,本文提出了正则化提升(Regularized Boosting)学习方法的一般框架框。基于这一框架设计了基于RankBoost算法的半监督排序学习算法。正则化(regularization)是一种具有广泛应用的半监督学习技术,它通过使学习器优化带正则化惩罚项的损失函数,从而利用未标记样例来辅助提高学习性能。提升(boosting)是一种简单高效并且具有理论支持的集成学习方法,它通过渐进式地组合一系列简单的模型得到一个性能更优的模型。通过结合这两种重要的技术,把pairwise型排序学习算法RankBoost扩展到了半监督情况下。具体而言,我们在原有的损失函数中引入基于“光滑性假设”(smooth assumption)的正则化惩罚项,保证相似的样例获得接近的排序得分。进一步,通过理论分析得出损失函数最小化的提升算法。最终设计出的算法既合理地利用了已有的半监督学习假设又保留了boosting方法简单高效的优点。其次,本文提出了把listwise型排序学习算法扩展到半监督情况下的一般框架。在此框架下,首先用半监督学习技术为一部分无标记样例贴上伪标签,然后运行传统的listwise型的算法。基于这一框架我们把典型的listwise型排序算法AdaRank扩展到了半监督排序学习的情形。具体地,算法首先在每个查询内部通过标记传播(label propagation)算法给一部分无标记样例附上标签。然后在增加的数据集上运行改进的正则化形式的AdaRank算法。受益于listwise方法的优点,这种扩展listwise方法的半监督排序学习算法将会提高半监督排序算法的性能。最后,在公开数据集Letor上与已有的半监督排序学习算法进行比较实验,表明了本文所提出的框架的可行性与相应算法的有效性。