💡一句話定義
模式崩潰(Mode Collapse)=GAN 訓練時,生成器只學會產生少數幾種能騙過判別器的樣本、失去多樣性(例如只生成一種臉),無法涵蓋真實資料的各種模式。它是 GAN 最常見也最棘手的問題之一。
🎮互動:GAN 崩潰 vs WGAN 覆蓋
綠點是真實資料的 4 種模式(如男女、長短髮)。選模式後按「開始訓練」看紅色生成點怎麼跑:原始 GAN 全擠進同一坨(崩潰);WGAN 均勻覆蓋四坨(有多樣性)。
🎯 GAN 模式崩潰與 WGAN 解決方案
真實資料分佈 (4種人臉模式)
網路生成資料 (Generator)
🕳️為什麼會發生?
生成器找到捷徑——某幾個輸出能穩定騙過判別器,它就一直產出這些,其他真實模式全被忽略。加上兩網路博弈不穩、目標相反、輪流更新,很容易陷入這種退化均衡。模式崩潰其實是「GAN 訓練不穩」的典型症狀之一。
⚖️原始 GAN vs WGAN
| 面向 | 原始 GAN | WGAN |
|---|---|---|
| 損失度量 | JS 散度(分布不重疊時梯度易消失) | Wasserstein/推土機距離(EMD) |
| 生成行為 | 擠向單一模式(崩潰) | 被逼均勻覆蓋所有模式 |
| 多樣性 | 低 | 高 |
| 訓練穩定度 | 不穩、易震盪 | 較穩(WGAN-GP 更佳) |
🚜WGAN 的「推土機距離」
🔧怎麼診斷與緩解?
🔍診斷
生成多樣性低、不同輸入卻產相似圖;用多樣性指標或跟真實分布算 FID。
生成多樣性低、不同輸入卻產相似圖;用多樣性指標或跟真實分布算 FID。
🧪結構技巧
minibatch discrimination、特徵匹配、unrolled GAN,讓 G 看到「整批」而非單張。
minibatch discrimination、特徵匹配、unrolled GAN,讓 G 看到「整批」而非單張。
📐損失改良
WGAN / WGAN-GP(更穩的損失+梯度懲罰)、加噪與多樣性正則。
WGAN / WGAN-GP(更穩的損失+梯度懲罰)、加噪與多樣性正則。
✅自我檢測
Q1. 模式崩潰是什麼?
GAN 訓練時生成器只學會產生少數幾種能騙過判別器的樣本、失去多樣性(如只生成一種臉),無法涵蓋真實資料的各種模式。
Q2. 為什麼會發生?
生成器找到捷徑——某幾個輸出能穩定騙過判別器就一直產出;加上兩網路博弈不穩,容易陷入這種退化均衡。
Q3. WGAN 為什麼能緩解?
WGAN 用 Wasserstein(推土機)距離計算整體搬運成本,逼生成器把機率均勻鋪到所有模式、覆蓋多樣性,梯度也更平滑穩定。
Q4. 還有哪些緩解方法?
minibatch discrimination、特徵匹配、WGAN-GP(梯度懲罰)、unrolled GAN、加噪與多樣性正則;並可用 FID 檢查多樣性。
🎯重點整理
- 症狀:只生成少數樣本、失去多樣性。
- 成因:找捷徑騙 D + 博弈不穩。
- 診斷:多樣性低、FID 檢查。
- 解法:WGAN/WGAN-GP、minibatch discrimination 等。
- 本質:它是 GAN 訓練不穩的典型症狀。