主页 > 法律在线 >

ACL 2020 MobileBERT:一种与任务无关的模型压缩方

发布日期:2020-07-25 02:43   来源:未知   阅读:

原标题:ACL 2020 | MobileBERT:一种与任务无关的模型压缩方法

?PaperWeekly 原创 ? 作者|蔡杰

学校|北京大学硕士生

研究方向|问答系统

论文标题:MobileBERT: a Compact Task-Agnostic BERT for Resource-Limited Devices

论文来源:ACL 2020

论文链接:https://arxiv.org/abs/2004.02984

引言

目前很多预训练模型的压缩方法都是和下游任务相关的,一般做法都是把 pre-train 的模型在下游任务上 fine-tune 之后,进行缩小操作(蒸馏,裁剪等等)。据作者说目前还没有与任务无关的轻量级预训练模型,他们要填补这个领域的空白。实验结果上看,这个空白填补的还是很成功的。

Insights

要做一个预训练的小模型,用蒸馏?蒸馏完的模型要么浅,要么窄,但是这两种模型都有自己的缺点,浅的表示能力不足,窄的不好训练(毕竟还是要考虑后续 fine-tune 的)。

MobileBERT 采用的和 BERT-large 一样深的层数,在每一层中的 transformer 中加入了 bottleneck 机制使得每一层 transformer 变得更窄,但是并没有丢失其与 self-attention 和 Feed-Forward 之间的平衡。

作者先训练了一个带有 bottleneck 机制的 BERT-large(IB-BERT),然后把 IB-BERT 中的知识迁移到 Mobile-BERT 中,在这个迁移的策略中,作者做了很多尝试。最后 Mobile-BERT 比 BERT-base 小 4.3 倍,快 5.5 倍,而且在 GLUE 上的效果没怎么降,还是很牛的。

可以看到 Table1 中,MobileBERT 就是作者之前说的那种窄的模型,会很难训练。所以作者采用的方法就是先训练一个 IB-BERT-large,然后把 IB-BERT-large 学到的知识迁移到 MobileBERT 中去。