02.11.2013 Aufrufe

Klassische Klassifikationsalgorithmen

Klassische Klassifikationsalgorithmen

Klassische Klassifikationsalgorithmen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Klassische</strong><br />

<strong>Klassifikationsalgorithmen</strong> Forts..<br />

Computational Intelligence<br />

2 VO 442.070 + 1 UE 708.070<br />

SS 2013<br />

Institut für Signalverarbeitung und Sprachkommunikation<br />

TU Graz<br />

Inffeldgasse 12/1<br />

www.spsc.tugraz.at<br />

Institute for Theoretical Computer Science<br />

TU Graz<br />

Inffeldgasse 16b/1<br />

www.igi.tugraz.at<br />

Computational Intelligence SS 2013 (VO 442.070)


Lehrveranstaltungsübersicht<br />

IGI<br />

Kapitel 1<br />

Grundbegriffe des maschinellen Lernens<br />

Kapitel 2<br />

Neuronale Netze<br />

Kapitel 3<br />

<strong>Klassische</strong> <strong>Klassifikationsalgorithmen</strong><br />

Kapitel 4<br />

Modellselektion<br />

Computational Intelligence SS 2013 (VO 442.070) 2


Plan für heute: Kapitel 3<br />

Lernalgorithmus für veränderliche Lerndaten<br />

Lernalgorithmus für nominale Attribute<br />

State-of-the-art bei Klassifikation ohne Vorwissen<br />

Computational Intelligence SS 2013 (VO 442.070) 3


Anwendungsbereiche<br />

Voraussetzungen:<br />

Nicht mehr als ca. 10000 Lernbeispiele (für derzeitige Computer), da das<br />

Trainieren sehr rechenaufwendig ist..<br />

Beispiele:<br />

Spracherkennung<br />

Bilderkennung<br />

Bio- und Neuroinformatik<br />

etc.<br />

Computational Intelligence SS 2013 (VO 442.070) 4


Wiederholung: Erweiterung von linearen<br />

Klassifikatoren auf nichtlineare Probleme<br />

Lernbeispiel Bilderkennung:<br />

Lineare Klassifikatoren liefern für dieses XOR Problem einen zero-one Fehler von<br />

mindestens 0.25:<br />

y = signw T x =sign w 0<br />

w 1<br />

x 1<br />

... w d<br />

x d<br />

<br />

Computational Intelligence SS 2013 (VO 442.070) 5


Grundlegende Ideen von SVM<br />

1. Nichtlineare Projektion (Ansatz 1).<br />

2. Maximum margin Hyperebene.<br />

3. Rechnerische Effizienz durch den kernel Trick.<br />

Computational Intelligence SS 2013 (VO 442.070) 6


Bsp.: XOR Problem<br />

Projektion in den feature Raum<br />

x = 1, 2 x 1,<br />

2 x 2<br />

, 2 x 1<br />

x 2<br />

, x 1 2 , x 2 2, <br />

ermöglicht lineare Trennung der projizierten Daten.<br />

Computational Intelligence SS 2013 (VO 442.070) 7


Erzeugte Hypothesen<br />

Lineare Separierung im feature - Raum<br />

Nichtlineare Separierung im Eingabe - Raum<br />

Computational Intelligence SS 2013 (VO 442.070) 8


Bsp.: Nichtlineare Separierung<br />

Projektion in den feature Raum<br />

x = 1, 2 x 1,<br />

2 x 2<br />

, 2 x 1<br />

x 2<br />

, x 1 2 , x 2 2, <br />

Abkürzung:<br />

f = 2 x 1<br />

x 2<br />

f = -1 f = +1<br />

f = +1<br />

f = 0 f = 0<br />

f = +1<br />

f = -1<br />

f = -1<br />

Computational Intelligence SS 2013 (VO 442.070) 9


Grundlegende Ideen von SVM<br />

1. Nichtlineare Projektion (Ansatz 1).<br />

2. Maximum margin Hyperebene.<br />

3. Rechnerische Effizienz durch den kernel Trick.<br />

Computational Intelligence SS 2013 (VO 442.070) 10


Annahme: Linear separierbare Daten<br />

