ミニマックス最適化(GANの理論的基盤)

敵対的生成ネットワーク(GAN)の核心は、生成器(Generator)と識別器(Discriminator)という二つのニューラルネットワークを、互いに競合させながら学習させる「ミニマックス最適化」の枠組みにある。これはゲーム理論における二人零和ゲームの概念を深層学習に導入したものであり、従来の尤度最大化に基づく生成モデルとは異なり、「識別問題」を介して分布学習を行う点に本質的特徴がある。この枠組みは、明示的な確率密度の計算を回避しつつ、高次元データ分布を近似する強力な方法として理解される。

基本設定

GANでは、真のデータ分布 $p_{\mathrm{data}}(x)$ と、生成器によって誘導される分布 $p_g(x)$ の二つの分布を考える。生成器 $G(z; \theta_g)$ は、潜在変数 $z \sim p_z(z)$ をデータ空間へ写像する決定論的関数であり、その結果として $p_g$ が定義される。一方、識別器 $D(x; \theta_d)$ は、入力 $x$ が真のデータから生成された確率を出力する関数であり、

\[D : \mathbb{R}^d \to [0,1]\]

として定義される。ここで重要なのは、GANが明示的な尤度関数 $p_{\theta}(x)$ を持たず、分布そのものではなく「サンプル生成過程」を通じて分布を間接的に定義する点である。

ミニマックス対物関数の定式化

GANの学習は、以下のミニマックス問題として定式化される:

\[\min_{G} \max_{D} V(D,G)=\mathbb{E}_{x \sim p_{\mathrm{data}}}[\log D(x)]+\mathbb{E}_{z \sim p_z}[\log(1 - D(G(z)))]\]

識別器はこの目的関数を最大化することで、実データと生成データを正確に識別しようとする。一方で生成器はこれを最小化することで、識別器を欺くようなサンプルを生成しようとする。この対立構造により、両者は互いに改善し合うダイナミクスを形成する。

この最適化問題は、関数空間上のサドルポイント探索問題として理解される:

\[(\theta_d^*, \theta_g^*)=\arg\min_{\theta_g} \arg\max_{\theta_d} V(D,G)\]

理想的には、この点において $p_g = p_{\mathrm{data}}$ が成立し、識別器は完全に無情報となる。

最適識別器の導出

生成器を固定した場合、識別器の最適解は解析的に求まる。価値関数は次のように書ける:

\[V(D,G)=\int\left[p_{\mathrm{data}}(x)\log D(x)+p_g(x)\log(1-D(x))\right]dx\]

これを $D(x)$ に関して点ごとに最適化すると、最適識別器は

\[D^*(x)=\frac{p_{\mathrm{data}}(x)}{p_{\mathrm{data}}(x) + p_g(x)}\]

となる。この結果は、識別器がベイズ最適分類器に一致することを意味する。すなわち、GANにおける識別器は、暗黙的に尤度比検定を実行している。

Jensen–Shannon発散との関係

最適識別器を代入することで、生成器の最適化問題は次のように書き換えられる:

\[\begin{aligned}C(G)&= V(D^*,G) \\&= \mathbb{E}_{x \sim p_{\mathrm{data}}}\left[\log \frac{p_{\mathrm{data}}(x)}{p_{\mathrm{data}}(x)+p_g(x)}\right]+\mathbb{E}_{x \sim p_g}\left[\log \frac{p_g(x)}{p_{\mathrm{data}}(x)+p_g(x)}\right]\end{aligned}\]

この式は以下と等価である:

\[C(G)=- \log 4+2 D_{\mathrm{JS}}(p_{\mathrm{data}} \,\|\, p_g)\]

したがって、GANの学習は Jensen–Shannon 発散の最小化と一致する。この事実により、GANは「暗黙的な距離最小化」として理解される。

サポート不一致と勾配消失問題

しかしながら、この理論には重要な問題がある。高次元空間においては、$p_{\mathrm{data}}$ と $p_g$ のサポートが互いにほとんど交わらない場合が多い。このとき、JSDは最大値 $\log 2$ に飽和し、勾配が消失する:

\[\nabla_{\theta_g} D_{\mathrm{JS}} \approx 0\]

この現象が、学習初期における不安定性の本質である。

非飽和損失とヒューリスティックな修正

この問題を緩和するため、実際には生成器の目的関数を次のように変更する:

\[\max_G \mathbb{E}_{z \sim p_z}[\log D(G(z))]\]

これは元の目的関数と同じ最適点を持ちながら、勾配が強くなるように設計されている。この手法はヒューリスティックではあるが、実用上極めて重要である。

最適化ダイナミクスとゲーム理論的解釈

GANの学習は単なる最適化問題ではなく、非協力ゲームのダイナミクスとして理解される。勾配降下・上昇は以下のような同時更新として表現される:

\[\theta_d \leftarrow \theta_d + \eta_d \nabla_{\theta_d} V(D,G), \quad\theta_g \leftarrow \theta_g - \eta_g \nabla_{\theta_g} V(D,G)\]

この更新は一般に収束保証を持たず、振動や発散が起こり得る。これはサドルポイント問題特有の現象であり、GANの訓練の難しさの本質的要因である。

拡張:f-GANとWasserstein GAN

JSDに基づく定式化の限界を克服するため、より一般的な分布距離を導入する研究が進んでいる。f-GANでは、任意のf-ダイバージェンス

\[D_f(p \,\|\, q)\]

を最小化する枠組みが提案される。また、Wasserstein GANでは、Earth Mover距離

\[W(p_{\mathrm{data}}, p_g)=\inf_{\gamma \in \Pi(p_{\mathrm{data}}, p_g)}\mathbb{E}_{(x,y)\sim \gamma}[\|x-y\|]\]

を用いることで、サポート不一致下でも意味のある勾配を得る。このとき識別器は1-Lipschitz制約を満たす関数(クリティック)として再定義される。

まとめ

ミニマックス最適化は、生成モデルを「識別器とのゲーム」として再定式化することで、分布学習に新たな視点を導入した。この枠組みは、Jensen–Shannon発散との対応、サドルポイント問題としての最適化、そして距離概念の一般化(f-ダイバージェンスやWasserstein距離)へと発展し、現代の生成モデル理論の中核を成している。GANは単なるモデルではなく、「分布間距離を学習する枠組み」として理解されるべきである。

Mathematics is the language with which God has written the universe.





















数理統計学 機械学習