Modulbeschreibung

Python für ML

ECTS-Credits:
4
Lernziele:

Dieses Modul vermittelt fortgeschrittene Python-Konzepte, die für die Entwicklung effizienter KI- und Datenverarbeitungsanwendungen relevant sind. Im Mittelpunkt steht, wie sich durch moderne Sprachfeatures und strukturierte Programmieransätze performante, wartbare und testbare Programme erstellen lassen.
Studierende mit grundlegenden Python-Kenntnissen vertiefen ihr Verständnis der Sprache und lernen, wie sie komplexe Aufgaben mit objektorientierten, funktionalen und datenorientierten Ansätzen effizient lösen können. 
Ein Schwerpunkt liegt darauf, Python so zu verstehen, dass spätere Themen wie Machine Learning, Deep Learning und generative KI nicht an der Programmierung scheitern – also die «AI-ready» Python-Grundlage zu schaffen, ohne bereits ML- oder DNN-Wissen vorauszusetzen.

Kurse in diesem Modul

Python für ML :

Das Modul beinhaltet unter anderem folgende Themen:

 

  • Grundlagen Python: Auffrischung zentraler Sprachkonzepte wie Datentypen, Funktionen, Module und Package Managern.
  • Objektorientierte Programmierung (OOP): Anwendung von Klassen, Vererbung und Abstraktion zur Strukturierung von Programmen.
  • Iterators und Generators: Implementierung speicher- und laufzeiteffizienter Datenverarbeitung mittels Lazy Evaluation.
  • Funktionaler Programmierstil: Saubere, testbare und wartbare Datenpipelines erstellen. Die Inhalte umfassen map, filter, reduce und deren Kombination mit Generatoren zur effizienten Datenverarbeitung.
  • Testing: Einsatz geeigneter Testframeworks zur Entwicklung robuster Software. 
  • NumPy und Vektorisierung: Effiziente numerische Berechnungen mit Arrays und Broadcasting-Techniken.
  • Pandas: Verarbeitung, Transformation und Analyse strukturierter Daten mit DataFrames.
  • Visualisierung von Daten: Nutzung geeigneter Bibliotheken zur Visualisierung von Daten und Ergebnissen. 
  • Profiling und Performance-Optimierung: Analyse und Verbesserung der Laufzeit von Python-Programmen.
  • Parallelisierung: Nutzung von Threads, Prozessen und asynchroner Programmierung zur besseren Auslastung moderner Hardware.
  • PyTorch Internals: Einführung in Tensors, Automatic Differentiation (Autograd, auch ohne DNN-Vorkenntnisse). 
  • Custom Datasets:  Implementierung eigener Pytorch Dataset- und DataLoader-Klassen mit Lazy Loading.
  • PyTorch Lightning: Optional; höhere Abstraktion zur Vereinfachung von Trainingsschleifen und reproduzierbaren Workflows.

 

(Änderungen und Anpassungen vorbehalten.)

 

Das Modul legt den Fokus auf ein tiefes Verständnis moderner Python-Techniken und deren praktische Anwendung in  KI- und Data-Science-Projekten.

Vorlesung mit 2 Lektionen pro Woche
Uebung mit 2 Lektionen pro Woche
Disclaimer

Diese Beschreibung ist rechtlich nicht verbindlich! Weitere Informationen finden Sie in der detaillierten Modulbeschreibung.