Skip to main content

Practical Lab WS 23/24 Parallel-skalierbares Maschinelles Lernen

Parallel-skalierbares Maschinelles Lernen

Under direction of
Dr. Alexander Rüttgers
Assistant
Lukas Troska

Daten

Datum: freitags, 10:15 bis 12:00

Ort: INS, Raum 2.035, Friedrich-Hirzebruch-Allee 7

Erstes Treffen: Freitag, 13. Oktober 2023, 10:15-12:00, INS, Raum 2.035, Friedrich-Hirzebruch-Allee 7

Kontakt: ed tod rld ta sregtteur tod rednaxelaa tod b@foo tod de

image
Aufnahme von Erdbeobachtungsdaten durch die deutschen Radarsatelliten TanDEM-X und TerraSAR-X. Beide Satelliten werden vom Deutschen Zentrum für Luft- und Raumfahrt (DLR) betrieben.
Credit: DLR (CC BY-NC-ND 3.0)

Kursinhalt

Das Programmierpraktikum konzentriert sich auf Methoden aus dem Bereich des maschinellen Lernens (ML) zur Analyse großer Bilddatensätze, insbesondere auf durch Satelliten gewonnene Erdbeobachtungsdatendatensätze. Ein zentraler Aspekt im Praktikum ist die Nutzung von parallel-skalierenden Algorithmen, um die gewonnenen Daten in einem überschaubaren Zeitrahmen auswerten zu können. Kursinhalte sind:

  • Programmieren in Python und der ML-Bibliothek PyTorch
  • Parallelisierungs-Strategien für tiefe neuronale Netze (Daten-Parallelismus, Modell-Parallelismus, Parallelisierung entlang der Netztiefe), Einblick in die Bibliothek mpi4py
  • Anwendung von Algorithmen aus den Bereichen Clustering, Klassifikation und Anomaliedetektion auf Erdbeobachtungsdaten
  • Optimierung der Hyperparameter der entwickelten ML-Modelle

Alle Kursinhalte werden vorgestellt und dann im Rahmen von Programmieraufgaben, die auf Übungszetteln gestellt werden, in Python implementiert. Die Übungsaufgaben können alleine oder in Gruppen von bis zu 3 Personen gelöst werden. Im Regelfall sollen die Übungsaufgaben innerhalb von zwei Wochen bearbeitet werden.

Motivation

Unter Erdbeobachtungsdaten werden alle Daten unseres Planeten Erde zusammengefasst. Darunter fallen auch Fernbeobachtungsdaten von Satelliten. Ein Beispiel dafür bietet das Copernicus-Programm der Europäischen Kommission, das aktuell die Satellitenmissionen Sentinel-1 bis Sentinel-6 betreibt. Diese europäischen Satellitenmissionen liefern vielfältige Daten der Erde (optische Daten, Radardaten, …), die zu einem großen Teil frei verfügbar sind. Erdbeobachtungsdaten werden beispielsweise dazu genutzt, den Klimawandel besser zu überwachen, Bodenveränderung wie bei der Abholzung von Wäldern zu erkennen oder in Katastrophenfällen (Überflutungen, Großfeuer) zu helfen. Dafür reicht die alleinige Gewinnung der Daten nicht aus. Wichtig sind effiziente und parallel-skalierende Analysemethoden aus dem Bereich des maschinellen Lernens, um aus den Daten tatsächliches Wissen zu erhalten. Dies wird, in einem begrenzten Umfang, auch im Programmierpraktikum umgesetzt.

Anmeldung

Die Anmeldung für die Veranstaltung erfolgt über Basis mit den üblichen Fristen der Universität Bonn (“Prüfungsanmeldung und -abmeldung”). Weitere Information dazu werden auf der ersten Veranstaltung am 13. Oktober 2023 gegeben.

Anforderungen

Grundlegende Programmierkenntnisse in Python werden vorausgesetzt. Die benötigte Software (Python Entwicklungsumgebung/ Editor wie beispielsweise PyCharm Community Edition, Python Paket-Manager) kann auf dem eigenen Rechner installiert werden. Alternativ können Linux Workstations am Institut genutzt werden. Grundsätzlich können alle Betriebssysteme (Linux, macOS, Windows) benutzt werden. Eine Anwendungsunterstützung ist aber nur für Linux möglich. Sofern Sie kein Linux auf ihrem Rechner installieren wollen, wäre auch die Nutzung von Linux über eine virtuelle Maschine, beispielsweise über den VMware Workstation Player, möglich. Für die Teilnahme im Bachelorstudium wird die vorherige Teilnahme an den Veranstaltungen Algorithmische Mathematik I und II vorausgesetzt.

Benotung

Für die Benotung wird die Arbeit während des Praktikums mitberücksichtigt. Darüber hinaus gibt es eine mündliche Prüfung am Semesterende.