1 / 62

Was kommt jetzt?

Lernen als probabilistische Inferenz – in anderen Worten Statistisches Lernen. Entscheidungsbäume Lernaufgabe Begriffslernen Stützvektormethode Lernaufgabe Funktionsapproximation Klassifikation (binäre Funktion) Regression (reellwertige Funktion). Was kommt jetzt?. Entscheidungsbaum.

Download Presentation

Was kommt jetzt?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lernen als probabilistische Inferenz – in anderen Worten Statistisches Lernen. Entscheidungsbäume Lernaufgabe Begriffslernen Stützvektormethode Lernaufgabe Funktionsapproximation Klassifikation (binäre Funktion) Regression (reellwertige Funktion) Was kommt jetzt?

  2. Entscheidungsbaum Feuchte =trocken =feucht Säure Temp  7,5 >9 =basisch =neutral =alkalisch N W Temp Temp W Die Rotbuche kann gut wachsen (W) oder nicht wachsen (N).  3,5 > 3,5  7,5 >7,5 N W W N Dank an Stefan Wrobel!

  3. Ein Entscheidungsbaum dient der Klassifikation von Beispielen. Ausgehend von der Wurzel des Baums werden die Attribute, deren Werte von einem Knoten zum Nachfolgeknoten führen, mit den Attributwerten des Beispiels verglichen und der entsprechende Pfad verfolgt. Wenn ein Blatt des Baums erreicht wird, gibt es die Klassifikation des Beispiels an. Entscheidungsbäume

  4. Beispiel Feuchte =trocken =feucht Säure Temp  7,5 >9 =basisch =neutral =alkalisch N W Temp Temp W Beispiel: E1: Feuchte = trocken  3,5 > 3,5  7,5 >7,5 Säure = basisch Temp = 7 N W W N

  5. Gegeben: LE: Beispiele in Form von Attributen und Werten, wobei ein binäres Attribut die Klasse des Beispiels angibt. LH: Alle aus den gegebenen Attributen mit ihren Werten konstruierbare Entscheidungsbäume. Ziel: Ein Entscheidungsbaum, der Beispiele mit minimalem Fehler klassifiziert. Lernen von Entscheidungsbäumen

  6. ID Feuchte Säure Temp Klasse 1 trocken basisch 7 W 2 feucht neutral 8 N 3 trocken neutral 7 W 4 feucht alkalisch 5 N 5 trocken neutral 8 N 6 trocken neutral 6 W 7 trocken neutral 11 N 8 trocken neutral 9 N 9 trocken alkalisch 9 W ID Feuchte Säure Temp Klasse 10 trocken alkalisch 8 W 11 feucht basisch 7 N 12 feucht neutral 10 W 13 trocken basisch 6 W 14 feucht alkalisch 7 N 15 trocken basisch 3 N 16 trocken basisch 4 W Beispiele

  7. Feuchte: trocken 1 W 3 W 5 N 6 W 7 N 8 N 9 W 10 W 13 W 15 N 16 W W:7, N: 4 Total: 11 Feuchte: feucht 2 N 4 N 11 N 12 W 14 N W: 1, N: 4 Total: 5 Beispiele nach Attributen sortiert • Säure: • basisch • 1 W • 11 N • 13 W • 15 N • 16 W • W:3,N:2 • Total: 5 • Säure: • alkalisch • 4 N • 9 W • 10 W • N • W:2, N:2 • Total: 4 Säure: neutral 2 N 3 W 5 N 6 W 7 N 8 N 12 W W:3,N:4 Total: 7 Temp: >6,5 1 W 2 N 3 W 5 N 10 W 11 N 12 W 14 N W:4, N:4 Total: 8 Temp: 6,5 4 N 6 W 13 W 15 N 16 W W: 3, N:2 Total: 5

  8. Die Klasse, die am häufigsten bei einem Attributwert vorkommt, wird vorausgesagt, wenn der Attributwert im Beispiel vorkommt. Es wird das Attribut mit dem kleinsten Fehler auf den Beispielen gewählt. Rekursiver Ansatz Test Feuchte =trocken =feucht Test Feuchte = trocken {1,3,5,6,7,8,9,10,13,15,16} Test Feuchte = feucht{2,4,11,12,14} N W 4/11 Fehler 1/5 Fehler • Die Knoten werden wieder nach Attributen aufgeteilt, wenn es noch einen Fehler auf den Beispielen gibt.

  9. Beispiel Feuchte =trocken =feucht {2,4,11,12,14} {1,3,5,6,7,8,9,10,13,15,16} Säure Temp  9 >9 =basisch =neutral =alkalisch N W {1,13,15,16} {3,5,6,7,8} {9,10} {2,4,11,14} {12} Temp Temp W  3,5 > 3,5  7,5 >7,5 0 Fehler auf den Beispielen. N W W N {15} {1,13,16} {3,6} {5,7,8}

  10. TDIDT (E, Tests) Falls E nur Beispiele einer Klase enthält, liefere einen Blattknoten mit dieser Klasse zurück. Sonst Für jeden Test in Tests, berechne Qualität (Test, E). Wähle den Test mit der höchsten Qualität für den aktuellen Knoten aus. Teile E anhand des Testes gemäß der Attributwerte in Mengen E1, ..., Ek auf. Für i = 1, ..., k rufe rekursiv auf: TDIDT(Ei, Tests\{Test}). Liefere den aktuellen Knoten mit den darunter liegenden Teilbäumen zurück. TDIDT - Algorithmus

  11. Information: wie viele ja-/nein-Fragen braucht man, um ein Element einer Menge zu identifizieren?  Bits Je nach Wahrscheinlichkeit pides Elements sind es weniger oder mehr Fragen. Informationsgehalt einer Menge mit m Elementen(Entropie): wie viele Fragen braucht man durchschnittlich, um jedes Element zu identifizieren. Qualitätsmaß

  12. Hier sind die zu identifizierenden Elemente die Klassen. Als Annäherung an die Wahrscheinlichkeit nehmen wir die Häufigkeiten in den Beispielen. Wir wollen den Test auswählen, der den Informationsgehalt der durch ihn entstehenden Beispielmengen am meisten reduziert. Informationsgewinn

  13. Test: Säure =basisch =neutral =alkalisch {11} {2, 12} {4,14} Test: Temp  9 >9 N W {2,4,11,14} {12} Beispiel Feuchte = feucht {2,4,11,12,14} Der Gewinn ist bei Temp größer als bei Säure. Es wird der Test nach dem Attribut Temp gewählt.

  14. Überanpassung (overfitting): Da der Trainingsfehler minimiert wird, kann sich der Entscheidungsbaum zu stark an die Beispiele anpassen, so dass er auf den Testdaten falsch entscheidet. Ausweg: einen Teil der Traininsdaten zum Test des vorläufigen Ergebnisses beiseite legen (Kreuvalidierung). Den Baum zur Optimierung auf den Validierungsdaten stutzen. Identische Testfolgen können an verschiedenen Stellen des Baumes auftreten. Probleme

  15. TDIDT ist ein effektiver und effizienter Algorithmus. Sie kennen seine Arbeitsweise, wissen, dass Tests an den Knoten Beispielmengen zurückliefern dass die Tests nach einem Qualitätskriterium ausgewählt werden (automatische Merkmalsselektion) und dass meist der Informationsgewinn als Kriterium gewählt wird. C4.5 (bei weka J48) ist das am häufigsten verwendete Lernverfahren. Was wissen Sie jetzt?

  16. Gegeben: Beispiele X in LE die anhand einer Wahrscheinlichkeitsverteilung P auf X erzeugt wurden und mit einem Funktionswert Y = t(X) versehen sind (alternativ: Eine Wahrscheinlichkeitsverteilung P(Y|X) der möglichen Funktionswerte - verrauschte Daten). H die Menge von Funktionen in LH. Ziel: Eine Hypothese h(X)  H, die das erwartete Fehlerrisiko R(h) minimiert. Risiko: Erinnerung: Funktionslernen

  17. 1 2 3 Beispiel: Funktionenlernen 0% 50% 5% 25% 0% 20% • H = { fa | fa(x) = 1, für x  a, fa(x) = -1 sonst, a} • R(f0) = 0,25 + 0 + 0,20 = 0,45 • R(f1,5) = 0 + 0 + 0,20 = 0,20 • R(f3,5) = 0 + 0,5 + 0,05 = 0,55 Dank an Stefan Rüping!

  18. Klassifikation: Q(x,h) = 0, falls t(x) = h(x), 1 sonst Textklassifikation (x = Worthäufigkeiten) Handschriftenerkennung (x = Pixel in Bild) Vibrationsanalyse in Triebwerken (x = Frequenzen) Intensivmedizinische Alarmfunktion (x = Vitalzeichen) Regression: Q(x,h) = (t(x)-h(x)))2 Zeitreihenprognose (x = Zeitreihe, t(x) = nächster Wert) Reale Beispiele

  19. Funktionslernaufgabe nicht direkt lösbar. Problem: Die tatsächliche Funktion t(X) ist unbekannt. Die zugrunde liegende Wahrscheinlichkeit ist unbekannt. Ansatz: eine hinreichend große Lernmenge nehmen und für diese den Fehler minimieren.  Empirical Risk Minimization Erinnerung: Minimierung des beobachteten Fehlers

  20. Beispiel

  21. Beispiel II

  22. Aufgabe ist nicht eindeutig beschrieben: Mehrere Funktionen mit minimalem Fehler existieren. Welche wählen? Overfitting: Verrauschte Daten und zu wenig Beispiele führen zu falschen Ergebnissen. Probleme der ERM

  23. Beispiele heißen linear trennbar, wenn es eine Hyperebene H gibt, die die positiven und negativen Beispiele voneinander trennt. H heißt optimale Hyperebene, wenn ihr Abstand d zum nächsten positiven und zum nächsten negativen Beispiel maximal ist. Satz: Es existiert eine eindeutig bestimmte optimale Hyperebene. Die optimale Hyperebene d d H

  24. Hyperebene H = {x | w*x+b = 0} H trennt (xi,yi), yi{±1} H ist optimale Hyperebene Entscheidungsfunktion f(x) = w*x+b f(xi) > 0  yi > 0 ||w|| minimal und f(xi)  1, wenn yi = 1f(xi)  -1, wenn yi = -1 +1 f -1 Berechnung der opt. Hyperebene H

  25. Minimiere ||w||2 so dass für alle i gilt: f(xi) = w*xi+b  1 für yi = 1 und f(xi) = w*xi+b  -1 für yi = -1 Äquivalente Nebenbedingung: yi*f(xi)  1 Konvexes, quadratisches Optimierungs-problem  eindeutig in O(n3) lösbar. Satz: ||w|| = 1/d, d = Abstand der optimalen Hyperebene zu den Beispielen. Optimierungsaufgabe der SVM

  26. In der Praxis sind linear trennbare Daten selten. 1. Ansatz: Entferne eine minimale Menge von Datenpunkten, so dass die Daten linear trennbar werden (minimale Fehlklassifikation). Problem: Algorithmus wird exponentiell. Nicht linear trennbare Daten ?

  27. Wähle C>0 und minimiere so dass für alle i gilt: f(xi) = w*xi+b  1-i für yi = 1 und f(xi) = w*xi+b  -1+i für yi = -1 Äquivalent: yi*f(xi)  1- i Weich trennende Hyperebene +1 f  

  28. Umformung mit Lagrange-Multiplikatoren liefert einfacheres Optimierungsproblem: Maximiere unter 0  i  C für alle i und iyi = 0 Es gilt w = iyixi, also f(x) = iyi(xi*x)+b Duales Optimierungsproblem

  29. Bedeutung von  und  =0, =0 =0, 0<C 0<<1, 0<<C >1, =C f(x)=-1 f(x)=0 f(x)=1 Beispiele xi mit i>0 heißen Stützvektoren  SVM

  30. s = Gradient von W() // si = j(xj*xi) while(nicht konvergiert(s)) // auf  genau WS = working_set(s) // suche k „gute“ Variablen ‘ = optimiere(WS) // k neue -Werte s = update(s, ‘) // s = Gradient von W(‘) Gradientensuchverfahren Trick: Stützvektoren allein definieren Lösung Weitere Tricks: Shrinking, Caching von xi*xj Optimierungsalgorithmus

  31. Funktionslernen als allgemeine Lernaufgabe Minimierung des empirischen Risikos als Lösungsstrategie Optimale Hyperebene präzisiert die ERM Praxis: weich trennende Hyperebene Berechnung mittels SVM und dualem Problem Offene Fragen: Generelles Prinzip hinter der optimalen Hyperebene? Nicht lineare Daten? Was wissen wir jetzt?

  32. 1 astonishing3 free2 in⋮2 pictures1 porn0 SVM5 to0 university2 XXX1 astonishing3 free2 in⋮2 pictures1 porn0 SVM5 to0 university2 XXX Beispiel: Textklassifikation To: rueping@ls8.cs.uni- dortmund.de Subject: Astonishing Guaranteed XXX Pictures FREE! Gao In the next 2 minutes you are going to learn how to get access to totally FREExxxpictures. Let me show you the secrets I have learned to get FREEporn passwords. Indeed, with this in mind lets take a quick look below to see what you get, ok? 0.10.40.0⋮0.21.1-0.60.0-0.40.9 * > 0 SVM

  33. Typische Dimension: 10.000 – 100.000 SVM lernt ohne Vorauswahl von Wörtern! Text-Categorisierungs-Model: TCat-Modell positive Dokumente negative Dokumente

  34. Vitalzeichen von Intensivpatienten Alarm geben oder nicht? Hohe Genauigkeit Verständlichkeit? Beispiel: Intensivmedizin

  35. Zu kleiner Hypothesenraum: Zielfunktion nicht gut genug approximierbar (Bias) Zu großer Hypothesenraum: Zuviel Einfluß zufälliger Abweichungen (Varianz) Lösung: Minimiere obere Schranke des Fehlers:R(h)  Remp(h) + Var(h) Bias-Varianz-Problem

  36. Ordne die Hypothesen in Teilmenge gemäß ihrer Komplexität Wähle in jeder Teil-menge die Hypothese mit dem geringsten empirischen Fehler Wähle insgesamt die Hypothese mit minimaler Risikoschranke Strukturelle Risikominimierung Schranke(h) = Remp(h) + Var(h) Komplexität

  37. Definition: Eine Menge H von Hypothesen zerschmettert eine Menge E von Beispielen, wenn jede Teilmenge von E durch ein hH abgetrennt werden kann. Definition: Die VC-Dimension einer Menge von HypothesenH ist die maximale Anzahl von Beispielen E, die von H zerschmettert wird. Vapnik-Chervonenkis-Dimension

  38. Satz: Die VC-Dimension der Hyperebenen im Rn ist n+1. Beweis: VCdim(Rn)  n+1: Wähle x0 = 0 und xi = (0,...,0,1,0,...0). Für eine beliebige Teilmenge A von (x0,...,xn) setze yi = 1, falls xi  A und yi = –1 sonst. Definiere w = ykxk und b = y0/2. Dann gilt wx0+b = y0/2 und wxi+b = yi+y0/2. Also: wx+b trennt A. VCdim(Rn)  n+1: Zurückführen auf die beiden Fälle rechts. VC-Dimension von Hyperebenen

  39. Setze f(x) = cos(x) und xi = 10-i, i=1...l. Wähle yi{-1,1}. Dann gilt für =(1/2(1-yi)10i): VC-Dim. und Anzahl der Parameter Vielfaches von 2 0    10-1+10-2+ =1/9 (geometrische Reihe)

  40. cos(xk)=cos(z) mit z[0,1/9] für yk=1 und z[1,10/9] für yk=-1 cos(x) zerschmettert x1,...xl cos(x) hat unendliche VC-Dimension Die VC-Dimension ist unabhängig von der Anzahl der Parameter! VC-Dim. und Anzahl der Parameter cos 1/9  2 3

  41. Gegeben seien Beispiele x1,...,xln mit ||xi|| < D für alle i. Für die VC-Dimension der durch den Vektor w gegebenen optimalen Hyperebene h gilt: VCdim(h)  min{D2 ||w||2, n}+1 Die Komplexität einer SVM ist nicht nur durch die Dimension der Daten beschränkt (Fluch der hohen Dimension), sondern auch durch die Struktur der Lösung! VC-Dimension der SVM

  42. Empirisches Risiko Remp(h) h fest n   Erwartetes Risiko R(h) ERMh : Remp(h) = minh‘ Remp(h‘) Optimale Hypotheseh : R(h) = minh‘ R(h‘) n   Wozu die ganze Theorie? Löse ich überhaupt das Lernproblem? SRM garantiert dies! SRMh : Rsrm(h) = minh‘ Rsrm(h‘) Optimale Hypotheseh : R(h) = minh‘ R(h‘) n  

  43. Idee der strukturellen Risikominimierung: obere Schranke für das Risiko Schrittweise Steigerung der Komplexität Formalisierung der Komplexität: VC-Dimension SRM als Prinzip der SVM Garantie für die Korrektheit der Lernstrategie Offene Frage: Nützlichkeit für die Praxis? Was wissen wir jetzt?

  44. Welches erwartete Risiko R(h) erreicht SVM? R(h) selbst nicht berechenbar Trainingsfehler (zu optimistisch – Overfitting) Obere Schranke mittels VC-Dimension (zu locker) Kreuzvalidierung / Leave-One-Out-Schätzer (ineffizient) Performanzschätzer

  45. Satz: Der Leave-One-Out-Fehler einer SVM ist beschränkt durch Rl1o |SV| / n Beweis: Falsch klassifizierte Beispiele werden Stützvektoren. Also: Nicht-Stützvektoren werden korrekt klassifiziert. Weglassen eines Nicht-Stützvektors ändert die Hyperebene nicht, daher wird es auch beim l1o-Test richtig klassifiziert. Performanzschätzer II

  46. Performanzschätzer III • Satz: Der Leave-One-Out-Fehler einer SVM ist beschränkt durch Rl1o |{i : (2iD2+i)1}| / n(D = Radius des Umkreises um die Beispiele). • Beweis: Betrachte folgende drei Fälle: =0, =0 0<<1, 0<<C >1, =C

  47. Nicht-lineare Daten

  48. Was tun? Neue SVM-Theorie entwickeln? (Neeee!) Lineare SVM benutzen? („If all you‘ve got is a hammer, every problem looks like a nail“) Transformation in lineares Problem! Nicht-lineare Daten x2 x2 (x1,x2) = (x12,x2) x1 (x1)2

  49. Erinnerung: f(x) = iyi(xi*x)+b SVM hängt von x nur über Skalarprodukt x*x‘ ab. Ersetze Transformation  und Skalarprodukt * durch Kernfunktion K(x1,x2) = (x1)*(x2) Kernfunktionen  *  X Z K

  50. Angabe von  nicht nötig, einzige Bedingung: Kernmatrix (K(xi,xj))i,j=1...n muss positiv definit sein. Radial-Basisfunktion: K(x,y) = exp(-||x-y||2) Polynom: K(x,y) = (x*y)d Neuronale Netze: K(x,y) = tanh(ax*y+b) Konstruktion von Spezialkernen durch Summen und Produkte von Kernfunktionen, Multiplikation mit positiver Zahl, Weglassen von Attributen Kernfunktionen II

More Related