谁说学生模型就得小?稀疏化DAN模型推理可提速600倍

2022 年 6 月 3 日 PaperWeekly


©PaperWeekly 原创 ·  作者 | BNDSBilly
研究方向 | 自然语言处理



Abstract
有效提升模型推理速度的方式是对 SOTA 的 Transformer 模型进行压缩,然而当前的推理速度仍然有待提高。本文中,作者对 RoBERTa-Large 进行了模型蒸馏,得到了一个基于 DAN 架构的、具有十亿级参数、稀疏激活的学生模型。实验表明,该模型在六个文本分类任务上保持了教师模型 97% 的表现,同时在 CPU 和 GPU 上的推理速度都提升了将近 倍。进一步的调查表明,本文提出的 pipeline 在隐私保护和域泛化设置中也很有效。


论文标题:

Sparse Distillation: Speeding Up Text Classification by Using Bigger Models

收录会议:

NAACL 2022

论文链接:

https://arxiv.org/abs/2110.08536




Introduction
大型预训练 Transformer 模型进来在 NLP 领域取得了很大的成功,它们的大量推理成本推进了对模型压缩工作的研究。知识蒸馏(Knowledge Distillation)是当下比较主流的一种方式,主要思路是将教师模型(性能良好的大规模模型)的知识尽可能多的传递给学生模型(小模型)。例如 DistillBERT [1] 是 BERT 经过蒸馏得到的,大小是 BERT 的 ,推理速度则提高了

然而,对于有大容量或低延迟要求的推理任务,这种加速可能仍然不够。在本文中,作者考虑通过引入稀疏蒸馏提炼出浅层、稀疏激活和过参数化的学生模型,来进一步推动推理速度的提升。与一般的使用“更小、更快、更便宜”学生模型的习惯相悖,本文探索了设计空间的一个新领域:使用比教师模型还大几倍的学生模型。

本文使用的学生模型基于 DAN(Deep Averaging Network) 网络 [1],其采用简单的架构,将输入句子中的 n-gram 映射到 embedding 并进行平均池化聚合,然后再使用多个线性层进行分类。通过选择 n-gram 词汇表和 embedding 维度,DAN 可以扩展到数十亿个参数。同时,由于在训练和推理期间 DAN 被稀疏激活,因此成本可以保持在较低水平。DAN 的一个弱势在于无法像自注意力一样计算 long-range contexts,但是根据研究表明,在某些任务上 DAN 可以取得与自注意力相当的结果。

本文在六个文本分类任务上进行了实验,观察到生成的学生模型保留了 的 RoBERTa-Large 教师模型表现。同时,作者还进一步考虑了隐私保护设置(即在蒸馏期间无法访问特定于任务的数据)和域泛化设置(即学生模型被应用并适应新数据域),发现本文的方法给 pipeline 带来了持续的提高。




Methods
本文使用了模型蒸馏。其中教师模型选取的是在训练集上 fine-tune 好的  RoBERTa-Large 模型;学生模型基于深度平均网络 DAN,但作者对其进行了修改:不再将单词作为操作单元,而是使用 n-grams 进行代替。模型结果如下图所示,首先从输入的句子 中提取出所有的 n-grams,转化为 embeddings 后做均值化,再输入到两个全连接层中得到 logits,并通过 softmax 操作输出最终概率。该方法可以通过预处理 embeddings 来降低复杂度,但不能处理 n-gram 以外的信息。



在蒸馏时,作者同时在大规模未标注数据集 和下游任务训练集 上对齐教师模型和学生模型的输出(最小化输出概率的 KL 散度),得到的模型称为 DAN(KD),之后可以继续在   进行进一步的 fine-tune,得到的模型称为 DAN(KD+FT),最后这一步是可选择性的。
划分 n-gram 时,作者使用了 sklearn 库中的 CountVectorizer 方法来计算每个下游任务数据集上的词汇表,并选取最频繁的 个词汇。具体地,作者将 n-gram 范围设置为 ,并设置  




Experiments
实验选取了六个文本分类的数据集,并选取了相应的蒸馏过程使用的未标注数据集 。具体信息如下表所示:



