Definition Was ist ein Generative Adversarial Network (GAN)?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Ein Generative Adversarial Network, kurz GAN, ist ein Machine-Learning-Modell, das in der Lage ist, Daten zu generieren. Es besteht aus zwei konkurrierenden Künstlichen Neuronalen Netzwerken (KNN). Eines hat die Aufgabe, echt wirkende Daten zu erzeugen, das andere klassifiziert die Daten als echt oder künstlich. Durch ständiges Lernen und viele Iterationsschritte werden die generierten Daten immer besser. Typischer Einsatzbereich ist das Erstellen echt wirkender künstlicher Bilder.

Firmen zum Thema

(Bild: © aga7ta - stock.adobe.com)

Die Abkürzung für Generative Adversarial Network lautet GAN. Ins Deutsche übersetzt bedeutet GAN „generierendes gegnerisches Netzwerk“. Es handelt sich um ein Machine-Learning-System oder Machine-Learning-Modell, das erstmals im Jahr 2014 vom US-Informatiker Ian Goodfellow und einigen seiner Kollegen beschrieben wurde. Ursprünglich war Goodfellow bei Google beschäftigt, seit 2019 arbeitet er als Director of Machine Learning für Apple.

Ein Generative Adversarial Network besteht aus zwei konkurrierenden Künstlichen Neuronalen Netzwerken (KNN) und ist in der Lage, Daten zu generieren. Die beiden Künstlichen Neuronalen Netze werden als Generator und Diskriminator bezeichnet. Der Generator erzeugt Daten, die der Diskriminator auf Basis echter Daten prüft. Die beiden Netze sind logisch und mathematisch so miteinander verknüpft, dass die vom Generator erzeugten Daten immer echter wirken. Ziel des Generators ist es, Daten zu erzeugen, die der Diskriminator nicht mehr von echten Daten unterscheiden kann.

Der Diskriminator hat das Ziel, die künstlich erzeugten Daten zu erkennen und von echten Daten zu unterscheiden. Generator und Diskriminator versuchen sich quasi ständig zu „überlisten“ beziehungsweise zu „ertappen“ und lernen dadurch voneinander. In vielen Iterationsschritten werden die erzeugten Daten immer besser und gleichen sich echten Daten an.

Typische Einsatzbereiche eines Generative Adversarial Networks sind das Erzeugen von echt wirkenden künstlichen Bildern oder Videosequenzen, beispielsweise für das Rekonstruieren nicht vorhandener Hintergründe, das Bewegen nur statisch erfasster Objekte oder das nachträgliche Kolorieren von Schwarz-Weiß-Material.

Grundsätzliche Funktionsweise

Ein Generative Adversarial Network besteht aus zwei konkurrierenden Künstlichen Neuronalen Netzen, dem Generator-Netzwerk und dem Diskriminator-Netzwerk. Die Konkurrenzsituation von Generator und Diskriminator besteht darin, dass der Generator versucht, Datensätze zu generieren, die der Diskriminator als echt einstuft. Der Diskriminator hat die Aufgabe, die künstlich erzeugten Daten des Diskriminators zuverlässig von echten Daten zu unterscheiden.

Zunächst erzeugt der Generator zufällige Daten (zum Beispiel ein Bild). Der Diskriminator, der zuvor mit echten Daten (zum Beispiel Bildern) trainiert wurde, versucht zu erkennen, ob es sich um echte oder künstlich erzeugte Daten (Bilder) handelt. Das Ergebnis liefert er dem Generator-Netzwerk zurück. Der Generator versucht anschließend den echten Daten ähnlichere neue Daten (Bilder) zu generieren, die der Diskriminator erneut prüft. Da die beiden Netzwerke logisch gekoppelt sind und sich gegenseitig trainieren, lernen beide kontinuierlich dazu. Mit jedem Iterationsschritt werden die künstlichen Daten den echten Daten ähnlicher.

Damit das konkurrierende Zusammenspiel funktioniert und tatsächlich immer echter wirkende Daten erzeugt werden, müssen beide Netzwerke ähnliche Fähigkeiten haben und gleich stark sein. Sollte ein Netzwerk dem anderen überlegen sein, bricht der Vorgang schon nach wenigen Iterationen zusammen. Ist der Generator beispielsweise zu stark, stuft der Diskriminator schnell alle Daten als echt ein und der Generator lernt nicht dazu. Ein zu starkes Diskriminator-Netzwerk erkennt sofort alle gefälschten Daten. Der Generator hat keine Möglichkeit realistischere Daten zu erzeugen.

Einsatzmöglichkeiten

Typischer Einsatzbereich eines Generative Adversarial Networks ist das Erzeugen künstlicher Bilder oder Videos. So lassen sich beispielsweise fehlende Hintergründe erzeugen, die täuschend echt wirken und bereits existierenden Hintergründen stark ähneln. GANs können auch eingesetzt werden, um statisch aufgenommene Personen oder Objekte realistisch zu bewegen. Weitere Einsatzmöglichkeit in der Film- oder Bildbearbeitung sind das nachträgliche Kolorieren von Schwarz-Weiß-Aufnahmen, das Erzeugen von Deepfakes oder das Generieren neuer Filmsequenzen. Für große Aufmerksamkeit sorgte ein Generative Adversarial Network, das ein künstliches Gemälde erzeugte. Es wurde auf einer Auktion für mehrere hunderttausend US-Dollar versteigert.

Neben dem Film- und Fotoumfeld finden Generative Adversarial Networks auch in anderen Bereichen Verwendung. Sie können beispielsweise Texte generieren, das Verhalten von Chatbots verbessern, neue Produkte kreieren oder für Simulationen im wissenschaftlichen Bereich eingesetzt werden.

Ebenfalls nutzbar sind Generative Adversarial Networks beispielsweise für:

  • das Erstellen von dreidimensionalen Objekten aus Skizzen oder 2D-Vorlagen
  • das Ergänzen von Bilddetails
  • das Erzeugen fotorealistischer Bilder künstlicher Personen für Musteranwendungen
  • das Erzeugen von Texten wie Produktbeschreibungen
  • das Ultra-HD-Up-Scaling von gering aufgelöstem Videomaterial
  • das Erstellen von 2D- oder 3D-Designs für neue Produkte
  • das Erzeugen fotorealistischer Aufnahmen künstlich gealterter Personen
  • das Erzeugen künstlicher Stimmen

(ID:47131531)