专访清华“00后”SIGIR2020 最佳短论文一作:大三就发最佳论文,背后有何秘诀?

2020 年 8 月 11 日 AI科技评论

作者 | 于是、刘家骅

编辑 | 陈彩娴

近日,第43届国际 “信息检索研究与发展” 年会(SIGIR - The International ACM SIGIR Conference on Research and Development in Information Retrieval)最佳论文正式公布。清华大学计算机系大三本科生于是同学以第一作者身份获得了最佳短论文奖项。
论文:Few-Shot Generative Conversational Query Rewriting
论文地址:https://arxiv.org/pdf/2006.05009.pdf
AI科技评论邀请到于是同学亲自对论文做了解读与专访问答。
在专访中,于是同学首先表示,在 听到获奖消息时感觉还是挺意外的,没有想到这篇短文可以获得最佳论文。 那么身为大三本科生是如何能够快速积累科研经验并发表最佳论文,难道在清华当真就能“肆意妄为”吗?
于是:
清华的培养机制还是比较鼓励本科生参与科研活动的。在我一开始试探性地想了解科研时,刘知远老师非常热情地欢迎我,让我和其他同学一起参与小组的组会,组内的研究生学长也非常欢迎我们,积极为本科生同学提供指导,我们也能够享受到实验室的一些计算资源。


另外我们比较好奇于是同学在论文完成过程中遇到了哪些困难,又有哪些人对其帮助比较大?
于是:
主要的困难可能就是跑各种实验吧哈哈。我这篇paper虽然是个短文,但是也做了不少的实验,由于很多实验涉及交叉验证(cross-validation)所以有些时候情境还是有些复杂的。我为了让自己对跑的实验保持“清醒”,我专门建了一个文本文件,每跑一个命令都要把命令复制到文件里记录下来,最终这个文件竟然记录了好几百个命令!即便采取这种方式我有些时候还是会发生错误,比如把一些实验的文件搞混、搞错一些实验的参数等等,发生了错误就不得不重跑。
说到这里就需要特别感谢杨景钦同学,他为我分担了不少实验的压力。此外,我也要特别感谢刘家骅学长对实验思路以及写作上提供的帮助以及熊辰炎学长和刘知远老师提供的指导!


在问到平时有什么兴趣爱好时,于是同学提到平时喜欢听音乐,或许这样有助于科研减压或者有助于科研灵感迸发?这点我们改天再做探讨。


接下来我们来看一下于是同学亲自对论文做的解读:

1


研究背景
随着人工智能技术的发展,虚拟助理(virtual assistant)产品开始走进千家万户。Apple Siri、Google Assistant、Amazon Alexa 等基于语音的虚拟助理可以通过与用户进行对话来给用户提供所需的服务。 目前,主流的虚拟助理能够理解并执行简单而 明确的用户命令 但是它们进 行对话式信息搜寻(Conversational Information Seeking, CIS)的能力仍然有限
当下对话式信息搜寻是信息检索领域的重要新兴研究方向。对话式信息搜寻被认为可以更好地满足用户复杂的信息需求并且能够通过更自然的对话式接口为用户提供方便的信息获取方式。自然对话中的查询(query)的特点是简明并且依赖于上下文。用户的查询往往会包含就对前面的对话内容的指代或省略,并且包含一些基于上下文的假设。
图1展示了一个对话中的一系列用户查询样例,可以看到Q2与Q3中分别出现了指代(coreference)以及省略(omission)的现象。

图1:TREC CAsT 2019 中的一个 topic(部分)
为了推动对话式信息搜寻的研究,文本检索会议(Text REtrieval Conference, TREC)在 2019 年举行了第一届 TREC Conversational Assistance Track(TREC CAsT 2019)。TREC CAsT 2019 的关注点在于系统对于对话式的信息需求的理解以及使用上下文信息寻找到相关的响应(response),而不要求系统通过阅读搜寻到的文本生成合适的回答。
TREC CAsT 2019提供了一系列主题(topic),每个主题都包含一个问题序列,这个序列模仿了用户围绕该主题展开的真实的提问。TRECCAsT 2019 要求系统根据用户的问题检索出相关的文章。为了统一用语,我们将 TREC CAsT 2019 中的 topic 称作会话(session),意在表明其为一个用户在一个较短的时间范围内做出的查询。
TREC CAsT 2019提供了对话的一种简化情境。它只要求系统检索出相关的文章,且无需系统处理文章以生成回应;因此对话式信息搜寻被简化为了对话式信息检索(Conversational Information Retrieval, Conversational IR)。此外,TREC CAsT 2019 中的问题只会跟该会话中用户之前的问题相关,而不会跟系统已经提供出来回应相关。我们的工作致力于解决这种简化的情境。
解决对话式信息检索一个自然的方式就是将对话式的查询重写为和上下文无关的查询,然后用重写后的查询进行标准的即席查询(ad-hoc searching)。图 1 所呈现的会话中的 Q2 Q3 发生了指代以及省略,因此缺失必要的信息。TREC CAsT 2019 提供的人工查询重写(manual query rewrites)补全了缺失的信息,可以输入现成的检索系统进行查询。
存在很多的办法对查询进行重构。在 TREC CAsT 2019 中我们就看到了很多方式,包括信息检索风格的查询扩展(query expansion)/ term reweighting,自然语言处理风格的指代消解(coreference resolution),以及基于神经网络的查询重写。其中 Ateam 提出了使用 GPT-2 进行生成式的查询重写。为了重写当前查询,Ateam 将之前的查询以及当下的查询一起输入预训练的语言模型 GPT-2,然后微调(fine-tune)模型使得其能够输出包含所有信息的上下文无关的查询重写。
GPT-2是OpenAI推出的基于transformer结构的语言模型。GPT-2使用transformer decoder组成自回归结构,在40GB的互联网文本上进行预训练,训练目标是根据一段之前的文本生成下一个单词。经过长时间的预训练后,给予GPT-2一段文本作为输入,其能够根据输入文本的内容进行质量极高的续写。GPT-2在各种下游任务中展现出了强大的能力,包括阅读理解、摘要、机器翻译等等。GPT-2的完全模型包含15亿个参数。
ATeam 的方法在 TREC CAsT 2019 上取得了较好的效果。然而,这个方法需要较多的人工查询重写用来训练模型,这些人工重写往往难以获得。基于这种考量,我们希望能够使用少量样本或者无样本监督来训练出较好的查询重写模型。
我们的工作研究了如何使用较少或没有人工重写来得到一个有效的 GPT-2 查询重写系统。我们提出了两种生成弱监督信号的方法。

2


基于GPT-2的查询重写系统
我们的查询重写系统需要根据当前查询 以及之前的查询 来重写出一个上下文无关的查询 ,即

我们使用 GPT-2,一个一个地输出查询重写中的单词 :x

具体地说,给GPT-2 的输入的格式为

其中为用于分隔输入的特殊字符,是用于提示GPT-2开始输出目标重写的特殊字符。我们使用GPT-2来一个接一个地输出单词。训练时,目标查询用来监督这个模型。得到重写之后我们再使用BM25检索出top100的文章,然后再使用BERT-base进行rerank。

3


弱监督信号生成
上文提到,训练基于GPT-2的查询重写系统的一个主要问题就是人工重写 难以获得。我们将目光转向搜索引擎日志中记录的丰富的即席查询会话(ad-hoc search sessions)。通常来说一个搜索的会话(session)包含一系列的查询,这些查询是由一个用户在一个较小的时间范围内提出的。因此,这些查询很有可能是关于一个主题的。同时,由于主流的搜索引擎不支持对话式搜索,用户提出的查询通常是上下文不相关的。
图2 是 MS MARCO Conversational Search 数据集中提供的一个即席查询会话样本;可以看到其符合上述两条特征。

图 2:MS MARCO 提供的即席查询会话样例
基于这两条特征,我们考虑使用即席查询会话 当作“伪的”查询重写,然后寻求将他们转化为对话式的搜索会话的方法。我们提出了两种方法,分别基于规则以及自监督方法,来完成这种转换 。两种方法都使用MS MARCO Conversational Search 数据集。

3.1 基于规则的方法(rule-based)

在基于规则的方法中,我们使用简单的规则来模仿对话中的两种常见现象:省略以及指代。我们在搜索会话上执行这两类操作:
  • 省略(Omission)。如果发现一个在之前的查询中出现过的名词短语,其位于介词之后,则省略该介词短语结构。

  • 指代(Coreference)。如果发现一个在之前的查询中出现过的名词短语,但没有出现在介词之后,则分析其单复数:

    如果为单数,则以96%的几率替换为it,2%的几率替换为he,2%的几率替换为she;

    如果为复数,则以75%的几率替换为they,25%的几率替换为them。

下面举一个例子。假设我们的系统在处理图 3 所示的查询会话。首先,我们的系统会在阅读第一个查询时记录出现的名词短语vitamin C。在阅读第二个查询时,发现vitamin C再次出现,前面没有介词,且为“单数”(准确地说,此处称之为“单数”并不准确),系统在it/he/she 中按概率进行随机决定,将最终其替换成了it。在阅读第三个查询时,发现vitamin C又出现了,但前面出现了介词,因此最终将介词短语整个删除。

图 3:基于规则的方法示意

3.2 基于自监督学习的方法(self-learn)

基于自监督学习的方法使用少量人工重写训练一个GPT-2的查询简化系统,使得可以将一个完整的查询简化成一个上下文相关的对话式查询:

将查询简化系统应用到即席查询会话中来产生对话式的搜索会话。训练查询简化系统的少量人工重写来源于TREC CAsT。

4


实验方法
我们的实验使用TREC CAsT 2019 benchmark 作为评测,MS MARCO Conversational Search 数据集作为弱监督数据来源。

4.1 TREC CAsT ConversationalSearch Benchmark

这个数据集提供了50个对话式搜索会话,每个包含10个左右的对话式查询。任务是对每个查询检索并排序相关的文章。我们使用TREC CAR以及MS MARCO作为文章来源。TREC CAsT还为每个对话式查询提供了人工重写。TREC CAsT主要的评测指标是NDCG@3;为了评估我们系统产生的重写与人工重写之间的相似度,我们还使用了BLEU-2。我们搭还建了后续的QA系统,标注了一些QA标签,使用ROUGE-L评价QA结果。

4.2 弱监督来源数据集

我们从MS MARCO Conversational Search数据集中取得即席查询会话。我们将Dev集中的会话进行预处理,只保留问题式的查询(为了和TREC CAsT的风格契合),随后分别使用上节提到的两种方式将其转化为对话式查询会话,即弱监督数据。

4.3 即席查询系统

通过GPT-2查询重写系统得到重写后,我们使用BM25算法检索出top100的文章,然后再使用BERT-base进行rerank。BERT-base是在MS MARCO Passage Ranking数据集上进行训练的,在后续的实验中参数固定。

4.4 实现细节

我们使用预训练的GPT-2 (medium)作为查询重写系统以及查询简化系统的初始参数。我们的zero-shot(未使用任何人工重写)实验包括rule-based(仅使用基于规则的方法产生的弱监督数据进行训练),few-shot(使用少量TREC CAsT人工重写)实验包括CV(在TREC CAsT上进行5折交叉验证)、rule-based+CV(使用基于规则的方法产生的弱监督数据训练后再交叉验证)、self-learn(使用基于自监督学习的方法产生的弱监督数据训练)、self-learn+CV(使用基于自监督学习的方法产生的弱监督数据训练后再交叉验证)。

5


实验结果

5.1 对话式信息检索准确度

图4:在TREC CAsT 2019上的整体结果
我们可以看到Original(使用未经改动的原查询)、AllenNLP Coref(使用AllenNLP进行指代消解后的查询)和Oracle(使用人工重写)之间效果的差距。我们的GPT-2查询重写系统可以有效地减少这个差距。我们的rule-based系统,即在完全zero-shot的背景下,与最好的TREC CAsT automatic run相当。 在使用少量人工查询重写(few-shot)的情境下,在50个会话上cross-validate(CV)的结果便已经超过了最好的CAsT automatic run;加上弱监督生成的数据,我们可以提高SOTA 10%以上。我们也发现了BLEU score与NDCG间有较好的相关性。
值得一提的是,我们使用的BERT-base ranker比起其他team提交的manual runs(即直接使用人工重写进行后续检索)要 差( 0.57+NDCG@3 对比 我们的0.544),因此我们的有效性主要归功于我们的查询重写系统。

5.2 分析

图5:不同情形下的效果;(b) 中x轴为对话深度(轮数),y轴为NDCG@3
我们对我们的系统做了一些分析。对于rule-based,我们做了ablation study。我们发现两个规则对整体的准确性都有贡献。如果我们移除掉某一条规则,那么准确度就会降低。我们还测量了不同对话深度下的准确度。我们发现我们的查询重写系统能够随着对话轮数变多保持一个较好地准确性(图5b中蓝线),而不是像使用原始查询一样在靠后的轮中效果发生明显降低(图5b中绿线)。这说明我们的重写系统能够有效地捕捉多轮的上下文信息。

图6:在不同训练数据量下的GPT-2查询重写表现
我们接着通过只给GPT-2少量的人工重写来研究GPT-2的少样本学习能力。我们发现预训练后的GPT-2可以在仅仅使用三轮对话训练后就达到较好的对话重写效果。只要通过约10轮对话的训练就可以达到约最好的CAsT auto runs的效果。我们推测GPT-2的惊人的小样本学习能力可能是因为其在预训练中已经掌握了对语言的理解能力,微调时只学习了重写所需要的语法结构。从图6b中可以看到,GPT-2仅通过训练少量的step,就可以迅速学会生成问题(QueFrac曲线),同时也可以迅速地学会从之前的查询中复制已有的概念(CopyFrac曲线)。我们认为这种有效性更多地来自正确地“释放”出了预训练语言模型对语言的理解能力。

图7:查询重写系统生成的重写样例
图7展示了rule-based+CV对应的查询重写系统生成的两个重写样例。在左侧的样例中,GPT-2准确地解决了一个group coreference问题:它准确地捕捉出“their”所指代的两个不同的事物,其中有一个throat cancer是三个turn之前的。第二个例子展示了我们的模型的不足之处,它还不能较好地明白“how about”类型的问题所包含的信息。

6


结论
我们的工作展现出了GPT-2来进行对话式查询重写的有效性。我们提出了两种简单地方法来生成弱监督数据用于训练查询重写模型。使用弱监督数据以及少量人工标注,我们的系统在TREC CAsT conversational search benchmark 上取得了新的SOTA,成功地超越了其他方法。我们的code已经公开在了github上: https://github.com/thunlp/ConversationQueryRewriter .
我们的工作解决的问题限于TREC CAsT 2019所设定的简化的情境:模型的任务只是检索出相关的文章,且我们的系统不需要对用户进行一些更高级的引导操作。在TREC CAsT 2020中,为了全面理解用户查询,系统不能再只考虑之前的查询,而同时也要考虑系统之前做出的回应。将来的研究应当向着更自然与更复杂的对话式任务努力。
 
7


