舒意恒、兔子酱作者

拒绝无脑吹!从ACL2020看预训练缺陷

以 BERT 为代表作的预训练模型的研究热度一直很高,到 0202 年了,预训练的研究依旧层出不穷,而且 ACL 2020 Best Paper 荣誉提名也选择了这一主题的研究。

但是,只要我们不停止预训练,其表现就一定会提升吗?预训练模型可以完全支持 NLP 的所有下游任务吗?在 ACL 2020 已发表的论文中,我们整理并归纳出了目前学术界对预训练模型的不同看法。

论点一

预训练,效果就是棒

预训练的优势,来源于大量数据积累所造就的良好泛化能力。

ACL 2020|Don’t Stop Pretraining: Adapt Language Models to Domains and Tasks[1]

动机

虽然通用预训练模型是在大量语料上进行的,且在glue benchmark等经典的公开数据集上取得了很好的效果,但是当其迁移到一些不那么通用的领域数据(如医疗、金融等)上时,通用预训练模型是否依然有这么好的表现呢?

实验

作者在4个领域(生物医学、计算机科学、新闻和评论)的8个分类任务上进行了“继续预训练”的实验,有以下两种“继续”方式:

  • 领域自适应预训练(Domain-Adaptive Pre-Training, DAPT) 在特定领域的无标注数据上继续进行预训练。

  • 任务自适应预训练(Task-Adaptive Pre-Training,TAPT) 在和任务相关但未标注的数据上继续进行预训练。

实验设置如下:

实验结果:

结论

实验表明针对领域(DAPT)或任务(TAPT)数据继续预训练可以提升下游模型的效果,先进行领域自适应训练再进行任务自适应训练,往往可以进一步提升模型表现。虽然论文是基于 RoBERTa 展开实验,但是作者认为这些策略都是通用的,所以应用到其他语言模型上也是奏效的。

当能获取到更多任务相关的无标注数据进行继续预训练(Curated-TAPT)时,效果更佳;如果无法取得这些数据,可以通过基于KNN的简单数据选择策略,也可以取得一定程度的提升。

此外,作者对来自相同 domain 的两个不同任务进行了“跨任务迁移实验”,即首先在任务 A 的标注数据上进行 LM 预训练,然后在任务 B 的标注数据上 finetune,实验发现这种跨任务的预训练对效果是有损失的。

该更多的更多细节可以参考卖萌屋前不久推送过的《ACL20 best paper荣誉提名 | DO NOT Stop Pretraining!》

ACL 2020 | Pretrained Transformers Improve Out-of-Distribution Robustness[2]

动机

通常一个 NLP 任务的训练集、验证集、测试集都是符合相同分布(independent and identically distributed,IID)的数据。以 Transformer 为内核的预训练模型在相同分布的测试集上可以取得高准确率,但是它们在不同分布(out-of-distribution,OOD) 的数据上的泛化能力如何呢?

实验

作者首先构建了一套测试模型鲁棒性的评价体系,然后在 7 个 NLP 任务上度量多个模型的 OOD 泛化能力 generalization 和检测能力 detection。实验的模型包括 bag-of-words、ConvNets 和 LSTM 以及 Transformers 系的 BERT、ALBERT模型。

结论

  • 基于 Transformers 的模型相比其他结构的较早提出的模型在 OOD 上更加鲁棒,尤其是训练语料的风格、形式越丰富的时候。但是并不代表说越大参数规模的 PTMs 表现越好。预训练很大程度上弥补了 OOD 和 IID 之间的差异。

  • 蒸馏可能对 PTMs 性能是有损害的。

  • PTMs 在异常样本检测上也比以前的模型表现更敏感。

另外,本文不同于域适应要同时学习源和目标分布的表示,而是在没有域适应的情况下,测试模型在不可预知的分布偏差下的鲁棒性。

ACL 2020|Pre-training Is (Almost) All You Need: An Application to Commonsense Reasoning[3]

动机

对预训练模型进行微调已经成为解决下游 NLP 任务的一个标准做法。因为预训练模型本身没有携带特定分类标签的先验知识,所以作者认为微调不是最优的。那如何更好地利用预训练模型呢?

实验

本文研究的任务是常识推理任务,Transformer-based 的 encoder 之后不是连接分类层,而是设计了一个对 hypotheses 进行排序的打分函数。在 4 个常识推理数据集进行 zero-shot learning。同时和以 classifier 为输出层进行 finetune 的方法进行了对比,测试两者随着训练集规模的变化的模型表现。采用 RoBERTa-large 作为实验模型。

