Home
探索 Uedu
學生控制台
註冊會員/登入
研究知情同意中心
教師控制台
課程設定
支援與訊息
Uptime 數據

UeduGPTs

--

Jupyters

2

UG26 CISOSE26
臺北 AQI 48 · 臺中 AQI 34 · 臺南 AQI 31 · 高雄 AQI 29

AI 回覆桌面通知

AI 助教回覆完成時顯示桌面通知

聊天訊息通知

同學在討論區發送訊息時通知

聲音通知

每當有新通知時播放提示音

深度學習
深度學習

Transformer 與注意力機制:當代 AI 的轉捩點

一篇 2017 年的論文,如何開啟了 ChatGPT 的時代。

Transformer 與注意力機制:當代 AI 的轉捩點 概念插圖
概念示意插圖(AI 生成,僅作輔助理解)
研究  ·  約 15 分鐘  ·  深度學習Transformer注意力研究

從直覺到機制

2017 年〈Attention Is All You Need〉提出 Transformer:完全捨棄循環與卷積,僅以注意力建構序列模型。直覺上,處理「牠很可愛」的「牠」時,模型需動態決定該關注前文哪個名詞——注意力把這件事變成可微分、可平行的運算。

縮放點積注意力

每個位置的表徵被線性投影成三個角色:查詢 $Q$、鍵 $K$、值 $V$。注意力以查詢與所有鍵的相似度為權重,對值加權平均:

$$ \mathrm{Attention}(Q,K,V)=\mathrm{softmax}\!\left(\frac{QK^\top}{\sqrt{d_k}}\right)V $$

  • $QK^\top$ 給出每對位置的相容性分數;
  • 除以 $\sqrt{d_k}$ 是縮放:避免高維內積過大把 softmax 推入梯度極小的飽和區;
  • softmax 沿鍵的維度正規化成注意力權重,再對 $V$ 加權。

自注意力(self-attention) 即 $Q,K,V$ 同源於一條序列,使任兩位置可直接互動。

多頭注意力:多個子空間並行關注

單一注意力只能表達一種關係。多頭注意力把 $Q,K,V$ 投影到 $h$ 個子空間各自做注意力,再拼接:

$$ \mathrm{MultiHead}=\mathrm{Concat}(\mathrm{head}_1,\dots,\mathrm{head}_h)\,W^O $$

不同頭可分別捕捉語法依存、指代、位置鄰近等不同關係,提升表達力。

位置編碼:把順序找回來

注意力本身對排列不變(打亂順序結果不變),故需顯式注入位置資訊。原論文用正弦位置編碼

$$ PE_{(pos,2i)}=\sin\!\big(pos/10000^{2i/d}\big) $$

加到輸入嵌入;後續的旋轉位置編碼(RoPE)等則改善了長度外推。

完整區塊與訓練穩定性

一個 Transformer 區塊 = 多頭自注意力 + 前饋網路(FFN),各自外包殘差連接層正規化

