Skip to main content

Modulbeschreibung - Effiziente Machine Learning Algorithmen

Nummer
eml
ECTS 3.0
Spezifizierung Analysieren und Implementieren von effizienten ML Algorithmen
Anspruchsniveau Advanced
Inhalt Machine Learning Algorithmen setzen mathematische Modelle in Code um und ermöglichen so, aus Daten Muster zu extrahieren, welche zur Vorhersage und anderen Zwecken eingesetzt werden können. Rechnerische Effizienz ist dabei von grosser Bedeutung, da zum Finden optimaler Modell-Koeffizienten und Hyperparameter oft sehr viele Rechenoperationen ausgeführt werden müssen.

Die Implementierung von Machine Learning Algorithmen ist somit im Kern das effiziente Verwenden numerischer Operationen auf geeigneten Datenstrukturen. Es können dazu einerseits theoretische Überlegungen zu Operationenanzahl und Laufzeit angestellt werden, andererseits müssen auch praktische Rahmenbedingungen, wie beispielsweise die physische Verteilung von Daten über verschiedene Speichermedien hinweg, die Transportkosten von Daten und Rechenanweisungen etc. berücksichtigt werden.
Lernergebnisse Grundlagen effizienten numerischen Rechnens
Studierende verstehen theoretische Laufzeit-Berechnungen und können sie als Entscheidungsgrundlage für die Wahl von Algorithmen einsetzen. Sie können Algorithmen auf ihre Laufzeit analysieren. Sie sind mit dem Bau von Rechnern und Rechner-Infrastruktur vertraut. Sie wissen wie Rechenoperationen darauf ausgeführt werden kann und wie dies die Laufzeiten praktisch beeinflusst.

Effiziente Algorithmen und Datenstrukturen
Die Studierenden sind mit verschiedenen Methoden und Datenstrukturen der effizienten Programmierung vertraut:

Dynamic Programming, Greedy Algorithms, Memoisation, Metaheuristiken (Genetic, Ant Colony, Particla Swarm Optimisation, ...), Linear Programming, and Binary Search Trees.

Effiziente Implementierung von ML-Algorithmen und deren Analyse
Studierende können effiziente Implementierungen von standard ML-Algorithmen vornehmen: Random Forests, MLP, kMeans, kNN, .. und deren rechnerische Effizienz / Laufzeit abschätzen und vermessen.
Modulbewertung Note
Baut auf folgenden Modulen auf Grundkompetenz Machine Learning, Grundkompetenz Programmieren, Algorithmen Programmieren, Softwarekonstruktion
Modultyp Portfoliomodul
Diese Seite teilen: