Press "Enter" to skip to content

当下主流预训练语言模型推理能力对比:RoBERTa夺魁

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

论文标题:

 

oLMpics – On what Language Model Pre-training Captures

 

论文作者:

 

Alon Talmor, Yanai Elazar, Yoav Goldberg, Jonathan Berant

 

论文链接:

 

https://arxiv.org/pdf/1912.13283.pdf

 

近两年来,预训练的语言模型如BERT、、XLNet在各类NLP上大放异彩,然而,它们是否具备语言推理知识还未可知。

 

本文基于这个空白, 使用了多达8种语言推理类任务,探究多个预训练语言模型的知识推理能力 ,包括零样本学习、少样本学习、微调等。

 

结果表明, BERT基本不具备推理能力,而RoBERTa推理能力最佳 。本文对之后关于预训练语言模型结构的设计具有指导意义。

 

语言模型的知识推理能力

 

语言模型是给定上文,预测下一个字符的任务。近年来,使用语言模型在大规模的无标注文本上预训练取得了巨大的进步,比如ElMo,BERT,RoBERTa,XLNet等。

 

但是,这些预训练语言模型仍有未解之谜:它们能从预训练中获取语言的知识推理能力吗?由于语言模型是在现有的文本上训练,那幺对于没有见过的文本,它是否也能正确推理出答案。

 

比如,模型见过句子“he is 23 year old in age and is older than me, if i was 16 year old”,和句子“he was born in 1986 and is older than me, if i was born in 1999”。

 

那幺它能够推理出下面的句子吗:“he is 1996 year old in age and is older than me, if i was 1986 year old”,尽管这个句子事实上是假的。

 

为此,本文在多达8个任务、多种控制实验设置下,比较了BERT、RoBERTa和它们的若干变体模型,首次深入探究了大规模预训练语言模型在语言知识推理能力。

 

发现尽管它们结构相同,但仍有相当大的效果差别,并且好的效果都受上下文的影响。这表明语言模型的推理能力和具体的文本环境有关。

 

总的来说,本文贡献如下:

 

提出一系列探究任务,较为系统地评估语言模型的知识推理能力;

 

提出预训练和微调对知识推理能力的影响评估方法;

 

实验发现,相同结构的语言模型在效果上仍有差距,并且依赖于上下文本;

 

在很多情况下,语言模型并不具备实验设置的推理能力;

 

为之后研究语言模型结构的设计提供指导。

 

比较任务

 

为了更全面地比较各个预训练语言模型的语言推理能力,我们设计了8个任务,如下表所示:

 

 

所有的任务都是基于“选择题”,也就是从几个候选项中模型去挑选去正确答案。

 

比如,在ALWAYS-NEVER任务中,给出了A-E五个选项,模型需要去选出”never”选项;在AGE COMPARISION任务中,模型需要根据文本描述选择“younger”或者“older”选项。其他的任务可以看上表示例。

 

此外,每个模型都有两种形式:MC-MLM和MC-QA。 MC是Multi-Choice,即单项选择,也即这8个任务的表现形式。

 

MC-MLM指的是把文本答案用掩码抹去,让模型去预测被掩码的答案。

 

MC-QA是把所有选项和文本连接起来,让模型去选择正确的选项。 上表的Setup即展示了每个任务是哪种形式。

 

语言模型

 

参赛的预训练语言模型有三种:

 

BERT——使用掩码语言模型(MLM)来训练;

 

BERT-WWM——使用全词掩码来训练;

 

RoBERTa——和BERT同样的结构,只是经过更仔细的调参和在更大语料上训练。

 

另外,L表示Large,B表示Base,分别指模型的大规模版本和基础版本。比如BERT-L和BERT-B。

 

基于任务AGE COMPARISION的实验

 

MC-MLM下的零样本实验

 

首先我们使用预训练的MC-MLM语言模型直接在AGE COMPARISION任务上预测。

 

一般来说,语言模型在预训练之后都要经过微调,但为了检验语言模型的泛化能力,我们直接使用预训练的模型,而不微调它。

 

BERT-WWM和RoBERTa-L的实验结果表明,RoBERTa-L完胜其他所有语言模型(如下表第一列所示)。令人惊讶的是,同为RoBERTa,Base版本取得了最差的结果。

 

 

MC-MLM下的少样本实验

 

虽然零样本可以评估语言模型的泛化能力,但有时候训练和测试的数据分布差距太大就会使其比较失去意义。

 

为此,我们进而在少量的目标数据上微调。我们每次随机抽取N个样本,测试多次,取其中最高的准确率(MAX)或者加权平均(WS),结果如上表第二列所示。

 

从WS来看,依然是RoBERTa-L完胜其他模型,但总体上都相比零样本有较大进步。这说明RoBERTa能很快泛化到其他数据分布。

 