$$ h'=\mathrm{LayerNorm}\big(x+\mathrm{MHA}(x)\big),\qquad y=\mathrm{LayerNorm}\big(h'+\mathrm{FFN}(h')\big) $$

殘差讓梯度暢通、層正規化穩定訓練,堆疊數十至上百層。

複雜度與權衡

自注意力把任兩位置的路徑長度降為 $\mathcal{O}(1)$ 且可完全平行——這是它取代 RNN 的根本優勢。代價是計算與記憶體隨序列長度 $n$ 呈 $\mathcal{O}(n^2)$,這也是長上下文的工程瓶頸,催生 FlashAttention、稀疏/線性注意力等改良。

為什麼是分水嶺

Transformer 同時具備捕捉長程依賴大規模平行可擴展兩個性質,使「把模型與資料一起放大」在工程上可行;其測試損失隨規模呈冪次下降的規模律(Kaplan 等人),把「擴大規模」變成可預測的工程路線。於是 GPT、BERT、Claude、Gemini、Llama 乃至影像的 ViT、多模態模型,底層都是 Transformer。GPT 的 T 就是 Transformer——理解了它,就握住了通往生成式 AI 的鑰匙。

深入探討(研究所視角)

自注意力的計算複雜度與線性化

標準自注意力對序列長度 $n$ 的時間與空間複雜度皆為 $O(n^2 d)$,瓶頸來自注意力矩陣 $A = \mathrm{softmax}(QK^\top / \sqrt{d_k})$ 的顯式構造。這驅動了一整支「高效注意力」研究。其中 Performer 透過隨機特徵映射 $\phi(\cdot)$ 近似 softmax 核:利用恆等式 $\exp(q^\top k) = \mathbb{E}_{\omega \sim \mathcal{N}(0, I)}\big[\exp(\omega^\top q - \tfrac{\|q\|^2}{2})\exp(\omega^\top k - \tfrac{\|k\|^2}{2})\big]$,將注意力改寫為 $\phi(Q)\big(\phi(K)^\top V\big)$,由結合律先算右側即得 $O(n d^2)$ 線性複雜度。Linformer 則假設 $A$ 為低秩,將 $K, V$ 沿序列維投影至固定維度 $k \ll n$。值得注意的是,FlashAttention 走的是正交路線:它不改變數學定義,而是以 tiling 與 online-softmax 的 IO-aware 演算法,避免將 $n \times n$ 矩陣寫回 HBM,把記憶體複雜度降為 $O(n)$ 同時保持精確結果——說明真正的工程瓶頸往往是記憶體頻寬而非 FLOPs。

表達力、歸納偏置與理論結果

Transformer 在足夠寬度下具備通用近似性質,且編碼器-解碼器結構被證明為圖靈完備(在無限精度與適當位置編碼假設下)。然而其表達力受限於計算深度:單層注意力屬於對數空間複雜度類,難以單步解決需嚴格序列依賴的問題(如 $\mathrm{PARITY}$ 或某些狀態追蹤任務),這正是 chain-of-thought 提供額外計算步數而提升能力的理論動機之一。位置資訊的注入也是關鍵的歸納偏置:相對位置編碼與 RoPE(旋轉位置編碼)將位置以旋轉矩陣 $R_\theta$ 作用於 $q, k$,使內積 $\langle R_{\theta m} q, R_{\theta n} k\rangle$ 僅依賴相對位移 $m - n$,從而改善長度外推(length extrapolation)。

與序列模型的理論連結及前沿方向

一條重要的理論連結是:線性注意力可改寫為一個具有矩陣值隱狀態 $S_t = S_{t-1} + k_t v_t^\top$ 的線性 RNN,輸出 $o_t = q_t^\top S_t$。這揭示了注意力與遞迴的對偶性,也是近期狀態空間模型(如 S4、Mamba)復興的核心洞見——它們以結構化的選擇性狀態轉移在線性時間內逼近長程依賴,並可訓練時平行、推論時遞迴。另一前沿是 mixture-of-experts,以稀疏路由將參數量與每 token 計算量解耦,使縮放律(scaling law,描述損失隨參數、資料、計算的冪律下降)下的擴展更具成本效益。

開放問題仍多:注意力的可解釋性(attention 權重是否構成忠實解釋仍有爭議)、in-context learning 的機制(是否隱式執行梯度下降或貝氏推論)、以及超越 $O(n^2)$ 同時不犧牲精確召回的架構,都是當前活躍的研究戰場。

接著問 AI 助教

點一下複製提問,到 ClassroomGPT、優學伴(AIDA)或你的 UeduGPTs 頻道貼上,AI 會引用本專區內容回答。

AI 共讀助教正在陪你讀:Transformer 與注意力機制:當代 AI 的轉捩點
嗨!我是這篇文章的共讀助教,只根據〈Transformer 與注意力機制:當代 AI 的轉捩點〉的內容回答。可以問我「解釋某段」「舉個例子」「出題考我」,或反白文中段落後點下方「解釋選取段落」。