搜尋意圖: 如果你在找「遮罩語言模型預測(MLM) 是什麼」或「遮罩語言模型預測(MLM) 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。
TL;DR: 一種自監督預訓練任務,隨機遮蔽輸入序列中的部分 token,讓模型依據上下文預測被遮蔽的原始詞,是 BERT 系列模型的核心訓練目標。
實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。
下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。
一種自監督預訓練任務,隨機遮蔽輸入序列中的部分 token,讓模型依據上下文預測被遮蔽的原始詞,是 BERT 系列模型的核心訓練目標。
MLM 的背景與動機
在 MLM 提出之前,語言模型通常採用自迴歸(Autoregressive)方式:從左到右依序預測下一個詞(如 GPT-1)。這種訓練目標使模型只能利用左側單向上下文,對需要同時理解左右文脈的任務(如閱讀理解、填空)有先天局限。2018 年,Google 提出的 BERT(Bidirectional Encoder Representations from Transformers)引入 MLM 任務,使模型能夠利用被遮蔽 token 兩側的雙向上下文進行預測,大幅提升對語言的深層理解能力。
MLM 的訓練細節(以 BERT 為例)
遮蔽策略
BERT 的 MLM 策略是隨機選取約 15% 的 token,然後分三種處理方式:
- 80% 機率:替換為 [MASK] 特殊符號
- 10% 機率:替換為詞彙表中的隨機詞
- 10% 機率:保持原始詞不變(讓模型不能完全依賴 [MASK] 位置的特殊形式)
這種混合策略的設計目的是避免模型過度依賴 [MASK] 標記的位置信號,因為在 fine-tuning 和實際推論時,輸入中不會出現 [MASK] 符號(這個 pre-training 和 fine-tuning 的不一致性稱為「Pretrain-Finetune Discrepancy」)。
訓練目標
MLM 的損失函數是對所有被遮蔽位置的交叉熵損失的平均值: L_MLM = - (1/M) × Σ log P(xi | x̃) 其中 M 為被遮蔽的 token 數,xi 為原始 token,x̃ 為輸入的遮蔽序列。
第二個預訓練任務:NSP(Next Sentence Prediction)
BERT 除了 MLM 外,還加入了下一句預測(Next Sentence Prediction)任務,但後續研究(如 RoBERTa)發現去掉 NSP 反而提升了下游任務性能,顯示 MLM 本身已能提供足夠的語言理解基礎。
MLM 的優勢:雙向上下文理解
與自迴歸語言模型(如 GPT 系列)相比,MLM 的最大優勢在於真正的雙向(Bidirectional)上下文建模:模型可以同時看到被遮蔽位置的左側和右側 token,做出更準確的預測。這使得 BERT 在需要雙向語境理解的任務上(如問答、自然語言推論、文本分類)通常優於自迴歸模型。
MLM 的應用場景與下游任務
- 文本分類(Text Classification):在 BERT 的 [CLS] token 上加分類頭,進行情感分析、主題分類等
- 命名實體識別(NER):在每個 token 的輸出上加序列標記頭
- 問答系統(QA):如 SQuAD 任務,在 BERT 輸出上預測答案的起始和結束位置
- 自然語言推論(NLI):如 MNLI,判斷前提和假設的邏輯關係
- 語義相似度計算:利用 BERT 輸出的向量表示,計算句子間的語義距離
重要的 MLM 衍生模型
- RoBERTa(Robustly Optimized BERT Pretraining Approach):去除 NSP 任務,增加訓練資料量和訓練步數,動態遮蔽(每次 epoch 重新選擇遮蔽位置),在多個 benchmark 上超越原始 BERT
- ALBERT(A Lite BERT):透過參數共享和因子化詞嵌入矩陣大幅減少參數量,並以句子順序預測(SOP)取代 NSP
- DistilBERT:BERT 的蒸餾版,保留 97% 的性能,但大小減少 40%、速度提升 60%
- SpanBERT:將遮蔽從單 token 擴展到連續文字片段(span),更好地學習跨詞語的邊界關係
- XLM-RoBERTa:多語言版本的 RoBERTa,支援 100 種語言的跨語言理解
MLM 與自迴歸語言模型(如 GPT)的比較
| 面向 | MLM(BERT 等) | 自迴歸(GPT 等) |
|---|---|---|
| 上下文方向 | 雙向 | 單向(左→右) |
| 適合任務 | 理解類(分類、NER、QA) | 生成類(文字生成、對話) |
| 預訓練任務 | 遮蔽位置預測 | 下一個 token 預測 |
| 推論方式 | 一次輸入完整序列 | 自迴歸逐步生成 |
局限性與開放挑戰
- 每次只遮蔽 15% 的 token,訓練效率相對低(相較於自迴歸模型每個 token 都有訓練信號)
- Pretrain-Finetune Discrepancy:訓練時有 [MASK],fine-tuning 和推論時沒有,存在分佈不一致
- 不適合自迴歸生成任務(如文本摘要、機器翻譯的解碼部分),因為這些任務需要逐步生成而非一次預測遮蔽位置
常見問題
MLM 和 GPT 系列的訓練方式有什麼根本差異?
MLM(BERT 等)使用雙向注意力,訓練目標是預測被隨機遮蔽的詞(完形填空),能同時利用左右兩側的上下文;GPT 系列使用單向自迴歸方式,訓練目標是預測序列中的下一個詞,只能看到左側已生成的內容。因此 MLM 更適合需要理解整個句子語境的任務(分類、問答),而自迴歸模型更適合文字生成任務。現代大型語言模型(如 GPT-4、Claude)多採用自迴歸架構,因為生成能力更受重視。
為什麼 BERT 的遮蔽策略要混合三種處理方式,而不是全部替換為 [MASK]?
若所有遮蔽位置都替換為 [MASK],模型在 fine-tuning 和實際使用時不會見到 [MASK],造成預訓練與使用情境的分佈不一致(Pretrain-Finetune Discrepancy)。BERT 的解決方案是:80% 時間替換為 [MASK](主要訓練信號);10% 替換為隨機詞(迫使模型不能只依賴位置標記,而需要真正理解上下文);10% 保持原詞不變(讓模型學會不是每個 token 都需要被「修正」)。這三種方式的混合使模型的表示更適合各種下游任務情境。
MLM 訓練出的 BERT 可以直接用於文字生成嗎?
BERT 等 MLM 模型設計上並不適合自迴歸文字生成,因為其架構是雙向編碼器,一次看到完整輸入,而生成任務需要逐步產生詞彙(每次只能看到已生成的部分)。雖然技術上可以用 BERT 做填空生成,但效果遠不及 GPT 等自迴歸模型。若需要兼具理解和生成能力,可考慮 Encoder-Decoder 架構(如 T5、BART),或使用現代指令微調的大型語言模型(如 Claude、GPT-4)。