640 likes | 769 Views
Exploiting Random Walks for Learning. „Algorithmisches Lernen“ WS 2001/02. Referent: Fabian Wleklinski ( fabian@wleklinski.de ). Motivation. Peter L. Bartlett, Paul Fischer, Klaus-Uwe Höffgen: Exploiting Random Walks for Learning Fischer; Höffgen:
E N D
Exploiting Random Walksfor Learning „Algorithmisches Lernen“WS 2001/02 Referent: Fabian Wleklinski (fabian@wleklinski.de)
Motivation • Peter L. Bartlett, Paul Fischer, Klaus-Uwe Höffgen: Exploiting Random Walks for Learning • Fischer; Höffgen: • Informatik II, Dortmund(Prof. Dr. Ingo Wegener) • http://ls2-www.cs.uni-dortmund.de/ • Algorithmen ermitteln einige Konzeptklassen als erste: • RSE • boolean Treshold • 2-term DNF Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
Algorithmisches Lernen • deterministischer Lernalgorithmus A • Abbildung von der Menge aller kategorisierten Beispielfolgen auf die Menge aller Hypothesen Exploiting Random Walks for Learning
Algorithmisches Lernen • Einige Algorithmen haben -Parameter • „Performance-Parameter“ • [0,1] • reguliert die „Leistung“ des Algorithmus (Korrektheit der Hypothese) • polynomialzeit-Algorithmus darf abhängig von 1/ mehr Zeit benötigen Exploiting Random Walks for Learning
Algorithmisches Lernen • Lernalgorithmus ist zeitpolynomiell, wenn Rechenzeit für eine Vorhersage polynomiell ist • zur Größe der Beispieleund • ggf. zum Kehrwert des Performance-Parameters Exploiting Random Walks for Learning
Algorithmisches Lernen • sam()-Funktion • Eingabe • unendlich lange Beispielfolge x • Länge t • Konzept f • Ausgabe • Beispielfolgeder Länge t,Klassifizierungen Klassifizierungen f(x1) bis f(xt) Beispiele x1 bis xt Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
PAC-Lernen • Eingabe: • Vertrauensparameter , • Fehlerparameter , • Beispiellänge n • Ermittle Anzahlanzufordernder Beispiele • s := s(, , n) • Wiederhole s mal: • Fordere Beispiel an: (Wert,Klassifikation) • Bestimme Hypothese h Klassifikation=1 Wert ist im zu lernenden Konept Exploiting Random Walks for Learning
PAC-Lernen • Genauer: Fehler soll mit großer Wahrscheinlichkeit klein sein: • WsD[ fehlerD(c,hc) ] 1- • c zu erlernendes Konzept • hc erlernte Hypothese • fehlerD Abweichung zwischen c und hc • D Verteilung auf n Exploiting Random Walks for Learning
PAC-Lernen • (effizientes) Lernen von DNFs? • Allgemein nicht möglich! • Aber möglich unter bestimmten Einschränkungen: • Membership-Queries • uniforme Verteilungen • Begrenzung für Anzahl der Terme/Disjunktionen • Begrenzung für Anzahl der Attribute/Konjunktionen • ... Exploiting Random Walks for Learning
PAC-Lernen • Viele Erweiterungen des PAC-Modells • Aldous und Vazirani:A Markovian extension of Valiant’s learning model • Freund: Efficient learning of typical finite automata from random walks • Lernen von Irrfahrt-DFAs ohne Membership-Queries • Nachteile des PAC-Modells? • Beispiele müssen unabhängig gezogen werden! • aber in der Praxis oft Zusammenhänge zwischen aufeinanderfolgenden Beispielen! • z.B. Flugbahn eines Flugkörpers „Hypercube-Irrfahrten“! Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
Hypercube-Irrfahrten • Engl: „Random Walks“ • P. Bartlett, P. Fischer, K. Höffgen: Exploiting Random Walks for Learning • Proceedings of the 7th ACM conference on computational learning theory, 1994, pp. 318-327 • Was ist eine „Hypercube-Irrfahrt“? • ... folgt! Exploiting Random Walks for Learning
(0,1,1) (1,1,1) (0,1,0) (1,1,0) (1,0,1) (0,0,1) (1,0,0) (0,0,0) Hypercube-Irrfahrten • n-dimens. Würfel • 2n Ecken • Im Beispiel: n=3 • Wandern auf den Kanten • Aufeinanderfolgende Beispiele: • maximal ein Bit kippt • Hamming-Abstand 1 • Entspricht z.B. div. physikalischen Prozessen Exploiting Random Walks for Learning
(0,1,1) (1,1,1) (0,1,0) (1,1,0) (1,0,1) (0,0,1) (1,0,0) (0,0,0) Hypercube-Irrfahrten • Bartlett, Fischer, Höffgen: • Mächtigkeit dieser Zusatzinformationen? • DFAs lernbar? • RSEs lernbar? • Schwellwertfunktionen lernbar? Exploiting Random Walks for Learning
Hypercube-Irrfahrten • Formale Beschreibung einer Irrfahrt • bestimmte Übergänge sind „unmöglich“: Ws=0! • wir betrachten nur uniforme Irrfahrten! • d.h. jeder mögliche Übergang ist gleichwahrscheinlich! Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
Mistake Bound Model • Mistake Bound Model • Algorithmus A soll für alle Beispielfolgen und alle Konzepte maximal N Fehler machen. Exploiting Random Walks for Learning
Mistake Bound Model • Mistake-Indicator-Function M • Eingabe • Lernalgorithmus A, Konzept f, Beispielfolge x, Performance-Parameter , Länge t • Ausgabe • 1 wenn A das t-te Beispiel falsch klassifiziert (nach Verarbeitung von t-1 Beispielen) Exploiting Random Walks for Learning
Mistake Bound Model • Fehleranzahl-Funktion • Eingabe • Lernalgorithmus A, • Konzept f, • Beispielfolge x • Ausgabe • Anzahl der fehlerhaftenArbeitshypothesen • (Sofern die Summekonvergiert...) Hier ist wieder die Mistake-Indicator-Function! Exploiting Random Walks for Learning
Mistake Bound Model Hier ist wieder die Fehleranzahl-Funktion! • Fehlerschranken-Funktion • Maximum der Fehleranzahl für • jede gültige Eingabe x aus Xn und • für jedes Konzept f aus Fn • Eingabe • Konzeptklasse Fn, Beispielmenge Xn,Algorithmus A • Ausgabe • Anzahl der Zeitpunkte, zu denen A nach der Verarbeitung von t Beispielen eine falsche Arbeitshypothese benutzt. Exploiting Random Walks for Learning
Mistake Bound Model • Fehlerschrankenlernbarkeit • engl: „mistake bound learnable“ • Konzeptklasse F ist fehlerschrankenlernbar, wenn es einen Algorithmus A gibt, der • effizient ist • dessen Fehlerschranke nur polynomial zur Beispiellänge n wächst. D.h. es gibt einen Alg. A, der für jedes Konzept aus F und jede Beispielfolge maximal N Fehler macht! Exploiting Random Walks for Learning
Mistake Bound Model • exakte Fehlerschrankenlernbarkeit • engl: „exactly mistake bound learnable“ • Eine Konzeptklasse F ist exakt fehlerschrankenlernbar Alg. A: • A ist fehlerbeschränkt • A weiß jederzeit, ob sich die Arbeitshypothese exakt einem Konzept angepasst hat • A kann aus der Arbeitshypothese die exakte Repräsentation des Konzeptes in Polynomialzeit berechnen • A gibt nur dann eine Hypothese zurück, wenn er diese endgültig ist – aber niemals eine Arbeitshypothese! Exploiting Random Walks for Learning
Mistake Bound Model • Anwendungen? Beispiele? • Bartlett, Fischer und Höffgen schlagen Mistake-Bound-Lernalgorithmen vor für • boolesche Schwellwertfunktionen • kommt gleich...! • zweitermige RSE • siehe Original-Paper! Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Konfiguration: • Gewichtsvektor w, Schwellwert • Eingabe: • Eingabevektor x • Ausgabe: • 1 wenn Schwellwert überschritten, • 0 sonst Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Algorithmus A macht für jedes Beispiel Yt: • errate Klassifikation von Yt: • 1 wenn Yt w Schwellwert • 0 sonst • erhalte korrekte Klassifikation • korrigiere ggf. Arbeitshypothese hc Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Algorithmus A: • klassifiziere das 1-te Beispiel als „0“ • klassifiziere jedes weitere Beispiel wie das vorherige • wenn Fehler: • merke den Fehler (z.B. in einem Array) Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • falls A einen Fehler gemacht hat, dann wurde • der Schwellwert „von unten kommend“ erreicht, oder • der Schwellwert „von oben kommend“ unterschritten. • A erlangt im Fehlerfall zwei Informationen: • Das aktuelle Beispiel „berührt“ den Schwellwert, und • das vorhergehende Beispiel berührte ihn ebenfalls! • A lernt aus jedem Fehler! • A lernt eigentlich ausschließlich aus Fehlern ;-) Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • li sei die (korrekte) Klassifikation des i-ten Beispiels • wYt-1 muß entweder , oder (-1) sein! • wYt-1 = lt-1-1 • wYt muß gegenteilig klassifiziert sein! • wYt = -lt-1 Schwellwert Gewichts-vektor w aktuelles Beispiel Yt Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • A formuliert die Gleichungen • wYt-1 +(1-lt-1) = 0 • wYt +(lt-1) = 0 • A merkt sich diese Gleichungen in einem Array! Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Was bedeuten die Gleichungen in dem Array S ? • z.B. ((1,1,1,1,1,1,1,1),-1,0) S • w (1,1,1,1,1,1,1,1) - = 0 • Bedeutung: • „Wenn Du ein Beispiel (1,1,1,1,1,1,1,1) bekommst, dieses mit dem Gewichtsvektor multiplizierst, und darauf (-1) addierst, dann ist die Aussage, das Beispiel überschreitet den Schwellwert nicht: falsch!“ • Es werden also falsche Aussagen gespeichert! Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Algorithmus A kann also jede Aussage überprüfen, bevor er sie macht! • A macht keinen Fehler zweimal! • Mehr als das! A verwendet S als Vektorraum! • z.B. s1=((1,1,1,1,1,1,1,1),-1,0) S, s2=((1,0,1,0,1,0,1,0),-1,0) S • s1- s2 span(S)((0,1,0,1,0,1,0,1),0,0) S • Neue Aussage: • „Wenn Du ein Beispiel (0,1,0,1,0,1,0,1) bekommst, dieses mit dem Gewichtsvektor multiplizierst, dann ist die Aussage, das Beispiel überschreitet den Schwellwert nicht: falsch!“ Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Hier der vollständige Algorithmus in Pseudocode: • IF (Yt,-1,lt-1) INSIDE span(s) THEN predict 1-lt-1ELSE predict lt-1IF lt-1 != ltTHEN add(Yt,-1,lt-1) to S Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • Hier noch einmal in natürlichsprachlicher Schreibweise: • IF (Aussage) INSIDE (Falschaussagen) THEN mache gegenteilige AussageELSE mache AussageIF (Fehler gemacht) THEN merke neue Falschaussage Exploiting Random Walks for Learning
Bsp: Schwellwertfunktionen • S = Menge linear unabhängiger Gleichungen • Zielkonzept kann berechnet werden, sobald n+1 Gleichungen bekannt! • d.h. maximal n+1 Fehler! • Resumee: Boolesche Schwellwertfunktionen sind über Irrfahrten im Mistake Bound Model mit n+1 Fehlern exakt lernbar! Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
Probab. Mistake Bound Model • Mistake Bound Model • Algorithmus A soll für alle Beispielfolgen und alle Konzepte maximal N Fehler machen. • Probabilistic Mistake Bound Model • Algorithmus A soll für fast alle Beispielfolgen und fast alle Konzepte maximal N Fehler machen. • Neu: Vertrauens-Parameter • beeinflusst, auf welche Arbeitshypothese sich A nach der Verarbeitung einiger Beispiele festgelegt hat! Exploiting Random Walks for Learning
Probab. Mistake Bound Model • Annahme: • Ein Beispielpfad x wird durch einen stochastischen Prozess P erzeugt • Prozessmenge Pn • Gesamtheit aller Prozesse • Gewisse Prozessabläufe sind wahrscheinlicher als andere • Verteilung P ist gegeben! • Notation: P{x : [Prädikat]} • Wahrscheinlichkeit für Erfüllung von [Prädikat] durch x, gegeben Verteilung P. Exploiting Random Walks for Learning
Hier kommt die Verteilung in‘s Spiel! Probab. Mistake Bound Model • Fehlerschranke wird zur -Vertrauens-Fehlerschranke! • „Nimm unter allen Fehlerschranken, die mit Ws. oder weniger überschritten werden, die kleinste!“ • Aussage von N: • „Der Lernalgorithmus A macht nur N Fehler. Allerdings gibt es mit Wahrscheinlichkeit einige Ausrutscher.“ Exploiting Random Walks for Learning
Probab. Mistake Bound Model • probabilistische Fehlerschrankenlernbarkeit • engl: „probably mistake bound learnable“ • Eine Konzeptklasse F ist probabilistisch fehlerschrankenlernbar Lernalg. A: • A lernt F, • A läuft in Polynomialzeit, • Fehlerschranke von A wächst polynomiell mit der Länge der Beispiele sowie mit 1/. Exploiting Random Walks for Learning
Probab. Mistake Bound Model • Welche Fehlerschranke besitzt „der beste“ Lernalgorithmus A für eine Konzeptklasse? • betrachte das Minimum der Fehlerschranken! • für einen bestimmten Vertrauensparameter , • für eine bestimmte Konzeptklasse Fn, • für eine bestimmte Verteilung pn, • und für alle Lernalgorithmen A Exploiting Random Walks for Learning
Probab. Mistake Bound Model • exakte prob. Fehlerschrankenlernbarkeit • siehe „exakte Fehlerschrankenlernbarkeit“! • engl: „exactly probably mistake bound learnable“ • Eine Konzeptklasse F ist exakt probabilistisch fehlerschrankenlernbar Alg. A: • A ist probabilistisch fehlerbeschränkt • A weiß jederzeit, ob sich die Arbeitshypothese exakt einem Konzept angepasst hat • A kann aus der Arbeitshypothese die exakte Repräsentation des Konzeptes in Polynomialzeit berechnen • A gibt nur dann eine Hypothese zurück, wenn er diese endgültig ist – aber niemals eine Arbeitshypothese! Exploiting Random Walks for Learning
Probab. Mistake Bound Model • Anwendungen? Beispiele? • Bartlett, Fischer und Höffgen schlagen probabilistischen Mistake-Bound-Lernalgorithmus für zweitermige DNFs vor • siehe Original-Paper! • lernt 2-term DNFs exakt! • Erläuterung zu platzintensiv! Statt dessen: • „warum sollte eine Lernalgorithmus in diesem Model lernen?“ ... Exploiting Random Walks for Learning
Probab. Mistake Bound Model • WENN j: Yt+1 befriedigt E(j){sage_vorher 1;WENN fehler: S:=S xj} SONST {sage_vorher 0;WENN fehler: tue nichts;} d.h. A lernt nichts aus diesem Fehler! Exploiting Random Walks for Learning
Probab. Mistake Bound Model • Probabilismus entsteht z.B. durch: • Fehler, aus denen nicht gelernt wird, die aber u.U. weitere Fehler provozieren, aus denen gelernt werden kann Exploiting Random Walks for Learning
Gliederung • Algorithmisches Lernen • PAC-Lernen • Hypercube-Irrfahrten • Mistake Bound Model • Bsp: Schwellwertfunktionen • Prob. mistake Bound Model • Bounded Mistake Rate Model • Modell-Vergleiche • Zusammenfassung & Ausblick • Literatur Exploiting Random Walks for Learning
Bounded Mistake Rate Model • Probabilistic Mistake Bound Model • Algorithmus A darf für wenige Beispielfolgen und wenige Konzepte eine Fehlerschranke überschreiten. • Bounded Mistake Rate Model • Algorithmus A darf ab bestimmter Beispiellänge ein jedes Beispiel nur noch „selten“ falsch kategorisieren. • Was bedeutet dieser Unterschied? • Erklärung folgt....! Exploiting Random Walks for Learning
Bounded Mistake Rate Model • Erweiterung des Mistake-Indicator M • Erinnerung: M gibt für Zeitpunkt t 0 bzw. 1 zurück • Neu: Einbeziehung der Verteilung! • Aber was geschieht hier eigentlich?! Hier begegnet uns wieder der Mistake-Indicator! Hier tritt erstmalig der Erwartungswert auf! Exploiting Random Walks for Learning