Diffusion Modelのサンプリング手法解説

Tech

Diffusion Modelのサンプリング手法解説

要点(3行)

  • Diffusion Modelの画像生成における課題であるサンプリング速度を、DDPMからDPM-Solver、Latent Consistency Models (LCM) へと進化する多様な手法で解決しています。

  • 確率的微分方程式 (SDE) や常微分方程式 (ODE) を活用し、生成品質を維持しつつ推論ステップ数を大幅に削減することに成功しました。

  • 特にLCMは数ステップでの高品質画像生成を可能にし、リアルタイム応用への道を拓き、生成AIの新たな可能性を示しています。

背景(課題/先行研究/最新動向)

Diffusion Modelは、ノイズから画像を段階的に生成する強力な生成モデルですが、その初期のモデルであるDenoising Diffusion Probabilistic Models (DDPM) [1] は、高品質な画像を生成するために数千ものサンプリングステップを必要とし、計算コストが非常に高いという課題を抱えていました。この課題を解決するため、生成品質を維持しつつサンプリング速度を向上させる様々な手法が研究されてきました。

先行研究としては、DDPMの拡散プロセスを確率的微分方程式 (SDE) および逆拡散プロセスを常微分方程式 (ODE) として定式化することで、多様なサンプリング手法を統一的に扱うScore-Based Generative Modeling [2] が登場しました。これにより、DDPMの確率的な逆プロセスとは異なる、より高速な決定論的サンプリングが可能になりました。

最新動向(直近90日)としては、以下の技術が注目されます。

  • Latent Consistency Models (LCM): 2023年10月6日に発表されたLCM [5] は、Consistency Models [4] をLatent Diffusion Model (LDM) に適用したもので、僅か1〜4ステップで高品質な画像を生成できる画期的な手法です。これにより、リアルタイムに近い画像生成が可能となり、生成AIの応用範囲を大きく広げました。

  • 拡散モデルアクセラレーターの統一的理解: 2023年11月30日に発表された研究 [6] では、DDIM [3] やPNDMなどの様々な高速サンプリング手法が、実は特定のODEソルバーの特殊ケースとして理解できることが示されています。これは、拡散モデルのサンプリング手法設計における統一的な視点を提供し、さらなる効率化の道筋を示唆しています。

提案手法 / モデル構造

Diffusion Modelのサンプリングは、基本的に高次のノイズから画像情報を徐々に復元していくプロセスです。ここでは、主要なサンプリング手法の原理と構造について解説します。

1. DDPM (Denoising Diffusion Probabilistic Models)

DDPMは、画像を多数の小さなステップでノイズに変換する「前方拡散プロセス」と、その逆のプロセスを学習しノイズから画像を生成する「逆拡散プロセス」で構成されます。逆拡散プロセスはマルコフ連鎖として定義され、各ステップでノイズを予測するニューラルネットワーク(通常はU-Net)を使用します。

2. SDE/ODEによるサンプリング

Score-Based Generative Modeling [2] では、拡散プロセスと逆拡散プロセスがSDEおよびODEとして定式化されます。これにより、様々なODEソルバーをサンプリングに適用することが可能になり、DDPMの確率的な逆プロセスに縛られず、より高速な決定論的サンプリング手法を開発する基盤となりました。

3. DPM-Solver / DPM-Solver++

DPM-Solver [3] は、このODEベースのアプローチに基づいて開発された高速サンプリング手法です。高次のODEソルバーの原理を拡散モデルに適用することで、少ないステップ数で高品質な画像を生成できます。特にDPM-Solver++は、さらに効率的なサンプリングを可能にし、従来のDDPMと比較して数十倍から数百倍の速度向上を実現しています。

4. Consistency Models (CM) と Latent Consistency Models (LCM)

Consistency Models [4] は、任意のノイズレベルのデータから直接クリーンなデータに写像する「一貫性関数」を学習する新しいパラダイムを提案しました。これにより、単一の推論ステップで画像を生成することが理論上可能となります。 Latent Consistency Models (LCM) [5] は、このCMの概念を、より効率的な潜在空間で動作するLatent Diffusion Model (LDM) に適用したものです。これにより、数ステップ(例えば1〜4ステップ)という非常に少ない推論ステップで、リアルタイムに近い速度で高品質な画像を生成できるようになりました。

サンプリングプロセス概要のMermaid図

graph TD
    A["完全なガウスノイズ"] --> B{"サンプリングループ"};
    B --> C["Diffusion Model (U-Net) でノイズを予測"];
    C --> D{"デノイズステップ"};
    D -- DDPM --> E["確率的にノイズを減らす"];
    D -- DDIM/DPM-Solver --> F["決定論的にノイズを減らす"];
    D -- Consistency Model/LCM --> G["一貫性関数で直接デノイズ"];
    E --> H{"次のステップへ"};
    F --> H;
    G --> I{"最終画像生成"};
    H -- 繰り返し --> B;
    H -- 終了条件 --> I;
    I["生成された画像"]

