Statistisches Parsing

Transkrypt

Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Überblick
1
PCFGs
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
2
Baumbank-Transformationen
3
Lexikalisierung
4
Evaluation
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Syntaktische Desambiguierung
Problem: Grammatiken für natürliche Sprachen liefern oft
mehrere Analysen für einen Eingabesatz.
S
NP
N
S
VP
NP
V
children like
D
a
VP
NP
N
N
candy bar
N
V
PP
NP
P
bar
NP
children like D
N
a candy
Lösungsansatz: Statistische Desambiguierung durch Wahl der
wahrscheinlichsten Analyse
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Statistische Desambiguierung
Teilprobleme
1
Definition eines Wahrscheinlichkeitsmodelles
2
Schätzung der Modellparameter aus Daten
3
Effiziente Berechnung der besten Analyse
Im Folgenden: Desambiguierung von kontextfreien Analysen
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Kontextfreie Grammatiken
Eine kontextfreie Grammatik G = (V , Σ, S, P)
expandiert das Startsymbol S
mit Regeln der Form A → α mit
A ∈ V und α ∈ (V ∪ Σ)∗
zu einer Folge von Terminalsymbolen
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Beispiel einer Ableitung
Grammatik
S
VP
VP
NP
N1
N1
D
N
V
→
→
→
→
→
→
→
→
→
NP VP
V NP
V
D N1
A N1
N
the
bell
rings ...
Satzform
Aktion
S
Startsymbol
NP VP
D N1 VP
the N1 VP
the N VP
the bell VP
the bell V
the bell rings
⇒ Linksableitung
Helmut Schmid
Statistisches Parsing
S → NP VP
NP → D N1
D → the
N1 → N
N → bell
VP → V
V → rings
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Folge der partiellen Parsebäume für die Ableitung
S
S
S
NP VP NP
S
S
VP
D N1
NP
VP
N1
D
the
VP
NP
VP
NP
D
N1
D
N1
the
N
the
N
bell
bell
Helmut Schmid
D
N1
the
N
S
S
S
NP
NP
V D
the
VP
N1
V
N
rings
bell
Statistisches Parsing
VP
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Ableitung
Zu jeder kontextfreien Analyse eines Satzes gibt es genau eine
Linksableitung.
Eine Linksableitung ist eindeutig durch die Folge der
angewandten Regeln ~r = r1 , r2 , ..., rn bestimmt.
Die Wahrscheinlichkeit einer solchen Regelfolge (= Analyse,
Linksableitung, Parsebaum) läßt sich in ein Produkt von
bedingten Wahrscheinlichkeiten zerlegen:
p(r1 , r2 , ..., rn ) = p(r1 )p(r2 |r1 )...p(rn |r1 , ..., rn−1 )
n
Y
=
p(ri |r1 , ..., ri−1 )
i=1
Der Kontext r1 , ..., ri−1 entspricht einem partiellen Parsebaum.
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Partielle Ableitung
Beispiel: Regelfolge und partieller Parsebaum
S
S
NP
D
N1
→
→
→
→
NP VP
D N1
the
N
NP
D
N1
the
N
VP
Annahme: Die Wahrscheinlichkeit der Regel N → bell hängt
allein von der Kategorie der expandierten
Konstituente ab.
⇒ Probabilistische kontextfreie Grammatik (PCFG)
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Probabilistische kontextfreie Grammatiken
Wahrscheinlichkeit des Parsebaumes T mit der
Linksableitung r1 , ..., rn
n
Y
p(ri |r1 , ..., ri−1 )
p(T ) = p(r1 , .., rn ) =
i=1
=
n
Y
p(ri |nextcat(r1 , ..., ri−1 ))
i=1
nextcat(r1 , ..., rk ): Kategorie des nächsten zu expandierenden
Nichtterminalknotens im partiellen Parsebaum r1 , ..., ri−1
p(A → α|B) = 0 falls A 6= B
⇒ p(r1 , ..., rk ) = 0 falls r1 , ..., rk keine (partielle) Linksableitung ist.
Meist wird nur p(A → α) statt p(A → α|B) geschrieben.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Beispiel
S
NP
NP
NP
NP
NP
VP
VP
PP
D
D
N
N
N
V
V
P
P
→
→
→
→
→
→
→
→
→
→
→
→
→
→
→
→
→
→
NP VP
NP PP
DN
N
DNN
NN
V NP
V
P NP
the
a
children
candy
bar
bar
like
like
for
1
0.2
0.3
0.3
0.1
0.1
0.6
0.4
1
0.6
0.4
0.4
0.3
0.3
0.1
0.9
0.5
0.5
S1
NP0.3
N0.4
S1
VP0.6
V0.9
children
like
NP0.2
NP0.1
NP0.3
D0.4
N0.3
N0.3
a
candy
bar
N0.4
VP0.4
NP0.3
P0.5
children like D0.4
a
p1 = 0.0002333
Helmut Schmid
Statistisches Parsing
V0.1
PP 1
N0.3
candy
p2 = 0.0000173
bar
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Zusammenfassung
PCFG = CFG + Regelwahrscheinlichkeiten
Parsebaum-Wahrscheinlichkeit = Produkt der
Regelwahrscheinlichkeiten
syntaktische Desambiguierung durch Auswahl der
wahrscheinlichsten Analyse
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Parameterschätzung
ML-Schätzung der Regelwahrscheinlichkeiten aus Häufigkeiten
p(A → α) =
fA→α
fA→α
=P
fA
β fA→β
Gewinnung der Häufigkeiten
1
durch Auszählen in manuell geparsten und desambiguierten
Texten (Baumbanken)
2
aus automatisch geparsten und nicht desambiguierten Texten
(EM-Training)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Baumbank-Training
S
S
S
NP
VP
N
V
Peter sleeps
N
D
NP
VP
NP
a stone hits
N
NP
V
S
D
N
VP
V
Peter sees
NP
NP
N
N
VP
V
John reads D
John
the window
NP
N
a book
Extraktion der Grammatikregeln und der Regelhäufigkeiten:
S
VP
VP
NP
NP
→
→
→
→
→
NP VP
V NP
V
DN
N
4
3
1
3
4
1
0.75
0.25
0.43
0.57
D
D
V
V
V
V
→
→
→
→
→
→
a
the
sleeps
hits
sees
reads
Helmut Schmid
2
1
1
1
1
1
0.67
0.33
0.25
0.25
0.25
0.25
Statistisches Parsing
N
N
N
N
N
→
→
→
→
→
Peter
John
stone
window
book
2
2
1
1
1
0.29
0.29
0.14
0.14
0.14
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Baumbanken
Baumbanken müssen manuell erstellt werden.
Die Erzeugung einer Baumbank ist daher mühsam.
Was tun, wenn keine Baumbank zur Verfügung steht?
Könnte man aus automatisch geparsten Korpora
Informationen über die Häufigkeit der Regeln gewinnen?
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Training auf unannotierten Daten
Ansatz 1 (schlecht)
1
Die Sätze des Trainingskorpus werden (symbolisch) geparst.
2
Alle Analysen werden als Baumbank gespeichert.
3
Schätzung der Regelwahrscheinlichkeiten aus der Baumbank
Problem: Das Gewicht eines Satzes steigt mit der Zahl seiner
Analysen.
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Training auf unannotierten Daten (Forts.)
children like a candy bar
children like chocolate
S
S
NP
NP
N
VP
V
PP
P
N
NP
V
children like
bar
D
NP
children like D
VP
NP
N
a
a candy
N
candy bar
S
NP
N
VP
V
children like
N
NP
N
chocolate
Helmut Schmid
Regel
S → NP VP
NP → D N
NP → D N N
NP → N
NP → NP PP
VP → V
VP → V NP
PP → P NP
D →a
D → the
N → children
N → bar
N → candy
N → chocolate
V → bar
V → like
P → like
Statistisches Parsing
f
3
1
1
4
1
1
2
1
2
0
3
1
2
1
1
2
1
p
1
0.14
0.14
0.57
0.14
0.33
0.67
1
1
0
0.43
0.14
0.29
0.14
0.33
0.67
1
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Training auf unannotierten Daten (Forts.)
Ansatz 2: wie Ansatz 1 aber:
Die Regelhäufigkeiten, die aus den Analysen eines bestimmten
Satzes extrahiert wurden, werden durch die Zahl der Analysen des
Satzes geteilt.
⇒ Alle Sätze haben gleiches Gewicht.
⇒ Alle Analysen eines Satzes haben gleiches Gewicht.
Problem: Gute und schlechte Analysen haben ebenfalls gleiches
Gewicht.
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Training auf unannotierten Daten (Forts.)
children like a candy bar
children like chocolate
S
S
NP
NP
N
VP
V
PP
P
N
NP
V
children like
bar
D
NP
children like D
VP
NP
N
a
a candy
N
candy bar
S
NP
N
VP
V
children like
N
NP
N
chocolate
Helmut Schmid
Regel
S → NP VP
NP → D N
NP → D N N
NP → N
NP → NP PP
VP → V
VP → V NP
PP → P NP
D →a
D → the
N → children
N → bar
N → candy
N → chocolate
V → bar
V → like
P → like
Statistisches Parsing
f
2
0.5
0.5
3
0.5
0.5
1.5
0.5
1
0
2
0.5
1
1
0.5
1.5
0.5
p
1
0.11
0.11
0.67
0.11
0.25
0.75
1
1
0
0.44
0.11
0.22
0.22
0.25
0.75
1
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Training auf unannotierten Daten (Forts.)
Ansatz 3: Gewichtung der Analysen mit ihrer Güte.
Als Gütemaß dient die Wahrscheinlichkeit der Analyse t gegeben
den Satz s
p(t|s) =
p(t)
p(t)
p(t, s)
=
=P
0
p(s)
p(s)
t 0 ∈T (s) p(t )
Die aus der Analyse t extrahierten Regelhäufigkeiten werden mit
p(t|s) multipliziert.
Aber: Zur Berechnung der Parsewahrscheinlichkeiten p(t)
werden die Regelwahrscheinlichkeiten benötigt, die durch
das Training erst geschätzt werden sollen.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Training auf unannotierten Daten (Forts.)
Ansatz 3: Fortsetzung
iteratives Trainingsverfahren (EM-Training)
1
Initialisierung der Regelwahrscheinlichkeiten
2
Berechnung der Parsebaumgewichte p(t|s)
3
Extraktion der gewichteten Regelhäufigkeiten
4
Neuschätzung der Regelwahrscheinlichkeiten
5
weiter mit Schritt 2
Problem: Wie werden die gewichteten Regelhäufigkeiten bei
hochgradig ambigen Sätzen effizient berechnet?
Lösung: Inside-Outside-Algorithmus (später vorgestellt)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Beispiel für die Berechnung der Parsebaumgewichte
S1
S1
NP0.3
N0.4
children
VP0.6
V0.9
like
NP0.2
NP0.1
NP0.3
D0.4
N0.3
N0.3
a
candy
bar
N0.4
VP0.4
NP0.3
P0.5
children like D0.4
a
p(t1 ) = 0.0002333
1)
p(t1 |s) = p(t1p(t
)+p(t2 ) = 0.93
Helmut Schmid
V0.1
PP 1
bar
N0.3
candy
p(t2 ) = 0.0000173
2)
p(t2 |s) = p(t1p(t
)+p(t2 ) = 0.07
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Training auf unannotierten Daten (Forts.)
Wichtige Eigenschaft des EM-Algorithmus:
Bei jeder Neuschätzung der Parameter steigt die
Wahrscheinlichkeit (Likelihood) des Trainingskorpus monoton.
p(C ) =
Q
Satzwahrscheinlichkeit
p(s) =
P
Parsewahrscheinlichkeit
p(t) =
Q
Korpuswahrscheinlichkeit
Helmut Schmid
s∈C
p(s)
t∈T (s) p(t)
r ∈t
p(r )
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
S
NP
VP
N
NP
V
children like
D
N
a
N
candy bar
S
NP
NP
VP
V
PP
P
N
bar
NP
children like D
N
a candy
S
NP
N
VP
V
children like
NP
N
chocolate
Regel
S → NP VP
NP → D N
NP → D N N
NP → N
NP → NP PP
VP → V
VP → V NP
PP → P NP
D →a
D → the
N → bar
N → candy
N → children
N → chocolate
V → bar
V → like
P → like
logprob
p0
1.00
0.25
0.25
0.25
0.25
0.50
0.50
1.00
0.50
0.50
0.25
0.25
0.25
0.25
0.50
0.50
1.00
Helmut Schmid
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
f1
2.00
0.50
0.50
3.00
0.50
0.50
1.50
0.50
1.00
0.00
0.50
1.00
2.00
1.00
0.50
1.50
0.50
15.2
p1
1.00
0.11
0.11
0.67
0.11
0.25
0.75
1.00
1.00
0.00
0.11
0.22
0.44
0.22
0.25
0.75
1.00
Statistisches Parsing
f2
2.00
0.10
0.90
3.00
0.10
0.10
1.90
0.10
1.00
0.00
0.90
1.00
2.00
1.00
0.10
1.90
0.10
11.3
p2
1.00
0.02
0.22
0.73
0.02
0.05
0.95
1.00
1.00
0.00
0.18
0.20
0.41
0.20
0.05
0.95
1.00
f3
2.00
0.00
1.00
3.00
0.00
0.00
2.00
0.00
1.00
0.00
1.00
1.00
2.00
1.00
0.00
2.00
0.00
9.3
p3
1.00
0.00
0.25
0.75
0.00
0.00
1.00
1.00
1.00
0.00
0.20
0.20
0.40
0.20
0.00
1.00
1.00
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Zusammenfassung
Baumbanktraining
Die Baumbank wird manuell erstellt
Regelhäufigkeiten werden ausgezählt
ML-Schätzung der Regelwahrscheinlichkeiten
fA→α
p(A → α) = P
β fA→β
EM-Training
Training auf automatisch geparsten Texten
iterative Neuschätzung der Parameter
Gewichtung der Regelhäufigkeiten jedes Parsebaumes mit
p(t|s) = P
p(t)
t 0 ∈T (s)
Helmut Schmid
p(t 0 )
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Berechnung der besten Analyse
Naiver Ansatz
1
Berechne alle möglichen Analysen.
2
Berechne die Wahrscheinlichkeit jeder Analyse.
3
Gib die Analyse mit der höchsten Wahrscheinlichkeit zurück.
Problem: Sätze haben oft sehr viele Analysen. Sie einzeln
aufzuzählen und zu bewerten, ist ineffizient.
Lösung: Extraktion des besten Parsebaumes aus einer
kompakten Repräsentation aller Analysen (Parsewald).
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Parsewald
kompakte Repräsentation aller Analysen eines Satzes
entsteht aus einer Menge von Parsebäumen durch
1
2
Zusammenfassen gemeinsamer Teilbäume
Zusammenfassen von Parsebäumen, die sich nur in einem
Teilbaum unterscheiden
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Beispiel
Zusammenfassen gemeinsamer Teilbäume
S
S
S
VP
VP
VP
NP
D
N
NP
P D
PP
VP
NP
NP
I
VP
⇒
PP
NP V
S
N
saw the man on the hill
NP
NP
NP V
I
D
N
P D
N
saw the man on the hill
Helmut Schmid
PP
VP
Statistisches Parsing
NP
NP
NP V
I
D
N
P D
N
saw the man on the hill
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Beispiel (Forts.)
Zusammenfassen von Parsebäumen, die sich nur in einem Teilbaum
unterscheiden
S
S
VP
S
VP VP
VP
NP
PP
VP
I
D
N
P D
PP
VP
NP
NP
NP V
NP
⇒
N
saw the man on the hill
NP
NP
NP V
I
D
N
P D
N
saw the man on the hill
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Parsewald als spezialisierte Grammatik
S
VP
NP NP
PP
NP
PP
I
D
N
PP
NP
NP
NP V
Durchnummerierung der
Knoten
NP
P D
N
NP
P
D
N
saw the man on the hill with the telescope
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Parsewald als spezialisierte Grammatik
S1
VP3
NP NP 5
PP9
NP6
NP17
PP10
NP8
NP14
PP7
NP19
NP2 V4 D11 N12 P13 D15 N16 P18 D20 N21
I
saw the man on the hill with the telescope
Helmut Schmid
S1
NP2
VP3
V4
NP5
NP5
NP6
NP8
D11
N12
PP10
NP14
→
→
→
→
→
→
→
→
→
→
→
→
Statistisches Parsing
NP2 VP3
I
V4 NP5
saw
NP6 PP7
NP8 PP9
NP8 PP10
D11 N12
the
man
P13 NP14
...
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Grundidee des Viterbi-Algorithmus
S1
Berechnung der wahrscheinlichsten
Analyse jedes Knotens von ,,unten
nach oben”
VP3
NP NP 5
PP9
NP6
NP17
PP10
NP8
NP14
PP7
NP19
NP2 V4 D11 N12 P13 D15 N16 P18 D20 N21
I
saw the man on the hill with the telescope
Helmut Schmid
Die Wahrscheinlichkeit eines
eindeutigen Knotens ist das Produkt
der Regelwahrscheinlichkeit und der
Tochterknoten-Wahrscheinlichkeiten.
Die Wahrscheinlichkeit eines ambigen
Knotens ist die Wahrscheinlichkeit
seiner besten Analyse.
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Viterbi-Algorithmus und Parsewald-Grammatiken
Die Viterbi-Wahrscheinlichkeit einer Parsewald-Regel
(= eindeutiger Knoten) ist das Produkt aus der
Wahrscheinlichkeit der entsprechenden PCFG-Regel und den
Viterbi-Wahrscheinlichkeiten der Nichtterminale auf der
rechten Seite.
δ(NP5 → NP6 PP7 ) = p(NP → NP PP) δ(NP6 ) δ(PP7 )
Die Viterbi-Wahrscheinlichkeit eines ParsewaldNichtterminals (= ambiger Knoten) ist die maximale
Wahrscheinlichkeit aller Parsewald-Regeln mit diesem Symbol
auf der linken Seite
δ(A) = max δ(A → α)
A→α
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Berechnung der Viterbi-Wahrscheinlichkeiten
Viterbi-Algorithmus
δ(a) = 1
für Terminalsymbole a
n
Y
δ(Xi ) für Parsewaldregeln
δ(A → X1 ...Xn ) = p(A → X1 ...Xn )
i=1
δ(A) = max δ(A → α)
A→α
für Nichtterminale A
ψ(A) = arg max δ(A → α)
A→α
beste Analyse von A
p(S1 → NP2 VP3 ) ist gleich der Wahrscheinlichkeit
p(S → NP VP) der entsprechenden PCFG-Regel.
Die ψ-Variable speichert für jeden Knoten die beste Analyse.
Beispiel
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Inside-Wahrscheinlichkeiten
Der Viterbi-Algorithmus berechnet für jeden Parsewaldknoten
die Wahrscheinlichkeit seiner besten Analyse.
Analog berechnet der Inside-Algorithmus für jeden ParsewaldKnoten die Gesamtwahrscheinlichkeit aller seiner Analysen.
Inside-Algorithmus
β(a) = 1
für Terminalsymbole a
n
Y
β(A → X1 ...Xn ) = p(A → X1 ...Xn )
β(Xi ) für Parsewaldregeln
i=1
β(A) =
X
β(A → α)
für Nichtterminale A
A→α
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Outside-Wahrscheinlichkeiten
Angenommen der Parsewald für den Satz w1 ...wn enthält eine
Konstituente der Kategorie A, welche zu wi ...wk expandiert.
S
Outside− Inside-Wahrscheinlichkeit:
Wahrsch. Summe der Wahrscheinlichkeiten aller Ableitungen
∗
A ⇒ wi ...wk
A
w1 ...
wi−1wi ... wk wk+1 ... wn
Outside-Wahrscheinlichkeit:
Summe der Wahrscheinlichkeiten aller Ableitungen
∗
S ⇒ w1 ...wi−1 Awk+1 ...wn
Inside−Wahrscheinlichkeit
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Berechnung der Outside-Wahrscheinlichkeiten
S
outside(B)
B
A
Outside-Algorithmus
α(S) = 1
α(A) =
p(B−>...A...)
für Startsymbol S
X
α(B → γAδ)
w1 ...
wi−1wi ... wk wk+1 ... wn
inside(...) inside(A)
inside(...)
B→γAδ
α(B → X1 ...Xm AXm+1 ...Xn ) = α(B)p(B → X1 ...Xm AXm+1 ...Xn )
α(B → γAδ) = α(B)
i=1
β(B → γAδ)
β(A)
Helmut Schmid
n
Y
Statistisches Parsing
β(Xi )
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Inside-Outside-Algorithmus
Das Produkt aus Inside- und
Outsidewahrscheinlichkeit eines
Parsewald-Knotens ergibt die
Gesamtwahrscheinlichkeit aller
Parsebäume mit diesem Knoten.
Wird dieses Produkt durch die
Wahrscheinlichkeit aller Analysen
geteilt, so erhält man die
erwartete Häufigkeit dieses
Parsewald-Knotens.
S
Outside−
Wahrsch.
A
w1 ...
wi−1wi ... wk wk+1 ... wn
Inside−Wahrscheinlichkeit
f (A) = α(A)β(A)/β(S)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Erwartete Häufigkeit
Genaue Bedeutung
Angenommen ein PCFG-Generator erzeugt zufällig (aber gemäß
der Regelwahrscheinlichkeiten) einen Parsebaum t.
Angenommen die Folge der Terminalsymbole des Parsebaums t
bildet den Satz s.
Dann ist die erwartete Häufigkeit einer beliebigen Konstituente
K = (A, i, k) für den Satz s die Wahrscheinlichkeit, dass der
zufällig erzeugte Parsebaum t diese Konstituente enthält.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Erwartete Regelhäufigkeit
f (A) =
α(A)β(A) X
=
f (A → γ)
β(S)
γ
α(A) β(A → γ)
β(S)
α(A)β(A) β(A → γ)
=
β(S)
β(A)
β(A → γ)
= f (A)
β(A)
f (A → γ) =
⇒ Berechnung der Outside-Wahrscheinlichkeiten wird überflüssig.
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Berechnung erwarteter Regelhäufigkeiten
Flow-Algorithmus
f (S) = 1
β(A → γ)
f (A → γ) = f (A)
β(A)
X
f (A) =
f (B → γAδ)
B→γAδ
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Neuschätzung der Parameter
EM-Algorithmus: Iteration der beiden folgenden Schritte
1
E-Schritt
Jeder Satz des Trainingskorpus wird geparst und der Parsewald
aufgebaut.
Für jede Parsewald-Regel wird ihre erwartete Häufigkeit
berechnet.
Die erwarteten Häufigkeiten werden für jede CFG-Regel
aufsummiert.
2
M-Schritt
Aus den Regelhäufigkeiten werden neue Wahrscheinlichkeiten
abgeleitet:
f (A → γ)
p(A → γ) = P
γ f (A → γ)
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Vor-und Nachteile des EM-Algorithmus
EM passt die Parameter zunehmend an die Trainingsdaten an.
Dabei steigt die Wahrscheinlichkeit der Trainingsdaten
monoton und konvergiert zu einem (lokalen) Maximum.
640
80
620
75
600
70
560
F-Score
Perplexitaet
580
540
520
65
60
500
55
480
460
50
EM-Training
Baumbank-Training
440
420
45
0
2
4
6
8
10 12
Iterationen
14
16
18
20
0
2
4
6
8
10
12
Iterationen
14
16
18
20
Die Maximierung der Trainingsdatenwahrscheinlichkeit ist
nicht mit der Maximierung der Parsing-Genauigkeit identisch.
Wenn eine ausreichend große Baumbank zur Verfügung steht,
liefert Baumbank-Training bessere Ergebnisse.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
Perplexität und F-Score
Die Perplexität ist ein Maß dafür, wie gut das nächste Wort mit
dem Modell im Mittel vorhergesagt werden kann.
Perp(C ) = 2
− |C1 | log2 p(C )
Der F-Score ist das harmonische Mittel aus Precision und Recall:
precision =
recall
=
f -score =
TP
TP + FP
TP
TP + FN
2 ∗ precision ∗ recall
precision + recall
Helmut Schmid
Statistisches Parsing
Statistische Desambiguierung
Wahrscheinlichkeitsmodell
Parameterschätzung
Viterbi-Algorithmus/Inside-Outside-Algorithmus
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Experiment
1
Teilung der Baumbank in Trainingsdaten und Testdaten
2
Initialisierung der PCFG-Wahrscheinlichkeiten durch
MLE-Training auf Trainingsdaten
3
EM-Training auf den Testdaten (ohne Annotation)
4
Evaluation auf den Testdaten (mit Annotation)
800
76
750
75
74
73
650
F-Score
Perplexitaet
700
600
550
72
71
70
500
69
450
68
400
67
0
2
4
6
8
10
12
14
16
18
20
Iterationen
0
5
10
Iterationen
Helmut Schmid
Statistisches Parsing
15
20
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Überblick
1
PCFGs
2
Baumbank-Transformationen
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
3
Lexikalisierung
4
Evaluation
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Unabhängigkeitsannahmen von PCFGs
Regelfolge und partieller Parsebaum
S
S
NP
D
N1
→
→
→
→
NP VP
D N1
the
N
NP
D
N1
the
N
VP
Die Wahrscheinlichkeit der Regel N → bell hängt allein von der
Kategorie der expandierten Konstituente ab.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Probleme einfacher Baumbank-Grammatiken
Die Unabhängigkeitsannahmen der PCFGs sind zu streng:
NPs in Subjektposition unterscheiden sich von solchen in
Objektposition.
PP-Argumente unterscheiden sich von PP-Adjunkten.
Adverbien, die Verben modifizieren, unterscheiden sich von
solchen, die Substantive oder Adjektive modifizieren.
Transitive Verben unterscheiden sich von intransitiven Verben.
Verben mit PP-Argumenten selegieren unterschiedliche
Präpositionen.
Nicht-lokale Abhängigkeiten (Bewegungen von Konstituenten)
können nicht behandelt werden.
usw.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Baumbank-Annotation
Idee: Nützliche Informationen werden automatisch (mit einem
Computerprogramm) in der Baumbank nachannotiert.
Die Baumbankkategorien werden verfeinert.
PCFGs, welche aus der erweiterten Baumbank extrahiert werden,
desambiguieren besser.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Eltern-Annotation
Jeder Parsewaldknoten wird (zusätzlich) mit der Kategorie des
Elternknotens annotiert.
S/0
NP/S
Diese Annotation
unterscheidet
VP/S
Subjekt vs. Objekt
PRO/NP
I
verschiedene VP-Typen
V/VP
saw
NP/VP
PP/VP
PN/NP P/PP
Peter
in
Anbindung von Adjunkten
NP/PP
D/NP N/NP
the
Helmut Schmid
park
prädikative vs. attributive
Adjektivphrasen
...
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Beispielregeln mit Annotationen
(aus Penn Treebank)
NP/S → PRO/NP hat eine höhere Wahrscheinlichkeit als die
unannotierte Regel NP → PRO
VP/VP → VB/VP NP/VP ist wahrscheinlicher als die Regel
VP → VB NP
VBG/PP → including hat eine viel höhere Wahrscheinlichkeit
als die unannotierte Regel VBG → including
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Annotation mit morphosyntaktischer Information
VP: finit, Infinitiv, Gerundium, Partizip
N: Numerus (Genus, Kasus)
S
erfordert lexikalische Information
NP/sg
VP/fin/sg
Unterscheidung versch. Verben
und VP-Typen
PRO/sg
He
V/fin/sg
saw
PP
NP
PN/sg P
Peter
NP
in D/sg N/sg
a
bar
Helmut Schmid
Agreement innerhalb von NPs
(wichtig im Deutschen)
Subjekt-Verb-Agreement
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Annotation mit Argumentinformation
Kodierung der Argumente: nps = NP + PP + SBAR
S
erfordert
Unterscheidung zwischen Argumenten
und Adjunkten
VP
NP
PRO
V/np
NP
saw
PN
PP
Information über Argumentspuren
I
NP
P
Peter in
D
N
the park
⇒ mehr Verbeinträge im Lexikon
⇒ Sparse-Data-Probleme
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Behandlung von Konstituentenbewegungen
Alle Knoten auf dem Weg von der Spur zu ihrem Füller werden mit
einem Spurmerkmal annotiert.
Annotation mit
Koreferenzindizes
Annotation mit Spurmerkmalen
SBARQ
SBARQ
WHNP/+WHNP
WHNP-1
WDT
WDT
SQ/-WHNP
SQ
N
N
Which cars V
do
NP
N
VP
V
NP
Which cars
V
NP
do
N
V
Americans favor
Americans favor *-1
Helmut Schmid
VP/-WHNP
Statistisches Parsing
NP/-WHNP
*/-WHNP
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Mehrfache Merkmalsannotationen
Beispiel:
SBARQ/.
WHNP+<WHNP>
SQ–<WHNP>
.
WRB
?
Where
VHD/v
NP-SBJ/base
VP/ppast–<WHNP>
had
PDT
DT/the
NN
VVN/p
all
the
money
come
PP/V–<WHNP>
IN/from NP–<WHNP>
from
Helmut Schmid
Statistisches Parsing
*T*–<WHNP>
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Mehrfache Merkmalsannotationen (Forts.)
Jedes weitere Merkmal erhöht die Zahl der Symbole und Regeln.
⇒ Sparse-Data-Probleme: Viele mögliche Regeln tauchen im
Trainingskorpus nicht auf.
⇒ Nicht jedes sinnvoll erscheinende Merkmal erhöht die
Genauigkeit.
⇒ Die beste Merkmalsmenge hängt von vielen Faktoren (u.a. der
Baumbankgröße) ab.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Problem flacher Baumbank-Annotationen
Baumbanken verwenden meist sehr flache Strukturen.
NP
DT
JJ
the
last
NN
NN
NN
stock market boom
Die daraus extrahierten Grammatiken besitzen viele Regeln
mit langen rechten Seiten, die nur einmal aufgetreten sind.
NP → DT JJ NN NN NN
Andere ähnliche Regeln fehlen dagegen, obwohl sie für
manche Sätze gebraucht würden.
NP → DT JJ NN NN NN NN
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Markowisierung
NP
Aufspaltung in binäre Regeln
neue Hilfskategorien mit
NP-NN-NN
Elternkategorie und
den Kategorien der 2 letzten Töchter
NP-NN-NN
consultant
Löschung der Hilfskategorien
liefert den Originalparse
NP-NN-NN
NP-JJ-NN
⇒ Reduktion der Regelzahl
NN
firm
NP-DT-JJ
⇒ Erhöhung der Abdeckung
DT
JJ
a
Chicago-based
Helmut Schmid
NN
NN
law
Statistisches Parsing
NN
management
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Automatisch Gelernte Merkmale
Nachteile der Merkmalsannotation mittels Programm
komplexer ,,Trial-and-Error”-Prozess
erfordert Programmierung
muss für jede Baumbank wiederholt werden
Könnte eine Annotation mit Merkmalen auch gelernt werden?
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Synthetische Merkmale
Grundidee (von Petrov/Klein)
Durch ein synthetisches Merkmal mit den Werten 0 oder 1
werden alle Kategorien aufgespalten.
Für jeden Parse der Baumbank liefert die neue Grammatik
viele äquivalente Analysen.
Durch EM-Training wird die neue Grammatik an die
Baumbank angepasst.
S
S/0
NP
VP
Peter
V
sleeps
⇒
S/0
S/0
S/0
S/0
NP/0 VP/0 NP/0 VP/0 NP/0 VP/1 NP/0 VP/1 NP/1 VP/1
Peter
V/0
sleeps
Peter
V/1
sleeps
Helmut Schmid
Peter
V/0
sleeps
Statistisches Parsing
Peter
V/1
sleeps
Peter
V/1
sleeps
...
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Vorbereitung der Grammatik
NP
1
Extraktion einer Grammatik mit Häufigkeiten
NP’
NN
NP → DT JJ NN NN NN 1
NP’
2
Binarisierung der Grammatik
NP → NP’ NN
NP’ → NP’ NN
NP’ → DT JJ
3
NP’
1
2
1
DT
JJ
NN
NN
stock
the last
Aufspaltung jeder Kategorie in zwei neue Kategorien
Verteilung der Häufigkeiten auf die neuen Regeln
(mit leichten Variationen zur Brechung der Symmetrie)
...
NP’/0 → NP’/0 NN/0
NP’/0 → NP’/0 NN/1
NP’/0 → NP’/1 NN/0
...
0.24
0.26
0.25
Helmut Schmid
Statistisches Parsing
market
boom
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
EM-Training
1
Berechne ML-Schätzwerte der Regelhäufigkeiten
f (A → α)
A→β f (A → β)
p(A → α) = P
2
Berechne für jeden Parsebaum der Baumbank den Parsewald
mit den äquivalenten annotierten Parsebäumen
3
Berechne die geschätzten Häufigkeiten der Parsewaldregeln
(Inside-Outside- oder Flow-Algorithmus)
4
Summiere die Regelhäufigkeiten
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
EM-Training (Forts.)
Die Unterkategorien unterscheiden sich wegen der nicht völlig
gleichmäßigen Verteilung der Häufigkeiten ein wenig.
Diese Unterschiede werden durch das EM-Training verstärkt.
⇒ Die Unterkategorien spezialisieren sich.
Beispiel
DT
the (0.50)
a (0.24)
The (0.08)
DT/0
DT/1
that (0.15)
the (0.54)
this (0.14)
a (0.25)
some (0.11)
The (0.09)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Rekursive Aufspaltung
Durch wiederholtes Aufspalten mit anschließendem EM-Training
werden die Kategorien immer weiter verfeinert:
DT
the (0.50), a (0.24), The (0.08)
that (0.15), this (0.14), some (0.11)
this (0.39), that (0.28), That (0.11)
this
(0.52)
that
(0.36)
another (0.04)
That (0.38)
This (0.34)
each (0.07)
the (0.54), a (0.25), The (0.09)
some (0.20), all (0.19), those (0.12)
some (0.37)
all
(0.29)
those (0.14)
these (0.27)
both (0.21)
Some (0.15)
Helmut Schmid
the (0.80), The (0.15), a (0.01)
the (0.96)
a
(0.01)
The (0.01)
The (0.93)
A (0.02)
No (0.01)
Statistisches Parsing
a (0.61), the (0.19), an (0.10)
a (0.75)
an (0.12)
the (0.03)
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Vereinigung
Eine Aufspaltung lohnt sich nicht bei allen Kategorien.
Bspw. wird in der PTB die Kategorie “,” nur für Kommata
verwendet. Ihre Unterteilung ist daher sinnlos.
Unnötige Aufspaltungen führen zu Sparse-Data-Problemen.
⇒ Zu ähnliche Unterkategorien werden wieder zusammengefasst.
Strategie:
Nach jedem EM-Schritt werden 50 % der Aufspaltungen
rückgängig gemacht.
Revidiert werden die Aufspaltungen, bei denen die
Wahrscheinlichkeit (Likelihood) der Trainingsdaten am
wenigsten sinkt.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Mathematische Details
Die exakte Berechnung des Likelihood-Unterschieds ist zu
rechenintensiv.
Die folgende Annäherung ignoriert mögliche Wechselwirkungen bei
mehrfachem Auftreten eines Symbols in einem Parsebaum.
Likelihood-Änderung durch Vereinigung zweier Kategorien
Wahrsch. des Parsewaldknotens n0 : p(n0 ) = α(n0 )β(n0 )
Wahrsch. von n0 oder n1 :
p(n0 ∨ n1 ) = p(n0 ) + p(n1 )
W. d. vereinigten PK n0 ◦ n1 :
p(n0 ◦ n1 ) = [α(n0 ) + α(n1 )][p0 β(n0 ) + p1 β(n1 )]
Q Q
0 )+p(n1 )
Likelihood-Unterschied: ∆ = T n0 ,n1 p(n
p(n0 ◦n1 )
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Mathematische Details (Forts.)
∆=
YY
T n0 ,n1
Q
T
α(n0 )β(n0 ) + α(n1 )β(n1 )
[α(n0 ) + α(n1 )][p0 β(n0 ) + p1 β(n1 )]
iteriert über alle Parsebäume
Q
n0 ,n1 iteriert über alle Knotenpaare n0 , n1 mit demselben Span und den
zu vereinigenden Kategorien A/0 bzw. A/1.
α(n) Outside-Wahrscheinlichkeit des Parsewaldknotens n
β(n) Inside-Wahrscheinlichkeit des Parsewaldknotens n
p0 Häufigkeit von A/0 relativ zu A/1. Es gilt: p0 + p1 = 1
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Automatisch annotierte Merkmale
Markowisierung
Gelernte Merkmale
Experimentelle Ergebnisse
von Slav Petrov und Dan Klein
Verfahren liefert für verschiedene Sprachen sehr gute
Ergebnisse
Deutsch (Precision=80,1 %, Recall=80,1 %)
Englisch (Precision=90,2 %, Recall=89,9 %)
Chinesisch (Precision=84,8 %, Recall=81,9 %)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Überblick
1
PCFGs
2
Baumbank-Transformationen
3
Lexikalisierung
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
4
Evaluation
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Motivation
Wörter derselben syntaktischen Kategorie verhalten sich oft sehr
unterschiedlich:
schlafen – werfen
Transitivität
Wasser – Buch
Wahl des Artikels
lesen – werfen – bestehen
etc.
Selektionseigenschaften
Diese Unterschiede werden von einfachen PCFGs nicht erfasst.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Motivation
Einige häufige Ambiguitäten können durch einfache PCFGs nicht
zuverlässig aufgelöst werden:
Ambiguitäten bei der Anbindung von PPs
Er aß den Kuchen mit einem Löffel –
Er aß den Kuchen mit Schokoladenglasur
Ambiguitäten bei der Koordination
alte Männer und Frauen – alte Leute und Kinder
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Ziele der Lexikalisierung
Bessere Modellierung...
der wortspezifischen syntaktischen Eigenschaften
bspw. Argumentstruktur von Verben
der Beziehungen zwischen Wörtern
typische Argumente und Modifikatoren von Nomina, Verben etc.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Lexikalisierte Parsebäume
Sbestand
NPStudent
VPbestand
DTDer NStudent
Der
Student
Vbestand
NPPrüfung
ADVproblemlos
bestand
DTdie NPrüfung
problemlos
blau: lexikalische Köpfe
unterstrichen: Kopfkonstituenten
Helmut Schmid
die
Prüfung
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Lexikalisierte PCFGs
Aus einer lexikalisierten Baumbank können Regeln der Form
VPbestand → Vbestand NPPrüfung ADVproblemlos
extrahiert werden.
Aber: Die Wahrscheinlichkeiten der Regeln können nicht
zuverlässig geschätzt werden. (⇒ Sparse-Data-Problem)
Lösung?
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Kopflexikalisierte PCFGs
Die Wahrscheinlichkeit einer lexikalisierten Grammatikregel wird in
mehrere Faktoren zerlegt:
p(VPbestand → Vbestand NPPrüfung ADVproblemlos | VPbestand)=
p(VP → V NP ADV | VPbestand)
p(bestand | VPbestand → V NP ADV) (= 1)
p(Prüfung | VPbestand → Vbestand NP ADV)
p(problemlos | VPbestand → Vbestand NPPrüfung ADV) =
p(VP → V NP ADV | VP, bestand)
p(Prüfung | VP, bestand, NP)
p(problemlos | VP, bestand, ADV)
⇒ Die Wahl der lexikalischen Köpfe hängt nicht mehr von den
Schwesterknoten ab
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Parameter von Kopflexikalisierten PCFGs
lexikalisierte Regelwahrsch.
p(VP → V NP | VP, liest)
Kopf-Wahrscheinlichkeiten
p(Buch | VP, liest, NP)
initiale Kopfwahrscheinlichkeiten p(liest | S)
Aber: Trotz der Vereinfachung gibt es Sparse-Data-Probleme
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Maximum-Likelihood Schätzung
Problem der ML-Schätzung:
p(Krimi | liest, VP, NP) = 0
falls f(liest, VP, NP, Krimi) = 0
Lösung: Parameterglättung
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Addiere α
Methode 1:
Addiere α
p̂(w |C ) =
f (C , w ) + α
f (C ) + Bα
B = Zahl der möglichen Wörter
⇒ Jedes nicht im Kontext C aufgetretene Wort hat dieselbe
Wahrscheinlichkeit. (Krimi vs. Mittelalterpalimpsestkrimi)
⇒ Je mehr Wörter möglich sind, desto mehr Wahrscheinlichkeit
wird umverteilt.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Addiere Backoff-Wahrscheinlichkeit
Verbesserung: p̂(Krimi|liest, VP, NP) ∼ p(Krimi|VP, NP)
Methode 2:
Addiere Backoff-Wahrscheinlichkeit
p̂(w |C ) =
C:
C’
f (C , w ) + αp̂(w |C 0 )
f (C ) + α
voller Kontext; bspw. (liest, VP, NP)
Backoff-Kontext; bspw. (VP, NP)
Je größer α ist, desto mehr Gewicht erhält p(w |C 0 ).
Je größer f(C) ist, desto weniger Gewicht erhält p(w |C 0 ).
rekursive Glättung von p̂(w |C 0 )
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Glättung durch Interpolation
f (C , w ) + αp̂(w |C 0 )
f (C ) + α
f (C , w )
α
=
+
p̂(w |C 0 )
f (C ) + α f (C ) + α
f (C ) f (C , w ) f (C ) + α − f (C )
=
+
p̂(w |C 0 )
f (C ) + α f (C )
f (C ) + α
f (C )
f (C ) + α
f (C )
=
pML (w |C ) +
−
p̂(w |C 0 )
f (C ) + α
f (C ) + α f (C ) + α
| {z }
p̂(w |C ) =
=λ
= λpML (w |C ) + (1 − λ)p̂(w |C 0 )
⇒ Methode 2 ist äquivalent zu einer Interpolation (gewichteten
Mittelung) der beiden Wahrscheinlichkeitsverteilungen
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Witten-Bell Verfahren
Wenn in einem bestimmten Kontext (bspw. nach New York Stock)
meistens dasselbe Wort auftritt (Exchange), dann ist dort ein
neues Wort weniger wahrscheinlich als in Kontexten, wo viele
verschiedene Wörter folgen können (bspw. New York City).
⇒ Wahl des Gewichtes α proportional zur Zahl N1+ (C , •) der
unterschiedlichen Wörter im Kontext C
Witten-Bell Glättung
p̂(w |C ) = λpML (w |C ) + (1 − λ)p̂(w |C 0 )
α = βN1+ (C , •)
λ=
f (C )
f (C ) + α
N1+ (C , •) = |{w |f (C , w ) > 0}|
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Absolute Discounting
Frage: Wenn im Trainingskorpus das Wortpaar (w1 , w2 ) f-mal
aufgetreten ist, wie viele Vorkommen dieses Wortpaares
sind dann in einem neuen Korpus derselben Größe N zu
erwarten?
Falls die Parameterglättung korrekt und
pML (w1 , w2 ) pBO (w1 , w2 ) ist, dann
fexp (w1 , w2 ) = N (λpML (w1 , w2 ) + (1 − λ)pBO (w1 , w2 ))
≈ NλpML (w1 , w2 ) = λf (w1 , w2 )
⇒ Ein Wort, das f-mal im Trainingskorpus aufgetreten ist, wird
λf -mal in einer neuen Stichprobe derselben Größe auftreten.
Stimmt das?
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Experimentelle Daten
Wie oft treten Wortpaare, die in einem Korpus f-mal aufgetreten
sind, in einem neuen Korpus derselben Größe im Mittel auf?
f1
0
1
2
3
4
5
6
7
8
9
f¯2
0.000027
0.448
1.25
2.24
3.23
4.21
5.23
6.21
7.21
8.26
∆
+0.000027
-0.552
-0.75
-0.76
-0.77
-0.79
-0.77
-0.79
-0.79
-0.74
0.9f1 + 0.00001
0.00001
0.9
⇒ besser einen
1.8
konstanten Betrag (hier
2.7
0.75) abziehen, als einen
3.6
zur Häufigkeit
4.5
proportionalen
5.4
6.3
7.2
8.1
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Absolute Discounting
Grundidee
Ziehe von jeder positiven Häufigkeit den Betrag δ ab
Verteile die abgezogene Häufigkeit gemäß der
Backoff-Verteilung über die unbeobachteten Ereignisse
f (x) − δ
N
p̂(x) = αpBO (x)
p̂(x) =
Wähle α so, dass
P
x
falls f (x) > 0
falls f (x) = 0
p̂(x) = 1
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Backoff-Faktor
Herleitung des Backoff-Faktors
X
x
p̂(x) =
X f (x) − δ X
+
αpBO (x) = 1
N
x∈O
x∈U
X f (x) − δ
α
pBO (x) = 1 −
N
x∈U
x∈O
P
1 − x∈O f (x)−δ
N
P
α =
1 − x∈O pBO (x)
X
O Menge der beobachteten Ereignisse
U Menge der unbeobachteten Ereignisse
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Wahl des Discounts
Kneser und Ney
δ=
N1
N1 + 2N2
Ni Zahl der Ereignisse mit Häufigkeit i
Chen und Goodman
Y
=
δ1
=
δ2
=
δ≥3
=
Helmut Schmid
N1
N1 + 2N2
N2
1 − 2Y
N1
N3
2 − 3Y
N2
N4
3 − 4Y
N3
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Bessere Backoff-Verteilungen
Problem:
Dem Wort Cannstatt geht meistens das Wort Bad voraus.
Falls die Wortfolge in Cannstatt nicht im Trainingskorpus auftritt,
dann ergibt die Glättung:
p̂(Cannstatt | in) = αpML (Cannstatt) = α f(Cannstatt)/N
Dieser Wert ist jedoch zu hoch, weil Cannstatt nach anderen
Wörtern als Bad, sehr selten ist.
Wie kann die Wahrscheinlichkeit besser geschätzt werden?
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Kneser-Ney Backoff-Verteilung
Je mehr Kontexte es gibt, in denen ein Wort aufgetaucht ist
desto wahrscheinlicher erscheint es in einem neuen Kontext
desto größer sollte seine Backoff-Wahrscheinlichkeit sein.
⇒ Backoff-Wahrscheinlichkeit proportional zur Zahl der
Kontexte wählen, in denen das Wort aufgetreten ist
Kneser-Ney Backoff-Verteilung
pbackoff (w |C 0 ) =
N1+ (•, C 0 , w )
N1+ (•, C 0 , •)
N1+ (•, C 0 , w ) = |{w 0 |f (w 0 , C 0 , w ) > 0}|
N1+ (•, C 0 , •) = |{(w 0 , w 00 )|f (w 0 , C 0 , w 00 ) > 0}|
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Zusammenfassung
Betrachtete Glättungsverfahren
Addiere α
Addiere Backoff-Verteilung =
gewichtete Interpolation mit α =
f (C )
f (C )+α
Witten-Bell Methode (Backoff-Faktor α proportional zu
N1+ (C , •))
Absolute Discounting (vs. Relative Discounting)
Kneser-Ney Verfahren
(Backoff-Verteilung auf Basis der N1+ (•, C 0 , w ) Häufigkeiten)
Weitere Verfahren
Good-Turing
Deleted Interpolation
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Anmerkungen
(Gute) Parameterglättung ist wichtig
Viele Glättungsmethoden sind Heuristiken
Die Methoden wurden meistens für die Glättung von
Sprachmodellen entwickelt
Literatur:
Stanley Chen and Joshua Goodman: An Empirical Study of
Smoothing Techniques for Language Modeling
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Unbekannte Wörter
Problem
Eine Baumbank-Grammatik generiert nur Sätze, bei denen
alle Wörter im Trainingskorpus aufgetreten sind.
Was tun damit auch Sätze mit unbekannten Wörtern geparst
werden können?
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Externes Lexikon
Die Grammatik wird mit zusätzlichen lexikalischen Regeln ergänzt.
Mögliche Quellen:
maschinenlesbare Wörterbücher (Duden etc.)
Namenslisten (Vornamen, Nachnamen, Ortsnamen, ...)
automatische morphologische Analyse
Erhabenheitsästhetikers →
erhaben<ADJ>heit<NN><SUFF>Ästhetiker<+NN><Masc><Gen><Sg>
Wortart-Tagger (Collins)
Problem: Die neuen Regeln haben die Häufigkeit 0
Lösung: Parameterglättung
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Unbekannt-Token
Alle unbekannten Wörter in dem zu parsenden Satz werden
durch das Spezialwort UNBEKANNT ersetzt.
Zur Grammatik werden Regeln A → UNBEKANNT für alle
offenen Wortarten A hinzugefügt (Nomen, Adjektiv, Verb, ...)
Wie werden die Wahrscheinlichkeiten geschätzt?
1
2
Ersetze alle Wörter mit maximal K (K bspw. 5) Vorkommen in
der Trainings-Baumbank mit UNBEKANNT
Extrahiere ganz normal eine PCFG
Beim Parsen eines Satzes werden die unbekannten Wörter
ebenfalls durch UNBEKANNT ersetzt.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Verbesserung
Unterscheidung zwischen Zahlen, groß- und
kleingeschriebenen Wörtern, Bindestrichwörtern etc.
Eigenes Unbekannt-Token für jede Wortklasse
Problem: Durch das Ersetzen seltener Wörter mit UNBEKANNT
geht Information über die seltenen Wörter verloren.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Glättungsansatz
Glättung mit Backoff-Verteilung für Klassen unbekannter
Wörter
pbackoff (UNBEKANNT[w ] |A) =
N1+ (A, [w ])
N1+ (A, •)
[w ]
Klasse des Wortes w
N1+ (A, [w ])
Zahl der Wörter im Trainingskorpus, die zu derselben Klasse
wie w gehören und mit der Wortart A auftraten.
N1+ (A, •)
Zahl der Wörter insgesamt, die mit Wortart A auftraten.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Collins Parser
Unterschiede zum Kopf-lexikalisierten Parsing:
Lexikalisierung mit Wort und Wortart
SVFIN,bought
NPN,week
ADJADJ,last NN,week
last
week
NPPN,IBM
VPVFIN,bought
PNPN,IBM
IBM
VFINVFIN,bought
bought
NPN,company
DTDT,the NNN,company
the
Helmut Schmid
Statistisches Parsing
company
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Collins Parser
keine explizite Grammatik
andere Zerlegung der Regelwahrscheinlichkeiten
P(SVFIN,bought → NPN,week NPPN,IBM VPVFIN,bought) =
PKopf(VP | SVFIN,bought)
Plinks(NPN,week | SVFIN,bought, VP)
Plinks(NPPN,IBM | SVFIN,bought, VP)
Plinks(STOP | SVFIN,bought, VP)
Prechts(STOP | SVFIN,bought, VP)
⇒ Argumente/Modifikatoren sind voneinander unabhängig
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Collins Parser
weitere Zerlegung
Plinks(NPN,week | SVFIN,bought, VP) =
Plinks(NP,N | bought, VFIN, S, VP)
Plinks(week | bought, VFIN, S, VP, NP, N)
Backoff-Glättung nach dem Witten-Bell-Verfahren
Plinks(NP,N | bought, VFIN, S, VP)
Plinks(NP,N | VFIN, S, VP)
Plinks(NP,N | S, VP)
Plinks(week | bought, VFIN, S, VP, NP, N)
Plinks(week | VFIN, S, VP, NP, N)
Plinks(week | N)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Collins Parser
Spezialbehandlung nicht-rekursiver NPs (=NPB)
P(NPBN,week → ADJADJ,last NN,week) =
PKopf(N | NPB, N, week)
Plinks(ADJ | NPB, N, week)
Plinks(last | NPB, N, week, ADJ)
Plinks(STOP | NPB, ADJ, last)
Prechts(STOP | NPB, N, week)
⇒ Abhängigkeit von der Nachbarkonstituente
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Collins Parser
Unterschiede zum Kopf-lexikalisierten Parsing
Lexikalisierung mit Wort und Wortart
SVFIN,bought → NPN,week NPPN,IBM VPVFIN,bought
neue Zerlegung der Regelwahrscheinlichkeit:
Spezialbehandlung nicht-rekursiver NPs
Verfeinerungen
Distanzmerkmal
Subkategorisierung
Koordination
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Collins Parser
gute Ergebnisse
Precision 87.5 - 88.0%
Recall
87.7 - 88.3%
optimiert für die englische Penn Treebank
Ergebnisse im Deutschen kaum besser als für einfache PCFGs
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Charniak Parser
Unterschiede zum Collins Parser
anderer Kontext
Kategorie le , präterminaler Kopf te und lexikalischer Kopf he
des Elternknotens
+ Kategorie des Großelternknotens lg
+ Kategorie des Vorgängerknotens lv
− Kategorie des syntaktischen Kopfes
Wahrscheinlichkeitsverteilungen für
Kategorie des Kopfes M
Kategorien der linken Tochterknoten Li
Kategorien der rechten Tochterknoten Ri
präterminale Köpfe t
terminale Köpfe h
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Charniak Parser
Zerlegung der Wahrscheinlichkeiten (hier für t)
p̂(t|l, le , te , lv , lg , he )
p(t|l, le ) p(t|l, le , te ) p(t|l, le , te , lv )
p(t|l) p(t|l, le ) p(t|l, le , te )
p(t|l, le , te , lg ) p(t|l, le , te , he )
p(t|l, le , te )
p(t|l, le , te )
= p(t|l)
p(t|l), p(t|l, le ), p(t|l, le , te ) usw. sind geglättete
Wahrscheinlichkeiten
P
t p̂(t|l, le , te , lv , lg , he ) ist nicht genau 1
Charniak verzichtet auf eine Normalisierung
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Kopflexikalisierte PCFGs
Parameterglättung
Unbekannte Wörter
Collins Parser
Parsinggenauigkeit
Parser
PCFG mit Annotationen
Collins
Charniak
Petrov
Precision
86,9
87,2
89,6
90,2
Helmut Schmid
Recall
86,3
88,1
89,5
89,9
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Überblick
1
PCFGs
2
Baumbank-Transformationen
3
Lexikalisierung
4
Evaluation
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Messung der Parsinggenauigkeit
Möglichkeit 1
Testsätze werden geparst und dann von Hand geprüft.
Genauigkeit = Prozentsatz der korrekten Parsebäume
Probleme
1
Jede Evaluation erfordert einen hohen manuellen Aufwand
2
Die Genauigkeit wird überschätzt, wenn Fehler übersehen
werden.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Messung der Parsinggenauigkeit
Möglichkeit 1
Testsätze werden geparst und dann von Hand geprüft.
Genauigkeit = Prozentsatz der korrekten Parsebäume
Probleme
1
Jede Evaluation erfordert einen hohen manuellen Aufwand
2
Die Genauigkeit wird überschätzt, wenn Fehler übersehen
werden.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Evaluation mit einem Goldstandard
Möglichkeit 2
Die Testsätze werden von Hand geparst.
Die automatisch geparsten Sätze werden mit den manuell
geparsten Sätzen verglichen
Vorteile
Der Annotationsaufwand entsteht nur einmal
objektivere Evaluation
Problem: Kurze und lange Sätze zählen gleich viel.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Evaluation mit einem Goldstandard
Möglichkeit 2
Die Testsätze werden von Hand geparst.
Die automatisch geparsten Sätze werden mit den manuell
geparsten Sätzen verglichen
Vorteile
Der Annotationsaufwand entsteht nur einmal
objektivere Evaluation
Problem: Kurze und lange Sätze zählen gleich viel.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Evaluation mit einem Goldstandard
Möglichkeit 2
Die Testsätze werden von Hand geparst.
Die automatisch geparsten Sätze werden mit den manuell
geparsten Sätzen verglichen
Vorteile
Der Annotationsaufwand entsteht nur einmal
objektivere Evaluation
Problem: Kurze und lange Sätze zählen gleich viel.
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Precision
Zählung korrekter Konstituenten statt korrekter Parsebäume
Ein Konstituente ist korrekt, falls der Goldstandard-Parsebaum eine
Konstituente mit derselben Start- und Endposition und derselben
Kategorie enthält.
Precision =
# korrekte Konstituenten
# Konstituenten
Varianten
Labelled Precision (Kategorie der Konstituenten zählt)
Unlabelled Precision (Kategorie ist egal)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Precision
Zählung korrekter Konstituenten statt korrekter Parsebäume
Ein Konstituente ist korrekt, falls der Goldstandard-Parsebaum eine
Konstituente mit derselben Start- und Endposition und derselben
Kategorie enthält.
Precision =
# korrekte Konstituenten
# Konstituenten
Varianten
Labelled Precision (Kategorie der Konstituenten zählt)
Unlabelled Precision (Kategorie ist egal)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Precision
Zählung korrekter Konstituenten statt korrekter Parsebäume
Ein Konstituente ist korrekt, falls der Goldstandard-Parsebaum eine
Konstituente mit derselben Start- und Endposition und derselben
Kategorie enthält.
Precision =
# korrekte Konstituenten
# Konstituenten
Varianten
Labelled Precision (Kategorie der Konstituenten zählt)
Unlabelled Precision (Kategorie ist egal)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Precision
Zählung korrekter Konstituenten statt korrekter Parsebäume
Ein Konstituente ist korrekt, falls der Goldstandard-Parsebaum eine
Konstituente mit derselben Start- und Endposition und derselben
Kategorie enthält.
Precision =
# korrekte Konstituenten
# Konstituenten
Varianten
Labelled Precision (Kategorie der Konstituenten zählt)
Unlabelled Precision (Kategorie ist egal)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Precision (Forts.)
Problem Der Precision-Wert sagt nichts darüber aus, wieviele
der GS-Konstituenten der Parser ausgegeben hat.
Goldstandard
Parsebaum
S
S
last
NP
NP
ADJ
N
last
week
PN
VP
VFIN
NP
IBM bought DT
NN
the company
Helmut Schmid
Statistisches Parsing
... company
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Precision und Recall
TP (true positives) Zahl der korrekten Konstituenten
FP (false positives) Zahl der inkorrekten Konstituenten
FN (false negatives) Zahl der fehlenden Konstituenten
Precision =
TP
TP+FP
Helmut Schmid
Recall =
Statistisches Parsing
TP
TP+FN
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
F-Score
F-Score: harmonisches Mittel von Precision und Recall
Fα =
1
=
α P1 + (1 − α) R1
1
αR
PR
+
(1−α)P
PR
=
PR
αP + (1 − α)R
Falls Precision und Recall gleiches Gewicht erhalten:
F =
2PR
P +R
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
F-Score
F-Score: harmonisches Mittel von Precision und Recall
Fα =
1
=
α P1 + (1 − α) R1
1
αR
PR
+
(1−α)P
PR
=
PR
αP + (1 − α)R
Falls Precision und Recall gleiches Gewicht erhalten:
F =
2PR
P +R
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Trainings- vs. Testdaten
Beim statistischen Parsing benötigt man manuell erstellte
Parsebäume für
Training
Evaluation
Kann man in beiden Fällen dieselben Daten nehmen?
Nein!!!
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Trainings- vs. Testdaten
Beim statistischen Parsing benötigt man manuell erstellte
Parsebäume für
Training
Evaluation
Kann man in beiden Fällen dieselben Daten nehmen?
Nein!!!
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Trainings- vs. Testdaten
Beim statistischen Parsing benötigt man manuell erstellte
Parsebäume für
Training
Evaluation
Kann man in beiden Fällen dieselben Daten nehmen?
Nein!!!
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Held-out-Daten
Statistische Parser haben oft Parameter, deren Werte von Hand
eingestellt werden.
Gute Werte werden oft ermittelt, indem man den Parser mit
verschiedenen Parametern evaluiert.
Sollte man dafür die Testdaten oder die Trainingsdaten nehmen?
Weder noch!!!
Zur Optimierung der Parameter sollte ein Teil der Trainingsdaten
beiseitegelegt werden (⇒ Held-Out-Daten)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Held-out-Daten
Statistische Parser haben oft Parameter, deren Werte von Hand
eingestellt werden.
Gute Werte werden oft ermittelt, indem man den Parser mit
verschiedenen Parametern evaluiert.
Sollte man dafür die Testdaten oder die Trainingsdaten nehmen?
Weder noch!!!
Zur Optimierung der Parameter sollte ein Teil der Trainingsdaten
beiseitegelegt werden (⇒ Held-Out-Daten)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Held-out-Daten
Statistische Parser haben oft Parameter, deren Werte von Hand
eingestellt werden.
Gute Werte werden oft ermittelt, indem man den Parser mit
verschiedenen Parametern evaluiert.
Sollte man dafür die Testdaten oder die Trainingsdaten nehmen?
Weder noch!!!
Zur Optimierung der Parameter sollte ein Teil der Trainingsdaten
beiseitegelegt werden (⇒ Held-Out-Daten)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Held-out-Daten
Statistische Parser haben oft Parameter, deren Werte von Hand
eingestellt werden.
Gute Werte werden oft ermittelt, indem man den Parser mit
verschiedenen Parametern evaluiert.
Sollte man dafür die Testdaten oder die Trainingsdaten nehmen?
Weder noch!!!
Zur Optimierung der Parameter sollte ein Teil der Trainingsdaten
beiseitegelegt werden (⇒ Held-Out-Daten)
Helmut Schmid
Statistisches Parsing
PCFGs
Baumbank-Transformationen
Lexikalisierung
Evaluation
Held-out-Daten
Statistische Parser haben oft Parameter, deren Werte von Hand
eingestellt werden.
Gute Werte werden oft ermittelt, indem man den Parser mit
verschiedenen Parametern evaluiert.
Sollte man dafür die Testdaten oder die Trainingsdaten nehmen?
Weder noch!!!
Zur Optimierung der Parameter sollte ein Teil der Trainingsdaten
beiseitegelegt werden (⇒ Held-Out-Daten)
Helmut Schmid
Statistisches Parsing

Podobne dokumenty