作者分别选取了三类模型,作为本文模型的对比实验:(1)不加入模型蒸馏,直接训练学生模型;(2)使用不基于 DAN 的学生模型结构,例如 Bi-LSTM 或 CNN;(3)直接对已有的压缩模型进行 fine-tune,例如 DistilBERT [2] 和 MobileBERT [3]

最终得到的实验结果和分析如下:

如下表所示,在 个数据集上,教师模型和学生模型的表现均小于 ,这说明简单的 n-gram model 能力被低估了。并且模型蒸馏帮助弥补了至少一半的表现差距,尤其在 TREC 数据集上。这是一个 分类数据集,且训练集只有 个样本。然而,本文提出的方法有效地加强了监督,并有助于解决模型训练期间的稀疏性问题。



由于设计的 DAN 模型简单且稀疏,所以预期能取得较高的加速比。在本文中,所有推理速度测试均设置了 的 batch-size。GPU 推理使用一个 Quadro RTX 8000 GPU,CPU 推理使用 56 个 Intel Xeon CPU E5-2690 v4 CPU。如下表可以观察到,DAN 学生模型有很高的性能和推理效率,在 IMDB 数据集上加速比最为显著,达到了 倍的加速,作者推断这可能是因为 IMDB 数据集平均输入长度有 300 tokens,使用自注意力机制的 transformer 架构复杂度是输入长度的平方级别,而 DAN 架构复杂度仅为线性级别,所以加速效果显著。


根据下表所示,本文的 pipeline 难以对复杂语言现象进行建模,因为 DAN 架构只关注 n-gram,并且无法对单词之间的更高级别交互进行建模。





Conclusion

本文研究了一种使用知识蒸馏来生成更快的学生模型的新方法,颠覆了以往寻找更小学生模型的思路,而是允许学生模型有更大但稀疏的结构。帮助学生模型记住更多任务相关信息,同时降低计算复杂度。

本文的工作可能可以促使研究者们进一步探索稀疏架构,以实现更快、更大的学生模型:包括但不限于扩展超过 10 亿个参数的模型、扩展 DAN 架构以支持具有长期依赖关系的任务、在多语言任务上进行扩展等。

参考文献

[1] Mohit Iyyer, Varun Manjunatha, Jordan Boyd-Graber, and Hal Daumé III. Deep unordered composition rivals syntactic methods for text classification. In ACL, pp. 1681–1691, 2015

[2]Victor Sanh, Lysandre Debut, Julien Chaumond, and Thomas Wolf. Distilbert, a distilled version of BERT: smaller, faster, cheaper and lighter. arXiv preprint arXiv:1910.01108, 2019.

[3]Zhiqing Sun, Hongkun Yu, Xiaodan Song, Renjie Liu, Yiming Yang, and Denny Zhou. Mobilebert: a compact task-agnostic BERT for resource-limited devices. arXiv preprint arXiv:2004.02984, 2020.


更多阅读




#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编




🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



·

登录查看更多
0

相关内容

预训练语言模型fine-tuning近期进展概述
专知会员服务
39+阅读 · 2021年4月9日
Google-EfficientNet v2来了!更快,更小,更强!
专知会员服务
18+阅读 · 2021年4月4日
专知会员服务
16+阅读 · 2020年10月18日
【ACL2020-伯克利】预训练Transformer提高分布外鲁棒性
专知会员服务
19+阅读 · 2020年4月14日
专知会员服务
44+阅读 · 2020年3月6日
模型压缩究竟在做什么?我们真的需要模型压缩么?
专知会员服务
27+阅读 · 2020年1月16日
腾讯邱东洋:深度模型推理加速的术与道
专知
3+阅读 · 2022年4月23日
基于知识蒸馏的BERT模型压缩
大数据文摘
18+阅读 · 2019年10月14日
进一步改进GPT和BERT:使用Transformer的语言模型
机器之心
16+阅读 · 2019年5月1日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
2+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
18+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Arxiv
19+阅读 · 2021年4月8日
How to Fine-Tune BERT for Text Classification?
Arxiv
13+阅读 · 2019年5月14日
Arxiv
21+阅读 · 2019年3月25日
VIP会员
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
2+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
18+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Top
微信扫码咨询专知VIP会员