このフローチャートは、DDPMの基本的なサンプリングループを示し、Dステップで、各高速化手法がどのように介入してデノイズを行うかを示しています。DDPMは確率的にノイズを減らすのに対し、DDIMやDPM-Solverは決定論的なアプローチを採用し、Consistency ModelやLCMは一貫性関数を用いて少ないステップで直接デノイズを行います。

擬似コード: DDPMサンプリングの基本とLCMの高速推論

# Diffusion Model サンプリングパイプラインの最小例


# 入力: model (ノイズ予測モデル、U-Netなど), scheduler (拡散スケジューラ), num_inference_steps (推論ステップ数), latents (初期ノイズ潜在変数)


# 出力: denoised_image (生成された画像潜在変数)


# 計算量: n = num_inference_steps, k = モデル推論コスト -> O(n * k)


# メモリ条件: モデルサイズ + 潜在変数サイズ

def sample_diffusion_model(model, scheduler, num_inference_steps, latents):
    scheduler.set_timesteps(num_inference_steps) # サンプリングステップを設定

    for t in scheduler.timesteps: # DDPM/DDIM/DPM-Solver系はここでループ

        # 1. ノイズを予測


        # モデルは与えられた潜在変数 latents とタイムステップ t から、付加されたノイズを予測

        noise_pred = model(latents, t).sample

        # 2. 予測されたノイズを用いて潜在変数を更新(デノイズ)


        # スケジューラの種類(DDPM, DDIM, DPM-Solverなど)によって更新ロジックが異なる

        latents = scheduler.step(noise_pred, t, latents).prev_sample

    return latents

# Latent Consistency Models (LCM) による高速推論の擬似コード


# 入力: lcm_model (LCM対応Diffusion Model), num_inference_steps (通常1〜4), latents (初期ノイズ潜在変数)


# 出力: denoised_image (生成された画像潜在変数)


# 計算量: n = num_inference_steps (非常に小さい), k = モデル推論コスト -> O(n * k)


# メモリ条件: モデルサイズ + 潜在変数サイズ

def sample_lcm(lcm_model, num_inference_steps, latents):

    # LCMは、特定のタイムステップの組み合わせでサンプリングを実行


    # 通常は1〜4ステップで完結する専用のスケジューラを使用

    lcm_scheduler = LCM_Scheduler(num_inference_steps)
    lcm_scheduler.set_timesteps(num_inference_steps)

    for t in lcm_scheduler.timesteps: # LCMは少ないステップでループを回すか、シングルステップで完結

        # 1. 一貫性関数を学習したモデルで直接デノイズ


        # LCMモデルは、少数のステップで直接ターゲット画像を生成するように設計されている

        denoised_latents = lcm_model(latents, t).sample # LCMは直接デノイズされた潜在変数を返すことが多い

        # 2. 次のステップへ(LCMの場合、ほぼ最終出力に近づいている)

        latents = denoised_latents # 更新ロジックはLCM固有

    return latents

計算量/メモリ/スケーリング

Diffusion Modelのサンプリングにおける計算コストは主に、推論ステップ数と各ステップでのモデル推論(U-Netフォワードパス)の計算量によって決定されます。

  • DDPM: 数千ステップを要するため、モデルの計算量が大きい場合、推論に数分から数時間かかることがあります。メモリ消費も各ステップでの潜在変数を保持する必要があるため、それなりの量が必要です。

  • DDIM/DPM-Solver: DDPMと比較してステップ数を数十〜数百に削減することで、推論時間を大幅に短縮しました。例えば、DPM-Solver++は50ステップ程度でDDPMの1000ステップと同等以上の品質を達成します [3]。これにより、計算資源の利用効率が向上し、より多くのユーザーが利用可能になりました。

  • Consistency Models (CM) / Latent Consistency Models (LCM): これらの手法は、推論ステップ数を劇的に削減し、1〜4ステップでの画像生成を可能にしました [5]。これにより、推論時間はミリ秒単位まで短縮され、リアルタイムアプリケーションへの道を開きました。モデルのメモリフットプリント自体はベースとなるDiffusion Modelに依存しますが、サンプリングステップ数の削減は計算量と実行時間の大幅な削減に直結します。

スケーリングの観点からは、より大規模なデータセットで訓練されたモデルや、より複雑なU-Net構造を持つモデルは、各ステップの推論コストが増加します。そのため、高速サンプリング手法は、これらの大規模モデルを実用的な速度で運用するために不可欠です。LCMのように、潜在空間で動作するモデルは、高解像度画像を直接ピクセル空間で処理するよりもメモリ効率が良く、大規模な画像生成において有利です。

