Читать книгу GANs mit PyTorch selbst programmieren - Tariq Rashid - Страница 5

Inhalt

Оглавление

Einführung

Teil IPyTorch und neuronale Netze

1Grundlagen von PyTorch

Google Colab

PyTorch-Tensoren

Automatische Gradienten mit PyTorch

Berechnungsgraphen

Lernziele

2Erstes neuronales Netz mit PyTorch

Das MNIST-Bilddatensatz

Die MNIST-Daten abrufen

Ein Blick auf die Daten

Ein einfaches neuronales Netz

Das Training visualisieren

Die Klasse für den MNIST-Datensatz

Unsere Klassifizierer trainieren

Das neuronale Netz abfragen

Die Performance des Klassifizierers einfach ermitteln

3Verfeinerungen

Verlustfunktion

Aktivierungsfunktion

Optimierungsmethode

Normalisierung

Kombinierte Verfeinerungen

Lernziele

4Grundlagen von CUDA

NumPy vs. Python

NVIDIA CUDA

CUDA in Python verwenden

Lernziele

Teil IIGenerative Adversarial Networks erstellen

5Das GAN-Konzept

Bilder generieren

Gegnerisches Training

Ein GAN trainieren

GANs sind schwer zu trainieren

Lernziele

6Einfache 1010-Muster

Echte Datenquelle

Den Diskriminator erstellen

Den Diskriminator testen

Den Generator erstellen

Die Generatorausgabe überprüfen

Das GAN trainieren

Lernziele

7Handgeschriebene Ziffern

Die Datensatzklasse

Der MNIST-Diskriminator

Den Diskriminator testen

MNIST-Generator

Die Generatorausgabe testen

Das GAN trainieren

Mode Collapse

Das GAN-Training verbessern

Mit Startwerten experimentieren

Lernziele

8Menschliche Gesichter

Farbbilder

Der CelebA-Datensatz

Hierarchisches Datenformat

Die Daten abrufen

Die Daten inspizieren

Die Datensatzklasse

Der Diskriminator

Den Diskriminator testen

GPU-Beschleunigung

Der Generator

Die Generatorausgabe überprüfen

Das GAN trainieren

Lernziele

Teil IIIKomplexere GANs

9Convolutional GANs

Speicherbedarf

Lokalisierte Bildmerkmale

Faltungsfilter

Kerngewichte lernen

Merkmalshierarchie

MNIST-CNN

CelebA-CNN

Eigene Experimente

Lernziele

10Konditionierte GANs

cGAN-Architektur

Diskriminator

Generator

Trainingsschleife

Bilder grafisch darstellen

Ergebnisse für das konditionierte GAN

Lernziele

Fazit

Anhänge

AIdeale Verlustwerte

MSE-Verlust

BCE-Verlust

BGANs lernen Wahrscheinlichkeit

GANs merken sich die Trainingsdaten nicht

Vereinfachtes Beispiel

Bilder aus einer Wahrscheinlichkeitsverteilung generieren

Gruppen von Pixeln für Bildmerkmale lernen

Viele Modi und Mode Collapse

CBeispiele für Faltungen

Beispiel 1: Faltung mit Schrittweite 1, keine Auffüllung

Beispiel 2: Faltung mit Schrittweite 2, keine Auffüllung

Beispiel 3: Faltung mit Schrittweite 2, mit Auffüllung

Beispiel 4: Faltung mit Bedeckungslücken

Beispiel 5: Transponierte Faltung mit Schrittweite 2, keine Auffüllung

Beispiel 6: Transponierte Faltung mit Schrittweite 1, keine Auffüllung

Beispiel 7: Transponierte Faltung mit Schrittweite 2, mit Auffüllung

Ausgabegrößen berechnen

DInstabiles Lernen

Gradientenabstieg – für das Training von GANs geeignet?

Ein einfaches Konfliktbeispiel

Gradientenabstieg – nicht ideal für Konfliktspiele

Warum eine Kreisbahn?

EQuellen

Der MNIST-Datensatz

Der CelebA-Datensatz

NVIDIA und Google

Open Source

Index

GANs mit PyTorch selbst programmieren

Подняться наверх