用語集

拡散モデル

ディフュージョンモデルが、比類ないディテールと安定性を備えたリアルな画像、ビデオ、データを作成することで、ジェネレーティブAIにどのような革命をもたらすかをご覧ください。

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

拡散モデルは、機械学習(ML)における生成モデルの一種であり、特にコンピュータビジョン(CV)の領域において、高品質で多様なサンプルを生成する能力で大きな注目を集めている。熱力学の概念にインスパイアされたこのモデルは、データ(画像のような)が純粋なノイズになるまで、「順方向プロセス」において系統的にノイズを加え、その後、このプロセスを逆転させることを学習することで機能する。逆プロセス」では、ランダムなノイズから出発し、現実的なデータサンプルが生成されるまでそれを繰り返し改良しながら、徐々にノイズを除去するためにニューラルネットワークを訓練する。

拡散モデルの仕組み

核となるアイデアは2段階ある:

  1. 前方拡散プロセス:この段階では、元のデータサンプル(例えば画像)を取り、何段階にもわたって少量のガウスノイズを徐々に加えていく。このプロセスは、元の画像がランダムノイズと区別できなくなるまで続けられる。この段階は固定であり、学習は伴わない。
  2. 逆デノイジング処理:ここで学習が行われる。モデル(通常はU-Netのような高度なニューラルネットワークアーキテクチャ)は、フォワードプロセスの各ステップで追加されるノイズを予測するように学習される。生成中、モデルは純粋なノイズから開始し、学習された予測を使用して、同じステップ数にわたって徐々にノイズを除去し、効果的に拡散を反転させ、新しいデータサンプルを生成します。このステップ・バイ・ステップの精密化により、非常に詳細な出力を作成することができる。

他の生成モデルとの比較

拡散モデルは、Generative Adversarial Networks(GAN)のような他の一般的な生成アプローチとは大きく異なる。GANは生成器と識別器が互いに競合し、しばしば学習が不安定になるが、拡散モデルはより安定した学習ダイナミクスを持つ傾向がある。拡散モデルは、GANに比べてサンプルの多様性と品質に優れていることが多いが、推論(生成)時に多くの計算ステップを必要とするため、処理速度が遅くなる。圧縮された潜在空間を学習する変分オートエンコーダ(VAE)とは異なり、拡散モデルはノイズ除去やノイズ除去プロセスを通じてデータ空間で直接動作する。一般的な拡散モデルは安定拡散(Stable Diffusion)で、その効率性と高品質な出力で知られています。

拡散モデルの応用

拡散モデルは、忠実度の高いジェネレーションを必要とするタスクを得意とする:

  • テキストから画像への合成 GoogleImagenやOpenAIのDALL-E 2のようなモデルは、テキストの説明に基づいて詳細な画像を生成する拡散技術を利用している。ユーザーはプロンプトを提供することができ、モデルは対応するビジュアルを作成する。
  • 医療画像解析学習データの増強のための合成医用画像の生成、スキャン品質を向上させるための画像超解像、あるいは健康な組織の分布を学習することによる異常検出などのタスクに使用することができる。例えば、現実的なMRIやCTスキャンを生成することで、限られた患者データのみに頼ることなく診断AIモデルを訓練し、腫瘍の画像セグメンテーションなどのタスクを補完することができる。
  • その他の分野音声生成、ビデオ生成(Google Veoのような)、創薬のための分子設計、データ圧縮などでの利用が研究されている。

以下のようなフレームワーク PyTorchHugging Face Diffusersライブラリのようなライブラリは、ツールや事前に訓練されたモデルを提供し、開発者が拡散モデルを実験し、展開することを容易にします。多様で高品質なデータを生成する能力により、これらは現在進行中のジェネレーティブAIの進化において強力なツールとなる。

すべて読む