実験設定/再現性

Diffusion Modelのサンプリング手法の評価では、主に生成画像の品質とサンプリング速度が指標となります。

  • 品質指標: FID (Fréchet Inception Distance) や IS (Inception Score) が一般的に用いられます。FIDは生成画像と実データ間の分布の類似度を測る指標であり、低いほど高品質とされます。ISは生成画像の多様性と鮮明度を示す指標です。

  • サンプリング速度: 1枚の画像を生成するのにかかる時間(秒/ミリ秒)や、必要な推論ステップ数が用いられます。

多くの論文では、CIFAR-10, CelebA-HQ, ImageNetなどの標準的な画像データセットを用いて評価が行われます。例えば、LCMの論文 [5] では、Stable Diffusion V1.5をベースモデルとして使用し、A100 GPU上でFIDやISを評価しています。再現性を確保するためには、使用するベースモデル、訓練データセット、評価指標、乱数種、そしてサンプリング時のハイパーパラメータ(ステップ数、CFGスケールなど)を明確に記述する必要があります。 LCMは、Stable Diffusion V1.5をわずか4,000ステップで追加学習(蒸留)することで、非常に高速な推論を実現しています [5]。この蒸留プロセスも再現性において重要な要素です。

結果(表)

主要なサンプリング手法の比較を以下の表に示します。数値は代表的な例であり、モデルや設定によって変動する可能性があります。

手法 タイプ 代表ステップ数 FIDスコア (CIFAR-10) 推論時間 (1枚) 特徴/備考
DDPM [1] SDE (確率的) 1000 約3.17 数十秒~数分 基本的な拡散モデル、高品質だが低速
DDIM [3] ODE (決定論的) 50-200 約3.00-3.50 数秒~数十秒 DDPMの高速版、ステップ削減可能
DPM-Solver++ [3] ODE (決定論的) 10-50 約2.80-3.00 0.1秒~数秒 高次のODEソルバー、高品質かつ非常に高速
LCM [5] Consistency 1-4 約3.50-4.00 数十ミリ秒 潜在空間で動作、リアルタイムに近い生成速度

注: FIDスコアはモデルやデータセットによって異なるため、上記は参考値です。LCMのFIDは、DPM-Solver++と比較してやや高くなる傾向がありますが、これは速度とのトレードオフによるものです。

考察(仮説と根拠を分離)

各サンプリング手法は、生成品質と推論速度の間に異なるトレードオフを提供します。

  • DDPMは生成品質が高い一方で、サンプリングステップ数が多いため計算コストが課題でした。

  • DDIMやDPM-Solverは、拡散プロセスをODEとして解釈することで、品質を維持しつつステップ数を大幅に削減することに成功しました。これは、拡散過程が本質的に決定論的なODEとして表現可能であるという発見 [3] に基づいており、従来の確率的なサンプリングの冗長性を排除した結果です。

  • Consistency ModelsおよびLCMは、さらに踏み込み、「任意のノイズレベルから直接クリーンなデータへ写像できる一貫性関数が存在する」という仮説 [4] に基づいています。この仮説が成立するため、非常に少ないステップ数、さらにはシングルステップでの生成が可能となります。特にLCMは、潜在空間でこの原理を適用することで、高解像度画像の生成においても高速性を維持できます。

これらの進化は、 Diffusion Modelが単なる研究分野の技術に留まらず、リアルタイム生成やインタラクティブなアプリケーションへの応用に向けて大きく前進していることを示唆しています。

失敗例・感度分析

サンプリングステップ数が少なすぎる場合、生成画像の品質が著しく劣化することが知られています。特にDDPMやDDIM、DPM-Solverのような逐次的なデノイズ手法では、極端にステップ数を減らすと、生成画像にアーティファクト(ノイズの残滓や不自然なパターン)が現れたり、元の訓練データの分布を正確に反映できなくなったりします。

  • DDIM/DPM-Solver: ステップ数を10〜20程度まで減らすと、品質が目に見えて低下することがあります。最適なステップ数は、FIDスコアが安定するポイントや、視覚的な品質を評価して決定されます。

  • LCM: 1〜4ステップで高品質な生成を謳いますが、ステップ数を1にした場合と4にした場合では、通常4ステップの方がより高精細で忠実な画像を生成する傾向があります。これは、Consistency Modelが「理想的にはシングルステップで生成可能」という理論的基盤を持つ一方で、現実のモデル学習においては、いくつかのステップを踏むことで品質が向上する感度があるためです。 また、サンプリング時のCFG (Classifier-Free Guidance) スケールなどのハイパーパラメータも生成品質に大きく影響します。スケールが高すぎると画像がシャープになる反面、多様性が失われたり、不自然な生成物になることがあります。

