Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Zusammenfassung Niels Landwehr, Uwe Dick, Matthias Bussas
Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Recommendation
Was ist Recommendation Empfehlung von Produkten, Informationen, Personen, Musik, Kunden eines Onlineshops klicken sich durch die Angebotspallette, legen manche Artikel in den Warenkorb Ziel: Vorschlag von Produkten, die den Kunden auch interessieren könnten bei Amazon: Kunden die x kaufen, kaufen auch y Optimierungskriterium: Umsatz- bzw. Gewinnmaximierung 3
Trainingsdaten Matrix der Trainingsbeispiele: u 1 u 2 u 3 u 4 x 1 x 2 x 3 Manchmal Attribute von Nutzern, Objekten gegeben 4
Inhaltsbasierte Recommendation Featureabbildung f: X R d notwendig Unabhängige Lernprobleme für einzelne Nutzer: Normale Regressions- oder Klassifikationsformalisierung Gemeinsames Lernproblem: Verteilung der Gewichtsvektoren um gemeinsamen, gleichzeitig gelernten, Mittelpunkt 5
Kollaborative Empfehlung: knn Idee Kollaborative Empfehlung: Produkte, die Leuten mit ähnlichem Geschmack wie man selber gefallen, gefallen einem wahrscheinlich selber k-nearest Neighbor Ansatz: Definition einer Distanzfunktion d(u, u ) zwischen Benutzern Vorhersage für ein Tupel aus Benutzer und Objekt ergibt sich aus den Vorhersagen der k nächsten Nachbarn des Benutzers, die dieses Objekt auch bewertet haben 6
Matrixfaktorisieung Idee: Vorhersage ist Produkt von Benutzer-Features und Objekt-Features Weder Featurevektoren der Benutzer u noch der Objekte f x gegeben: beides gleichzeitig lernen! Optimierungskriterium mit latenten Features: Feature-Vektoren von allen Benutzern und Objekten werden regularisiert 7
Matrix-Faktorisierung Zusammenfassung der Feature-Vektoren in Matrizen: Ziel: soll möglichst gut die Matrix der echten Bewertungen B approximieren (an den Stellen, an denen die Matrix B besetzt ist) 8
9
Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Graphische Modelle
Graphische Modelle Modellierung einer Domäne mit verschiedenen Zufallsgrössen Gemeinsame Verteilung, insb. Abhängigkeiten 11
Überblick Graphische Modelle: Einführung Graphische Modelle im Maschinellen Lernen Inferenz in Graphischen Modellen 12
Graphische Modelle: Einführung am Beispiel Beispiel: Alarm Szenario Unser Haus in LA hat eine Alarmanlage. Wir sind im Urlaub. Unser Nachbar ruft an, falls er den Alarm hört. Wenn eingebrochen wurde, wollen wir zurück kommen. Leider ist der Nachbar nicht immer zu Hause Leider geht die Alarmanlage auch bei kleinen Erdbeben los 5 binäre Zufallsvariablen B E A Burglary Einbruch hat stattgefunden Earthquake Erdbeben hat stattgefunden Alarm Alarmanlage geht los N NeighborCalls Nachbar ruft an R RadioReport Bericht über Erdbeben im Radio 13
Graphische Modelle: Einführung am Beispiel Ziel: Repräsentation der gemeinsamen Verteilung p(b,e,a,n,r) Wähle Variablenordnung: z.b. B<E<A<N<R Produktregel: p( B, E, A, N, R) p( B, E, A, N) p( R B, E, A, N) p( B, E, A) p( N B, E, A) p( R B, E, A, N) p( B, E) p( A B, E) p( N B, E, A) p( R B, E, A, N) p( B) p( E B) p( A B, E) p( N B, E, A) p( R B, E, A, N) Faktoren beschreiben die Verteilung einer Zufallsvariablen in Abhängigkeit anderer Zufallsvariablen. 14
Graphische Modelle: Einführung am Beispiel p( B, E, A, N, R) p( B) p( E B) p( A B, E) p( N B, E, A) p( R B, E, A, N) Idee: vereinfache Faktoren durch Unabhängigkeitsannahmen p( E B) p( E) p( A B, E) p( A B, E) p( N B, E, A) p( N A) p( R B, E, A, N) p( R E) Erdbeben hängt nicht von Einbruch ab Alarm hängt von Einbruch und Erdbeben ab Anruf von Nachbar hängt nur von Alarm ab Nachricht im Radio hängt nur von Erdbeben ab Vereinfachte Darstellung der gemeinsamen Verteilung: p( B, E, A, N, R) p( B) p( E) p( A E, B) p( N A) p( R E) Vereinfachte Faktoren 15
Graphische Modelle: Einführung am Beispiel Graphisches Modell für Alarm Szenario P(B=1) P(E=1) 0.1 0.2 B E P(A=1 B,E) 0 0 0.01 0 1 0.5 1 0 0.9 1 1 0.95 B E A N A P(N=1 A) 0 0.1 1 0.7 Modellierte Verteilung: p( B, E, A, N, R) p( B) p( E) p( A E, B) p( N A) p( R E) E P(R=1 E) 0 0.01 1 0.5 R Graphisches Modell: - Jede ZV ist ein Knoten - Für jeden Faktor der Form p( X X,..., X ) fügen wir gerichtete Kanten von den X zu X ein - Modell ist parametrisiert mit den bedingten Verteilungen px ( X1,..., X k ) 1 i k 16
Graphische Modelle: Unabhängigkeit Die Graphstruktur impliziert Unabhängigkeiten zwischen Mengen von ZV D-separation Kriterium, um Unabhängigkeiten aus Graphstruktur abzulesen A,B unabhängig gegeben C gdw jeder Pfad von Knoten in A zu Knoten in B blockiert ist gegeben C Menge einfacher Regeln, wann Pfade blockiert sind 17
Divergierende Verbindungen Betrachte Pfad A E R. Gilt R? B A N E R Nein, p( A R) p( A) Divergierende Verbindung B= Einbruch E= Erdbeben A= Alarm N= Nachbar ruft an R= Radio Bericht RadioReport wahrscheinlich Erdbeben wahrscheinlich Alarm ZV R beeinflusst ZV A über die divergierende Verbindung R E A 18
Divergierende Verbindungen Betrachte Pfad A E R. Gilt R E? Divergierende Verbindung B E B= Einbruch N= Nachbar ruft an E= Erdbeben R= Radio Bericht A R A= Alarm beobachteter Knoten N Ja, p( A R) p( A) Wenn wir schon wissen, dass ein Erdbeben eingetreten ist, wird die Wahrscheinlichkeit für Alarm nicht höher/niedriger durch RadioReport Der divergierende Pfad R E A wird durch Beobachtung von E blockiert 19
Serielle Verbindungen Betrachte Pfad N A B. Gilt? B Serielle Verbindung A N E R Nein, p( B N) p( B) [Ausrechnen mit gemeinsamer Verteilung] Intuitiv: NeighborCalls wahrscheinlich Alarm wahrscheinlich Burglary p( B 1 N 1) p( B 1 N 0) B= Einbruch E= Erdbeben A= Alarm N= Nachbar ruft an R= Radio Bericht ZV N beeinflusst ZV B über den seriellen Pfad N AB 20
Serielle Verbindungen Betrachte Pfad N A B. Gilt A? B Serielle Verbindung A N E R Ja, p( B N, A) p( B A) [Ausrechnen mit gemeinsamer Verteilung] Intuitiv: B= Einbruch E= Erdbeben A= Alarm beobachteter Knoten N= Nachbar ruft an R= Radio Bericht Wenn wir schon wissen, dass der Alarm ausgelöst wurde, sinkt/steigt die Wahrscheinlichkeit für Einbruch nicht dadurch, dass Nachbar anruft Der serielle Pfad N A B wird durch Beobachtung von A blockiert. 21
Konvergierende Verbindung Betrachte Pfad B A E. Gilt? B Konvergierende Verbindung A N E R Ja, p( B E) p( B) B= Einbruch E= Erdbeben A= Alarm Einbrüche treten nicht häufiger/seltener auf an Tagen mit Erdbeben N= Nachbar ruft an R= Radio Bericht Der konvergierende Pfad B A E ist blockiert wenn A nicht beobachtet ist 22
Konvergierende Verbindung Betrachte Pfad B A E. Gilt A? B Konvergierende Verbindung A N E R Nein, p( B E) p( B) B= Einbruch E= Erdbeben A= Alarm beobachteter Knoten N= Nachbar ruft an R= Radio Bericht Alarm wurde ausgelöst. Falls wir ein Erdbeben beobachten, erklärt das den Alarm, Wahrscheinlichkeit für Einbruch sinkt ("explaining away"). Der konvergierende Pfad B AE wird freigegeben durch Beobachtung von A 23
D-Separation: Korrektheit, Vollständigkeit Gegeben ein graphisches Modell über {X 1,,X N } mit Graphstruktur G. Das GM modelliert eine Verteilung durch p( X,..., X ) p( X pa( X )) 1 N i1 abhängig von den bedingten Verteilungen p( X n pa( X n)). Theorem (Korrektheit, Vollständigkeit d-separation) Falls A,B d-separiert gegeben C in G, dann N Es gibt keine anderen Unabhängigkeiten, die für jede Wahl der bedingten Verteilungen p( X pa( X )) gelten. i i i i p( A B, C) p( A C) 24
Überblick Graphische Modelle: Einführung Graphische Modelle im Maschinellen Lernen Inferenz in Graphischen Modellen 25
Münzwürfe als graphisches Modell Münzwurf: N Bernoulli-verteilte Zufallsvariablen Parameter, Beta-Prior p ( X,..., X, ) p ( p( X ) 1 N k z k z Darstellung als graphisches Modell: X X 1 2 X 3 Prior X N N i1 i Likelihood pa( ) pa( X ) { } i X,..., 1 XN 26
Parameterschätzung als Inferenzproblem MAP-Parameterschätzung Münzwurf arg max p ( x,..., x ) Inferenzproblem: k z 1 N p, ( ) X1 2 k z px ( ) px ( ) X X X 3 N Evidenz auf den Knoten X 1,, X N Wahrscheinlichster Zustand des Knotens μ gegeben X 1,, X N 27
Plate-Modelle Plate Notation X X 1 2 Ein Plate ist eine abkürzende Notation für N Variablen der gleichen Form X 3 X N Plate Notation Bezeichnet mit Anzahl der Variablen, N Variablen haben Index (z.b. X i ). X i N Plate 28
Erinnerung: Bayessche Lineare Regression Diskriminatives Setting: x i fest, Verteilung über Label y i Lineares Modell plus Gaußsches Rauschen p y N y T 2 ( x, w) w x ( 0, ) Bayessches Setting: Prior auf Parametervektor p N I 2 2 ( w ) ( w 0, ) y T wx x Zufallsvariablen: w y y (nicht: x,...,,, 1 x N ), 1,..., N 29
Bayessche Lineare Regression als Graphisches Modell 1 Graphisches Modell, N=3 y 1 N 2 2 2 2..., yn, w x1,..., xn w ( i xi, w, ) i1 Prior Likelihood p( y,,, ) p( ) p y w y2 y3 Graphisches Modell, Plate-Notation w y i x1 x2 x3 x i N 30
MAP Parameterschätzung als Inferenzproblem w y1 y2 y3 x1 x2 x3 MAP Parameterschätzung: wahrscheinlichstes Modell gegeben Daten w w x x 2 2 * arg max w p( y1,..., y N, 1,..., N,, ) x n w y n N Inferenzproblem: was ist der wahrscheinlichste Zustand für Knoten w, gegeben beobachtete Knoten y 1,, y N? 31
Bayes-optimale Vorhersage Klassifikation mit MAP Modell: w*,, 2 2 arg max w p( w L X, ) y p y 2 * arg max y ( xw, *, ) w x T * Statt MAP Modell kann man auch direkt die Bayes sche Vorhersageverteilung ausrechnen: 2 2 2 2 2 p( y, L, X,, ) p( y,, ) p( L, X,, ) d X x1... x N Merkmalsvektoren x x w w w Unsicherheit über Modelle: nicht nötig, sich auf ein Modell fest zu legen 32
Bayessche Lineare Regression als Graphisches Modell Bayessche Vorhersage: Erweiterung des Modells durch neue Testinstanz (neue Zufallsvariable y) p( y,,, ) p( ) p( y, p y N 2 2 2 2 2 1,..., yn, y, w x1,..., xn x w i w xi, ) ( w, x, ) i1 Graphisches Modell, N=3 w y1 y2 y3 y Plate Notation w y n y x1 x2 x3 x x n N x 33
Bayessche Lineare Regression als Graphisches Modell Bayessche Vorhersage y p y L X * 2 2 arg max y ( x,,,, ) Inferenzproblem: was ist der wahrscheinlichste Zustand für Knoten y, gegeben beobachtete Knoten y 1,, y N? 34
Überblick Graphische Modelle: Einführung Graphische Modelle im Maschinellen Lernen Inferenz in Graphischen Modellen 35
Problemstellung Inferenz Gegeben Bayessches Netz über Menge von ZV {X 1,,X N }. Problemstellung Inferenz: Variablen mit Evidenz Anfrage-Variable Berechne Randverteilung über Anfrage-Variable gegeben Evidenz Bedingte Verteilung über ZV X a X,..., X { i,..., i } {1,..., N} i i m 1 m 1 X a {1,..., N { i,..., i } a Evidenz: beobachtete Werte für ZV X,..., X } 1 m i1 i m Berechne p( x x,..., x ) a i1 i m 36
Exakte Inferenz: Naiv Naive Inferenz: Notation :{ X,..., } { X, X,..., X, X,..., X } 1 X N a i i j p( x x,..., x ) a i i 1 m p( x, x,..., x ) a 1 m 1 Anfrage- Evidenz-Variablen restliche Variablen Variable 1 i j1 j2 1 m p( x,..., x ) i x x x i 1 p ( xa, xi 1,..., xi m ) Z 1 p( x1,..., xn ) Z m jk i j k Zentrales Problem: Aussummieren aller restlichen Variablen (exponentiell, wenn naiv gelöst) 37
Graphische Modelle: Inferenz Inferenz schwieriges Problem Allgemeine Graphische Modelle: exakte Inferenz NP-hart Es gibt Algorithmen für exakte Inferenz in Graphischen Modellen, deren Laufzeit von den Eigenschaften der Graphstruktur abhängt ( Message-Passing ) Es gibt verschiedene Techniken für approximative Inferenz (Sampling, Variational Inference, Expectation Propagation) Wir betrachten Message-Passing Algorithmus: in Spezialfällen Sampling-basierte approximative Inferenz 38
Effiziente exakte Inferenzmethoden? Idee Message Passing : Lokale Berechnungen, die entlang der Graphstruktur propagiert werden Knoten schicken sich gegenseitig Nachrichten, die Ergebnisse von Teilberechnungen enthalten 39
Graphische Modelle: Inferenz auf linearer Kette Wir betrachten zunächst Spezialfall mit besonders einfacher Struktur: lineare Kette von Zufallsvariablen x1 x2 x3 x 4 p( x ) p( x x ) p( x x ) p( x x ) 1 2 1 3 2 N N1 p( x1,..., xn) 1,2 ( x1, x2) 2,3( x2, x3)... N 1, N( xn, xn 1) Darstellung der gemeinsamen Verteilung als Produkt von Potenzialen ( x, x ) über je zwei ZV ii, 1 i i1 40
Message Passing Algorithmus Austausch von Alpha Nachrichten von links nach rechts ( x ) 1 1 Für k 2,..., a: ( x ) ( x, x ) ( x ) ( x ) 2 ( ) ( ) x a 1 k k1, k k1 k k1 x x a Anschauung: wir summieren Knoten k 1 aus, und schicken das Ergebnis weiter an Knoten k1 x a x x k 41
Message Passing Algorithmus Austausch von Beta Nachrichten von rechts nach links ( ) 1 x N Für k N -1,..., a: ( x ) ( x, x ) ( x ) k kk, 1 k k1 k1 x ( x a ) ( ) x a 1 Anschauung: wir summieren Knoten k 1 aus, und schicken das Ergebnis weiter an Knoten k1 x a x ( ) x N 1 x k 42
Message Passing Algorithmus Nachrichten treffen sich im Anfrageknoten ( x2) x a 1 ( ) ( ) Randverteilung ohne Evidenz ergibt sich als Produkt der Nachrichten p( x ) ( x ) ( x ) a a a x a x a ( x a ) ( x a 1) x N 1 x a ( ) 43
Message Passing mit Evidenz Evidenz: Leichte Modifikation des Message-Passing Algorithmus Falls x k+1 unbeobachtet ist, summieren wir diesen Knoten aus k 1 { i,. } ( x ) ( x, x ) x ) 1.., im k k, k1 k k1 ( k1 x k1 Falls x k+1 beobachtet ist, verwenden wir nur den entsprechenden Summanden x k1 beobachteter Wert (Evidenz) k 1 { i,..., i } ( x ) ( x, x ) ( x ) 1 m k k, k1 k k1 k1 44
Inferenz: Message-Passing Laufzeit: Berechnung einer Nachricht: N Nachrichten insgesamt x : ( x ) ( x, x ) ( x ) k k k, k1 k k1 k1 x k1 2 OK ( ) für Berechnung einer Nachricht (K diskrete Zustände) 2 O( NK ) Gesamtlaufzeit Viel besser als naive Inferenz mit N OK ( ) 45
Inferenz in Allgemeinen Graphen Grundidee Message-Passing auf Polytrees: Umwandlung in Faktor-Graph (ungerichteter Baum) Ursprünglicher Graph x 4 x 1 Gemeinsame Verteilung p( x, x, x, x, x ) 1 2 3 4 5 x 5 x 3 p( x ) p( x ) p( x x, x ) p( x ) p( x x, x ) 1 2 3 1 2 4 5 3 4 x 2 Faktor Faktor-Graph Faktor-Knoten - Für jeden Faktor in der gemeinsamen Verteilung gibt es einen Faktor-Knoten - Ungerichtete Kanten von den Faktor-Knoten zu den im Faktor auftauchenden Variablen 46
Inferenz in Allgemeinen Graphen (Skizze) Falls der ursprüngliche Graph ein Polytree war, ist der Faktor- Graph ein ungerichteter Baum (dh zykelfrei). Blätter x a Betrachten Anfragevariable als Wurzel des Baumes Nachrichten von den Blättern zur Wurzel schicken (immer eindeutiger Pfad, weil Baum) x a Es gibt zwei Typen von Nachrichten: Faktor-Nachrichten und Variablen-Nachrichten x a Spezialfall lineare Kette 47
Inferenz in Allgemeinen Graphen Inferenz in Graphen, die keine Polytrees sind? Approximativer Ansatz: Iteratives Message-Passing Schema, wegen Zyklen im Graph nicht exakt Alternative für exakte Inferenz in allgemeinen Graphen: x 1 x2 x3 x 4 p( x) p( x ) p( x x ) p( x x ) p( x x, x ) 1 2 1 3 1 4 2 3 Graph in einen äquivalenten azyklischen Graphen umwandeln Junction Tree Algorithmus, (i.a. exponentielle Laufzeit) Loopy Belief Propagation 48
Approximative Inferenz Exakte Inferenz NP-hart: In der Praxis spielen approximative Inferenzverfahren wichtige Rolle Wir betrachten Sampling-basierte Verfahren Relativ einfach zu verstehen/implementieren Praktisch brauchbar 49
Inferenz: Sampling-basiert Grundidee Sampling: Wir interessieren uns für eine Verteilung, z.b. bedingte Verteilung über Anfragevariablen in graphischem Modell) Es ist schwierig, p() z direkt auszurechnen p() z Stattdessen ziehen wir Samples (Stichproben) z ( k) ~ p( z) i.i.d., k 1,..., K, z ( k ) jedes Sample ist eine vollständige Belegung der Zufallsvariablen in z (1) (2) ( K ) Die Samples z, z,..., z approximieren die Verteilung 50
Inferenz: Sampling-basiert Beispiel: Eindimensionale Verteilung, z {} z Diskrete Variable mit Zuständen {0,,6}: Anzahl Kopf bei 6 Münzwürfen Anteil Samples mit Wert z Sample-Histogramm K Echte Verteilung (Binomial) z 51
Inferenz: Sampling-basiert Wie erhalten wir Samples aus der gesuchten Verteilung p() z? Markov Chain Monte Carlo: Klasse von Sampling- Verfahren, die in der Praxis oft effizientes Samplen ermöglichen z 52
Inferenz: MCMC Markov Chain Monte Carlo ( MCMC ) Idee: Strategie: Konstruiere Folge von Samples (0) (1) (2) (3) (4) (5) z z z z z z... (0) ( t1) t z z update z zufällig initialisiert ( ) durch mehrfache probabilistische Update-Schritte Wenn Updates geeignet gewählt, gilt asymptotisch ZV: T-te Variablenbelegung ( T z ) ~ p( z) ungefähr, für sehr grosse T 53
Inferenz: Gibbs Sampling Gibbs Sampling: Eine Version von MCMC Lokales Ziehen einer ZV gegeben den Zustand aller anderen Variablen Gegeben aktueller Zustand Ziehen des neuen Zustands x ' ( ' ') : 1 1 2 2 2 1 Bisher gesampelte (alte) Werte x ' ~ p( x x,..., x ) x ' ~ p( x x ', x,..., x ) x ' ~ p( x x ', x ', x,..., x )... 3 3 1 2 4 xn ' ~ p( xn x1 ', x2 ',..., xn 1 ') 3 x N ( N x,..., ) 1 x N x,..., 1 x N N 54
Gibbs-Sampling mit Evidenz Gibbs Sampling kann einfach Evidenz berücksichtigen Mit Evidenz: Nur die unbeobachteten Variablen werden jeweils neu gezogen, die beobachteten Variablen werden fest auf den beobachteten Wert gesetzt Satz: Falls p( xn x1, x2,..., xn 1, xn 1,..., xn 1) 0 für alle n und alle möglichen Zustände x i, dann folgen die generierten Samples asymptotisch der gesuchten Verteilung 55
Hidden Markov Modelle Zustände (versteckt) Hidden Markov Modelle für sequentielle Daten Probabilistischer Automat: Versteckte Zustände, Beobachtungen q 1 q2 q q 3 4 Beobachtungen O1 O2 O3 O 4 56
57
Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen K-Means, Gauß sche Mischmodelle
Überblick Deterministischer Ansatz: K-Means Probabilistischer Ansatz: Gaußsche Mischmodelle 59
Clusteranalyse: Was ist Clustern? Wir haben Datenpunkte Merkmalsvektoren Wir wollen Einteilung der Datenpunkte in Cluster 60
Problemstellung Clustering (Deterministisch) Problemstellung k-means: Gesucht sind Zuweisung der Daten zu Clustern: Clusterzentren K,...,, k 1,..., K 1 K K-Means Algorithmus: abwechselnde Neuberechnung von Clusterzentren und Clusterzugehörigkeiten 61
K-Means: Beispiel K = 2 62
K-Means: Beispiel K = 2 63
K-Means: Beispiel K = 2 64
K-Means: Beispiel K = 2 65
K-Means: Beispiel K = 2 66
K-Means: Beispiel K = 2 67
K-Means: Beispiel K = 2 68
Überblick Deterministischer Ansatz: K-Means Probabilistischer Ansatz: Gaußsche Mischmodelle 69
Probabilistisches Clustern: Gaußsches Mischmodell Generativer Prozess zur Erzeugung der Daten Cluster wählen, anschliessend Datenpunkt generieren versteckt beobachtet p( z, x) p( z) p( x z) Wähle Clusterkomponente Generiere Daten aus Komponente 70
Probabilistisches Clustern: Gaußsches Mischmodell Verteilung über Clusterkomponenten: Multinomialverteilung Verteilung der Daten in einem Cluster k: normalverteilt p( x z 1) ( x, ) k k k Clusterzentrum 1 1 exp ( x Z 2 Clusterkovarianz T 1 k ) k ( x k ) Beispiel D=2: Dichte, Samples aus Verteilung Normalisierer Z 2 D/2 1/2 71
EM Algorithmus Clustern = Anpassen des Modells an Daten (Maximum Likelihood) Iteratives Verfahren EM: bestimme Parameter Betrachte Q-Funktion Erwartungswert über p( Z X, t ) Beginne mit zufälligem. Iteriere: Expectation: 1,,,... 1 2 3 Parameterwert im letzten Schritt Maximization: 72
Beispiel Gaußsches Mischmodell Clustering 73
Beispiel Gaußsches Mischmodell Clustering 74
Beispiel Gaußsches Mischmodell Clustering 75
Beispiel Gaußsches Mischmodell Clustering 76
Beispiel Gaußsches Mischmodell Clustering 77
78
Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Statistische Tests
Confidence interval Let X sample mean, actual (population) mean 90% Confidence interval if Approximately Therefore with x X ˆ 0.9 P X b X b ~ X b, X b 0,1 the cumulative distribution function of X b b P X b P X b P ˆ ˆ ˆ (1,0) Choose ˆ 1 ( 0.95) b 80
Statistical Test Study a null hypothesis (e.g., population mean = 0) Check how likely the data are, given : Sample data See if sample is consistent with null hypothesis If very unlikely, reject H 0 H 0 H 0 81
Testing procedure Define test statistic Calculate value t 0 of test statistic for sample Calculate p-value: t P ( t t ) H 0 0 Reject H 0 with predefined significance level (corresponding to the critical value c ) if P ( t t ) H 0 0 82
Examples of statistical tests One sample t-test Pearsons chi-squared test Sign test Likelihood ratio test Wald test 83
84
Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Reinforcement Learning
Problemstellungen des maschinellen Lernens Überwachtes Lernen: Lernen einer Entscheidungsfunktion aus Beispielen der richtigen Entscheidung. Unüberwachtes Lernen: Lernen von zb. Partitionierungen von Daten (Clustern) ohne Beispiele für die richtige Partitionierung. Reinforcement Learning: Lernen von sequenziellen Entscheidungen. Die Güte einer Entscheidung wird durch die Güte der Entscheidungssequenz bestimmt. Temporal Credit Assignment Problem. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Lernen aus Interaktionen Reward Beobachtung Umgebung Agent Controller Aktionen Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Markov Decision Processes Interaktion mit der Umgebung erzeugt Folge von Zuständen, Aktionen und Rewards. Markov-Entscheidungsprozess (S,A,R,P) S : Zustandsmenge A : Aktionsmenge P : Übergangswahrscheinlichkeiten R : Erwarteter Reward. Beschreibt den sofort erzielten Gewinn. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
MDP Lerne eine stationäre Policy, die Zustände auf Aktionen abbildet. (Deterministische Policy) Oder Zustände auf eine Verteilung von Aktionen abbildet. (Stochastische Policy) Ziel: Finde Policy ¼, die den erwarteten kumulativen (discounted) Gewinn maximiert. Discount factor. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Exploration / Exploitation Problem Tradeoff zwischen Verfolgen der derzeit besten Policy, um den (greedy) Gewinn zu maximieren. (Exploitation) und Erkunden derzeit suboptimaler Aktionen, über deren Wert noch Unsicherheit besteht, um eine potentiell bessere Policy zu finden. (Exploration) Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Stochastische Policies Epsilon-Greedy: Mit Wahrscheinlichkeit Epsilon wird eine zufällige Aktion ausgeführt. Softmax: Schätzungen sollen Einfluss auf Auswahlwahrscheinlichkeit haben. Beispiel: Gibbs-Verteilung: t ist Temperaturparameter. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Value Functions Bellmangleichungen Bewertungsfunktion für Zustand s, Aktion a und Policy ¼ beschreibt den erwarteten kumulativen Gewinn der von s und a aus erreicht wird. Bellmangleichung beschreibt rekursive Beziehung der Value Function in aufeinanderfolgenden Zuständen. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Bellman-Optimalitätsgleichungen Bellman-Gleichungen für das Kontrollproblem. Rekursive Beziehungen der optimalen Value Functions. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Problemstellungen P,R bekannt. P(s s,a) können abgefragt werden. Planen. P,R nicht explizit bekannt. Aber aus den Verteilungen P(s s,a) kann gesamplet werden. Annahme: Generatives Modell von P und R. P,R nicht oder teilweise bekannt. Es kann Erfahrung gesammelt werden durch Interaktion mit der Umgebung. Reinforcement Learning. Batch Reinforcement Learning: Es muss von einer fixen Menge von Beispielepisoden gelernt werden. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Arten von Reinforcement Learning Reinforcement Learning-Methoden können eingeteilt werden bezüglich der Verwendung der Interaktionsbeispiele. Indirekte Methoden: Model learning Direkte Methoden: Direct Policy Search Value function estimation Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Policy Iteration Allgemeines Verfahren zum Bestimmen der optimalen Policy. Iteriere: Policy Evaluation: Gegeben Policy ¼ k, bestimme Policy Improvement: Inferiere verbesserte Policy ¼ k+1 aus z.b. greedy Policy: Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Value Iteration Iteratives Verfahren zur Berechnung von Q ¼ Verfahren konvergiert gegen Q ¼ für k1 Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Value Iteration Value Iteration für das Kontrollproblem. Berechnung von Q * Konvergiert gegen Q * für k1 Q-Learning: Falls Summe nicht ausrechenbar (Z.B. kein Modell), sample Nachfolgezustand s und mache Update nur auf Grund des einen Samples. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Funktionsapproximation Darstellen der Value Function als parametrisierte Funktion aus dem Funktionsraum F mit Parametervektor µ. Vorhersageproblem: Finde Parametervektor µ, so dass Q ¼ am besten approximiert wird. Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Approximatives Q-Learning Lineare Parametrisierung der Q-Funktion Iterationsschritt: 1 * ˆ t1 t t Q st at Q st at t (, ) (, ; ) 2 (, ) max ˆ( ˆ ˆ t t R st at Q st 1, a; t ) Q( st, at; t ) Q( st, at; t ) a T T t t R( st, at ) max ( st 1, a) t ( st, at ) t ( st, at ) a 2 Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Monte-Carlo Sampling Angenommen, S sehr groß Ziel: Finde Q, so dass Q-Q * 1 <². Sparse Lookahead Trees: [Kearns et al. 02] Monte-Carlo: Samplen eines sparsen Aktions-Zustands-Baums. Tiefe des Baums: Effektiver Horizont H(²) = O( 1/(1- ) log(1/²(1- )) ) Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
Upper Confidence Bounds for Trees Besser: Nur solche Teilbäume genauer untersuchen, die vielversprechend sind. Prinzip des Optimismus bei Unsicherheit! UCT: UCB for Trees. [Kocsis & Szepesvári 06] Scheffer/Landwehr/Sawade/Dick/Haider, Maschinelles Lernen 2
ZUSAMMENFASSUNG: SPECTRAL CLUSTERING Bussas/ 1
Graphen-basiertes Clustern Ähnlichkeitsgraph Ähnlichkeit zwischen Datenpunkten (Knoten) bilden gewichtete Kanten: Betrachte die Laplacematrix L des Graphs V Bussas/ 2
Spectral-Clustering (unnormalisiert) Relaxation NP-hart RatioCut PV n n T 2 i i i1 i1 min f Lf, wobei f 0, f n f diskret (Unnormalisiertes) Spectral-Clustering f n n n T 2 i i i1 i1 min f Lf, wobei f 0, f n Diskretisierung: sign(f i) Eigenwertproblem Bussas/ 3
ZUSAMMENFASSUNG: PRINCIPAL COMPONENT ANALYSIS Bussas/ 4
Überblick Unterraum Methoden Principal Component Analysis (PCA) Kernel-PCA Fisher Linear Discriminant Analysis Bussas/ 5
Principal Component Analysis (PCA) Ziel: Finde jene Richtung u 1, in der die Varianz der Projektion der Daten maximal ist. Betrachte die Zufallsvariable x~p X. Die Varianz der auf u 1 projizierten Daten ist: E proj u1 x 2 = E u 1 T xx T u 1 = u 1 T E xx T Σ xx u 1 Empirische Kovarianzmatrix ist: Σ xx = 1 n XXT Maximiere u 1 T Σ xx u 1, wobei u 1 T u 1 = 1 Lagrangian: u 1 T Σ xx u 1 + λ 1 1 u 1 T u 1 Ableiten und Null setzen ergibt: Σ xx u 1 = λ 1 u 1 Dies ist ein Eigenwert Problem. Bussas/ 6
Kernel PCA Idee: Dimensionalität der Daten min m, n Sei x = 0, dann gilt für die Daten X R m n Σ xx u 1 = λ 1 u 1 v Xv 1 = nλ 1 u 1, X T 1 = X T u 1 Xv 1 = nλ 1 v 1 Gleichung hat die selben n 1 Eigenwerte: u i = 1 Xv nλ i i Das Eigenwertproblem lässt sich also umschreiben: Σu i = λ i u i Kernel Matrix K xx Kα i = nλ i α i Bussas/ 7
Fisher-Discriminant Analysis (FDA) Optimierungskriterium von PCA: Maximiere die Varianz der Daten in dem Unterraum: max u u T Σu, wobei u T u = 1. Optimierungskriterium von FDA: Maximiere die Varianz zwischen verschiedenen Klassen und minimiere der Varianz innerhalb der Klassen in dem Unterraum. max u ut Σ b u u T Σ w u, wobei Varianz per Klasse Σ w = Σ +1 + Σ 1 Σ b = x +1 x 1 x +1 x 1 T Optimierungskriterium von FDA für k verschiedene Klassen führt zu verallgemeinerten Eigenwertproblem. 8 Bussas/
ZUSAMMENFASSUNG: NEURONALE NETZE Bussas/
Deep Learning Schrittweise Transformation der rohen Eingabedaten in höhere Merkmale Ende der Kette: Merkmale, mit denen sich die Klassen separieren lassen Beim Training nur Eingabedaten und Label gegeben Merkmale der Zwischenebenen ergeben sich als Teil der Lösung eines Optimierungsproblems Label Individuendiskriminierende Merkmale Gesichts-Teile Lokale Muster Grauwertmatrix Gwyneth Paltrow Bussas/ 10
Wahrscheinlichkeit eines Ausgangs-Signals Neuronale Informationsverarbeitung Eingänge Synaptische Gewichte: Werden durch Lernprozesse Verstärkt oder abgeschwächt Gewichtete Eingangssignale werden aggregiert Axon: Ausgangssignal: Gewichtete Eingangssignale Signale in Form von Spikes Verbindungen zu anderen Nervenzellen Bussas/ 11
Ausgangssignal Neuronale Informationsverarbeitung: Modell x 1 x 1 2 x 3 2 3...... Eingabevektor x Gewichtsvektor θ T h x θ 0 m x m Ausgabe (h) Gewichtete Eingangssignale Bussas/ 12
Feed-Forward-Netze Index i x h x h ( h ) d θ 2 2 k k 2 2 1 2 k θx k k 0 2 1 1 θ k ( hk ) 1 1 0 1 k θx k k 0 1 θ 0 x 1 Index k...... 0 x m d x Ausgabe- Ebene Verdeckte Ebenen Eingabe-Ebene Bussas/ 13
Feed-Forward-Netze Index i x h x h ( h ) 2 2 k k θx ( h ) d θ 2 2 1 2 k k k 0 θ 1 1 k k 1 1 0 1 k θx k k 0 2 1 θ 0 x 1 Index k... x d... 0 x m Forward Propagation: Eingabevektor: Lineares Modell: Jede Einheit hat Parametervektor: Ebene i hat Parametermatrix: Aktivierungsfunktion: Ausgabevektor: 0 x h i i i1 i k k k 0 θ θ θx i i i k i d x 1 ni i i i θ 1 11 1ni1 i i i θ ni ni 1 nin i1 x i i ( h ) Bussas/ 14
Forward Propagation Feed-Forward-Netze: Back Propagation d d x E yx, i x i θ... Benutzung der Kettenregel führt zum Back Propagation Algorithmus: d θ E, d d y x E y, x i hk i i1 i i i kx θk hk θk 0 x d δ i1 i 1 x i1 x l δ i1 x ( h i k i h k... i 1 lk ) i δ i1 δ Back Propagation Dabei werden die Nachrichten zurückpropagiert: i k E yx, h i k '( h ) d i i 1 i 1 k l l lk i k Bussas/ 15
Formen der Regularisierung Weight Decay / L2-Regularisierung: R( θ) Early Stopping: Training vor Konvergenz abbrechen Units mit geringen Gewichten auf Null setzen Dropout: Units beim Training zufällig ausblenden Stochastic Binary Units: Neuronen feuern mit Wahrscheinlichkeit eine 1. x ( h) 1 2 T θθ Bussas/ 16
Unsupervised Feature Learning Auto Encoder: Lerne Identitätsfunktion Von m Eingabeknoten über n 1 verdeckten Knoten nach m Ausgabeknoten mit n 1 << m. Idee: verdeckte Knoten lernen Repräsentation, aus denen sich die Daten rekonstruieren lassen. 2 θ 1 θ... 0 x... 0 1 x m Bussas/ 17
Auto Encoder Beispiel: Eingabe und Ausgabe: gemischte Bilder Gewichte der 25 x # Positionen verdeckten Knoten: Netzwerk lernt Detektoren für lokale Muster (überwiegend Kanten) Auto-Encoder-Training mit Back Propagation funktioniert nur mit einer verdeckten Ebene PCA = linearer Auto Encoder 2 θ 1 θ... 0 x... 0 1 x m Bussas/ 18
Restricted Boltzmann Machine Eingabeebene und eine Ebene verdeckter Knoten Binäre stochastische Knoten Bias-Units auf jeder Ebene - log P(Aktivierung) ~ Energiefunktion P( xh, ) 1 E(, ) Z e xh Energiefunktion: E x h T ( x, h) x θh iij j i j θ h 1... hk x... 1 x m 19 Bussas/
Restricted Boltzmann Machine Lernen: Maximiere log-wahrscheinlichkeit der Eingabevektoren. Gradient: Energiegradient: arg max log P( x) θ log p( x) h ij E( xh, ) P( h x) xh, E( x, h) ij E( xh, ) P( xh, ) Energiegradient für beobachtete Eingabe ij T x θh ij ij xh i j Marginaler Energiegradient θ h 1... hk x... 1 x m 20 Bussas/
RBM: Sampling von Zuständen Approximiere die Erwartungswerte in dem Gradienten durch iteratives Sampling (Markov chain Monte Carlo) MCMC: Iteriere über alle Knoten, abwechselnd einen Eingaben und verdeckten Knoten Ziehe Aktivierung des Knotens gegeben Aktivierung der Nachbarn (d-separation) Nach Burn-In-Phase ergibt die Markov-Kette eine Stichprobe aus der vom Netz modellierten Verteilung Bussas/ 21