Forscher entwickeln kontinuierlich verbesserte GAN-Techniken und neue Anwendungsfälle für GANs. Hier sind einige GAN-Varianten, die Ihnen einen Eindruck von den Möglichkeiten vermitteln sollen.
Progressive GANs
Bei einem progressiven GAN erzeugen die ersten Schichten des Generators Bilder mit sehr niedriger Auflösung und die nachfolgenden Schichten fügen Details hinzu. Mit dieser Technik kann der GAN schneller trainiert werden als vergleichbare nicht progressive GANs und es werden Bilder mit höherer Auflösung erzeugt.
Weitere Informationen finden Sie unter Karras et al., 2017.
Bedingte GANs
Bedingte GANs werden mit einem beschrifteten Datensatz trainiert und Sie können das Label für jede generierte Instanz angeben. Ein unkonditionierter MNIST-GAN würde beispielsweise zufällige Ziffern generieren, während Sie mit einem bedingten MNIST-GAN angeben können, welche Ziffer der GAN generieren soll.
Anstatt die gemeinsame Wahrscheinlichkeit P(X, Y) zu modellieren, modellieren bedingte GANs die bedingte Wahrscheinlichkeit P(X | Y).
Weitere Informationen zu bedingten GANs finden Sie unter Mirza et al., 2014.Bild-zu-Bild-Übersetzung
GANs für die Bild-zu-Bild-Übersetzung nehmen ein Bild als Eingabe und ordnen es einem generierten Ausgabebild mit anderen Eigenschaften zu. Wir können beispielsweise ein Maskierungsbild mit einem Farbklecks in Form eines Autos verwenden. Der GAN kann die Form dann mit fotorealistischen Autodetails füllen.
Ebenso können Sie einen GAN für die Bild-zu-Bild-Transformation trainieren, um Skizzen von Handtaschen in fotorealistische Bilder von Handtaschen umzuwandeln.
In diesen Fällen ist der Verlust eine gewichtete Kombination aus dem üblichen diskriminatorbasierten Verlust und einem pixelweisen Verlust, der den Generator für Abweichungen vom Quellbild bestraft.
Weitere Informationen finden Sie unter Isola et al., 2016.
CycleGAN
CycleGANs lernen, Bilder aus einem Satz in Bilder umzuwandeln, die plausibel zu einem anderen Satz gehören könnten. Mit einem CycleGAN wurde beispielsweise das rechte Bild unten erstellt, wenn das linke Bild als Eingabe verwendet wurde. Ein Bild eines Pferdes wurde in ein Bild eines Zebras umgewandelt.
Die Trainingsdaten für den CycleGAN bestehen einfach aus zwei Bildsätzen (in diesem Fall aus einem Satz von Pferdebildern und einem Satz von Zebrabildern). Das System erfordert keine Labels oder paarweisen Übereinstimmungen zwischen Bildern.
Weitere Informationen finden Sie in Zhu et al., 2017, wo die Verwendung von CycleGAN zur Bild-zu-Bild-Übersetzung ohne gepaarte Daten veranschaulicht wird.
Text-zu-Bild-Synthese
Text-zu-Bild-GANs nehmen Text als Eingabe und generieren Bilder, die plausibel sind und vom Text beschrieben werden. Das Bild der Blume unten wurde beispielsweise erstellt, indem einem GAN eine Textbeschreibung zugeführt wurde.
„Diese Blume hat gelbe Blütenblätter mit Orangetönen.“ | ![]() |
In diesem System kann der GAN nur Bilder aus einer kleinen Gruppe von Klassen erstellen.
Weitere Informationen finden Sie unter Zhang et al., 2016.
Superauflösung
GANs mit Superauflösung erhöhen die Auflösung von Bildern und fügen bei Bedarf Details hinzu, um unscharfe Bereiche auszufüllen. Das unscharfe mittlere Bild unten ist beispielsweise eine herunterskalierte Version des Originalbilds links. Aus dem unscharfen Bild hat ein GAN das schärfere Bild auf der rechten Seite erstellt:
Original | Weichzeichner | Mit GAN wiederhergestellt |
![]() |
![]() |
![]() |
Das GAN-generierte Bild ähnelt dem Originalbild sehr, aber wenn Sie sich das Stirnband genauer ansehen, sehen Sie, dass der GAN das Sternenmuster des Originals nicht reproduziert hat. Stattdessen hat es ein plausibles Muster erfunden, um das durch die Downsampling gelöschte Muster zu ersetzen.
Weitere Informationen finden Sie unter Ledig et al., 2017.
Gesichter retuschieren
GANs wurden für die semantisches Bild-Inpainting-Aufgabe verwendet. Bei der Inpainting-Aufgabe werden Teile eines Bildes ausgegraut und das System versucht, die fehlenden Teile auszufüllen.
Yeh et al., 2017 verwendeten einen GAN, um andere Techniken für die Inpainting von Bildern von Gesichtern zu übertreffen:
Eingabe | GAN-Ausgabe |
![]() |
![]() |
Text-to-Speech
Nicht alle GANs erzeugen Bilder. Forscher haben GANs beispielsweise auch verwendet, um synthetische Sprache aus Texteingaben zu generieren. Weitere Informationen finden Sie unter Yang et al., 2017.