Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

WBOY
リリース: 2023-04-09 18:51:01
転載
1620 人が閲覧しました

最近、分類器を使用しない誘導拡散モデルは高解像度画像生成に非常に効果的であり、DALL-E 2、GLIDE、Imagen などの大規模拡散フレームワークで広く使用されています。

ただし、分類子を使用しない誘導拡散モデルの欠点は、推論時の計算コストが高いことです。なぜなら、クラス条件付きモデルと無条件モデルという 2 つの拡散モデルを何百回も評価する必要があるからです。

この問題を解決するために、スタンフォード大学と Google Brain の学者は、2 段階の蒸留法を使用して分類器を使用しない誘導拡散モデルのサンプリング効率を向上させることを提案しました。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

文書アドレス: https://arxiv.org/abs/2210.03142

分類器を使用しない誘導拡散モデルを高速サンプリング モデルに改良するにはどうすればよいですか?

まず、事前トレーニングされた分類子を使用しないガイダンス モデルについて、研究者はまず、条件付きモデルと無条件モデルの結合出力と一致する単一のモデルを学習しました。

研究者らは、このモデルを段階的に抽出して、より少ないサンプリング手順で拡散モデルを作成しました。

ImageNet 64x64 および CIFAR-10 では、この方法で元のモデルと視覚的に同等の画像を生成できることがわかります。

わずか 4 つのサンプリング ステップで、オリジナル モデルと同等の FID/IS スコアを取得でき、サンプリング速度も 256 倍と高速です。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

ガイダンスの重み w を変更することで、研究者が抽出したモデルはサンプルの多様性と品質の間でトレードオフを行うことができることがわかります。 。たった 1 回のサンプリング ステップで、視覚的に満足のいく結果が得られます。

拡散モデルの背景

データ分布からのサンプル x

、ノイズ スケジューリング関数Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!研究者らは、重み付けされた値を最小化することでパラメータ θ を使用してモデルをトレーニングしました。平均二乗誤差 拡散モデルStanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

ここで、Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! は信号対雑音比、Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! および です。 Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! は、事前に指定された重み付け関数です。

拡散モデルをトレーニングしたら、離散時間 DDIM サンプラーを使用してモデルからサンプリングできます。 Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!具体的には、DDIM サンプラーは z1 〜 N (0,I) から始まり、次のように更新されます。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

ここで、N はサンプリング ステップの総数です。 Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! を使用して、最終サンプルが生成されます。

分類子を使用しないガイダンスは、条件付き拡散モデルのサンプル品質を大幅に向上させる効果的な方法であり、GLIDE、DALL・E 2、Imagen などで広く使用されています。

サンプルの品質と多様性を測定するためのガイダンス重みパラメーターStanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! が導入されています。サンプルを生成するために、分類子なしのガイダンスでは、各更新ステップで Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! を予測モデルとして使用し、条件付き拡散モデル Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! と共同トレーニングされた Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

分類器を使用しないガイダンスを使用したサンプリングは、サンプリング更新ごとに 2 つの拡散モデルを評価する必要があるため、一般にコストがかかります。

この問題を解決するために、研究者らは漸進蒸留を使用しました。これは、蒸留を繰り返すことで拡散モデルのサンプリング速度を高める方法です。

以前は、このメソッドをモデルの蒸留のガイドに直接使用することはできず、決定論的 DDIM サンプラー以外のサンプラーでも使用できませんでした。この論文では、研究者らはこれらの問題を解決しました。

分類器を使用しない誘導拡散モデルの抽出

彼らのアプローチは、分類器を使用せずに誘導拡散モデルを抽出することです。

トレーニングされた教師主導モデルStanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!の場合、彼らは 2 つのステップを踏みました。

最初のステップで、研究者は、一致する学習可能なパラメータη1を持つ連続時間学生モデルStanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!を導入しました。任意のタイム ステップ t ∈ [0, 1] における教師モデルの出力。関心のある指導強度の範囲を指定した後、次の目標を使用して生徒モデルを最適化しました。 #####################で#########。 Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!指導の重み w を組み合わせるために、研究者は w 条件付きモデルを導入しました。ここで、w は学生モデルの入力として機能します。特徴をよりよく捉えるために、彼らはフーリエ埋め込み w を適用し、Kingma らが使用したタイムステッピング法を使用してそれを拡散モデルのバックボーンに組み込みました。

初期化はパフォーマンスにおいて重要な役割を果たすため、研究者が生徒モデルを初期化するとき、教師条件モデルと同じパラメーターを使用しました (w コンディショニングに関連する新たに導入されたパラメーターを除く)。

2 番目のステップ 、研究者は離散時間ステップのシナリオを想像し、最初のステップ Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! から学習モデルを徐々に変更しました。は、学習可能なパラメータ η2 とより少ないステップを持つスチューデント モデル Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! に抽出されます。

