Generative Adversarial Networks (GANs) sind eine Art von Deep-Learning-Architektur, bei der zwei konkurrierende neuronale Netzwerke verwendet werden, um neue Daten zu generieren. Diese beiden Netzwerke, der Generator und der Diskriminator, trainieren als Gegner, um eine genauere Ausgabe zu erzeugen. GANs können in verschiedenen Bereichen eingesetzt werden, darunter Computer Vision, Robotik, Bildgenerierung, Videosynthese und Natural Language Processing.
Am besten lässt sich die Funktionsweise von GANs anhand einer Analogie erklären: einem Wettbewerb zwischen einem Kunstfälscher (dem Generator) und einem Kunstkritiker (dem Diskriminator).
Dieses „Spiel“ geht weiter und beide Netzwerke werden immer intelligenter. Irgendwann ist der Fälscher so geschickt, dass der Kritiker den Unterschied nicht mehr zuverlässig erkennen kann. An diesem Punkt ist das GAN trainiert und kann neue, sehr realistische Daten generieren.
Convolutional Neural Networks (CNNs) und Generative Adversarial Networks (GANs) sind beides Deep-Learning-Architekturen, die sich jedoch in ihren Stärken und Anwendungsbereichen unterscheiden. CNNs werden häufig für die Bildklassifizierung und Objekterkennung verwendet, während GANs in der Regel für die Generierung neuer Dateninstanzen konzipiert sind.
Feature | CNNs | GANs |
Datennutzung | Weitgehend mit Labels versehene Datasets | Datasets mit oder ohne Label |
Ausgabe | Klassifizierung, Featureextraktion | Vielfältige, neue Dateninstanzen |
Modelltyp | Diskriminativ | Generativ |
Primäre Aufgaben | Bildklassifizierung, Objekterkennung | Bildgenerierung, Datenaugmentation, Erstellung synthetischer Daten |
Feature
CNNs
GANs
Datennutzung
Weitgehend mit Labels versehene Datasets
Datasets mit oder ohne Label
Ausgabe
Klassifizierung, Featureextraktion
Vielfältige, neue Dateninstanzen
Modelltyp
Diskriminativ
Generativ
Primäre Aufgaben
Bildklassifizierung, Objekterkennung
Bildgenerierung, Datenaugmentation, Erstellung synthetischer Daten
Alle GANs haben zwar die gleiche Generator-Diskriminator-Struktur, aber es wurden verschiedene Varianten entwickelt, um spezifische Probleme zu lösen. Hier sind einige der wichtigsten Arten:
Das grundlegende Konzept, zwei gegnerische Netzwerke zu verwenden, ist bei allen Varianten von GANs gleich. Forschende haben jedoch eine Vielzahl von Architektur- und Trainingsmodifikationen untersucht, um Einschränkungen zu beheben und die Leistung für bestimmte Anwendungen zu verbessern.
GANs haben in vielen Branchen neue Möglichkeiten eröffnet. Ihre Anwendungen lassen sich in der Regel in diese Hauptbereiche einteilen:
Dies ist die bekannteste Anwendung von GANs. Sie umfasst das Erstellen realistischer Bilder von Menschen, Orten und Objekten, das Erstellen digitaler Kunst und Musik sowie leistungsstarke Bildbearbeitungstools wie Stilübertragung (ein Foto sieht aus wie ein Gemälde), Superauflösung (unscharfe Bilder werden schärfer) und Text-zu-Bild-Synthese.
Hochwertige Daten sind der Treibstoff des maschinelle Lernens, können aber selten, teuer oder privat sein. GANs helfen, dieses Problem zu lösen, indem sie synthetische Daten generieren. Im Gesundheitswesen können GANs realistische, aber anonyme medizinische Scans erstellen, um Diagnosemodelle zu trainieren, ohne die Privatsphäre der Patienten zu verletzen. Im Finanzwesen können sie synthetische Transaktionsdaten generieren, um bessere Systeme zur Betrugserkennung zu trainieren. Dies hilft dabei, Datenknappheiten zu überwinden und ausgeglichene Datasets zu erstellen.
GANs können die Muster in komplexen Systemen erlernen, um realistische Simulationen zu erstellen. So lassen sich vielfältige Szenarien für das Training selbstfahrender Autos generieren, die nächsten Frames in einem Video vorhersagen oder sogar vielversprechende Molekülstrukturen bei der Arzneimittelentwicklung entdecken.
Wenn eine GAN mit „normalen“ Daten trainiert wird, wird sie sehr gut darin, Dinge zu erkennen, die nicht in das Muster passen. Damit lassen sich betrügerische Finanzaktivitäten erkennen, Netzwerkeinbrüche im Bereich der Internetsicherheit identifizieren und Fehler in der Fertigung finden.
Die Entwicklung und Bereitstellung von GANs erfordert erhebliche Rechenleistung und eine robuste MLOps-Plattform. Google Cloud bietet Tools, die den gesamten Workflow unterstützen:
Profitieren Sie von einem Guthaben über 300 $, um Google Cloud und mehr als 20 „Immer kostenlos“-Produkte kennenzulernen.