Normalizing流
複雑な分布を可逆変換の積で標準正規へ。Real NVPのカップリング層を順に積んで KL を最小化。
Normalizing Flow は
画面右でカップリング層を積み、左の散布図を青色(標準正規の等高線)に揃えて KL ダイバージェンスを下げよう。
z = f_K ∘ … ∘ f_1 (x) のような可逆変換の合成で、複雑な分布 p(x) を扱いやすい標準正規 N(0,I) へ写す手法。各 f は対数ヤコビアン log|det(∂f/∂x)| が安定に計算できる必要がある。画面右でカップリング層を積み、左の散布図を青色(標準正規の等高線)に揃えて KL ダイバージェンスを下げよう。
x → z (latent)
層数 K0
log|det J|0.000
KL(q||N)—
log p(x)—
入力分布
カップリング層
達成: KL < 0.20 — 入力分布をほぼ標準正規へ写せた。
逆方向 (◀逆伝播) で N(0,I) からサンプルを引き、元の分布を生成できる。これが Real NVP / GLOW の核心:1回のフォワード/インバースで済む可逆生成モデル。
逆方向 (◀逆伝播) で N(0,I) からサンプルを引き、元の分布を生成できる。これが Real NVP / GLOW の核心:1回のフォワード/インバースで済む可逆生成モデル。
ゲームのねらい
1) 上の 入力分布 を選び、2) 右下のボタンでカップリング層を積み、3) 順伝播で z 空間を確認。z が N(0,I)(白い円の等高線内)に近いほど KL が下がる。
log p(x) = log p_z(f(x)) + Σ log|det(∂f_i/∂x)|Real NVP の Affine カップリングは半分の次元を恒等で残すので ヤコビアン行列が三角になり、行列式が対角の積で計算可能。横山研の RevNet 系列と同じ「可逆性をモジュール単位で保証する」発想。