Book description
Sprachanwendungen wie Amazon Alexa und Google Translate sind heute allgegenwärtig. Grundlage dafür ist das Natural Language Processing (NLP), das zahllose Möglichkeiten für die Entwicklung intelligenter, Deep-Learning-basierter Anwendungen eröffnet. In diesem Buch lernen Sie die neuesten Techniken zur Verarbeitung von Sprache kennen und nutzen dabei das neue, flexible Deep-Learning-Framework PyTorch.
Die Autoren vermitteln Ihnen einen Überblick über NLP-Methoden und Grundkonzepte neuronaler Netze und demonstrieren Ihnen dann, wie Sie Sprachanwendungen mit PyTorch entwickeln. Sie erfahren z.B., wie Sie Einbettungen verwenden, um Wörter, Sätze und Dokumente darzustellen, wie sich Sequenzdaten mit RNNs modellieren und Sequenzvoraussagen und Sequenz-zu-Sequenz-Modelle generieren lassen, und Sie lernen Entwurfsmuster für den Aufbau von produktionsreifen NLP-Systemen kennen.
Table of contents
- Cover
- Titel
- Impressum
- Inhalt
- Vorwort
-
1 Einführung
- Das Paradigma des überwachten Lernens
- Beobachtung und Zielcodierung
- 1-aus-n-Darstellung
- TF-Darstellung
- TF-IDF-Darstellung
- Zielcodierung
- Berechnungsgraphen
- Grundlagen von PyTorch
- PyTorch installieren
- Tensoren erstellen
- Typ und GröÃe von Tensoren
- Tensor-Operationen
- Indizieren, Slicing und Verknüpfen
- Tensoren und Berechnungsgraphen
- CUDA-Tensoren
- Ãbungen
- Lösungen
- Zusammenfassung
- Literaturhinweise
-
2 Kurzer Abriss des traditionellen NLP
- Korpora, Token und Typen
- Monogramme, Bigramme, Trigramme, â¦, N-Gramme
- Lemmas und Stämme
- Sätze und Dokumente kategorisieren
- Wörter kategorisieren: POS-Tagging
- Spannen kategorisieren: Phrasenerkennung und Eigennamenerkennung
- Struktur von Sätzen
- Wortbedeutungen und Semantik
- Zusammenfassung
- Literaturhinweise
-
3 Grundlegende Komponenten von neuronalen Netzen
- Das Perzeptron: Das einfachste neuronale Netz
- Aktivierungsfunktionen
- Sigmoid
- Tanh
- ReLU
- Softmax
- Verlustfunktionen
- Mittlere quadratische Abweichung
- Kategorischer Kreuzentropie-Verlust
- Binärer Kreuzentropie-Verlust
- Ãberwachtes Training unter der Lupe
- Die Spielzeugdaten konstruieren
- Gradientenbasiertes überwachtes Lernen
- Unterstützende Trainingskonzepte
- Modellperformance richtig messen: Bewertungskennzahlen
- Modellperformance richtig messen: das Dataset aufteilen
- Feststellen, wann das Training beendet werden sollte
- Die richtigen Hyperparameter finden
- Regularisierung
- Beispiel: Stimmungen von Restaurantbewertungen klassifizieren
- Das Yelp-Dataset für Bewertungen
- Die Dataset-Darstellung von PyTorch verstehen
- Vocabulary, Vectorizer und DataLoader
- Ein Perzeptron-Klassifizierer
- Die Trainingsroutine
- Bewertung, Inferenz und Inspektion
- Zusammenfassung
- Literaturhinweise
-
4 Feedforward-Netze für NLP
- Das Multilayer-Perzeptron
- Ein einfaches Beispiel: XOR
- MLPs in PyTorch implementieren
- Beispiel: Nachnamen mit einem MLP klassifizieren
- Das Nachnamen-Dataset
- Vocabulary, Vectorizer und DataLoader
- Das SurnameClassifier-Modell
- Die Trainingsroutine
- Modellauswertung und Vorhersage
- MLPs regularisieren: Gewichtsregularisierung und strukturelle Regularisierung (oder Dropout)
- CNNs
- CNN-Hyperparameter
- CNNs in PyTorch implementieren
- Beispiel: Nachnamen mit einem CNN klassifizieren
- Die Klasse SurnameDataset
- Vocabulary, Vectorizer und DataLoader
- Den SurnameClassifier mit CNNs neu implementieren
- Die Trainingsroutine
- Modellbewertung und Vorhersage
- Verschiedene Themen in CNNs
- Pooling
- Batch-Normalisierung (BatchNorm)
- Netzwerk-in-Netzwerk-Verbindungen (1x1-Faltungen)
- Residual-Verbindungen/Residual-Block
- Zusammenfassung
- Literaturhinweise
-
5 Wörter und Typen einbetten
- Warum Einbettungen lernen?
- Effizienz von Einbettungen
- Ansätze für das Lernen von Worteinbettungen
- Die praktische Verwendung von vortrainierten Worteinbettungen
- Beispiel: Erlernen der CBOW-Einbettungen
- Das Frankenstein-Dataset
- Vocabulary, Vectorizer und DataLoader
- Das CBOWClassifier-Modell
- Die Trainingsroutine
- Modellbewertung und Vorhersage
- Beispiel: Transfer-Lernen mit vortrainierten Einbettungen für Dokumentklassifizierung
- Das Dataset AG News
- Vocabulary, Vectorizer und DataLoader
- Das NewsClassifier-Modell
- Die Trainingsroutine
- Modellbewertung und Vorhersage
- Zusammenfassung
- Literaturhinweise
-
6 Sequenzmodellierung für NLP
- Einführung in rekurrente neuronale Netze
- Ein Elman-Netz implementieren
- Beispiel: Die Nationalität von Nachnamen mit einem Zeichen-RNN klassifizieren
- Die Klasse SurnameDataset
- Die Datenstrukturen der Vektorisierung
- Das SurnameClassifier-Modell
- Die Trainingsroutine und die Ergebnisse
- Zusammenfassung
- Literaturhinweise
-
7 Intermediäre Sequenzmodellierung für NLP
- Das Problem mit einfachen RNNs (oder Elman-Netzen)
- Gating als eine Lösung für Herausforderungen von einfachen RNNs
- Beispiel: Nachnamen mit Zeichen-RNN generieren
- Die Klasse SurnameDataset
- Die Vektorisierungs-Datenstrukturen
- Vom ElmanRNN zur GRU
- Modell 1: Das unkonditionierte SurnameGenerationModel
- Modell 2: Das konditionierte SurnameGenerationModel
- Die Trainingsroutine und die Ergebnisse
- Tipps und Tricks für das Training von Sequenzmodellen
- Literaturhinweise
-
8 Erweiterte Sequenzmodellierung für NLP
- Sequenz-zu-Sequenz-Modelle, Encoder-Decoder-Modelle und konditionierte Generierung
- Mehr von einer Sequenz erfassen: Bidirektionale rekurrente Modelle
- Mehr von einer Sequenz erfassen: Attention
- Attention in tiefen neuronalen Netzen
- Sequenzgenerierungsmodelle bewerten
- Beispiel: Neuronale maschinelle Ãbersetzung
- Das Dataset für maschinelle Ãbersetzung
- Eine Vektorisierungs-Pipeline für NMT
- Im NMT-Modell codieren und decodieren
- Die Trainingsroutine und die Ergebnisse
- Zusammenfassung
- Literaturhinweise
- 9 Klassiker, Grenzen und nächste Schritte
- Index
- Ãber die Autoren
Product information
- Title: Natural Language Processing mit PyTorch
- Author(s):
- Release date: November 2019
- Publisher(s): dpunkt
- ISBN: 9783960091189
You might also like
book
Natural Language Processing mit Transformern
Transformer haben sich seit ihrer Einführung nahezu über Nacht zur vorherrschenden Architektur im Natural Language Processing …
book
Einführung in Machine Learning mit Python
Machine Learning ist zu einem wichtigen Bestandteil vieler kommerzieller Anwendungen und Forschungsprojekte geworden, von der medizinischen …
book
Neuronale Netze und Deep Learning kapieren -- Der einfache Praxiseinstieg mit Beispielen in Python
Von den Grundlagen Neuronaler Netze über Machine Learning bis hin zu Deep-Learning-Algorithmen Anschauliche Diagramme, Anwendungsbeispiele in …
book
PyTorch für Deep Learning
Mit diesem praxisorientierten Buch meistern Sie die Methoden des Deep Learning, einer Teildisziplin des Machine Learning, …