结论

实验表明,和有监督方法相比,作者提出的评分方法可以作为一个很强的 baseline。直接使用 MLM 的 head 会有持续的性能增益随着训练数据规模的减小。未来工作包括将该评分方法用于自然语言推断和情感分析等任务。

论点二

预训练模型对语言的理解有限

预训练模型的局限体现在,一是记忆和存储语言知识的能力有限,二是对语言逻辑的理解能力有限。

ACL 2020|To Pretrain or Not to Pretrain: Examining the Benefits of Pretraining on Resource Rich Tasks[4]

动机

PTMs 已然取得了很好的效果,作者认为在数据丰富的下游任务中微调模型还没有很好地被研究,所以作者想检验下游任务中训练样本的数量对预训练模型的影响。

实验

本文实验关注于多类别的情感分类任务,对三种模型进行了系统的实验,包括 RoBERTa、LSTM 以及使用预训练模型的词向量层的 LSTM。

结论

对于文本分类任务来说,用百万级的数据训练简单的 LSTM 就足够获得有竞争力的效果。微调 RoBERTa 的结果 与 LSTM 的差距不足 1% 。当训练数据足够多时,基于 MLM 的 PTMs 表现可能不再增加。

ACL 2020|Negated and Misprimed Probes for Pretrained Language Models: Birds Can Talk, But Cannot Fly[5]

动机

PTMs 已经成为一种用来捕获通用语言知识和基础事实知识的通用工具,但是 PTMs 是否真的可以从训练语料中学习到知识呢?比如 PTMs 是否具备区分肯定否定、是否不被错误的噪声干扰呢?

实验

作者设计了两组实验来对 PTMs 进行语言模型分析(LAnguage Model Analysis,LAMA)。1)研究模型是否可以正确区分肯定否定。通过人为地在句子中插入否定词,比如(“Birds cannot [MASK]”)和(“Birds can [MASK]”);(2)研究模型是否被错误信息诱导。在模型可以正确识别的句子中加入“错误”,比如(“Talk?Birds can [MASK]”)。

结论

作者发现预训练模型都不能很好地处理这两类问题。当前的预训练模型很容易被干扰,例如句子中的否定和“错误”。它是通过较浅层的模式匹配的方式解决开放域QA问题,而不是基于事实知识和推理。事实知识和逻辑推理能力在预训练模型中是零散的、不成体系的。

论点三

预训练模型的迁移能力仍待研究

迁移能力的局限体现在,对于小数据集能否很好地适应任务?或者微调后是否忘记了已经在预训练中学习到的知识?

ACL 2020|Intermediate-Task Transfer Learning with Pretrained Models for Natural Language Understanding: When and Why Does It Work?[6]

动机

尽管预训练模型表现良好,在对目标任务微调之前,如果在数据丰富的中间任务上对模型进行再次训练是否可以提升效果?再者,什么样的中间任务对目标任务有益?

实验

作者对中间任务对 PTMs 的影响进行了大规模的实验,本质上一篇篇实验报告的文章。实验的步骤如下图所示,1)获得预训练的 RoBERTa,2)在中间任务上继续训练,3)对目标任务微调。本文一共设计了 110 种中间任务和目标任务的组合,并用 25 个探针任务进行评估,涵盖了语法和语义。

结论

作者观察到,需要高级推理能力的中间任务,对于提升目标任务的效果往往更好。例如共指共指解析任务。但遗憾的是,作者并未观察到中间任务与目标任务之间更加精细的相关性,这有待于进一步的研究。另外作者表明,经过中间任务的学习后可能导致模型忘记一些预训练中得到的知识,而这可能限制了对算法的分析。

ACL 2020|Do You Have the Right Scissors? Tailoring Pre-trained Language Models via Monte-Carlo Methods[7]

动机

微调是一种常见的利用预训练模型的方式。作者观察到在一个小数据集上微调可能导致高估(over-estimated) 或 低估(under-estimated) 的现象。

实验

作者提出一种称为 MC-Tailor 的方法,把高估区域的概率质量(probalility mass)截断和转移到低估区域。MC-Tailor 包括一个检测高估和低估区域的比率估计模块,以及一个 早期拒绝采样(Early Rejection Sampling,ERS) 算法,在保证采样质量的同时加快采样速度。在 9 个不同风格和规模的数据集进行实验,并使用了 5 项评价指标。

结论

文本生成任务上,MC-Tailor 效果显著优于微调方法。这表明在小数据集上应用预训练模型,微调可能不是拟合数据的最好方法

