ALBERT

A Lite BERT for Self-supervised Learning of Language Representations
Lan et al., Google Research, 2019 — arXiv:1909.11942

前身:BERT → 問題:RoBERTa 驗證資料量有效,但模型本身太大


動機

BERT-large 有 340M 參數,在記憶體和訓練速度上有瓶頸:

目標:大幅減少參數量,同時維持甚至提升性能


方法(兩個核心技術)

1. Factorized Embedding Parameterization(分解嵌入)

BERT:詞彙表 embedding 直接對應 hidden size(V × H

ALBERT:先映射到小維度再投影(V × E + E × H),E << H

BERT-large:  30000 × 1024 = 30.7M 參數
ALBERT-xxl:  30000 × 128 + 128 × 4096 = 4.3M 參數

2. Cross-layer Parameter Sharing(跨層共享)

所有 Transformer 層共用同一組參數(attention + FFN)
→ 12 層實際上只有 1 層的參數量

3. SOP 取代 NSP

Sentence Order Prediction:正向 vs 反向句子對(更難,更有意義)


規格對比

BERT-base ALBERT-base ALBERT-xxlarge
Parameters 110M 12M 235M
Hidden 768 768 4096
Layers 12 12 12

優點 / 缺點

說明
參數量大幅下降(base 從 110M → 12M)
訓練記憶體需求低
SOP 比 NSP 更有效
推論速度沒有加快(層數不變,只是共享參數)
共享參數限制了每層學到不同表示的能力

下一個演進

ELECTRA:不改架構,改預訓練任務,讓每個 token 都有訓練信號


References

Powered by Forestry.md