Skip to main content
QUICK REVIEW

[论文解读] Optimal Subarchitecture Extraction For BERT

Adrian de Wynter, Daniel J. Perry|arXiv (Cornell University)|Oct 20, 2020
Topic Modeling参考文献 53被引用 23
一句话总结

该论文提出 Bort,一种通过全多项式时间近似方案(FPTAS)从 BERT 中提取的最优子架构,联合优化模型大小、推理速度和准确率。Bort 的有效参数量仅为 BERT-large 的 5.5%,网络大小仅为其 16%,预训练仅需 288 个 GPU 小时(仅为 RoBERTa-large 的 1.2%),在多个 NLU 基准测试中准确率比 BERT-large 提高 0.3% 至 31%,且在 CPU 上的推理速度更快 7.9 倍。

ABSTRACT

We extract an optimal subset of architectural parameters for the BERT architecture from Devlin et al. (2018) by applying recent breakthroughs in algorithms for neural architecture search. This optimal subset, which we refer to as "Bort", is demonstrably smaller, having an effective (that is, not counting the embedding layer) size of $5.5\%$ the original BERT-large architecture, and $16\%$ of the net size. Bort is also able to be pretrained in $288$ GPU hours, which is $1.2\%$ of the time required to pretrain the highest-performing BERT parametric architectural variant, RoBERTa-large (Liu et al., 2019), and about $33\%$ of that of the world-record, in GPU hours, required to train BERT-large on the same hardware. It is also $7.9$x faster on a CPU, as well as being better performing than other compressed variants of the architecture, and some of the non-compressed variants: it obtains performance improvements of between $0.3\%$ and $31\%$, absolute, with respect to BERT-large, on multiple public natural language understanding (NLU) benchmarks.

研究动机与目标

  • 解决大型 BERT 模型在推理和预训练过程中效率低下且计算成本过高的问题。
  • 克服先前 BERT 压缩方法中架构选择的任意性和次优性。
  • 开发一种系统化、算法可保证的方法,以提取出最小但性能优异的 BERT 子架构。
  • 证明最优子架构可在准确率上超越完整大小的 BERT 变体,同时显著减小模型规模并加快训练速度。
  • 通过在标准 NLU 基准测试上的预训练与微调,验证基于 FPTAS 的方法的有效性。

提出的方法

  • 应用全多项式时间近似方案(FPTAS)搜索 BERT 架构超参数(深度、注意力头数、隐藏层/前馈层尺寸)的最优组合。
  • 证明 BERT 满足强 $AB^nC$ 性质,使 FPTAS 能在推理延迟、参数量和误差率方面提供理论保证的最优解。
  • 使用知识蒸馏技术,以预训练的 RoBERTa-large 作为教师模型,将提取出的子架构(Bort)微调至收敛。
  • 采用 Agora 算法(经验证可收敛)以确保 Bort 在下游任务上的微调过程稳定且高效。
  • 采用平衡采样策略,缓解微调过程中类别不平衡问题,尤其在 MultiRC 和 ReCoRD 等数据集上。
  • 通过随机移除一半段落的方式对大规模数据集(如 RACE)进行剪枝,以减少训练时间而不损失性能。

实验结果

研究问题

  • RQ1基于 FPTAS 的算法方法能否生成一个在模型大小、训练速度和准确率上均优于现有变体的 BERT 子架构?
  • RQ2通过 FPTAS 提取的最优子架构是否能在包括长上下文和推理密集型任务在内的多样化 NLU 基准上实现良好泛化?
  • RQ3所提取子架构的预训练效率在多大程度上依赖于教师模型的选择和蒸馏策略?
  • RQ4在标准基准测试中,FPTAS 提取的架构在准确率、延迟和参数量等多个指标上与压缩版及完整版 BERT 变体相比表现如何?
  • RQ5尽管模型更小且预训练速度更快,基于 FPTAS 的方法能否生成性能甚至超越 RoBERTa-large 的模型?

主要发现

  • Bort 的模型大小仅为 BERT-large 的 16%,有效参数量(不含嵌入层)仅为其 5.5%,展现出显著的参数效率。
  • Bort 仅需 288 个 GPU 小时完成预训练,仅为 RoBERTa-large 所需 24,576 个 GPU 小时的 1.2%,也仅为 BERT-large 所需 1,153 个 GPU 小时的 25%,显著降低了预训练成本。
  • 在 GLUE 基准测试中,Bort 相较于 BERT-large 实现了 0.3% 至 31% 的绝对准确率提升,尤其在长上下文和推理类任务中提升最大。
  • 在 RACE 数据集上,Bort 在 RACE-H(高中)和 RACE-M(初中)子集上分别以 85.9% 和 80.7% 的准确率超越 BERT-large 9–10%。
  • Bort 在 CPU 推理速度上比 BERT-large 快 7.9 倍,显著提升了实时部署的可行性。
  • 尽管仅使用线性分类器和标准微调策略,Bort 在多个基准测试中仍达到最先进性能,表明其具备强大的泛化能力与对超参数选择的鲁棒性。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

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