Skip to the content.

最終更新日:2026年7月6日

G検定トップ > VQ-VAEとは?【G検定】

まず結論

VQ-VAE(Vector Quantized Variational AutoEncoder)とは、VAEの潜在表現を連続値ではなく、コードブック上の離散的なベクトルで表す生成モデルです。

通常のVAEでは、潜在変数を連続的な分布として扱います。
一方、VQ-VAEでは、エンコーダの出力を最も近い代表ベクトルに置き換えます。

観点 VQ-VAE
重要な考え方 Vector Quantization(ベクトル量子化)
潜在表現 離散的
使うもの コードブック(代表ベクトルの辞書)
通常のVAEとの違い 連続潜在変数ではなく離散コードを使う
G検定キーワード 離散潜在表現、コードブック、量子化

G検定では、「連続ではなく離散」「コードブックから選ぶ」「Vector Quantization」が出てきたらVQ-VAEを疑います。


直感的な説明

通常のVAEは、画像や音声などをなめらかな連続空間の点として表します。

一方、VQ-VAEは、入力データを「代表パターンの辞書」から選んだ番号やベクトルで表します。

たとえるなら、通常のVAEは色を無限に細かいグラデーションで表す方法です。
VQ-VAEは、あらかじめ用意された色見本の中から一番近い色を選ぶ方法です。

  • 通常のVAE:連続的に表す
  • VQ-VAE:代表ベクトルから選んで離散的に表す

この「代表ベクトルから選ぶ」処理を、ベクトル量子化(Vector Quantization)と呼びます。


VQ-VAEの仕組み

VQ-VAEは、オートエンコーダの構造をもとにしています。

基本的な流れは次のとおりです。

入力データ
↓
エンコーダ
↓
コードブックから近い代表ベクトルを選ぶ
↓
量子化された離散潜在表現
↓
デコーダ
↓
再構成データ

エンコーダ

エンコーダは、画像や音声などの入力データを潜在表現に変換します。

通常のVAEでは、この潜在表現は連続値として扱われます。

VQ-VAEでは、エンコーダの出力をそのまま使わず、コードブックにある代表ベクトルへ置き換えます。

コードブック

コードブックとは、学習される代表ベクトルの集合です。

VQ-VAEでは、エンコーダの出力に最も近いコードブック内のベクトルを選びます。

用語 意味
コードブック 代表ベクトルの辞書
コード 選ばれた代表ベクトルやその番号
量子化 連続値を近い代表ベクトルに置き換える処理

G検定では、コードブックを「潜在表現の候補を集めた辞書」と考えると分かりやすいです。

量子化

量子化とは、連続的な値を離散的な値に置き換えることです。

VQ-VAEでは、エンコーダが出した連続ベクトルを、最も近いコードブックのベクトルに置き換えます。

これにより、潜在表現が離散的になります。

デコーダ

デコーダは、量子化された潜在表現から元のデータを再構成します。

画像なら画像を、音声なら音声を復元するように学習します。


通常のVAEとの違い

VQ-VAEはVAEの一種として説明されることがありますが、通常のVAEとは潜在表現の扱いが違います。

観点 通常のVAE VQ-VAE
潜在表現 連続的 離散的
潜在空間 確率分布として扱う コードブックから選ぶ
重要キーワード 平均、分散、KLダイバージェンス コードブック、量子化、離散コード
生成の考え方 連続潜在変数から生成 離散コードから生成
試験での見分け方 連続分布 離散ベクトル

通常のVAEでは、潜在変数を正規分布のような連続的な分布として扱います。

VQ-VAEでは、潜在表現をコードブック内の離散的なベクトルに置き換えるため、より「記号」や「トークン」に近い形で扱えます。


VQ-VAE・β-VAE・CVAE・GANの違い

G検定では、似た生成モデルやVAE派生モデルとの違いが問われやすいです。

モデル 重要ポイント 見分けるキーワード
VAE 連続的な潜在変数を使う生成モデル 潜在変数、KLダイバージェンス
VQ-VAE コードブックを使い、潜在表現を離散化する 離散、量子化、コードブック
β-VAE KL項の重みを調整し、潜在表現の独立性を高める β、KL項の重み、disentanglement
CVAE 条件情報を与えて生成を制御する 条件付き、ラベル、conditional
GAN 生成器と識別器を競わせて学習する generator、discriminator、敵対的学習

VQ-VAEは、GANのように生成器と識別器を対立させるモデルではありません。

また、CVAEのようにラベル条件を加えることが本質でもありません。

