Pairing Regularization for Mitigating Many-to-One Collapse in GANs
GAN 的 Recall 高不等於模式學好:Pairing 正則化讓 Ring 分布 Coverage 從 0.372 升至 0.851
- 模內崩潰(many-to-one collapse)在高 Recall 情境下仍會發生,Coverage 指標才能偵測它
- Pairing Loss 強制每個生成樣本能被認回其 Latent 向量,Ring 分布 Coverage 從 0.372 升至 0.851
- ADA 數據增強掩蓋模內崩潰而非解決它,需要像 Pairing 這樣的結構性約束才能從根源修正
梯度懲罰(R1)把環形分布的 GAN 訓練穩定下來,Recall 也相當高——但 Coverage 只有 0.372,大多數真實數據點根本沒被充分覆蓋。加入本文提出的 Pairing 正則化後,Coverage 直接跳至 0.851,Recall 幾乎沒有犧牲。這個現象揭示了 GAN 訓練中一個長期被忽視的缺陷:模內崩潰(many-to-one collapse),即使 Recall 再高,傳統指標也看不到它。
Recall 高不等於模式學好:模內崩潰的本質
長期以來,GAN 訓練最廣為人知的失敗是「模式缺失(mode dropping)」——生成器只涵蓋部分數據分布,完全忽略其他模式。研究界為此發展了梯度懲罰、譜正則化等大量穩定化技術,這個問題已被相對有效地緩解。
然而,本文指出了另一種截然不同的失敗模式——模內崩潰(intra-mode collapse):生成器的確覆蓋了所有模式,Recall 看起來也不錯,但潛在空間(latent space,可理解為生成器的「想像空間」)中大片不同的向量都被映射到高度相似的輸出,模式內部的多樣性嚴重喪失。
問題的核心在於指標的盲點:Recall 只衡量生成樣本能否「到達」真實數據的每個區域,卻對這些區域被以怎樣的機率密度覆蓋完全無感。與之互補的 Coverage 指標(衡量有多少比例的真實樣本被生成分布均勻地覆蓋)才能偵測這個問題,而本文正是圍繞 Coverage 展開診斷與評估。
Pairing Loss:強制生成樣本能被「認回」它的 Latent 向量
Pairing 正則化的設計直覺非常清晰:如果生成器真的學到了有意義的潛在結構,那麼給定一個生成樣本,應該能從批次中的所有潛在向量裡「認出」是哪一個 z 產生了它。一旦發生模內崩潰,不同的 z 生成幾乎一樣的樣本,這個識別任務就會變得模糊不清——而 Pairing Loss 的作用就是讓這種模糊變得「有代價」。
技術實現採用對比式識別(contrastive identification)的形式:在每個 mini-batch 中,對每個生成樣本 G(z_i),讓輔助的 Pairing 網路在批次內所有的潛在向量中找出對應的 z_i,損失函數取 InfoNCE 的對稱對比形式。梯度只反向傳播回生成器,不觸碰判別器,可以直接疊加在任何現有 GAN 框架上。Pairing 的權重超參數固定為 λ_pair = 0.05,全部實驗通用。
值得一提的是,這個 Loss 雖然形式類似表示學習(representation learning),但目的不同——它不是在學嵌入空間,而是一個對生成器映射的結構性約束:鄰近的潛在向量應對應到可分辨的輸出,直接懲罰多對一映射。
Ring 分布實驗:Coverage 從 0.372 升至 0.851
環形(ring)分布實驗消除了模式邊界,把問題純粹聚焦在模內崩潰上,是本文最清晰的實驗場景。加了 R1 梯度懲罰的 GAN 生成樣本集中在環的少數弧段,Coverage 僅達 0.372,說明穩定化正則化本身無法阻止多對一的映射問題。
加入 Pairing 後,樣本沿環均勻分布,Coverage 升至 0.851,同時 Precision 維持 0.970、Recall 達 0.962,三個指標均衡且優異。在 25 個高斯網格(25-Gaussian Grid)的更複雜場景中,Pairing 同樣能讓潛在空間均勻地分配到各個模式,而非讓大片區域聚集到少數鄰近模式。在直立高斯(Vertical Gaussian)實驗中,GAN+Pairing+R1 組合達到 Recall 0.957、Coverage 0.861,同時實現完整模式覆蓋與模內多樣性。
梯度懲罰(R1)無法阻止多對一崩潰,Pairing 正則化將 Coverage 提升 +128%
CIFAR-10 條件生成:Coverage 0.637 vs 0.731
在高維真實影像的條件式 CIFAR-10 評估中,論文分無數據增強(No-ADA)和有自適應數據增強(ADA)兩種設定。在無 ADA 的相對容易崩潰的設定下,Pairing-GAN 的 Coverage 達 0.731,高於 StyleGAN2 的 0.637,Precision 和 Recall 均維持可比水準。相較之下,MS-GAN(模式搜尋正則化,mode-seeking regularization)加了 R1 後 Recall 與 Coverage 同步下降,顯示全局多樣性目標在崩潰易發的設定下可能反效果。
在有 ADA 的現代訓練設定下,三種方法的精度-召回與精度-覆蓋訓練曲線極為接近,Pairing-GAN 僅在 Precision 上有微幅優勢,覆蓋提升不顯著。這並非問題消失,而是 ADA 透過讓判別器接觸多樣化的數據增強樣本,間接改善了局部覆蓋性,把模內崩潰的效應「遮蔽」起來了。
| 實驗設定 | 方法 | Coverage | 備注 |
|---|---|---|---|
| Ring 分布(高 Recall 情境) | GAN+R1 | 0.372 | Recall 高但覆蓋集中 |
| Ring 分布(高 Recall 情境) | GAN+Pairing | 0.851 | Precision 0.970 / Recall 0.962 |
| 垂直高斯分布 | GAN+Pairing+R1 | 0.861 | Recall 同時達 0.957 |
| CIFAR-10(無 ADA) | StyleGAN2 | 0.637 | 基準 |
| CIFAR-10(無 ADA) | Pairing-GAN | 0.731 | +14.8% 提升 |
Coverage 是 Recall 看不到的模內多樣性指標
ADA 掩蓋問題而非解決問題:穩定化技術的結構性限制
論文 Discussion 的核心論點是:梯度懲罰、ADA 等穩定化方法主要作用於判別器或訓練動態,規範的是優化行為——平滑梯度、防止爆炸更新。它們並不直接約束生成器如何把潛在空間的變化轉換成生成樣本的變化,而這個結構性空缺才是模內崩潰的真正根源。
即使訓練看起來穩定、Recall 和 FID 都良好,大片潛在區域仍可能在沒有任何懲罰的情況下坍縮到相似的輸出。這對 GAN 評估實踐也有直接啟示:僅用 Recall 和 FID 會系統性低估模內崩潰的嚴重程度,Coverage 作為互補指標應納入標準評估協議。Pairing 正則化的貢獻,正在於它填補了穩定化技術留下的這個結構性空缺,而非取代它們。
GAN 的 Recall 高,只說明它「去過」每個模式——Coverage 低才揭示它在那裡集中了機率質量,而不是均勻分布。你的生成模型,知道怎麼量嗎?