Skip to main content
QUICK REVIEW

[论文解读] A Short Study on Compressing Decoder-Based Language Models

Tianda Li, Yassir El Mesbahi|arXiv (Cornell University)|Oct 16, 2021
Topic Modeling参考文献 30被引用 4
一句话总结

本文提出了一种时间高效的压缩解码器架构语言模型的方法,通过使用层剪枝和数据清洗从零开始预训练蒸馏后的 GPT-2 模型,尽管训练时间显著减少,但在下游任务上的表现仍优于 DistilGPT-2。该方法引入了一种伪均匀剪枝策略,并证明了数据清洗能同时提升效率与性能。

ABSTRACT

Pre-trained Language Models (PLMs) have been successful for a wide range of natural language processing (NLP) tasks. The state-of-the-art of PLMs, however, are extremely large to be used on edge devices. As a result, the topic of model compression has attracted increasing attention in the NLP community. Most of the existing works focus on compressing encoder-based models (tiny-BERT, distilBERT, distilRoBERTa, etc), however, to the best of our knowledge, the compression of decoder-based models (such as GPT-2) has not been investigated much. Our paper aims to fill this gap. Specifically, we explore two directions: 1) we employ current state-of-the-art knowledge distillation techniques to improve fine-tuning of DistilGPT-2. 2) we pre-train a compressed GPT-2 model using layer truncation and compare it against the distillation-based method (DistilGPT2). The training time of our compressed model is significantly less than DistilGPT-2, but it can achieve better performance when fine-tuned on downstream tasks. We also demonstrate the impact of data cleaning on model performance.

研究动机与目标

  • 为解决对解码器架构模型(如 GPT-2)压缩的研究不足问题,这类模型相较于编码器架构模型(如 BERT)研究较少。
  • 利用最先进的知识蒸馏和无教师技术,提升 DistilGPT-2 的微调性能。
  • 探索从更大教师模型中初始化更小 GPT-2 模型的层剪枝方法,目标是实现更快的预训练速度。
  • 评估数据清洗对预训练效率和下游性能的影响。
  • 证明:未经知识蒸馏预训练的压缩 GPT-2 模型在下游任务上的表现可优于 DistilGPT-2。

提出的方法

  • 使用来自 12 层 GPT-2-xl 教师模型的伪均匀层剪枝策略,预训练一个 6 层的 GPT-2 学生模型。
  • 通过移除 HTML、短句、非字母数字字符噪声和重复样本,对 OpenWebText 数据集进行数据清洗,使数据集规模减少 65.5%。
  • 采用一种伪均匀初始化策略,将教师模型的参数在各层间均匀分配至学生模型。
  • 在微调阶段基准测试多种知识蒸馏技术,包括 Annealing-KD、MATE-KD 和 RAIL-KD。
  • 使用零样本和微调后的困惑度与准确率分数,在 Wikitext103 和 SuperGLUE 基准上评估性能。
  • 比较使用和不使用知识蒸馏预训练的模型在训练时间与性能上的差异。

实验结果

研究问题

  • RQ1知识蒸馏技术能否提升 DistilGPT-2 在下游 NLP 任务上的微调性能?
  • RQ2使用层剪枝从零开始预训练压缩后的 GPT-2 模型,是否在下游性能和训练效率方面优于 DistilGPT-2?
  • RQ3对 OpenWebText 数据集进行数据清洗,如何影响预训练时间和最终模型性能?
  • RQ4哪种层剪枝策略在从大教师模型初始化更小 GPT-2 模型时表现最佳?
  • RQ5未经知识蒸馏预训练的蒸馏 GPT-2 模型能否实现优于 DistilGPT-2 的性能?

主要发现

  • 使用伪均匀剪枝和清洗后数据预训练的模型,在微调后于 Wikitext103 上达到 22.42 的测试困惑度,虽在零样本设置下低于 DistilGPT-2 的 21.13,但训练时间显著更短。
  • 在清洗后的 OpenWebText 数据集上预训练的模型将训练时间缩短至 42 小时(相比 DistilGPT-2 的 768 小时),同时在 7 项下游任务中的 5 项达到相当或更优的性能。
  • 伪均匀剪枝策略优于其他初始化方法,在 Wikitext103 上实现 45.93 的零样本困惑度,接近 DistilGPT-2 的 45.26。
  • 数据清洗使 OpenWebText 数据集规模从 3.32 亿样本减少至 1.14 亿样本,预训练时间减少 94%,同时保持或提升了模型性能。
  • 在清洗后数据集的 10% 上预训练的模型,微调后困惑度达到 22.42,与 DistilGPT-2 的 21.13 相当,尽管其参数量仅为教师模型的 1/3。
  • 在 SuperGLUE 基准上,清洗数据预训练的模型在 7 项任务中的 5 项达到最先进性能,包括 BoolQ 上 77.64% 的准确率和 WSC 上 73.74% 的准确率,多数情况下优于 DistilGPT-2。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。