Schulungsübersicht
Einführung
- Einführung in TensorFlow und Deep Learning
- Anwendungsfall und Anwendungen von TensorFlow
- TensorFlow-Ökosystem und Tooling
- Workflows für Machine Learning und Deep Learning
- Überblick über die Kursziele und praktischen Übungen
TensorFlow 2.x vs. frühere Versionen — Was ist neu
- Wesentliche Unterschiede zwischen TensorFlow 1.x und 2.x
- Eager Execution
- Vereinfachte APIs und verbesserte Benutzbarkeit
- Änderungen beim Aufbau und Training von Modellen
- Einführung von Keras als High-Level-API
- Überlegungen zur Migration bestehender TensorFlow-Anwendungen
- Best Practices für TensorFlow 2.x
Einrichtung von TensorFlow 2.x
- Installation von TensorFlow
- Konfiguration einer Python-Umgebung
- Überprüfung der TensorFlow-Installation
- Installation und Verwaltung erforderlicher Abhängigkeiten
- Konfiguration von CPU- und GPU-Umgebungen
- Verwendung von TensorFlow mit Jupyter-Notebooks
- Grundlegende TensorFlow-Befehle und Operationen
- Behebung von Installations- und Konfigurationsproblemen
Überblick über Funktionen und Architektur von TensorFlow 2.x
- TensorFlow-Architektur und Kernelemente
- Tensoren und Tensoroperationen
- Variablen und Konstanten
- Berechnungsgraphen und Eager Execution
- Automatische Differenzierung
- TensorFlow-APIs und Module
- Keras-Integration
- Datenpipelines mit
tf.data - Serialisierung von Modellen und TensorFlow SavedModel
- TensorFlow-Ökosystem und Entwicklungsworkflow
Wie neuronale Netzwerke funktionieren
- Grundlagen künstlicher neuronaler Netzwerke
- Neuronen, Schichten und Netzwerkarchitekturen
- Aktivierungsfunktionen
- Forward Propagation
- Loss-Funktionen
- Backpropagation
- Gradient Descent und Optimierung
- Lernraten und Optimierungsstrategien
- Overfitting und Underfitting
- Regularisierungstechniken
- Trainings-, Validierungs- und Testdatensätze
Erstellen von Deep-Learning-Modellen mit TensorFlow 2.x
- Erstellen von Tensoren und Variablen
- Aufbau neuronaler Netzwerke mit Keras
- Sequentielle und funktionale Modell-APIs
- Definieren benutzerdefinierter Modelle und Schichten
- Konfiguration von Optimierern
- Auswahl geeigneter Loss-Funktionen
- Training von Modellen mit
fit() - Benutzerdefinierte Trainings Schleifen
- Callbacks und Trainingsüberwachung
- Verwaltung von Modell-Checkpoints
Datenanalyse
- Verstehen von Datensätzen für Machine Learning
- Erkundung strukturierter und unstrukturierter Daten
- Datenvisualisierung
- Erkennung von Mustern und Anomalien
- Verarbeitung fehlender und inkonsistenter Daten
- Aufteilung von Daten in Trainings-, Validierungs- und Testsätze
- Auswahl relevanter Merkmale
- Vorbereitung von Datensätzen für TensorFlow-Modelle
Datenvorverarbeitung
- Datennormalisierung und -standardisierung
- Kodierung kategorialer Daten
- Verarbeitung fehlender Werte
- Feature Scaling
- Bildvorverarbeitung
- Textvorverarbeitung
- Data Augmentation
- Aufbau effizienter Eingabepipelines
- Verwendung von
tf.data - Batching, Shuffling, Caching und Prefetching
- Vorbereitung von Daten für das Modelltraining
Modellbau
- Auswahl einer geeigneten neuronalen Netzwerkarchitektur
- Definieren von Modell-Eingaben und -Ausgaben
- Erstellen von dichten neuronalen Netzen
- Auswahl von Aktivierungsfunktionen
- Konfiguration des Modells für das Training
- Auswahl von Optimierern und Loss-Funktionen
- Training und Validierung des Modells
- Überwachung von Trainingsmetriken
- Verbesserung der Modellleistung
- Vermeidung von Overfitting
- Implementierung von Regularisierung und Dropout
Implementierung eines state-of-the-art Bildklassifizierers
- Grundlagen der Bildklassifizierung
- Vorbereitung von Bilddatensätzen
- Bildnormalisierung und -augmentation
- Konvolutionale neuronale Netzwerke
- Konvolutions- und Pooling-Schichten
- Gestaltung einer Bildklassifizierungsarchitektur
- Transfer Learning
- Verwendung vortrainierter Modelle
- Fine-Tuning vortrainierter Netze
- Erstellung eines erweiterten Bildklassifizierers
- Bewertung der Klassifizierungsleistung
Training des Modells
- Konfiguration von Trainingsparametern
- Batch-Size und Epochen
- Auswahl von Optimierern
- Learning-Rate Scheduling
- Training Callbacks
- Early Stopping
- Checkpointen von Modellen
- Überwachung des Trainingsfortschritts
- Erkennung von Overfitting
- Verbesserung der Trainingsleistung
- Überlegungen zum verteilten Training
Training auf einer GPU vs. einer TPU
- Architekturen von CPU, GPU und TPU
- Vorteile der Hardwarebeschleunigung
- Konfiguration von TensorFlow für GPU-Training
- Verstehen des TPU-basierten Trainings
- Auswahl von Hardware für unterschiedliche Workloads
- Verschieben von Berechnungen zwischen Geräten
- Verwaltung von Speicher- und Rechenressourcen
- Vergleich der Trainingsleistung
- Verteilte und beschleunigte Trainingsstrategien
Bewertung des Modells
- Auswahl geeigneter Bewertungsmetriken
- Genauigkeit, Präzision, Recall und F1-Score
- Bewertungsmetriken für Regression
- Verwechslungsmatrizen
- Validierungsstrategien
- Bewertung von Klassifizierungsmodellen
- Bewertung der Modellgeneralisierung
- Identifizierung von Modell-Schwächen
- Vergleich unterschiedlicher Modellkonfigurationen
Vorhersagen treffen
- Nutzung trainierter Modelle für die Inferenz
- Vorbereitung neuer Eingabedaten
- Durchführung von Batch- und Einzelvorhersagen
- Interpretation von Modell-Ausgaben
- Klassifizierungswahrscheinlichkeiten
- Regression-Vorhersagen
- Aufbau eines Inferenz-Workflows
- Verarbeitung unbekannter Daten
- Verwaltung von Vorhersagepipelines
Bewertung der Vorhersagen
- Analysierung der Vorhersagequalität
- Vergleich von Vorhersagen mit erwarteten Ergebnissen
- Identifizierung von falschen Positiven und falschen Negativen
- Fehleranalyse
- Bewertung des Modell-Vertrauens
- Visualisierung von Vorhersageergebnissen
- Erkennung von Daten- und Vorhersageverzerrungen
- Verbesserung der Modellleistung basierend auf der Vorhersageanalyse
Debugging des Modells
- Identifizierung häufiger Trainingsprobleme
- Diagnose falscher Vorhersagen
- Debugging von Datenpipelines
- Untersuchung des Verhaltens von Loss und Metriken
- Erkennung von explodierenden und verschwindenden Gradienten
- Diagnose von Overfitting und Underfitting
- Prüfung von Modellschichten und Ausgaben
- Nutzung von TensorFlow-Debugging- und Profiling-Tools
- Verbesserung der Modellstabilität und -leistung
Speichern eines Modells
- Speichern trainierter Modelle
- TensorFlow SavedModel-Format
- Speichern und Wiederherstellen von Modellgewichten
- Speichern von Modellarchitektur und Konfiguration
- Laden von Modellen für die Inferenz
- Versionierung von Modellen
- Exportieren von Modellen für die Bereitstellung
- Verwaltung von Modellartefakten
- Vorbereitung von Modellen für Produktionsumgebungen
Bereitstellung eines Modells in der Cloud
- Einführung in die modellbasierte Bereitstellung in der Cloud
- Vorbereitung von TensorFlow-Modellen für die Produktion
- Bereitstellung von Modellen über APIs
- Model Serving Konzepte
- Containerisierung von TensorFlow-Anwendungen
- Cloud-basierte Inferenz
- Scalierung von Model-Serving-Workloads
- Überwachung bereitgestellter Modelle
- Verwaltung von Modellversionen
- Überlegungen zur Produktivbereitstellung
Bereitstellung eines Modells auf einem mobilen Gerät
- Herausforderungen des mobilen Machine Learning
- TensorFlow Lite
- Konvertieren von TensorFlow-Modellen für die mobile Bereitstellung
- Optimierung von Modellen und Größenreduzierung
- Quantisierung
- Durchführen von Inferenzen auf mobilen Geräten
- Verwaltung von Mobilgeräte-Ressourcen
- Integration von Modellen in mobile Anwendungen
- Testen der mobilen Inferenzleistung
Bereitstellung eines Modells in einem eingebetteten System (IoT)
- Machine Learning auf eingebetteten Geräten
- TensorFlow Lite für eingebettete Anwendungen
- Ressourcenbeschränkungen und Optimierung
- Reduzierung der Modellgröße und der Rechenanforderungen
- Edge-Inferenz
- Verarbeitung von Sensor- und Echtzeitdaten
- Lokales Durchführen von Vorhersagen
- Überlegungen zu Stromverbrauch und Speicher
- Integration von TensorFlow-Modellen in IoT-Workflows
- Testen und Überwachen von Edge-Bereitstellungen
Integration eines Modells mit verschiedenen Sprachen
- Interoperabilität von TensorFlow-Modellen
- Bereitstellung von Modellen über APIs
- Nutzung von TensorFlow-Modellen aus verschiedenen Programmierumgebungen
- Python-basierte Modellintegration
- Integration von Modellen in Web-Anwendungen
- Modell-Inferenz über REST-basierte Dienste
- Integration von TensorFlow in bestehende Anwendungen
- Datenaustausch und Serialisierung
- Überlegungen zur Produktionsintegration
Fehlerbehebung
- Diagnose von TensorFlow-Installationsproblemen
- Behebung von Modellbaufehlern
- Debugging von Problemen bei der Datenvorverarbeitung
- Lösung von Trainingsfehlern
- Untersuchung von GPU- und TPU-Konfigurationsproblemen
- Diagnose von Speicher- und Leistungsproblemen
- Behebung von Problemen beim Laden und Speichern von Modellen
- Debugging von Bereitstellungsproblemen
- Praktische Fehlerbehebungsübungen
Zusammenfassung und Schlussfolgerung
- Wiederholung der TensorFlow-2.x-Konzepte
- Wiederholung der neuronalen Netzwerk- und Deep-Learning-Workflows
- Wiederholung der Datenvorbereitung und Modellentwicklung
- Wiederholung der Bildklassifizierung
- Wiederholung der Trainings- und Bewertungstechniken
- Wiederholung des Modell-Debuggings und der Optimierung
- Wiederholung der Bereitstellung in Cloud, Mobile und IoT
- Best Practices für die TensorFlow-Entwicklung
- Letzte praktische Übung
- Fragen und Diskussion
Voraussetzungen
- Programmierungserfahrung in Python.
- Erfahrung mit der Linux-Befehlszeile.
Zielgruppe
- Entwickler
- Data Scientists
Erfahrungsberichte (4)
Die Ausbildung war gut organisiert und strukturiert. Ich habe sie mit systematischem Wissen und einer fundierten Übersicht der behandelten Themen successfully absolviert.
Magdalena - Samsung Electronics Polska Sp. z o.o.
Kurs - Deep Learning with TensorFlow 2
Maschinelle Übersetzung
Das Wissen des Trainers und die Tatsache, dass sie sehr zugänglich waren. Sie konnten wichtiges Wissen leicht vermitteln.
Mateusz Stachyra - Samsung Electronics Polska Sp. z o.o.
Kurs - Deep Learning with TensorFlow 2
Maschinelle Übersetzung
Ich mochte es, dass wir auch die Grundlagen behandelt haben
Tomasz - Samsung Electronics Polska Sp. z o.o.
Kurs - Deep Learning with TensorFlow 2
Maschinelle Übersetzung
Der Trainer erklärte den Inhalt gut und war die ganze Zeit sehr fesselnd. Er machte Pausen, um Fragen zu stellen, und ließ uns in einigen praktischen Sitzungen selbstständig zu Lösungen kommen. Er passte den Kurs auch hervorragend an unsere Bedürfnisse an.
Robert Baker
Kurs - Deep Learning with TensorFlow 2.0
Maschinelle Übersetzung