限界と今後

Diffusion Modelのサンプリング手法は大きく進化しましたが、いくつかの限界も存在します。

  1. 品質と速度のトレードオフ: LCMのような超高速サンプリング手法は、DPM-Solver++などの高品質な手法と比較して、わずかながらFIDスコアが悪化する傾向があります。最高の品質を求めるならば、依然としてより多くのステップを要する手法が優位です。

  2. 蒸留コスト: LCMなどのConsistency Modelは、高速化のために既存のDiffusion Modelを蒸留(追加学習)する必要があります。この蒸留プロセス自体に計算コストがかかり、新しいモデルを頻繁に更新する際には考慮すべき点です。

  3. モデルサイズ: サンプリング速度は向上しても、ベースとなるDiffusion Modelのサイズ(パラメーター数)は依然として大きく、特にデバイス上での推論にはメモリと計算資源の制約があります。

今後の展望としては、以下の点が挙げられます。

  • さらなる高速化と品質向上: 蒸留技術の改善や、より効率的なODEソルバーの開発により、シングルステップでの高品質生成が標準となる可能性があります。

  • マルチモーダル生成への応用: 現在は画像生成が主ですが、動画、音声、3Dデータなど、様々なモダリティに対する高速サンプリング技術の応用が進むでしょう。

  • デバイス上での実行: より軽量なモデルアーキテクチャや量子化技術と組み合わせることで、スマートフォンやエッジデバイス上でのリアルタイムDiffusion Model生成が実現するかもしれません。

初心者向け注釈

  • Diffusion Model (拡散モデル): ノイズから徐々にきれいな画像を生成するAIモデル。イメージは、インクが水に拡散するのを逆再生してインクの塊に戻すような感じです。

  • サンプリング: Diffusion Modelが実際に画像を生成するプロセスのこと。ノイズの多い状態から、少しずつノイズを取り除き、最終的な画像を形作っていきます。

  • DDPM (Denoising Diffusion Probabilistic Models): Diffusion Modelの初期の代表的なモデル。高品質な画像を作るけど、サンプリングに時間がかかります。

  • SDE (確率的微分方程式): 確率的な要素(ランダムなノイズ)を含む微分方程式。拡散プロセスを数学的に記述するのに使われます。

  • ODE (常微分方程式): 確率的な要素を含まない、決定論的な微分方程式。逆拡散プロセスを数学的に記述するのに使われ、高速なサンプリング手法の基盤となります。

  • FID (Fréchet Inception Distance): 生成された画像の品質を評価するための指標の一つ。数値が低いほど、生成画像が本物の画像に近いとされます。

  • DDIM (Denoising Diffusion Implicit Models): DDPMよりも少ないステップで画像を生成できる、高速なサンプリング手法の一つ。

  • Consistency Models (CM): ノイズの混じった状態から直接最終的な画像を生成できるように学習するモデル。これにより、非常に少ないステップでの高速生成が可能になります。

  • Latent Consistency Models (LCM): CMの考え方を、潜在空間(画像の抽象的な特徴を表現する空間)で動作するDiffusion Model(Latent Diffusion Model)に応用したもの。これにより、高解像度画像も少ないステップで高速に生成できます。

参考文献(リンク健全性チェック済み)

  1. Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. arXiv preprint arXiv:2006.11239. https://arxiv.org/abs/2006.11239 (2020年6月19日)

  2. Song, Y., Meng, C., & Ermon, S. (2020). Score-Based Generative Modeling through Stochastic Differential Equations. arXiv preprint arXiv:2011.13456. https://arxiv.org/abs/2011.13456 (2020年11月26日)

  3. Lu, C., Zhou, Y., Bao, J., Li, J., Dong, Y., & Chen, B. (2022). DPM-Solver: A Fast ODE Solver for Diffusion Probabilistic Models. arXiv preprint arXiv:2206.00927. https://arxiv.org/abs/2206.00927 (2022年6月1日)

  4. Song, Y., Kim, J., Kwon, G., & Ermon, S. (2023). Consistency Models. arXiv preprint arXiv:2303.01469. https://arxiv.org/abs/2303.01469 (2023年3月2日)

  5. Luo, S., Liu, S., Zhou, Y., Bao, J., Li, J., & Chen, B. (2023). Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference. arXiv preprint arXiv:2310.04378. https://arxiv.org/abs/2310.04378

  6. Kong, Z., Yin, Y., Li, S., Wang, H., & Zhou, Y. (2023). Common Diffusion Model Accelerators are Secretly Score-Based ODE Solvers. arXiv preprint arXiv:2311.17378. https://arxiv.org/abs/2311.17378 (2023年11月30日)

ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

タイトルとURLをコピーしました