280 likes | 488 Views
Seminar Machine Learning WS 2003/04. Support Vector Regression. Sebastian Schneegans. Konzept der Support Vector Regression Erläuterung der Problemstellung und der Lösungsideen, Formulieren der Aufgabe als Optimierungsproblem
E N D
Seminar Machine Learning WS 2003/04 Support Vector Regression Sebastian Schneegans
Konzept der Support Vector RegressionErläuterung der Problemstellung und der Lösungsideen, Formulieren der Aufgabe als Optimierungsproblem Lösen des OptimierungsproblemsAufstellen des Lagrangepolynoms, Ermitteln der Ebenengleichung und Anwenden des Kernel-Tricks Variationen der Support Vector Regressiona)υ-SVRb) Weitere Variationen Übersicht Support Vector Regression – Sebastian Schneegans
Teil I:Konzept der Support Vector Regression Support Vector Regression – Sebastian Schneegans
Gegeben:{(x1, y1), (x2, y2), ..., (xn, yn)}, xiH, yiRmit Skalarproduktraum H, meist H = RdUnabhängig und identisch verteilt nach einer Wahrscheinlichkeitsverteilung P(x, y) Problem der Funktionsschätzung • verrauschte Funktion xg(x) + ω(x) • Gesucht:Schätzung f(x) mit minimalem RisikoR[f] = ∫c(y, f(x)) dP(x, y) • c: Y Y R Fehlerfunktion • Da aber P(x, y) unbekannt: Minimiere empirisches Risiko mit möglichst flacher Funktion Support Vector Regression – Sebastian Schneegans
Übertragung der Prinzipien von SVM auf die Funktionsschätzung: Lineare Approximation durch Hyperebene der Formf(x) = w, x + b Repräsentation durch (wenige) Support Vectors Nicht-Linearität durch Kernel-FunktionΦ(xi), Φ(xj) = k(xi, xj) Grundidee der SVR Support Vector Regression – Sebastian Schneegans
Geometrische Interpretation SVM zur Klassifizierung: y x2 w x1 w, x + b = 0 Support Vector Regression – Sebastian Schneegans
Der Vektor w bestimmt die Steigungder (Hyper-)Ebene. Dies folgt aus der Linea-rität des Skalarprodukts: f(x) = w, x + b Geometrische Interpretation SVR zur Funktionsschätzung: y x2 Der Parameter b verschiebt die Ebene in entlang der y-Achse. x1 w, x + b = 0 Support Vector Regression – Sebastian Schneegans
|y – f(x)|ε y – f(x) -ε ε Fehlerfunktion f(x) ε-insensitive loss: |y – f(x)|ε = max {0, |y – f(x)| – ε} ε ε x1 Support Vector Regression – Sebastian Schneegans
Minimieren des empirischen Fehlers: • Verwendung einer möglichst flachen Funktion f(x): • Gewichtung der beiden Ziele zueinander durch Parameter C : Formulierung des Minimierungsproblems • Nebenbedingungen: Support Vector Regression – Sebastian Schneegans
Minimierung von w bei SVR und SVM Kanonische Hyperebene bei SVMzur Mustererkennung: f(x) 1 x2 -1 x1 Support Vector Regression – Sebastian Schneegans
Minimierung von w bei SVR und SVM Kanonische Hyperebene bei SVMzur Mustererkennung: f(x) 1 Je kleiner der Abstand derseparierenden Hyperebene vom nächsten Trainingspunkt, desto steiler muss die Funktion f(x) verlaufen, um obige Bedingung zu erfüllen! x2 -1 x1 Support Vector Regression – Sebastian Schneegans
Teil II:Lösen des Optimierungs-problems Support Vector Regression – Sebastian Schneegans
Aufstellen des Lagrange-Polynoms Nebenbedingungen: Duale Formulierung: Einführen neuer Parameter , um Nebenbedingungen in das Lagrange-Polynom zu integrieren: Minimiere L in Bezug auf Variablen und maximiere L in Bezug auf Variablen . Support Vector Regression – Sebastian Schneegans
< 0, wenn Bedingung verletzt beliebig groß, wenn maximiert bzgl. Nebenbedingen im Lagrange-Polynom Die Nebenbedingung wird gewährleistet durch die Minimierung (bzgl. ) bzw.Maximierung (bzgl. ) des Terms Zur Minimierung muss ξi die Nebenbedingung erfüllen. Bemerke:αi wird 0 für alle Trainingspunkte innerhalb des ε-Bandes auf Grund der KKT-Bedingungen! Support Vector Regression – Sebastian Schneegans
Vereinfachen des Lagrange-Polynoms Lösung des Minimierungs- bzw. Maximierungsproblems ist ein Sattelpunkt,alle partiellen Ableitungen sind hier null: Einsetzen liefert schließlich das zu lösende Optimierungsproblem als Support Vector Regression – Sebastian Schneegans
Der Vektor w ergibt sich als Linearkombination von Trainingsvektoren (den Support Vectors): • Der Wert von b lässt sich aus einem der SVs bestimmen, der gerade auf dem Rand desε-Bandes liegt: y (xi, yi) ε b x1 Bestimmung der Ebenengleichung • Die Funktion f(x) lässt sich nun auch ohne explizite Angabe von w schreiben: Support Vector Regression – Sebastian Schneegans
Beispiel:X = R, H = R2 • Kernel-Funktion zur schnelleren Berechnung: Nicht-Linearität durch Kernels • Erweiterung auf nicht-lineare Funktionen durch Vorverarbeitungder Eingaben mittels Abbildung Φ: mit X: Eingaberaum, H: Merkmalsraum (meist H = Rd) • Damit: Support Vector Regression – Sebastian Schneegans
Teil III:Variationen der Support Vector Regression a) ν-Support Vector Regression Support Vector Regression – Sebastian Schneegans
Einfluss des Parameters ε [Smola98] kleines ε kleiner empirischer Fehler großes ε flache Funktion, wenige SVs Support Vector Regression – Sebastian Schneegans
Proposition: ist obere Schranke für den Anteil der Trainingspunkte, die außerhalb des ε-Bandes liegen ist untere Schranke für den Anteil der SVs an den Trainingspunkten Automatische Wahl von ε: -SVR Minimiere nun auch ε, gewichtet mit neuem Parameter : (Nebenbedingungen wie vorher) Support Vector Regression – Sebastian Schneegans
Beispiel: (vier Punkte außerhalb des ε-Bandes) Bedeutung des Parameters Minimieren des Teilausdrucks f(x) ε1 ε1 x1 Support Vector Regression – Sebastian Schneegans
Bedeutung des Parameters Minimieren des Teilausdrucks f(x) Beispiel: d (vier Punkte außerhalb des ε-Bandes) d ε2 ε2 x1 Support Vector Regression – Sebastian Schneegans
Teil III:Variationen der Support Vector Regression b) Weitere Variationen Support Vector Regression – Sebastian Schneegans
Um dies bei der Funktionsschätzung zu berücksichtigen, kann die Breite des ε-Bandes in Abhängigkeit von x variiert werden: • Die Funktion ζ(x) tritt dann in den Nebenbedingungen als Skalierungsfaktor von ε auf: Parametrische Unempfindlichkeitsmodelle • Bei verrauschten Funktionenxg(x) + ω(x)ist die Stärke des Rauschens oft abhängig von der Eingabe. Support Vector Regression – Sebastian Schneegans
Optimierung über ℓ1-Norm • ℓ1-Norm: • Idee: Minimiere Koeffizienten anstelle von ,um flache Funktion zu erzeugen:mit Nebenbedingungen: • Vorteil: Optimierung lässt sich durch lineare Programmierung lösen (bisher quadratische Programmierung) Support Vector Regression – Sebastian Schneegans
Andere Fehlerfunktionen • An Stelle des ε-insensitive loss können auch andere Funktionen zur Fehlermessung verwendet werden, z. B.: Laplacian loss Gaussian loss Huber‘s robust loss • Nachteil: Alle Trainingspunkte tragen zu w bei, nicht nur wenige Support Vectors Support Vector Regression – Sebastian Schneegans
Zusammenfassung • Support Vector Regression als Übertragung der SVM auf das Problem der Funktionsschätzung • Lineare Regression durch Hyperebene • Bestimmen der Ebenengleichung über Minimierungsproblem mit Nebenbedingungen • Duale Formulierung als Lagrange-Polynom • Erweiterung auf nicht-linearen Fall durch Kernel-Trick • -SVR zur einfacheren Bestimmung der Parameter Support Vector Regression – Sebastian Schneegans