专访实录
AI科技评论:在会话查询重写领域,相比其他研究者的工作,这篇论文的突出贡献或亮点是什么?
于是:主要的亮点是使用 neural-based 的方法来直接对查询进行生成式的重写,而不是通过一些简单的启发式规则或者是通过设计一些模型来基于现有的查询进行修改。
我们的方法使用GPT-2来进行生成式的重写,每个单词都是模型自己生成的,给予了模型更大的操作空间,可以不受各种人工规则的拘束。此外,预训练语言模型中已有的语言的知识也能很好地帮助其完成重写任务。 另外一方面我们的贡献就主要在于提出了生成弱监督数据用于训练的方法。
AI科技评论:论文中提到了基于规则和自监督学习的两种方法,这两种方法在一个任务中是一起使用吗?两种方法相比各有什么特点呢?具体而言,基于规则的方法有省略和共指,还需要别的语法规则吗?
于是:两种方法是分别使用的。基于规则的方法的特点是通过简单的认为规定的规则,就能够生成能够有效提升GPT-2重写水平的数据,但生成数据的类型比较有限。基于自监督学习的方法的特点是需要少量的人工标注训练查询简化模型,但无需人工编写规则,也许能够覆盖更多的情况,但会产生一些错误。总体来说基于规则的方法准确率更高一些。
省略和指代是对话中最常见的语法现象,在基于规则的方法里我们主要考虑了这两种,还有其他的如缩写我们没有考虑.
AI科技评论:  除了GPT-2,当使用别的模型时,论文提出的小样本学习方法也能取很好的效果吗?如果上下文对话很长时效果会如何?
于是:GPT-2能仅依赖少量样本就能够很好的完成这个任务的主要原因是其经历了使用海量数据的预训练。预训练过程使得GPT-2获得了对语言的较好的理解能力。我们做了使用未经预训练的GPT-2的实验(Rule-Based + CV w/o PLM),可以看到未经预训练的模型完全不具备类似的学习能力。因此如果使用未经预训练的模型,则小样本学习方法应当无法取得好效果。
TREC CAsT中对话的长度大概在10轮左右,因此我们的GPT-2还是覆盖了整个对话。如果对话过长的话也许可以采用一定的窗口大小来选取最近的若干个对话,因为关于某个topic的对话通常会每隔几轮更换一个subtopic,所以设定一个特定的窗口大小应该是有效的。
AI科技评论: 论文的工作有哪些具体应用场景呢?可实现性如何?
我们的工作可以应用到现有的搜索引擎与虚拟助理之中。但就像我们在介绍中所说的,我们的系统还不能解决查询依赖于之前的检索结果的情况,也不能产生除了提供答案外的其他行为。


阅读原文,直达“IJCAI”小组,了解更多大会信息!
登录查看更多
6

相关内容

【EMNLP2020-清华】基于常识知识图谱的多跳推理语言生成
专知会员服务
72+阅读 · 2020年9月25日
专知会员服务
142+阅读 · 2020年6月15日
【BAAI|2019】用深度学习模拟原子间势,王涵  (附pdf)
专知会员服务
17+阅读 · 2019年11月21日
周志华教授:如何做研究与写论文?
专知会员服务
148+阅读 · 2019年10月9日
PKD魔咒:我的身体不听话 | “生而不凡”专栏
知识分子
3+阅读 · 2019年3月26日
冬日里的一首歌 | 清华快闪女指挥王明媚讲述背后的故事
清华大学研究生教育
57+阅读 · 2019年1月9日
秒杀99%大学生!中国最牛高校学霸PK,简历吓坏网友...
人工智能机器人联盟
7+阅读 · 2017年11月12日
The Evolved Transformer
Arxiv
5+阅读 · 2019年1月30日
Arxiv
21+阅读 · 2018年8月30日
Arxiv
4+阅读 · 2017年11月14日
Arxiv
151+阅读 · 2017年8月1日
VIP会员
相关论文
Top
微信扫码咨询专知VIP会员