机器学习与应用专场|AIS预讲会全程干货分享

AIS (ACL、IJCAI、SIGIR) 2018

Session 5: Machine Learning and Applications

机器学习与应用专场|AIS预讲会全程干货分享

机器学习与应用专场|AIS预讲会全程干货分享

1 申大忠 中国科学技术大学

A Joint Learning Approach to Intelligent Job Interview Assessment

机器学习与应用专场|AIS预讲会全程干货分享

先来看一下我们的Motivation, 面试作为人才招聘中的一个重要环节。受到了越来越多的关注。但是,传统的面试流程中存在着一些不可避免的弊端。比如面试决策主要靠面试官个人的判断,难免会受到面试官个人喜好,经历与才能的影响,造成一定的偏差,特别是对于一些从业初期,没有经验的面试官。而对于一些老练的面试官,他们的经验也很难被初级面试官继承学习到。其次,虽然如今一些公司已经积累大量的招聘面试数据,但是从数据挖掘的角度提升面试效果的工作还很少。特别是发掘优秀面试官的经验方面。

为此,我们这篇工作的目的是通过在大量优秀面试官参与的面试记录中学习,发掘面试中几类文本的内在关系。分别是 “岗位描述,简历与面试评语之间”找寻优秀面试官在面试中主要关注点,从而进一步辅助面试等。改善传统面试中的主观性,片面性问题。

但在这个过程中,我们也发现招聘中的一些现象或者挑战需要我们特殊处理。其一,面试官往往根据候选人的简历来设计面试,导致简历与面试评语之间往往存在着强相关性。其二,简历与岗位描述之间也同样有很强的相关性,但不同的是,一般岗位描述比较简洁,而简历中较具体,而且很多不同经历的人可能同时申请同一份岗位,所以,岗位描述的diversity要比简历要小。最后我们还注意到,技术类面试与综合类面试之间具有很大的区别,一个偏向于技术考察,一个侧重于人文素养的考察。我们也要区别对待。

为解决上面的三个挑战。我们提出了我们的模型Joint Learning Model on Interview Assessment(JLMIA) 。我们的模型是基于主题模型LDA拓展推广的。右边是相应的概率图展示,我们认为面试中的各类文本都是由多个主题混合而成的,为刻画面评与简历之间的相关性,我们他两之间共享主题分布thetaA来,同时假设thetaA 由岗位描述主题分布thetaJ生成来刻画简历与岗位的关系,为了进一步刻画岗位描述与简历之间的deversity 不同,我们假设三类文档各自的主题数是不同的。接着为了区分技术与综合面试,我们对来自不同类型的面试文本使用不同的主题集。最后,为了求解我们的模型,我们设计了EM算法。如果大家对我们模型更多的细节感兴趣,可以翻阅我们的文章。

接下来,我们设计了两个应用辅助面试,其一是人岗匹配, 给定一对岗位描述与简历,我们希望度量两者的匹配度。首先我们的模型可以推断出两个文本的各自主题分布作为各自的表征向量,这样我们可以使用多种方法来度量匹配度,例如,向量间的cosine similarity,KL 距离,或者把向量拼接作为匹配对作为特征,添加录取与否的标签,使用有监督方法,训练分类器来预测录取概率。我们在真实面试数据上测试我们的效果,baseline有 LDA bag-of-word,我们的模型在多种度量方式上都要明显优baseline, 可以说我们模型找到了简历和岗位描述之间的一种相关性。

另一个应用是面试问题推荐,假设我们有一个面试问题集,给定一个query 我们希望推荐一个相关的问题子集X,这个问题子集X一方面要与query相关,另一方面,问题集覆盖的知识点要尽可能多,即彼此之间要有差异性。我们把问题当作面试评语推断其主题作为表征。同时考虑问题集的Relevance 与 Diversity 设计优化函数,F。F取得最大值时的问题集为最优解。我们同样在真实面试问题集中测试我们的方法。

