Da ein GAN zwei separat trainierte Netzwerke enthält, muss der Trainingsalgorithmus zwei Komplikationen beseitigen:
- GANs müssen zwischen zwei verschiedenen Arten von Schulungen (Generator und Diskriminator) jonglieren.
- GAN-Konvergenz ist schwer zu identifizieren.
Abwechselndes Training
Der Generator und der Diskriminator haben unterschiedliche Trainingsprozesse. Wie können wir das GAN insgesamt trainieren?
Das GAN-Training wird in abwechselnden Zeiträumen fortgesetzt:
- Der Diskriminator wird für eine oder mehrere Epochen trainiert.
- Der Generator wird für eine oder mehrere Epochen trainiert.
- Wiederholen Sie die Schritte 1 und 2, um die Generator- und Diskriminatornetzwerke weiter zu trainieren.
Während der Trainingsphase des Diskriminators halten wir den Generator konstant. Bei der Schulung zu Diskriminatoren soll ermittelt werden, wie echte Daten von Fälschungen unterschieden werden können. Dazu muss ermittelt werden, wie die Fehler des Generators erkannt werden. Das ist bei einem sorgfältig trainierten Generator ein anderes Problem als bei einem nicht trainierten Generator, der eine zufällige Ausgabe erzeugt.
Ebenso halten wir den Diskriminator während der Trainingsphase des Generators konstant. Andernfalls versucht der Generator, ein bewegliches Ziel zu erreichen, und konvergiert möglicherweise nicht.
Damit können GANs ansonsten unlösbare generative Probleme angehen. Wir müssen das schwierige generative Problem umgehen, indem wir mit einem viel einfacheren Klassifizierungsproblem beginnen. Wenn Sie dagegen einen Klassifikator nicht trainieren können, um zwischen den echten und generierten Daten selbst bei der ersten Zufallsgeneratorausgabe zu unterscheiden, können Sie das GAN-Training nicht starten.
Konvergenz
Während sich der Generator mit dem Training verbessert, verschlechtert sich die Leistung des Diskriminators, da der Diskriminator nicht leicht den Unterschied zwischen echten und Fälschungen erkennen kann. Wenn der Generator perfekt funktioniert, hat der Diskriminator eine Genauigkeit von 50 %. Tatsächlich wirft der Diskriminator eine Münze, um eine Vorhersage zu treffen.
Dieser Fortschritt stellt ein Problem für die Konvergenz des GAN als Ganzes dar: Das Diskriminatorfeedback wird im Laufe der Zeit weniger aussagekräftig. Wenn das GAN auch nach dem Punkt weitergeht, an dem der Diskriminator zufälliges Feedback abgibt, beginnt der Generator, mit Junk-Feedback zu trainieren, und seine eigene Qualität kann sich verringern.
Bei einem GAN ist die Konvergenz oft ein flüchtiger, nicht stabiler Zustand.