画像生成AIがノイズから絵を作る意外な仕組み
画像出典: パブリックドメイン(Wikimedia Commons)
画像生成AIの中核は「拡散モデル」で、元の画像にノイズを少しずつ足していく過程を逆再生する形で絵を作ります。AIが学んでいるのは「絵の描き方」ではなく「今この画像に混ざっているノイズはどれか」を当てる力だけで、その推定を数十〜数千回くり返した結果として絵が現れます。文章の指示は、テキストを数値の列に変換したうえでノイズ推定のたびに参照させることで反映されています。
プロンプトを入れると数秒で絵が出てくる——使っている側からは、AIが頭の中に完成図を思い浮かべて描いているように見えます。ところが実際の中身は、想像とはかなり違います。最初にあるのは、砂嵐のようなランダムなノイズです。
正直なところ、この話は「絵を描くAI」という言葉から受ける印象を一度捨てないと入ってきません。今のAIがやっているのは、描くことではなく消すことだからです。
画像生成AIの中核にある「拡散モデル」とは?
Stable Diffusion、DALL-E、Midjourneyといった主要な画像生成AIは、いずれも拡散モデル(Diffusion Model)という技術を中核に据えています。ランダムなノイズから出発し、段階的にノイズを取り除いていくことで画像を作り出す方式です。
ここでいうノイズは、電波の入っていないテレビ画面に映る砂嵐のような、意味のない点の集まりだと思ってください。そこには猫も風景も入っていません。にもかかわらず、そこから猫の写真が出てきます。
この不思議さの正体は、学習のさせ方にあります。
学習は「壊す」と「戻す」の二段構え
拡散モデルの学習は、次の2つの過程からできています。
- 拡散過程(forward process)元の画像に、少しずつガウシアンノイズ(統計的にばらついた雑音)を加えていきます。何段階も繰り返すと、最後は元が何だったか分からない完全なノイズになります。
- 逆拡散過程(reverse process)ニューラルネットワークに、この逆をたどらせます。ノイズが乗った画像から少しずつノイズを除き、元の画像に近いものを復元することを学習させます。
ポイントは、壊す側の手順が完全に分かっているという点です。どの段階でどれだけノイズを足したかは、こちらが決めているので既知です。だから「この状態から、足したノイズを当ててごらん」という問題を、答え付きで無限に作れます。AIはこの問題を大量に解かされ続けます。
そして生成のときは、元画像を用意しません。本物のランダムノイズを一枚用意して、そこから逆過程だけを走らせます。AIは「これもノイズが乗った画像なのだろう」と扱い、律儀にノイズを削り始めます。削り終わったときに残っているのが、新しい画像です。
AIは絵ではなく「ノイズの量」を予測している
もう少し中を覗きます。逆過程の各ステップでニューラルネットワークが出しているのは、完成した絵ではありません。「今この画像に含まれるノイズ成分はどれくらいか」という推定値です。それを差し引くと、ほんの少しだけクリアな画像になります。この推定と減算を数十〜数千ステップ繰り返します。
初期の代表的な研究では、1000ステップ程度のノイズ除去を行うのが一般的でした(実装やモデルによって変わります)。一発で絵を描くのではなく、極端に小さな修正を大量に積むわけです。
絵そのものを一度に予測させるのは、AIにとって難しすぎる課題です。一方「この画像、少しざらついてますよね。どのくらい?」なら、答えが小さく、外しても次のステップで挽回できます。難問を、易しい問題の長い連鎖に分解している——これが拡散モデルの発想の核心です。
この処理を担うのがU-Netと呼ばれるネットワーク構造で、もともとは医療画像から臓器などの領域を切り出す用途で開発されたものです。画像を縮小していくエンコーダと拡大していくデコーダを左右対称に並べ、その間をスキップ接続(縮小前の情報を対応する拡大側へ直接渡す配線)でつないだ形をしています。細かい質感を失わずに全体の構図も見られるため、ノイズ推定に向いています。
拡散モデルは、彫刻家が大理石の塊から不要な部分を削り、中にある像を掘り出す作業にたとえられます。イメージを掴むには便利な比喩ですが、これは編集部による説明であって、公式文献に書かれた表現ではありません。実際には削る対象は石ではなく数値のノイズで、どこを削るかはAIが毎ステップ推定し直しています。
この方式はいつ確立された?
拡散モデルで高品質な画像生成ができることを示した代表的な論文が、「Denoising Diffusion Probabilistic Models」(DDPM)です。UC BerkeleyのJonathan Ho、Ajay Jain、Pieter Abbeelの3氏によるもので、2020年6月19日にarXivへ初版が投稿され、同年12月16日に改訂版が出ています。
この論文は、拡散確率モデルと、Langevin動力学(少しずつランダムな揺らぎを加えながら、確率の高い状態へデータを動かしていく数理的な手法)によるデノイジングスコアマッチング(データの分布の勾配を手がかりにノイズを除く手法)との関連を確立し、それを学習手法に応用しました。成果として、CIFAR10という画像データセットでInceptionスコア(生成された画像がどれだけ鮮明で、かつ種類にばらつきがあるかを測る指標。高いほど良い)9.46、FIDスコア(生成画像の分布が本物の画像の分布とどれだけ近いかを測る指標。こちらは低いほど良い)3.17を達成し、LSUN(寝室や教会など、場面ごとに大量の写真を集めた画像データセット)の256×256画像では当時の代表的な生成モデルであるProgressiveGANに匹敵する性能を示しています。
スコアの数字そのものより、意味のほうが重要です。それまで画像生成の主役だったGANと同等の絵が、まったく違う原理から出せると示された——ここが、今日のブームの入口になりました。
なぜ手元のPCでも動くようになった?
DDPMの方式には弱点がありました。ピクセル単位でノイズ除去を千回も繰り返すため、計算量が膨大になることです。

