VAE(変分オートエンコーダ)の基本

VAEは画像を潜在空間に圧縮・復元する生成モデルです。Stable Diffusionでも使われるその仕組みを学びます。

編集・検証: AIパスポートスタディ編集部 公式情報: GUGA 生成AIパスポート公式ページ 制作・検証方針
深見 つむぎ(普段) 深見 つむぎ

先生は今日、別クラスの補講で不在。
先にVAE(Variational Autoencoder、変分オートエンコーダ)を予習しましょう。
Stable Diffusion の画像圧縮にも使われています。

戸倉 ジャスミン(あせる) 戸倉 ジャスミン

VAE ってオートエンコーダの仲間?

深見 つむぎ(普段) 深見 つむぎ

オートエンコーダは入力を一度小さく圧縮(エンコード)して、その圧縮表現から元に戻す(デコード)ことを学ぶネットワークです。
VAE はその発展形なんです。
普通のオートエンコーダは圧縮点を「1点」で表すのに対し、VAE は圧縮先を「確率分布(平均と分散)」として表現するのが決定的な違いです。

戸倉 ジャスミン(あせる) 戸倉 ジャスミン

確率分布?
あたしわかんない、もうちょい易しく頼む。

深見 つむぎ(普段) 深見 つむぎ

うーん、例えるなら——点で表すと「この写真=ここの1点」になるんですが、分布で表すと「この写真っぽいものは、このエリア全体に分布してる」みたいに、エリア指定になるんです。

雪村 ましろ(笑顔) 雪村 ましろ

エリアだと、そこから新しい点をとってきて別バージョンの画像が作れる、ってこと?

深見 つむぎ(普段) 深見 つむぎ

ましろちゃん、まさにそれ!
だから VAE は単なる圧縮・復元ツールじゃなくて、新しいデータをサンプリングできる生成モデルでもあるんです。
点で表すか、分布で表すか、の違いで、創造力が生まれるんですね。

戸倉 ジャスミン(びっくり) 戸倉 ジャスミン

うそっ!?
分布にするだけで生成までできるんだ。
数学ってつえー。

深見 つむぎ(普段) 深見 つむぎ

補足すると、VAE の学習では「入力を正確に再現する誤差(再構成誤差)」と「潜在分布を標準正規分布に近づける誤差(KLダイバージェンス)」を同時に最小化します。
この2つの項があるからこそ、潜在空間が滑らかになるんです。

雪村 ましろ(あせる) 雪村 ましろ

ふぇぇ、KLなんとか…難しそう…でも、滑らかってことは、近い場所の点を選べば似た画像が出るってこと?

深見 つむぎ(普段) 深見 つむぎ

ましろ、その直感が大事。
実際、VAE の潜在空間は「近い点=似た画像」「遠い点=違う画像」になるように学習されるので、スムーズに画像を補間できる性質が生まれます。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

じゃあ VAE 単体で Stable Diffusion みたいな絵が作れるの?

深見 つむぎ(普段) 深見 つむぎ

VAE 単体で生成される画像は、拡散モデルほどシャープではない傾向があります。
そのため Stable Diffusion では「VAE で画像を圧縮→拡散モデルで処理→VAE で復元」という分業体制にして、両者のいいとこ取りをしているんです。
VAE は縁の下の力持ち、って感じですね。

雪村 ましろ(笑顔) 雪村 ましろ

なるほどぉ、縁の下の力持ち、かっこいいっ!

深見 つむぎ(普段) 深見 つむぎ

補足: GAN と VAE、拡散モデルは生成モデルの3大柱と呼ばれ、それぞれ強みが違います。
GAN=シャープだが学習不安定、VAE=安定だが画像がぼやけがち、拡散=高品質だが計算コスト大、という整理でOK。
バドミントンで言うとアシスト・ストライカー・ディフェンダーみたいなもの、とジャスミンちゃんなら言いそうね。
ふふ。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

つむぎ、読心術か?
でも確かにそんな整理で覚えるとわかりやすいね。
試験対策としては、VAE は①圧縮・復元②潜在空間が滑らか③サンプリングで生成、の3点で十分!

確認クイズ

VAE が通常のオートエンコーダと異なる点として最も適切なものはどれか。

  1. パラメータ数が少ない
  2. 潜在空間を確率分布として学習する
  3. 画像しか扱えない
  4. 教師ラベルが必要
こたえを見る

正解: 2. 潜在空間を確率分布として学習する

VAE は潜在空間を確率分布として学習するため、新しいデータを生成できる点が通常のオートエンコーダと異なります。パラメータ数や対象データ型、教師ラベル有無は本質的な違いではありません。

🔖 この記事の関連書籍

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