GAN(敵対的生成ネットワーク)入門

# 概要
GAN(Generative Adversarial Network, 敵対的生成ネットワーク)について、その概要を述べる
# GANとは
- GAN = 『生成器』『識別器』と呼ばれる2つのニューラルネットワークの間で行われるゼロサムゲーム
    - ニューラルネットワーク
        - 
    - ゼロサムゲーム
        - ゲーム理論の用語
- 生成AIの重要なフレームワークの一つ
    - [生成モデル](https://en.wikipedia.org/wiki/Generative_model)
        - 統計学における「分類」のアプローチの1つ
            - 分類器(データから推定(学習)される分類用の統計モデル)の計算アプローチはおもに3つある
                1. [生成モデル(generative models)](https://en.wikipedia.org/wiki/Generative_model)
                    $X,C$をデータとクラスの確率変数、$\theta = (\theta_1,\theta_2)$をパラメータとしたとき
                    - 結合確率$\Pr[X,C|\theta]$を$\Pr[X,C|\theta]= \Pr[X|C,\theta_1] \Pr[C|\theta_2]$とモデル化したモデル
                    - [朱鷺の杜](https://ibisforest.org/index.php?%E7%94%9F%E6%88%90%E3%83%A2%E3%83%87%E3%83%AB#:~:text=discriminative%20model%20%E3%81%AE%E8%A8%B3%E8%AA%9E%E3%81%AF,%E3%83%A2%E3%83%87%E3%83%AB%20%E3%81%AB%E5%88%86%E3%81%8B%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%EF%BC%8E)
                    - 代表例
                        - 線型識別分析
                        - Gaussian mixture model (and other types of mixture model)
                        - Hidden Markov model
                        - Probabilistic context-free grammar
                        - Bayesian network
                            - Naive bayes(ナイーブベイズ)
                            - Autoregressive model(自己回帰モデル)
                        - Averaged one-dependence estimators
                        - Latent Dirichlet Allocation
                        - Boltzmann Machine
                        - Variational Autoencoder
                        - GAN
                        - Flow-based generative model
                        - Energy baased model
                        - Diffusion model(拡散モデル)
                2. [識別的モデル(discriminative models)](https://en.wikipedia.org/wiki/Discriminative_model)
                    - データ$X$が与えられたときの条件付確率$\Pr[C, \theta|X]$を$\Pr[C, \theta|X]= \Pr[\theta] \Pi_{i} \Pr[c_i|x_i,\theta], \text{where }\Pr[c_i|x_i,\theta] = \frac{\Pr[x_i,c_i|\theta]}{\sum_{c\in C} \Pr[x_i,c_i|\theta]}$とモデル化したモデル
                    - discriminative models とも conditional modelsとも呼ばれる
                    - 代表例
                        - ロジスティック回帰
                        - k-nearest neighbors algorithm(k-最近傍法)
                        - Support Vector Machines
                        - Decision Tree Learning
                        - Random Forest
                        - Maximum-entropy Markov models
                        - Conditional random fields
                2. 確率モデルを用いないで導く分類器
                    - これはdiscriminative modelsと混同されていることが多く、区別しない場合も多いので注意が必要
            - クラス分類への応用の文脈
                - 、観測データ x から ラベル y(またはラベルが従う確率分布)を得ることを期待している
                - このとき、3つの方法が考えられる
                    1. 確率分布を用いず直接計算(distribution-free classifier)
                    2. 観測データがX=xと与えられた条件のもと、ラベルYについての条件付確率$P(Y|X=x)$を推定(discriminative model)し、それに基づいて分類を行う。
                    3. 同時確率分布$P(X,Y)$を推定し(generative model)、そこから条件付確率$P(Y|X=x)$を計算し、それに基づいて分類
                - これらは、1->2->3と、段階的に、回りくどい、間接的なアプローチとなっているが、段階的に確率論的になっている。これは、段階的に、より多くのドメイン知識や確率論を適用できることを意味する。
                - 問題に応じて3つの方法を使い分けたり組み合わせたりする

        - 以下のように、よりクリアな定義を与えることもできる
            - 生成モデルとは、ターゲットのデータ$Y=y$が与えられたときの観測量$X$の条件付確率$\Pr(X|Y=y)$ついてのモデルである
            - 生成モデルとは、観測量のデータ$X=x$が与えられたときのターゲット$Y$の条件付確率$\Pr(Y|X=x)$ついてのモデルである
        -