GAN トレーニング

GAN には 2 つの別々にトレーニングされたネットワークが含まれているため、トレーニング アルゴリズムでは 2 つの複雑な問題に対処する必要があります。

  • GAN は、2 種類のトレーニング(ジェネレータと弁別子)を同時に行う必要があります。
  • GAN の収束は特定が困難です。

交互トレーニング

生成者と識別子には異なるトレーニング プロセスがあります。それでは、GAN 全体をどのようにトレーニングすればよいでしょうか。

GAN のトレーニングは、次の期間を交互に繰り返して行われます。

  1. ディスкриминエータは 1 つ以上のエポックでトレーニングします。
  2. 生成ツールは 1 つ以上のエポックをトレーニングします。
  3. 手順 1 と 2 を繰り返し、ジェネレータ ネットワークと弁別子ネットワークのトレーニングを続けます。

弁別子のトレーニング フェーズでは、ジェネレータを一定に保ちます。ディスクリミネータのトレーニングでは、実際のデータと偽のデータの区別方法を把握しようとするため、生成ツールの欠陥を認識する方法を学習する必要があります。これは、ランダムな出力を生成するトレーニングを受けていない生成ツールとは異なる問題です。

同様に、ジェネレータのトレーニング フェーズ中は弁別子を一定に保ちます。そうしないと、ジェネレータは動くターゲットを狙うことになり、収束しない可能性があります。

このやり取りにより、GAN は、他の方法では解決できない生成問題に取り組むことができます。はるかに単純な分類問題から始めることで、困難な生成問題に足がかりを得ます。逆に、最初のランダム ジェネレータの出力に対しても、実際のデータと生成されたデータの違いを区別するように分類子をトレーニングできない場合、GAN のトレーニングを開始できません。

融合

トレーニングによって生成元が改善されると、ディスкриминエータは本物と偽物の違いを簡単に区別できなくなるため、ディスкриминエータのパフォーマンスは低下します。生成器が完全に成功した場合、識別器の精度は 50% です。つまり、ディスкриминエータはコイントスをして予測を行います。

この進行は、GAN 全体の収束に問題を引き起こします。時間の経過とともに、識別子フィードバックの意味が薄れていきます。GAN が、ディスкриминエータが完全にランダムなフィードバックを返すポイントを超えてトレーニングを継続すると、ジェネレータはジャンク フィードバックでトレーニングを開始し、その品質が低下する可能性があります。

GAN の場合、収束は安定した状態ではなく、しばしば一時的な状態です。