DiT - トランスフォーマーアーキテクチャに基づく拡散モデル
DiT(拡散トランスフォーマー)は、ウィリアム・ピーブルズ(Soraの研究リーダーの一人)とニューヨーク大学の助教授である謝賽寧によって提案された新しい拡散モデルです。これは、ノイズ除去拡散確率モデル(...
DiTとは何ですか?
DiT(Diffusion Transformers)は、Soraの主要開発者の一人であるウィリアム・ピーブルズ氏とニューヨーク大学の助教授である謝賽寧氏によって提案された新しい拡散モデルです。これは、ノイズ除去拡散確率モデル(DDPM)とTransformerアーキテクチャを組み合わせたものです。拡散モデルは、データの段階的なノイズ除去プロセスをシミュレートすることで新しいサンプルを生成する生成モデルです。DiTの核心的なアイデアは、画像の潜在表現を処理するために、従来の畳み込みニューラルネットワーク(U-Netなど)の代わりに、Transformerを拡散モデルのバックボーンネットワークとして使用することです。近年、OpenAIの動画生成モデルSoraの人気に伴い、DiTはSoraの技術的基盤の一つとして広く注目を集めています。
DiTでは、まずオートエンコーダー(変分オートエンコーダー(VAE)など)を用いて画像をより小さな潜在表現に圧縮し、次にこの潜在空間で拡散モデルを学習します。これにより、高解像度のピクセル空間で拡散モデルを直接学習する場合に必要な計算コストを削減できます。DiTモデルは、Transformerの自己注意機構を通してこれらの潜在表現を処理することで、画像内の長距離依存性を捉え、高品質な画像を生成します。
DiTの公式サイトへの入り口
- 公式プロジェクトホームページ:https://www.wpeebles.com/DiT
- Arixvの研究論文:https://arxiv.org/pdf/2212.09748.pdf
- GitHubリポジトリ:https://github.com/facebookresearch/DiT
- フェイススペースを抱きしめる:https://huggingface.co/spaces/wpeebles/DiT
- Replicate Demo:https://replicate.com/arielreplicate/scalable_diffusion_with_transformers
- Google Colab ランタイムアドレス:http://colab.research.google.com/github/facebookresearch/DiT/blob/main/run_DiT.ipynb
DiTの技術原則
- データ準備:
- 入力画像は、事前学習済みの変分オートエンコーダー(VAE)を用いて潜在空間における表現にエンコードされます。この潜在表現は通常、画像の低次元表現であり、例えば、256×256×3のRGB画像を32×32×4の潜在ベクトルにエンコードします。
- この潜在表現は、DiTモデルへの入力として使用された。
- パッチング:
- 入力の潜在表現は、まず「パッチ化」と呼ばれるプロセスによって一連の小さなパッチに分割され、各パッチはTransformerモデルへの入力トークンに対応します。このプロセスは、画像を小さな断片に分割して、モデルがそれらを一つずつ処理できるようにするのと似ています。
- 各セグメントは線形埋め込みによって固定次元ベクトルに変換され、その後、位置埋め込みが追加されることで、モデルは画像内におけるセグメントの位置を理解できるようになります。
- トランスフォーマーブロックモジュール:
- 入力されたラベル付きシーケンスは、一連のTransformerブロックを通して処理されます。これらのブロックには、自己注意層、フィードフォワードニューラルネットワーク、層正規化などのコンポーネントが含まれています。
- DiTでは、研究者たちはタイムステップやクラスラベルなどの条件付き情報を処理するために、適応型層正規化(adaLN)、クロスアテンション、インコンテキスト条件付けなど、さまざまなTransformerブロック設計を実験した。
- 条件付き拡散過程:
- トレーニング中、DiTモデルは逆拡散プロセスを学習します。これは、ノイズの多いデータから鮮明な画像を復元するプロセスです。このプロセスには、予測されるノイズの平均値や共分散などの統計的特性が関係します。
- 変分下限(VLB)を用いてモデルを訓練する場合、予測されたノイズと実際のノイズとの間の平均二乗誤差(MSE)を最小化する必要があります。
- サンプル生成:
- トレーニング後、DiTモデルを使用して新しい画像を生成できます。まず、標準正規分布から潜在表現をサンプリングします。次に、DiTモデルの逆拡散処理によってノイズを徐々に除去し、最後に画像をピクセル空間にデコードして生成画像を取得します。
- 拡張性:
- DiTモデルのスケーラビリティは、Transformerにレイヤー、幅、または入力ラベルの数を追加することで計算コスト(Gflops)を増加させ、それによって生成される画像の品質を向上させる能力に反映されています。このスケーラビリティにより、DiTモデルはさまざまな解像度と複雑さで高品質の画像を生成できます。
DiTモデルは、Transformerの強力な表現力と拡散モデルの生成力を活用することで、画像生成タスクにおいて効率的かつ高品質な出力を実現します。
DiTの主な特徴
- トランスフォーマーベースのアーキテクチャ:DiTはTransformerをコアアーキテクチャとして使用しており、これによりモデルは画像の連続表現を処理し、自己注意機構を通じて画像内の長距離依存性を捉えることができる。
- 潜在空間操作:DiTは潜在空間で学習されるため、一般的にピクセル空間で直接学習するよりも効率的です。DiTは、変分オートエンコーダー(VAE)を用いて画像を潜在空間にエンコードすることで、計算量を削減します。
- 拡張性:DiTは優れたスケーラビリティを備えており、モデルの計算コスト(ギガフロップス単位)を増加させることで、生成される画像の品質を大幅に向上させることができます。このスケーラビリティにより、DiTはさまざまな解像度と複雑さの画像を生成することが可能です。
- 条件付き生成機能:DiTは条件付き生成をサポートしており、指定されたカテゴリラベルに基づいて特定のカテゴリの画像を生成できます。この機能により、DiTはドメイン固有の画像生成タスクに非常に役立ちます。
- 適応型レイヤー正規化(adaLN):DiTは、Transformerブロックで使用される正規化手法である適応型レイヤー正規化を採用しており、レイヤー正規化のパラメータを学習して調整することで、モデルの表現力と学習効率を向上させます。
- 複数の変圧器ブロック設計:DiTは、条件付き情報を処理するために、適応型レイヤー正規化(adaLN)、クロスアテンション、コンテキスト内条件付けなど、さまざまなTransformerブロック設計を探求しています。
- 効率的な研修プロセス:DiTはトレーニング中に高い安定性を示し、学習率のウォームアップや正則化技術を用いなくても一貫して高いパフォーマンスを発揮する。
- 生成される画像の多様性と品質:DiTは、高い視覚品質と多様性を備えた画像を生成できます。クラス条件付き生成の誘導強度を調整することで、生成画像の鮮明さと多様性のバランスを取ることができます。
- 高い計算効率:画像生成において、DiTは高い画像品質を維持しながら、高い計算効率を実現できます。このため、DiTはリソースが限られた環境でも魅力的な手法となります。
- 応用可能性:DiTは、芸術作品の制作、ゲーム開発、バーチャルリアリティ、データ拡張など、画像生成の分野において幅広い応用可能性を秘めており、特に高品質な画像の生成が求められる場面でその真価を発揮する。