Dieses Seminar soll Sie in die Lage versetzen, ihre eigenen Deep Learning Modelle in Python 3 mit TensorFlow und Keras zu bauen, trainieren und evaluieren. Auch Neuronale Netze werden betrachtet.
Dabei ist das Verstehen der Grundlagen essentiell, um die Modelle effizient zu bauen (Anzahl an Schichten und Filtern im Deep Learning Modell), zu trainieren, dabei den Trainingsaufwand abzuschätzen und schließlich die Modelle zu evaluieren.
Zu den Grundlagen gehören die einfachen Neuronalen Netze, denn Deep Learning Modelle sind Neuronale Netze mit mehr als einem Hidden Layer.
In Neuronalen Netzen sind die Aktivierungsfunktionen und die Art des Netzwerkes (Feed Forward, Back-Propagation etc.) bedeutsam. Eine Herausforderung stellt das Trainieren der Netzwerke dar, denn das Schätzen der im Modell enthaltenen Parameter führt zu hochdimensionalen, nichtlinearen Optimierungsproblemen (lokales und globales Maximum). Ein weiteres Problem stellen überdimensionierte Netze dar. Diese brauchen mehr Ressourcen für die Optimierung und führen oft zu Overfitting. Eine vernünftige Planung und das Testen der Modellspezifikationen sind hier von Bedeutung.
Werden viele Hidden Layer genutzt, sprechen wir von einem Deep Learning Modell. Hier ist die Modellart nach der Problemstellung zu wählen. Dazu werden zuerst die wesentlichen Modellarten erlernt und dann direkt in Jupyter-Notebooks mit Python, TensorFlow und Keras umgesetzt. Zu den wesentlichen Modellarten zählen das Convolutional Neural Network (covnet oder CNN), das Recurrent Neural Network (RNN) und das LSTM (Long short-term memory). Die verschiedenen zentralen Modelle werden anhand von Fallstudien praktisch umgesetzt.
Hinweise zum Deployment der Deep Learning Modelle runden das Seminar ab.