预训练还是微调?

 

现在我们还不知道上述结果是来自语言模型的预训练阶段,还是来自微调阶段。 为此,我们探究模型对输入的敏感度。 我们采用两种方式:

 

(1) 语言丢弃 : 把除了必要信息之外的所有文本去除,只保留必要信息和掩码符号[MASK],比如在AGE COMPARISION任务中,我们只保留”22 [MASK] 45″;

 

(2) 语言扰动 : 把核心词汇换成一个无意义的词“blah”,比如“A 22 year old person BLAH(->age) is [MASK] blah(->than) a 45 year old person”。 如果模型的效果降低了,则说明预训练的语言模型和文本关系较大。

 

上表最后一列是结果。pert是语言扰动结果,nolang是语言丢弃结果。可以看到,尽管绝对效果不好,RoBERTa-L依然碾压其他语言模型。

 

而且,RoBERTa-L对语言相当敏感,无论是丢弃还是扰动,效果都大幅下降,这说明它实际上依靠了预训练的语言文本对结果的预测。

 

语言推理能力比较

 

现在我们来深入探究各语言模型的推理能力。我们将从数值大小、几何大小、频度词、否定词、连接词和多跳推理这几个方面比较各语言模型的推理能力。

 

语言模型能比较数值大小吗?

 

上面我们已经知道RoBERTa-L能够在“简单情况”下比较年龄大小,但如果我们把年龄换成出生年份呢?对调出生年份和年龄的数字呢?

 

比如,“A person born in 1984 is [MASK] than me in age, if i was born in 1992”,和“A person born in 20 is [MASK] than me in age, if i was born in 30”。

 

实验结果表明,对前者,RoBERTa-L能够取得60%的准确率,略好于随机猜测;但对于后者,只有12%的准确率,也就是说几乎全错了。

 

这是因为,RoBERTa-L只是在比较上下文中出现的数字的大小,而不是在比较数字的语义。

 

语言模型能比较几何大小吗?

 

既然语言模型不能推理出数字的语义,那幺对物体大小的判断呢?也即,判断“the size of OBJ-1 is usually much [MASK] than the size of a OBJ-2”,这里,OBJ可以是动物(猫、狗)或一般物体(铅笔)。

 

结果如下表所示。除了RoBERTa-L之外,其他模型都近乎随机猜测,不具备推理能力。

 

 

语言模型能判断频度词吗?

 

第二个有趣的问题是,语言模型能过区别always, sometimes和never等频度词吗?比如,对“cats [MASK] drink coffee”,我们知道应该填never,这是基本的知识推理能力。

 

我们使用ALWAYS-NEVER任务,也即,判断应该填写always, oftern, sometimes, rarely还是never,随机猜测的准确率为20%。

 

下表是实验结果。从实验结果来看,baseline的结果反而达到最好,这说明对于这个任务,预训练作用不大,反而是微调阶段影响更大。

 

 

语言模型能判断否定词吗?

 

自然语言有很多否定句,那幺语言模型也需要具备判断否定词的能力。比如,“he was [MASK] fat, he was very slow”,这里,[MASK]应该是not,反之则应该是very。

 

实验结果表明,RoBERTa-L能在零样本下取得75%的准确率,而Baseline也有较好的效果,这表明预训练的作用不是很大。

 

语言模型能判断连接词吗?

 

除了否定词之外,语言中还有很多连词,如and, but等。比如,“what is located in a street and is related to octagon”,答案是“street sign”。

 

这个任务使用QA的设置去实验。下表的实验结果表明,预训练的语言模型略好于Baseline,这说明它们还是有些作用,至于作用大小则很难界定。

 

 

语言模型能多跳推理吗?

 

最后,现实中的问题往往需要经过多次推理,也即多跳推理。比如,“When did the band where John Lennon played first form”。为此,可以把这个问题拆分为when, who, where问题中的一个或多个,让模型依次回答。随机猜测的准确率是1/3。

 

另一方面,近一两年来“受限生成”十分流行,即把内容和情感等风格因素分开,从而可以控制生成的内容和风格。

 

下表是实验结果,可以看到,所有的预训练模型效果不好,baseline取得最好效果,这说明预训练语言模型不能完成该类知识推理任务。

 

 

小结

 

下表总结了各个模型在每个任务上的表现,√表示效果很好,半√符号表示部分设置下效果好。 有2点值得注意:

 

(1)该表很多位置都是空的,说明对大部分任务,所有的语言模型都表现不好; (2)相比之下,RoBERTa-L取得最好的效果。

 

总的来说,大规模预训练语言模型在语言知识推理上并没有表现出明显的优势,而且和任务、模型都有较大的关系。

 

Be First to Comment

发表评论

邮箱地址不会被公开。 必填项已用*标注