论文部分内容阅读
信息检索中的排序(Ranking)问题是指给定某个查询和一候选文档集,检索引擎计算每个文档和该查询的相关性,并根据相关性将文档列表返回给用户。排序学习(Learning to rank)已成为信息检索中解决此类问题的主要方法。然而要发挥排序学习的优势需要克服标记数据不足等困难。博士论文工作探索在无标记或只有少量标记数据时,利用半监督学习思想来提高排序学习性能的新方法。 半监督学习是一种利用大量的未标记数据和少量标记数据共同学习的机器学习方法。在信息检索中,传统的半监督学习通常是基于初始检索结果中排名位置靠前的文档和主题相关,位置靠后的文档和查询主题无关的假设。研究表明查询本身的特性以及查询相关文档分布的多样性是这种假设并不总是成立的原因。因此既要控制在半监督排序学习中查询的质量又要建立鲁棒性的模型是本文需要克服的难题之一。 本文提出了一种半监督排序学习框架,该框架的主要思想是在无标记或只有少量标记数据时,利用半监督学习从未标记数据中选择置信度高的样本作为伪标记数据添加到原始的训练数据中,从而为排序学习提供足够的训练数据。 针对传统排序学习建立的模型泛化,无法有效捕捉未知查询特有的特性的问题,我们提出了一种查询偏置组合排序学习方法。该方法同时利用查询通用特征和查询特有的特征建立排序学习模型,因此能够建立适合特定查询的学习模型。组合排序学习方法利用半监督学习建立的查询偏置模型能够捕捉查询特有特性,克服了传统排序学习泛化的局限性,在Tweets11标准测试语料上的实验表明相比传统的排序学习模型,新模型可以有效提高检索正确率。 为了解决只有少量标记数据时排序学习性能较低的问题,我们提出了基于分类的查询过滤方法。在基于分类的查询过滤方法中,我们利用少量的标记数据建立了查询性能预测器,评估每个查询带来的性能增益,从而决定是否在半监督学习的迭代过程中包含此查询。基于分类的查询过滤方法验证了通过筛选高质量的查询来提高半监督排序学习性能的可行性,在LETOR4.0标准测试语料上的实验表明该方法可以显著提高排序学习算法的检索正确率。 在集成应用方面,针对无任何标记数据时无法应用排序学习的问题,我们提出了一种新型的基于聚类的直推学习方法来筛选高质量的查询。在基于聚类的直推学习方法中,我们采用聚类算法对每个查询的初始检索结果聚类,通过计算簇聚合度来衡量每个查询的质量,然后筛选出高质量的查询并应用半监督学习算法迭代生成伪标记数据。在排序学习公共数据集LETOR4.0(MQ2007上1454条查询,MQ2008上564条查询)和TREC公开数据集Tweets11(13,401,964条tweets)上的大量实验表明,基于聚类的直推学习方法相比基准实验能显著提高排序学习的性能;同时该方法也揭示了在无训练数据时我们可以采用基于聚类的直推学习方法迭代生成伪标记数据来模拟人工标记数据的可能性,从而缓解了排序学习中训练数据不足的难题。