Schulungsübersicht
Teil 1 – Deep Learning und DNN-Konzepte
Einführung in KI, maschinelles Lernen und Deep Learning
- Geschichte, grundlegende Konzepte und übliche Anwendungen der künstlichen Intelligenz, abgesehen von den Fantasien, die dieser Bereich hervorgebracht hat
- Kollektive Intelligenz: Aggregation von Wissen, das von vielen virtuellen Agenten geteilt wird
- Genetische Algorithmen: Evolution einer Population virtueller Agenten durch Selektion
- Übliche lernende Maschinen: Definition
- Arten von Aufgaben: Supervisiertes Lernen, ungesupervisiertes Lernen, Verstärkungslernen
- Arten von Aktionen: Klassifikation, Regression, Clustering, Dichteschätzung, Dimensionsreduktion
- Beispiele für Algorithmen des maschinellen Lernens: Lineare Regression, Naive Bayes, Random Forest (Zufallsbaum)
- Maschinelles Lernen vs. Deep Learning: Probleme, bei denen maschinelles Lernen (Random Forests & XGBoost) heute noch den Stand der Technik darstellt
Grundkonzepte eines neuronalen Netzes (Anwendung: Mehrlagige Perzeptronen)
- Wiederauffrischung der mathematischen Grundlagen
- Definition eines Netzwerkes von Neuronen: Klassische Architektur, Aktivierung und
- Gewichtung früherer Aktivierungen, Tiefe eines Netzes
- Definition des Lernens eines neuronalen Netzes: Kostenfunktionen, Backpropagation, Stochastischer Gradientenabstieg, Maximum-Likelihood-Schätzung
- Modellierung eines neuronalen Netzes: Modellierung von Eingabe- und Ausgabedaten je nach Problemart (Regression, Klassifikation ...). Fluch der Dimensionalität
- Unterscheidung zwischen Mehrfachmerksdaten und Signalen. Wahl einer Kostenfunktion je nach Datenart
- Approximierung einer Funktion durch ein neuronales Netz: Präsentation und Beispiele
- Approximierung einer Verteilung durch ein neuronales Netz: Präsentation und Beispiele
- Datenaugmentation: Wie man einen Datensatz ausbalanciert
- Generalisierung der Ergebnisse eines neuronalen Netzes
- Initialisierung und Regularisierung eines neuronalen Netzes: L1-/L2-Regularisierung, Batch Normalization
- Optimierungs- und Konvergenzalgorithmen
Standardwerkzeuge für ML/DL
Eine kurze Präsentation mit Vor- und Nachteilen, der Position im Ökosystem und der Nutzung ist geplant.
- Datenumgebungs-Tools: Apache Spark, Apache Hadoop Tools
- Maschinelles Lernen: Numpy, Scipy, Scikit
- Deep-Learning-Frameworks auf hoher Abstraktionsebene: PyTorch, Keras, Lasagne
- Deep-Learning-Frameworks auf niedriger Abstraktionsebene: Theano, Torch, Caffe, TensorFlow
Konvolutionelle neuronale Netze (CNNs)
- Präsentation der CNNs: Grundprinzipien und Anwendungen
- Grundlegende Funktionsweise eines CNNs: Konvolutionsschicht, Verwendung eines Kernels,
- Padding & Stride, Generierung von Feature Maps, Pooling-Schichten. Erweiterungen für 1D, 2D und 3D
- Präsentation der verschiedenen CNN-Architekturen, die den Stand der Technik in der Klassifikation gebracht haben
- Bilder: LeNet, VGG-Netzwerke, Network in Network, Inception, ResNet. Präsentation der Innovationen, die durch jede Architektur gebracht wurden, und ihrer breiteren Anwendungen (1x1-Konvolution oder residual connections)
- Verwendung eines Aufmerksamkeitsmodells (Attention Model)
- Anwendung auf einen üblichen Klassifikationsfall (Text oder Bild)
- CNNs für Generierung: Superauflösung, pixelweise Segmentierung. Präsentation
- Hauptstrategien zur Erhöhung von Feature Maps für die Bildgenerierung
Rekurrente neuronale Netze (RNNs)
- Präsentation der RNNs: Grundprinzipien und Anwendungen
- Grundlegende Funktionsweise der RNNs: Versteckte Aktivierung, Backpropagation durch die Zeit (BPTT), entfaltete Version
- Weiterentwicklung zu Gated Recurrent Units (GRUs) und LSTM (Long Short Term Memory)
- Präsentation der verschiedenen Zustände und der durch diese Architekturen eingeführten Weiterentwicklungen
- Konvergenz- und verschwindende Gradientenproblematik (vanishing gradient)
- Klassische Architekturen: Vorhersage zeitlicher Reihen, Klassifikation ...
- RNN Encoder-Decoder-Architektur. Verwendung eines Aufmerksamkeitsmodells
- NLP-Anwendungen: Wort-/Zeichenkodierung, Übersetzung
- Videoanwendungen: Vorhersage des nächsten generierten Bildes einer Videosequenz
Generative Modelle: Variational AutoEncoder (VAE) und Generative Adversarial Networks (GANs)
- Präsentation der generativen Modelle, Verbindung zu den CNNs
- Autoencoder: Dimensionsreduktion und begrenzte Generierung
- Variational Autoencoder: Generatives Modell und Approximierung der Verteilung eines gegebenen. Definition und Nutzung des latenten Raums. Reparameterisierungstrick. Beobachtete Anwendungen und Grenzen
- Generative Adversarial Networks: Grundlagen
- Dual Network Architecture (Generator und Diskriminator) mit alternierendem Lernen, verfügbare Kostenfunktionen
- Konvergenz einer GAN und begegnete Schwierigkeiten
- Verbesserte Konvergenz: Wasserstein GAN, Began. Earth Moving Distance
- Anwendungen zur Generierung von Bildern oder Fotos, Textgenerierung, Superauflösung
Deep Reinforcement Learning
- Präsentation des Verstärkungslernens: Steuerung eines Agenten in einer definierten Umgebung
- Durch einen Zustand und mögliche Aktionen
- Verwendung eines neuronalen Netzes zur Approximierung der Zustandsfunktion
- Deep Q-Learning: Experience Replay und Anwendung zur Steuerung eines Videospieles
- Optimierung der Lernpolitik. On-policy && off-policy. Actor-Critic-Architektur. A3C
- Anwendungen: Steuerung eines einzelnen Videospieles oder eines digitalen Systems
Teil 2 – Theano für Deep Learning
Theano-Grundlagen
- Einführung
- Installation und Konfiguration
Theano-Funktionen
- Eingaben, Ausgaben, Updates, Givens
Training und Optimierung eines neuronalen Netzes mit Theano
- Modellierung eines neuronalen Netzes
- Logistische Regression
- Versteckte Schichten (Hidden Layers)
- Training eines Netzes
- Berechnung und Klassifikation
- Optimierung
- Log Loss
Testen des Modells
Teil 3 – DNN mit TensorFlow
TensorFlow-Grundlagen
- Erstellung, Initialisierung, Speichern und Wiederherstellen von TensorFlow-Variablen
- Speisung, Lesen und Vorladen von TensorFlow-Daten
- Wie man die TensorFlow-Infrastruktur zur Skalierung des Modelltrainings nutzt
- Visualisierung und Bewertung von Modellen mit TensorBoard
TensorFlow-Mechanik
- Daten vorbereiten
- Herunterladen
- Eingaben und Platzhalter (Placeholders)
-
Aufbau der Graphen
- Inferenz
- Verlust (Loss)
- Training
-
Modell trainieren
- Der Graph
- Die Sitzung (Session)
- Trainingsloop (Train Loop)
-
Modell bewerten
- Aufbau des Bewertungsgraphen (Eval Graph)
- Bewertungsausgabe (Eval Output)
Das Perzeptron
- Aktivierungsfunktionen
- Der Perzeptron-Lernalgorithmus
- Binäre Klassifikation mit dem Perzeptron
- Dokumentenklassifikation mit dem Perzeptron
- Grenzen des Perzeptroms
Vom Perzeptron zu Support Vector Machines
- Kerne und der Kernel-Trick
- Maximum-Margin-Klassifikation und Stützvektoren (Support Vectors)
Künstliche neuronale Netze
- Nichtlineare Entscheidungsgrenzen
- Feedforward- und Feedback-künstliche neuronale Netze
- Mehrlagige Perzeptronen (Multilayer Perceptrons)
- Minimierung der Kostenfunktion
- Forward Propagation (Vorwärtspropagation)
- Back Propagation (Rückwärtspropagation)
- Verbesserung der Art, wie neuronale Netze lernen
Konvolutionelle neuronale Netze
- Ziele
- Modellarchitektur
- Prinzipien
- Code-Organisation
- Starten und Training des Modells
- Bewertung eines Modells
Grundlegende Einführungen in die folgenden Module sollen gegeben werden (Kurz introduction, je nach verfügbarer Zeit):
TensorFlow – Erweiterte Nutzung
- Threading und Warteschlangen (Queues)
- Distribuiertes TensorFlow
- Schreiben von Dokumentation und Teilen Ihres Modells
- Anpassung von Datenlesern (Data Readers)
- Manipulation von TensorFlow-Modelldateien
TensorFlow Serving
- Einführung
- Basis-Serving-Tutorial
- Erweitertes Serving-Tutorial
- Tutorial zum Serving des Inception-Modells
Voraussetzungen
Vorkenntnisse in Physik, Mathematik und Programmierung. Beteiligt an Bildverarbeitungsaufgaben.
Die Teilnehmer sollten ein grundlegendes Verständnis der Konzepte des maschinellen Lernens besitzen und praktische Erfahrung mit der Programmierung in Python sowie den entsprechenden Bibliotheken haben.
Erfahrungsberichte (2)
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
Mir hat besonders der Schluss gefallen, als wir die Zeit nahmen, mit CHAT GPT herumzuspielen. Der Raum war dafür jedoch nicht optimal eingerichtet – anstelle eines großen Tisches wären ein paar kleinere Tische nützlicher gewesen, damit wir in kleinen Gruppen zusammenkommen und brainstormen könnten.
Nola - Laramie County Community College
Kurs - Artificial Intelligence (AI) Overview
Maschinelle Übersetzung