Kapitel 2: Klassifikation Maschinelles Lernen und Neural Computation 28 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? ‘ja’ ‘nein’ C1 Maschinelles Lernen und Neural Computation C2 x1 29 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“) j p x | ci Pci P ci | x j p xj Wahrscheinlichkeit, dass Beobachtung Zur Klasse i gehört („a posteriori“) k Wahrscheinlichkeit für das Auftreten der Beobachtung p x j p x j | ci Pci i 1 Nenner ist Summe aller möglichen Zähler (aller Fälle) Maschinelles Lernen und Neural Computation 30 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 Maschinelles Lernen und Neural Computation 31 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) pxdx 1 • Wahrscheinlichkeit, dass x in einem kleinen Intervall liegt x j x j p x d x P x x x j x • Dichte kann wie Wahrscheinlichkeit behandelt werden Maschinelles Lernen und Neural Computation 32 Beispiel: 1 Variable, 2 Klassen Verteilung der Werte für Klasse 1 („class-conditional“) für Klasse 2 Entscheidungsgrenze • Annahme: in beiden Klassen sind Beobachtungen normalverteilt • Entscheidungsgrenze: Schnittpunkt der beiden Kurven • Multiplikation mit a-priori Wahrscheinlichkeiten: Entscheidungsgrenze verschiebt sich • Durchdividieren durch Summe ergibt Wahrscheinlichkeit für Klasse Maschinelles Lernen und Neural Computation 33 Beispiel: 2 Variablen, 2 Klassen • 2-dim. Gaussverteilungen • Lineare Entscheidungsgrenze Maschinelles Lernen und Neural Computation 34 Klassifikatoren • Problem: Dichteverteilungen meist unbekannt • Lösung: – Schätzen der Verteilungen – Schätzen der Entscheidungsgrenze – Schätzen von Diskriminanzfunktionen: Keine Wahrscheinlichkeiten Wähle für jede Klasse Fkt. gi(x) mehr Klasse ci, wenn gi(x)>gj(x) für alle ji z.B.: g i x px | ci Pci g i x log px | ci log Pci Maschinelles Lernen und Neural Computation 35 Diskriminanzfunktionen für Normalverteilungen • Streuung in alle Richtungen gleich („sphärisch“): x μi 1 gi x exp 2 2 2 i i 2 Pc i • Log-Fkt. Und multiplikative Faktoren ändern nichts an Größenverhältnis: 2 g i x x μi 2 2 i log Pci • Quadratische Funktion • Entscheidungsgrenze: g1(x)=g2(x), auch quadratisch wenn 1= 2: linear Maschinelles Lernen und Neural Computation 36 Visualisierung: Normalverteilungen Maschinelles Lernen und Neural Computation 37 Allgemeiner Ansatz: Diskriminanzanalyse • Lineare Diskriminanzfunktion: n g x wi xi w0 i 1 entspricht dem Perceptron mit 1 Output Unit pro Klasse • Quadratisch linear: n p p g x wi xi vij xi x j w0 i 1 i 1 j 1 entspricht einer „Vorverarbeitung“ der Daten, Parameter (w,v) noch immer linear Maschinelles Lernen und Neural Computation 38 Der Schritt zum neuronalen Netz • Allgemein linear: p gi x wi yi x w0 i 1 beliebige Vorverarbeitungsfunktionen, lineare Verknüpfung • Neuronales Netz: yi x f w i x T f ... Sigmoide yi x f w i x f ... Gauss MLP RBFN NN implementiert adaptive Vorverarbeitung nichtlinear in Parametern (w) Maschinelles Lernen und Neural Computation 39 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 Maschinelles Lernen und Neural Computation 40 Hidden Units • Zwei Perceptrons + nichtlineare Transferfunktion: 10 010 10 01 -1 01 -1 010 10 • Schwellwertfunktion bricht lineare Abhängigkeit Maschinelles Lernen und Neural Computation 41 Beliebige Klassifikationen • Jede Hidden Unit teilt Raum in 2 Hälften • Output Units wirken wie “AND” • Sigmoide: verlaufende Bereiche Maschinelles Lernen und Neural Computation 42 Beispiel: MLP • MLP mit 5 Hidden und 2 Output Units • Lineare Transferfunktion am Output • Quadratischer Fehler Maschinelles Lernen und Neural Computation 43 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 Maschinelles Lernen und Neural Computation 44 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 Maschinelles Lernen und Neural Computation 45 Parametrisch: Maximum Likelihood (ML) • Ann.: Verteilung hat eine bestimmte, analytisch beschreibbare Form (z.B. Normalverteilung) mit Parametern (z.B. Zentrum und Weite) n • Likelihood: L p | θ p x i | θ i 1 Menge aller Datenpunkte • 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 Maschinelles Lernen und Neural Computation 46 Beispiel: eindimensionale Normalverteilung i 2 x 1 exp 2 2 2 Lθ L , px i | , n n i 1 i 1 • Vereinfachung (ähnlich wie zuvor): logarithmieren, Vorzeichen ändern, Konstante weglassen, minimieren minimiere die negative log-Likelihood i 2 x log L log 2 2 i 1 n • Minimierung: 1. Ableitung auf 0 setzen 1 n i ˆ x n i 1 2 1 n ˆ ˆ x i n i 1 2 Erwartetes Ergebnis: Mittelwert und Varianz Maschinelles Lernen und Neural Computation 47 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! Maschinelles Lernen und Neural Computation 48 Nichtparametrisch: Parzen-Windows • Wenn Form beliebig, keine Likelihood angebbar • Wähle einen kleinen (Hyper-)Würfel, zähle wieviel Punkte drin liegen (ki) Volumen ki pi x n Geschätzte Dichte: Vi • Wenn n, Vi0, dann immer genauer • Entspricht einem normalisierten Histogramm Maschinelles Lernen und Neural Computation 49 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 Maschinelles Lernen und Neural Computation 50 Semiparametrisch: Gaussian Mixtures (GMM) • Nähere beliebige Verteilung durch eine Mischung von Normalverteilungen an x i 2 i exp 2 2 i 2 i k p x | cl i 1 • Gleiches Prinzip wie bei neuronalen Netzen • Maximum Likelihood: n Lπ, μ, σ p x n | π, μ, σ, ci -logL, Gradientenverfahren j 1 Maschinelles Lernen und Neural Computation 51 Beispiel (90 gedreht) • Classconditionals: • Posterior: • Entscheidungsgrenze: Maschinelles Lernen und Neural Computation 52 MLP zur Klassifikation • Beweis existiert: MLP nähert die a-posteriori Wahrscheinlichkeit an • Aktivierungsfunktion: Softmax (eigene Fehlerfunktion notwendig; siehe später) yj exp x j k exp x i 1 i • A-priori Wahrscheinlichkeiten: Verteilungen im Trainingsset Maschinelles Lernen und Neural Computation 53 Die Softmax-Funktion • Erzwingt, dass Outputs als Wahrscheinlichkeiten interpretierbar sind x out j exp y exp y out j k 0 x out j 1, out j i 1 k x j 1 out j 1 • Bezug zum Bayes’schen Theorem P ci | xin p xin | ci Pci k in p x | ci Pci i 1 Wenn Expontentialverteilung Softmax Nettoinput ist log. von Dichte • Spezialfall: Sigmoide Funktion nur 2 Klassen, 1 Output Unit: durchdividieren x out j Maschinelles Lernen und Neural Computation 1 1 e y oj u t 54 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 Maschinelles Lernen und Neural Computation 55 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! Maschinelles Lernen und Neural Computation 56 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 k=4: 3 Klasse 2 1 Klasse 1 Klasse 2 (posterior ¾) • 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 Maschinelles Lernen und Neural Computation 57 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 Maschinelles Lernen und Neural Computation 58