VQ-VAEの本質は、潜在表現をベクトル量子化によって離散化することです。


いつ使う?

VQ-VAEは、画像、音声、動画などの生成や表現学習で使われます。

得意な場面

  • 画像生成
  • 音声生成
  • 動画生成
  • 離散的な潜在表現を使いたい場合
  • 生成モデルの前段でデータをトークン化したい場合

たとえば画像を小さな離散コード列に変換できれば、そのコード列を言語モデルのトークンのように扱うことができます。

この考え方は、画像生成モデルやVQ-GANのような発展的なモデルにもつながります。

注意点

VQ-VAEには、次のような注意点もあります。

  • 通常のVAEより仕組みが複雑
  • コードブックの学習が重要
  • 代表ベクトルの使われ方に偏りが出ることがある
  • 高品質な生成には別の生成モデルと組み合わせることがある

G検定では、詳細な実装よりも、離散潜在表現を使うVAEという役割を押さえることが重要です。


DALL-EやVQ-GANとの関係

VQ-VAEの考え方は、画像を離散的なコードに変換する生成モデルの流れに影響を与えています。

初期のDALL-Eでは、画像を離散的なトークン列として扱うために、discrete VAEの考え方が使われました。

また、VQ-GANは、VQ-VAEのようなベクトル量子化の考え方にGANの要素を組み合わせ、高品質な画像生成に利用されたモデルです。

ただし、G検定では個別モデルの細かい構成よりも、次の関係を押さえれば十分です。

  • VQ-VAE:離散潜在表現を学習する
  • VQ-GAN:VQの考え方にGAN的な学習を組み合わせる
  • 初期DALL-E系:画像を離散トークンとして扱う流れと関係がある

G検定ひっかけポイント

よくある誤り1:VQ-VAEは通常のVAEと同じ

VQ-VAEは通常のVAEと同じではありません。

通常のVAEは連続的な潜在変数を扱いますが、VQ-VAEは離散的な潜在表現を扱います。

よくある誤り2:VQ-VAEはGANである

VQ-VAEは、生成器と識別器を敵対的に学習させるGANではありません。

VQ-VAEは、オートエンコーダをもとにした生成モデルです。

よくある誤り3:コードブックは固定の辞書である

コードブックは、あらかじめ人間が固定しておくだけの辞書ではありません。

モデルの学習を通じて、データをよく表せる代表ベクトルとして学習されます。

よくある誤り4:β-VAEやCVAEと混同する

β-VAEはKL項の重み、CVAEは条件情報がポイントです。

VQ-VAEは、量子化と離散潜在表現がポイントです。

選択肢の判断基準

  • 「離散的な潜在表現」→ VQ-VAE
  • 「コードブック」→ VQ-VAE
  • 「ベクトル量子化」→ VQ-VAE
  • 「KL項に重みをつける」→ β-VAE
  • 「条件ラベルを与える」→ CVAE
  • 「生成器と識別器」→ GAN
  • 「連続的な潜在変数」→ 通常のVAE

確認問題(G検定対策)

VQ-VAEの説明として、最も適切なものはどれか。

  • ア. 生成器と識別器を競わせて学習する生成モデル
  • イ. 条件ラベルを入力に加えて生成を制御するVAE
  • ウ. 潜在表現をコードブック上の離散ベクトルに量子化するVAE
  • エ. KL項の重みを大きくして潜在変数の独立性を高めるVAE
▶ クリックして答えと解説を見る(ここを開く)

正解:ウ

解説

  • ア:GANの説明です。生成器と識別器の敵対的学習が特徴です。
  • イ:CVAEの説明です。条件情報を加えて生成を制御します。
  • ウ:適切です。VQ-VAEは、コードブックを使って潜在表現を離散的なベクトルに量子化します。
  • エ:β-VAEの説明です。KL項の重みを調整します。

判断ポイントは、「離散」「コードブック」「量子化」です。

まとめ(試験直前用)

  • VQ-VAE=潜在表現を離散化したVAE
  • Vector Quantizationはベクトル量子化のこと
  • コードブックは代表ベクトルの辞書
  • エンコーダの出力を最も近いコードブックのベクトルに置き換える
  • 通常のVAEは連続潜在変数、VQ-VAEは離散潜在表現
  • β-VAEはKL項の重み、CVAEは条件情報、GANは敵対的学習
  • G検定では「離散」「コードブック」「量子化」がキーワード

© 2024-2026 stemtazoo. All rights reserved.