Generative Adversarial Networks-Spezialisierung auf Coursera (angeboten von deeplearning.ai)
Programmieraufgaben aus allen Kursen der Coursera GAN-Spezialisierung, die von deeplearning.ai
angeboten wird.
Kurse
Die GAN-Spezialisierung auf Coursera umfasst drei Kurse:
Kurs 1: Aufbau grundlegender generativer gegnerischer Netzwerke
Kurs 2: Bessere generative gegnerische Netzwerke aufbauen
Kurs 3: Generative Adversarial Networks (GANs) anwenden
Über GANs
Generative Adversarial Networks (GANs) sind leistungsstarke Modelle für maschinelles Lernen, die realistische Bild-, Video- und Sprachausgaben generieren können.
GANs basieren auf der Spieltheorie und haben eine weitreichende Anwendung: von der Verbesserung der Cybersicherheit durch die Bekämpfung gegnerischer Angriffe und der Anonymisierung von Daten zum Schutz der Privatsphäre bis hin zur Generierung hochmoderner Bilder, dem Einfärben von Schwarzweißbildern, der Erhöhung der Bildauflösung und der Erstellung von Avataren. Umwandlung von 2D-Bildern in 3D und mehr.
Mit zunehmender Rechenleistung ist auch die Beliebtheit von GANs und ihren Fähigkeiten gestiegen. GANs haben viele neue Richtungen eröffnet: von der Generierung großer Mengen an Datensätzen zum Trainieren von Modellen für maschinelles Lernen und der Ermöglichung leistungsstarker Modelle für unbeaufsichtigtes Lernen bis hin zur Erzeugung schärferer, diskreterer und genauerer Ergebnisse. GANs haben auch die Forschung in angrenzenden Bereichen wie gegnerisches Lernen, gegnerische Beispiele und Angriffe, Modellrobustheit usw. beeinflusst.
Über diese Spezialisierung
Die Deeplearning.ai-Spezialisierung für Generative Adversarial Networks (GANs) bietet eine spannende Einführung in die Bilderzeugung mit GANs und zeigt anhand eines leicht verständlichen Ansatzes den Weg von grundlegenden Konzepten zu fortgeschrittenen Techniken auf. Es behandelt auch soziale Implikationen, einschließlich Voreingenommenheit bei ML und den Möglichkeiten, diese zu erkennen, Wahrung der Privatsphäre und mehr.
Bauen Sie eine umfassende Wissensbasis auf und sammeln Sie praktische Erfahrungen mit GANs. Trainieren Sie Ihr eigenes Modell mit PyTorch, erstellen Sie damit Bilder und evaluieren Sie eine Vielzahl erweiterter GANs.
Über dich
Diese Spezialisierung richtet sich an Softwareentwickler, Studenten und Forscher aus allen Bereichen, die sich für maschinelles Lernen interessieren und verstehen möchten, wie GANs funktionieren.
Diese Spezialisierung bietet einen zugänglichen Weg für Lernende aller Niveaus, die in den GANs-Bereich vordringen oder GANs auf ihre eigenen Projekte anwenden möchten, auch ohne vorherige Kenntnisse in fortgeschrittener Mathematik und maschineller Lernforschung.
Programmieraufgaben
Kurs 1: Aufbau grundlegender generativer gegnerischer Netzwerke (GANs)
- Dies ist der erste Kurs der Spezialisierung auf Generative Adversarial Networks (GANs).
Woche 1: Einführung in GANs
- Erfahren Sie mehr über GANs und ihre Anwendungen, verstehen Sie die Intuition hinter den Grundkomponenten von GANs und erstellen Sie Ihr ganz eigenes GAN mit PyTorch.
- Abtretung:
Woche 2: Deep Convolutional GAN
- Erstellen Sie mithilfe von Faltungsschichten ein komplexeres GAN. Erfahren Sie mehr über nützliche Aktivierungsfunktionen, Batch-Normalisierung und transponierte Faltungen, um Ihre GAN-Architektur zu optimieren und sie anzuwenden, um ein erweitertes DCGAN speziell für die Verarbeitung von Bildern zu erstellen.
- Abtretung:
- Deep Convolutional GAN (DCGAN)
Woche 3: Wasserstein-GANs mit Normalisierung
- Reduzieren Sie Fälle von GANs-Ausfällen aufgrund von Ungleichgewichten zwischen Generator und Diskriminator, indem Sie fortgeschrittene Techniken wie WGANs erlernen, um instabiles Training und Moduskollaps mit einem W-Verlust und einem Verständnis der Lipschitz-Kontinuität zu mildern.
- Abtretung:
- Wasserstein GAN mit Gradient Penalty (WGAN-GP)
Woche 4: Bedingte und kontrollierbare GANs
- Verstehen Sie, wie Sie Ihr GAN effektiv steuern, die Funktionen in einem generierten Bild ändern und bedingte GANs erstellen, die Beispiele aus bestimmten Kategorien generieren können.
- Aufgaben:
- Erstellen Sie ein bedingtes GAN
- Kontrollierbare Erzeugung
Kurs 2: Bessere generative gegnerische Netzwerke (GANs) aufbauen
- Dies ist der zweite Kurs der Spezialisierung auf Generative Adversarial Networks (GANs).
Woche 1: GAN-Bewertung
- Verstehen Sie die Herausforderungen bei der Bewertung von GANs, lernen Sie die Vor- und Nachteile verschiedener GAN-Leistungsmaße kennen und implementieren Sie die Fréchet Inception Distance (FID)-Methode mithilfe von Einbettungen, um die Genauigkeit von GANs zu bewerten.
- Abtretung:
- Bewertung von GANs / Fréchet-Inception-Distanz
Woche 2: GAN-Nachteile und Voreingenommenheit
- Informieren Sie sich über die Nachteile von GANs im Vergleich zu anderen generativen Modellen, entdecken Sie die Vor- und Nachteile dieser Modelle – und erfahren Sie außerdem, woher Verzerrungen beim maschinellen Lernen kommen können, warum sie wichtig sind und wie man sie in GANs identifiziert .
- Quiz:
- Abtretung:
- Labor:
- Variationaler Autoencoder (VAE)
Woche 3: StyleGAN und Fortschritte
- Verstehen Sie, wie sich StyleGAN gegenüber früheren Modellen verbessert, und implementieren Sie die Komponenten und Techniken, die mit StyleGAN verbunden sind, dem derzeit modernsten GAN mit leistungsstarken Funktionen
- Abtretung:
- Optionale Notizbücher:
- Komponenten von BigGAN
- StilGAN2
Kurs 3: Generative Adversarial Networks (GANs) anwenden
- Dies ist der dritte Kurs in der Spezialisierung auf Generative Adversarial Networks (GANs).
Woche 1: GANs zur Datenerweiterung und Wahrung der Privatsphäre
- Entdecken Sie die Anwendungen von GANs und untersuchen Sie sie im Hinblick auf Datenerweiterung, Datenschutz und Anonymität.
- Verbessern Sie Ihre nachgelagerten KI-Modelle mit GAN-generierten Daten.
- Abtretung:
Woche 2: Bild-zu-Bild-Übersetzung
- Nutzen Sie das Bild-zu-Bild-Übersetzungs-Framework und identifizieren Sie Erweiterungen, Verallgemeinerungen und Anwendungen dieses Frameworks auf Modalitäten über Bilder hinaus.
- Implementieren Sie Pix2Pix, ein gepaartes Bild-zu-Bild-Übersetzungs-GAN, um Satellitenbilder an Kartenrouten (und umgekehrt) mit fortschrittlichen U-Net-Generator- und PatchGAN-Diskriminatorarchitekturen anzupassen.
- Aufgaben:
Woche 3: Ungepaarte Bild-zu-Bild-Übersetzung
- Vergleichen Sie die gepaarte Bild-zu-Bild-Übersetzung mit der ungepaarten Bild-zu-Bild-Übersetzung und ermitteln Sie, wie deren Hauptunterschied unterschiedliche GAN-Architekturen erfordert.
- Implementieren Sie CycleGAN, ein ungepaartes Bild-zu-Bild-Übersetzungsmodell, um Pferde mit zwei GANs in einem an Zebras (und umgekehrt) anzupassen.
- Abtretung:
Haftungsausschluss
Mir ist bewusst, wie viel Zeit Menschen damit verbringen, ihre Intuition zu entwickeln, neue Konzepte zu verstehen und Aufgaben zu debuggen. Die hier hochgeladenen Lösungen dienen nur als Referenz . Sie sollen Sie entsperren, wenn Sie irgendwo stecken bleiben. Bitte kopieren Sie keinen Teil des Codes so wie er ist (die Programmieraufgaben sind recht einfach, wenn Sie die Anweisungen sorgfältig lesen). Probieren Sie die Quizze ebenfalls selbst aus, bevor Sie sich auf die Quizlösungen beziehen.