「如果要通往圖靈機的路上,Seq2Seq 本身比 Decoder 還要合理。」這是我在 2022 年的筆記裡寫下的一句話。

當時我試玩了早期的 GPT-2,心裡總覺得:這到底是個什麼東西?相比之下,基於 Seq2Seq 概念的 BART 或是 T5 看起來合理太多了。沒想到幾年後的現在,在這場 AI 軍備競賽中,竟然是 Decoder-only 架構拿下了 MVP。

當時的我會覺得,Decoder 說穿了根本只是看著輸入做「文字接龍」。它沒辦法預先知道自己整體要生成什麼,只能不斷在 Sample Space (樣本空間) 中選擇「現在這個情況下,下一個字機率最大的是誰」。

相較之下,Seq2Seq 才是完整使用 Transformer 架構的「好學生」:

  1. Encoder 負責看懂整個句子架構,並生成富含語意細節的 Embedding。
  2. Decoder 應用 Encoder 給的全局上下文 (Context) 來輸出序列。

這樣的分工聽起來超合理,對吧?但為什麼現在的發展卻完全偏向了 Decoder-only?以下是我後來自己的反思,以及結合近期與 AI 討論後整理出的幾個關鍵原因。


1. 統一架構的暴力美學:Scaling Law 與目標函數

Seq2Seq 雖然邏輯清晰,但它把「理解」與「生成」拆成了兩個模組。Encoder 負責理解並產生針對細部觀念的 Embedding。這其實帶來了一個隱形的代價:訓練目標的不一致

Seq2Seq 常常使用 Span Corruption(例如把一段話挖空,讓 AI 填空,類似 BERT/T5 的作法)來預訓練;而 GPT 則是貫徹到底的 Next Token Prediction (預測下一個詞)

後來的事實證明,當模型參數規模放大到百億、千億等級時,遵守 Scaling Law (規模法則) 的 Next Token Prediction 是最能榨取資料價值的「目標函數」。當我們要壓低 Loss Function,讓 Decoder-only 的模型表現越來越好時,因為要預測下一個字足夠準確,模型被迫要在內部「模擬」出整個世界的邏輯、常識甚至物理規律

如果它不理解「重力」,它就沒辦法在「蘋果脫離樹枝後會…」這句話後面,精準地接上「往下掉」。

或許「理解」從來都不是目的,而是為了「接得準」而產生的副產品。換句話說,雖然我們沒有像訓練 BERT 或 RoBERTa 那樣,專門要求 AI 去「好好理解整個句子內容,並且吐出一個等長序列或分類標籤」,但是 Decoder 內部在預測文字的過程中就已經把這件事做完了。反觀 Encoder,再怎麼會理解,都沒有辦法獨自學會怎麼去「寫」內容。

2. 「Prefix LM」模糊了 Encoder 的邊界

在前面我提到「Encoder 可以理解整個句子架構,看到全局」,但這個優勢在現代的 Decoder-only 模型裡,已經被 Prefix LM 的形式取代了。

現在的 LLM 雖然是 Decoder-only,但當你輸入一個 2000 字的 Prompt (提示詞) 時,這 2000 字之間其實是經歷了 Full Attention(在準備回答的階段,Prompt 內的字元彼此都看得到上下文)。只有在「開始生成回答」的那一刻起,它才切換回嚴格的 Causal Mask (因果遮罩),也就是只能看到前面的字。

它在同一個參數空間裡完成了「理解全局 Prompt」與「自回歸生成回答」這兩件事,這比強行把參數拆成 Encoder 和 Decoder 兩組還要更靈活且高效。

3. 訓練效率與 GPU 併發的經濟帳

這一點從工程與算力的角度來看非常現實。我們可以觀察到在檢索領域,Bi-encoder 在效率上狠狠虐殺了 Cross-encoder。同理,套用在 Seq2Seq 上:

在訓練時,Seq2Seq 的 Encoder 確實能看到全文,但 Encoder 與 Decoder 之間的 Cross-Attention 計算複雜度與數據傳輸量,在分散式訓練(Distributed Training)時會變成嚴重的效能瓶頸。

反觀 Decoder-only 的訓練: 由於它只使用 Causal Mask,它的計算矩陣是一個非常漂亮的「下三角矩陣」(在預測第 $t$ 個字時,只看第 $1$ 到第 $t-1$ 個字)。在現有的 GPU 架構上,這種純粹的機制能跑出最高的吞吐量 (Throughput),也能夠最大化地壓榨 GPU 效能。在動輒需要數萬張 GPU 訓練的時代,這種架構上的運算優勢直接決定了生與死。

4. 偉大的 Zero-shot 湧現特質 (Emergent Abilities)

Decoder-only 架構展現出了極強的 In-context Learning (上下文學習) 能力。

早期的 Seq2Seq 模型(如 T5)在面對沒看過的任務指令時,通常需要經過 Fine-tuning (微調) 才能運作良好。但 GPT 這種「接龍機器」,因為在龐大的預訓練資料中看過無數的「問題:回答」對話模式,它能直接把你的 Prompt 當作是它要接龍的上半部,從而實現了驚人的泛化能力(Zero-shot / Few-shot)。

這種運作方式對於人腦來說其實也比較合理。雖然 LLM 訓練所需的資料量相對於人腦來說大得驚人,但「根據上下文順其自然地推導出下一步」的邏輯,反而更接近人類直覺。


結語:我們距離 AGI 還有多遠?

在大家爭論 AGI 到底是怎麼達成的時候,觀察目前 GPT 的運作模式:先透過 Prefix LM 在內部運算(思考)要 Output 什麼,然後開始輸出的時候就進入類似「文字接龍」的自回歸狀態,仔細想想這其實還滿符合人類行為的。

畢竟,當我們在腦中想好要講出來的東西後,接下來的說話過程很多時候也已經是一條 Deterministic Chain (決定性鏈條)。只是人類在說話的過程中,還會不斷地「先想一想、再講一講、再修正一下」… 這點與目前單純一次性生成的 LLM,還是有著本質上的不同。

但不可否認的是,Decoder-only 架構憑藉著極致的擴展性與效率,確實帶我們走到了過去難以想像的 AI 新高度。