Linearer Klassifikator<br />

y i<br />

= signw 0<br />

w T x i<br />

<br />

w , x i<br />

∈ R D−1<br />

Im linear separierbaren Fall gilt y i<br />

w 0<br />

w T x i<br />

0 i = 1,... ,l<br />

x 2<br />

x 1<br />

Computational Intelligence SS 2013 (VO 442.070) 11


Maximum margin Hypothese<br />

Wir erwarten, dass wir einen besseren Klassifikator finden, welcher robuster<br />

hinsichtlich noise ist, wenn wir verlangen, dass der margin möglichst groß ist.<br />

Margin: Abstand zwischen Trainingsbeispielen und der Klassifikationsebene des<br />

linearen Klassifikators.<br />

Computational Intelligence SS 2013 (VO 442.070) 12


Wie wird gelernt?<br />

Minimierungsproblem<br />

1<br />

2 ∥w∥2 = 1 ∑ D<br />

2<br />

d =1<br />

w d<br />

2<br />

mit Nebenbedingungen<br />

y i<br />

w 0<br />

w T x i<br />

− 1 ≥ 0 i = 1,... ,l<br />

Computational Intelligence SS 2013 (VO 442.070) 13


Illustration der Optimierung<br />

Wir betrachten ein 1 dimensionales Beispiel<br />

y=signw 0<br />

w x<br />

f =w 0<br />

w⋅ x<br />

1w 0<br />

w x − 1 ≥ 0<br />

∣x −x − ∣/ 2<br />

−1w 0<br />

w x − − 1 ≥ 0<br />

Computational Intelligence SS 2013 (VO 442.070) 14


Illustration der Optimierung<br />

Wir betrachten ein 1 dimensionales Beispiel<br />

y=signw 0<br />

w x<br />

f =w 0<br />

w⋅ x<br />

1w 0<br />

w x − 1 = 0<br />

∣x 1<br />

−x − 1−<br />

∣/ 2<br />

1 1<br />

1<br />

−1w 0<br />

w x − − 1 = 0<br />

∣w ∗ ∣= 2/∣x − x − ∣<br />

(Steigung = 1/margin)<br />

Computational Intelligence SS 2013 (VO 442.070) 15


Illustration: Mehrdimensionaler Fall<br />

1<br />

2 ∥w∥2 = 1 ∑ D<br />

2<br />

d =1<br />

w d<br />

2<br />

y i<br />

w 0<br />

w T x i<br />

− 1 ≥ 0<br />

i = 1,... ,l<br />

Computational Intelligence SS 2013 (VO 442.070) 16


Illustration: Mehrdimensionaler Fall<br />

margin=2 / ∥w∥<br />

f =w 0<br />

w T x<br />

w<br />

w<br />

∣w ∗ ∣= 2/margin<br />

Computational Intelligence SS 2013 (VO 442.070) 17


Transformation des Problems in die<br />

duale Repräsentation<br />

Äquivalent zur Maximierung der Parameter<br />

{ i }<br />

in der dualen Repräsentation<br />

l<br />

∑ i=1<br />

i − 1 2 ∑ i , j=1<br />

l<br />

y i y j i j x i T x j <br />

Mit den Nebenbedingungen<br />

i ≥ 0 ∑ i<br />

i<br />

y i<br />

= 0<br />

Wird gelöst mittels quadratischen Programmierens<br />

Computational Intelligence SS 2013 (VO 442.070) 18


Lösung in der dualen Repräsentation<br />

Optimalen Gewichte w sind Funktionen von { i } .<br />

w = ∑ i=1<br />

l<br />

i y i x i<br />

w 0<br />

Berechnung von über die Nebenbedingung für beliebige support Vektoren i.<br />

y i<br />

w 0<br />

w T x i<br />

− 1 = 0<br />

Nur von support Vektoren (SV) sind ungleich 0.<br />

i<br />

Computational Intelligence SS 2013 (VO 442.070) 19


Support Vektoren<br />

Def.:<br />

Support Vektoren sind jene Datenpunkte mit dem kürzesten Abstand zur<br />

