
摘要
过参数化的Transformer网络在自然语言处理的多项任务中取得了当前最优的性能,包括机器翻译、语言建模和问答系统等。这类模型通常包含数亿个参数,需要大量的计算资源,且容易出现过拟合问题。在本研究中,我们探索了一种结构化丢弃方法——LayerDrop,该方法在训练过程中具有正则化效果,并可在推理阶段实现高效的网络剪枝。特别地,我们证明了可以从一个大型网络中直接选取任意深度的子网络,而无需进行微调,且对模型性能的影响极小。通过在机器翻译、语言建模、文本摘要、问答系统以及语言理解等基准任务上的实验,我们验证了该方法的有效性,显著提升了现有技术水平。此外,我们还发现,与从头训练或使用知识蒸馏的方法相比,本方法能够生成质量更高的小型BERT类模型。
代码仓库
prajjwal1/adaptive_transformer
pytorch
GitHub 中提及
pytorch/fairseq
pytorch
thunlp-mt/promptgating4mctg
pytorch
GitHub 中提及
prajjwal1/fluence
pytorch
GitHub 中提及
c00k1ez/plain-transformers
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| open-domain-question-answering-on-eli5 | Transformer Multitask + LayerDrop | Rouge-1: 29.4 Rouge-2: 5.5 Rouge-L: 23.4 |