小型BERT模型,通过MLM损失进行预训练

导读 Google最新推出24个精简的BERT模型供下载,为广大NLP研究者送上一份厚礼。

小型BERT模型,通过MLM损失进行预训练

BERT胜在模型大,也败在模型大!

BERT一出世就带着「狂破11项记录」的光环,用压倒性的参数量暴力突围。可以说,BERT的成功,成就成在模型大。但大,一方面成就了BERT,另一方面也成了它无法被更广泛应用的障碍,这体现在三个方面。

障碍一:占资源

小型BERT模型,通过MLM损失进行预训练

巨大的体积使得它必须占用巨大的存储资源,而维护大量存储资源的同时也在不断消耗大量的能源。

障碍二:太耗时

BERT作者Jacob曾提到「BERT-Large模型有24层、2014个隐藏单元,在33亿词量的数据集上需要训练40个Epoch,在8块P100上可能需要1年」。

障碍三:费用高

有人曾经计算过,三大主流模型的训练成本大概是:

BERT:1.2 万美元

GPT-2:4.3 万美元

XLNet:6.1 万美元

为了解决上述问题,人们不断推出精简版BERT

Size matters。其实上述3个问题,源头就在于Size,因此大家开始不断的研究精简版BERT。在资源有限的情况下,小体积的模型有着不言而喻的优势。

DistillBERT:Hugging Face团队在BERT的基础上用知识蒸馏技术训练出来的小型化BERT。模型大小减小了40%(66M),推断速度提升了60%,但性能只降低了约3%。

小型BERT模型,通过MLM损失进行预训练

ALBERT:通过改变模型架构,极大的降低了体积。最小的ALBERT只有12M,最大ALBERT-XXLarge有233M,而BERT-Base就有110M。不过虽然体积下去了,推理速度没有太明显的提升。

小型BERT模型,通过MLM损失进行预训练

TinyBERT:用知识蒸馏的方法来压缩模型。这个模型由华中科大和华为共同出品。

小型BERT模型,通过MLM损失进行预训练

Google亲自推出更小型BERT模型

就在昨天,Google更新了BERT的GitHub仓库,发布了24个较小的BERT模型,仅限英语词汇且不分大小写。

该24个模型使用WordPiece masking进行训练,直接通过MLM损失进行预训练,可以通过标准训练或最终任务提炼针对下游任务进行微调,在MLM蒸馏的更精细的预训练策略方面极具优势。

理论指导来自论文《Well-Read Students Learn Better: On the Importance of Pre-training Compact Models》。论文地址:https://arxiv.org/abs/1908.08962

小的BERT模型只需要按照原有BERT微调方式进行微调即可,只不过在由更大、更精准的teacher制作的知识蒸馏情况下最有效。

小型BERT模型,通过MLM损失进行预训练

需要注意的是,本发行版中的BERT-Base模型仅是出于完整性考虑,在和原始模型相同的条件下进行了重新训练。

GLUE分数:

小型BERT模型,通过MLM损失进行预训练

24个小型BERT下载地址:https://storage.googleapis.com/bert_models/2020_02_20/all_bert_models.zip

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/industrynews/131527.html

(0)
上一篇 2021年8月31日 13:00
下一篇 2021年8月31日 13:00

相关推荐

发表回复

登录后才能评论