我们提出三个评价指标,Relevance、diversity、Person Quality,Relevance是说推荐十个问题中有多少个与query相关,diversity是说这些相关的问题有多少个是涉及不同的知识点,最后person quality是涉及综合类面试的问题。三个评估指标中,我们的模型推荐的问题 Relevance 与Diversity都较高,这说明推荐的问题不仅与query相关而且覆盖的知识点较多。其次推荐给综合面试的问题涉及Person Quality的问题要比技术面试要高,这也是与实际相符的。而以字符匹配为基础的BM25算法效果比较差, 这可能是由于其很难发掘query中潜在的知识点造成的。更具体的我们在论文中展示了一个例子,进一步可视化解释我们的效果。如果感兴趣可以翻阅我们的文章。

这就是我们在智能面试方面的工作,希望在提高面试评估质量的方面做点贡献,使合适的人在招聘中脱颖而出。谢谢大家。

机器学习与应用专场|AIS预讲会全程干货分享

2 毛宇兆 北京邮电大学

Show and Tell More: Topic-Oriented Multi-Sentence Image Captioning

机器学习与应用专场|AIS预讲会全程干货分享

我们看一下Image Captioning任务,为图像生成文本的描述,它跟图像分类不同的地方可以用句子来描述一幅图片,它能广泛应用在很多领域,比如幼儿教学,盲人导航、自动导游。这是很好的应用,现在导游系统,我们到一个地方突然开始讲了,我也不知道讲什么东西,结合VR眼镜,对准一个,它会为你解说内容。

多媒体的人机对话,还有我们能够为医疗影像图片自动生成一些报告,它有很广的应用。我们的动机是,图像描述通常是为图像生成一个单句子的描述。

我们首先想到的就是LDA模型,首先把这些句子放到LDA模型中去,可以获得一些参数,其中包括句子的主题,以及这个句子主题中的主题词,可以标注在这些图像上面。同时我们也可以可视化我们的主题。第一个主题,描述厨房一些内容,第二个主题,关于颜色,第三个,打电话,第四个,读报纸的一些东西。

我们的贡献是提出了面向主题的模型,用多个句子完整描述图片。我们提出了融合单元门,把主题融入进去,把生成的句子和主题保持一致性。我们也在句子和段落集的数字集上面做了很多实验,证明我们的模型在主题一致性和描述一致性上是有效的。

模型首先是形式化描述,传统来说,一个图像描述的目标就是给定一幅图片最大化句子概率。我们模型,为了要抓住不同侧重点描述,引入主题变量。在给定图片的情况下,一个句子和图像联合分布,可以展成两个项目,其中第一项是面向主题的语言模型,对应我们模型的一个输出,同时第二项是一个主题分类器,对应这个模型的第二个输出。

我们的代价包括两个,一是训练语言模型的代价,二是训练分类器的代价。

我们输入包括两项,第一,已经训练好的LDA,还有一个是LCM的第一时刻我们会输入一个图像,在随后的时刻我们会输入句子。

第一个模块是LSTM单元,它会获得两个表示,一是图像表示,就是h0的输出,还有上下文的表示ht,t 大于0时候的输出。

我们还有融合单元门,把得到的三个表示,一是上下文的表示,还有一个是图像的表示,还有一个是主题的表示,融合方式非常简单,先把主题和图像相乘,然后再拼接到上下文表示,去输出语言模型的概率分布。

我们的模型不是为段落描述设计的,但是在段落数据集上也能获得比较好的性能。

给定一个主题,其中NIC会生成显著部分的描述,而我们的模型会生成跟主题相关的图像细节,这是我们的模型优势。

我们在描述同一场景,比如building的时候会有不同侧面的描述,这是qualitative results。

机器学习与应用专场|AIS预讲会全程干货分享

3 何苯 中国科学院大学

TDNN: A Two-stage Deep Neural Network for Prompt-independent Automated Essay Scoring

机器学习与应用专场|AIS预讲会全程干货分享

自动作文评分,指的是机器学习的方法,自动给作文打一个分,希望这样降低人工评分的代价,美国AES在2005年开始在GRE等里面引入机器评分。

