6.6.1 生成モデルロードマップ:サンプリング、デコード、レビュー
生成モデルはラベルを予測するだけでなく、新しいサンプルを作ります。実用上の流れは、潜在コードをサンプリングし、デコードし、出力をレビューし、バージョン比較することです。
まず生成フローを見る
Section titled “まず生成フローを見る”

| 概念 | 最初の意味 |
|---|---|
| latent vector | 生成に使うコンパクトな隠れ入力 |
| decoder / generator | 潜在コードを出力へ変える |
| discriminator | GAN で本物か生成物かを判定する |
| VAE | より滑らかな潜在空間を学ぶ |
| review | 生成結果にも人と指標の確認が必要 |
小さな decoder を一度動かす
Section titled “小さな decoder を一度動かす”generative_first_loop.py を作り、torch をインストールしてから実行します。
import torch
torch.manual_seed(0)latent = torch.randn(2, 4)decoder = torch.nn.Sequential(torch.nn.Linear(4, 6), torch.nn.Tanh())generated = decoder(latent)
print("latent_shape:", tuple(latent.shape))print("generated_shape:", tuple(generated.shape))print("value_range:", round(generated.min().item(), 3), round(generated.max().item(), 3))出力:
latent_shape: (2, 4)generated_shape: (2, 6)value_range: -0.863 0.695これはまだ本物の生成器ではありません。小さな latent vector をより大きな出力へデコードできる、という形の直感を見ています。

この順番で学ぶ
Section titled “この順番で学ぶ”| 順番 | 読む | まず見ること |
|---|---|---|
| 1 | 6.6.2 GAN | generator、discriminator、敵対的バランス |
| 2 | 6.6.3 VAE | encoder、decoder、潜在空間 |
生成レビュー メモを 1 つ残します。
- 潜在入力
- ランダムまたはエンコードされた圧縮ベクトル
- デコーダ出力
- 生成サンプルまたは再構成
- レビュー要否
- loss だけでは生成品質は証明できない
- GAN の焦点
- リアリズムと多様性は互いに競合しうる
- VAE の焦点
- 再構成と潜在空間の滑らかさ のトレードオフ
ラベル予測とサンプル生成の違いを説明し、生成結果を盲信せずレビューが必要な理由を言えれば合格です。
確認の考え方と解説
- 合格レベルの答えでは、tensor、model layer、loss、
backward()、optimizer update を1つの学習ループとしてつなげます。 - 証拠には、動く小さな実験、tensor shape の確認、説明できる loss または validation curve を含めます。
- shape mismatch、loss が下がらない、過学習、data leakage、Attention/Transformer の data flow を説明できない、といった失敗例を1つ言えればよいです。