赞
踩
在NLP任务中,一个好的预训练模型能够提升模型的效果。当前一个SOTA的模型,它有几百万或者十亿以上的参数,如果要扩大模型规模,就会遇到这些计算机内存上的限制,同时训练速度会受到限制。目前存在的解决方法有两种:模型并行化、好的内存管理机制。但这两种方法都会存在通信开销。因此本论文设计了一个A lite BERT(ALBERT),它比BERT使用更少的参数。
预训练自然语言表征时,增加模型大小一般是可以提升模型在下游任务中的性能。但是这种纯粹依赖模型尺寸进而期望大力出奇迹的想法在未来会越发困难。进一步增加模型大小将带来以下困难:
所以,为了解决上述这些问题,本文提出通过两种参数精简技术
来降低内存消耗,并加快BERT的训练速度。此外,本文还引入一个自监督损失(self-supervised loss),用于对句子连贯性(inter-sentence coherence)
建模,并证明该损失函数能够提升多句子作为输入的下游任务的性能。本文所提出的模型ALBERT在 GLUE、RACE 和 SQuAD 这3个基准上都取得了新的SOTA结果,且参数量还少于 BERT-large。
过往的研究者们在诸多NLP任务上的实验已经表明,模型规模在取得SOTA结果上至关重要。在应用场景中通常是预训练一个大规模的模型,再对其进行蒸馏萃取出一个更小的模型。考虑模型大小的重要性,我们不禁要问:“拥有更好的NLP模型是否能够和拥有更大的模型一样容易?”
上述问题首要解决的便是
T
a
b
l
e
1
:
增
加
B
E
R
T
−
l
a
r
g
e
的
隐
藏
层
单
元
数
量
,
模
型
在
R
A
C
E
上
的
表
现
变
差
。
Table 1:增加 BERT-large 的隐藏层单元数量,模型在 RACE 上的表现变差。
Table1:增加BERT−large的隐藏层单元数量,模型在RACE上的表现变差。
F
i
g
1
:
B
E
R
T
−
l
a
r
g
e
和
B
E
R
T
−
x
l
a
r
g
e
的
训
练
损
失
(
左
)
和
d
e
v
m
a
s
k
的
L
M
准
确
率
(
右
)
。
模
型
增
大
之
后
,
其
m
a
s
k
L
M
准
确
率
降
低
了
,
同
时
没
有
出
现
明
显
的
过
拟
合
迹
象
。
Fig 1:BERT-large 和 BERT-xlarge 的训练损失(左)和 dev mask 的 LM 准确率(右)。模型增大之后,其mask LM准确率降低了, 同时没有出现明显的过拟合迹象。
Fig1:BERT−large和BERT−xlarge的训练损失(左)和devmask的LM准确率(右)。模型增大之后,其maskLM准确率降低了,同时没有出现明显的过拟合迹象。
为解决上述问题,已有先贤们做了一些研究,比如模型并行化、智能内存管理等。这些解决方案只解决了内存受限问题,而没有考虑模型通信开销过大和模型退化问题。为此,本文提出A Lite BERT(ALBERT)模型以解决上述三个问题。 该模型的参数量远远少于传统的 BERT 架构。
ALBERT 引入2种参数精简技术,克服了扩展预训练模型面临的主要障碍。
factorized embedding parameterization(词嵌入的因式分解)
:对嵌入参数进行因式分解,将一个大的词汇嵌入矩阵分解为两个小矩阵,从而将隐藏层的大小与词汇嵌入的大小分离开来。这种分离便于后续隐藏层单元数量的增加,怎么说呢?就是增加隐藏层单元数量,并不显著增加词汇嵌入的参数量。cross-layer parameter sharing(交叉层的参数共享)
:这一技术可以避免参数量随着网络深度的增加而增加。这两种技术都显著降低了 BERT 的参数量,同时不显著损害其性能, 从而提升了参数效率。ALBERT 的配置类似于 BERT-large,但参数量仅为后者的 1/18,训练速度却是后者的 1.7 倍。 这些参数精简技术还可以充当某种形式的正则化,可以使训练更加稳定,且有利于泛化。
为了进一步提升 ALBERT 的性能, 本文还引入了一个自监督损失函数,用于句子顺序预测(SOP,sentence-order prediction)
。SOP 主要聚焦于句间连贯,用于解决原版 BERT中下一句预测(NSP)损失的低效问题。因为确实已有研究(Yang et al., 2019; Liu et al., 2019)表明NSP是可以去掉的。
基于上述的这3个设计,ALBERT 能够扩展为更大的版本,在参数量仍然小于 BERT-large的同时,性能可以显著提升。本文在GLUE、SQuAD 和 RACE 这3个自然语言理解基准测试上都刷新了记录:在 RACE 上的准确率为 89.4%,在 GLUE 上的得分为 89.4,在 SQuAD 2.0 上的 F1 得分为 92.2。
本文提出两种模型参数缩减的方法,具体如下:
我们知道原始的Bert预训练的loss由两个任务组成,maskLM和NSP(Next Sentence Prediction),maskLM通过预测mask掉的词语来实现真正的双向transformer,NSP类似于语义匹配的任务,预测句子A和句子B是否匹配,是一个二分类的任务,其中正样本从原始语料获得,负样本随机负采样。NSP任务可以提高下游任务的性能,比如句子对的关系预测。但是也有论文指出NSP任务其实可以去掉,反而可以提高性能,比如RoBert。
本文以为NSP任务相对于MLM任务太简单了,学习到的东西也有限,因此本文提出了一个新的loss,sentence-order prediction(SOP),SOP关注于句子间的连贯性,而非句子间的匹配性。SOP正样本也是从原始语料中获得,负样本是原始语料的句子A和句子B交换顺序。举个例子说明NSP和SOP的区别,原始语料句子 A和B, NSP任务正样本是 AB,负样本是AC;SOP任务正样本是AB,负样本是BA。可以看出SOP任务更加难,学习到的东西更多了(句子内部排序)。
Bert为了加速训练,前90%的steps使用了128个tokens的短句,最后10%才使用了512个词的长句来训练学习位置嵌入;而ALBert只有10%的情况下采用了短于512个tokens的句子进行训练。在RoBerta中指出,长句子训练更有利于模型的下游任务,所以这里在训练时的设置还是有些区别和影响的。
本文使用n-gram掩码,用于生成MLM目标的掩码输入,n-gram的mask的长度随机选取,最大设置为3,长度取值概率为:
注意这里,使用n-gram掩码训练模型,类似于之前介绍到的工作,对于最终的模型结果也是有一定影响的。
T
a
b
l
e
2
Table \space 2
Table 2
T
a
b
l
e
3
Table \space 3
Table 3
Table 4 展示了在ALBERT-base(具体设置参见上述Table 2)上修改词嵌入大小 E 带来的影响,它们的参数量及下游任务效果也都展示在内。
T
a
b
l
e
4
Table \space 4
Table 4
基于上述这些结果,本文在后续的实验中的嵌入大小统一选用 E = 128 。
Table 5 展示了不同跨层参数共享的效果,同样使用 ALBERT-base 作为示例模型,此外还增加了嵌入大小为768的结果。对比了所有all-shared策略(ALBERT-style)、not-shared 策略(BERT-style)及其介于二者之间的中间策略(仅注意力参数共享,FNN不共享;仅FNN参数共享,注意力参数不共享)。
T
a
b
l
e
5
Table \space 5
Table 5
all-shared型策略在E=768和E=128上都会一定程度上降低性能
。但是,需要说明的是,下降幅度较小,对于E=128,平均下降1.5;对于E=768,平均下降2.5。共享FFN层的参数,应该是罪魁祸首
;而注意力机制的参数共享带来的影响不能一概而论
,对于E=128反而在平均性能上提升了0.1,对于E=768平均性能下降0.7。Table 6 展示了SOP与下一句预测损失(NSP)的对比效果。
T
a
b
l
e
6
Table \space 6
Table 6
本文这里对比了3种策略:没有句子间损失(比如XLNet和RoBERTa)、NSP(比如BERT),SOP(ALBERT)。这里采用的ALBERT也是ALBERT-base。对比过程,一方面对比自身任务中的准确率,另一方面是下游任务的性能表现。
从Table 3中的提速结果看出BERT-large的数据吞吐量大概是ALBERT-xxlarge的3.17倍。一般而言,训练越长性能越高,鉴于此,我们进一步对比相同训练时长下不同模型的表现。
在训练了差不多相同的时间之后,ALBERT-xxlarge 明显优于 BERT-large。
上述实验都是在 Wikipedia 和 BOOKCORPUS 数据集上进行的,那么,如果增加额外的数据会对结果产生怎样的影响?这里采用的额外数据与XLNet和RoBERTa中的相同。
Figure 3a 表明,添加额外数据后,模型的开发集 MLM 准确率显著提升。
Figure 3b 表明,即使在训练了 100 万步之后,最大的模型仍然没有过拟合。因此,尝试删除dropout,以进一步提高模型能力。去掉 dropout 可以显著提高 MLM 准确度。
添加额外数据后模型在下游任务中的性能情况,如Table 8 所示:
除了上述实验之外,ALBERT 在 GLUE、SQuAD 和 RACE 基准测试中都取得了 SOTA 结果,如Figure 10、11 所示:
本文的贡献主要在3个方面:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。