Hauptnavigation

Vorlesung Maschinelles Lernen

Veranstaltung Wochentag Termin Ort
42273 (Vorlesung) Dienstag 10:15 - 12:00 (2 SWS) GB IV / R. 318
42274 (Übung) Dienstag 14:15 - 16:00 (2 SWS) GB IV / R. 318

Voraussetzung

Wahlpflichtvorlesung "Darstellung, Erwerb und Verarbeitung von Wissen", Grundbegriffe von Logik und Wahrscheinlichkeitstheorie (Statistik)

Schwerpunktgebiet

Intelligente Systeme

Inhalt

Kaum ein Teilgebiet der Künstlichen Intelligenz hat sich so rasant entwickelt wie das maschinelle Lernen, dessen internationale Tagungen von jeweils mehr als 300 Interessierten besucht werden, dessen Methoden in vielen erfolgreichen Programmen (z.B. Google, Amazon) integriert sind und dessen Ergebnisse für viele Anwendungen (z.B. Marketing, Medizin) erfolgreich genutzt werden. Dabei ist das Gebiet theoretisch wohl fundiert mit Bezug auf Statistik und Logik.

Die Vorlesung behandelt die Lernaufgaben

  • Klassifikation
  • Subgruppenentdeckung
  • Merkmalsauswahl und -extraktion
  • Clustering

Dabei werden verschiedene Methoden (Klassen von Algorithmen) mit ihrem jeweiligen theoretischen Hintergrund vorgestellt:

  • Lernen von Entscheidungsbäumen
  • Induktiv logische Programmierung
  • Entdeckung häufiger Mengen (frequent set mining)
  • Stützvektormethode (support vector machines)
  • Genetische Programmierung, Evolutionsstrategie
  • kMeans clustering
  • verteiltes clustering

In den Übungen werden zum einen für ein besseres Verständnis Algorithmen nachimplementiert, zum anderen gegebene Algorithmen auf Datensätze angewandt und die Ergebnisse evaluiert.

Hinweise zu den in den Übungen nachzuimplementierenden Algorithmen

In die zu erstellenden Klassen sollten importiert werden:
  • edu.udo.cs.yale.example.Example
    Die Klasse Example stellt ein Beispiel mit seinen Attributen und Werten dar, so dass man z.B. Comparator<Example>, PriorityQueue<Example>, Iterator<Example> schreiben kann.
  • folgende Methode der Klasse edu.udo.cs.yale.example.Example :
    • getAttribute(i) gibt das i-te Attribut des Beispiels
    • getValue(i) gibt den Wert des i-ten Attributs
  • folgende Methoden der Klasse edu.udo.cs.yale.example.Attribute :
    • getValueType gibt den Wertebereich des Attributs
  • edu.udo.cs.yale.tools.Ontology
    Die Klasse Ontology hat Wertebereiche als Eigenschaft, z.B. NOMINAL
  • edu.udo.cs.yale.operator.exercise.KNearestNeighborPredictor
    Das Interface kann man unter dem Punkt Material herunterladen

Folien

Zur Vorlesung sind folgende Folien verfügbar:

  • Einführung, kNN, ID3, Gütekriterien [.ppt]
  • Häufige Mengen finden [.ppt]
  • Clustering, Qualitätsfunktion, k-Means [.ppt]
  • Zur SVM: Teil 1 (SVM) [.ppt] und Teil 2 (Kernfunktion) [.ppt]
  • Induktive Logische Programmierung, Generalisierungen, Regellernen, Sorten [.ppt]

Material

  • Ein für die Übungen relevantes Interface zum Nachimplementieren der vorgestellten Algorithmen [.java]
  • Javadoc zur Klasse edu.udo.cs.yale.example.Example [.pdf]
  • Ein für die Übungen notwendiges YALE Plugin (erweiterte Version zur Lösung der nächsten Aufgabe) [.jar]
    yale-exercise-3.4.jar wird nur benötigt, wenn eine eigene Installation von YALE verwendet werden soll. In diesem Fall muss die Datei unter ".../yale-3.4/lib/plugins" gespeichert werden.
  • Quellcode zu fpGrowth [.zip]
  • Material zur Übungsaufgabe 8 : Programm: imuato [.zip] ; Dokumentation: javadoc [.zip]

Aufgaben

Literatur

Stefan Wrobel, Katharina Morik, Thorsten Joachims (2000) "Maschinelles Lernen und Data Mining" in: Görz, Rollinger, Schneeberger (Hg.) "Handbuch der Künstlichen Intelligenz", Oldenburg, 3. erw. Auflage
Tom Mitchell (1997) "Machine Learning", McGraw-Hill
Christopher Burges (1998)"A Tutorial on Support Vector Machines for Pattern Recognition" in: Data Mining and Knowledge Discovery Journal, Vol 2, S. 121 - 167, Kluwer
John Platt (1999) "Fast Training of Support Vector Machines using Sequential Minimal Optimization" in: Schölkopf, Burges, Smola (eds) "Advances in Kernel Methods - Support Vector Learning", S. 185 - 208, MIT Press
Weitere Literatur wird in der Vorlesung angegeben.