现有作文评分方法,大致分两类,一是主题相关模型,对于每一道作文题有打好分的数据,训练模型,然后预测。二是主题独立的作文评分,有一个年级模拟考试,写出作文,但是没有训练数据,只有过往历史数据,根据过往历史数据有一个模型,迅速打一个分。

以往的方法大部分都是主题相关的模型,结果也非常好,甚至有结果表明它们与人和人之间的一致性还要高。但是主题独立的作文评分相对来说不是那么简单。

针对这个问题,我们在工作中提出了基于直推式transfer learning两阶段的算法。

第一阶段,主题独立阶段,我们训练一个简单的评分模型,它是主题独立模型,使用的也是主题独立的特征。用这个模型预测目标的问题作为评分。这个评分是不靠谱的,但是大体上用这个评分可以知道哪些作文是最好的,哪些是最差的。

第二阶段训练神经网络模型,用来预测目标作文集的作文评分。这个深度神经网络有三部分输入,第一部分,语义网络,它的输入是训练好的embedding,第二部分是POS标记输入,第三部分是句法标记作为输入。我们希望用三个不同的输入,分别捕捉一个作文的语义信息,句子的语法构成。还有段落的一种组织,句法组织方式,来捕捉它们和作文评分的一个关系,经过两层三层的LSTM生成作文表示,它们会被拼接起来,输入到前配网络,得到最终的评分。

本文提出的模型,这三种不同的模型输入,每道作文上最佳baseline的性能比较,除了第七道作文题,其他的几个作文题都有一定程度的提高。八道作文题,平均来讲,上面是baseline,下面是方法不同的特征输入。我们发现提出的方法,平均上来讲在三个指标上都能得到一定程度的提升,最好的特征组合是embedding输入加上句法标记。

另外,尾标记信息它的正确性,虽然它的尾标记评分不准确,尾正例比尾负例要高,同时尾负例比尾正例都要低,准确性都有80%以上,保证了训练的可靠性。

最后总结一下,本文提出两阶段的,基于transfer learning的神经网络模型,希望能够解决主题独立的作文评分任务,结果表明方法有效性,还有一个结论,句法特征被证明对作文打分还是有用的一个特征。

机器学习与应用专场|AIS预讲会全程干货分享

4 周乾荣 北京邮电大学

Differentiated Attentive Representation Learning for Sentence Classification

机器学习与应用专场|AIS预讲会全程干货分享

在现在的很多句子分类模型当中,最重要的一个环节就是句子的表示学习,现阶段基于表示学习的深度模型,大家都会用到一种注意力机制的模型,这种注意力机制对于提高整个句子的分类性能还有模型的科技一致性有很大的帮助。

作为一个总结,相关工作里面,在这种单项的注意力集中当中,使用的引导向量一般是句子的平均向量,或者初始化。这种单量模型上面可以进化出多跳的机制,这种机制主要的一个改变就是原先单跳是对句子进行一次关注,这种多跳会更新在句子上面的关注权重,期望能够在最后一次能够关注到句子中比较重要的部分。

基于单跳的模型在一些比较复杂的句子,或者长的句子上表现性能不是特别好。一般性能上要优于单跳模型,一般来说它会使用一种共享全值方式,也就是多跳的注意力机制,它使用的是统一权重。另外,我们发现这种方式都是在最后一个时刻给分类标签的监督信息,没有在中间提供一些其他有监督的信息。

这里是我们发现的一个问题,这种多跳的模型,一般在第一次关注非常重要。比如第一次关注到错误的地方,后面基本上都是沿着错误的道路越来越远。我们的期望就是如何能够在第一次关注错误的时候转移到正确的地方。

我们模型的一个动机是要找到一种方式,出现错误的时候把这种attention转移到正确的单跳上面,给出预测。我们的动机是关注的时候给出一个信号,这种信号传递一种信息,信息表达的是前面attention表现的好与坏,如果分类出现错误,我们应该告诉后面的hop怎么调整。

在训练方法上,如果说我们直接把两个loss加在一起,其实没有不同之处。我们在GR的loss上面加了一个调节因子,在出现错误的时候,关注到一个不是特别好区域的时候,能够转移它的attention。

