---
# System prepended metadata

title: 【生成式AI時代下的機器學習(2025)】06 生成式人工智慧的 Post-Training 與遺忘問題
tags: [生成式AI]

---

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

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


[【生成式AI時代下的機器學習(2025)】第六講：生成式人工智慧的後訓練(Post-Training)與遺忘問題](https://www.youtube.com/watch?v=Z6b5-77EfGk&list=PLJV_el3uVTsNZEFAdQsDeOdzAaHTca2Gi&index=7)

### 【生成式AI時代下的機器學習(2025)】第六講：生成式人工智慧的後訓練(Post-Training)與遺忘問題 大綱


#### 1. 後訓練與災難性遺忘的背景
*   **定義：** 後訓練（Post-Training）或持續學習（continual learning），指對已具通用能力的 Foundation Model (Foundation Model) 進行調整，使其在特定領域（如中文、金融、程式設計）中變得更專業。
*   **核心問題：** 災難性遺忘 (Catastrophic Forgetting)，指模型在學習新技能後，忘記了既有的基礎能力（例如安全對齊、數學能力或 JSON 格式輸出）。
*   **機制：** 遺忘程度與新任務的學習程度成正相關——學得越好，遺忘越嚴重。

#### 2. 解決遺忘問題的核心策略：經驗重現
*   **經典方法：經驗重現 (Experience Replay)：** 在訓練新任務時，混入少量（約 5%）的舊任務資料，以喚醒模型被隱藏的知識。
*   **現代挑戰：** 當前大型公司不釋出原始訓練資料，導致無法進行傳統 ER。

#### 3. 實務中的自我重現與資料生成技術
*   **偽重現 (Pseudo Rehearsal)：** 利用 Foundation Model 自身的生成能力來創造類似過去經驗的數據。
*   **自問自答 (Self-Ask / Self-Generate)：** 讓模型自己生成問答對（Instruction Fine-Tuning 格式）來製造訓練數據，有效避免遺忘。
*   **自我輸出與風格一致性 (Self-Output / Paraphrase)：**
    *   **原因：** 人類答案往往對模型來說是難以產生（Perplexity 高）的句子。
    *   **方法：** 使用模型自己產生或改寫過的答案來訓練，因為這些數據更接近模型自身的表達風格。

#### 4. 其他輔助策略與技術考量
*   **過濾難學 Token：** 移除訓練資料中對 Foundation Model 來說最難以產生的 Token（約 20%），反而能提升學習效果並減少遺忘。
*   **RL-based 訓練：** 基於強化學習（RL）的後訓練方法可能特別有助於防止遺忘，因其機制與自我輸出相似。
*   **LORA 的取捨：** 參數效率調優（如 LORA）能減輕遺忘，但這是因為它限制了模型學習的程度。

***


### I. 後訓練與災難性遺忘的背景與問題

![image](https://hackmd.io/_uploads/r1PIAvs1Zg.png)

#### 1. Post-Training (後訓練) 的定義與範疇
*   **目的：** 對已具備通用能力的 Foundation Model 進行進一步調整，使其擅長特定的專業領域（如金融、法律）、特定人類語言（如中文、韓文）或特定程式語言（如 Verilog）。
*   **技術上：** Post-training 可採用 pre-training style、Supervised Fine-Tuning (SFT) style，或 Reinforcement Learning (RL) style。
*   **Foundation Model 的定義：** 在此討論中，Foundation Model 不一定是 base model，它也可以是一個已經過 alignment（對齊）的 Chat Model 或 Instruct Model，我們只是在其基礎上進一步訓練。

#### 2. 災難性遺忘 (Catastrophic Forgetting) 的實例與影響
*   **安全性受損 (Safety Alignment)：** 對 LLaMA Chat 進行中文資料的後訓練後，模型雖然學會了中文，但其原有的安全防禦能力會被破壞。例如，原本 LLaMA Chat 會拒絕回答如何獲取銀行密碼，但在後訓練後，它可能會用中文提供攻擊方式。這證明模型說錯話或說出有害句子的機率（Toxicity）大幅增加。
*   **模型行為失常：** 有時模型會突然「腦袋不好使」。例如，在一個中文後訓練的例子中，模型被問及氣候變化對生態系統的影響，卻會不斷卡在「第一點、第一點、第一點」，陷入暴走狀態。
*   **基礎能力崩潰：** 當對 LLaMA 進行 SFT 訓練，教授新技能（如推理、醫學、程式碼、工具使用）時，模型原有的基礎能力會暴跌。
    *   例如，在一個實驗中，教導模型使用工具後，其原有的**數學**和**程式設計能力**會變差。特別是工具使用能力，在只教導其他技能時，其表現可以從 19.6 大幅暴跌至 3.6。
*   **跨模態訓練的遺忘：** 即使是教導文字模型理解新模態（如聽懂語音），也會導致它遺忘其原有的文字能力。例如，模型會忘記如何輸出正確的 **JSON 格式**。

#### 3. 遺忘的本質與參數效率的取捨
*   **學得越多，遺忘越嚴重：** 橫軸代表 Fine-tuning Loss（越往右代表學得越好），縱軸代表遺忘的嚴重程度，兩者幾乎呈一條斜直線。
*   **模型大小無助益：** 根據研究，模型越大（在 1B 到 7B 範圍內）並不一定能減輕遺忘的狀況。
*   **LORA 的限制：** 參數效率調優方法（如 LORA）雖然能減輕遺忘，但文獻指出這是一種取捨：**「LORA 學得少，遺忘得也少」** (Lora learns less and forget less)。如果參數量設定較小（Rank 較小），點會聚集在左下角（學得少，遺忘少）；如果參數量設定較大（Rank 較大），則聚集在右下角（學得多，遺忘多）。

### II. 解決遺忘問題的核心策略

#### 1. 經驗重現 (Experience Replay) — 古典但高效的方法
*   **原理：** 在訓練新任務（任務二）時，混入少量過去任務（任務一）的資料。
*   **資料量要求：** 不需要太多舊資料。大約只需混入**當前訓練資料量的 5% 左右**就非常足夠。這是因為模型的能力可能只是被「藏在某個地方」，只需要一個契機就能被喚醒。
*   **實務案例：** 在針對 LLaMA 進行訓練時，只需要保留 **3%** 的安全對齊（Safety Alignment）資料，就能有效保持模型的安全能力。

#### 2. 偽重現與自我生成 (Pseudo Rehearsal) — 解決資料不可得的方案
*   **現代困境：** 當今大型公司通常只釋出模型，不釋出原始訓練資料。
*   **Self-Ask and Self-Generate (自問自答)：**
    *   **機制 (Self-Symphash Rehearsal)：** 利用待後訓練的 Foundation Model 自身來生成類似其過去訓練資料的數據。
    *   **過程：** 只給模型代表 "user" 的 Token，讓它繼續生成一個問題；然後再給它 "assistant" 的 Token，讓它生成這個問題的答案。
    *   **結果：** 成功生成 Instruction Fine-Tuning 格式的資料，即使在 2019 年的 GPT-2 時代，模型也能自說自話產生看似真實但實為虛假的問答對。將這些自生成數據混入訓練資料中，可以避免遺忘。

#### 3. 利用模型自身的語言 (Self-Output / Paraphrase)
*   **Perplexity 差異：** 研究發現，人類撰寫的正確答案通常含有較多對於 Foundation Model 來說「難以產生」（機率較低，Perplexity 較高）的 Token。
*   **Paraphrase (改寫)：** 讓 Foundation Model 改寫人類寫的答案，使其更接近模型自己的語言。研究顯示，使用改寫過的答案來訓練模型，在大多數情況下結果都更好。
*   **Self-Output (自我輸出)：**
    *   **方法：** 讓 Foundation Model 針對問題產出答案。如果答案可被檢測是正確的（例如在數學或程式碼問題中），則使用 **Foundation Model 自己的答案**來訓練模型。這是一種非常常見且有效的防止遺忘的方法。
    *   **利用更強的模型協助：** 如果目標 Foundation Model 太弱，無法產出正確答案，可以使用更強的模型（如 GPT-4 或 Claude）的答案來訓練。研究顯示，使用其他語言模型的答案訓練，比使用人類答案訓練，模型學得更好，遺忘更少。
    *   **Minimum Change (最小改變修正)：** 在使用強模型（如 GPT-4）修正弱 Foundation Model 產生的錯誤答案時，要求修正後的內容要盡量相似，以確保訓練數據的風格與目標模型一致。

### III. 輔助策略與技術考量

#### 1. 基於強化學習 (RL-based) 的後訓練
*   **潛在優勢：** RL 訓練機制與 Self-Output 非常相似。RL 並非強制提供標準答案，而是讓模型產生答案，然後提高正確答案的機率。
*   **推測：** 這種機制可能使 RL-based Post-Training 成為一種特別能防止遺忘的方法，這或許解釋了為何 RL 方法常被放在語言模型訓練的最後階段。

#### 2. 過濾難以學習的 Token
*   **原理：** 在訓練過程中，模型會計算其生成訓練資料中每個 token 的機率（難易度）。人類寫的答案通常包含較多難以產生的 Token。
*   **方法：** 在訓練時，直接略過那些對 Foundation Model 來說特別難以產生的 Token。
*   **效果：** 移除大約 **20%** 最難產生的 Token，反而能夠幫助模型表現得更好（包括在訓練時未曾見過的 out-of-domain 任務上），有效地避免模型試圖學習它根本學不來的東西。

