Tutorials und Infrastruktur
Die niederschwelligen Tutorials des Kurses umfassen die folgenden Themen:
Training von Modellen
- Trainieren von Modellen mittels PhotonAI
PhotonAI ist eine high-level Python API, mit der schnell und einfach Machine Learning Pipelines erstellt werden können. Als Basis dienen bekannte Frameworks wie Scikit-learn und Keras.
- Trainieren mittels TensorFlow
TensorFlow ist ein Framework, das insbesondere die Verarbeitung mehrdimensionaler Daten und das Training von tiefen Neuronalen Netzen ermöglicht. Es werden Schnittstellen zu zahlreichen Programmiersprachen angeboten, sodass eine Verwendung der fertigen Modelle beispielsweise auch auf mobilen Endgeräten möglich ist.
- Trainieren auf PALMA II der WWU
Das Hochleistungs-Rechencluster der WWU bietet viele Ressourcen. Hier lernst du wie du dein Modell dort trainieren kannst.
Verwaltung von Code und Deployment
- Code-Verwaltung mit GitLab
Essentiell in Softwareprojekten ist eine gute Verwaltung des Codes, unter anderem um Änderungen nachvollziehbar und gegebenenfalls rückgängig zu machen. Wir schauen uns die Grundlagen des Code-Verwaltungssystems GitLab an, das auch die WWU betreibt. Durch automatisches Deployment mittels GitLab kann die Software automatisiert auf den WWUKube veröffentlicht werden. Wir schauen uns hierzu die CI/CD Pipelines an und zeigen, wie die Automatisierung von Builds funktioniert.
- Erstellen einer API mit Flask
Flask ist ein extrem schlankes Webframework und wird mit einem eigenen Webserver für die Entwicklung ausgeliefert. Die wenigen Vorgaben seitens Flask lassen viel Spielraum für eigene individuelle Lösungen.
Wir möchten unser Programm zuverlässig auf einem (nahezu) beliebigen Server unabhängig von anderen Anwendungen zulassen. Dafür bietet sich Software zur Containervirtualisierung, wie zum Beispiel Docker, an.
- Deployment in den WWUKube
Der WWUKube ist das Multi-Tenant Kubernetes Cluster der WWU, auf dem Dienste zur Verfügung gestellt werden können. Durch die enge Verzahnung mit dem CEPHFS Speichersystem der WWU können die Daten zwischen PALMA, JupyterHub, OpenStack und WWUKube einfach geteilt werden.
- Deployment bei kommerziellen Cloud-Anbietern
tbd.
Und hier geht's zu den Tutorials und zum GitLab.