Man spricht von maschinellem Lernen, wenn Computerprogramme dazu in der Lage sind, aus Daten Erfahrung zu sammeln und sich damit selbstständig zu verbessern.
Dieser Kurs führt die Teilnehmer in die Grundlagen dieses Themas ein, zu dem in jüngster Zeit bahnbrechende Forschritte erzielt wurden.
Hierfür lernen sie zunächst, wo sie selbst schon im Alltag mit erfolgreichen Anwendungen von maschinellem Lernen in Berührung kommen.
Etwa wenn ihnen YouTube das nächste Video vorschlägt oder Amazon das nächste Produkt.
So sehen sie, dass ein klassischer Anwendungsfall maschinellen Lernens das Treffen von Vorhersagen ist (welches Video möchte ich als nächstes schauen, welches Produkt als nächstes kaufen?).
Im Hauptteil des Kurses erforschen wir einige der wichtigsten Techniken, die beim maschinelle Lernen zum Einsatz kommen, wie diese funktionieren, welche man wann am besten verwendet, und wie man diese implementiert.
Wir lernen dafür den gesamten Prozess des maschinellen Lernens vom Sammeln der Trainingsdaten über die algorithmische Bildungs eines Modells bis hin zu dessen Einsatz kennen.
Techniken, die wir im Detail betrachten, sind lineare und logistische Regression, Bayes-Klassifikatoren sowie Entscheidungsbäume.
Beim Programmieren verwenden wir die Sprache Python.
Voraussetzungen: MG 100 und MG 101.
In KI100 haben die Schüler schon einige Techniken des maschinellen Lernens kennengelernt.
All diese werden dem überwachten Lernen zugeordnet, wo der Algorithmus die Möglichkeit hat, anhand von Trainingsdaten zu lernen.
Die Trainingsdaten bestehen aus einer Menge von Eingaben, denen die gewünschten Ausgaben bereits zugeordnet sind.
Nun beschäftigen wir uns mit unüberwachtem Lernen.
Hier arbeitet der Algorithmus mit einer Menge von Daten, ohne dass hierzu bereits gewünschte Ergenisse mit angegeben werden.
Stattdessen ist es ihm selbst überlassen, welche Art von Muster er darin sucht.
Eine der wichtigsten Klassen unüberwacht lernendener Algorithmen sind Clusteringalgorithmen, die sich zudem sehr schön visualisieren lassen.
Diese bilden den Hauptteil dieses Kurses, insbesondere:
- Hierarchische Clusteranalyse
- K-Means
- DBSCAN
Wir implementieren all diese in Python und analysieren ihre Vor- und Nachteile.
Dann vergleichen wir sie auch mit den schon bekannten Algorithmen des überwachten Lernens.
Voraussetzungen: KI 100.
Dieser Kurs ist eine Einführung in das Thema künstliche neuronale Netze, insbesondere tiefe künstliche neuronale Netze.
Wir führen die dafür grundlegenden Konzepte wie künstliche Neuronen, Verbindungen und Gewichte von Verbindungen, Schichten, Propagierungsfunktion, Lernrate, Kostenfunktionen und Backpropagation ein und lernen damit künstliche neuronale Netze zunächst als mathematisches Konstrukt verstehen.
Anschließend lernen wir die wichtigsten Typen künstlicher neuronaler Netze kennen, darunter vor allem:
- Feed-Forward Neural Networks
- Recurrent Neural Networks
- Convolutional Neural Networks
Wir besprechen genau die Unterschiede sowie Vor- und Nachteile der verschiedenen Typen und wo diese erfolgreich eingesetzt werden.
Voraussetzungen: KI 100.