画像生成のプロセス - テキストから画像へ

テキストプロンプトが画像に変わるまでの全工程を、ステップごとに追いかけます。

若葉 みどり 先生(笑顔) 若葉 みどり 先生

前回 Stable Diffusion の概要を学んだわね。
今日はテキストから画像ができるまでの全工程を、一歩ずつ追いかけてみましょう。

胡桃 あんず(笑い) 胡桃 あんず

待ってました!
あたしが「夕焼けの海辺を走る犬」って入力したら、裏で何が起きてるんですか?

若葉 みどり 先生(普段) 若葉 みどり 先生

よし、それを題材に行きましょう。
まずステップ1: テキスト「夕焼けの海辺を走る犬」がCLIP テキストエンコーダでベクトルに変換されるの。
「夕焼け」「海辺」「走る犬」という概念が数百次元のベクトルにまとめられて、このベクトルが以降の生成の設計図になる。

白銀 ゆき(普段) 白銀 ゆき

つまり、ベクトルが指示書という理解で合っていますか? 次は?

若葉 みどり 先生(普段) 若葉 みどり 先生

ステップ2: 潜在空間に完全ランダムなノイズを用意するの。
ここが画像生成の出発点——砂嵐画面みたいなものね。
そしてそこに、先ほどのテキストベクトルを条件として与えるの。

桜井 もも(笑顔) 桜井 もも

テキストが「こんな絵にしてね」っていうお手紙の役目をするんだね。

白銀 ゆき(普段) 白銀 ゆき

補足すると、ここでCFG(Classifier-Free Guidance)というパラメータが効いてきます。
これが「テキストにどれくらい忠実に生成するか」を制御するんですね。
CFGスケールを5〜7くらいにすると自然な解釈、12〜20に上げるとプロンプトに超忠実な(やや不自然気味の)絵になります。

若葉 みどり 先生(普段) 若葉 みどり 先生

ステップ3: 本命の処理。
U-Netというネットワークが、テキスト条件に導かれながらノイズを少しずつ除去するの。
このステップを20〜50回繰り返すわ。
ただし最近は、蒸留技術で1〜4ステップまで減らせる高速版モデルも登場している(SDXL Turbo、LCM など)。

胡桃 あんず(あせる) 胡桃 あんず

20〜50回も?
あたしには想像つかないけど、結構多いね!

白銀 ゆき(普段) 白銀 ゆき

そしてステップ4として、潜在空間で完成した「画像の設計図」をVAE デコーダが実際の画像サイズ(512×512や1024×1024)に復元します。
これで初めて人間の目で見える画像になるんですね。

胡桃 あんず(笑い) 胡桃 あんず

テキスト→ベクトル→ノイズ除去→画像復元、の4ステップか!
図にすれば覚えられそう。
よっしゃ、これなら妹にドヤ顔で説明できそうじゃん!

桜井 もも(笑顔) 桜井 もも

一歩ずつ磨き上げて、最後に大きくする——やっぱり和菓子作りに似てる。

若葉 みどり 先生(笑顔) 若葉 みどり 先生

ふふっ、ももさんらしい例えね。
試験では4ステップの流れと CFG・サンプラーの役割を整理できればOKよ。
画像の品質を左右するパラメータとして CFG スケールの他に、ステップ数、サンプラーの種類(Euler、DPM++ など)、シード値などがあるわ。

白銀 ゆき(普段) 白銀 ゆき

補足: シード値を固定すればほぼ同じ結果になるため、研究用途や再現実験で重要な要素です。
プロンプトとシードをセットで管理すると、作品の版管理もしやすくなります。

若葉 みどり 先生(普段) 若葉 みどり 先生

その通り。
裏側の流れを知れば、プロンプトの工夫もパラメータの調整も、もっと効果的にできるようになるわ。

確認クイズ

画像生成でテキストの意味を数値ベクトルに変換する役割を担うものはどれか。

  1. U-Net
  2. VAE デコーダ
  3. CLIP テキストエンコーダ
  4. 拡散スケジューラ
こたえを見る

正解: 3. CLIP テキストエンコーダ

CLIP テキストエンコーダがテキストの意味を数値ベクトルに変換し、画像生成のガイドとして使用されます。U-Net はノイズ除去、VAE デコーダは潜在→画像復元、スケジューラはノイズ除去ステップの管理を担います。

この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。

この記事について

AIパスポートスタディが作成した教材です。運営について・記事の作り方

試験についてはこちらをご覧ください: GUGA 生成AIパスポート公式ページ

この記事を共有