Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik...
Transcript of Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik...
Universität Potsdam Institut für Informatik
Lehrstuhl Maschinelles Lernen
Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck
Scheffer/Vanck: S
prachtechnologie
2
Multiklassen-Klassifikation Binäre Klassifikation:
Lineare Klassifikation:
Multiklassen-Klassifikation: Endliche Menge von Klassen-Labels,
Ansatz: Statt jetzt
Scheffer/Vanck: S
prachtechnologie
3
Lernen mit strukturierten Ausgaben Klassifikation bei mehr als zwei Klassen:
f bekommt jetzt zwei Parameter.
Gemeinsame Merkmale von Ein- und Ausgabe:
Gleicher Ansatz für Multiklassen, Sequenz- und Struktur-Lernen, Ranking.
Scheffer/Vanck: S
prachtechnologie
4
Lernen mit strukturierten Ausgaben Constraints bei normaler SVM:
Für alle (xi, yi): Constraints mit strukturierten Ausgaben:
Für alle (xi, yi): und alle y ≠ yi:
Scheffer/Vanck: S
prachtechnologie
5
Lernen mit strukturierten Ausgaben Gegeben: Wiederhole bis alle Sequenzen korrekt
vorhergesagt werden. Iteriere über alle Beispiele (xi, yi).
Bestimme Wenn (Margin-Verletzung) dann füge Constraint
dem Working Set hinzu.
Löse Optimierungsproblem für Eingabe xi, Ausgabe yi, und negative Pseudo-Beispiele (working set).
Liefere w zurück.
€
y
Scheffer/Vanck: S
prachtechnologie
6
Multiklassen-SVM Klassifikation bei mehr als zwei Klassen:
Multiklassen-Kernel:
€
Λ(y) =
[[y = y1]]...
[[y = yk ]]
Φ(x,y) = x ⊗ Λ(y) =
x[[y = y1]]...
x[[y = yk ]]
Scheffer/Vanck: S
prachtechnologie
7
Multiklassen-SVM Jede Klasse hat privaten Abschnitt des
Gewichtsvektors:
Scheffer/Vanck: S
prachtechnologie
8
Multiklassen-SVM Jede Klasse hat privaten Abschnitt des
Gewichtsvektors: Beispiel:
Scheffer/Vanck: S
prachtechnologie
9
Klassifikation mit Taxonomien Klassen in Baumstruktur:
€
Φ(x,y) = x ⊗ Λ(y) = x ⊗Λ(y1)...
Λ(yd )
= x ⊗
[[y1 = y11]]
...[[y1 = yn
1 ]]...
[[yd = y1d ]]
...[[yd = yn
d ]]
Scheffer/Vanck: S
prachtechnologie
10
Klassifikation mit Taxonomien Jeder Knoten hat einen privaten Abschnitt des
Gewichtsvektors. Pfade teilen sich Abschnitte, wenn sie gemeinsame
Knoten beinhalten.
Scheffer/Vanck: S
prachtechnologie
11
Sequentielle Ein-/Ausgaben Z.B. Wortarterkennung:
Eigennamenerkennung, Informationsextraktion:
Gemeinsame Repräsentation von Ein- und
Ausgabe.
“Curiosity kills the cat.” y= x= <Noun, Verb, Determiner, Noun> →
“Barbie meets Ken.” y= x= <Person, -, Person> →
Scheffer/Vanck: S
prachtechnologie
12
Label-label: Label-observation:
Joint feature representation Φ(x,y)=∑t(…,φ123(yt,yt+1),…,φ234(xt,yt),...)T
Weight vector w=(…,w123,…,w234,…)T
y1 y3 y4 y2
x1 x3 x2 x4 φ123(yt,yt+1) = [[yt=“Noun” yt+1=“Verb”]]
φ234(xt,yt) = [[yt=“Noun” xt = “cat”]] ∑tφi(yt,yt+1).
∑tφi(xt,yt).
Curiosity kills the cat
Sequentielle Ein-/Ausgaben Attribut für jedes Paar benachbarter
Labels yt und yt+1.
Attribut für jedes Paar aus Eingabe und Ausgabe.
Scheffer/Vanck: S
prachtechnologie
13
Sequentielle Ein-/Ausgaben: Dekodierung Um eine Sequenz zu klassifizieren, muss
berechnet werden. Das argmax geht über alle möglichen Sequenzen
(exponentiell viele in der Länge). summiert über Merkmale
benachbarter Label-Paare und Merkmale von xi-yi-Paaren.
Mit dynamischer Programmierung kann argmax in linearer Zeit berechnet werden (Viterbi).
Scheffer/Vanck: S
prachtechnologie
14
Joint feature representation Φ(x,y)=∑t(…,φ123(yt,yt+1),…,φ234(xt,yt),...)T
Decode argmaxy wTΦ(x,y) efficiently with transition matrix A={aσ,τ} and observation matrix Bx={bt,σ(x)}, σ,τ ∈{•,N,V,D}:
HM SVM uses Viterbi decoding.
y1 y3 y4 y2
x1 x3 x2 x4
φ123(yt,yt+1) = [[yt=“Noun” yt+1=“Verb”]] φ234(xt,yt) = [[yt=“Noun” xt = “John”]]
N N N
V V V
D D D Curiosity kills the cat
N
V
D
a•,N
b4,N(x) b2,N(x)
b3,N(x) b1,N(x)
•
Sequentielle Ein-/Ausgaben: Dekodierung
Scheffer/Vanck: S
prachtechnologie
15
Viterbi-Algorithmus Definition: =Score, der in wTΦ(x,y) erzeugt wird, wenn
yt=σ und yt+1=τ. Definition: =Score, der in wTΦ(x,y) erzeugt wird, wenn
yt=σ und Wort xt erscheint.
Gesucht:
Scheffer/Vanck: S
prachtechnologie
16
Viterbi-Algorithmus, Theorem Theorem:
Beweis:
Lineare Bestimmung des höchst-scorenden Pfades mit dynamischer Programmierung.
Scheffer/Vanck: S
prachtechnologie
17
wTΦ(x,<N,V,Det,N>) ≥ wTΦ(x,<N,N,N,N>)
wTΦ(x,<N,V,Det,N>) ≥ wTΦ(x,<N,N,N,V>)
wTΦ(x,<N,V,Det,N>) ≥ wTΦ(x,<N,N,V,N>)
wTΦ(x,<N,V,Det,N>) ≥ wTΦ(x,<N,V,N,N>)
Beispiel: POS-Tagging (Wortarterkennung) Satz x=“Curiosity kills the cat” Gewünscht:
Explizit:
argmaxy wTΦ( x , y ) = <N,V,Det,N> …
…
ZU VIELE!!!
Lernen mit strukturierten Ausgaben
Scheffer/Vanck: S
prachtechnologie
18
Lernen mit strukturierten Ausgaben Hidden Markov Support Vector Machine.
Large-Margin-Ansatz: γ = 1/|w|.
Iteratives Training. Negative Constraints werden hinzugefügt, wenn beim
Training Fehler auftritt.
s.d. ∀i ∀y≠yi wT(Φ(xi,yi) - Φ(xi,y)) ≥ 1 min ½ |w|2 + C∑iξi
- ξi ∀i ξi ≥ 0.
Scheffer/Vanck: S
prachtechnologie
19
Lernen mit strukturierten Ausgaben Gegeben: Wiederhole bis alle Sequenzen korrekt
vorhergesagt werden. Iteriere über alle Beispiele (xi, yi).
Bestimme Wenn (Margin-Verletzung) dann füge Constraint
dem Working Set hinzu.
Löse Optimierungsproblem für Eingabe xi, Ausgabe yi, und negative Pseudo-Beispiele y (working set).
Liefere w zurück.
Scheffer/Vanck: S
prachtechnologie
20
Conditional Random Fields (CRF) Diskriminatives probabilistisches Modell Anwendung beim Labeln oder Parsen von
Sequenzdaten Part of Speech Tagging Named Entity Recognition Gensequenzierung
Scheffer/Vanck: S
prachtechnologie
Wdh: Hidden Markov model HMM ist ein generatives Modell, d.h. wir lernen gemeinsame
Verteilung von Beobachtungen X und den Labels Y einer Sequenz
mit
Es gilt zudem den Unabhängigkeitsannahme
Annahme stellt ein starke Vereinfachung der Realität dar Häufig existieren Abhängigkeiten höheren Grades zwischen
Beobachtung X und Zuständen Y.
21
Scheffer/Vanck: S
prachtechnologie
Generativ vs Diskriminativ Es gilt: Generativer Ansatz: Diskriminativer Ansatz: Vorteil des diskriminativen Ansatz: muss nicht modelliert
werden, egal wie die Abhängigkeiten zwischen den xi sind Zwei Möglichkeiten zur Verbesserung eines Generatives
Modells: Berücksichtigung/Modellierung von zusätzlichen
Abhängigkeiten Vereinfachung, d.h. mehr Unabhängigkeitsannahmen
treffen
22
Scheffer/Vanck: S
prachtechnologie
Motivation Probleme die bei der Berücksichtigung von Abhängigkeiten
höherer Ordnung entstehen Nicht berechenbare Modellierung, aufgrund zu hoher
Komplexität (man braucht mehr Daten) Ein solches Modell könnte immer noch unangemessene
Unabhängigkeitsannahmen machen Mögliche Lösung:
Verwende ein Modell, das eine Bedingte Wahrscheinlichkeitsverteilung (conditional probability) verwendet, d.h.
Idee für das Klassifizieren neuer Beobachtungen löse
23
Scheffer/Vanck: S
prachtechnologie
Motivation Vorteile dieses neuen Ansatzes
Kein Aufwand für die Modellierung der Beobachtungen
Unangemessene Unabhängigkeitsannahmen müssen nicht gemacht werden, weil wir weniger modellieren
Beliebig viele Attribute einer Beobachtung können vom Modell berücksichtigt werden, ohne, dass der Anwender Rücksicht auf deren Abhängigkeit nehmen muss
24
Scheffer/Vanck: S
prachtechnologie
Conditional Random Fields (CRFs) CRFs modellieren eine bedingte Wahrscheinlichkeitsverteilung CRFs können als ungerichteter Graph dargestellt werden,
welches global auf die Beobachtungen X bedingt wird Jede Zufallsvariable Yi erfüllt die Markov-Bedingung bzgl. des
Graphs, d.h.
25
Scheffer/Vanck: S
prachtechnologie
Conditional Random Fields (CRFs) Der Graph stellt die Abhängigkeitsstruktur
zwischen den Zufallsvariablen Yi dar
Clique kann ist ein Teilgraph, der als Eingabe-parameter für eine sogenannte Potenzialfunktion dient
26
Scheffer/Vanck: S
prachtechnologie
Potenzial Funktion
27
Potenzialfunktion ist auf einem Teilgraph (Clique) definiert
nennt man Transition-Feature-Funktion und wird State-Feature-Funktion
und sind Parameter, die mit Hilfe von Trainingsdaten gelernt werden müssen
Beispiel für die Konstruktion einer Feature-Funktion
Scheffer/Vanck: S
prachtechnologie
Conditional Random Fields (CRFs) Zusammenfassen und vereinfachte Darstellung der
Potenzial-Funktion
Jedes ist entweder oder
Daher können wir das Modell nun wie folgt formulieren
28
Scheffer/Vanck: S
prachtechnologie
Conditional Random Fields (CRFs) Normierungsfaktor Z:
Es gibt exponentiell viele Möglichkeiten für die Sequenzfolgen y. Effiziente Berechnung von Z aber mit dem Forward-Backward-Algorithmus möglich
29
Scheffer/Vanck: S
prachtechnologie
Parameterbestimmung Zu bestimmende Parameter bei einem CRF sind
die wi
Gegeben sind Trainingsdaten i.i.d. mit
Betrachte die Log-Likelihood-Funktion
30
Scheffer/Vanck: S
prachtechnologie
Parameterbestimmung Berücksichtigung von datenunabhängigem
Vorwissen. Wird mit einem Prior modelliert. Annahme: w ~ d.h.
dann gilt:
31
Scheffer/Vanck: S
prachtechnologie
Parameterbestimmung Bayes‘sche Regel: Postirior Likelihood*Prior Mit dem Prior erhält man folgenden MAP-Ansatz:
Das Maximum erhält man indem man den Gradienten nach w null setzt, d.h.
32
€
∝
Scheffer/Vanck: S
prachtechnologie
Parameterbestimmung Der Gradient sieht wie folgt aus:
Betrachte die Ableitung von log(Z):
33