独家 | 基于知识蒸馏的BERT模型压缩

本文介绍了如何使用知识蒸馏对BERT模型进行压缩,详细探讨了相关研究,包括'耐心的知识蒸馏',并提及了在微软进行的相关工作。提到的重要论文包括Hinton等人关于知识蒸馏的工作,以及BERT、XLNet和RoBERTa等预训练模型的研究。
摘要由CSDN通过智能技术生成

640?wx_fmt=png

作者:孙思琦、成宇、甘哲、刘晶晶

本文约 1800字 ,建议阅读 5分钟

本文为你介绍“耐心的知识蒸馏”模型。

数据派THU后台回复“191010”,获取论文地址。

在过去一年里,语言模型的研究有了许多突破性的进展, 比如GPT用来生成的句子足够以假乱真[1];BERT, XLNet, RoBERTa [2,3,4]等等作为特征提取器更是横扫各大NLP榜单。但是,这些模型的参数量也相当惊人,比如BERT-base有一亿零九百万参数,BERT-large的参数量则高达三亿三千万,从而导致模型的运行速度过慢。为了提高模型的运行时间,本文率先提出了一种新的知识蒸馏 (Knowledge Distillation) [5] 方法来对模型进行压缩,从而在不损失太多精度的情况下,节省运行时间和内存。文章发表在EMNLP 2019。

具体来说,对于句子分类类型的任务,当普通的知识蒸馏模型用来对模型进行压缩的时候, 通常都会损失很多精度。原因是学生模型 (student model) 在学习的时候只是学到了教师模型 (teacher model) 最终预测的概率分布,而完全忽略了中间隐藏层的表示。

<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BERT(Bidirectional Encoder Representations from Transformers)是一种基于Transformer架构的预训练语言模型,由Google在2018年提出[^1]。BERT的主要创新之处在于引入了双向上下文信息,通过同时考虑左右两个方向的上下文,使得模型能够更好地理解语言的语境和含义。 BERT模型的训练过程包括两个阶段:预训练和微调。在预训练阶段,BERT模型使用大规模的无标签文本数据进行训练,通过预测遮蔽词(Masked Language Model,MLM)和下一句预测(Next Sentence Prediction,NSP)任务来学习语言的表示。具体来说,BERT模型通过随机遮蔽输入文本中的一些词,并预测这些被遮蔽的词是什么,从而学习词的上下文表示。同时,BERT模型还通过判断两个句子是否是连续的来学习句子级别的表示。 在微调阶段,BERT模型使用有标签的任务特定数据进行微调,例如文本分类、命名实体识别等。通过在特定任务上进行微调,BERT模型可以将预训练得到的通用语言表示适应到具体任务上,从而提升模型在各种自然语言处理任务上的性能。 DistilBERT是一种基于BERT模型知识蒸馏方法,旨在通过压缩和提炼BERT模型的知识,来获得一个更轻量级、更高效的模型。DistilBERT通过在预训练阶段使用与BERT相同的训练目标,但使用更小的模型结构和更短的训练时间来训练模型。然后,通过将BERT模型的知识转移到DistilBERT模型中,可以在保持相对较高性能的同时,减少模型的大小和计算资源的消耗。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值