Stable Diffusion とは何ですか?
Stable Diffusion は、テキストや画像プロンプトから写真のようにリアルな独自の画像を生成する生成型人工知能 (生成 AI) モデルです。これは 2022 年に初めてリリースされました。画像以外にも、モデルを使用して動画やアニメーションを作成することもできます。このモデルは拡散技術に基づいており、潜在空間を利用します。これにより、処理要件が大幅に緩和され、GPU を搭載したデスクトップまたはノートパソコンでモデルを実行できます。Stable Diffusion は、転移学習を通じて、わずか 5 枚の画像を使用するだけで特定のニーズに合わせて微調整できます。
Stable Diffusion は、パーミッシブライセンスの下で誰でも利用できます。この点において、Stable Diffusion は従来のモデルとは異なります。
Stable Diffusion が重要なのはなぜですか?
Stable Diffusion が重要なのは、アクセスしやすく使いやすいからです。消費者向けのグラフィックカードでも動作します。誰でもモデルをダウンロードし、画像を生成することができるのは初めてのことです。また、ノイズ除去ステップの数や適用されるノイズの程度など、主要なハイパーパラメータを制御することもできます。
Stable Diffusion は使い方が分かりやすく、画像作成に追加情報は必要ありません。活発なコミュニティがあるため、Stable Diffusion には豊富なドキュメントと操作方法のチュートリアルが用意されています。このソフトウェアリリースは Creative ML OpenRAIL-M ライセンスに基づいており、改変したソフトウェアの使用、変更、再配布が可能です。派生ソフトウェアをリリースする場合は、同じライセンスの元でリリースし、元の Stable Diffusion ライセンスのコピーを含める必要があります。
Stable Diffusion はどのように機能しますか?
拡散モデルとしての Stable Diffusion は、他の多くの画像生成モデルとは異なります。原則として、拡散モデルはガウシアンノイズを使用して画像をエンコードします。次に、ノイズ予測器と逆拡散プロセスを併用して画像を再現します。
拡散モデルの技術的な違いとは別に、Stable Diffusion は画像のピクセル空間を使用しないという点で独特です。代わりに、低解像度の潜在空間を使用します。
これは、解像度が 512x512 のカラー画像には 786,432 の可能な値があるためです。それに比べて、Stable Diffusion では、値が 16,384 の 48 倍小さい圧縮画像を使用します。これにより、処理要件が大幅に軽減されます。これが、8 GB の RAM が組み込まれた NVIDIA GPU を搭載したデスクトップで Stable Diffusion を使用できる理由です。自然な画像はランダムではないため、潜在空間を小さくすると効果的です。Stable Diffusion は、デコーダー内の変分オートエンコーダー (VAE) ファイルを使用して、目のような細かいディテールをペイントします。
Stable Diffusion V1 は、LAION が Common Crawl を通じて収集した 3 つのデータセットを使用してトレーニングされました。これには、美的評価が 6 以上の画像の LAION-Aesthetics v2.6 データセットが含まれています。
Stable Diffusion はどのようなアーキテクチャを使用していますか?
Stable Diffusion の主なアーキテクチャコンポーネントには、変分オートエンコーダー、順拡散と逆拡散、ノイズ予測器、テキストコンディショニングなどがあります。
変分オートエンコーダー
変分オートエンコーダーは、独立したエンコーダーとデコーダーで構成されています。エンコーダーは、512x512 ピクセルの画像を、操作が容易な潜在空間内の小さな 64x64 モデルに圧縮します。デコーダーは、モデルを潜在空間からフルサイズの 512x512 ピクセル画像に復元します。
順拡散
順拡散では、ランダムノイズだけが残るようになるまで、画像にガウスノイズを徐々に加えます。最終的なノイズの多い画像から、その画像が何であったかを特定することはできません。トレーニング中、すべての画像がこのプロセスを経ることになります。順拡散は、画像から画像への変換を行う場合を除いて、これ以上使用されません。
逆拡散
このプロセスは基本的に、順拡散を反復的に元に戻すパラメータ化されたプロセスです。たとえば、猫と犬のように 2 つの画像だけを使用してモデルをトレーニングするとします。そうした場合、逆のプロセスは猫か犬のどちらかに向かい、その中間はありません。実際には、モデルトレーニングには数十億の画像が含まれ、プロンプトを使用して独自の画像を作成します。
ノイズ予測器 (U-Net)
ノイズ予測器は画像のノイズ除去の鍵となります。Stable Diffusion では、U-Net モデルを使用して除去を実行します。U-Net モデルは、もともと生物医学における画像セグメンテーションのために開発された畳み込みニューラルネットワークです。特に、Stable Diffusion では、コンピュータビジョン用に開発された残差ニューラルネットワーク (ResNet) モデルを使用しています。
ノイズ予測器は潜在空間のノイズ量を推定し、それを画像から差し引きます。この処理を指定回数繰り返し、ユーザー指定の手順に従ってノイズを低減します。ノイズ予測器は、最終的な画像の決定に役立つコンディショニングプロンプトに敏感です。
テキストコンディショニング
最も一般的なコンディショニングの形式はテキストプロンプトです。CLIP トークナイザーはテキストプロンプトの各単語を分析し、このデータを 768 値のベクトルに埋め込みます。1 つのプロンプトで最大 75 個のトークンを使用できます。Stable Diffusion は、テキスト変換器を使用して、これらのプロンプトをテキストエンコーダーから U-Net ノイズ予測器に送ります。シードを乱数ジェネレーターに設定することで、潜在空間にさまざまな画像を生成できます。
Stable Diffusion では何ができますか?
Stable Diffusion は、テキストから画像へのモデル生成における顕著な向上を表しています。広く利用でき、他の多くのテキストから画像への生成モデルよりも処理能力が大幅に低くて済みます。その機能には、テキストから画像への生成、画像から画像への生成、グラフィックアートワーク、画像編集、動画作成などがあります。
テキストから画像への生成
これは、ユーザーが Stable Diffusion を使用する最も一般的な方法です。Stable Diffusion は、テキストプロンプトを使用して画像を生成します。乱数ジェネレーターのシード番号を調整するか、さまざまな効果のノイズ除去スケジュールを変更することで、さまざまな画像を作成できます。
画像から画像への生成
入力画像とテキストプロンプトを使用して、入力画像に基づいて画像を作成できます。一般的なケースは、スケッチと適切なプロンプトを使用することです。
グラフィック、アートワーク、ロゴの作成
選択したプロンプトを使用して、さまざまなスタイルのアートワーク、グラフィック、ロゴを作成できます。もちろん、出力を事前に決定することはできませんが、スケッチを使用してロゴの作成をガイドすることはできます。
画像編集とレタッチ
Stable Diffusion を使用して、写真の編集やレタッチを行うことができます。AI Editor を使用して画像を読み込み、消しゴムブラシを使用して編集する領域をマスクします。次に、目的を定義するプロンプトを生成して、写真を編集または修復します。たとえば、古い写真を修復したり、写真からオブジェクトを削除したり、被写体の特徴を変更したり、写真に新しい要素を追加したりできます。
動画制作
GitHub の Deforum などの機能を使えば、Stable Diffusion で短いビデオクリップやアニメーションを作成することができます。別の用途としては、動画にさまざまなスタイルを追加することがあります。 また、流れる水のような動きの印象を作り出して、写真をアニメーション化することもできます。
AWS は Stable Diffusion にどのように役立ちますか?
Amazon Bedrock は、基盤モデルを使用して生成系 AI アプリケーションを構築およびスケールする最も簡単な方法です。Amazon Bedrock は、Stable Diffusion などの主要な基盤モデルを API を通じて利用できるようにする完全マネージド型サービスです。そのため、さまざまな FM から選択して、ユースケースに最も適したモデルを見つけることができます。 Bedrock を使用すると、インフラストラクチャを管理しなくても、スケーラブルで信頼性が高く、安全な生成系 AI アプリケーションの開発とデプロイをスピードアップできます。
モデル、アルゴリズム、ソリューションを提供する機械学習ハブである Amazon SageMaker JumpStart では、Stable Diffusion などの一般に公開されている最高性能の基盤モデルを含め、数百の基盤モデルにアクセスできます。画像生成モデルの最新バージョンである Stable Diffusion XL 1.0 など、新しい基盤モデルが引き続き追加されています。