颠覆大规模预训练!清华杨植麟组提出全新NLP学习框架TLM,学习效率×100倍

新闻 人工智能
近期,清华大学团队提出一种无需预训练的高效 NLP 学习框架,在仅使用了1% 的算力和1% 的训练语料的条件下,在众多 NLP 任务上实现了比肩甚至超越预训练模型的性能。

 [[436890]]

近期,清华大学团队提出一种无需预训练的高效 NLP 学习框架,在仅使用了1% 的算力和1% 的训练语料的条件下,在众多 NLP 任务上实现了比肩甚至超越预训练模型的性能。这一研究结果对大规模预训练语言模型的必要性提出了质疑:我们真的需要大规模预训练来达到最好的效果吗?

  基于预训练语言模型(PLM)的方法在自然语言处理领域蓬勃发展,已经在多种标准自然语言任务上实现了最优(SOTA)性能。强大的性能使其成为解决 NLP 任务的标准方法之一。

  尽管如此,预训练严重依赖大量的计算资源的现状,导致只有极少数资源充足的机构或者组织有能力开展对于预训练的探索,多数研究者则转向所需资源较少的下游微调算法的研究。 然而,微调算法性能的上限也是很大程度受到预训练模型性能的约束。

  这种「昂贵而集权」的研究模式限制了平民研究者们为 NLP 社区做出贡献的边界,也极大制约了该领域的长期发展。

  清华大学的研究者们针对这一问题提出的一种全新的高效学习框架:「TLM(Task-driven Language Modeling)」。

  论文地址:https://arxiv.org/pdf/2111.04130.pdf

  项目地址:https://github.com/yaoxingcheng/TLM

  TLM 框架无需进行大规模预训练,仅需要相较于传统预训练模型(例如 RoBERTa)约 1% 的训练时间与 1% 的语料, 即可在众多任务上实现和预训练模型比肩甚至更好的性能。

  作者希望 TLM 的提出能够引发 NLP 研究者们对现有预训练-微调范式的重新审视,并促进 NLP 民主化的进程,加速 NLP 领域的进一步发展。

  语言模型也可以「临时抱佛脚」?

任务驱动的语言建模

  我们有这样的观察:人类可以以有限的时间和精力高效掌握某种技能,这整个过程并不需要掌握所有可能的知识和信息,而是只需要对核心的部分有针对性地学习。

  例如,考生考试前临时抱佛脚,仅需要突击学习重点内容即可应对考试。受到这一现象的启发,我们不禁发问:预训练语言模型可以「临时抱佛脚」吗?

  传统的预训练-微调方法与 TLM 框架之间的比较

  类似地,作者提出假设:预训练语言模型在特定任务上的性能,仅受益于大规模通用语料中仅与任务相关的部分,而不需要大规模的全量数据。

  该方法主要包含两个阶段:

为了从大规模通用语料中抽取关键数据,TLM 首先以任务数据作为查询,对通用语料库进行相似数据的召回;

TLM 基于任务数据和召回数据,从零开始进行基于任务目标和语言建模目标的联合训练。

基于任务数据的语料召回

  首先根据任务数据,从大规模通用语料中抽取相关数据。

  相比于大多数文本匹配算法倾向于采用稠密特征,本文作者另辟蹊径,采用了使用基于稀疏特征的 BM25 算法[2] 作为召回算法,它简单高效,并且不依赖于下游任务给出的监督信号。

  同时该算法完全不依赖预训练模型,从而可以公平地与传统的大规模预训练进行比较。

  自监督任务与下游任务的联合训练

  TLM 基于筛选后的通用预料数据和任务数据,进行了自监督任务与下游任务的联合训练。

  作者采用了传统的掩码语言模型(Masked Language Modeling)作为自监督训练任务。

  训练的损失函数

  实验结果:小资源比肩大规模预训练语言

主要结果

  作者在 8 个自然语言分类任务上,从三个不同的规模分别开展了对比实验。这些任务涵盖了生物医药、新闻、评论、计算机等领域,并且覆盖了情感分类、实体关系抽取、话题分类等任务类型。

  TLM 在三种不同训练规模下的评估结果

  和传统的预训练-微调范式相比,TLM 在多领域多任务类型的数据集上实现了大致相当甚至更优的结果。

  而更大的优势在于,TLM 实现该相当甚至更优的结果所使用的资源(包括计算量 FLOPs 和使用的训练数据量),相较于对应预训练-微调基准的资源使用量极大减少约两个数量级规模。

参数高效性分析

  为了探究 TLM 高效性更本质的来源,作者们对模型的每个注意力头所输出的注意力结果进行了可视化分析。

  已有研究[1]指出,呈现「对角线」模式的注意力结果(如红框所示)是对模型性能影响的关键因素,因为「对角线」模式把注意力关注于此前或者此后的符号(token)上,从而可以捕捉和建模相邻符号之间的关联性。

  注意力结果可视化分析

  从可视化结果可以观察到,TLM 中包含了更多「对角线」模式,即有更多的符号位置都将注意力分散赋予了其相邻的其他符号。

  对比之下,原始的大规模预训练模型(BERT-Base 和 RoBERTa-Base)「对角线」模式较少,而「垂直」模式更多(如灰色所示),这意味着更多符号位置将注意力关注到[CLS]、[SEP]或者标点符号这种不具备语法或者语义信息的符号上。

  可以看出,TLM 的参数高效性要显著优于预训练语言模型,任务驱动使得 TLM 针对下游任务学习到了更丰富的语法语义信息。

