Vorlesung: Programmieren mit neuronalen Netzen
Programmieren mit Neuronalen Netzen
Termine
- Vorlesung: Donnerstag, 10:00 - 11:30 Übungsraum II
- Übung: Freitag, 12:15 - 13:45 Übungsraum I
- Klausur: Donnerstag, 25. Juli 2019
Dozenten
- Frank Puppe
- Markus Krug
- Christoph Wick
- Amar Hekalo
Kompetenzen
- Verständnis der Einsatzmöglichkeiten und Grenzen von NN
- Programmierumgebungen Tensorflow/Keras, basierend auf Python & Numpy
- Wichtige Architekturen FCN (Fully Connected), CNN (Convolutional NN),
- LSTM (Long Short-Term Memory), Netzlayouts, Hyperparameter, Gewichtsupdate mit Gradient Descent
- Planung von Experimenten und Auswertung
- Lösen konkreter Aufgaben für NN
- Nachprogrammieren von Netzstrukturen aus der Literatur
- Methoden der Datenaufbereitung, -generierung und -augmentierung
Inhalt
- Grundlagen (Netztypen, Layerarten, Hyperparameter usw.; Bsp.: MNIST)
- Implementierung von Keras Code für FCN mit Numpy (Arrays)
- Implementierung von Keras Code für CNNs mit Numpy (Arrays)
- Implementierung von Keras Code für LSTMs mit Numpy (Arrays)
- Zusammenfassung und Vertiefung von FCN, CNN, LSTM
- Praktische Anwendungen: Beispiel: Blattklassifikation mit Vorgehenstrategie, u.a. Datenaugmentierung, Pretraining, Hyperparameteroptimierung, PseudoCode für CNNs in Tensorflow/Keras mit Beispielen
- FCN, z.B. für Bild-Segmentierung in Tensorflow/Keras
- CTC (Sequence Modelling) in Tensorflow für OCR
- Sequence to Sequence Text Klassifikation in Tensorflow
- Medizinische Bildverarbeitung (2D und 3D CNN)