这里面我们调节因子采用的是分布函数,意义在于C1在正确标签上预测的概率值,如果这个值比较小,那这个发音会比较大。loss的优化重心放在L2上面。这样显示一个信号,表现的怎么样,这个信号传递给C2。

最后是判别器的loss,而这个loss它的监督信息来自C1和C2的分类loss,用的是一个函数。

我们在实验中发现,如果C1的学习情况对C2影响特别大,如果C1总是给出很尖锐的概率分布,或者很平均的概率分布,都将影响C2的学习。我们对C1的预测输出做一个乘法,保持它在该有的正确标签有一个词,其他的标签上有一个不是特别低的值。最后我们把这三个加在一起统一优化。

在模型层面,我们主要提出了差异化的模型。在问题解决层面,我们提出一种显示的信号转移这种attention,能够有效解决attention bias问题。另外,我们做了一个可视化,看到了模型能够提取出更有表现力的特征,提高了分解性能,谢谢大家。

机器学习与应用专场|AIS预讲会全程干货分享

5 刘一佳 哈尔滨工业大学

Distilling Knowledge for Search-based Structured Prediction

机器学习与应用专场|AIS预讲会全程干货分享

自然语言的结构预测是把自然语言映射成一个结构,这个结构可能是树或者图,比较典型的句法分析、翻译这些都是结构预测问题。这些结构预测问题可以建模成一个搜索问题,能把找结构的过程变成一个采用搜索动作达到新状态的过程,经过不断运行,达到最终状况这样一个搜索过程。

基于搜索的结构预测往往需要一个打分函数,在一个状态下,一个动作分数是多少,只要选最高分数的动作不断地向下走就可以。

学习一个打分函数是通过构建一个reference policy策略,这个策略告诉我们在一个状态上,知道针对结构之后,正确的动作应该是什么,用这个reference policy不断的在训练数据上运行,就获得了正确的状态以及正确的动作。拿到这个正确状态和正确动作之后,训练一个判别器,就能得到打分函数。

但是训练过程有以下两个主要的问题,一是训练过程中,训练数据存在歧异性。二是训练测试不一致,测试过程中可能会进入一个错误的状态。

针对第一个问题的解决办法是用集成学习方法。

针对第二个问题最典型的解决方法是在训练过程中引入探索的机制。

考虑到以上两点,我们决定使用知识蒸馏的手段把这两个问题一次性都解决。

我们用不同的处置方法训练了M个模型,用平均化的输出作为最后的模型输出。就可以直接从这个模型的输出,把知识蒸馏用在上面。因为已经得到的模型探索空间,得到很多搜索状态,在状态上用知识蒸馏的学习目标去学习,也就是说在知识整流过程中引入探索机制,在任意状态上学到了一些模型的信息。

我们把算法写成了统一的框架,从参考的policy中学,也可以从sampling policy中学,这两部分得到的数据完全是正交的,可以把它俩合并到一起,进一步提高我们模型的性能。

在实验方面我们在两个标准数据集中,用一个小数据上进行实验,检查的结果是提高了1.3个点,NMT的小数据结果提升2.6个点。数据表明现在的模型性能要好于其他的基于搜索的结构预测性能。

我们的模型能够在有误差的状态下学的更好,完全可以从知识蒸馏的loss里学,比起传统的NLL更稳定。

我们工作的最大亮点是不需要改变任何模型以及不增加任何数据、人工知识的情况下,将句法分析的准确率提高1.3个点,并且在一个小的机器翻译模型上准确率提高2.6个点。

机器学习与应用专场|AIS预讲会全程干货分享

6 罗炳峰 北京大学

Marrying up Regular Expressions with Neural Networks:A Case Study for Spoken Language Understanding

机器学习与应用专场|AIS预讲会全程干货分享

我们的工作是通过利用正确表达式中的知识辅助神经网络的训练,从而在数据量非常少的时候,也能训练处比较好的模型。

