詳細解釋
因果遮罩(Causal Mask)是防止Transformer解碼器看到未來token的注意力遮罩,確保自回歸性質。
作用:
- 遮罩矩陣:上三角為-∞(或0)
- 注意力時:未來位置權重為0
- 效果:每個位置只能關注前面位置
數學表示:
- mask[i,j] = 0 if j ≤ i else -∞
- 或 softmax前乘以大負數
為何需要:
- 語言生成:依賴已生成內容
- 訓練時模擬推理:防止資訊洩露
- 保持因果性:未來不影響現在
在Transformer架構 (變換器 / 注意力模型) (Switch Transformer)中的應用:
- 解碼器自注意力:必須使用
- 編碼器:不使用(雙向)
- 雙向模型(BERT):不使用
與Prefix LM的區別:
- 純因果:全部自回歸
- Prefix LM:提示部分雙向,生成部分因果
可視化:
- 遮罩矩陣為下三角
- 注意力權重圖顯示左向關注
是實現自回歸解碼的關鍵機制。