关于蒸馏的令人惊讶的疗效作为替代预训练小模型的研究
本文研究自然语言表示、模型压缩技术、预训练、微调和知识蒸馏等方面的互动关系,提出了一种简单而有效的预训练蒸馏算法,分析了模型大小和无标记任务数据属性对其的影响。
Aug, 2019
本文提出一种无需蒸馏信号即可训练自我监督小模型的方法,验证了小模型可以完成预文本任务且避免过拟合,但会普遍遭受过聚类问题,并提出了多种缓解过聚类的假设,通过验证技术的组合可在五种小型结构上达到基线性能的改进。
Jul, 2021
大型预训练视觉模型在多样的识别任务上表现出显著的泛化能力。然而,现实世界中的应用通常需要针对特定问题的紧凑模型。本文针对这一目的,提出了各种知识蒸馏的变体,使得特定任务的紧凑模型(学生)能够从通用的大型预训练模型(教师)中学习。我们展示了近期预训练模型出色的鲁棒性和多功能性挑战了文献中已经建立起来的共同实践,需要一组新的最优准则来进行特定任务的蒸馏。为了解决下游任务中样本不足的问题,我们还展示了一种基于稳定扩散的 Mixup 变体,该策略补充了标准数据增强,消除了工程化的文本提示的需求,改善了通用模型向精简专用网络的蒸馏。
Feb, 2024
本文介绍了一种针对大型语言模型的任务无关的零样本评估蒸馏方法,该方法使用截断版本的大模型作为初始化,并使用语言建模目标继续预训练该模型,已从根本上解决了对任务特定学习数据的依赖。本方法可以在无法将教师和学生都放入 GPU 内存的情况下将模型尺寸有效减少 50%,并在 13 个零样本端到端任务上达到了与基准蒸馏方法相当或超越的性能和准确性,计算效率提高了 1.5 倍。
May, 2023
通过 generation-distillation 训练方法,利用大型 fine-tuned 语言模型生成无标签训练数据,通过知识蒸馏技术将这些数据的知识转移给小型网络,从而缩小了预先训练 LM 和小型特定任务模型之间的性能差距,实现了使用更少的参数(仅为 BERT 的 300 倍)达到与 BERT 可比的性能。
Jan, 2020
通过知识蒸馏的预训练阶段,可以将 BERT 模型的大小缩小 40%,同时保持 97%的语言理解能力并且速度提升 60%,这种方法被称为 DistilBERT,并可为边缘设备上的计算提供良好的性能
Oct, 2019
本文介绍了一种相对简单易用的基于在线蒸馏的神经网络训练优化方法,该方法使得我们能够在使用大规模数据集时提升模型精度并提高训练速度,同时在成本较低的情况下显著提高模型的预测可复现性。
Apr, 2018
本文介绍一种名为 “Distilling step-by-step” 的新机制,该机制通过在多任务训练框架内提取 LLM rationales 作为小型模型的附加监督来训练比 LLM 更小且表现更好的模型,并且使用远少于 finetuning 或 distillation 所需的标注数据。作者研究表明,相对于 finetuning 和 distillation,本机制使用更少的标注 / 非标注训练样例实现更好的性能;并且相对于 LLMs,使用明显更小的模型尺寸实现更好的性能;作者使用了 only 80% of available data on a benchmark task,就可以使用 770M T5 模型胜过 540B PaLM。
May, 2023
本文中,我们探讨了数据集蒸馏的另一种形式,即基于固定模型的数据集蒸馏,通过使用少量的数据点近似原始数据的训练模型,此方法相对于其他方法具有优势,并在多个数据集上进行了实验证明
Nov, 2018
该研究论文针对知识蒸馏在自然语言处理中预训练模型所遇到的问题,探讨利用领域内未标记的数据、有限的已标记数据和基于简单 RNN 模型的硬蒸馏方法解决师生模型间性能差异的问题。实验结果表明,使用软蒸馏和利用教师模型的中间表示,学生模型的性能可以进一步提高,而在低资源环境下,学生模型在保证与教师模型性能基本持平的情况下,可实现最多 26 倍的压缩比,针对多语言环境的扩展实验结果更是惊人。
Oct, 2019