我们在实际使用神经网络类的机器学习方法时,往往需要跟具体的应用场景相结合。而一旦具体到一个细分的场景,我们所能利用的数据往往都是非常有限的。任务式对话系统就是一个典型的例子。其中的难点主要在于,如何在领域数据很少的情况下获得一个可靠的口语理解系统。

口语理解分为两个子任务。一是意图识别,即识别用户所说的指令对应的意图(句子分类);二是槽位解析,即在用户的指令中找出与其意图相关的槽位(序列标注)。

在工业界,缺少数据时,我们通常会人工撰写一系列正则表达式规则来构造一个规则系统。虽然这种方法不需要训练数据,但是它的泛化能力却非常差。而对应地,由于神经网络类模型是在向量空间中进行操作,所以其一般具有比价好的泛化能力。因此,我们是否可以将正则表达式和神经网络相结合,从而在数据很少的情况下构建出更可靠的系统?

我们来看一下正则表达式的哪些部分对神经网络是有用的。

其一,正则表达式的输出肯定是有用的。对于意图识别这类的句子分类任务,正则表达式通常会输出句子级别的标签;而对于槽位解析这种序列标注任务,正则表达式则通常会输出词级别的标签。于是,一方面,我们可以将正则表达式输出的标签进行向量化表示,并作为神经网络的辅助输入;另一方面,我们也可以通过类似线性加权的形式,将正则表达式输出的标签与神经网络的输出以一种可学习的方式进行结合。

其二,我们发现,正则表达式自身其实已经告诉了我们其分类所依据的线索词是什么。所以,相对应的,我们也希望神经网络在做分类时也关注这些线索词。而关注句子中特定的词恰恰就是神经网络中attention模块做的事情。所以,正则表达式的另一种用法就是,我们可以利用正则表达式中的线索词来指导attention模块的训练。

同时,我们也发现,在实际中,我们既会使用正向正则表达式,其认为符合其pattern的样本应该被标成某一类;也会使用负向正则表达式,其认为符合其pattern的样本不应该被标成某一类。所以,我们也相对应地提出了正向attention和负向attention。其中,负向attention关注样本里面哪些词告诉我们这个样本不属于这一类,正向attention则相反。我们将正向attention对于第k类的打分和负向attention对第k类的打分相减,得到最后的第k类的打分。

我们的实验是在ATIS航班信息数据集上进行的。首先,我们进行了小样本学习的实验。在这个设置下,我们通过随机抽样的方法,使得每一类都只包括5个、10个或20个训练样本。

在意图识别任务中,我们的三个方法相对于基础的双向LSTM模型都有明显的提升。其中,利用正则表达式监督attention的方法提升最大,大概能提高8% - 15%的Accuracy。在槽位解析任务中,我们发现将正则表达式的输出当做feature进行输入的方法效果最好,大概能提高5%的宏观F1。同时,我们的方法也显著超过了单纯的正则表达式匹配方法。在使用全量ATIS训练集的时候,我们结合正则表达式的方法仍然可以对意图识别和槽位解析的宏观F1带来显著的提升。

我们最后分析了复杂正确表达式和简单正确表达式的区别。我们发现,复杂正则表达式一般比简单正则表达式具有更好地效果。但是,使用非常简单的正则表达式已经能取得非常明显的提升。所以,我们在实际应用的时候,可以先从简单正确表达式开始,然后在成本允许的情况下,再逐渐增加正确表达式的复杂程度。

7 倪瑶 北京理工大学

CAGAN:Consistent Adversarial Training Enhanced GANs

生成对抗网络应用在图像生成以及很多领域上。简单说,生成对抗网络就是让生成的图片和真实的图片尽量区分开,让生成器尽量生成看起来很真实的图片。

实际上,这个对抗网络有两个问题。第一,它需要在一个函数空间优化,但是在实际过程中被表示成神经网络,在有限的参数空间里面优化。另外一个,梯度消失问题。当判别器太强的时候,生成器几乎学不到东西,会导致训练不稳定和模式崩溃。

