LLM Transformer
1. 什麼是 Transformer?
-
一種完全基於「注意力機制」的神經網路架構
-
不用傳統的 RNN 或 CNN
-
主要用於處理序列資料(如語言翻譯、NLP 任務)
2. 核心創新
-
自注意力(Self-Attention):捕捉序列中各位置的關聯
-
多頭注意力(Multi-Head Attention):同時從不同子空間學習資訊
-
高度並行運算:訓練速度快,效率高
-
位置編碼(Positional Encoding):補足序列順序資訊
3. 架構組成
-
Encoder(編碼器):多層堆疊,每層包含多頭自注意力與前饋神經網路
-
Decoder(解碼器):多層堆疊,包含遮罩自注意力、編碼器-解碼器注意力、前饋神經網路
-
每層都有殘差連接與層正規化
4. 優點與缺點
| 優點 | 缺點 |
|---|---|
| 訓練效率高,可高度並行 | 記憶體消耗大,處理超長序列困難 |
| 能捕捉長距離依賴 | 缺乏內建序列歸納偏好 |
| 翻譯等任務表現超越傳統模型 | 需要大量訓練資料 |
| 架構簡單,易於擴展 | 推論時自回歸生成速度不一定快 |
5. 重要應用與影響
-
成為 BERT、GPT 等大型語言模型的基礎
-
推動 NLP 領域進入全新時代
6. 主要改進方法與優缺點
| 方法 | 代表模型 | 優點 | 缺點 |
|---|---|---|---|
| 稀疏注意力 | Longformer, BigBird | 降低記憶體與運算需求,能處理更長序列 | 注意力模式需設計,部分全局依賴可能捕捉不到 |
| 線性注意力 | Performer, Linformer | 複雜度降為 O(n),適合極長序列 | 近似計算可能損失資訊,部分任務效果不如原生 Transformer |
| 記憶增強 | Transformer-XL, Compressive Transformer | 捕捉更長期依賴,適合連續資料 | 架構複雜,訓練與記憶管理難度提升 |
| 相對位置編碼 | Transformer-XL, DeBERTa | 更靈活處理不同長度序列,提升泛化能力 | 增加設計與實作複雜度,效果依任務而異 |
| 混合架構 | Universal Transformer, Conformer | 結合 CNN/RNN 等結構,適合多模態任務 | 架構更複雜,訓練成本提升,需針對任務調整 |
7. Transformer 架構文字流程圖
輸入序列
│
[Positional Encoding]
│
┌───────────── Encoder ─────────────┐
│ ┌─────────────┐ │
│ │ Self-Attn │ │
│ └─────────────┘ │
│ │ │
│ ┌─────────────┐ │
│ │ FeedForward │ │
│ └─────────────┘ │
│ │ │
│ ... (共6層堆疊) ... │
└─────────────▲────────────────────┘
│
Encoder Output
│
▼
┌───────────── Decoder ─────────────┐
│ ┌─────────────┐ │
│ │ Masked │ │
│ │ Self-Attn │ │
│ └─────────────┘ │
│ │ │
│ ┌─────────────┐ │
│ │ Encoder- │ <─── Encoder Output
│ │ Decoder │
│ │ Attention │
│ └─────────────┘ │
│ │ │
│ ┌─────────────┐ │
│ │ FeedForward │ │
│ └─────────────┘ │
│ │ │
│ ... (共6層堆疊) ... │
└─────────────▲────────────────────┘
│
Decoder Output
│
[Softmax]
│
輸出序列
