---
# System prepended metadata

title: 【生成式AI時代下的機器學習(2025)】04 介紹 Transformer 的競爭者們
tags: [生成式AI]

---

20251106筆記 內容可能有錯誤，請參考原始影片

[李宏毅【生成式AI時代下的機器學習(2025)】](https://www.youtube.com/playlist?list=PLJV_el3uVTsNZEFAdQsDeOdzAaHTca2Gi)


[【生成式AI時代下的機器學習(2025)】第四講：Transformer 的時代要結束了嗎？介紹 Transformer 的競爭者們](https://www.youtube.com/watch?v=gjsdVi90yQo&list=PLJV_el3uVTsNZEFAdQsDeOdzAaHTca2Gi&index=4)



### 【生成式AI時代下的機器學習(2025)】第四講：Transformer 的時代要結束了嗎？介紹 Transformer 的競爭者們 大綱



### I. Transformer (Self-Attention) 的優勢與挑戰

*   **優勢：** Transformer是一種廣泛使用的神經網路架構。其核心組件 Self-Attention**最大的優點是訓練時容易平行化**，可有效利用GPU加速。
*   **挑戰：** 推理 (Inference) 時，Self-Attention的計算量和記憶體需求會隨輸入序列長度增加而增加，這不利於處理當前流行模型所需面對的**超長序列**。

### II. RNN 的回歸與 Linear Attention 的興起

*   **RNN 流：** 傳統上用於處理序列輸入，但訓練難以平行化，必須等待前一個步驟的隱藏狀態 (H) 計算完成。
*   **Linear Attention (LA)：** 是一種簡化的 **RNN 架構（拿掉了Reflection $F_a$ 部分）**。同時，它也是 **Self-Attention 拿掉 Softmax** 的結果。
*   **LA 的特性：** 它在**推理時表現得像 RNN** (固定運算量)，但在**訓練時可以像 SA 一樣平行化**。

### III. Mamba 系列：修復 Linear Attention 的記憶缺陷

*   **LA 的缺陷：** 由於缺乏 Reflection 機制，LA 的記憶體會**永久儲存**輸入資訊，永不遺忘或改變。
*   **RetNet 與 Gated Retention：** 透過引入衰減因子 $\gamma$ 或可學習的 $G_T$ (Gate)，使過去的記憶能逐漸淡忘或根據情境決定保留或遺忘。
*   **Mamba：** 作為最知名的競爭者，它採用了複雜的機制來控制記憶更新。Mamba 在特定任務中已被證明**能超越** Transformer，並在**推理速度上有顯著加速**。

### IV. 新架構的應用與未來趨勢

*   Linear Attention 的概念已被用於訓練巨大的語言模型 (LLM) 和影像生成模型。
*   業界與學術界正在進行一場關於「Attention Is All You Need」的賭局，探討 Transformer 是否能在未來幾年內繼續保持主導地位。

---

### 1. Transformer 與 Self-Attention (SA) 的核心概念

#### 1.1 Transformer 的廣泛應用與定義
*   **Transformer** 是一個目前非常廣泛使用的類神經網路架構。
*   它不只用於大型語言模型 (LLM)，還用於產生語音和圖片。例如，作業四就是要求學生訓練一個產生圖片的 Transformer，以展示其多樣化應用。
*   本課程討論的重點更精確地說，是 Transformer 層中的 **Self-Attention Layer**。

#### 1.2 Self-Attention 的運作方式
*   Self-Attention (SA) 是用來解決處理 **vector sequence 輸入和 vector sequence 輸出**的問題。
*   SA 將輸入序列 $X_1$ 到 $X_T$ 中的每個向量 $X_i$ 乘以三個不同的轉換矩陣，產生三個向量：**Query ($Q_i$)、Key ($K_i$) 和 Value ($V_i$)**。
*   要計算輸出 $Y_T$，則需將 $Q_T$ 與序列中每一個 $K_i$ 計算內積 (inner product)。內積結果 ($\alpha$) 被稱為 Attention Weight。
*   這些 $\alpha$ 數值會經過 **Softmax** 處理，讓它們的總和為 1。
*   最後，這些 Softmax 處理後的 $\alpha$ 與對應的 $V_i$ 進行加權求和 (weighted sum)，得到最終輸出 $Y_T$。
*   **注意：** Attention 的概念並非由 2017 年的 "Attention Is All You Need" 論文首次提出，它早在 2014 年的 Neural Turing Machine 和記憶網路 (Memory Network) 中就已經存在。

#### 1.3 SA 的核心優勢：訓練平行化
*   Transformer (SA) 最大的好處在於 **訓練時可以更容易地平行化**。
*   訓練神經網路需要先計算出目前的答案，計算與正確答案的差異，然後才能更新參數。Transformer 的 SA 架構可以**快速計算**出所有時間點的答案。
*   在訓練階段，給定一個完整的輸入句子，Transformer 可以**平行地一次性計算出每個時間點的輸出**。例如，$Y_1$ 到 $Y_6$ 這六個向量可以同時平行生成，因為它們的生成過程彼此沒有關聯性。
*   SA 的計算過程主要是一連串的**矩陣運算**（例如 Key 矩陣的轉置乘以 Query 矩陣），這對 **GPU 非常友好**，能充分利用 GPU 的效能。

#### 1.4 SA 的限制：推論成本與記憶體誤解
*   在推論 (Inference) 或序列生成時，SA 的架構要求**每一次運算都要對前面所有的位置做 Attention**。
*   因此，SA 的**運算量和記憶體需求**會隨著輸入序列長度增加而增加。
*   許多人誤以為 SA 可以儲存無窮長的資訊，但事實上，它的記憶體容量也是**有限的**。如果序列長度 $T$ 大於維度 $D$，總會出現某些 Key 向量與 Query 向量的內積大於零，導致模型記憶錯亂。

### 2. RNN 架構及其與 Linear Attention 的關係

#### 2.1 RNN 的基本運作與挑戰
*   RNN 架構使用 **Hidden State ($H$)** 來儲存目前已看到的所有輸入資訊。
*   在時間點 $T$，新的隱藏狀態 $H_T$ 由前一個狀態 $H_{T-1}$ 經過函數 $F_a$ (Reflection/反思) 以及當前輸入 $X_T$ 經過函數 $F_b$ (Writing/書寫) 共同決定。
*   **LSTM/GRU：** 這些是 RNN 的變形，透過門控機制 (Gate) 讓 $F_a, F_b, F_c$ 這些函數可以隨時間變化，例如讓模型決定是否遺忘過去的資訊（$F_a$ 類似 Reflection/反思模組）。
*   **RNN 的訓練困難：** 訓練時，RNN 無法平行運算。計算 $H_T$ 必須先依賴 $H_{T-1}$，這是一種**序列依賴性**，是 GPU 最討厭的狀態，因為它必須等待，難以發揮平行化的優勢。

#### 2.2 Linear Attention (LA) 的神奇等價關係
*   **LA 的誕生：** 人們探討是否能將 RNN 展開來實現平行運算。如果將 RNN 式子展開，會發現連續呼叫 $F_a$ 函數仍然導致序列依賴性。
*   為解決此問題，直接將 $F_a$ 拿掉 (即拿掉 Reflection/反思部分)，得到簡化的 RNN 公式：$H_T = H_{T-1} + X_T$ 透過 $F_b$。
*   若進一步簡化符號並假設 $F_b$ 輸出是一個矩陣 $D_T = V_T \times K_T^T$，並假設輸出 $Y_T$ 是 $H_T$ 乘以 $Q_T$。
*   將 $H_T$ 展開後，最終的 $Y_T$ 公式 (即 $Y_T = \sum_{i=1}^T V_i \times (K_i^T Q_T)$) 驚人地發現：**Linear Attention 就是 RNN 拿掉 Reflection 部分**。
*   同時，**Linear Attention 也是 Self-Attention 拿掉 Softmax**。這證明了這兩種看似不同的架構，本質上非常相似，僅差在 Softmax。

#### 2.3 LA 的優點與 Softmax 的重要性
*   **LA 的優勢：** 由於 LA 本質是 SA 拿掉 Softmax，它在**訓練時**完全可以套用 SA 的平行化加速方法。而在**推理時**，它像 RNN 一樣，只需要記住前一個 $H$ 即可運算，因此具備固定且有限的計算和記憶體需求。
*   **Softmax 的作用：** 如果 Linear Attention 贏不過 Self-Attention，差別就在於 Softmax。Softmax 使得一個事件的重要性是**相對於序列中其他事件而言**。在 SA 中，所有的 Attention Weight 會互相影響，一件本來重要的事情，如果出現更重要的事情，它的權重就會相對下降，這提供了**記憶調整或遺忘**的能力。
*   **LA 的記憶缺陷：** LA 的記憶體 (H) 永不改變。一旦輸入資訊進入 $H_{T-1}$，它就會被放到 $H_T$ 裡，永遠不會被修改或遺忘。

### 3. Mamba 系列與記憶體優化

#### 3.1 引入淡忘機制：RetNet
*   為了解決 LA 記憶永不改變的問題，研究者引入了 Reflection 機制。
*   **Retention Network (RetNet)** 在 $H_{T-1}$ 前乘以一個常數 $\gamma$ (通常設在 0 到 1 之間)，使得**過去的記憶會逐漸被淡忘**。
*   在訓練時，這個 $\gamma$ 不影響平行化，它只改變 Attention Weight 的計算方式。

#### 3.2 可學習的門控機制：Gated Retention 與 Mamba 2
*   更進階的方法是 **Gated Retention**，讓 $\gamma$ 變成可學習的時變因子 $G_T$。
*   $G_T$ 由輸入 $X_T$ 決定，模型可以學習決定**什麼東西要被記住，什麼東西要被遺忘**。
*   **Mamba 2** 的架構設計與 Gated Retention 相似。

#### 3.3 Mamba 的崛起與性能
*   **Mamba 1 (2023 年底出現)** 採用了更複雜的設計，對 $H_{T-1}$ 進行 element-wise 的複雜相乘。這種設計最初導致平行化訓練較困難，需要使用特定演算法加速。
*   **Mamba 的重要性：** Mamba 引起轟動，因為它是**第一個真正能在多數情況下微幅贏過**強化的 Transformer (Transformer++) 的 Linear Attention 設計。
*   在推論 (Inference) 階段，Mamba 提供了**極強大的加速**能力，其每秒可處理的 token 數遠高於 Transformer。
*   Mamba 這類 Linear Attention 架構的主要設計目標就是要在處理**長序列**時表現優異。

#### 3.4 DeltaNet 與 Titan：將記憶體更新視為梯度下降
*   **DeltaNet** 試圖在 Memory 更新中加入「清除舊記憶」的概念。
*   DeltaNet 的 Memory 更新公式可以被解釋為一個 **Gradient Descent (梯度下降) 的步驟**。
*   在這個解釋中，$H_{T-1}$ 是更新前的參數，$H_T$ 是更新後的參數，而 $\beta_K$ 是一個學習率。
*   梯度方向在最小化一個 Loss 函數，該 Loss 函數的意義是**希望 Memory (H) 能用 Key (K) 準確提取出 Value (V)**。
*   這種概念被應用在 **Titan** (2024年初的熱門模型)，它標榜能夠在測試時 (testing time) 學習記憶，即模型在 Inference 時，相關參數也會同步改變。

### 4. 總結與未來趨勢

*   **實務應用：** Linear Attention 已經被用於訓練巨大的語言模型，例如 Jamba (52B) 和 MiniMax01 (400B以上)。它也被用於影像生成模型 Sana，以加快推論速度。
*   **影像處理：** 雖然有論文指出在**影像分類任務**中拿掉類似 Mamba 的 Attention 架構可能表現更好，暗示該任務可能不需要處理大範圍的 Attention，但在**影像分割等其他任務上**，有 Mamba 或 Self-Attention 的架構仍表現更優。
*   **研究趨勢：** 由於訓練巨大的 LLM 成本高昂，當前研究潮流是從現有的 Transformer 模型（如 Llama）開始，**將其 Self-Attention 層替換為 Mamba 或其他 Linear Attention 變體**，然後進行微調 (fine-tune)，以減少訓練成本並驗證新架構的效果。
*   **未來預言：** 線上存在一個賭局，預言到 2027 年 1 月 1 日，基於 Transformer 的架構是否仍將是最強的神經網路架構。這場賭局反映了學術界對於 Transformer 霸主地位是否終結的熱烈討論。
