生成器と識別器とは
生成器(Generator)と識別器(Discriminator)は、GAN(敵対的生成ネットワーク)を構成する2つの主要なネットワークです。この2つのネットワークが互いに競い合うことで、生成器はますますリアルなデータを生成できるようになります。偽造者と鑑定士の関係に例えられることが多く、敵対的学習の根幹を成す概念です。
生成器の役割と構造
生成器はランダムなノイズベクトル(潜在ベクトル)を入力として受け取り、訓練データに似たデータサンプルを出力します。画像生成の場合、全結合層や転置畳み込み層(Transposed Convolution)を用いて、低次元のノイズから高次元の画像へと変換します。StyleGANではスタイルベースの生成器が提案され、生成画像の属性を細かく制御することが可能になりました。
識別器の役割と構造
識別器は入力データが本物の訓練データか生成器が作成した偽のデータかを判別する二値分類器として機能します。通常はCNNの構造を持ち、入力データから特徴を抽出して最終的に本物である確率を出力します。識別器は学習の品質を左右する重要なコンポーネントであり、強すぎても弱すぎても学習が不安定になります。
生成器と識別器のバランス
GANの学習では、生成器と識別器のバランスが極めて重要です。識別器が強すぎると生成器が学習できず、弱すぎると生成器に有意義なフィードバックを与えられません。このバランスの維持が難しいことがGANの学習を困難にする主な原因であり、学習率の調整、勾配ペナルティの導入、Spectral Normalizationなどの手法が安定化のために使用されます。