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: