Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik...

33
Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Transcript of Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik...

Page 1: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Universität Potsdam Institut für Informatik

Lehrstuhl Maschinelles Lernen

Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Page 2: Multiklassen SVM und CRFs - cs.uni-potsdam.de · 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  

Page 3: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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.

Page 4: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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:

Page 5: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 6: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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 ]]

Page 7: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Scheffer/Vanck: S

prachtechnologie

7

Multiklassen-SVM   Jede Klasse hat privaten Abschnitt des

Gewichtsvektors:

Page 8: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Scheffer/Vanck: S

prachtechnologie

8

Multiklassen-SVM   Jede Klasse hat privaten Abschnitt des

Gewichtsvektors:   Beispiel:

Page 9: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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 ]]

Page 10: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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.

Page 11: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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> →

Page 12: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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.  

Page 13: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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).

Page 14: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 15: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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:  

Page 16: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Scheffer/Vanck: S

prachtechnologie

16

Viterbi-Algorithmus, Theorem     Theorem:

  Beweis:

  Lineare Bestimmung des höchst-scorenden Pfades mit dynamischer Programmierung.

Page 17: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 18: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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.

Page 19: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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.

Page 20: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 21: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 22: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 23: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 24: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 25: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 26: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 27: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 28: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 29: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 30: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 31: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Scheffer/Vanck: S

prachtechnologie

Parameterbestimmung   Berücksichtigung von datenunabhängigem

Vorwissen. Wird mit einem Prior modelliert.   Annahme: w ~ d.h.

dann gilt:

31

Page 32: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

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

Page 33: Multiklassen SVM und CRFs - cs.uni-potsdam.de · Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Multiklassen SVM und CRFs Tobias Scheffer Thomas Vanck

Scheffer/Vanck: S

prachtechnologie

Parameterbestimmung   Der Gradient sieht wie folgt aus:

  Betrachte die Ableitung von log(Z):

33