GAN-Varianten

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.

Ein 3 x 3 Bilder von Bildern von Handtaschen. Jede Zeile hat einen anderen Handtaschenstil. In jeder Zeile ist das Bild ganz links eine einfache Linienzeichnung einer Handtasche, das mittlere Bild ein Foto einer echten Handtasche und das Bild ganz rechts ist ein fotorealistisches Bild, das von einem GAN generiert wurde. Die drei Spalten haben die Bezeichnungen 'Input', 'Ground Truth'output'.

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.

Ein Bild eines Pferdes, das läuft, und ein zweites Bild, das in allen Belangen identisch ist, nur dass das Pferd ein Zebra ist.

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." Gelbe Blütenblätter mit Orangenfarben.

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:

OriginalUnkenntlich gemachtMit GAN wiederhergestellt
Ein Gemälde eines Mädchens mit einem kunstvollen Kopfschmuck. Das Stirnband der Kopfschmuck ist in einem komplexen Muster gestrickt. Eine verschwommene Darstellung des Gemäldes eines Mädchens mit einem kunstvollen Kopfschmuck. Ein scharfes, deutliches Gemälde eines Mädchens mit einem kunstvollen Kopfschmuck. Dieses Gemälde ist fast identisch mit dem ersten Bild in dieser Tabelle, aber die Details der Muster auf dem Kopf und der Kleidung unterscheiden sich geringfügig.

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:

EingabeGAN-Ausgang
Vier Bilder. Jedes Bild ist ein Foto eines Gesichts. Dabei sind einige Bereiche schwarz. Vier Bilder. Bei jedem Bild handelt es sich um ein Foto eines Gesichts, das mit einem der Bilder in der Spalte &Input 3 identisch ist. Allerdings gibt es keine schwarzen Bereiche.

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.