现有的方法克服对抗网络在有限参数空间学习,以及在梯度消失的问题上主要分两大类,一是改判别器的函数用来克服梯度消失问题,二是解决它在有限的参数空间优化,一个生成器对应多个判别器,这样能够更好的训练。

在解决办法上,我们在辨别器网络里面加dropout。这样每一次输出相当于采样一个网络对一个特定样本进行处理,就可以构建很多个判别器。

它有这样的优点,第一,让它接近于在无穷参数的空间优化,第二,可以避免参数爆炸,第三,避免过拟合,这样博弈过程可以逃离这样的一个困境,即生成器拟合了训练数据。

我们除了构建多个判别器,还构建了一致对抗训练的过程。主要是它对真实的样本尽量表现一致,用两个不同的辨别网络输出的差异衡量一致性,对真实的样本尽量表示一致,目的是能够更好的拟合到真实数据。让它对生成的数据尽量不一致,我们出发点就是对于一张带有很多个假特征的图片,它有很多假特征,但是一个网络学到不同的特征,这样不同网络的差异性尽量大。

在训练生成器的时候,我们会让它生成的样本朝着判别器认为一致的方向走。

有的时候训练生成器和训练判别器过程中,一次训练可能会迭代多次判别器,迭代一次生成器,这样会造成一致性会发生一些偏移,为了让它生成数据的一致性和真实数据一致性保持在一定的范围内,我们使用了一个函数对它进行平衡。

我们的实验把一致对抗训练的过程加到两个baseline里面,把它放在图像生成任务上。我们的性能上升了,在CIFAR-10上inception score为9.17,在STL-10上为10.02,最后生成了看起来很逼真的图片。同时我们的模型的训练过程也更加稳定。在半监督图片分类任务上,我们取得了竞争性的结果,我们生成图片更加多样,可以缓解对抗网络模式崩溃的问题。

最后总结,我们利用dropout的方式构建出几乎无穷多个辨别器,我们提出了一致对抗训练,我们的实验取得了先进的结果,我们增加了训练稳定性和缓解了模式崩溃问题。

机器学习与应用专场|AIS预讲会全程干货分享

8 于思晧 中科院计算所

Reducing Variance in Gradient Bandit Algorithm using Antithetic Variates Method

机器学习与应用专场|AIS预讲会全程干货分享

这一篇工作针对多臂机问题上的策略梯度方法进行优化。策略梯度方法使用蒙特卡洛方法估计梯度时会存在较大方差,本工作引入对偶变量法来对其进行缩减。

首先介绍一下背景。多臂机描述了一个这样的问题:我们玩一个有多个手臂的老虎机,按每个手臂获得的奖励服从不同的未知分布且期望不一样,在一定的游戏次数下,能不能找出哪个手臂掉落奖励的期望是最大的。策略梯度法是解决这个问题的一个重要方法。对于每个臂设置一个初始为0的偏好值,偏好在SoftMax后得到一个概率分布,也就是我们玩游戏的策略即我们选择每一个臂的概率。在这个概率分布下我们可以列出期望收益的表达式,用其对偏好求偏导,通过梯度上升的方法迭代出最优的偏好,来得到一个好的游戏策略,最终偏好最大的臂就是收益期望最大的臂。

但是在求解的过程中,我们不知道每个臂的收益期望,所以无法得到一个准确的梯度。所以策略梯度法使用蒙特卡洛方法来对它进行无偏估计,但这个估计却是存在较大方差的。而这个方差显然对我们的梯度上升法的求解不管是效率还是结果上都造成了很大的影响,所以我们希望可以缩减这个方差。

对于蒙特卡洛方法而言,其实已经有了比较成熟的减方差的策略,比如控制变量法、对偶变量法。类似于控制变量法衍生出了强化学习中很使用的带基准线的策略梯度法,我们将对偶变量法引入多臂机得到我们的方法。

这里先直接列出我们方法中梯度估计量的表达式,在对比中可以看出左边对偶变量法的参数进行一定的设定之后,就可以得到右边的式子即我们的方法。我们的方法是三部分的加和,第二、三部分是反相关的,反相关的成立最大的难点在于需要构造一个单调的复合函数。

