Ein Generative Adversarial Network oder kurz GAN ist eine weitere Methode der generativen Künstlichen Intelligenz, um Bilder zu erzeugen. Die Grundlage dieser Methode liefert folgende Forschungsarbeit:
Ian J. Goodfellow et al. (2014). Generative Adversarial Networks. arXiv:1406.2661.
Es wird die Idee verfolgt, dass generierte Bilder bestenfalls nicht von Trainingsbildern zu unterscheiden sind. Im Wesentlichen basieren Generative Adversarial Networks dabei auf zwei neuronalen Netzen:
Wie Generative Adversarial Networks trainiert und angewendet werden, kann durch folgende Vorgehensweise beschrieben werden:
- Voraussetzung für das Verfahren sind Trainingsdaten, bestehend aus zahlreichen (echten) Bildern.
- Der Generator ist ein neuronales Netz, das Eingangssignale x erwartet, die von einem Zufallsgenerator erzeugt werden. Das Ausgangssignal des Generator-Netzwerks kann als (erzeugtes) Bild angesehen werden.
- Der Discriminator ist schließlich ein neuronales Netz zur Klassifikation von Eingangssignalen (Bilder) in die beiden Klassen reales Bild (real) und erzeugtes/gefälschtes Bild (fake).
- Das Generator-Netzwerk wird nun dahingehend trainiert, sodass ein Ausgangssignal y vom Discriminator-Netzwerk bestenfalls als reales Bild klassifiziert wird.
- Das Discriminator-Netzwerk versucht weiterhin, die Klassifikation in reales Bild (real) und erzeugtes/gefälschtes Bild (fake) möglichst gut zu lösen.
- Die beiden Netzwerke werden im Wechsel trainiert, bis sich ein Gleichgewicht einstellt. Ist dies der Fall, so erzeugt das Generator-Netzwerk Bilder, die vom Discriminator nicht mehr von den Trainingsbildern unterschieden werden können.
Nachdem dieser Trainingsprozess abgeschlossen ist, kann das Generator-Netzwerk verwendet werden, um Bilder zu erzeugen: Zu jedem Eingangssignale x erzeugt der Generator ein Ausgangssignal y und damit ein Bild, das gar nicht oder kaum von den Trainingsdaten zu unterscheiden ist.
Auf der folgenden Webseite kannst du das Generator-Netzwerk eines Generative Adversarial Networks zur Generierung von menschlichen Gesichtern erproben:
Dieses Beispiel wurde 2017 entwickelt und erzeugt bereits Bilder, die kaum bis gar nicht von echten Fotos zu unterscheiden sind.