Zur Modulseite PDF generieren

#41143 / #4

WiSe 2024/25 - WiSe 2024/25

Englisch

Python for Machine Learning
Python für Maschinelles Lernen

6

Müller, Klaus-Robert

Benotet

Schriftliche Prüfung

Englisch

Zugehörigkeit


Fakultät IV

Institut für Softwaretechnik und Theoretische Informatik

34352000 FG Maschinelles Lernen

Keine Angabe

Kontakt


MAR 4-1

Wolff, Jannik

pyml@ml.tu-berlin.de

Lernergebnisse

Die Studierenden verfügen über ein tiefes theoretisches Verständnis der Python-Programmierung, das sie mit Standard-Programmierwerkzeugen wie Jupyter-Notebooks und einem Debugger selbstständig anwenden können. Insbesondere verstehen die Studierenden allgemeinen Prinzipien, die der Python-Programmierung zugrunde liegen, wie etwa Python-Syntax und fortgeschrittene Paradigmen der funktionalen und objektorientierten Programmierung. Sie können diese Fähigkeiten auf fortgeschrittene Data-Science- und Maschinenlernaufgaben anwenden. Dies schließt die effiziente und kompakte Implementierung komplexer Tensoroperationen sowie die Implementierung von Visualisierungsmethoden ein.

Lehrinhalte

Das Modul motiviert Python Programmierung, indem es die Programmiersprache kurz anderen Programmierparadigmen gegenüberstellt (z.B. Julia oder C). Es führt in Python-spezifische Programmierprinzipien ein, wie etwa Duck-Typing oder idiomatische Konstrukte ("Pythonic" Syntax), wie beispielsweise „generator comprehensions“. Die Studierenden implementieren Visualisierungsmethoden hauptsächlich unter Verwendung des Frameworks Matplotlib. Das Modul lehrt die Anwendung der erlernten Programmierfähigkeiten auf Probleme des maschinellen Lernens (ML), wozu auch das konzeptionelle Verständnis beispielhafter ML-Szenarien gehört. Zum Beispiel vermittelt das Modul die Implementierung komplexer Tensoroperationen (die häufig beim maschinellen Lernen relevant sind) mit Acceleration-Frameworks (wie NumPy und PyTorch), die einen kompakten Syntax und eine effiziente Berechnung gewährleisten. Das Modul lehrt die Verwendung von Programmierumgebungen wie Jupyter-Notebooks und Tools wie Debugger, die auch während der Prüfung verwendet werden können (vorausgesetzt, eine digitale Prüfung ist in einem gegebenen Semester möglich).

Modulbestandteile

Pflichtbereich

Die folgenden Veranstaltungen sind für das Modul obligatorisch:

LehrveranstaltungenArtNummerTurnusSpracheSWS ISIS VVZ
Python for Machine LearningIVWiSe/SoSeen4

Arbeitsaufwand und Leistungspunkte

Python for Machine Learning (IV):

AufwandbeschreibungMultiplikatorStundenGesamt
Tutorien9.02.0h18.0h
Vorbereitung auf die Prüfung1.045.0h45.0h
Vorlesungen9.02.0h18.0h
Vor- und Nachbereitung der Tutorien (einschließlich Hausaufgaben)9.08.0h72.0h
Vor- und Nachbereitung der Vorlesungen9.03.0h27.0h
180.0h(~6 LP)
Der Aufwand des Moduls summiert sich zu 180.0 Stunden. Damit umfasst das Modul 6 Leistungspunkte.

Beschreibung der Lehr- und Lernformen

Das Modul weist ein hybrides Format auf: Einerseits unterrichten die Kursleiter einen Teil der Inhalte persönlich in einem angeleiteten Format. Andererseits lernen die Studierenden, selbstständig und individuell zu programmieren, während sie ein fundiertes theoretisches Verständnis von Programmierparadigmen und relevanten Machine-Learning-Problemen aufbauen. Das Modul umfasst neun wöchentliche Vorlesungen und das Äquivalent von neun Tutoriumssitzungen. Einige Wochen enthalten Hausaufgaben. Diese müssen individuell bearbeitet werden, allerdings bieten die Tutorien bei Bedarf Hilfe an und besprechen mögliche Lösungen nach der Abgabe der Hausaufgaben.