この計算コストを大きく下げたのが、Stable Diffusionの基礎技術である潜在拡散モデル(Latent Diffusion Model, LDM)です。Robin Rombach氏らによる論文「High-Resolution Image Synthesis with Latent Diffusion Models」で提案され、CVPR 2022(コンピュータビジョン分野の主要な国際会議)で発表されました。
「潜在空間」で削るとはどういうことか
LDMの核心は、ノイズ除去を画像そのもの(ピクセル空間)ではなく、事前学習したオートエンコーダー(画像を圧縮して小さな数値の列に変え、そこから元の画像へ復元し直すことを学習したネットワーク)が作る低次元の潜在空間(latent space)で行う点にあります。
潜在空間は、画像を圧縮して要点だけを残した表現だと考えてください。写真そのものを一画素ずつ扱う代わりに、「構図と質感の設計図」の上で作業するイメージです。設計図は元の画像よりずっと小さいので、同じ回数の削り作業でも計算量が大幅に減ります。作業が終わってから、デコーダーが設計図を実際の画像に戻します。
高解像度データを直接扱うより計算コストを大きく削減しながら、画質を維持できる——これが、画像生成AIが研究室の外へ出られた理由です。
文章の指示は、どこで絵に反映される?
文章が効いているのは、ノイズを推定するその瞬間です。
Stable Diffusionでは、入力されたテキストをまずOpenAIが開発したCLIPというモデルのテキストエンコーダーに通し、埋め込みベクトル(意味を表す数値の列)へ変換します。人間の言葉のままではネットワークが扱えないため、計算できる形にするわけです。
そしてLDMは、アーキテクチャにクロスアテンション層を導入しました。アテンションは「今の処理でどの情報を重視するか」を決める仕組みで、クロスアテンションはそれを画像側とテキスト側のあいだで行います。ノイズ除去の各ステップで、U-Netはこの埋め込みベクトルを参照し、「どんな画像に近づけるべきか」という条件を見ながらノイズを推定します。
削り方が毎回ほんの少しずつ言葉に引っ張られる。それが千回積み重なった結果として、青い傘をさした猫が現れます。この条件付けの仕組みは文章に限らず、バウンディングボックス(画像内の位置を示す枠)のような入力にも対応でき、拡散モデルを柔軟な生成器へと発展させました。
- ランダムなノイズを1枚用意する
- プロンプトをCLIPで数値の列に変換する
- U-Netがその数値を参照しながら、除くべきノイズ量を推定する
- 推定分を差し引く。これを数十〜数千回くり返す
- 潜在空間での作業をデコーダーが画像へ戻す
指示どおりに描かせるための改良はどこで起きた?
「プロンプトの一部が無視される」という不満は、多くの人が経験しているはずです。ここに正面から取り組んだのがOpenAIのDALL-E 3で、着目したのは生成モデル本体ではなく学習データのキャプション(説明文)の質でした。
ネット上の画像に付いている説明文は、たいてい雑です。「今日の夕飯」としか書かれていない写真から、AIは何が写っているかを正確には学べません。そこでOpenAIは、まず高性能な画像キャプション生成モデルを別途訓練し、それを使って学習用画像の説明文を高精度に書き直したうえでDALL-E 3を学習させました。
結果として学習データは、95%がAI生成の合成キャプション、5%が人間による正解キャプションという構成になっています。この手法によって、ユーザーが入力した文章の指示によりよく従う生成が可能になったとされています。
つまり指示追従の良し悪しは、モデルの大きさだけでなく「AIがどんな言葉で世界を教わったか」に強く依存します。なお同モデルは、生成前のプロンプトと生成後の画像の両方に多層的な安全性チェックをかけ、有害コンテンツの生成を制限する仕組みも備えています。
拡散モデルはこの先どう変わる?
ここまで説明してきたU-Net中心の構成も、すでに次の段階へ進みつつあります。Stability AIが2024年2月22日に早期プレビューを発表したStable Diffusion 3は、従来のU-NetベースからDiffusion Transformer(拡散トランスフォーマー)アーキテクチャへ移り、さらにFlow Matching(フローマッチング)という手法を組み合わせています。
Flow Matchingは連続正規化フロー(単純なノイズの分布から画像の分布へ、なめらかに連続的に変形していく道筋を学ぶモデル)を訓練するための技術で、より効率的な学習・サンプリングと高い生成品質につながるとされています。ノイズから画像へ向かう道筋を、より素直な経路として学習させる方向の改良だと捉えると分かりやすいはずです。
また同モデルは、パラメータ数8億(800M)から80億(8B)まで複数サイズが用意され、開発者が用途に応じて選択・ファインチューニングできる構成になっています。
Stable Diffusion 3.5、DALL-Eの最新版、Midjourney v7などの詳細なアーキテクチャは公開されていない部分が多く、企業ブログの発表内容を超える技術詳細(パラメータ数の正確な内訳など)は分かりません。解説記事で断定的に書かれていても、出典が公式発表まで遡れるかは確かめる価値があります。
しくみを知ると、使い方の何が変わる?
原理が分かると、日々の生成でぶつかる現象の理由が見えてきます。
- 同じプロンプトでも毎回違う絵が出る … 出発点のノイズが毎回別物だから。シード値を固定すると再現しやすくなるのはこのため
- ステップ数を増やすと変わる … ノイズ推定と減算の回数そのものを増減させている
- プロンプトの語が効いたり効かなかったりする … 各ステップでどの語に注意を向けるかは、クロスアテンションの重み付けに委ねられている
- 細部が破綻しやすい … AIは絵の意味を理解して描いているのではなく、ノイズ量の推定を積み重ねているだけ
最後の点はとくに大事です。画像生成AIは「正しい絵」を知っているわけではなく、学習データの傾向に沿ってノイズを削っているにすぎません。手指の本数や文字の並びが崩れるのは、その工程の必然的な副産物です。
難しい理屈を全部覚える必要はありません。「AIは描いているのではなく削っている」——この一点を持っておくだけで、出力が思いどおりにならないときに、何を変えれば良いかの見当がつくようになります。
よくある質問
拡散モデルは、なぜノイズから画像を作れるのですか?
学習時に「元の画像へ少しずつノイズを加える」過程を作り、ニューラルネットワークにその逆をたどらせているためです。加えたノイズ量は既知なので、AIは「今の画像に含まれるノイズはどれくらいか」を答え付きで大量に訓練できます。生成時は本物のランダムノイズを入力し、学習済みの逆過程だけを走らせることで新しい画像が現れます。
画像生成AIが予測しているのは、絵そのものですか?
違います。各ステップでニューラルネットワークが推定しているのは「現在の画像に含まれるノイズ成分の量」で、それを差し引くことで少しだけクリアな画像になります。この推定と減算を数十〜数千ステップ繰り返した結果として画像が完成します。初期の代表的な研究では1000ステップ程度が一般的でした。
入力した文章は、生成のどの部分で反映されるのですか?
テキストはCLIPなどのテキストエンコーダーで埋め込みベクトル(意味を表す数値の列)に変換され、ノイズ除去の各ステップでクロスアテンション層を通じて参照されます。U-Netはこの条件情報を見ながら「どんな画像に近づけるべきか」を判断してノイズを推定するため、削り方が毎回わずかに言葉へ引き寄せられます。
Stable Diffusionが手元の環境でも動くのはなぜですか?
潜在拡散モデル(Latent Diffusion Model)という方式を採り、ノイズ除去を画像そのものではなく、オートエンコーダー(画像を圧縮して小さな数値の列に変え、元へ復元し直すことを学習したネットワーク)が作る低次元の潜在空間で行っているためです。高解像度のピクセルを直接処理するより計算コストを大幅に削減しながら、高い画質を維持できます。この技術はCVPR 2022で発表された論文で提案されました。
※記事で使用した内容・数値は変更される場合があります。最新情報は公式サイトをご確認ください。