消融实验

  此外作者还分别在数据选取策略、数据召回数量、多任务学习目标权重等多个角度进行了消融实验探究,以此考察模型性能的稳定性和最优配置。

  数据选取策略消融实验结果

  在数据召回策略上,相比起同等数量的随机选取,基于稀疏特征的 BM25 算法最终结果有显著提升(约1-4 个点),证明其在召回和任务数据相似的通用数据上的有效性。

  最优数据召回量消融实验结果

  召回通用数据无监督训练目标权重(ρ1) 和任务数据无监督训练目标权重(ρ2) 消融实验结果

  对于最优数据召回量和多任务学习目标权重两因素的消融实验结果展示出一致的结论:即两因素的选择显示出和任务数据规模强相关性:

对于数据规模较大的任务(如 AGNews,RCT),它需要召回相对更少的相似通用数据,同时应赋予任务数据目标更大的比重;

对于数据规模较小的任务(如 ChemProt,SciERC),它需要召回相对更多的通用数据提供充足信息,同时赋予召回通用数据上的无监督训练目标更大的权重。

  TLM vs PLM:优势如何?

  总结来说,PLM 以极高的成本学习尽可能多的任务无关的知识,而 TLM 以非常低的成本针对每个任务学习相关知识。

  TLM 和 PLM 的对比

  具体来说,TLM 和 PLM 相比还具有如下特点:

1. 民主化

  TLM 的提出打破了 NLP 研究受限于大规模计算资源,以及只能由极少数机构和人员开展相关探索的现状。基于 TLM 框架,大多数 NLP 研究者都可以以较低代价以及较高效率,对目前最先进的解决方案做更进一步的自由探索和研究。

2. 灵活性

  相比 PLM,TLM 允许研究者以更加灵活的方式根据具体的任务自定义标记策略、数据表示、序列长度、超参数等等。这使得进一步提升性能和效率成为可能。

3. 高效性

  如实验结果所示,TLM 的每个任务上的 FLOPs 消耗显著少于 PLM。TLM 和 PLM 分别适用不同情况——当面临少数目标任务或者领域特定的稀有任务(例如,NLP 科研工作开展过程对少数数据集进行实验和研究;工业界面临极其特殊领域问题的解决),TLM 是非常高效的选择;当需要一次性解决大量相似且常见任务时(例如,公司需要构建统一平台为多方提供相似服务),PLM 的可重复利用使其仍然具备优势。

4. 通用性

  PLM 学习任务无关的一般性表示,即强调通用性,而 TLM 通过学习任务相关的表示一定程度牺牲通用性换取更高的效率。当然,也可以将 PLM 和 TLM 结合从而实现通用性和效率之间更好的权衡。

总结展望

  TLM 的提出给自然语言处理领域带来「新面貌」,它使得现有 NLP 的研究可以脱离代价高昂的预训练,也使得更多独立 NLP 研究者们可以在更广阔的空间进行自由探索成为可能。

  未来可以进一步开展更多基于 TLM 框架的研究,例如:如何进一步提升 TLM 的通用性和可迁移性;如何更加经济地达到更大规模预训练模型的表现效果等等。

  作者介绍

  论文一作为清华大学姚班大四本科生姚星丞,他也是今年大火的 EMNLP 接收论文 SimCSE 的共同一作。

  论文地址:https://arxiv.org/pdf/2104.08821.pdf

  论文的通讯作者为清华大学交叉信息院助理教授、Recurrent AI 联合创始人杨植麟,曾做出 Transformer-XL、XLNet、HotpotQA 等诸多 NLP 领域大受欢迎的工作。

  论文的另外两名作者郑亚男和杨小骢也来自清华大学,其中郑亚男是今年年初备受瞩目的P-tuning(GPT Understands, Too)的共同一作。

  论文地址:https://arxiv.org/pdf/2103.10385.pdf

 

 

责任编辑:张燕妮 来源: 新智元
相关推荐

2021-11-15 10:00:22

模型人工智能NLP

2020-11-18 10:29:07

模型人工智能开源

2023-11-27 13:51:00

模型训练

2024-10-15 09:29:36

2023-05-26 08:39:44

深度学习Alluxio

2017-11-06 10:15:36

机器学习框架Tensorflow

2021-07-22 15:25:14

开源技术 框架

2020-11-16 08:54:05

Google 开源技术

2023-03-05 15:51:54

AIGCChatGPT

2024-03-11 13:20:00

模型AI

2017-06-03 16:34:22

云服务数据中心公有云

2024-06-17 00:00:00

MiCo模态人脑

2017-09-11 15:19:05

CoCoA机器学习分布式

2021-09-09 09:29:03

AI 数据模型

2022-11-02 14:02:02

强化学习训练

2017-10-09 16:51:34

机器学习No Free Lun

2024-09-04 13:35:03

2021-01-13 15:16:45

谷歌架构开发者

2022-07-07 11:00:09

美团模型实践

2020-10-15 19:22:09

Menger机器学习强化学习
点赞
收藏

51CTO技术栈公众号