12.2 RoBERTa、ALBERT 与 ELECTRA:BERT 的改进之路

BERT 的成功激发了大量改进工作,形成了丰富的编码器模型家族。每个改进版本都针对 BERT 的特定不足提出了解决方案。

12.2.1 RoBERTa:充分训练的力量

RoBERTa(Robustly Optimized BERT Approach,Liu 等人,2019 年)没有改变 BERT 的架构,而是通过更充分的训练取得了显著的性能提升:

  • 去除 NSP 任务(实验证明其贡献为零甚至负面)

  • 使用更大的批次(8K 样本 → 更稳定的梯度估计)

  • 使用更多的训练数据(16 GB → 160 GB)

  • 动态调整 MLM 掩码位置(每个 epoch 重新随机选择遮盖位置)

  • 训练更长时间

RoBERTa 的成功传达了一个重要信息:BERT 的架构设计本身是合理的,性能提升的关键在于训练是否充分。 这一发现也影响了后续大模型的训练策略。

12.2.2 ALBERT:参数效率的突破

ALBERT(A Lite BERT,Lan 等人,2019 年)通过两种创新大幅减小模型体积:

跨层参数共享:所有 Transformer 层使用同一组参数。直觉上,Transformer 的每一层执行的是类似的“注意力 → 变换”操作,参数共享是一种强正则化,迫使模型学习更通用的变换。ALBERT-xxlarge 用 12 层共享参数达到了 BERT-large(24 层独立参数)的性能水平。

嵌入矩阵分解:将大的嵌入矩阵 $V \times H$ 分解为两个小矩阵 $V \times E$ 和 $E \times H$ 的乘积($E \ll H$),大幅减少嵌入层的参数量。

12.2.3 ELECTRA:训练效率的最优化

ELECTRA(Clark 等人,2020 年)从根本上改变了预训练任务的设计。它使用一个小型生成器(类似于小型 MLM 模型)替换部分词元,然后训练一个大型判别器(目标模型)判断序列中每个位置的词元是否被替换过。

关键优势:判别器在所有位置上都计算损失($n$ 个位置),而 BERT 的 MLM 只在 15% 的遮盖位置上计算损失($0.15n$ 个位置)。这使得 ELECTRA 在同等计算预算下学到更多语言知识,训练效率提升约 4 倍。

ELECTRA 用仅 1/4 的 BERT 训练计算量就达到了同等性能,展示了预训练任务设计对效率的巨大影响。

最后更新于