OpenAI 宣布改進一致性模型(Consistency Models)的訓練技術

TL;DR

OpenAI 發布了一套訓練改進方案,消除了在一致性模型中進行擴散模型蒸餾(diffusion‑model distillation)的需求,在 CIFAR‑10 上取得了 2.51 的單步 FID 分數,在 ImageNet 64×64 上取得了 3.25 的分數——這比之前的一致性訓練結果好大約 3.5 倍至 4 倍。

背景:一致性模型及其局限性

一致性模型在單次推理步驟中生成數據,避免了擴散模型的迭代採樣過程。從歷史上看,它們一直依賴於從預訓練擴散模型的蒸餾,以及學習感知指標(如 LPIPS)來引導訓練。這些依賴關係將最終樣本品質限制在教師擴散模型的性能水平,並因 LPIPS 引入了評估偏差。

直接從數據訓練消除蒸餾

OpenAI 的新方法直接在原始數據上訓練一致性模型,而不是從擴散教師模型進行蒸餾。透過移除教師-學生管線(teacher‑student pipeline),模型不再受限於擴散模型的品質,從而能夠超越以往一致性模型的限制。

修復理論缺陷:從教師模型中移除 EMA

在分析過程中,作者們發現了一個先前被忽視的缺陷:應用於教師一致性模型的指數移動平均(Exponential Moving Average, EMA)會干擾一致性目標。解決方案是從教師模型中消除 EMA,這能穩定訓練並改善收斂性。

以 Pseudo‑Huber Loss 取代 LPIPS

LPIPS 雖然對感知相似度很有用,但會使訓練目標產生偏差。OpenAI 使用 Pseudo‑Huber loss 取代它,這是一種穩健統計學損失函數,結合了 L2 在誤差接近零時的平滑性與 L1 對離群值的抵抗力。這項改變產生了更可靠的梯度,並提供了更好的視覺保真度。

Lognormal 噪聲排程與步驟倍增

引入了另外兩項訓練技巧:

  1. Lognormal 噪聲排程 – 注入的噪聲方差遵循對數正態分佈(lognormal distribution),能更好地匹配數據流形(data manifold)在不同時間步長下的尺度。
  2. 動態離散化步驟 – 在固定數量的訓練迭代次數後,離散化步驟的總數會倍增,從而隨著訓練進程有效地增加一致性目標的分辨率。

這兩項調整都有助於模型學習更細粒度的一致性關係。

超參數調優與整體增益

全面的超參數搜索補足了架構上的改進。結合後的效應在單次採樣步驟中產生了 FID 分數為 2.51 (CIFAR‑10) 和 3.25 (ImageNet 64×64),相較於先前的一致性訓練基準,分別代表了 3.5 倍和 4 倍的改進

兩步採樣進一步提升品質

當允許模型進行第二次採樣步驟時,FID 分數提升至 2.24 (CIFAR‑10) 和 2.77 (ImageNet 64×64)。這些結果超越了透過蒸餾獲得的結果(無論是在單步還是兩步模式下),縮小了一致性模型與更廣泛的最先進生成模型之間的性能差距。

對生成建模的影響

  • 效率 – 單步採樣保留了一致性模型的速度優勢,同時實現了與多步擴散模型相當的品質。

  • 簡潔性 – 移除蒸餾簡化了訓練管線,減少了計算開銷,並消除了對大型擴散教師模型的的需求。

  • 基準測試進展 – 報告的 FID 分數為一致性模型在標準圖像合成基準測試上樹立了新的最先進技術(state‑of‑the‑art)。

未來方向

OpenAI 的研究結果建議了進一步的研究方向,例如將對數正態排程擴展到更高解析度的數據集,探索其他穩健的損失函數,以及將一致性訓練與條件生成任務相結合。


所有圖表與主張均直接取自 OpenAI 於 2024‑06‑20 發布的公告。

Sources