陌路茶色/

Learning to Rank for Information Retrieval and Natural Language Processing——Learning to Rank

开始阅读李航老师写的Learning to Rank for Information Retrieval and Natural Language Processing这本书(第二版),于2014年出版,本文为第一章Learning to Rank的阅读笔记,第一章为概要。

ABSTRACT

在NLP和IR的ranking问题可以归纳为两个基本的ranking任务:ranking creation和ranking aggregation。在ranking creation中,给定一个request,会根据request和offerings的特征来返回一个排好序的offerings列表。在ranking aggregation中,给定一个request和一系列排好序的offerings列表,返回一个新的排序offerings列表。

在learing to rank中主要的问题就是Ranking creation,通常作为监督学习任务。ranking creation的方法根据它们使用的损失函数可以归纳为pointwise, pairwise, listwise ,也可以根据它们采用的计算归纳为SVM based, Boosting based, Neural Network based。

RANKING

在NLP和IR中的大部分任务中,最重要的任务就是ranking,这些任务包括document retrieval, entity search, question answering, meta-search, personalized search, online advertisement, collaborative filtering, document summarization, and machine translation。

DOCUMENT RETRIEVAL

该任务可以描述为如下图所示,在其中ranking发挥关键作用:
屏幕快照 2019-10-28 下午4.54.06.png
给定一个用户query,系统从集合中提取包含查询词的document集,排序这些document,并保留topN个document返回给用户,ranking的表现主要依赖于文档和query之间的相关性。

COLLABORATIVE FILTERING

协同过滤是电子商务,线上广告等领域给用户做推荐最基本的模型,如下所示,用户和商品之间的矩阵,对应的元素表示用户对该商品的评分,一些有,一些没有,问题是如何明确矩阵中没有值的元素。一个基本的假设是相似的用户可能在相似的商品上有相似的评分,当一个用户给定,系统会给出商品排序表。
屏幕快照 2019-10-28 下午5.20.09.png

META-SEARCH

meta-search系统将用户的请求发送给多个搜索系统,并聚合这些返回的结果。即meta-search系统联合所有ranking列表并生成一个新的ranking列表,这个新的ranking列表要好于所有独立的ranking列表。
屏幕快照 2019-10-28 下午5.29.02.png

LEARNING TO RANK

learning to rank可能存在两个定义,从广义上来说,learning to rank表示的是任何ranking相关的机器学习技术,从狭义上来说,learning to rank就是在ranking creation 和ranking aggregation上构建ranking模型的机器学习技术,如下所示:
屏幕快照 2019-10-28 下午5.33.49.png

RANKING CREATION

给定request集合$Q=\{q_1,q_2,...,q_i,...,q_M\}$和offerings(or objects) 集合 $O'=\{o_1,o_2,...,o_N\}$,$Q$可以是查询集合,用户集合,源句子集合等,$O$可以是文档集合,商品集合,目标句子集合等。
ranking函数$F(q,O):Q \times O^n \rightarrow \Re^n$:
屏幕快照 2019-10-28 下午5.43.45.png
其中$n=|O|$,$q$表示$Q$中的一个元素,$O$是$O'$的子集,$S_o$表示$O$中元素的分数集合,π表示按$S_o$排序的ranking列表,$f(q,o)$表示在$O$中的元素$o$的分数,ranking creation的global ranking model如下(这里global是分数集合,而local是单个分数值):
屏幕快照 2019-10-28 下午5.52.36.png

RANKING AGGREGATION

给定$Q$中的一个元素$q$和$O'$中的一个子集$O$,对$O$的$k$个排序的列表为$\sum =\left \{ \pi _i | \pi _i \in \prod , \ \ i=1,...,k \right \}$,其中$\prod $是对$O$的所有排序集合。针对Ranking aggregation的ranking函数$F(q,\prod )$:
屏幕快照 2019-10-28 下午6.00.46.png
也就是说,我们假设Ranking aggregation不依赖于request。Ranking aggregation的global ranking model如下:
屏幕快照 2019-10-28 下午6.02.24.png

LEARNING FOR RANKING CREATION

ranking creation任务通常使用监督学习方法,这个是本书的主要关注的部分,learing任务包括两个系统:learing system,ranking system。
learing system的输入时训练数据,训练数据由一系列的request集合和对应的offerings排序列表,即对于$q_i$,对应的offerings为$O_i=\{o_{i,1},...,o_{i,n_i}\}$。如下图所示,m条训练集,当给定一个新的request $q_{m+1}$,ranking system收到一个offerings子集$O_{m+1}$,通过learning system之前学习到的模型为$q_{m+1}$和$O_{m+1}$打分,排序得到对应的列表$π_{m+1}$。
屏幕快照 2019-10-29 下午6.20.08.png

参考

[1]Learning to Rank for Information Retrieval and Natural Language Processing Second Edition
[2]A Short Introduction to Learning to Rank

留下一条评论

暂无评论