maximum margin Klassifikationshyperebene, welche diese festlegen.<br />

maximaler margin<br />

Computational Intelligence SS 2013 (VO 442.070) 20


Support Vektoren<br />

Allgemeim gilt:<br />

SV müssen nicht nahe an den Entscheidungsgrenzen im input Raum sein, sie<br />

müssen nur nahe an den Entscheidungsgrenzen im feature Raum sein.<br />

Computational Intelligence SS 2013 (VO 442.070) 21


Bsp.: XOR Problem<br />

Abbildung in den feature Raum<br />

x = 1, 2 x 1,<br />

2 x 2<br />

, 2 x 1<br />

x 2<br />

, x 1 2 , x 2 2, <br />

f = 2 x 1<br />

x 2<br />

f = -1 f = +1<br />

f = +1<br />

margin=2<br />

f = 0<br />

f = +1<br />

f = -1<br />

f = -1<br />

Computational Intelligence SS 2013 (VO 442.070) 22


Grundlegende Ideen von SVM<br />

1. Nichtlineare Projektion (Ansatz 1).<br />

2. Maximum margin Hyperebene.<br />

3. Rechnerische Effizienz durch den kernel Trick.<br />

Computational Intelligence SS 2013 (VO 442.070) 23


Kernels<br />

Für die Maximierung in der sogenannten dualen Repräsentation benötigt man die<br />

Berechnung des Skalarprodukts der Trainingsbeispiele<br />

l<br />

∑ i=1<br />

i − 1 2 ∑ i , j=1<br />

l<br />

y i y j i j x T 1 i x 1 j <br />

wobei 0 ≤ i<br />

und ∑ i<br />

i<br />

y i<br />

= 0.<br />

Kernel-Funktionen K berechnen das Skalarprodukt im feature Raum direkt aus<br />

den nicht-projizierten Lernbeispielen ohne die Projektion in den feature Raum<br />

explizit durchzuführen.<br />

x T 1 i<br />

x 1 j<br />

x 1 i<br />

T x 1 j<br />

K x 1i<br />

, x 1 j<br />

<br />

Computational Intelligence SS 2013 (VO 442.070) 24


Overfitting<br />

Die Dimensionalität des feature Raumes bestimmt die Anzahl der zu<br />

bestimmenden Parameter.<br />

Warum kann dieser Lernalgorithmus generalisieren?<br />

Computational Intelligence SS 2013 (VO 442.070) 25


Anmerkung<br />

Für SVM hängt die Anzahl der zu lernenden Parameter nicht von der<br />

Dimensionalität des feature Raumes ab, sondern von der Anzahl der SV<br />

Computational Intelligence SS 2013 (VO 442.070) 26


Zusammenfassung<br />

1. Nichtlineare Projektion der Attribut-Vektoren in einen hochdimensionalen<br />

Raum, um die Trennbarkeit der Klassen durch lineare Hyperebenen zu<br />

verbessern (Ansatz 1).<br />

2. Vermeidung des dadurch verursachten Overfitting Problems durch reduktion<br />

der Freiheitsgrade: Die gesuchte Hyperebene soll einen maximalen margin<br />

besitzen.<br />

3. Vermeidung der durch Verwendung eines hochdimensionalen Raums zu<br />

erwartenden rechnerischen Probleme durch den kernel Trick, welcher die<br />

Berechnung der maximal margin Hyperebene im hochdimensionalen Raum<br />

auf eine Berechnung im Raum der ursprünglichen Attributvektoren reduziert.<br />

Computational Intelligence SS 2013 (VO 442.070) 27


Auswahlkriterien für Lernalgorithmen<br />

Qualität des Lernalgorithmus (siehe Kapitel 1)<br />

Generell sehr gute Performance<br />

Zur Verfügung stehende Rechenzeit beim Trainieren und Testen, sowie<br />

Benötigt sehr viel Rechenzeit um zu lernen<br />

Benötigt wenig Rechenzeit um zu testen<br />

Speicherbedarf<br />

Gering.<br />

Intuitive Interpretierbarkeit<br />

Sehr schlecht<br />

Computational Intelligence SS 2013 (VO 442.070) 28

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!