Voraussetzungen für die Teilnahme / Prüfung

Wünschenswerte Voraussetzungen für die Teilnahme an den Lehrveranstaltungen:

Studierende sollten grundlegende Programmierprinzipien wie Rekursion kennen - in Python oder einer anderen Programmiersprache. Sie sollten auch grundlegende mathematische Prinzipien kennen. Beispielsweise erleichtert Wissen in linearer Algebra das Verständnis für die Implementierung komplexer Tensoroperationen.

Verpflichtende Voraussetzungen für die Modulprüfungsanmeldung:

Dieses Modul hat keine Prüfungsvoraussetzungen.

Abschluss des Moduls

Benotung

Benotet

Prüfungsform

Schriftliche Prüfung

Sprache(n)

Englisch

Dauer/Umfang

Keine Angabe

Dauer des Moduls

Für Belegung und Abschluss des Moduls ist folgende Semesteranzahl veranschlagt:
1 Semester.

Dieses Modul kann in folgenden Semestern begonnen werden:
Winter- und Sommersemester.

Maximale teilnehmende Personen

Die maximale Teilnehmerzahl beträgt 180.

Anmeldeformalitäten

Auf der Website des Moduls (zu finden auf der Website der Fachgruppe Maschinelles Lernen der TU Berlin) sind die Zulassungsmodalitäten für das jeweilige Semester detailliert beschrieben. Die Studierenden sind angehalten, sich rechtzeitig (idealerweise vor Semesterbeginn) über das Zulassungsverfahren zu informieren. Andernfalls kann es passieren, dass sie nicht am Modul teilnehmen können, wenn sie wichtige Zulassungsfristen versäumen. An diesem Modul können nur Studierende teilnehmen, die das Wahlfach "Python Programming for Machine Learning (PyML)" nicht(!) im Rahmen eines Moduls wie "Machine Learning 1-X", "Machine Learning 2-X" oder "Cognitive Algorithms" belegt oder ein entsprechendes Zertifikat erworben haben. Die maximale Teilnehmendenanzahl beträgt 180. Wenn sich Umstände ändern, z. B. hinsichtlich der Kapazität der digitalen Prüfungseinrichtungen, kann die Kapazitätsgrenze des Moduls angepasst werden (in beide Richtungen). Eine etwaige Änderung der Teilnehmendenanzahl für ein bestimmtes Semester wird auf der Website des Moduls veröffentlicht.

Literaturhinweise, Skripte

Skript in Papierform

Verfügbarkeit:  nicht verfügbar

 

Skript in elektronischer Form

Verfügbarkeit:  verfügbar

 

Literatur

Empfohlene Literatur
Keine empfohlene Literatur angegeben

Zugeordnete Studiengänge


Diese Modulversion wird in folgenden Studiengängen verwendet:

Studiengang / StuPOStuPOsVerwendungenErste VerwendungLetzte Verwendung
Dieses Modul findet in keinem Studiengang Verwendung.

Sonstiges

Wenn möglich, findet die Prüfung digital statt, wobei die Studierenden Code in Jupyter-Notebooks schreiben und Zugang zu einem Python-Interpreter, zur Dokumentation (über die Python-Standardbibliothek) und zu einem einfachen Python-Debugger haben. In diesem Fall findet die Prüfung vor Ort statt, d. h. es handelt sich nicht um eine Online-Prüfung. Die Durchführbarkeit dieses Klausurkonzepts kann jedoch nicht garantiert werden und ist möglicherweise durch technische und andere Ressourcen eingeschränkt. Die Ausweichlösung ist entweder eine schriftliche Prüfung (mit Stift und Papier) oder eine hybride Lösung (z. B. kein Zugriff zu einem Python-Interpreter, aber Einreichen der Antworten über ISIS). Die Studierenden können ein A4-Blatt (mit beliebigem Inhalt auf beiden Seiten) zur Prüfung mitbringen.