3行でいうと
- 拡散モデルは、砂嵐のようなノイズを少しずつ取り除く作業を何十回も繰り返し、絵を取り出す仕組みです。
- 訓練では、絵にノイズを足して、足したノイズを当てる練習をします。
- 文章の指示は、ノイズを取り除く作業の「向かう方向」を決める手がかりとして使われます。
- すべての画像生成AIが拡散モデルと公式に書かれているわけではなく、OpenAIやGoogleの最近のものは確認できていません。
この記事は公式・一次資料(論文のページ、Hugging Faceの公式ドキュメント、OpenAIとGoogleの公式ページ)を読んでまとめたものです。この記事は、実際に使って確かめた記録ではありません。
先に結論
- 拡散モデルは、ランダムなノイズ(砂嵐のような画面)から出発して、ノイズを少しずつ取り除く作業を何十回も繰り返し、絵を取り出す仕組みです。
- そのために、訓練では「絵にノイズを足して、足したノイズを当てる」練習をします。Hugging FaceのDiffusersというライブラリの公式ドキュメントは、訓練の目的を「画像に足されたノイズを予測すること」と書いています。
- 文章の指示は、ノイズを取り除く作業の「向かう方向」を決める手がかりとして使われます。
- すべての画像生成AIが拡散モデルだと、公式資料に書かれているわけではありません。OpenAIやGoogleの最近の画像生成について、公式ページは作り方を詳しく書いておらず、拡散モデルかどうかは確認できていません。
たとえ話:砂嵐の画面から、絵を浮かび上がらせる
テレビの砂嵐の画面を思い浮かべてください。ざらざらの点が並んでいるだけです。
ここに、「この砂嵐は、猫の絵に点をまぶしたものだ」と教えてもらえるとします。猫の絵が見えているわけではありませんが、「この点は余計なものだ」と、少しだけ取り除けます。取り除いた画面を、もう一度見る。まだ余計な点があるので、また少し取り除く。これを何十回も繰り返すと、猫の絵が浮かび上がります。
拡散モデルは、この「余計な点(ノイズ)を見つけて取り除く」ことを、大量の絵で練習したAIです。
仕組みを、順番に
1. 訓練:絵にノイズを足して、足した分を当てる
Hugging Faceの訓練のドキュメントによると、訓練の1回分は、次のようにして行います。
- 訓練用の絵を1枚選ぶ。
- 「どのくらいノイズを足すか」を、ランダムに決める(段階が番号で決まっていて、ドキュメントの例では1,000段階です)。番号が大きいほど、ノイズが多く、元の絵が分からなくなります。
- その分のノイズを、絵に足す。
- ノイズだらけの絵と、段階の番号を、モデルに渡す。モデルは「どんなノイズが足されたか」を予想する。
- 予想と、実際に足したノイズの差(平均二乗誤差という数字)を計算し、差が小さくなるように、モデルを少し直す。
これを大量の絵で繰り返します。ドキュメントは、この訓練の目的を、モデルが「画像に足されたノイズを予測すること」と説明しています。拡散モデルの原点にあたる論文(Ho、Jain、Abbeel、2020年6月、「Denoising Diffusion Probabilistic Models」)は、拡散モデルで質の高い画像の合成ができることを示した研究として、arXivに公開されています。
2. 生成:ノイズから出発して、少しずつ取り除く
絵を作るときは、逆向きに進みます。Hugging Faceの「パイプラインの仕組み」のドキュメントには、次の流れが書かれています。
- 出力したい大きさのランダムなノイズを用意する。
- 各段階で、モデルが「いま含まれているノイズ」を予測する。
- スケジューラ(ノイズを取り除く手順を決める部品)が、その予測を使って、少しノイズの少ない絵を作る。
- 2と3を、決まった回数だけ繰り返す。
ドキュメントの例では、50回です。繰り返しの回数(ステップ数)は、速さと質のバランスを決めます。同じ公式ドキュメントは、回数を減らすと計算は減るが質が下がることがあり、DPMSolverという手順なら20〜25回ほどで済む、と書いています。また、ノイズを取り除く作業が、拡散の中でいちばん計算が重い、とも書いています。
3. 文章の指示は、どう効くのか
画像生成AIは、文章の指示(プロンプト)をそのまま絵に変えるのではありません。Diffusersのドキュメントによると、Stable Diffusionでは、次のように使われます。
- 指示の文章は、まず小さな単位に切り分けられ、文章の意味を数字の並び(埋め込み)にする専用の部品(テキストエンコーダ)に通されます。
- その数字が、ノイズを予測するモデルに渡され、「指示に近づくように」ノイズの取り除き方を導きます。
この仕組みの元になった論文(Rombachら、2021年12月、「High-Resolution Image Synthesis with Latent Diffusion Models」)は、モデルの中に「クロスアテンション」という層を加えることで、文章や位置の枠のような条件を受け付けられるようにした、と書いています。
さらに、「どれだけ指示を重く見るか」を調整する値(ガイダンススケール)があります。ドキュメントのコード例では、この値を7.5に設定し(例の設定値です)、指示に従った予測と、指示なしの予測を比べて、その差を大きくする計算をしています。なお、StableDiffusionPipelineの公式リファレンスでは、この引数の初期値が7.5と書かれています。
指示の書き方についてのドキュメントの助言は、絵の種類(写真、イラストなど)、主役、画風、雰囲気を書くことです。避けたい特徴を伝える「ネガティブプロンプト」(例:低品質、ぼやけた)という使い方も紹介されています。
4. 作業を軽くする工夫:「潜在空間」
絵のピクセル(点)そのものを扱うと、計算が膨大になります。上の論文は、画像を小さく圧縮した表現(潜在空間)の中で拡散を行うことで、計算の費用を大きく減らせる、と書いています。DiffusersのドキュメントのStable Diffusionの例では、この小さな表現は、出力する絵の縦横の8分の1の大きさです。ノイズを取り除く作業を終えたあと、「VAE」という部品(圧縮を元に戻す役)が、絵に直します。
「拡散」だけではない:最近の動き
- 別の訓練のしかた:Esserらが2024年3月にarXivで公開した論文は、ノイズとデータを一直線につなぐ「rectified flow(整流フロー)」という方法と、文章用と画像用に別の重みを持つ新しい構造(トランスフォーマー)を組み合わせると、高解像度の画像生成で、従来の拡散の方法より良い結果が出た、と報告しています。これは論文の主張で、この記事では確かめていません。
- OpenAI:2025年3月25日の発表で、GPT-4oの画像生成について、オンラインの画像と文章をいっしょに学習させた、「ネイティブにマルチモーダル」なモデルと説明しています。この発表ページには、「拡散モデル」か否かの記述は見つけられませんでした。
- Google:DeepMindの公式ページは、画像を生成する「Nano Banana」系のモデルがGeminiをもとにしていると書いています。拡散モデルかどうかは、書かれていません。
見立てです。「画像生成AI=拡散モデル」と覚えると、仕組みの入り口としては分かりやすいですが、最近のサービスは、文章を扱うAIと一体になる方向にも動いているように見えます。中身は会社ごとに違い、非公開のことも多いので、一般的な説明を個々のサービスに当てはめすぎないほうがよいと思います。
実際の使い道と、よくある失敗
- 同じ指示でも、毎回違う絵が出る:Diffusersのドキュメントは、拡散は「ランダムな過程」で、望む絵が出るまで、何度か実行が必要なことがある、と書いています。出発点のノイズがランダムなので、当然の動きです。
- 出力の速さと質は、ステップ数で変わる:上のとおりです。サービスによっては、利用者が回数を選べない場合もあります。
- 苦手なこと:OpenAIの発表は、GPT-4oの画像生成の限界として、長い画像(ポスターなど)を端で切りすぎる、事実と違う内容、複数の物と特徴の正しい結びつけ、正確なグラフ、多言語の文字の描き込み、編集の精度、小さな文字が多い密な情報を挙げています。「完璧ではない」とも書いています。
- 出自を示す印:OpenAIは、生成した画像にC2PAというメタデータ(画像の出どころを示す情報)を付けると書いています。画像を加工したり再保存したりしたときに、この情報が残るかどうかは、読んだ資料では確認できていません。
誤解されやすい点
「元の絵を探して、貼り合わせている」と書かれているわけではない
公式の資料に書かれているのは、「ノイズを予測する練習をして、ノイズから絵を作る」という説明です。データベースから絵を探して貼り合わせる、という説明は、読んだ資料には出てきません。ただし、訓練に使われた絵と、できあがった絵がどのくらい似るのかは、この記事では調べていません。著作権の話は、同じ連載の別の記事で扱っています。
「文章を理解して、頭の中でイメージしている」とは書かれていない
公式の資料は、文章を数字に直して、ノイズを取り除く方向の手がかりに使う、と説明しています。「理解」という言葉の意味は、資料からは判断できません。
「AIの絵は、事実どおり」とは限らない
OpenAI自身が、事実と違う内容が出る、と認めています。実在の人物や場所、図、グラフを描かせる場合は、元の情報と見比べてください。
気をつけること
- 仕組みの説明は、Stable Diffusionなどの公開されたモデルを土台にした、Hugging FaceのDiffusersのドキュメントと論文に基づきます。ChatGPTやGeminiなどのサービスの中身が、これと同じかどうかは、確認できていません。
- 「1,000段階」「50回」「8分の1」は、ドキュメントのコードの例の数字です。「7.5」は、コードの例の設定値で、StableDiffusionPipelineのリファレンスでは初期値としても書かれていますが、他のモデルやサービスでは違う可能性があります。サービスの実際の数字は、非公開か、確認できていません。
- rectified flowの論文は、研究者の報告です。論文のページには「Stable Diffusion 3」という名前が書かれておらず、この記事ではその関係を、この記事では確かめていません。
- OpenAIの限界の一覧は、2025年3月の発表のものです。その後のモデルでは、変わっている可能性があります。最新の画像生成サービスの限界は、確認していません。
- 画像生成AIで作った画像の権利や、実在の人物の画像の扱いは、別の問題です。この記事では扱っていません。法律に関わる判断は、専門家にご相談ください。
- 日常語に直すために、たとえ話を使いました。実際の数式や計算は、もっと複雑です。
出典
- Denoising Diffusion Probabilistic Models(arXiv、Ho・Jain・Abbeel、2020年、2026年10月8日確認)
- High-Resolution Image Synthesis with Latent Diffusion Models(arXiv、Rombachら、2021年、2026年10月8日確認)
- Scaling Rectified Flow Transformers for High-Resolution Image Synthesis(arXiv、Esserら、2024年、2026年10月8日確認)
- Train a diffusion model(Diffusers Docs、Hugging Face、2026年10月8日確認)
- Understanding pipelines, models and schedulers(Diffusers Docs、Hugging Face、2026年10月22日確認)
- Text-to-image(StableDiffusionPipeline、Diffusers Docs、Hugging Face、2026年10月22日確認)
- Basic performance(Diffusers Docs、Hugging Face、2026年10月8日確認)
- Introducing 4o Image Generation(OpenAI、2025年3月25日公開、2026年10月8日確認)
- Nano Banana(Google DeepMind、2026年10月8日確認)
更新履歴
-
2026年10月25日 書き方を直しました。
- 前:運営者が使っていないと読める書き方 → いま:「この記事は、実際に使って確かめた記録ではありません」。公式の資料を読んでまとめた記事で、使い心地は書いていない、という意味に直した
-
2026年10月22日 公式の資料を読み直して、次の点を直しました。
- 前:ガイダンススケールの既定値が7.5(ドキュメントの例) → いま:7.5はコード例の設定値。StableDiffusionPipelineのリファレンスでは初期値と書かれている
- 前:7.5は、モデルによって違う例の数字 → いま:他のモデルやサービスでは違う可能性がある。サービスの実際の数字は確認できていない
