Deep Learning illustriert
Реклама. ООО «ЛитРес», ИНН: 7719571260.
Оглавление
Jon Krohn. Deep Learning illustriert
Deep Learning illustriert
Vorwort
Einführung
Wie Sie dieses Buch lesen sollten
Danksagungen
Inhaltsübersicht
Inhaltsverzeichnis
Teil I. Deep Learning vorgestellt
1Biologisches und maschinelles Sehen
1.1Das biologische Sehen
1.2Maschinelles Sehen
1.2.1Das Neocognitron
1.2.2LeNet-5
1.2.3Der traditionelle Machine-Learning-Ansatz
1.2.4ImageNet und die ILSVRC
1.2.5AlexNet
1.3TensorFlow Playground
1.4Quick, Draw!
1.5Zusammenfassung
2Menschen- und Maschinensprache
2.1Deep Learning für Natural Language Processing
2.1.1Deep-Learning-Netze lernen Repräsentationen automatisch
2.1.2Natural Language Processing
2.1.3Eine kurze Geschichte des Deep Learning für NLP
2.2Repräsentationen von Sprache im Computer
2.2.11-aus-n-Repräsentationen von Wörtern
2.2.2Wortvektoren
2.2.3Wortvektor-Arithmetik
2.2.4word2viz
2.2.5Lokalistische versus verteilte Repräsentationen
2.3Elemente der natürlichen menschlichen Sprache
2.4Google Duplex
2.5Zusammenfassung
3Maschinenkunst
3.1Eine feuchtfröhliche Nacht
3.2Berechnungen auf nachgemachten menschlichen Gesichtern
3.3Stiltransfer: Fotos in einen Monet verwandeln (und umgekehrt)
3.4Machen Sie Ihre eigenen Skizzen fotorealistisch
3.5Fotorealistische Bilder aus Text erzeugen
3.6Bildverarbeitung mittels Deep Learning
3.7Zusammenfassung
4Spielende Maschinen
4.1Deep Learning, KI und andere Monster
4.1.1Künstliche Intelligenz
4.1.2Machine Learning
4.1.3Representation Learning
4.1.4Künstliche neuronale Netze
4.1.5Deep Learning
4.1.6Maschinelles Sehen
4.1.7Natural Language Processing
4.2Drei Arten von Machine-Learning-Problemen
4.2.1Supervised Learning
4.2.2Unsupervised Learning
4.2.3Reinforcement Learning
4.3Deep Reinforcement Learning
4.4Videospiele
4.5Brettspiele
4.5.1AlphaGo
4.5.2AlphaGo Zero
4.5.3AlphaZero
4.6Manipulation von Objekten
4.7Populäre Umgebungen für das Deep-Reinforcement-Learning
4.7.1OpenAI Gym
4.7.2DeepMind Lab
4.7.3UnityML-Agents
4.8Drei Arten von KI
4.8.1Artificial Narrow Intelligence
4.8.2Artificial General Intelligence
4.8.3Artificial Super Intelligence
4.8.4Zusammenfassung
Teil II. Die nötige Theorie
5Der (Code-)Karren vor dem (Theorie-)Pferd
5.1Voraussetzungen
5.2Installation
5.3Ein flaches Netzwerk in Keras
5.3.1Der MNIST-Datensatz handgeschriebener Ziffern
5.3.2Ein schematisches Diagramm des Netzwerks
5.3.3Die Daten laden
5.3.4Die Daten umformatieren
5.3.5Die Architektur eines neuronalen Netzes entwerfen
5.3.6Trainieren eines Deep-Learning-Modells
5.4Zusammenfassung
6Künstliche Neuronen, die Hotdogs erkennen
6.1Das Einmaleins der biologischen Neuroanatomie
6.2Das Perzeptron
6.2.1Der Hotdog/Nicht-Hotdog-Detektor
6.2.2Die wichtigste Gleichung in diesem Buch
6.3Moderne Neuronen und Aktivierungsfunktionen
6.3.1Das Sigmoid-Neuron
6.3.2Das Tanh-Neuron
6.3.3ReLU: Rectified Linear Units
6.4Ein Neuron auswählen
6.5Zusammenfassung
7Künstliche neuronale Netze
7.1Die Eingabeschicht
7.2Vollständig verbundene Schichten
7.3Ein vollständig verbundenes Netzwerk zum Erkennen von Hotdogs
7.3.1Forwardpropagation durch die erste verborgene Schicht
7.3.2Forwardpropagation durch nachfolgende Schichten
7.4Die Softmax-Schicht eines Netzwerks zum Klassifizieren von Fastfood
7.5Zurück zu unserem flachen Netzwerk
7.6Zusammenfassung
8Deep Networks trainieren
8.1Kostenfunktionen
8.1.1Quadratische Kosten
8.1.2Gesättigte Neuronen
8.1.3Kreuzentropie-Kosten
8.2Optimierung: Lernen, um die Kosten zu minimieren
8.2.1Der Gradientenabstieg
8.2.2Die Lernrate
8.2.3Batch-Größe und stochastischer Gradientenabstieg
8.2.4Dem lokalen Minimum entkommen
8.3Backpropagation
8.4Die Anzahl der verborgenen Schichten und der Neuronen anpassen
8.5Ein mittleres Netz in Keras
8.6Zusammenfassung
9Deep Networks verbessern
9.1Die Initialisierung der Gewichte
9.1.1Xavier-Glorot-Verteilungen
9.2Instabile Gradienten
9.2.1Verschwindende Gradienten
9.2.2Explodierende Gradienten
9.2.3Batch-Normalisierung
9.3Modellgeneralisierung (Überanpassung vermeiden)
9.3.1L1- und L2-Regularisierung
9.3.2Dropout
9.3.3Datenaugmentation
9.4Intelligente Optimierer
9.4.1Momentum
9.4.2Nesterov-Momentum
9.4.3AdaGrad
9.4.4AdaDelta und RMSProp
9.4.5Adam
9.5Ein tiefes neuronales Netz in Keras
9.6Regression
9.7TensorBoard
9.8Zusammenfassung
Teil III. Interaktive Anwendungen des Deep Learning
10Maschinelles Sehen
10.1Convolutional Neural Networks
10.1.1Die zweidimensionale Struktur der visuellen Bilddarstellung
10.1.2Berechnungskomplexität
10.1.3Konvolutionsschichten
10.1.4Mehrere Filter
10.1.5Ein Beispiel für Konvolutionsschichten
10.2Hyperparameter von Konvolutionsfiltern
10.2.1Kernel-Größe
10.2.2Schrittlänge
10.2.3Padding
10.3Pooling-Schichten
10.4LeNet-5 in Keras
10.5AlexNet und VGGNet in Keras
10.6Residualnetzwerke
10.6.1Schwindende Gradienten: Das Grauen der tiefen CNN
10.6.2Residualverbindungen
10.6.3ResNet
10.7Anwendungen des maschinellen Sehens
10.7.1Objekterkennung
R-CNN
Fast R-CNN
Faster R-CNN
YOLO
10.7.2Bildsegmentierung
Mask R-CNN
U-Net
10.7.3Transfer-Lernen
10.7.4Capsule Networks
10.8Zusammenfassung
11Natural Language Processing
11.1Natürliche Sprachdaten vorverarbeiten
11.1.1Tokenisierung
11.1.2Alle Zeichen in Kleinbuchstaben umwandeln
11.1.3Stoppwörter und Interpunktionszeichen entfernen
11.1.4Stemming
11.1.5N-Gramme verarbeiten
11.1.6Vorverarbeitung des kompletten Textkorpus
11.2Worteinbettungen mit word2vec erzeugen
11.2.1Die prinzipielle Theorie hinter word2vec
11.2.2Wortvektoren evaluieren
11.2.3word2vec ausführen
11.2.4Wortvektoren plotten
11.3Der Bereich unter der ROC-Kurve
11.3.1Die Wahrheitsmatrix
11.3.2Die ROC-AUC-Metrik berechnen
11.4Klassifikation natürlicher Sprache mit vertrauten Netzwerken
11.4.1Die IMDb-Filmkritiken laden
11.4.2Die IMDb-Daten untersuchen
11.4.3Die Länge der Filmkritiken standardisieren
11.4.4Vollständig verbundenes Netzwerk
11.4.5Convolutional Networks
11.5Netzwerke für die Verarbeitung sequenzieller Daten
11.5.1Recurrent Neural Networks
11.5.2Ein RNN in Keras implementieren
11.5.3Long Short-Term Memory Units
Ein LSTM mit Keras implementieren
11.5.4Bidirektionale LSTMs
11.5.5Gestapelte rekurrente Modelle
11.5.6Seq2seq und Attention
11.5.7Transfer-Lernen in NLP
11.6Nichtsequenzielle Architekturen: Die funktionale API in Keras
11.7Zusammenfassung
12Generative Adversarial Networks
12.1Die grundlegende GAN-Theorie
12.2Der Quick, Draw!-Datensatz
12.3Das Diskriminator-Netzwerk
12.4Das Generator-Netzwerk
12.5Das Adversarial-Netzwerk
12.6Das GAN-Training
12.7Zusammenfassung
13Deep Reinforcement Learning
13.1Die grundlegende Theorie des Reinforcement Learning
13.1.1Das Cart-Pole-Spiel
13.1.2Markow-Entscheidungsprozesse
13.1.3Die optimale Strategie
13.2Die grundlegende Theorie von Deep-Q-Learning-Netzwerken
13.2.1Value-Funktionen
13.2.2Q-Value-Funktionen
13.2.3Einen optimalen Q-Value schätzen
13.3Einen DQN-Agenten definieren
13.3.1Initialisierungsparameter
13.3.2Das neuronale-Netze-Modell des Agenten bauen
13.3.3Sich an das Spiel erinnern
13.3.4Training über Memory Replay
13.3.5Eine Aktion auswählen
13.3.6Speichern und Laden der Modellparameter
13.4Mit einer OpenAI-Gym-Umgebung interagieren
13.4.1Hyperparameter-Optimierung mit SLM Lab
13.5Agenten jenseits von DQN
13.5.1Policy-Gradienten und der REINFORCE-Algorithmus
13.5.2Der Actor-Critic-Algorithmus
13.6Zusammenfassung
Teil IV. KI und Sie
14Mit Ihren eigenen Deep-Learning-Projekten beginnen
14.1Ideen für Deep-Learning-Projekte
14.1.1Machine Vision und GANs
14.1.2Natural Language Processing
14.1.3Deep Reinforcement Learning
14.1.4Ein vorhandenes Machine-Learning-Projekt überführen
14.2Ressourcen für weitere Projekte
14.2.1Gesellschaftlich nützliche Projekte
14.3Der Modellierungsprozess einschließlich der Anpassung der Hyperparameter
14.3.1Automatisierung der Hyperparameter-Suche
14.4Deep-Learning-Bibliotheken
14.4.1Keras und TensorFlow
14.6Die kommende Artificial General Intelligence
14.7Zusammenfassung
Anhang
ADie formale Notation neuronaler Netze
BBackpropagation
CPyTorch
C.1 PyTorch-Eigenschaften
C.1.1 Das Autograd System
C.1.2 Das Define-by-Run-Framework
C.1.3 PyTorch im Vergleich mit TensorFlow
C.2 PyTorch in der Praxis
C.2.1 Die PyTorch-Installation
C.2.2 Die grundlegenden Bausteine in PyTorch
Einfache Operationen mit Tensoren
Automatische Differentiation
C.2.3 Ein tiefes neuronales Netz in PyTorch bauen
DBildnachweise
Abbildungsverzeichnis
Tabellenverzeichnis
Beispielverzeichnis
Fußnoten. Einführung
Danksagungen
1 Biologisches und maschinelles Sehen
2 Menschen- und Maschinensprache
3 Maschinenkunst
4Spielende Maschinen
5 Der (Code-)Karren vor dem (Theorie-)Pferd
6 Künstliche Neuronen, die Hotdogs erkennen
7 Künstliche neuronale Netze
8 Deep Networks trainieren
9 Deep Networks verbessern
10 Maschinelles Sehen
11 Natural Language Processing
12 Generative Adversarial Networks
13 Deep Reinforcement Learning
14 Mit Ihren eigenen Deep-Learning-Projekten beginnen
A Die formale Notation neuronaler Netze
C PyTorch
Index
Отрывок из книги
Jon Krohn ist Chief Data Scientist beim Machine-Learning-Unternehmen untapt. Er präsentiert eine viel gerühmte Serie aus Tutorials, die von Addison-Wesley herausgebracht wurden, darunter Deep Learning with TensorFlow LiveLessons und Deep Learning for Natural Language Processing LiveLessons. Jon unterrichtet Deep Learning an der New York City Data Science Academy und als Gastdozent an der Columbia University. Er besitzt einen Doktortitel in Neurowissenschaften von der Universität Oxford und veröffentlicht seit 2010 Artikel zum Thema Machine Learning in führenden Fachzeitschriften, darunter Advances in Neural Information Processing Systems.
Grant Beyleveld ist Data Scientist bei untapt, wo er auf dem Gebiet der Verarbeitung natürlicher Sprache mittels Deep Learning arbeitet. Er besitzt einen Doktortitel in biomedizinischer Wissenschaft von der Icahn School of Medicine am Mount Sinai Hospital in New York City, wo er die Beziehung zwischen Viren und ihren Wirten untersuchte. Er ist Gründungsmitglied von deeplearningstudygroup.org.
.....
9.6Regression
9.7TensorBoard
.....