Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Bayessches Lernen Christoph Sawade/Niels Landwehr Paul Prasse Tobias Scheffer Überblick Wahrscheinlichkeiten, Erwartungswerte, Varianz Grundkonzepte des Bayesschen Lernens (Bayessche) Parameterschätzung für Wahrscheinlichkeitsverteilungen 2 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Überblick Wahrscheinlichkeiten, Erwartungswerte, Varianz Grundkonzepte des Bayesschen Lernens (Bayessche) Parameterschätzung für Wahrscheinlichkeitsverteilungen 3 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Statistik & Maschinelles Lernen Maschinelles Lernen: eng verwandt mit (induktiver) Statistik Zwei Gebiete in der Statistik: Deskriptive Statistik: Beschreibung, Untersuchung von Eigenschaften von Daten. Mittelwerte Varianzen Unterschiede zwischen Populationen Induktive Statistik: Welche Schlussfolgerungen über die Realität lassen sich aus Daten ziehen? Modellbildung Erklärungen für Beobachtungen Zusammenhänge, Muster in Daten 4 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Thomas Bayes 1702-1761 „An essay towards solving a problem in the doctrine of chances“, 1764 veröffentlicht. Arbeiten von Bayes grundlegend für induktive Statistik. „Bayessche Wahrscheinlichkeiten“ wichtige Sichtweise auf Unsicherheit & Wahrscheinlichkeit 5 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Frequentistische / Bayessche Wahrscheinlichkeit Frequentistische Wahrscheinlichkeiten Beschreiben die Möglichkeit des Eintretens intrinsisch stochastischer Ereignisse (z.B. Teilchenzerfall). Definition über relative Häufigkeiten möglicher Ergebnisse eines wiederholbaren Versuches „Wenn man eine faire Münze 1000 Mal wirft, wird etwa 500 Mal Kopf fallen“ „In 1 Gramm Potassium-40 zerfallen pro Sekunde ca. 260.000 Atomkerne“ 6 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Frequentistische / Bayessche Wahrscheinlichkeit Bayessche, „subjektive“ Wahrscheinlichkeiten Grund der Unsicherheit ein Mangel an Informationen Wie wahrscheinlich ist es, dass der Verdächtige X das Opfer umgebracht hat? Neue Informationen (z.B. Fingerabdrücke) können diese subjektiven Wahrscheinlichkeiten verändern. Bayessche Sichtweise im maschinellen Lernen wichtiger Frequentistische Sichtweise auch manchmal verwendet, mathematisch äquivalent 7 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Wahrscheinlichkeiten im Maschinellen Lernen Modellbildung: Erklärungen für Beobachtungen finden Was ist das „wahrscheinlichste“ Modell? Abwägen zwischen Vorwissen (Prior über Modelle) Evidenz (Daten, Beobachtungen) Bayessche Sichtweise: Evidenz (Daten) verändert „subjektive“ Wahrscheinlichkeiten für Modelle (Erklärungen) A-posteriori Modellwahrscheinlichkeit, MAP Hypothese 8 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Wahrscheinlichkeitstheorie, Zufallsvariablen Zufallsexperiment: definierter Prozess, in dem ein Elementarereignis ω erzeugt wird. Ereignisraum Ω: Menge aller Elementarereignisse. Ereignis A: Teilmenge des Ereignisraums. Wahrscheinlichkeitsfunktion P: Funktion, die Ereignissen A ⊆ Ω Wahrscheinlichkeiten zuweist. Zufallsvariable X: Abbildung von Elementarereignissen auf numerische Werte. X :Ω X :ω x 9 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Wahrscheinlichkeitstheorie, Zufallsvariablen Experiment weist Zufallsvariable (Großbuchstabe) einen Wert (Kleinbuchstabe) zu Wahrscheinlichkeit dafür, dass Ereignis X=x eintritt (Zufallsvariable X wird mit Wert x belegt). P ( X= x= ) P ({ω ∈ Ω | X (ω= ) x}) Zusammenfassen in Wahrscheinlichkeitsverteilung, der Variable X unterliegt. P( X ) Verteilung gibt an, wie Wahrscheinlichkeiten über Werte x verteilt sind X ~ P( X ) „X ist verteilt nach P(X)“ 10 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Diskrete Zufallsvariablen Diskrete Zufallsvariablen: ∑ P( X= x= ) 1 x∈D D diskreter Wertebereich Beispiel: N Münzwürfe Unabhängige Zufallsvariablen X 1 ,..., X N ∈ {0,1} P= ( X i 1|= µ) µ Wahrscheinlichkeit für „Kopf“ P( X i = 0 | µ ) = 1 − µ Wahrscheinlichkeit für „Zahl“ X i ~ Bern( X = | µ ) µ X (1 − µ )1− X = X ZV „Anzahl Köpfe“: Bernoulli-Verteilung N ∑ X , X ∈{0,..., N } i =1 i 11 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Diskrete Zufallsvariablen Beispiel: Anzahl „Köpfe“ bei N Münzwürfen ZV „Anzahl Köpfe“: = X N ∑ X , X ∈{0,..., N } i =1 i Binomial-Verteilung X ~ Bin( X | N , µ ) Bin( X | N , µ ) = ? 12 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Diskrete Zufallsvariablen Beispiel: Anzahl „Köpfe“ bei N Münzwürfen ZV „Anzahl Köpfe“: = X N ∑ X , X ∈{0,..., N } i =1 i Binomial-Verteilung X ~ Bin( X | N , µ ) N X X | N , µ ) µ (1 − µ ) N − X Bin( = X 13 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Kontinuierliche Zufallsvariablen Kontinuierliche Zufallsvariablen Unendlich (meist überabzählbar) viele Werte möglich ) 0 Typischerweise Wahrscheinlichkeit P( X= x= Statt Wahrscheinlichkeiten für einzelne Werte: Dichtefunktion f X : → „Dichte“ der ZV X ∀x : f X ( x) ≥ 0, f X ( x) > 1 möglich ∫ ∞ −∞ f X ( x) = 1 Wahrscheinlichkeit, dass ZV X Wert zwischen a und b annimmt b P ( X ∈ [a, b]) = ∫ f X ( x)dx, a 14 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Kontinuierliche Zufallsvariablen Beispiel: Körpergröße X X annähernd Gaußverteilt („Normalverteilt“) X ~ N ( x | µ ,σ 2 ) Dichte der Normalverteilung = µ 170, = σ 10 z.B. 15 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Kontinuierliche Zufallsvariablen Beispiel: Körpergröße Wie groß ist die Wahrscheinlichkeit, dass ein Mensch genau 180cm groß ist? P= ( X 180) = 0 Wie groß ist die Wahrscheinlichkeit, dass ein Mensch zwischen 180cm und 181cm groß ist? 181 2 P( X ∈ [180,181]) = N ( x |170,10 )dx ∫ 180 16 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Kontinuierliche Zufallsvariablen Verteilungsfunktion x F ( x) = P ( X ≤ x) = ∫ f X ( x)dx, −∞ P( X ∈ [a, b]) =F (b) − F (a ) Dichte ist Ableitung der Verteilungsfunktion f X ( x) = dF ( x) dx Veranschaulichung Dichte: f X ( x) = limε →0 P( X ∈ [ x − ε , x + ε ]) 2ε 17 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Konjunktion von Ereignissen Wahrscheinlichkeit für Eintreten mehrerer Ereignisse: P (= X x= , Y y) Gemeinsame Verteilung (diskret/kontinuierlich) P( X , Y ) P( X ) = ∑ P( X , Y ) „Summenregel“ P ( X , Y ) = P ( X | Y ) P (Y ) „Produktregel“ Y Gemeinsame Verteilung mehrerer Variablen: P( X 1 ,..., X n ) = P( X 1 )∏i = 2 P( X i |X i −1 ,..., X 1 ) n 18 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bedingte Wahrscheinlichkeiten Wie beeinflusst zusätzliche Information die Wahrscheinlichkeitsverteilung? Bedingte Wahrscheinlichkeit eines Ereignisses: P ( X | zusätzliche Information ) P( X = x | Y = y ) = P ( X = x, Y = y ) P(Y = y ) Bedingte Dichte: f X |Y ( x | y ) = diskret f X ,Y ( x, y ) fY ( y ) kontinuierlich Bedingte Verteilung (diskret/kontinuierlich): P( X | Y ) = P( X , Y ) P(Y ) 19 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bedingte Wahrscheinlichkeiten Randverteilung, Marginalisieren Produktregel + Summenregel P( X= x= ) ∑ y P( X= x | Y= y ) P (Y= y ) diskret ∞ f X ( x) = ∫ f X |Y ( x | y ) fY ( y ) kontinuierlich −∞ P( X ) = ∑Y P ( X | Y ) P (Y ) Verteilung 20 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Unabhängigkeit Zwei Zufallsvariablen sind unabhängig, wenn: Äquivalent dazu P( X , Y ) = P( X ) P(Y ) P( X | Y ) = P( X ) und P(Y | X ) = P (Y ) Beispiel: wir würfeln zweimal mit fairem Würfel, bekommen Augenzahlen x1 , x2 ZV X , X sind unabhängig 1 2 X 1 − X 2 sind abhängig ZV X= X 1 + X 2 und X= − + 21 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert Erwartungswert einer Zufallsvariable: E ( X ) = X = ∑ x xP( X = x) X diskrete ZV E ( X ) = X = ∫ xp( x)dx X kontinuierliche ZV mit Dichte p(x) Veranschaulichung: gewichtetes Mittel, Schwerpunkt eines Stabes mit Dichte p(x) Rechenregeln Erwartungswert E (aX += b) aE ( X ) + b E ( X + Y= ) E ( X ) + E (Y ) 22 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert Erwartungswert additiv E( X + Y ) = ∑ ( x + y ) P( X = x, Y = y ) x, y = x, Y y ) + ∑ yP ( X == x, Y y ) ∑ xP( X == x, y x, y = x, Y = y ) +∑ y ∑ P( X = x, Y = y) ∑ x∑ P( X = x y y x = x) + ∑ yP (Y = y) ∑ xP( X = x y = E ( X ) + E (Y ) 23 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Varianz, Standardabweichung Varianz: Erwartete quadrierte Abweichung von X von E(X) Var ( X ) = E (( X − E ( X )) 2 ) = ∑ x ( x − E ( X )) 2 P ( X = x) Var ( X ) = E (( X − E ( X )) 2 ) = ∫ ( x − E ( X )) 2 p( x)dx x Verschiebungssatz Var = ( X ) E ( X 2 ) − E ( X )2 Standardabweichung σ X = Var ( X ) 24 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Varianz, Standardabweichung Verschiebungssatz Var= ( X ) E (( X − E ( X )) 2 ) = E ( X 2 − 2 E ( X ) X + E ( X )2 ) = E ( X 2 ) − 2 E ( X ) E ( X ) + E ( X )2 = E ( X 2 ) − E ( X )2 25 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Rechenregeln Varianz Rechenregeln Varianz/Standardabweichung Var (aX + b) = a 2Var ( X ), σ aX +b = aσ X Var ( X += Y ) Var ( X ) + Var (Y ) + 2Cov( X , Y ) Cov( X , Y ) =E (( X − E ( X ))(Y − E (Y ))) =E ( XY ) − E ( X ) E (Y ) Covarianz misst „gemeinsame Schwankung“ der Variablen Falls Variablen unabhängig: Cov( X , Y ) = 0, Var ( X += Y ) Var ( X ) + Var (Y ) 26 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Rechenregeln Varianz Varianz Summe von Zufallsvariablen Var ( X + Y= ) E (( X + Y − E ( X ) − E (Y )) 2 ) = E (( X − E ( X ) + Y − E (Y )) 2 ) = E (( X − E ( X )) 2 ) + E (2( X − E ( X ))(Y − E (Y ))) + E ((Y − E (Y )) 2 ) = Var ( X ) + 2Cov( X , Y ) + Var (Y ) 27 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Binomialverteilung Erwartungswert Bernoulli-Verteilung X i ~ Bern( X i= | µ ) µ X i (1 − µ )1− X i E( X i ) = ? 28 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Binomialverteilung Erwartungswert Bernoulli-Verteilung X i ~ Bern( X i= | µ ) µ X i (1 − µ )1− X i = E( X i ) = ∑ xP( X i x) x∈{0,1} = 1µ + 0(1 − µ ) = µ 29 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Binomialverteilung Erwartungswert Bernoulli-Verteilung X i ~ Bern( X i= | µ ) µ X i (1 − µ )1− X i = E( X i ) = ∑ xP( X i x) x∈{0,1} = 1µ + 0(1 − µ ) = µ Erwartungswert Binomialverteilung n X = ∑ Xi X ~ Bin( X | N , µ ) = E( X ) i =1 N xP ( X ∑= x) x =0 N x = ∑ x µ (1 − µ ) N − x x =0 x =? N 30 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Binomialverteilung Erwartungswert Bernoulli-Verteilung X i ~ Bern( X i= | µ ) µ X i (1 − µ )1− X i = E( X i ) = ∑ xP( X i x) x∈{0,1} = 1µ + 0(1 − µ ) = µ Erwartungswert Binomialverteilung n X = ∑ Xi X ~ Bin( X | N , µ ) = E( X ) i =1 N xP ( X ∑= x) x =0 N x = ∑ x µ (1 − µ ) N − x x =0 x Summe der Erwartungswerte = Nµ N der Bernoulli-Variablen 31 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Binomialverteilung Varianz Binomialverteilung X ~ Bin( X | N , µ ) Var ( X ) = ? 32 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Binomialverteilung Varianz Binomialverteilung X ~ Bin( X | N , µ ) Var= ( X ) N µ (1 − µ ) n X = ∑ Xi Var ( X= µ (1 − µ ) i) i =1 X i ~ Bern( X i= | µ ) µ X i (1 − µ )1− X i Var ( X i ) = µ (1 − µ ) ⇒ Var ( X ) = N µ (1 − µ ) 33 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Normalverteilung Erwartungswert Normalverteilung X ~ N ( x | µ ,σ 2 ) ∞ E( X ) = ∫ xN ( x | µ , σ 2 )dx ∫ x −∞ ∞ = −∞ 1 2 exp ( x ) − − µ dx 2 1/2 2 (2πσ ) 2σ 1 ∞ 1 1 2 ( z ) exp = + µ − 2 z dz 2 1/2 ∫−∞ (2πσ ) 2σ ∞ ∞ 1 1 2 1 2 exp − 2 z dz + ∫ z exp − 2 = z dz µ = µ∫ 2 1/2 2 1/2 (2 ) 2 (2 ) 2 πσ σ πσ σ −∞ −∞ 1 34 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Erwartungswert, Varianz Normalverteilung Varianz Normalverteilung Man kann zeigen dass X ~ N ( x | µ ,σ 2 ) Var ( X ) = σ 2 35 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Überblick Wahrscheinlichkeiten, Erwartungswerte, Varianz Grundkonzepte des Bayessches Lernens (Bayessche) Parameterschätzung für Wahrscheinlichkeitsverteilungen 36 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Lernen und Vorhersage Lernen: Vorhersage: f MAP = arg max f w P( f w |L) x f MAP (x) „Wahrscheinlichstes Modell gegeben die Daten“ „Vorhersage des MAP Modells“ Wenn wir uns auf ein Modell festlegen müssen, ist MAP Modell sinnvoll Aber eigentliches Ziel ist Vorhersage einer Klasse! Warum Unterteilung in Suche nach einem Modell und Vorhersage mithilfe des Modells? Geht es besser? 37 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Lernen und Vorhersage: Beispiel Modellraum mit 4 Modellen: H = { f1 , f 2 , f3 , f 4 } Trainingdaten L Wir haben a-posteriori-Wahrscheinlichkeiten berechnet P ( f1 | L) = 0.3 P ( f 3 | L) = 0.25 P ( f 2 | L) = 0.25 P ( f 4 | L) = 0.2 MAP Modell ist f1 = arg max f p( fi |L) i 38 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Lernen und Vorhersage: Beispiel Modelle fi linear, probabilistisch: w Parametrisierung des Modells w T x Entscheidungsfunktionswert = P( y 1|= x, w ) σ (w x) T Z.B. = P ( y 1|= x, f1 ) 0.6 „logistische Regression“ Wahrscheinlich p(y=1) 1 σ ( z) = 1 + exp(− z ) Entscheidungsfunktionswert wx 39 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Lernen und Vorhersage: Beispiel Wir wollen neues Testbeispiel x klassifizieren = P ( y 1|= x, f1 ) 0.6 = P ( y 1|= x, f3 ) 0.2 = P ( y 1|= x, f 2 ) 0.1 = P ( y 1|= x, f 4 ) 0.3 Klassifikation mit MAP Modell f1 : y = 1 Andererseits (Rechenregeln der Wsk!): = P( y 1|= x, L ) 4 p( y ∑= i =1 = 1, fi | x, L) Summenregel 4 p( y ∑= i =1 1| x, f i ) P( f i | L) Produktregel = 0.6*0.3 + 0.1*0.25 + 0.2*0.25 + 0.3*0.2 = 0.315 40 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Lernen und Vorhersage: Beispiel Andererseits (Rechenregeln der Wsk!): = P( y 1|= x, L ) 4 p( y ∑= i =1 1, fi | x, L) = 0.6*0.3 + 0.1*0.25 + 0.2*0.25 + 0.3*0.2 = 0.315 Wenn Ziel Vorhersage ist, sollten wir P( y = 1| x, L) verwenden Nicht auf ein Modell festlegen, solange noch Unsicherheit über Modelle besteht Grundidee des Bayesschen Lernens/Vorhersage! 41 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessches Lernen und Vorhersage Gegeben: Gesucht: Trainingsdaten L, neue Instanz x. Wahrscheinlichkeit für Wert y für gegebenes x. P ( y | x, L ) Bayes-Hypothese: wahrscheinlichstes y. y* = arg max y P( y | x, L) Minimiert Risiko einer falschen Vorhersage. Heißt auch Bayes-optimale Entscheidung. 42 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessches Lernen und Vorhersage Bayes-Hypothese: wahrscheinlichstes y. P ( y | x, L ) Berechnung: y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Bayesian Model Averaging Vorhersage, gegeben Modell Modell gegeben Trainingsdaten Bayessches Lernen: Mitteln der Vorhersage über alle Modelle. Gewichtung: wie gut passt Modell zu Trainingsdaten. 43 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessches Lernen und Vorhersage Bayes-Hypothese y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Bayesian Model Averaging: Mitteln über i.A. unendlich viele Modelle Wie berechnen? Nur manchmal praktikabel, geschlossene Lösung. Kontrast zu Entscheidungsbaumlernen: Finde ein Modell, das gut zu den Daten passt. Triff Vorhersagen für neue Instanzen basierend auf diesem Modell. Trennt zwischen Lernen eines Modells und Vorhersage. 44 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessches Lernen und Vorhersage Wie Bayes-Hypothese ausrechnen? y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Wir brauchen: 1) Wsk für Klassenlabel gegeben Modell, P( y | x,θ ) = P( y 1|= x, f1 ) σ (w T x) P( = y 0 | x, f1= ) σ ( − w T x) Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessches Lernen und Vorhersage Wie Bayes-Hypothese ausrechnen? y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Wir brauchen: 2) Wsk für Modell gegeben Daten, a-posterioriWahrscheinlichkeit P(θ | L) → Ausrechnen mit Bayes Regel Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessches Lernen und Vorhersage Berechnung der a-posteriori Verteilung über Modelle Likelihood, Wie gut passt Modell zu Daten? Bayes‘ Gleichung Posterior, A-PosterioriVerteilung Bayessche Regel: Posterior = Likelihood x Prior. P(θ | L) = P( L | θ ) P(θ ) P ( L) 1 = P ( L | θ ) P (θ ) Z Prior, A-PrioriVerteilung Normierungskonstante Z = ∫ P( L | θ ) P(θ )dθ 47 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regel Bayes‘ Gleichung P( L | θ ) P(θ ) P(θ | L) = P ( L) Brauchen: Likelihood P(L | θ). Wie wahrscheinlich wären die Trainingsdaten, wenn θ das richtige Modell wäre. Wie gut passt Modell zu den Daten. Typischerweise Unabhängigkeitsannahme: L = {(x1 , y1 ),..., (x n , yn )} Wahrscheinlichkeit des in L beobachteten Klassenlabels gegeben Modell θ N P( L | θ ) = ∏ P ( yi | xi , θ ) i =1 48 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regel Bayes‘ Gleichung P( L | θ ) P(θ ) P(θ | L) = P ( L) Brauchen: Prior P(θ ). Wie wahrscheinlich ist Modell θ bevor wir irgendwelche Trainingsdaten gesehen haben. Annahmen über P(θ ) drücken datenunabhängiges Vorwissen über Problem aus. Beispiel lineare Modelle: 49 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regel Bayes‘ Gleichung P( L | θ ) P(θ ) P(θ | L) = P ( L) Brauchen: Prior P(θ ). Wie wahrscheinlich ist Modell θ bevor wir irgendwelche Trainingsdaten gesehen haben. Annahmen über P(θ ) drücken datenunabhängiges Vorwissen über Problem aus. Beispiel lineare Modelle: ^2 |w| möglichst niedrig (w = θ ) = P( y 1|= x, w ) σ (w T x) 50 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regel Bayes‘ Gleichung P( L | θ ) P(θ ) P(θ | L) = P ( L) Brauchen: Prior P(θ ). Wie wahrscheinlich ist Modell θ bevor wir irgendwelche Trainingsdaten gesehen haben. Annahmen über P(θ ) drücken datenunabhängiges Vorwissen über Problem aus. Beispiel Entscheidungsbaumlernen: 51 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regel Bayes‘ Gleichung P( L | θ ) P(θ ) P(θ | L) = P ( L) Brauchen: Prior P(θ ). Wie wahrscheinlich ist Modell θ bevor wir irgendwelche Trainingsdaten gesehen haben. Annahmen über P(θ ) drücken datenunabhängiges Vorwissen über Problem aus. Beispiel Entscheidungsbaumlernen: Kleine Bäume sind in vielen Fällen besser als komplexe Bäume. Algorithmen bevorzugen deshalb kleine Bäume. 52 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche/MAP/ML-Hypothese Um Risiko einer Fehlentscheidung zu minimieren: wähle Bayessche Vorhersage y* = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Problem: In vielen Fällen gibt es keine geschlossene Lösung, Integration über alle Modelle unpraktikabel. Maximum-A-Posteriori- (MAP-)Hypothese: wähle y* = arg max y P( y | x, θ* ) mit θ* = arg maxθ P (θ | L) Entspricht Entscheidungsbaumlernen. Finde bestes Modell aus Daten, Klassifiziere nur mit diesem Modell. 53 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche/MAP/ML-Hypothese Um MAP-Hypothese zu bestimmen müssen wir Posterior (Likelihood x Prior) kennen. Unmöglich, wenn kein Vorwissen (Prior) existiert. Maximum-Likelihood- (ML-)Hypothese: wähle y* = arg max y P( y | x,θ* ) mit θ* = arg maxθ P( L | θ ) Berücksichtigt nur Beobachtungen in L, kein Vorwissen. Problem der Überanpassung an Daten 54 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Überblick Wahrscheinlichkeiten, Erwartungswerte, Varianz Bayessches Lernen (Bayessche) Parameterschätzung für Wahrscheinlichkeitsverteilungen 55 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Parameter von Verteilungen schätzen Oft können wir annehmen, dass Daten einer bestimmten Verteilung folgen Diese Verteilungen sind parametrisiert Z.B. Binomialverteilung für N Münzwürfe Z.B. Gaußverteilung für Körpergröße, IQ, … Binomialverteilung: Parameter µ ist Wahrscheinlichkeit für „Kopf“ Gaußverteilung: Parameter µ , σ für Mittelwert/Standardabweichung „Echte“ Wsk/Parameter kennen wir nie. Mit Bayes Regel können wir Aussage über echte Wahrscheinlichkeit machen, gegeben Daten. 56 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Binomialverteilte Daten schätzen Beispiel: Münzwurf, schätze Parameter μ =θ N Mal Münze werfen. Daten L: Nk mal Kopf, Nz mal Zahl. Beste Schätzung θ gegeben L? Bayes‘ Gleichung: P(θ | L) = P( L | θ ) P(θ ) P ( L) Likelihood der Daten: P( L | θ ) (θ = μ Wahrscheinlichkeit für „Kopf“) Likelihood ist binomialverteilt: N k + N z Nk Nz ( Nk , N z | θ ) = P( L | θ ) P= θ (1 − θ ) Nk 57 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Binomialverteilte Daten schätzen Was ist der Prior P(θ ) im Münzwurfbeispiel? 1) Versuch: Kein Vorwissen 1: 0 ≤ θ ≤ 1 P(θ ) = 0 : sonst Dichte Beispiel: Daten L = {Zahl,Zahl,Zahl} MAP Modell: P( L | θ ) P(θ ) θ* arg = maxθ ∈[0,1] P(θ | L) arg maxθ ∈[0,1] P( L) 3 P( L | θ ) arg maxθ ∈[0,1] θ (1 −= = arg maxθ ∈[0,1] = θ) 0 0 0 3 Schlussfolgerung: Münze wird niemals „Kopf“ zeigen Schlecht, Überanpassung an Daten („Overfitting“) 58 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Binomialverteilte Daten schätzen Was ist der Prior P(θ ) im Münzwurfbeispiel? Besser mit Vorwissen! Gutes Modell für Vorwissen über θ : Beta-Verteilung. | α k ,α z ) P(θ ) Beta (θ= = Γ(α k + α z ) α k −1 θ (1 − θ )α z −1 Γ(α k )Γ(α z ) 1 Normalisierte Dichte ∫ Beta(θ | α K , α Z ) dθ = 1 0 αk und αz sind Hyperparameter der Verteilung. Gamma-Funktion Γ(α ) kontinuierliche Verallgemeinerung der Fakultätsfunktion ∞ z −1 − t Γ( z ) = t ∫ e dt 0 ∀n ∈ : Γ(n) = (n − 1)! 59 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Binomialverteilte Daten schätzen Warum gerade diese a-priori-Verteilung? Prior Strukturelle Ähnlichkeit mit Likelihood: | α k ,α z ) P(θ ) Beta (θ= = Γ(α k + α z ) α k −1 θ (1 − θ )α z −1 Γ(α k )Γ(α z ) N k + N Z Nk Nz ( Nk , N z | θ ) = P( L | θ ) P= Likelihood θ (1 − θ ) Nk 60 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Binomialverteilte Daten schätzen Wenn wir den Beta-Prior in Bayes‘ Gleichung einsetzen, dann: P(θ | L) = P( L | θ ) P(θ ) P ( L) 1 Bin( N K , N Z | θ ) Beta (θ | α k , α z ) Z N + N z Γ(α k + α z ) α k −1 1 Nk θ (1 − θ ) N z k θ (1 − θ )α z −1 = Z N k Γ(α k )Γ(α z ) 1 α k + Nk −1 (1 − θ )α z + N z −1 θ Z' =? = 61 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Beispiel Münzwurf: Beta-Verteilung Wenn wir den Beta-Prior in Bayes‘ Gleichung einsetzen, dann: P(θ | L) = P( L | θ ) P(θ ) P ( L) 1 Bin( N K , N Z | θ ) Beta (θ | α k , α z ) Z N + N z Γ(α k + α z ) α k −1 1 Nk = θ (1 − θ ) N z k θ (1 − θ )α z −1 Z N k Γ(α k )Γ(α z ) = 1 α k + Nk −1 (1 − θ )α z + N z −1 θ Z' Γ(α k + α z + N k + N z ) α k + Nk −1 (1 − θ )α z + N z −1 θ Γ(α k + N k )Γ(α z + N z ) = Beta (θ | α k + N k , α z + N z ) Beta-Verteilung ist „konjugierter“ Prior: Posterior ist wieder Beta-verteilt 62 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regel Bayes‘ Gleichung P( L | θ ) P(θ ) P(θ | L) = P ( L) Posterior P(θ | L). Wie wahrscheinlich ist Modell θ, nachdem wir Daten L gesehen haben. Vorwissen P(θ ) und Trainingsdaten werden zu neuem Gesamtwissen P(θ | L) integriert. Beispiel Münzwurf: Vorwissen Beta(θ | αk, αz) und Beobachtungen Nk, Nz werden zu Posterior Beta(θ | αk +Nk, αz +Nz). 63 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Beispiel Münzwurf: Beta-Verteilung Geburt Kopf … 1 N K + N Z Nk θ (1 − θ ) N z Beta(θ | α k , α z ) Beta (θ | α k= + Nk ,α z + N z ) Z N K Posterior Prior Likelihood 64 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Kopf, Zahl Münzwurf: wahrscheinlichste Wahrscheinlichkeit Wahrscheinlichster Parameter θ. arg maxθ P(θ | L) = P(θ | N k , N z ) = arg maxθ Beta(θ | α k + N k , α z + N z ) = arg maxθ = Γ(α k + α z + N k + N z ) α k + N k −1 θ (1 − θ )α z + N z −1 Γ(α k + N k )Γ(α z + N z ) α k + Nk −1 αk + Nk + α z + N z − 2 konstant Ableiten, Ableitung null setzen α= 1 ergibt sich ML Schätzung Für α= z k Interpretation der Hyperparameter α z − 1/ α k − 1 : wie oft im Leben Münzwurf mit „Kopf“/“Zahl“ gesehen? „Pseudocounts“ , die auf beobachtete „Counts“ N z / N k aufgeschlagen werden 65 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Münzwurf: wahrscheinlichste Wahrscheinlichkeit Wahrscheinlichster Parameter θ. arg maxθ P(θ | L) = P(θ | N k , N z ) = arg maxθ Beta(θ | α k + N k , α z + N z ) = arg maxθ = Γ(α k + α z + N k + N z ) α k + N k −1 θ (1 − θ )α z + N z −1 Γ(α k + N k )Γ(α z + N z ) α k + Nk −1 αk + Nk + α z + N z − 2 konstant Ableiten, Ableitung null setzen Beispiel: L = {Zahl,Zahl,Zahl} Prior P(θ ) = Beta (θ | 2, 2) = = maxθ P(θ | L) 0.2 MAP Modell θ* arg …besser als mit uninformativem Prior 66 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Würfelwurf statt Münzwurf Münzwurf: 2 Ausgänge. Prior Beta-verteilt, Binomiale Likelihood, Posterior wieder Beta-verteilt. Modell für Prozesse mit binären Attributen. Verallgemeinerung Würfelwurf: k Ausgänge. Prior Dirichlet-verteilt, Likelihood Multinomial, Posterior wieder Dirichlet-verteilt. Modell für diskrete Prozesse mit mehrwertigen Attributen (z.B. Worte in Texten) 67 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Einschub: Begriff „Schätzer“ Empirischen Beobachtungen (z.B. beobachteten Münzwürfen) liegen unbekannte Wahrscheinlichkeiten zugrunde (z.B. θ=p(Kopf)). Ein Schätzer ist ein Verfahren, dass eine Beobachtung auf einen Schätzwert abbildet. Münzwurf: Beobachtung Nk, Nz. Schätzer: θˆ = pˆ ( Kopf ) Schätzer für Wahrscheinlichkeit p heißt p̂ . Schätzer heißt erwartungstreu, wenn E[θˆ] = θ 68 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Schätzer Münzwurf: Beobachtung Nk, Nz. MAP-Schätzer Münzwurf: θˆMAP = arg maxθ P(θ | L) = arg maxθ Beta(θ | α k + N k , α z + N z ) α k + Nk −1 = αk + Nk + α z + N z − 2 für α=2 a.k.a. „Laplace Correction“. ML-Schätzer Münzwurf: θˆML = arg maxθ P( L | θ ) = arg maxθ θ N k (1 − θ ) N z = Nk Nk + N z 69 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Wahrscheinlichkeiten schätzen Binomiale Beobachtung (Münzwürfe): Multinomiale Verteilung: gerade behandelt, konjugierte Verteilung Beta. Diskrete Ereignisse, mehr als zwei Werte. Beispiel: Text, Folge diskreter Wörter. Geschlossene Lösung, konjugierte Verteilung Dirichlet. Normalverteilung (Gauß-Verteilung): Kontinuierliche Variablen. Geschlossene Lösung, konjugierte Verteilung Normalverteilung. 70 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Zusammenfassung Zufallsvariablen, Erwartungswerte, Varianzen Bayessches Lernen/Vorhersage Bayesian Model Averaging y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ (Bayessche) Parameterschätzung für Wahrscheinlichkeitsverteilungen MAP-Parameter Konjugierte Prior-Verteilungen 71 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Über Maschinelles Lernen und das Spielen mit Viren und Zombis Tobias Scheffer Einladung zur Antrittsvorlesung Donnerstag, 26.11.2009. Campus Golm, Haus 25, Hörsaal F.1.01. Vorlesung um 17:15. Empfang mit Bier, Wein, Häppchen um 18:00. (Alkohol umsonst!) Stoff ist unterhaltsam (und prüfungsrelevant, und taucht im Übungsblatt dieser Woche auf). 73 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Normalverteilung Bestimmen des IQ einer Personen. Zufallsvariable X. 1 2πσ 2 e − ( x − µ ) 2 /(2σ 2 ) Verteilungsfunktion der Normalverteilung Φ(X) = P(X≤x) (keine geschlossene Form). Rechenregel für Mittelwert und Varianz ergibt: X ~ N [ µ , σ ], p( x) = N [ µ , σ ]( x ) = 2 2 X ~ N[µ ,σ 2 ] ⇒ X −µ σ ~ N [0,1] N[0,1]: Standardnormalverteilung; Φ(X) in Tabelle. Für IQ gilt: µ=100, σ=15. Wie hoch ist P(X>120)? X − 100 120 − 100 > p ( X > 120) = P 15 15 120 − 100 = 1 − Φ 15 74 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Normalverteilung µ=0, σ=1 → Standardnormalverteilung. X ~ N[µ ,σ 2 ] X −µ ⇔ ~ N [0,1] σ 75 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen „Gauß-Kurve“ (“Gaussian”) Verteilungsfunktion der Normalverteilung Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen 76 Multivariate Normalverteilung Bedeutung von Mittelwert und Kovarianz: Wie sieht die Kovarianzmatrix aus? 77 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Merkmalsvektoren x und Mittelwertvektor µ haben d Dimensionen. Korvarianzmatrix Σ (Größe d x d). Überblick Bayessche Lineare Regression Modellbasiertes Klassifikationslernen: Naive Bayes 78 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Überblick Bayessche Lineare Regression Modellbasiertes Klassifikationslernen: Naive Bayes 79 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Wiederholung: Regression Regressionsproblem: Trainingsdaten L = (x1 , y1 ),..., (x N , y N ) Matrixschreibweise Merkmalsvektoren xi ∈ m Merkmalsvektoren yi ∈ reelles Zielattribut Zugehörige Labels (Werte Zielattribut) x11 xN 1 = X (= x1 ... x N ) x 1m xNm y1 y = ... y N Bayessches Lernen/Vorhersage: Gegeben L, neues Testbeispiel x Finde optimale Vorhersage y für x 80 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Wiederholung: Lineare Regression Modellraum lineare Regression: f w ( x) = w T x w „Parametervektor“, „Gewichtsvektor“ m = w0 + ∑ wi xi i =1 Künstliches Attribut x0 = 1 (konstant) Lineare Abhängigkeit von f w (x) von Parametern w Lineare Abhängigkeit von f w (x) von Eingaben x 81 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Daten Modellvorstellung beim Bayesschen Lernen: Prozess der Datengenerierung „Echtes“ Modell f* wird aus Prior-Verteilung P(w ) gezogen Merkmalsvektoren x1 ,..., x N werden unabhängig voneinander gezogen (nicht modelliert) Für jedes xi wird unabhängig das Label yi gezogen nach Verteilung P ( yi | xi , f* ) Daten L fertig generiert Wie sieht P( yi | xi , f* ) für Regressionsprobleme aus? 82 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Daten Annahme, dass es „echtes“ Modell f* (x) = xT w* gibt, dass die Daten perfekt erklärt, unrealistisch Daten folgen nie genau einer RegressionsGeraden/Hyperebene Alternative Annahme: Daten folgen f* (x) bis auf kleine, zufällige Abweichungen (Rauschen) 83 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Daten Alternative Annahme: Daten folgen f* (x) bis auf kleine, zufällige Abweichungen (Rauschen) Modellvorstellung: Zielattribut y generiert aus f* (x) plus normalverteiltes Rauschen = y f* (x) + ε mit ε ~ N [0, σ 2 ] f* ( x ) f* ( x0 ) P ( y | x0 , f* ) = N ( f* ( x0 ), σ 2 ) Parameter σ modelliert Stärke des Rauschens 84 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Vorhersageverteilung Bayessches Lernen/Vorhersage: y* = arg max y P( y | x, L) Erinnerung: Berechnung mit Bayesian Model Averaging Modell gegeben Trainingsdaten Vorhersage, gegeben Modell P= ( y | x, L ) ∫ P( y | x,θ )P(θ | L)dθ P (θ | L) = 1 P( L | θ ) P(θ ) Z Likelihood:Trainingsdaten gegeben Modell Prior über Modelle 85 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Likelihood P(y | X , w ) = P( y1 ,..., y N | X , w ) Beispiele sind unabhängig voneinander = ∏ i =1 P( yi | xi , w ) N P(x iT w + ε = yi ) = ∏ i =1 N ( yi | xiT w, σ 2 ) N = N y | X T w, σ 2 I Einheitsmatrix 1 0 I= ... 0 0 1 ... 0 ... ... ... ... 0 0 ... 1 X T w Vektor der Entscheidungsfunktionswerte ε = yi − x iT w Multidimensionale Normalverteilung mit Kovarianzmatrix σ 2 I 86 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Likelihood der Daten L: Bayessche Regression: Likelihood 1 1 exp = − 2 2 N 1/2 N /2 (2π ) (σ ) 2σ = = 2 T ( ) y x w − ∑ i i i =1 N 1 T 2 exp ( ) − − y x w ∏ 2σ 2 i i (2π ) N /2 σ N i =1 N 1 1 T 2 exp ( ) − − x w y ∏ i i 2 1/2 2 (2 ) 2 πσ σ i =1 N 1 N = ∏ N ( yi | xiT w, σ 2 ) i =1 87 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Multivariate Normalverteilung mit diagonaler Kovarianzmatrix ist Produkt von univariaten Normalverteilungen 1 1 T T 2 −1 T exp ( ) ( ) ( ) = − y w I y w N y | X T w, σ 2 I X σ X (2π ) N /2 | σ 2 I |1/2 2 Bayessche Regression: Prior Bayessches Lernen: Prior über Modelle f Modelle parametrisiert durch Gewichtsvektor w Prior P (w ) über Gewichtsvektoren Normalverteilung ist konjugiert zu sich selbst, normalverteilter Prior und normalverteilte Likelihood ergeben wieder normalverteilten Posterior. Deshalb w ~ N [0, Σ p ] Σp „erwarten kleine Attributgewichte“ Kovarianzmatrix, oft σ p 2I Σp = σ p2 steuert Stärke des Priors 88 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Posterior Posterior-Verteilung über Modelle gegeben Daten 1 P (w | L) = P( L | w ) P(w ) Z Bayessche Regel Symbol ∝ ∝ N [y | X T w, σ 2 I ] ⋅ N [w | 0, Σ p ] 1 1 ∝ exp − 2 (y − X T w )T (y − X T w ) exp − w T Σ −p1w 2σ 2 1 Ohne Beweis ∝ exp − (w − w )T A(w − w ) 2 mit w = σ −2 A−1 X y A σ −2 XX T + Σ −1 = p ∝ N w, A−1 89 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Posterior P ( X ) über ∝ h( X )Modelle genau danngegeben wenn Posterior-Verteilung Daten 1 h( X ), Z ∈ , Z unabhängig von X Z 1 P (w | L) = P ( L P| w ) P) (durch w ) h( X ) eindeutig Bayessche Regel ( X bestimmt: Z = ∫ h( X )dX Z = P( X ) Symbol ∝ ∝ N [y | X T w, σ 2 I ] ⋅ N [w | 0, Σ p ] 1 1 ∝ exp − 2 (y − X T w )T (y − X T w ) exp − w T Σ −p1w 2σ 2 1 Ohne Beweis ∝ exp − (w − w )T A(w − w ) 2 mit w = σ −2 A−1 X y A σ −2 XX T + Σ −1 = p ∝ N w, A−1 90 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Posterior Posterior-Verteilung über Modelle gegeben Daten 1 P (w | L) = P( L | w ) P(w ) Z Bayessche Regel Symbol ∝ ∝ N [y | X T w, σ 2 I ] ⋅ N [w | 0, Σ p ] 1 1 ∝ exp − 2 (y − X T w )T (y − X T w ) exp − w T Σ −p1w 2σ 2 1 Ohne Beweis ∝ exp − (w − w )T A(w − w ) 2 mit w = σ −2 A−1 X y A σ −2 XX T + Σ −1 = p ∝ N w, A−1 91 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Posterior Posterior: P (w | L) P= (w | y, X ) = 1 P(y | X , w ) P(w ) Z Symbol ∝ = N w | w, A−1 mit w = σ −2 A−1 X= y A σ −2 XX T + Σ −1 p Posterior wieder normalverteilt. MAP-Hypothese: w MAP = ? 92 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Posterior Posterior: P(w | L) P= (w | y, X ) = 1 P(y | X , w ) P(w ) Z Symbol ∝ ∝ N w | w, A−1 mit w = σ −2 A−1 X= y A σ −2 XX T + Σ −1 p Posterior wieder normalverteilt. MAP-Hypothese: w MAP = w 1 −1 = 2 A Xy σ 93 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Sequentielles Update des Posteriors Prior P(w ) normalverteilt Posterior P(w | X , y ) ebenfalls normalverteilt, für Beobachtungen X, y Beobachtete Instanzen unabhängig: P (w | L) ∝ P ( L | w ) P (w ) = ∏ i =1 P( yi | xi , w )P(w ) N „Likelihood für xi einzeln an Prior multiplizieren“ Sei P0 (w ) = P(w ) , Pn (w ) der Posterior, wenn wir nur die ersten n Instanzen in L verwenden. Dann n Pn (w ) ∝ P0 (w )∏ P( yi | xi , w ) i =1 Pn (w ) ∝ Pn −1 (w ) P( yn | x n , w ) 94 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Sequentielles Update des Posteriors Sequentielles Update: Beginne mit Prior P0 (w ) = P(w ) Berechne P1 (w ) ∝ P0 (w ) P( y1 | x1 , w ) P2 (w ) ∝ P1 (w ) P( y2 | x 2 , w ) … PN (w ) ∝ PN −1 (w ) P( yN | x N , w ) Datenpunkte nacheinander anschauen, der Posterior aus der vorherigen Iteration wird zum neuen Prior Neue Informationen (Datenpunkte) verändern Stück für Stück die Verteilung über w 95 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Beispiel Bayessche Regression Sequentielles Update: P0 (w ) = P (w ) Sample aus P0 (w ) = P (w ) P0 (w ) = P (w ) 96 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen f ( x= ) w0 + w1 x Beispiel Bayessche Regression Sequentielles Update: P1 (w ) ∝ P0 (w ) P( y1 | x1 , w ) Sample aus P ( y1 | x1 , w ) P1 (w ) P1 (w ) Datenpunkt x1 , y1 = y1 f ( x1 ) + ε =w0 + w1 x1 + ε ⇒ w0 = − w1 x1 + y1 − ε 97 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen f ( x= ) w0 + w1 x Beispiel Bayessche Regression Sequentielles Update: P1 (w ) ∝ P0 (w ) P( y1 | x1 , w ) Sample aus P ( y1 | x1 , w ) P1 (w ) P1 (w ) 98 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen f ( x= ) w0 + w1 x Beispiel Bayessche Regression Sequentielles Update: P2 (w ) ∝ P1 (w ) P( y2 | x2 , w ) Sample aus P ( y2 | x2 , w ) P2 (w ) P2 (w ) 99 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen f ( x= ) w0 + w1 x Beispiel Bayessche Regression Sequentielles Update: PN (w ) ∝ PN −1 (w ) P ( y N | xN , w ) Sample aus P ( y N | xN , w ) PN (w ) PN (w ) 100 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen f ( x= ) w0 + w1 x Bayessche Regression: Vorhersageverteilung Bayes-Hypothese: wahrscheinlichstes y. y* = arg max y P( y | x* , L) Erinnerung: Berechnung mit Bayesian Model Averaging P= ( y | x* , L ) Bayesian Model Averaging ∫ P( y | x ,θ )P(θ | L)dθ * Vorhersage, gegeben Modell Modell gegeben Trainingsdaten Bayessche Vorhersage: Mitteln der Vorhersage über alle Modelle. Gewichtung: wie gut passt Modell zu Trainingsdaten. 101 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Vorhersageverteilung Vorhersageverteilung wieder normalverteilt: P ( y | x * , L ) = ∫ P ( y | x * , w ) P ( w | L ) dw = ∫ N ( y | x*T w, σ 2 ) N (w | w, A−1 )dw = N ( y | x*T w, x*T A−1x* ) (ohne Beweis) mit w = σ −2 A−1 Xy= A σ −2 XX T + Σ −1 p Optimale Vorhersage: Eingabevektor x* wird mit w multipliziert: y* = x*T w 102 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Regression: Vorhersageverteilung Bayessche Regression liefert nicht nur Regressionsfunktion f (x* ) = xT* w sondern Dichte von y und damit auch einen Konfidenzkorridor. 103 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen Einschränkung der bisherigen Modelle: nur lineare Abhängigkeiten zwischen x und f(x). Lineare Daten Nicht-lineare Daten In vielen Fällen nützlich: nicht-lineare Abhängigkeit Grössere Klasse von Funktionen repräsentierbar 104 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen Einfachster Weg: Lineare Regression auf nichtlinearen Basisfunktionen Idee: Nicht auf den ursprünglichen x arbeiten, sondern auf nichtlinearer Transformation φ (x) Inferenz für Lernen, Vorhersage im Prinzip unverändert Basisfunktionen φ1 ,..., φd : X → φ1 (x) x φ ( ) φ ( x) 2 ∈ d = ... x φ ( ) d X Instanzenraum (meist X= m ) φ : m → d meistens d m 105 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen Lineare Regression in den Basisfunktionen d ) w0 + ∑ wiφi (x) f (x= i =1 = w T φ ( x) Anschauung: Abbildung in höherdimensionalen Raum φ ( X ) , lineare Regression dort 106 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen: Beispiel Beispiel X = φ1 ( x) = x φ2 ( x) = x 2 f ( x) = w0 + w1φ1 ( x) + w2φ2 ( x) Nichtlineare Funktion in X darstellbar als lineare Funktion in φ ( X ) f ( x) =1 − 3 x + x 2 φ y y x x2 x 107 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen Beispiele für nicht-lineare Basisfunktionen Polynome φ j ( x) = x j 108 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen Beispiele für nicht-lineare Basisfunktionen Gauss-Kurven ( x − µ j )2 ( x) exp − φ j= 2 2 s µ1 ,..., µd Mittelpunkte s 2 feste Varianz 109 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Nichtlineare Basisfunktionen Beispiele für nicht-lineare Basisfunktionen Sigmoide x − µj φ j ( x) = σ s 1 σ (a) = 1 + exp(−a ) µ1 ,..., µd Mittelpunkte s feste Skalierung 110 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Regression mit Basisfunktionen Funktion φ (x) bildet m-dimensionalen Eingabevektor auf d-dimensionalen Merkmalsvektor ab. Regressionsmodell: f ( x) = φ ( x) T w Parametervektor w hat d Dimensionen. Optimale Entscheidung wie bisher, mit φ (x) statt x . P( y | x* , X , y ) = N y | φ ( x* )T w, φ ( x* )T A−1φ ( x* ) y* = arg max y p ( y | x* , X , y ) = φ ( x* )T w A= σ −2 ΦΦT + Σ −1 p , w = σ −2 A−1Φy und Φ = φ ( X ) 111 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Basisfunktionen und Kernelisierung φ : m → d bildet m-dimensionalen auf d- dimensionalen Vektor ab, d m Lösung für optimales y y* = arg max y p ( y | x* , X , y ) = φ ( x* )T w −2 −1 A= σ −2 ΦΦT + Σ −1 , w = σ A Φy und Φ = φ ( X ) p erfordert Invertieren einer d x d Matrix. Wenn d > N (Anzahl Beispiele), dann ist dieses Vorgehen verschwenderisch N Beispiele können höchstens in einem N dimensionalen (Unter-)Raum liegen 112 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Basisfunktionen und Kernelisierung „Kernelisierung“ Umformulieren des Problems, so dass nur noch N x N Matrix invertiert werden muss. Nach der Umformulierung geht der Merkmalsvektor nur noch in der Form K (x, x ') =φ ( x)Σ pφ ( x ') in die Inferenz ein Statt der expliziten Abbildung φ (x) berechnen wir nur noch Kernel-Produkte K (x, x ') =φ ( x)Σ pφ ( x ') Kernelisierung wichtiges Prinzip im maschinellen Lernen: mehr zu Kernel-Methoden in 1-2 Wochen! 113 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Beispiel Regression mit Nichtlinearen Basisfunktionen Beispiel für Regression mit nicht-linearen Basisfunktionen Nicht-lineare Daten generiert durch = y sin(2π x) + ε (eindimensional) 9 Gaussche Basisfunktionen ( x − µ j )2 ( x) exp − φ j= 2 2 s = µ1 0.1,..., = µ9 0.9 Generiere N=25 Datenpunkte, Bayessche Regression Wie sieht die Vorhersageverteilung P ( y* | x* , y , X ) und der Posterior P(w | y , X ) aus ? 114 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Vorhersageverteilung N=4 N=25 115 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen N=1 N=2 Samples aus dem Posterior N=4 N=25 116 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen N=1 N=2 Überblick Bayessche Lineare Regression Modellbasiertes Klassifikationslernen: Naive Bayes 117 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Klassifikation Klassifikation: y hat endlichen Wertebereich Binär: y ∈ {0,1} Mehrklassen-Probleme: y ∈ {c1 ,..., ck } Optimale Vorhersage von y gegeben neues x: Bayesian model averaging y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Regression: geschlossene Lösung: Vorhersageverteilung normalverteilt mit Mittelwert f (x) = xT w Klassifikation: keine geschlossenen Lösungen. 118 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Klassifikation Bayesian model averaging y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Geschlossene Lösung bei Regression möglich, weil Posterior (=Normalverteilung) erlaubt analytische Herleitung der Vorhersageverteilung P( y | x, L) Maximierung über Vorhersageverteilung (=Normalverteilung) möglich 119 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Klassifikation Bayesian model averaging y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ Klassifikation: keine geschlossene Lösung Analytische Lösung für Maximum des… …Posterior: manchmal möglich (Naive Bayes ja, logistische Regression nein) …Vorhersageverteilung: nicht möglich (für gängige Modelle wie Naive Bayes, logistische Regression) Aber Maximum des Posterior numerisch zu finden (MAP Hypothese möglich) 120 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Bayessche Klassifikation Bayesian model averaging hat für Klassifikation keine geschlossene Lösung. Numerische Berechnung nicht praktikabel, summieren über alle Hypothesen unrealistisch. Approximation: zweistufiger Prozess: Finde MAP-Hypothese aus Daten, Klassifiziere neue Instanzen mit MAP-Hypothese. y* = arg max y P( y | x, L) = arg max y ∫ P( y | x, θ ) P(θ | L)dθ ≈ arg max y P( y | x, θ MAP ) mit θ MAP = arg maxθ P (θ | L) 121 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Klassifikationsprobleme Lerne Modell θ aus Trainingsdaten L L = (x1 , y1 ),..., (x N , y N ) xi Merkmalsvektoren yi Klassenlabels Matrixschreibweise für Trainingsdaten L Merkmalsvektoren X X = (x1 x11 x N 1 ... x N ) = x 1m x Nm Zugehörige Klassenlabel y y1 y = ... y N Lernen: z.B. MAP Modell θ MAP = arg maxθ P(θ | L) = arg maxθ P( L | θ ) P(θ ) P( L | θ ) :Welcher Teil der Daten L wird modelliert? 122 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Modellbasiertes und Diskriminatives Lernen Modellbasiertes Lernen: θ MAP = arg maxθ P(θ | L) = arg maxθ P( L | θ ) P(θ ) = arg maxθ P( X , y | θ ) P(θ ) Welcher Teil der Daten L wird modelliert? θ wird so gewählt, dass es Instanzen X und Werte der Klassenvariable y in den Daten gut modelliert. Diskriminatives Lernen: θ MAP = arg maxθ P(θ | L) = arg maxθ P( L | θ ) P(θ ) = arg maxθ P(y | X , θ ) P(θ ) Welcher Teil der Daten L wird modelliert? θ wird so gewählt, dass es y gut abbildet . Klassifikator soll nur y für jedes x gut vorhersagen. Wozu also gute Modellierung von X berücksichtigen?123 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Modellbasiert: Naive Bayes Modellbasierte Klassifikation: θ MAP = arg maxθ P(θ | L) = arg maxθ P( L | θ ) P(θ ) = arg maxθ P( X , y | θ ) P(θ ) Likelihood der Daten L: N unabhängige Instanzen mit Klassenlabels. P( L | θ ) = P (x1 , y1 ,..., x N , y N | θ ) = ∏ N j =1 P(x j , y j | θ ) Instanzen folgen gleicher Verteilung: (xi , yi ) ~ P(x, y | θ ) x, y Zufallsvariablen xi , yi beobachtete Werte „i.i.d“ (independent and identically distributed) 124 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Modellbasiert: Naive Bayes Wie modellieren wir P(x, y | θ ) ? Annahme: A-priori Verteilung über Klassen P ( y | θ ) z.B. = P( y spam = | θ ) 0.95 P= ( y ok = | θ ) 0.05 Klassen-spezifische Verteilungen P (x | y, θ ) P(x= | y spam, θ ) ≠ P(x= | y ok , θ ) Verteilung über Merkmalsvektoren in der „Spam“ Klasse Verteilung über Merkmalsvektoren in der „Ok“ Klasse 125 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Modellbasiert: Naive Bayes Wie modellieren wir P(x, y | θ ) ? Gemeinsame Verteilung P(x, y | θ ) = P(x | y, θ ) P( y | θ ) Klassenprior x-Verteilung gegeben Klasse Wie modellieren wir P(x | y, θ ) ? x1 x = ... x m hochdimensional, 2m verschiedene Werte (falls Attribute xi binär) 126 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Unabhängigkeitsannahme Bedingte Unabhängigkeitsannahme: P(x, y | θ ) = P(x | y, θ ) P( y | θ ) = P( x1 ,..., xm | y, θ ) P( y | θ ) m = P( y | θ )∏ P( xi | y, θ ) i =1 „Attribute xi unabhängig gegeben die Klasse y“ Annahme: zwei Klassen, binäre Attribute Modellierte Verteilungen (Modellparameter): P ( y | θ ) Bernoulli, mit Parameter = θ y P= ( y 1| θ ) Für i ∈ {1,..., m} (Attribute), c ∈ {0,1} (Klassen): x |c P= ( xi 1| θ= , y c) P( xi | y = c, θ ) Bernoulli, mit Parameter θ= i 127 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Likelihood Likelihood der Daten L: = P( L | θ ) ∏ = ∏ N j =1 P(x j , y j | θ ) N j =1 Unabhängigkeit Instanzen P( y j | θ ) P(x j | y j ,θ ) Produktregel Bedingte Unabhängigkeit Attribute P( y j | θ )∏ i 1 P( x ji | y j , θ ) = ∏ j 1= = N m y = P ( y | θ )∏ i 1 P ( x ji | y j , θ ∏ j =j 1 = N m xi | y j ) „Zuständige“ Modellparameter y j = Klassenlabel j-te Instanz x ji = Wert i-tes Merkmal j-te Instanz 128 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Posterior Posterior-Verteilung 1 P( L | θ ) P(θ ) Z N m 1 ( | = P y θ ) P( x ji | y j , θ )P(θ ) ∏ ∏ j j =1 i =1 Z P(θ | L) = = ( )( ( ) Unabhängige Prior auf einzelnen Parametern: m m xi |0 P(θ ) = P(θ ) ∏ P(θ ) ∏ P(θ xi |1 ) = i 1= i 1 y ) N m N 1 xi | y j xi |1 xi |0 y ( | ( ( ( | , P (θ y )∏ j = p y θ ) P θ ) P θ ) P x y θ ) ∏ ∏ j ji j 1 1 1 i= j= Z N 1 m x |y =P (θ y )∏ j =1 p ( y j | θ y ) ∏ i =1 P (θ xi|0 ) ∏ P ( x ji | y j , θ i j ) Z j =1... N y j =0 m xi | y j xi |1 ( ( | , P θ P x y θ ) ) ∏ ∏ ji j i =1 j =1... N y j =1 129 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Posterior MAP-Hypothese für Naive Bayes: θ* = arg maxθ P(θ | L) B A m | x y = arg maxθ P(θ y )∏ j =1 p( y j | θ y ) ∏ i =1 P(θ xi|0 ) ∏ P( x ji | y j , θ i j ) j =1... N y j =0 m xi | y j xi |1 ( ( | , P P x y θ θ ) ) ∏ ∏ ji j i =1 Blöcke A,B,C können unabhängig j =1... N y j =1 optimiert werden: Vorkommen jeweils ( N ) anderer Variablen C Blöcke haben immer die gleiche Form: (Produkt von) Prior-Verteilung mal Binomialer Likelihood Wir sollten konjugierten Prior verwenden: Beta-Verteilung! 130 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Konjugierter Prior Beta-Prior für alle Parameter P(θ y ) ~ Beta (θ y | α 0 , α1 ) = θ y P= ( y 1| θ ) Für i ∈ {1,..., m} (Attribute), c ∈ {0,1} (Klassen): P(θ xi |c ) ~ Beta (θ xi |c | α xi |c , α xi |c ) x |c θ= P= ( xi 1| θ= , y c) i Konjugierter Prior: Posterior-Verteilung in jedem Block wieder Beta-Verteilt 131 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Modellbasiert: Naive Bayes Konjugierter Prior: Posterior-Verteilung in jedem Block wieder Beta-Verteilt MAP-Parameter für P(θ y | L) : θ m y y = arg maxθ y P(θ ) ∏ j =1 p ( y j | θ ) Beta-Prior binomiale Likelihood y MAP Beta-verteilter Posterior = arg maxθ y Beta (θ y | N 0 + α 0 , N1 + α1 ) = N0 + α0 N 0 + α 0 + N1 + α1 mit N 0 : Anzahl Beispiele mit Klasse 0 in L N1: Anzahl Beispiele mit Klasse 1 in L 132 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Modellbasiert: Naive Bayes MAP-Parameter für P(θ xi |c ) : Für i ∈ {1,..., m} (Attribute), c ∈ {0,1} (Klassen): N xi |c = arg maxθ xi|c P(θ xi |c ) ∏ P( x ji | y j , θ xi |c ) θ MAP j =1 Beta-Prior y j =c binomiale Likelihood Beta-verteilter Posterior = arg maxθ xi|c Beta (θ xi |c | N xi |c + α xi |c , N xi |c + α xi |c ) = mit N xi |c + α xi |c N xi |c + α xi |c + N xi |c + α xi |c N xi |c : Anzahl Beispiele mit Wert xi für Attribut i und Klasse c in L N xi |c : Anzahl Beispiele mit Wert xi für Attribut i und Klasse c in L 133 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Lernalgorithmus Eingabe: L = (x1 , y1 ),..., (x N , y N ) Für alle Klassen y (0 und 1), schätze θ y MAP = Ny +αy Ny +αy + Ny +αy Für alle Klassen y, für alle Attribute i, für alle Werte (0 und 1) des Attributes, schätze θ xi | y MAP = N xi | y j + α xi | y N xi | y + α xi | y + N xi | y + α xi | y mit N y : Anzahl Beispiele mit Klasse y in L mit N y : Anzahl Beispiele mit Klasse y in L N xi | y : Anzahl Beispiele mit Wert xi für Attribut i und Klasse y in L N xi | y : Anzahl Beispiele mit Wert xi für Attribut i und Klasse y in L Alle Modellparameter gelernt! 134 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Klassifikation Eingabe: x* = ( x*1 ,..., x*n ) Rückgabe: y* = arg max y P( y | x* , θ MAP ) = arg max y ) Laufzeit beim Klassifizieren: O(| Y | m) ( xi | y y P x y θ P y θ ( | , ) ( | ∏ i =1 *i MAP MAP ) m m = Anzahl Attribute | Y |= 2 in der bisherigen Herleitung Laufzeit beim Lernen: O ( N | Y | m) N = Anzahl Trainingsinstanzen 135 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Beispiel Trainingsdaten: x1 : Schufa pos. x2 : Student Instanz x1 Instanz x 2 Instanz x 3 1 1 0 y : Rückzahlung ok? 1 0 1 1 1 0 Prior: alle Parameter α in den Beta-Verteilungen setzen wir auf α=1 Gelernte Parameter/Hypothese? 136 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Beispiel Gelernte Parameter/Hypothese Merkmalsverteilungen P( xi | y ) x1 P( x1 | y = 0) x1 P( x1 | y = 1) 0 ? 0 ? 1 ? 1 ? x2 P( x2 | y = 0) x2 P( x2 | y = 1) 0 ? 0 ? 1 ? 1 ? Klassenprior P( y ) y P( y ) 0 ? 1 ? 137 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Beispiel Gelernte Parameter/Hypothese Merkmalsverteilungen P( xi | y ) x1 P( x1 | y = 0) x1 P( x1 | y = 1) 0 2/3 0 1/4 1 1/3 1 3/4 x2 P( x2 | y = 0) x2 P( x2 | y = 1) 0 1/3 0 2/4 1 2/3 1 2/4 Klassenprior P( y ) y P( y ) 0 2/5 1 3/5 138 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Beispiel Testanfrage: x* = (Schufa pos = 0, Student = 0) Vorhersage: P ( y | x* ) = P ( x* | y ) P ( y ) ∝ P ( x* | y ) P ( y ) P ( x* ) P( y = 0 | x* ) ∝ P ( x* | y = 0) P ( y = 0) = P ( x= 0 | y= 0) P ( x= 0 | y= 0) P ( y= 0)= 2 1 P( y = 1| x* ) ∝ P (x* | y = 1) P ( y = 1) = P( x= 0 | y= 1) P( x= 0 | y= 1) P( y= 1)= 2 1 ⇒ y* = 0 2 1 2 4 ∗ ∗= 3 3 5 45 1 2 3 3 ∗ ∗= 4 4 5 40 139 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Mehrwertige Attribute Parameter: xi = v| y j θ MAP für alle Werte v von x i , alle Klassen y j Prior: Dirichlet statt Beta. Schätzen der Parameter: θ xi = v| y j MAP +α N xi v|= yj xi v| y j = = ∑ N +α '| y j xi v = xi v '| y j = v' mit N xi =v| y j : Anzahl Beispiele mit Wert v für Attribut xi und Klasse y j in L 140 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen Naive Bayes: Eigenschaften Einfach zu implementieren, effizient, populär. Funktioniert ok, wenn die Attribute wirklich unabhängig sind. Das ist aber häufig nicht der Fall. Unabhängigkeitsannahme und modellbasiertes Training führen häufig zu schlechten Ergebnissen. Logistische Regression, Winnow, Perzeptron sind meist besser. 141 Sawade/Landwehr/Prasse/Scheffer, Maschinelles Lernen