ELECTRA
ELECTRA
Efficiently Learning an Encoder that Classifies Token Replacements Accurately
Clark et al., Google Research & Stanford, 2020 — arXiv:2003.10555
前身:BERT / ALBERT — 解決 MLM 訓練效率低的問題
動機
MLM 的根本缺陷:每次只訓練 15% 的 token
輸入: The [MASK] sat on the [MASK]
↑ ↑
只有這兩個 token 有梯度
85% 的 token 在 pre-training 中沒有貢獻,計算資源浪費。
方法:Replaced Token Detection(RTD)
兩個模型協作訓練(GAN 概念,但不對抗):
Generator(小 MLM)
↓ 生成「看起來合理的替換詞」
原句 → [The cat sat on the mat] → [The dog sat on the floor]
↑ ↑
Discriminator(ELECTRA)
↓ 對每個 token 判斷:是原詞還是被替換?
real fake real real real fake
- Generator:小型 BERT(1/4 大小),負責產生 plausible 替換
- Discriminator:完整 ELECTRA,對所有 token 做二分類
- 訓練完成後丟棄 Generator,只保留 Discriminator 用於下游任務
效果(同等 FLOPs 下)
| 模型 | GLUE | 預訓練 FLOPs |
|---|---|---|
| BERT-base | 82.3 | 1x |
| ELECTRA-small | 79.9 | 0.25x |
| ELECTRA-base | 85.1 | 1x |
| ELECTRA-large | 89.4 | 4x |
ELECTRA-small 只用 BERT 1/4 的算力就接近 BERT-base
優點 / 缺點
| 說明 | |
|---|---|
| ✅ | 所有 token 都有訓練信號,資料效率大幅提升 |
| ✅ | 小模型也有驚人表現(ELECTRA-small) |
| ✅ | 下游 fine-tune 與 BERT 完全相同 |
| ❌ | 訓練架構更複雜(需要同時訓練兩個模型) |
| ❌ | Generator 品質影響 Discriminator 學習效果 |
下一個演進
→ DeBERTa:在 attention 機制上創新,分離 content 和 position 的表示