论点四

预训练模型有严重的漏洞

预训练对于下游任务来说似乎是一个黑盒,仅仅对预训练模型进行微调并不代表我们完全掌控了这一模型。

ACL 2020|Weight Poisoning Attacks on Pretrained Models[8]

动机

如果用户下载了不受信任的预训练模型,是否会构成安全威胁呢?

实验

作者通过一种 RIPPLe正则化方法和 Embedding Surgery 的初始化方法,构建 weight poisoning 攻击(如图所示),在情感分类,毒性检测和垃圾邮件检测任务上验证此方法的可行性。

结论

weight poisoning 这种攻击方式广泛存在,并且构成了严重威胁。即使攻击者对数据集和微调过程了解有限的情况下,也可以随意操控模型预测结果。所以,预训练模型在微调后可能会暴露“后门”, RIPPLe 甚至可能构建高达 100% 成功率的后门。另外,作者提出一种防御方式是,根据频率以及与输出类别的关系来检查可能的触发关键词。

小结

我们不应当一味鼓吹预训练模型在 NLP 中的作用。预训练模型是庞大的黑盒子,是大型语料库的高度抽象。T5、GPT-3 等模型,比更大还更大,以到普通实验室无法使用的地步。

共性与个性是我们理解世界的基本原理之一,而只强调预训练意味着只强调 NLP 任务的共性,即便这样的模型再大,也忽视了各类任务的个性。通过汇集当前研究的各种观点,我们可以发现,更大的模型并不是解决 NLP 各类任务的万能钥匙。

更重要的是且对研究者具有启发的是,预训练模型的迁移能力、对语言的记忆能力、语言理解能力,甚至安全性上还存在诸多缺陷,等待我们的探索。

在订阅号「夕小瑶的卖萌屋」后台回复关键词【0804】,即可下载论文PDF合集。

夕小瑶的卖萌屋
夕小瑶的卖萌屋

转自微信公众号【夕小瑶的卖萌屋】,几个有颜有料的小仙女分享机器学习干货的公众号,专注于NLP、搜索与推荐技术前沿

理论NLP预训练模型ACL20
相关数据
模式匹配技术

在计算机科学中,模式匹配就是检查特定序列的标记是否存在某种模式的组成部分。 与模式识别相比,匹配通常必须是精确的。 模式通常具有序列或树结构的形式。 模式匹配的使用包括输出令牌序列内的模式的位置(如果有的话),输出匹配模式的某个分量,以及用另一个令牌序列(即搜索和替换)替换匹配模式。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

文本分类技术

该技术可被用于理解、组织和分类结构化或非结构化文本文档。文本挖掘所使用的模型有词袋(BOW)模型、语言模型(ngram)和主题模型。隐马尔可夫模型通常用于词性标注(POS)。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

逻辑推理技术

逻辑推理中有三种方式:演绎推理、归纳推理和溯因推理。它包括给定前提、结论和规则

验证集技术

验证数据集是用于调整分类器超参数(即模型结构)的一组数据集,它有时也被称为开发集(dev set)。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

语料库技术

语料库一词在语言学上意指大量的文本,通常经过整理,具有既定格式与标记;事实上,语料库英文 "text corpus" 的涵意即为"body of text"。

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

先验知识技术

先验(apriori ;也译作 先天)在拉丁文中指“来自先前的东西”,或稍稍引申指“在经验之前”。近代西方传统中,认为先验指无需经验或先于经验获得的知识。先验知识不依赖于经验,比如,数学式子2+2=4;恒真命题“所有的单身汉一定没有结婚”;以及来自纯粹理性的推断“本体论证明”

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

拒绝采样技术

在数学中,拒绝抽样是用来从分布产生观测值的基本技术。它也被称为接受拒绝方法或“接受 - 拒绝算法”,是一种蒙特卡罗方法

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

文本生成技术

文本生成是生成文本的任务,其目的是使人类书写文本难以区分。

常识推理技术

常识推理是人工智能(AI)的一个分支,它关注模拟人类每天遇到的普通情境的类型和本质的假设。这些假设包括对人和物体的物理特性,目的,意图和行为的判断,以及他们的行为和相互作用的可能结果。展示常识推理的设备将能够预测结果并得出类似于人类民间心理学(人类对人们的行为和意图进行推理的天生能力)和天真物理学(人类对物理世界的自然理解)的结论。

情感分类技术

情感分类是对带有感情色彩的主观性文本进行分析、推理的过程,即分析对说话人的态度,倾向正面,还是反面。

暂无评论
暂无评论~