はじめに:MidjourneyやDALL-Eの中身は何をしているのか
「AIが絵を描く」と聞くと、何かとても複雑なことをしているように感じます。実際、MidjourneyやDALL-E、Stable Diffusionなど、いま画像生成AIと呼ばれているツールの多くは、Diffusion Model(拡散モデル)という同じ仕組みを下敷きにしています。中身を覗いてみると、「画像にノイズを加える」「加えたノイズを当てる」という、思いのほかシンプルな考え方の積み重ねでできています。
この記事では、ぽぽまる(青いルリビタキの社内マスコット)の画像を題材に、ノイズを加える前向きの過程を見たあと、MNISTの手書き数字でDDPMをゼロから実装し、ノイズから絵が立ち上がってくる様子を実際の学習結果でお見せします。最後に、最近では言語生成にも拡散モデルが使われ始めている話に触れます。

Forward Process ─ きれいな画像にノイズを少しずつ加える
拡散モデルの出発点は、いたってシンプルです。「きれいな画像 に、毎ステップ少しずつガウスノイズを加えていく」という操作を1000ステップほど繰り返します。十分なステップを経ると、もとの画像はほぼ完全な砂嵐ノイズになります。下の図は、ぽぽまる(青いルリビタキ)の画像をステップでノイズ化していく途中経過です。
ステップごとの分布は、次のように一発で書けます。 から への遷移はガウス分布で表現できます。

ここで は、各ステップでどれだけ元画像が残っていて、どれだけノイズが混ざっているかを決めるスケジュール(でほぼ1、でほぼ0)です。式を眺めると、要するに「 を縮めて、ノイズを足す」というだけのことを言っているとわかります。
学習:「いま見えているノイズ」を当てる練習
Forward Process は単なる数式上の操作で、学習対象ではありません。学習されるのは、それを逆に辿る部分です。具体的には、「ノイズが混ざった画像 と、いま何ステップ目か を見て、加わっているノイズ がどれかを当てる」という小さなゲームを、ニューラルネット にひたすら解かせます。

学習はこれだけです。ノイズの当てっこを上手にできるネットワークができあがれば、生成のときには逆向きの式から「いま見えているノイズを少し引く」操作を1000回繰り返すだけで、ノイズから絵を作り出せます。

つまりDiffusion Modelは、複雑な「絵を一気に思い浮かべる芸術家」ではなく、「ノイズの量を少しずつ減らしていく職人」の集合だと考えると分かりやすいかもしれません。下の概念図にまとめます。

MNISTで実装してみる ─ 1.6Mパラメータの小さなDDPM
理屈だけだと面白くないので、実際に動かしてみます。MNIST(28×28の手書き数字)で、約164万パラメータのU-Netベースの小さなDDPMを8エポック学習しました。Apple M3 Max (MPS) で約11分半の学習時間、最終損失は0.025まで下がりました。
学習が終わったら、推論時はランダムなノイズ画像から始め、 まで「予測ノイズを少しずつ引く」を繰り返します。下の動画が、その逆拡散の様子です(16枚の画像が、砂嵐から数字に整っていく過程)。
最終的なサンプルがこちらです。学習データ(MNISTの数字)に存在しない、AIが新しく作った16個の数字です。

少し崩れている数字もありますが、これは小さなモデル・短い学習時間でも「ノイズ→数字」の構造が確かに学習されている証拠です。MidjourneyやStable Diffusionは、これと同じ仕組みを、巨大なテキスト条件付け、超大規模なデータ、何百倍ものパラメータで動かしているだけと言えます。
ノイズから言葉へ ─ 言語生成にも拡散モデルが来ている
拡散モデルは長らく画像生成の代名詞でしたが、ここ1〜2年、言語モデルへの応用が急速に進んでいます。
ChatGPTを含む通常の言語モデル(自己回帰LLM)は、左から右に1単語ずつ文を生成します。一方、拡散言語モデルは、文章全体をマスクで埋まった状態から始めて、並列にノイズを除去(マスクを単語に置き換え)していきます。これが何を意味するかというと、
代表的なモデルを2026年5月時点で挙げると、次のとおりです。
画像との大きな違いは、「ノイズ」の表現方法です。画像では各ピクセルに連続値のガウスノイズを足しますが、テキストはトークン(単語の最小単位)が離散値なのでガウスノイズが定義できません。そこで言語版では、Masked Diffusionと呼ばれる方式が主流で、ノイズの正体は「トークンを `[MASK]` 記号に置き換える」操作です。骨格は画像版と同じで、「ノイズ状態から真値へ段階的に復元する」ことを学びます。
自己回帰LLMの完全な代替ではなく、「速度・編集性が効く領域での代替候補」という位置付け。コード補完・低レイテンシ用途・エッジ推論で先行普及しつつある段階です。
おわりに:シンプルな仕組みが大きなものを生む
Diffusion Modelの肝は、「絵を一発で描く」のではなく、「ノイズを少しずつ減らす職人を1000人並べる」という発想の転換にあります。学習も推論も、難解な数式の塊ではなく、ノイズの当てっこを延々と練習させるという極めてシンプルな目的関数で動いています。
そして同じ発想が、いまや言葉の生成にも広がりつつあります。「正解を一気に当てるのではなく、少しずつ間違いを正していく」という考え方は、AIの中でも応用範囲の広い枠組みになりました。
Kurasakuでは、こうしたAI技術の中身を「中小企業の現場でどう活かすか」という観点で整理し、ご相談を伺っています。「画像生成AIをマーケティング素材に取り入れたい」「コード補完を社内に導入したい」など、まずは小さなPoCから検討したい場合はお気軽にご相談ください。
技術ブログ一覧へ戻る
