Title: Maschinelles Lernen
1Maschinelles Lernen undNeural Computation
- 840.042, VO, 1 Std.
- WS 2015/16
- Georg Dorffner
- Inst. f. Artificial IntelligenceZentrum für Med.
Statistik, Informatik und Intelligente Systeme - Medizinische Universität Wien
- www.meduniwien.ac.at/user/georg.dorffner/lv/mlnc.h
tml
2Überblick
- Grundlagen ML/NC
- Überwachtes Lernen Klassifikation
- Überwachtes Lernen Regression
- Lernen als Optimierung
- Komplexe Lerner in der Praxis
- Unüberwachtes Lernen
- Ensemble Methoden
- Kernel Methoden
3Begleitende Literatur
- Duda R., Hart P.E., Stork D.G. Pattern
Classification, 2nd edition, New York Wiley,
2001. - Bishop C.M. Pattern Recognition and Machine
Learning, New York Springer, 2006.
4Kapitel1 Grundlagen
5Maschinelles Lernen mögliche Definitionen
- Computerprogramme, die sich mit Erfahrung
verbessern (Mitchell 1997)(Artificial
Intelligence) - Auf der Basis von Beispielen nichttriviale
Strukturen in Daten finden(Mustererkennung, Data
Mining) - Ein Modell der Daten schätzen, die diese
beschreiben(Statistische Datenanalyse)
6Einige Vorausetzungen
- Merkmale (Features)
- Beschreiben die Fälle des Problems
- Messungen, Daten
- Lerner (Version Space)
- Eine Klasse von Modellen
- Lernverfahren
- Ein Algorithmus, der das beste Modell findet
- Generalisierung
- Struktur/Datenmodell soll neue Daten beschreiben
können
7Features
- Qualitativ, nominal
- z.B. Student, Arbeiter, Angestellter
- Qualitativ, ordinal (enthält Ordnung)
- z.B. schlecht, mittelmäßig, gut
- Numerisch, metrisch
- Intervallskala kein natürlicher Nullpunkt, nur
Differenzen bedeutungsvoll (z.B. Temp in C) - Verhältnisskala natürlicher Nullpunkt, auch
verhältnisse bedeutungsvoll (z.B. Größe in m) - Diskret nur endlich viele Werte (z.B. Anzahl)
- Stetig theoretisch unendlich viele Werte (z.B.
Länge)
8Beispiellerner Perceptron
- Features 2 numerische Werte (gezeichnet in
Ebene) - Aufgabe Teile in zwei Klassen (weiß und schwarz)
- Lerner (version space) Trenngerade durch den
Ursprung - Lernregel
- Nimm Normalvektor
- Addiere den Punktvektor eines falsch
klassifizierten Beispiels - Drehe Gerade, sodass neuer Vektor der
Normalverktor wird - Solange bis alles richtig klassifiziert
- Generalisierung neue Punkte richtig
klassifiziert - Konvergenz garantiert, wenn Problem
lösbar(Rosenblatt 1962)
9Arten des Lernens
- Überwachtes Lernen (supervised learning)
- Zuordnung der Daten (Label) bekannt
- Finde Zusammenhänge mit Input
- Beispiele medizinische Diagnose,
Temperaturvorhersage - Unüberwachtes Lernen (unsupervised learning)
- Finde Struktur in den Daten
- Beispiele Marktsegmentierung, Visualisierung
- Reinforcement Learning
- Finde Zusammenhänge anhand von globalem Feedback
- Beispiele Steuerung einer Roboterhand, Lernen
von Spielen
10Neural Computation
- Ursprünglich biologisch motiviert (daher der
Name) - Lerner als Netzwerk einfacher Einheiten
beschreibbar - Stärke beliebige nichtlineare Modelle (z.B.
nicht nur Geraden) - Voraussetzung numerische Features
- Qualitative Features als Binärcode (z.B. 1-aus-n)
11Das einfache mathematische Modell
Aktivierung, Output
Gewicht
- Propagierungsregel
- Gewichtete Summe
- Euklidischer Abstand (später)
- Transferfunktion f
- Schwellwertfkt.(McCulloch Pitts)
- Lineare Fkt.
- Sigmoide Fkt.
Unit (Neuron)
? yj f
xj
w2
(Netto-) Input
wi
12Perceptron als neuronales Netz
- Inputs sind zufällige Featuredetektoren
- Binär kodiert
- Perceptron lernt Klassifikation
- Modell der Wahrnehmung / Objekterkennung
Neuron.eng.wayne.edu
13Perceptron Learning Rule als Gewichtsadaption
- Rosenblatt (1962)
- Zielvorgabe (target) notwendig Lehrer
- Input wird dazugezählt (abgezogen), wenn Output
falsch - Verwendung Klassifikation (Original Input
visuelle Vorverarbeitung)
14Bias
- Gewichtete Summe nicht vollständig
-
Trenngerade geht immer durch Ursprung - Konstante notwendig
- Realisierung zusätzliche Unit,immer auf 1
gesetzt(Bias Unit)
w0
15Vektor- und Matrixnotation
- Lineares Perceptron ist Multiplikation des
Input-Vektors mit der Gewichtsmatrix - Kompakte Schreibweise
- Hilfsmittel aus Vektoralgebra
16Einschub Matrixmulitplikation
- Multiplikation zweier Matrizen
- elementweise
multiplizieren und addieren -
Spaltenzahl der 1.Matrix Zeilenzahl der
2. -
Resultat Zeilen der 1. X Spalten der 2.
Matrix - Vektoren als Matrizen
- inneres Produkt
äußeres Produkt - T ... Transpose (um Diagonale kippen)
17Sigmoide Transferfunktion
Immer wahrscheinlicher
- Outputs begrenzt auf 0,1
- Quasi-linear um 0
- Mögliche Interpretation Wahrscheinlichkeit
18Mehrebenen-Perceptron (MLP)
- 2 (oder mehrere) Schichten ( Verbindungen)
Output Units (typisch linear)
Hidden Units (typisch sigmoid)
Input Units
19Gewichtsadaption Backpropagation
- Verallgemeinerte Delta-Regel
yout, xout
Wout
yhid, xhid
Whid
- Fehler wird rückpropagiert
- Pseudofehler an den Hidden Units
20Backpropagation als Gradientenverfahren
- Definiere (quadratischen) Fehler (für Muster l)
- Minimiere Fehler
- Ändere Gewichte in Richtung des Gradienten
- Kettenregel ergibt Backpropagation
(partielle Ableitung nach dem Gewicht)
21Einschub Kettenregel
- Differenzieren von verschachtelten
FunktionenÄußere Ableitung x innere Ableitung
nur 1 Summand abh.
M Wege um Gewicht zu erreichen ??
nur 1 Summand
usf.
22Geometrische Interpretation
- Fehler bildet (hochdimensionale) Fläche
- Gradient entspricht der Richtung des steilsten
Abstiegs - Folge dieser Richtung bis zum Minimum
23Grenzen der Backpropagation
- Gradientenverfahren kann in lokalem Minimum
hängenbleiben(abhängig von der Initialisierung) - ? Es ist nicht garantiert, daß Backpropagation
eine existierende Lösung auch findet
- Weitere Probleme langsam, kann zu oszillieren
beginnen (siehe später)
24Praxis der Backpropagation
- Beginne mit zufälligen Gewichten
- Wähle kleine Lernrate (da sonst kein
Gradientenverfahren) - Nehme Satz von Trainingsmustern, die gelernt
werden sollen - Wähle jeweils zufällig ein Musterpaar 1
Vorwärtsschritt, 1 Backpropagation-Schritt
(online learning) - Eigentlich definiere Fehler als
- (über alle M Musterpaare)
- berechne Gewichtsänderungen für alle Musterpaare
des Trainingssatzes, summiere und ändere erst
dann (batch learning)
25Beispiel Medizinische Diagnose
?Vienet2gtuebung3.exe
- Bsp Pima Indian Diabetes
- ftp//ftp.ics.uci.edu/pub/machine-learning-data
bases/pima-indians-diabetes
Output Diabetes ja/nein 768 Fälle, aufgeteilt
auf Training- und Testsatz
Input 1. Number of times pregnant 2. Plasma
glucose concentration at 2 hours in an oral
glucose tolerance test 3. Diastolic blood
pressure (mm Hg) 4. Triceps skin fold thickness
(mm) 5. 2-Hour serum insulin (mu U/ml) 6. Body
mass index (weight in kg/(height in m)2) 7.
Diabetes pedigree function 8. Age
(years) Normalisiert auf Mittelwert 0 und
Varianz 1
- Performanz nach Training auf Testsatz ca. 70-80
- Fehler geht nicht auf 0!(siehe später)
26Einige wichtige Prinzipien
- Occams Razor
- Wenn zwei Modelle die Daten gleich gut
beschreiben, dann wähle das einfachere - ? komplexer (mächtiger) ist nicht automatisch
besser - Fluch der Dimension
- Für komplexe Lerner steigt der Bedarf an
Beispielen überlinear (exponentiell) mit der Zahl
der Features - ? nimm nur Features, die notwendig sind
- No free lunch
- Es gibt keinen Lerner, der für alle Probleme die
beste Lösung liefert - ? wende komplexen Lerner nie blind ohne Wissen
über die Daten an
27Die stochastische Sicht des überwachten Lernens
- Realdaten sind stochastisch(von Natur aus mit
Rauschen/Streuungen versehen) - 2 Typen von Problemen Regression, Klassifikation
- Lernen muss mathematisches Modell finden