Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Lineare Klassifikatoren IV Christoph Sawade, Blaine Nelson, Tobias Scheffer
Universität Potsdam Institut für Informatik
Lehrstuhl Maschinelles Lernen
Lineare Klassifikatoren IV
Christoph Sawade, Blaine Nelson, Tobias Scheffer
Maschin
elle
s L
ern
en
Inhalt Klassifikationsproblem
Bayes‘sche Klassenentscheidung
MAP-Modell
Logistische Regression
Empirische Risikominimierung
Perzeptron, Support Vector Machine
Ridge Regression, LASSO
Kernel
Representer Theorem
Duales Perzeptron, Duale SVM
Mercer Map
Lernen mit strukturierter Ein- und Ausgabe
Taxonomie, Sequenzen, Ranking,…
Dekoder, Schnittebenenalgorithmus
2
Maschin
elle
s L
ern
en
3
Review: Binäre SVM
Klassifikation bei mehr als zwei Klassen:
𝑦 𝐱 = sign 𝑓𝛉 𝐱 , 𝑓𝛉 𝐱 = 𝜙 𝐱 T𝛉
Ein Parametervektor 𝛉
Optimierungsproblem:
min𝛉,𝛏
𝜆 𝜉𝑖𝑛𝑖=1 +
1
2𝛉T𝛉
unter den Nebenbedingungen
𝜉𝑖 ≥ 0 und 𝑦𝑖𝜙 𝐱𝑖
T𝛉 ≥ 1 − 𝜉𝑖
Verallgemeinerung für 𝑘 Klassen?
Maschin
elle
s L
ern
en
Review: Multi-Klassen Logistische Regression
In der Multi-Klassen Fall hat das lineare Modell
Entscheidungsfunktion : 𝑓𝛉 𝐱, 𝑦 = 𝜙 𝐱 T𝛉𝑦 + 𝑏𝑦
& Klassifikator : 𝑦 𝐱 = argmax𝑧∈𝑌
𝑓𝛉 𝐱, 𝑧
Logistisches Modell für den Multi-Klassen Fall:
𝑃 𝑦|𝐱, 𝛉 =exp 𝜙 𝐱 T𝛉𝑦 + 𝑏𝑦
exp 𝜙 𝐱 T𝛉𝑧 + 𝑏𝑧𝑧∈𝑌
Der Prior ist eine Normalverteilung; 𝑝 𝛉 = 𝑁 𝛉; 𝟎, 𝚺
Die Maximum-A-Posteriori-Parameter ist
𝛉MAP = argmin𝛉
log Σ𝑧∈𝑌exp 𝑓𝛉 𝑥𝑖 , 𝑧 − 𝑓𝛉 𝐱𝑖 , 𝑦𝑖 +𝛉T𝚺−1𝛉
2
𝑛
𝑖=1
4
Verlustfunktion Regularisierer
Maschin
elle
s L
ern
en
Verallgemeinerung auf Multi-Klassen Probleme
Multi-Klassen logistische Regression
𝑦 𝐱 = sign 𝑓𝛉 𝐱 wurde 𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
Ein einziger Parametervektor 𝛉 wurde zu 𝛉 =
𝛉1, … , 𝛉𝑘T mit einer Komponente für jede Klasse
Für eine SVM mit 𝑘 Klassen
Regularisierer?
1
2𝛉T𝛉 becomes
1
2 𝛉𝑗
𝑇𝛉𝑗𝑘
𝑗=1
Abstand (Margin) Nebenbedingungen?
5
Maschin
elle
s L
ern
en
Verallgemeinerung auf Multi-Klassen Probleme
Multi-Klassen logistische Regression
𝑦 𝐱 = sign 𝑓𝛉 𝐱 wurde 𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
Ein einziger Parametervektor 𝛉 wurde zu 𝛉 =
𝛉1, … , 𝛉𝑘T mit einer Komponente für jede Klasse
Für eine SVM mit 𝑘 Klassen
Regularisierer?
1
2𝛉T𝛉 wird
1
2 𝛉𝑗
𝑇𝛉𝑗𝑘
𝑗=1
Abstand (Margin) Nebenbedingungen?
𝑦𝑖𝜙 𝐱𝑖T𝛉 ≥ 1 − 𝜉𝑖 wird
∀𝑦 ≠ 𝑦𝑖 𝑓𝛉 𝐱𝑖 , 𝑦𝑖 ≥ 𝑓𝛉 𝐱𝑖 , 𝑦 + 1 − 𝜉𝑖
6
Maschin
elle
s L
ern
en
[J.Weston, C.Watkins, 1999]
7
Multi-Klassen SVM
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦 , 𝑓𝛉 𝐱, 𝑦 = 𝜙 𝐱 T𝛉𝑦
Parametervektor für jede der möglichen 𝑘 Klassen
𝛉 = 𝛉1, … , 𝛉𝑘T
Optimierungsproblem:
min𝛉,𝛏
𝜆 𝜉𝑖𝑛𝑖=1 +
1
2 𝛉𝑗
𝑇𝛉𝑗𝑘
𝑗=1
unter den Nebenbedingungen
𝜉𝑖 ≥ 0 und ∀𝑦 ≠ 𝑦𝑖 𝑓𝛉 𝐱𝑖 , 𝑦𝑖 ≥ 𝑓𝛉 𝐱𝑖 , 𝑦 + 1 − 𝜉𝑖
Maschin
elle
s L
ern
en
Multi-Klassen Feature-Mapping
Verschiedene Gewichtsvektoren kann auch als
unterschiedliche Abschnitte eines Gewichtsvektors
gesehen werden (vgl. Logistische Regression):
𝛉 = 𝛉1, … , 𝛉𝑘T
Gemeinsame Repräsentation von Ein- und
Ausgabe:
Φ 𝐱, 𝑦 = 2 =
𝟎𝜙 𝐱⋮𝟎
8
𝑘 gestapelte
Featurevektoren
Maschin
elle
s L
ern
en
9
Multi-Klassen Feature-Mapping
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
Multi-Klassen-Kernel:
𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉
Λ 𝑦 =I 𝑦 = 1
⋮I 𝑦 = 𝑘
Φ 𝐱, 𝑦 = 𝜙 𝐱 ⨂Λ 𝑦 =𝜙 𝐱 I 𝑦 = 1
⋮𝜙 𝐱 I 𝑦 = 𝑘
Maschin
elle
s L
ern
en
10
Multi-Klassen Kernel-Kodierung
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
Multi-Klassen-Kernel:
𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉
Φ 𝐱, 𝑦 =𝑥1𝑥2
⨂I 𝑦 = 1
I 𝑦 = 2=
𝑥1I 𝑦 = 1
𝑥2I 𝑦 = 1
𝑥1I 𝑦 = 2
𝑥2I 𝑦 = 2
𝑘 𝐱𝑖 , 𝑦𝑖 , 𝐱𝑗 , 𝑦𝑗 = Φ 𝐱𝑖 , 𝑦𝑖𝑇Φ 𝐱𝑗 , 𝑦𝑗
= I 𝑦𝑖 = 𝑦𝑗1 if𝑦𝑖=𝑦𝑗0 otherwise
Maschin
elle
s L
ern
en
11
Multi-Klassen Kernel-Kodierung
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
Multi-Klassen-Kernel:
𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉
Φ 𝐱, 𝑦 =𝑥1𝑥2
⨂I 𝑦 = 1
I 𝑦 = 2=
𝑥1I 𝑦 = 1
𝑥2I 𝑦 = 1
𝑥1I 𝑦 = 2
𝑥2I 𝑦 = 2
𝑘 𝐱𝑖 , 𝑦𝑖 , 𝐱𝑗 , 𝑦𝑗 = Φ 𝐱𝑖 , 𝑦𝑖𝑇Φ 𝐱𝑗 , 𝑦𝑗
= I 𝑦𝑖 = 𝑦𝑗1 falls 𝑦𝑖=𝑦𝑗0 sonst
Maschin
elle
s L
ern
en
12
Klassifikation mit Information über Klassen
Klassen haben gewisse Merkmale:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉, Φ 𝐱, 𝑦 = 𝜙 𝐱 ⨂Λ 𝑦
𝑘 𝐱𝑖 , 𝑦𝑖 , 𝐱𝑗 , 𝑦𝑗 = Φ 𝐱𝑖 , 𝑦𝑖TΦ 𝐱𝑗 , 𝑦𝑗
= 𝜙 𝐱𝑖T𝜙 𝐱𝑗 Λ 𝑦𝑖
TΛ 𝑦𝑗
= 𝑘 𝐱𝑖 , 𝐱𝑗 Λ 𝑦𝑖TΛ 𝑦𝑗
𝐾𝑜𝑟𝑟𝑒𝑠𝑝𝑜𝑛𝑑𝑒𝑛𝑧 𝑧𝑤𝑖𝑠𝑐ℎ𝑒𝑛 𝐾𝑙𝑎𝑠𝑠𝑒𝑛
Maschin
elle
s L
ern
en
13
Klassifikation mit Informationen über Klassen
Klassen haben gewisse Merkmale:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦
𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉, Φ 𝐱, 𝑦 = 𝜙 𝐱 ⨂Λ 𝑦
𝑘 𝐱𝑖 , 𝑦𝑖 , 𝐱𝑗 , 𝑦𝑗 = Φ 𝐱𝑖 , 𝑦𝑖TΦ 𝐱𝑗 , 𝑦𝑗
= 𝜙 𝐱𝑖T𝜙 𝐱𝑗 Λ 𝑦𝑖
TΛ 𝑦𝑗
= 𝑘 𝐱𝑖 , 𝐱𝑗 Λ 𝑦𝑖TΛ 𝑦𝑗
𝐾𝑜𝑟𝑟𝑒𝑠𝑝𝑜𝑛𝑑𝑒𝑛𝑧 𝑧𝑤𝑖𝑠𝑐ℎ𝑒𝑛 𝐾𝑙𝑎𝑠𝑠𝑒𝑛
Korrespondenz der Klassen Λ 𝑦𝑖TΛ 𝑦𝑗 :
z.B. Skalarprodukt der Klassenbeschreibungen.
Λ 𝑦𝑖 : TF-Vektor über alle Wörter.
Maschin
elle
s L
ern
en
14
Multi-Klassen SVM
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦 .
𝑓 hat jetzt zwei Parameter.
Gemeinsame Merkmale von Ein- und Ausgabe:
𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉.
Gleicher Ansatz für Multiklassen, Sequenz- und
Struktur-Lernen, Ranking.
Maschin
elle
s L
ern
en
𝐱 kodiert z.B. ein Dokument
𝑦 = 2 kodiert Klasse
Φ 𝐱, 𝑦 =
I 𝑦 = 1 𝐱
I 𝑦 = 2 𝐱
I 𝑦 = 3 𝐱
I 𝑦 = 4 𝐱
I 𝑦 = 5 𝐱
I 𝑦 = 6 𝐱⋮
=
𝟎𝐱𝟎𝟎𝟎𝟎⋮
Multi-Klassen SVM Beispiel
15
1
2
3
4
5
6
Maschin
elle
s L
ern
en
𝐱 kodiert z.B. ein Dokument
𝑦 = 2 kodiert Klasse
Φ 𝐱, 𝑦 =
I 𝑦 = 1 𝐱
I 𝑦 = 2 𝐱
I 𝑦 = 3 𝐱
I 𝑦 = 4 𝐱
I 𝑦 = 5 𝐱
I 𝑦 = 6 𝐱⋮
=
𝟎𝐱𝟎𝟎𝟎𝟎⋮
Multi-Klassen SVM Beispiel
16
1
2
3
4
5
6
Maschin
elle
s L
ern
en
17
Multi-Klassen SVM
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦 , 𝑓𝛉 𝐱, 𝑦 = 𝜙 𝐱 T𝛉𝑦
Parametervektor für jede der möglichen 𝑘 Klassen
𝛉 = 𝛉1, … , 𝛉𝑘T
Optimierungsproblem:
min𝛉,𝛏
𝜆 𝜉𝑖𝑛𝑖=1 +
1
2 𝛉𝑗
𝑇𝛉𝑗𝑘
𝑗=1
unter den Nebenbedingungen
𝜉𝑖 ≥ 0 und ∀𝑦 ≠ 𝑦𝑖 𝑓𝛉 𝐱𝑖 , 𝑦𝑖 ≥ 𝑓𝛉 𝐱𝑖 , 𝑦 + 1 − 𝜉𝑖
Maschin
elle
s L
ern
en
18
Multi-Klassen SVM
Klassifikation mit mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦 , 𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉
Parametervektor für jede der möglichen 𝑘 Klassen
𝛉 = 𝛉1, … , 𝛉𝑘T
Optimierungsproblem:
min𝛉,𝛏
𝜆 𝜉𝑖𝑛𝑖=1 +
1
2𝛉T𝛉
unter den Nebenbedingungen
𝜉𝑖 ≥ 0 und ∀𝑦 ≠ 𝑦𝑖 𝑓𝛉 𝐱𝑖 , 𝑦𝑖 ≥ 𝑓𝛉 𝐱𝑖 , 𝑦 + 1 − 𝜉𝑖
Maschin
elle
s L
ern
en
STRUKTURIERTE AUSGABE
19
Maschin
elle
s L
ern
en
20
Taxonomien
Angenommen die Ähnlichkeiten der 𝑘 Klassen sind
durch eine Baumstruktur (Tiefe 𝑑) gegeben:
Jede Klasse entspricht einem Pfad im Baum;
𝐲 = 𝑦1, … , 𝑦𝑑 .
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11 Homininae
Hominini Gorillini
Pan Homo Gorilla
Maschin
elle
s L
ern
en
21
Taxonomien
Angenommen die Ähnlichkeiten der 𝑘 Klassen sind
durch eine Baumstruktur (Tiefe 𝑑) gegeben:
Jede Klasse entspricht einem Pfad im Baum;
𝐲 = 𝑦1, … , 𝑦𝑑 .
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11 Homininae
Hominini Gorillini
Pan Homo Gorilla
𝐶ℎ𝑖𝑚𝑝𝑎𝑛𝑧𝑒𝑒 = 𝐻𝑜𝑚𝑖𝑛𝑖𝑛𝑎𝑒, 𝐻𝑜𝑚𝑖𝑛𝑖𝑛𝑖, 𝑃𝑎𝑛
Maschin
elle
s L
ern
en
22
Taxonomien
Angenommen die Ähnlichkeiten der 𝑘 Klassen sind
durch eine Baumstruktur (Tiefe 𝑑) gegeben:
Jede Klasse entspricht einem Pfad im Baum;
𝐲 = 𝑦1, … , 𝑦𝑑 .
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11 Homininae
Hominini Gorillini
Pan Homo Gorilla
𝐻𝑢𝑚𝑎𝑛 = 𝐻𝑜𝑚𝑖𝑛𝑖𝑛𝑎𝑒, 𝐻𝑜𝑚𝑖𝑛𝑖𝑛𝑖, 𝐻𝑜𝑚𝑜
Maschin
elle
s L
ern
en
23
Taxonomien
Angenommen die Ähnlichkeiten der 𝑘 Klassen sind
durch eine Baumstruktur (Tiefe 𝑑) gegeben:
Jede Klasse entspricht einem Pfad im Baum;
𝐲 = 𝑦1, … , 𝑦𝑑 .
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11 Homininae
Hominini Gorillini
Pan Homo Gorilla
W. Gorilla= 𝐻𝑜𝑚𝑖𝑛𝑖𝑛𝑎𝑒, 𝐺𝑜𝑟𝑖𝑙𝑙𝑖𝑛𝑖, 𝐺𝑜𝑟𝑖𝑙𝑙𝑎
Maschin
elle
s L
ern
en
24
Klassifikation mit Taxonomien
Klassen in Baumstruktur (Tiefe 𝑑)
Die Klasse für ein 𝐱 ist ein Pfad im
Klassenbaum 𝐲 = 𝑦1, … , 𝑦𝑑 .
Kodierung der gemeinsamen Merkmale von Ein-
und Ausgabe?
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11
Maschin
elle
s L
ern
en
25
Klassifikation mit Taxonomien
Klassen in Baumstruktur (Tiefe 𝑑):
𝐲 𝐱 = argmax𝐲
𝑓𝛉 𝐱, 𝐲
𝑓𝛉 𝐱, 𝐲 = Φ 𝐱, 𝐲 T𝛉
𝐲 = 𝑦1, … , 𝑦𝑑
Λ 𝐲 =Λ 𝑦1
⋮Λ 𝑦𝑑
Λ 𝑦𝑖 =
𝐼 𝑦𝑖 = 𝑣1𝑖
⋮𝐼 𝑦𝑖 = 𝑣𝑛𝑖
𝑖
Φ 𝐱, 𝐲 = 𝜙 𝐱 ⨂Λ 𝑦 = 𝜙 𝐱 ⨂Λ 𝑦1
⋮Λ 𝑦𝑑
= 𝜙 𝐱 ⨂
I 𝑦1 = 𝑣11
⋮I 𝑦1 = 𝑣𝑛1
1
⋮I 𝑦𝑑 = 𝑣1
𝑑
⋮I 𝑦𝑑 = 𝑣𝑛𝑑
𝑑
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11
Maschin
elle
s L
ern
en
𝐱 kodiert z.B. ein Dokument
𝐲 = 𝑣11, 𝑣2
2, 𝑣33 T ist ein Pfad z.B. in einem Themenbaum
Φ 𝐱, 𝐲 =
I 𝑦1 = 𝑣11 𝐱
I 𝑦2 = 𝑣12 𝐱
I 𝑦2 = 𝑣22 𝐱
I 𝑦3 = 𝑣13 𝐱
I 𝑦3 = 𝑣23 𝐱
I 𝑦3 = 𝑣33 𝐱
⋮
=
𝐱𝟎𝐱𝟎𝟎𝐱⋮
Klassifikation mit Taxonomien Beispiel
26
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11
Maschin
elle
s L
ern
en
𝐱 kodiert z.B. ein Dokument
𝐲 = 𝑣11, 𝑣2
2, 𝑣33 T ist ein Pfad z.B. in einem Themenbaum
Φ 𝐱, 𝐲 =
I 𝑦1 = 𝑣11 𝐱
I 𝑦2 = 𝑣12 𝐱
I 𝑦2 = 𝑣22 𝐱
I 𝑦3 = 𝑣13 𝐱
I 𝑦3 = 𝑣23 𝐱
I 𝑦3 = 𝑣33 𝐱
⋮
=
𝐱𝟎𝐱𝟎𝟎𝐱⋮
Klassifikation mit Taxonomien Beispiel
27
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11
Maschin
elle
s L
ern
en
28
Klassifikation mit Taxonomien Kernelisierung
Klassen in Baumstruktur (Tiefe 𝑑):
𝐲 𝐱 = argmax𝐲
𝑓𝛉 𝐱, 𝐲
𝑓𝛉 𝐱, 𝐲 = Φ 𝐱, 𝐲 T𝛉
𝐲 = 𝑦1, … , 𝑦𝑑
𝑘 𝐱𝑖 , 𝐲𝑖 , 𝐱𝑗 , 𝐲𝑗 = Φ 𝐱𝑖 , 𝐲𝑖𝑇Φ 𝐱𝑗 , 𝐲𝑗
= 𝜙 𝐱𝑖T𝜙 𝐱𝑗 Λ 𝐲𝑖
𝑇Λ 𝐲𝑗
= 𝑘 𝐱𝑖 , 𝐱𝑗 Λ 𝑦𝑖𝑙 T
Λ 𝑦𝑗𝑙𝑑
𝑙=1
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11
Maschin
elle
s L
ern
en
29
Klassifikation mit Taxonomien: Dekoding / Vorhersage
Klassen in Baumstruktur (Tiefe 𝑑) :
𝑓𝛉 𝐱, 𝐲 = Φ 𝐱, 𝐲 T𝛉
𝐲 𝐱 = argmax𝐲
𝑓𝛉 𝐱, 𝑦
= argmax𝐲
𝛼𝑖𝑘 𝐱𝑖 , 𝐲𝑖 , 𝐱, 𝐲𝑛𝑖=1
= argmax𝐲
𝛼𝑖𝑘 𝐱𝑖 , 𝐱 Λ 𝐲𝑖𝑇Λ 𝐲𝑛
𝑖=1
= argmax𝐲
𝛼𝑖𝑘 𝐱𝑖 , 𝐱 Λ 𝑦𝑖𝑙 𝑇
Λ 𝑦𝑙𝑑𝑙=1
𝑛𝑖=1
𝑣33 𝑣2
3 𝑣13
𝑣12 𝑣2
2
𝑣11
Maschin
elle
s L
ern
en
Klassifikation mit strukturierten Labeln
Die Struktur der Ausgabeklasse 𝑌 wird in der
Definition von Λ 𝐲 kodiert.
Das gemeinsame Featuremap Φ 𝐱, 𝐲 = 𝜙 𝐱 ⨂Λ 𝐲
erfasst die Struktur des Eingabe- und des
Klassenraums und ermöglicht das Lernen auf
diesen Strukturen.
Dies definiert einen Multi-Klassen-Kernel auf dem
Ein- und Ausgaberaum:
𝑘 𝐱𝑖 , 𝐲𝑖 , 𝐱𝑗 , 𝐲𝑗 = 𝑘 𝐱𝑖 , 𝐱𝑗 Λ 𝐲𝑖TΛ 𝐲𝑗
30
Maschin
elle
s L
ern
en
KOMPLEXE STRUKTUREN
31
Maschin
elle
s L
ern
en
Komplexe strukturierte Ausgaben
Ausgaberaum Y beinhaltet komplexe Objekte
Darstellung als Kombination von binären
Vorhersageproblemen?
Beispiele:
Wortart- und Eigennamenerkennung
Natural Language Parsing
Sequence Alignment
…
32
Maschin
elle
s L
ern
en
33
Komplexe Ausgabe Tagging
Sequentielle Ein-/Ausgaben
Wortarterkennung
𝐱 = “Curiosity kills the cat“ → 𝐲 = Noun, Verb, Determiner, Noun
Eigennamenerkennung, Informationsextraktion: 𝐱 = “Barbie meets Ken“ → 𝐲 = 𝑃𝑒𝑟𝑠𝑜𝑛,−, 𝑃𝑒𝑟𝑠𝑜𝑛
Maschin
elle
s L
ern
en
34
Komplexe Ausgabe Parsing
Natural Language Parsing
𝐱 =“Curiosity killed the cat.” →
S
NP VP
N
NP
V Det N
Curiosity killed the cat
Maschin
elle
s L
ern
en
35
Komplexe Ausgabe Alignments
Sequence Alignment
Gegeben seien zwei Sequenzen
Vorhersage ist ein Alignment
s=(ABJLHBNJYAUGAI)
t=(BHJKBNYGU)
AB-JLHBNJYAUGAI
BHJK-BN-YGU 𝐱 = →
Maschin
elle
s L
ern
en
Komplexe strukturierte Ausgaben
Ausgaberaum Y beinhaltet komplexe Objekte
Mehrstufenverfahren propagieren Fehler
Warum ist das kein einfaches Multiklassen-
Problem?
36
The dog chased the cat
…
Det V N V N
NP
VP VP S
𝐲1
Det Det N V N
NP
VP NP S 𝐲2
Det Det N V N
NP
VP S 𝐲𝑘
NP
Maschin
elle
s L
ern
en
37
Beispiel: POS-Tagging (Wortarterkennung)
Satz 𝐱 =“Curiosity killed the cat”
Gewünscht:
argmax𝑦
Φ 𝐱, 𝐲 T𝛉 ≡ N, V, Det, N
Explizit:
Φ 𝐱, N, V, Det, N T𝛉 ≥ Φ 𝐱, N, N, N, N T𝛉
Φ 𝐱, N, V, Det, N T𝛉 ≥ Φ 𝐱, N, N, N, V T𝛉
Φ 𝐱, N, V, Det, N T𝛉 ≥ Φ 𝐱, N, N, V, N T𝛉
Φ 𝐱, N, V, Det, N T𝛉 ≥ Φ 𝐱, N, N, V, V T𝛉
Φ 𝐱, N, V, Det, N T𝛉 ≥ Φ 𝐱, N, V, N, N T𝛉
⋮ ⋮
ZU VIELE!!!
Lernen mit strukturierten Ausgaben
Maschin
elle
s L
ern
en
Ausgaberaum Y beinhaltet komplexe Objekte.
Mehrstufenverfahren propagieren Fehler
Exponentielle Anzahl von Klassen führt potentiell zu
exponentiell vielen zu schätzenden Parametern;
uneffizienter Vorhersage;
uneffizientem Lernalgorithmus.
Komplexe strukturierte Ausgaben
38
Maschin
elle
s L
ern
en
39
Komplexe strukturierte Ausgaben
Exponentielle Anzahl von Klassen führt potentiell zu
exponentiell vielen zu schätzenden Parametern;
uneffizienter Vorhersage;
uneffizientem Lernalgorithmus.
Klassifikation bei mehr als zwei Klassen:
𝐲 𝐱 = argmax𝐲
𝑓𝛉 𝐱, 𝐲 = argmax𝐲
Φ 𝐱, 𝐲 T𝛉
Um Anzahl der Parameter zu reduzieren, benötigt
man effiziente Repräsentation der Ein- und
Ausgabe Φ 𝐱, 𝐲 .
Repräsentation hängt von konkreter
Problemstellung ab.
Maschin
elle
s L
ern
en
Label-label: Φ𝑖 = 𝜙𝑖 𝑦𝑡 , 𝑦𝑡+1𝑡
Label-observation: Φ𝑗 = 𝜙 𝑗 𝑥𝑡 , 𝑦𝑡𝑡
gemeinsames Featurmapping:
Φ 𝐱, 𝐲 = … ,𝜙𝑁,𝑉 𝑦𝑡 , 𝑦𝑡+1 , … , 𝜙 𝑐𝑎𝑡,𝑁 𝑥𝑡 , 𝑦𝑡 , …T
𝑡
Gewichtsvektor 𝐰 = … ,𝑤𝑁,𝑉 , … , 𝑤𝑐𝑎𝑡,𝑁, …T
Attribut für jedes Paar benachbarter
Labels 𝑦𝑡 und 𝑦𝑡+1.
𝜙𝑁,𝑉 𝑦𝑡 , 𝑦𝑡+1 = 𝐈 𝑦𝑡 = Noun ∧ 𝑦𝑡+1 = Verb
Attribut für jedes Paar aus Eingabe und
Ausgabe.
𝜙 𝑐𝑎𝑡,𝑁 𝑥𝑡 , 𝑦𝑡 = 𝐈 𝑥𝑡 = cat ∧ 𝑦𝑡 = Noun
40
Beispiel: Sequentielle Ein-/Ausgaben (Feature-Mapping)
𝑦1 𝑦3
𝑥1 𝑥2
𝑦2
𝑥3
𝑦4
𝑥4
Curiosity killed the cat
Maschin
elle
s L
ern
en
41
Beispiel: Sequentielle Ein-/Ausgaben (Dekodierung / Vorhersage)
Um eine Sequenz zu klassifizieren, muss 𝐲 𝐱 = argmax
𝐲𝑓𝛉 𝐱, 𝐲
berechnet werden.
Das argmax geht über alle möglichen Sequenzen (exponentiell viele in der Länge).
𝑓𝛉 𝐱, 𝐲 = Φ 𝐱, 𝐲 T𝛉 summiert über Merkmale benachbarter Label-Paare und Merkmale von 𝐱𝑖 , 𝐲𝑖 -Paaren.
Die Summanden unterscheiden sich nur dort, wo sich auch die 𝐲-Sequenzen unterscheiden.
Mit dynamischer Programmierung kann argmax in linearer Zeit berechnet werden (Viterbi Algorithmus).
Maschin
elle
s L
ern
en
42
Beispiel: Sequentielle Ein-/Ausgaben (Dekodierung / Vorhersage)
Um eine Sequenz zu klassifizieren, berechnen wir 𝐲 𝐱 = argmax
𝐲𝑓𝛉 𝐱, 𝐲
Mit Hilfe der dynamischen Programmierung berechnen wir dieses argmax in linearer Zeit (Viterbi).
Idee: wir können die Maximalfolgen zum Zeitpunkt 𝑡 mittels der Maximalfolgen bis 𝑡 − 1 berechnen
𝑦𝑡−1 =
𝑁 𝛾𝑁𝑡−1
𝑉 𝛾𝑉𝑡−1
𝐷 𝛾𝐷𝑡−1
𝑦𝑡 =
𝑁 𝛾𝑁𝑡
𝑉 𝛾𝑉𝑡
𝐷 𝛾𝐷𝑡
𝑥𝑡 = 𝑐𝑎𝑡
𝛾𝑁𝑡 = max
𝑧𝑤𝑧,𝑁 + 𝛾𝑧
𝑡−1 +𝑤𝑐𝑎𝑡,𝑁
𝑝𝑁𝑡 = argmax
𝑧…
Maschin
elle
s L
ern
en
43
Beispiel: Sequentielle Ein-/Ausgaben (Dekodierung / Vorhersage)
Um eine Sequenz zu klassifizieren, berechnen wir 𝐲 𝐱 = argmax
𝐲𝑓𝛉 𝐱, 𝐲
Mit Hilfe der dynamischen Programmierung berechnen wir dieses argmax in linearer Zeit (Viterbi).
Idee: wir können die Maximalfolgen zum Zeitpunkt 𝑡 mittels der Maximalfolgen bis 𝑡 − 1 berechnen
𝑦𝑡−1 =
𝑁 𝛾𝑁𝑡−1
𝑉 𝛾𝑉𝑡−1
𝐷 𝛾𝐷𝑡−1
𝑦𝑡 =
𝑁 𝛾𝑁𝑡
𝑉 𝛾𝑉𝑡
𝐷 𝛾𝐷𝑡
𝑥𝑡 = 𝑐𝑎𝑡
𝛾𝑁𝑡 = max
𝑧𝑤𝑧,𝑁 + 𝛾𝑧
𝑡−1 +𝑤𝑐𝑎𝑡,𝑁
𝑝𝑁𝑡 = argmax
𝑧…
Maschin
elle
s L
ern
en
44
Beispiel: Sequentielle Ein-/Ausgaben (Dekodierung / Vorhersage)
Um eine Sequenz zu klassifizieren, berechnen wir 𝐲 𝐱 = argmax
𝐲𝑓𝛉 𝐱, 𝐲
Mit Hilfe der dynamischen Programmierung berechnen wir dieses argmax in linearer Zeit (Viterbi).
Idee: wir können die Maximalfolgen zum Zeitpunkt 𝑡 mittels der Maximalfolgen bis 𝑡 − 1 berechnen
𝑦𝑡−1 =
𝑁 𝛾𝑁𝑡−1
𝑉 𝛾𝑉𝑡−1
𝐷 𝛾𝐷𝑡−1
𝑦𝑡 =
𝑁 𝛾𝑁𝑡
𝑉 𝛾𝑉𝑡
𝐷 𝛾𝐷𝑡
𝑥𝑡 = 𝑐𝑎𝑡
𝛾𝑉𝑡 = max
𝑧𝑤𝑧,𝑉 + 𝛾𝑧
𝑡−1 +𝑤𝑐𝑎𝑡,𝑉
𝑝𝑉𝑡 = argmax
𝑧…
Maschin
elle
s L
ern
en
45
Beispiel: Sequentielle Ein-/Ausgaben (Dekodierung / Vorhersage)
Um eine Sequenz zu klassifizieren, berechnen wir 𝐲 𝐱 = argmax
𝐲𝑓𝛉 𝐱, 𝐲
Mit Hilfe der dynamischen Programmierung berechnen wir dieses argmax in linearer Zeit (Viterbi).
Idee: wir können die Maximalfolgen zum Zeitpunkt 𝑡 mittels der Maximalfolgen bis 𝑡 − 1 berechnen
𝑦𝑡−1 =
𝑁 𝛾𝑁𝑡−1
𝑉 𝛾𝑉𝑡−1
𝐷 𝛾𝐷𝑡−1
𝑦𝑡 =
𝑁 𝛾𝑁𝑡
𝑉 𝛾𝑉𝑡
𝐷 𝛾𝐷𝑡
𝑥𝑡 = 𝑐𝑎𝑡
𝛾𝐷𝑡 = max
𝑧𝑤𝑧,𝐷 + 𝛾𝑧
𝑡−1 +𝑤𝑐𝑎𝑡,𝐷
𝑝𝐷𝑡 = argmax
𝑧…
Maschin
elle
s L
ern
en
46
Beispiel: Sequentielle Ein-/Ausgaben (Dekodierung / Vorhersage)
Um eine Sequenz zu klassifizieren, berechnen wir 𝐲 𝐱 = argmax
𝐲𝑓𝛉 𝐱, 𝐲
Mit Hilfe der dynamischen Programmierung berechnen wir dieses argmax in linearer Zeit (Viterbi).
Idee: wir können die Maximalfolgen zum Zeitpunkt 𝑡 mittels der Maximalfolgen bis 𝑡 − 1 berechnen
Sobald 𝛾∗𝑡 für die gesamte Sequenz berechnet wurde,
maximieren wir 𝛾∗𝑇 und folgen den Zeigern 𝑝∗
𝑡 rückwärts, um die maximale Sequenz zu finden.
𝑦1 𝑦3
𝑥1 𝑥2
𝑦2
𝑥3
𝑦4
𝑥4
Curiosity killed the cat
N
D V
N
Maschin
elle
s L
ern
en
Strukturierte Ausgaberäume Sequentielle Ein-/Ausgaben
Dekoderierung: Viterbi-Algorithmus
Feature-Mapping:
Einträge für benachbarte Zustände
𝜙𝑁,𝑉 𝑦𝑡, 𝑦𝑡+1 = 𝐈 𝑦𝑡 = Noun ∧ 𝑦𝑡+1 = Verb
Einträge für Beobachtungen in einem Zustand
𝜙 𝑐𝑎𝑡,𝑁 𝑥𝑡 , 𝑦𝑡 = 𝐈 𝑥𝑡 = cat ∧ 𝑦𝑡 = Noun
47
Maschin
elle
s L
ern
en
48
gemeinsames Featuremapping:
Φ 𝐱, 𝐲 = … , 𝜙𝑁𝑃→𝑁 𝐲 ,… , 𝜙𝑁→𝑐𝑎𝑡(x, y), …T
Gewichtsvektor: 𝐰 = … ,𝑤𝑁𝑃→𝑁, … , 𝑤𝑁→𝑐𝑎𝑡 , …T
Dekodierung mit dynamischer Programmierung
CKY-Parser, 𝑂 𝑛3 .
Strukturierte Ausgaberäume Natural Language Parsing
S
NP VP
N
NP
V Det N
Curiosity killed the cat Φ 𝐱, 𝐲 =
1101⋮01
𝑆 → 𝑁𝑃, 𝑉𝑃𝑁𝑃 → 𝑁𝑉𝑃 → 𝑉𝑉𝑃 → 𝑉,𝑁𝑃
𝑁 → 𝑎𝑡𝑒𝑁 → 𝑐𝑎𝑡
𝐲 =
𝐱 =
𝜙𝑁𝑃→𝑁 𝐲 = 𝐈 𝑦𝑝 = 𝑁𝑃 → 𝑁𝑝∈𝐲
𝜙𝑁→𝑐𝑎𝑡 𝐱, 𝐲 = 𝐈 𝑦𝑝 = 𝑁 → 𝑐𝑎𝑡𝑝∈𝐲
Maschin
elle
s L
ern
en
49
Strukturierte Ausgaberäume Kollektive Klassifikation
Attribut für jedes Paar
benachbarter Labels 𝐲𝑡 und 𝐲𝑡+1.
𝜙123 𝑦𝑖 , 𝑦𝑗
Attribut für jedes Paar aus Eingabe
und Ausgabe.
𝜙 𝑐𝑎𝑡,𝑁 𝑥𝑡 , 𝑦𝑡 = I 𝑦𝑡 = 𝐼𝑛𝑠𝑡𝑖𝑡𝑢𝑡𝑒 ∧ 𝑥𝑡 =
Dekoder: Message Passing Algorithmus.
y1
y3
y4
y2
x1
x3 x2
x4
Maschin
elle
s L
ern
en
50
Komplexe strukturierte Ausgaben
Exponentielle Anzahl von Klassen führt potentiell zu
exponentiell vielen zu schätzenden Parametern;
uneffizienter Vorhersage;
uneffizientem Lernalgorithmus.
Optimierungsproblem:
min𝛉,𝛏
𝜆 𝜉𝑖𝑛𝑖=1 +
1
2𝛉 2
2
unter den Nebenbedingungen
𝜉𝑖 ≥ 0 and ∀𝐲 ≠ 𝐲𝑖 𝑓𝛉 𝐱𝑖 , 𝐲𝑖 ≥ 𝑓𝛉 𝐱𝑖 , 𝐲 + 1 − 𝜉𝑖
Exponentielle Anzahl
Effiziente Kodierung
Maschin
elle
s L
ern
en
51
Lernen mit strukturierten Ausgaben
Optimierungsproblem:
min𝛉,𝛏
𝜆 𝜉𝑖𝑛𝑖=1 +
1
2𝛉 2
2
unter den Nebenbedingungen
𝜉𝑖 ≥ 0 and ∀𝐲 ≠ 𝐲𝑖 𝑓𝛉 𝐱𝑖 , 𝐲𝑖 ≥ 𝑓𝛉 𝐱𝑖 , 𝐲 + 1 − 𝜉𝑖
Optimierung durch iteratives Training.
Negative Constraints werden
hinzugefügt, wenn beim
Training Fehler auftritt.
[Tsochantaridis et al., 2004]
Exponentielle Anzahl
Maschin
elle
s L
ern
en
52
Lernen mit strukturierten Ausgaben Schnittebenenalgorithmus
Gegeben: 𝐿 = 𝐱1, 𝐲1 , … , 𝐱𝑛, 𝐲𝑛
Wiederhole bis alle Sequenzen korrekt
vorhergesagt werden.
Iteriere über alle Beispiele 𝐱𝑖 , 𝐲𝑖 .
Bestimme 𝐲 = argmax𝐲≠𝐲𝑖
Φ 𝐱𝑖 , 𝐲T𝛉
Wenn Φ 𝐱𝑖 , 𝐲𝑖T𝛉 < Φ 𝐱𝑖 , 𝐲
T𝛉 + 1 (Margin-Verletzung)
dann füge Constraint Φ 𝐱𝑖 , 𝐲𝑖T𝛉 < Φ 𝐱𝑖 , 𝐲
T𝛉 + 1 − 𝜉𝑖 dem Working Set hinzu.
Löse Optimierungsproblem für Eingabe 𝐱𝑖, Ausgabe 𝐲𝑖, und negative Pseudo-Beispiele 𝐲 (working set).
Liefere 𝛉 zurück.
Maschin
elle
s L
ern
en
Strukturierte Ausgaberäume
Allgemeines Framework
Anpassen von
Verlustfunktion
Gemeinsamer Repräsentation der Ein- und Ausgabe
Dekoder
𝐲 = argmax𝐲≠𝐲𝑖
Φ 𝐱𝑖 , 𝐲T𝛉
ggf. mit Verlustfunktion
Implementation: http://www.cs.cornell.edu/People/tj/svm_light/svm_struct.html
53
Maschin
elle
s L
ern
en
Ausgaberaum Y beinhaltet komplexe Objekte.
Mehrstufenverfahren propagieren Fehler
Exponentielle Anzahl von Klassen, aber
weniger zu schätzende Parameter;
effiziente Vorhersage;
effizienter Lernalgorithmus.
Strukturierte Ein-/Ausgaben
54
Feature-Mapping: reduziert
die Anzahl der Parameter
für jede Klasse
Problemspezifische
Kodierung Schnittebenenalgorithmus
Maschin
elle
s L
ern
en
RANKING
55
Maschin
elle
s L
ern
en
Ranking
Können wir das Lernen auch auf andere Arten von
strukturierten Ausgaben erweitern?
Ranking – jede Ausgabe ist eine Sortierung
Wir wollen diese Reihenfolge benutzen, um den
Lernalgorithmus zu verbessern.
56
Maschin
elle
s L
ern
en
57
Ranking
Instanzen sollen in die richtige Reihenfolge
gebracht werden.
z.B. Relevanz-Ranking von Suchergebnissen.
z.B. Relevanz-Ranking von Produktempfehlungen.
Beispiele sind Paare:
𝐿 = 𝑓 𝐱𝑖 ≥ 𝑓 𝐱𝑗 , …
≡ 𝐱𝑖 soll im Ranking vor 𝐱𝑗 stehen
Maschin
elle
s L
ern
en
58
Ranking
Relevanz-Ranking von Suchergebnissen.
Webseiten 𝐱𝑖, Suchanfrage 𝐪.
Gemeinsame Merkmalsrepräsentation Φ 𝐱𝑖 , 𝐪 von
Webseite und Suchanfrage.
Φ 𝐱𝑖 , 𝐪 kann Vektor verschiedener Merkmale der
Übereinstimmung von 𝐱𝑖 und 𝐪 sein.
z.B. Anzahl übereinstimmende, Wörter;
Übereinstimmungen in H1-Umgebung, PageRank, …
Beispiele sind Paare:
𝐿 = 𝑓 𝐱𝑖 , 𝐪 ≥ 𝑓 𝐱𝑗 , 𝐪 , …
≡ 𝐱𝑖 soll für Anfrage 𝐪 im Ranking vor 𝐱𝑗 stehen
Maschin
elle
s L
ern
en
59
Ranking
Relevanz-Ranking von Suchergebnissen.
Beispiele sind Paare:
𝐿 = 𝑓 𝐱𝑖 , 𝐪 ≥ 𝑓 𝐱𝑗 , 𝐪 , …
≡ 𝐱𝑖 soll für Anfrage 𝐪 im Ranking vor 𝐱𝑗 stehen
Beispiele können z.B. aus Klick-Daten gewonnen
werden.
Ein Benutzer stellt Anfrage 𝐪, bekommt
Ergebnisliste, klickt dann auf i-tes Listenelement 𝐱𝑖.
Verwirft damit Listenelemente 1..i-1 implizit.
Für diesen Benutzer und Anfrage 𝐪 hätte 𝐱𝑖 an
erster Stelle stehen sollen.
Maschin
elle
s L
ern
en
60
Ranking
Relevanz-Ranking von Suchergebnissen.
Beispiele sind Paare:
𝐿 = 𝑓 𝐱𝑖 , 𝐪 ≥ 𝑓 𝐱𝑗 , 𝐪 , …
Ein Benutzer stellt Anfrage 𝐪, bekommt
Ergebnisliste, klickt dann auf i-tes Listenelement 𝐱𝑖.
Für diesen Benutzer und Anfrage 𝐪 hätte 𝐱𝑖 an erster
Stelle stehen sollen.
Daraus ergeben sich Beispiele:
𝐿𝐪 = 𝑓 𝐱𝑖 , 𝐪 ≥ 𝑓 𝐱1, 𝐪 , … , 𝑓 𝐱𝑖 , 𝐪 ≥ 𝑓 𝐱𝑖−1, 𝐪
Maschin
elle
s L
ern
en
61
Ranking
Gegeben: Beispiele
𝐿 =
𝑓 𝐱1𝑖1 , 𝐪1 ≥ 𝑓 𝐱11, 𝐪1 , … , 𝑓 𝐱1𝑖1 , 𝐪1 ≥ 𝑓 𝐱1𝑖1−1, 𝐪1
⋮
𝑓 𝐱𝑚𝑖𝑚 , 𝐪𝑚 ≥ 𝑓 𝐱𝑚1, 𝐪𝑚 , … , 𝑓 𝐱𝑚𝑖𝑚 , 𝐪𝑚 ≥ 𝑓 𝐱𝑚𝑖𝑚−1, 𝐪𝑚
Löse
min𝐰,𝛏
12 𝐰 2 + 𝐶 𝜉𝑗𝑖
𝑖𝑗
𝑠. 𝑡. ∀𝑗 ∀ 𝑖 < 𝑖𝑗 𝑤T Φ 𝐱𝑗𝑖𝑗 , 𝐪𝑗 −Φ 𝐱𝑗𝑖 , 𝐪𝑗 ≥ 1 − 𝜉𝑗𝑖
∀𝑗 ∀𝑖 𝜉𝑗𝑖 ≥ 0
Maschin
elle
s L
ern
en
Lernen mit strukturierter Ein- und Ausgabe - Zusammenfassung
Klassifikation bei mehr als zwei Klassen:
𝑦 𝐱 = argmax𝑦
𝑓𝛉 𝐱, 𝑦 , 𝑓𝛉 𝐱, 𝑦 = Φ 𝐱, 𝑦 T𝛉
Lernen formuliert als Multi-Klassen SVM
Struktur der 𝑌 ist durch Λ 𝐲 gegeben: Φ 𝐱, 𝐲 =
𝜙 𝐱 ⨂Λ 𝐲 & 𝑘 𝐱𝑖 , 𝐲𝑖 , 𝐱𝑗 , 𝐲𝑗 = 𝑘 𝐱𝑖 , 𝐱𝑗 Λ 𝐲𝑖TΛ 𝐲𝑗
Strukturierte Ausgabe – hochdimensionale 𝑌
weniger zu schätzende Parameter – Featuremapping
effiziente Vorhersage – problemspezifische
Kodierung
effizienter Lernalgorithmus – Schnittebenenalgorithmus
Andere strukturierte Probleme:
Ranking benutzt Sortierungs-Constraints 62