Forscher finden immer wieder verbesserte GAN-Techniken und neue Einsatzmöglichkeiten für GANs. Hier sehen Sie einige Beispiele für GAN-Varianten, damit Sie einen Eindruck von den Möglichkeiten bekommen.
Progressive GANs
In einem progressiven GAN erzeugen die ersten Ebenen des Generators Bilder mit sehr geringer Auflösung. Nachfolgende Ebenen fügen Details hinzu. Dieses Verfahren ermöglicht es dem GAN, schneller zu trainieren als vergleichbare nicht progressive GANs und erzeugt Bilder mit höherer Auflösung.
Weitere Informationen finden Sie unter Karras et al., 2017.
Bedingte GANs
Bedingte GANs trainieren mit einem Dataset mit Label und Sie können das Label für jede generierte Instanz angeben. Beispielsweise würde ein bedingungsloses MNIST-GAN zufällige Ziffern erzeugen, während Sie mit einem bedingten MNIST-GAN angeben können, welche Ziffer das 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 findest du unter Mirza et al., 2014.Bild-zu-Bild-Übersetzung
Bild-zu-Bild-Übersetzung GANs nehmen ein Bild als Eingabe auf und ordnen es einem generierten Ausgabebild mit unterschiedlichen Attributen zu. Wir können beispielsweise ein Maskenbild mit einem Blob in der Form eines Autos aufnehmen und das GAN kann die Form mit fotorealistischen Autodetails ausfüllen.
Ebenso können Sie ein Bild-zu-Bild-GAN trainieren, um Skizzen von Handtaschen aufzunehmen und sie in fotorealistische Bilder von Handtaschen umzuwandeln.
In diesen Fällen ist der Verlust eine gewichtete Kombination aus dem üblichen diskriminierenden Verlust und einem pixeligen Verlust, der den Generator für eine Abweichung vom Quellbild bestraft.
Weitere Informationen finden Sie unter Isola et al., 2016.
ZyklenGAN
CycleGANs lernen, Bilder aus einem Satz in Bilder umzuwandeln, die möglicherweise zu einem anderen Satz gehören könnten. Ein CycleGAN hat beispielsweise das rechte Bild unten erstellt, wenn es als Eingabe für das linke Bild angegeben wurde. Sie machten ein Bild von einem Pferd und verwandelten es in ein Zebra.
Die Trainingsdaten für den CycleGAN sind einfach zwei Sätze von Bildern (in diesem Fall eine Reihe von Pferdebildern und einer Reihe von Zebrabildern). Das System erfordert keine Labels oder paarweise Entsprechungen zwischen Bildern.
Weitere Informationen finden Sie unter Zhu et al., 2017. Dort wird die Verwendung von CycleGAN zur Übersetzung von Bild zu Bild ohne gekoppelte Daten veranschaulicht.
Text-to-Image-Synthese
GANs (Text-to-Image) verwenden Text als Eingabe und erzeugen Bilder, die plausibel und durch den Text beschrieben sind. Das unten stehende Blumenbild wurde beispielsweise erstellt, indem eine Textbeschreibung in ein GAN eingespeist wurde.
"Diese Blume hat gelbgoldene Blütenblätter mit Orangen." |
Beachten Sie, dass das GAN in diesem System nur Bilder aus einer kleinen Gruppe von Klassen erstellen kann.
Weitere Informationen finden Sie unter Zhang et al., 2016.
Hohe Auflösung
GANs mit hoher Auflösung erhöhen die Auflösung von Bildern und fügen gegebenenfalls Details hinzu, um unscharfe Bereiche auszufüllen. Das untere Bild in der Mitte ist beispielsweise eine Version des Originalbildes auf der linken Seite. Angesichts des verschwommenen Bilds hat ein GAN rechts das scharfere Bild erzeugt:
Original | Unkenntlich gemacht | Mit GAN wiederhergestellt |
Das vom GAN erzeugte Bild ähnelt dem Originalbild sehr genau. Wenn Sie sich jedoch das Stirnband genau ansehen, werden Sie feststellen, dass das GAN-Symbol das Stoßmuster des Originals nicht kopiert hat. Stattdessen wurde ein eigenes plausibles Muster erstellt, um das durch das Downsampling gelöschte Muster zu ersetzen.
Weitere Informationen finden Sie unter Ledig et al., 2017.
Gesichtsanstrich
GANs wurden für die Aufgabe der semantischen Bildübermalung verwendet. Beim Malen werden Teile eines Bilds geschwärzt und das System versucht, die fehlenden Teile zu füllen.
Yeh et al., 2017 nutzte ein GAN, um andere Techniken zum Malen von Bildern von Gesichtern zu übertreffen:
Eingabe | GAN-Ausgang |
Text-to-Speech
Nicht alle GANs produzieren Bilder. Forscher haben beispielsweise auch GANs verwendet, um synthetisierte Sprache aus Texteingabeen zu erstellen. Weitere Informationen finden Sie unter Yang et al., 2017.