恒源云(GPUSHARE)_超越预训练 NLP 的模型来喽

文章来源 | 恒源云社区

原文地址 | 从零训练一个超越预训练的 NLP 模型

原文作者 | Mathor


欢迎欢迎,热烈欢迎👏
社区大佬回归啦~
我又可以愉快的搬运文章了!

都让开,我要开始搬运啦。正文开始:

本文基于Arxiv上的一篇论文NLP From Scratch Without Large-Scale Pretraining: A Simple and Efficient Framework,清华的几位研究者提出一种任务驱动的语言模型TLM(Task-driven Language Modeling)。不需要大规模的预训练,从零训练一个大模型也能取得SOTA的效果,源码在yaoxingcheng/TLM

INTRODUCTION

作者首先指出,从零开始对RoBERTa-Large进行预训练,需要 4.36 × 1 0 21 4.36\times 10^{21} 4.36×1021 FLOPs (Floating Point Operations Per second),大约相当于1000张拥有32G显存的V100显卡运行一天,而训练GPT-3的要求是RoBERTa-Large的50倍。一般的组织根本不可能有这么大的算力,我们顶多是拿别预训练好的模型在自己的下游任务上微调,整个过程称为Pretraining-Finetuning

TLM: TASK-DRIVEN LANGUAGE MODELING

论文中,作者提出一种替代Pretraining-Finetuning这种传统范式的方法,目的是效率更高、算力要求更低的同时几乎不损失性能。具体来说,TLM主要基于两个关键的想法:首先,人类掌握一项任务只需要世界上的一小部分知识(例如学生即便是为考试做准备,也只需要查看世界上所有书籍中某一本里的几个章节);其次,在有监督的标记数据上进行训练,比在无标记数据上优化语言模型更有效

基于上述动机,TLM使用任务数据作为Query,检索一般语料库中的一个小子集。随后,用检索到的数据和任务数据共同优化监督任务和语言建模任务(MLM)

形式化地描述,给定一个通用的语料库 D = d i i \mathcal{D}={d_i}_i D=dii,其中 d i d_i di是一篇文档;给定一系列有监督数据 T = ( x i , y i i \mathcal{T}={(x_i, y_i}_i T=(xi,yii,其中 x i x_i xi是一条文本数据, y i ∈ Y y_i\in \mathcal{Y} yiY是标签。我们的目标是训练一个模型 f f f去估计分类的条件概率 f ( x ) = p ^ ( y ∣ x ) f(x)=\hat{p}(y\mid x) f(x)=p^(yx)

作者提到,他们的方法是很容易扩展到所有NLP任务的,但是这里仅专注于分类任务

TLM主要由两个重要步骤组成:

  1. 将有监督数据(task data)作为查询,将通用语料库中的数据检索出来
  2. 对task data进行监督任务,对通用语料库中检索出来的数据进行语言建模任务。将这两个任务联合起来共同作为优化目标,从而达到从零训练一个模型的目的
Retrieve From General Corpus

这部分主要讲述究竟如何从通用语料库中检索(Retrieve)出数据。对于task data中的每个样本 x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值