このうち、N はサンプリング ステップ数を表します。Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! について、研究者は、生徒モデル、教師モデルの 2 ステップ DDIM サンプリングの出力を 1 ステップで一致させます (例: t/N から t - 0.5/N、t - 0.5/N から t - 1/N)。

教師モデルの 2N ステップを生徒モデルの N ステップに抽出した後、新しい N ステップの生徒モデルを新しい教師モデルとして使用し、同じことを繰り返すことができます。教師モデルを N/2 ステップの学生モデルに蒸留するプロセス。各ステップで、研究者は教師モデルのパラメーターを使用して化学モデルを初期化します。

#N ステップの決定論的およびランダム サンプリング

モデルが完成したら Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! のトレーニングを受けた研究者は、DDIM 更新ルールを通じてサンプリングを実行できます。研究者は、蒸留モデル Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!# の場合、初期化 Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!# を考慮すると、このサンプリング プロセスが決定的であることに気付きました。

さらに、研究者は N ステップのランダム サンプリングを実行することもできます。元のステップ サイズの 2 倍の確定的サンプリング ステップ (つまり、N/2 ステップの確定的サンプラーと同じ) を使用し、その後、元のステップ サイズを使用してランダムなステップを戻します (つまり、ノイズで摂動します)。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!、t > 1/N の場合、次の更新ルールを使用できます——

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

# ##で、#########。

t=1/N の場合、研究者は決定論的更新公式を使用して Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! から Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上! を導き出します。

ランダム サンプリングを実行するには、決定論的サンプラーと比較してわずかに異なるタイム ステップでモデルを評価する必要があり、トレーニング アルゴリズムに対するエッジ ケースの小さな変更が必要であることに注意してください。

その他の蒸留方法

ブートストラップ モデルに直接順蒸留を適用する方法もあります。 、教師モデルの構造に従って、学生モデルは、共同トレーニングされた条件付きモデルと無条件モデルに直接抽出されます。研究者らが試したところ、この方法は効果がないことがわかりました。

実験と結論

モデル実験は、ImageNet (64*64) と CIFAR 10 の 2 つの標準データ セットで実施されました。

実験では、ガイダンス重み w のさまざまな範囲が調査され、すべての範囲が同等であることが観察されたため、[wmin, wmax] = [0, 4] が使用されました。実験。第 1 ステップと第 2 ステップのモデルは、信号対雑音損失を使用してトレーニングされます。

ベースライン標準には、DDPM 祖先サンプリングと DDIM サンプリングが含まれます。

ガイダンス重み w を組み込む方法をよりよく理解するために、固定 w 値でトレーニングされたモデルが参照として使用されます。

公平な比較を行うために、実験ではすべての方法で同じ事前トレーニング済み教師モデルを使用します。 U-Net (Ronneberger et al., 2015) アーキテクチャをベースラインとして使用し、同じ U-Net バックボーンを使用して、w が埋め込まれた構造が 2 ステップのスチューデント モデルとして導入されます。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

#上の図は、ImageNet 64x64 でのすべてのメソッドのパフォーマンスを示しています。ここで、D と S はそれぞれ決定的サンプラーと確率的サンプラーを表します。

実験では、誘導間隔 w∈[0, 4] を条件としたモデルのトレーニングは、w を固定値としてモデルをトレーニングした場合と同等でした。ステップ数が少ない場合、私たちの方法は DDIM ベースライン パフォーマンスを大幅に上回り、基本的に 8 ~ 16 ステップで教師モデルのパフォーマンス レベルに達します。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

#FID および IS スコアによって評価される ImageNet 64x64 のサンプリング品質

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

#CIFAR-10 のサンプリング品質を FID および IS スコアで評価

##また、教師モデルのエンコードプロセスを抽出して、スタイル転送の実験。具体的には、2 つのドメイン A と B の間でスタイル転送を実行するには、ドメイン A からの画像をドメイン A でトレーニングされた拡散モデルを使用してエンコードし、次にドメイン B でトレーニングされた拡散モデルを使用してデコードします。

Stanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!

エンコード プロセスは DDIM の逆サンプリング プロセスとして理解できるため、分類器なしのガイダンスでエンコーダとデコーダの両方を抽出し、上記のように DDIM エンコーダおよびデコーダと比較しました。図に示すように。また、ブーツ強度の変更によるパフォーマンスへの影響も調査します。

要約すると、誘導拡散モデルの蒸留方法と、蒸留されたモデルからサンプリングするランダム サンプラーを提案します。経験的に、私たちの方法はわずか 1 ステップで視覚的に高度なサンプリングを実現し、わずか 8 ~ 16 ステップで教師と同等の FID/IS スコアを取得します。

以上がStanford/Google Brain: 二重蒸留、誘導拡散モデルのサンプリング速度が 256 倍に向上!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:51cto.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート