Kapitel 2: Klassifikation Maschinelles Lernen und Neural Computation
und Neural Computation Ein einfacher Fall Ein Feature, Histogramme für beide Klassen (z.B. Glukosewert, Diabetes ja/nein) Keine perfekte Trennung möglich Entscheidung: Schwellwert Frage: Wo setze ich ihn am besten hin? C1 C2 ‘nein’ ‘ja’ SS 2009 Maschinelles Lernen und Neural Computation
Der allgemeine Fall: Bayes‘sches Theorem Ann: Daten fallen in k Klassen, wähle für eine Beobachtung xj die Wahrscheinlichste aus Wahrscheinlichkeit für Beobachtung, wenn in Klasse i („likelihood“, „class-conditional“) Wahrscheinlichkeit für Klasse i vor der Beobachtung („a priori“) Wahrscheinlichkeit, dass Beobachtung Zur Klasse i gehört („a posteriori“) Wahrscheinlichkeit für das Auftreten der Beobachtung Nenner ist Summe aller möglichen Zähler (aller Fälle) SS 2009 Maschinelles Lernen und Neural Computation
Der optimale Klassifikator Klassifikation: wähle die Klasse i mit der höchsten a-posteriori Wahrscheinlichkeit Erzielt das bestmögliche Resultat Bayes‘sche Formel erleichtert das Problem, da Wahrscheinlichkeiten auf der rechten Seite meist leichter zu bestimmen sind Da p(x) für alle Klassen gleich ist, kann es oft weggelassen werden SS 2009 Maschinelles Lernen und Neural Computation
Einschub: Wahrscheinlichkeitsdichten Für diskrete Variablen (endliche Werte): Wahrscheinlichkeit, z.B.: P(ci) Für kontinuierliche Variablen nicht möglich: P(xj)=0 Stattdessen: Wahrscheinlichkeitsdichtefunktion p(x) p(xj) ... Dichte an diesem Punkt (kann größer als 1 sein) Wahrscheinlichkeit, dass x in einem kleinen Intervall liegt Dichte kann wie Wahrscheinlichkeit behandelt werden SS 2009 Maschinelles Lernen und Neural Computation
Beispiel: 1 Variable, 2 Klassen Verteilung der Werte für Klasse 1 („class-conditional“) Annahme: in beiden Klassen sind Beobachtungen normalverteilt für Klasse 2 Entscheidungsgrenze: Schnittpunkt der beiden Kurven Multiplikation mit a-priori Wahrscheinlichkeiten: Entscheidungsgrenze verschiebt sich Durchdividieren durch Summe ergibt Wahrscheinlichkeit für Klasse Entscheidungsgrenze SS 2009 Maschinelles Lernen und Neural Computation
Beispiel: 2 Variablen, 2 Klassen 2-dim. Gaussverteilungen Lineare Entscheidungsgrenze SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Klassifikatoren Problem: Dichteverteilungen meist unbekannt Lösung: Schätzen der Verteilungen Schätzen der Entscheidungsgrenze Schätzen von Diskriminanzfunktionen: Wähle für jede Klasse Fkt. gi(x) Klasse ci, wenn gi(x)>gj(x) für alle ji z.B.: Keine Wahrscheinlichkeiten mehr SS 2009 Maschinelles Lernen und Neural Computation
Diskriminanzfunktionen für Normalverteilungen Streuung in alle Richtungen gleich („sphärisch“): Log-Fkt. Und multiplikative Faktoren ändern nichts an Größenverhältnis: Quadratische Funktion Entscheidungsgrenze: g1(x)=g2(x), auch quadratisch wenn 1= 2: linear SS 2009 Maschinelles Lernen und Neural Computation
Visualisierung: Normalverteilungen SS 2009 Maschinelles Lernen und Neural Computation
Allgemeiner Ansatz: Diskriminanzanalyse Lineare Diskriminanzfunktion: entspricht dem Perceptron mit 1 Output Unit pro Klasse Quadratisch linear: entspricht einer „Vorverarbeitung“ der Daten, Parameter (w,v) noch immer linear SS 2009 Maschinelles Lernen und Neural Computation
Der Schritt zum neuronalen Netz Allgemein linear: beliebige Vorverarbeitungsfunktionen, lineare Verknüpfung Neuronales Netz: NN implementiert adaptive Vorverarbeitung nichtlinear in Parametern (w) MLP RBFN SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Beispiel: XOR (0 0) 0 (1 0) 1 (0 1) 1 (1 1) 0 Exklusives Oder 4. Muster ist Summe des 2. und 3. (lineare Abhängigkeit) Punkte lassen sich durch keine Gerade trennen SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Hidden Units Zwei Perceptrons + nichtlineare Transferfunktion: 0 0 1 1 1 0 1 -1 1 0 0 1 1 -1 1 0 Schwellwertfunktion bricht lineare Abhängigkeit SS 2009 Maschinelles Lernen und Neural Computation
Beliebige Klassifikationen Jede Hidden Unit teilt Raum in 2 Hälften Output Units wirken wie “AND” Sigmoide: verlaufende Bereiche SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Beispiel: MLP MLP mit 5 Hidden und 2 Output Units Lineare Transferfunktion am Output Quadratischer Fehler SS 2009 Maschinelles Lernen und Neural Computation
MLP zur Diskriminanzanalyse MLP (und RBFN) ist direkte Erweiterung klassischer Modelle Stärke: beliebige nichtlineare Diskriminanzfunktionen Hidden Units: Adaptive Vorverarbeitung des Inputs Form der Diskriminanzfunktion außerhalb der Entscheidungsgrenze belanglos Perceptron ist identisch mit linearer Diskriminanzanalyse SS 2009 Maschinelles Lernen und Neural Computation
Alternativer Ansatz: Schätzung der Verteilungen Beim Ansatz mittels Diskriminanzfunktionen geht ein wesentlicher Aspekt verloren: Wahrscheinlichkeiten der Klassenzugehörigkeit mehr an Bayes halten, Dichtefunktion schätzen (vor allem p(x|ci)) Parametrisch: Form ist bekannt, weniger Parameter zu schätzen Nichtparametrisch: Form ist unbekannt, theoretisch beliebig SS 2009 Maschinelles Lernen und Neural Computation
Parametrisch: Maximum Likelihood (ML) Ann.: Verteilung hat eine bestimmte, analytisch beschreibbare Form (z.B. Normalverteilung) mit Parametern (z.B. Zentrum und Weite) Likelihood: Entspricht der „Wahrscheinlichkeit“, dass Daten beobachtet werden, wenn die Verteilung richtig ist ML: Finde jenes , das die Beobachtungen am wahrscheinlichsten macht: Maximiere L() Vor: Beobachtungen (Daten) sind unabhängig voneinander Menge aller Datenpunkte SS 2009 Maschinelles Lernen und Neural Computation
Beispiel: eindimensionale Normalverteilung Vereinfachung (ähnlich wie zuvor): logarithmieren, Vorzeichen ändern, Konstante weglassen, minimieren minimiere die negative log-Likelihood Minimierung: 1. Ableitung auf 0 setzen Erwartetes Ergebnis: Mittelwert und Varianz SS 2009 Maschinelles Lernen und Neural Computation
Likelihood-Funktionen für die Normalverteilung L() für Punkte 1, 2 und 3, =1 L() für Punkte 1, 2 und 3, =1 (wieder Gauss-Fkt.) L() für einen Punkt 1, =1: ML nicht immer sinnvoll! SS 2009 Maschinelles Lernen und Neural Computation
Nichtparametrisch: Parzen-Windows Wenn Form beliebig, keine Likelihood angebbar Wähle einen kleinen (Hyper-)Würfel, zähle wieviel Punkte drin liegen (ki) Geschätzte Dichte: Volumen Wenn n, Vi0, dann immer genauer Entspricht einem normalisierten Histogramm SS 2009 Maschinelles Lernen und Neural Computation
Der Fluch der Dimensionalität (Bellman 1961): bei nichtparametrischen Fällen steigt die Anzahl der benötigten Beispiele exponentiell mit der Dimensionalität des Input! Parzen: wenn Fenster klein, muss es noch genügend Beispiele enthalten je mehr Dimensionen, desto dünner gesät möglichst wenige Inputs, viele Daten SS 2009 Maschinelles Lernen und Neural Computation
Semiparametrisch: Gaussian Mixtures (GMM) Nähere beliebige Verteilung durch eine Mischung von Normalverteilungen an Gleiches Prinzip wie bei neuronalen Netzen Maximum Likelihood: -logL, Gradientenverfahren SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Beispiel (90 gedreht) Class-conditionals: Posterior: Entscheidungsgrenze: SS 2009 Maschinelles Lernen und Neural Computation
MLP zur Klassifikation Beweis existiert: MLP nähert die a-posteriori Wahrscheinlichkeit an Aktivierungsfunktion: Softmax (eigene Fehlerfunktion notwendig; siehe später) A-priori Wahrscheinlichkeiten: Verteilungen im Trainingsset SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Die Softmax-Funktion Erzwingt, dass Outputs als Wahrscheinlichkeiten interpretierbar sind Bezug zum Bayes’schen Theorem Spezialfall: Sigmoide Funktion nur 2 Klassen, 1 Output Unit: durchdividieren Wenn Expontentialverteilung Softmax Nettoinput ist log. von Dichte SS 2009 Maschinelles Lernen und Neural Computation
Warum Wahrscheinlichkeiten? Mehr Information Ablehnung von unsicheren Fällen: Performanz steigt, aber einige Fälle unentscheidbar Einfache Berücksichtigung von anderen a-priori Wahrscheinlichkeiten Berücksichtigung von Kosten für Fehler Verknüpfung mit anderen Quellen SS 2009 Maschinelles Lernen und Neural Computation
NN als semiparametrische Methoden Semiparametrisch: Form relative beliebig, aber dennoch durch Anzahl der Hidden Units („Modellkomplexität“) beschränkt Fluch der Dimension abgeschwächt, aber immer noch gegeben: Bedarf steigt ungefähr quadratisch NN haben gute Eigenschaften, wenn Dichten unbekannt, aber immer noch gilt: wenige Inputs, viele Daten! SS 2009 Maschinelles Lernen und Neural Computation
Nachtrag: k-nearest neighbor Speichere alle Trainingssätze mit zugehöriger Klasse Neuer Fall: wähle die k nähesten Trainingsfälle, nimm Klasse, die am häufigsten vorkommt Duda & Hart 1974: Nearest Neighbor (k=1) hat maximal den doppelten Fehler des bayesoptimalen Klassifizierers (für große Fallzahl) kann als Benchmark verwendet werden Approximiert auch die a-priori Wahrscheinlichkeit direkt nichtparametrisch k=4: 3 Klasse 2 1 Klasse 1 Klasse 2 (posterior ¾) SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Zusammenfassung NN sind semiparametrische Methoden zur Klassifikation Lt. Bayes sind Wahrscheinlichkeiten angebbar, bringt mehr Information Es existieren gleichmächtige Alternativen (z.B. GMM) Nearest Neighbor als Benchmark SS 2009 Maschinelles Lernen und Neural Computation