怎么样构造呢?举一个例子,有四个臂的多臂机,敲击每一个臂所得到的梯度作为一行,可以构成这样一个矩阵,为了方便构造单调函数,我们改用坐标上升法来求解,那么假设我们现在选择第二个臂,则我们现在只需要关注矩阵的第二列,若可以对这一列的数值进行排序就可以让真实梯度的值等于右边这个分段函数在0-1上的积分,而由于此函数是单调的,所以可以很方便的引入对偶变量法。然而式子中每个臂的收益期望是未知,我们要如何排序呢?在这个问题上我们认为我们使用的每个臂的偏好值在训练一定次数后在大小关系上是和收益期望保持一致的,所以我们直接采用偏好大小进行排序,来近似的得到右边的函数,这整个过程就是我们的方法。

这是我的实验,它是在一个20个臂且每个臂服从伯努利分布的多臂机上进行的,中间那幅图显示了最后找到最优臂的概率,右边的图展示了估计量方差的情况。

大体就是这样。最后包括无偏估计还有方差缩减的一些证明,在论文里面都有详细陈述,大家感兴趣的可以看一下。

机器学习与应用专场|AIS预讲会全程干货分享

9 冯悦 中科院计算所

From Greedy Selection to Exploratory Decision-Making: Diverse Ranking with Policy-Value Networks

机器学习与应用专场|AIS预讲会全程干货分享

我们工作解决的是在Diverse Ranking中贪心选择造成的局部最优解问题。

当我们查询的query表达的信息包含多方面的时候,用户希望看到的检索结果是能够包含这些多方面信息的。所以Diverse Ranking这个任务的目标是希望检索结果能够包含尽可能多的子话题。

目前的方法,将Diverse Ranking这个过程建模为序列化的文档选择过程,评估主要包含两方面,一个是相似性方面,一个是多样性方面,最后将这两方面的因素作为一个综合,来进行文档的选择。这个过程当中,它会在每一步的时候单步考虑当前位置选哪个文档最好,没有考虑后续的文档排序过程,是一个贪心选择框架。

这样的选择框架会形成这个问题的局部最优解。其中最简单的解决方式是,搜索后续排序文档的可能排序过程,但是由于我们这个问题是一个子序列选择的过程,它是一个非多项式困难的问题,如果全部搜索非常不现实,所以我们希望用一些尽量少的搜索去解决这个问题。在这里我们采用的是MCTS方法,可以通过一些搜索策略指导树搜索,尽量用较少的搜索次数,来达到相对较优解。我们搜索策略主要由我们的policy-value network给出的。在这个里面,我们的policy主要控制搜索宽度,我们的value主要是控制搜索的一个深度。

模型具体的过程是把Diverse Ranking的过程建模为一个MDP过程,MDP过程当中的状态是问题和已经排序的文档。我们的action是后选的每一个文档。在这里的状态转移是,选定一个文档之后,我们把这个文档放在已经排序的列表上。我们模块主要有四个模块,一是状态的编码模块,还有policy模块,value模块,以及最后的MCTS搜索模块。

首先给大家介绍一下编码模块,我们使用的是LSTM的模型,我们将查询作为LSTM的初始状态,将我们的文档依次输入给LSTM模块,它会返回给我们最终的状态,我们将最终状态的编码向量当作目前MDP的状态。接下来基于目前的状态,policy模块可以给出哪个文档是最好的, value模块主要是对目前状态后续收益的评估,也就是说基于当前的状态,如果把后续列表排序完成,最终的收益是什么,做一个估算。最后是MCTS搜索模块,它主要是根据policy和value搜索策略的指导,进行一个搜索,能够对后续位置的排序进行一个探索,能够得到一个更好的搜索策略。

最后在TREC数据集上验证了我们的模型,对比的方法,包括深度学习方法以及传统的方法,最后实验效果是显著提升的。我们还对MCTS搜索的作用进行了探索,在训练过程和测试过程中,我们的MCTS搜索效果都比不搜索的policy有显著提升。

相关推荐