Statistische Methoden in der Maschinellen Sprachverarbeitung

Werbung
Statistische Methoden in der
Maschinellen Sprachverarbeitung
Helmut Schmid und Thomas Müller
IMS, Universität Stuttgart
SNLP
Literatur
Christopher Manning und Hinrich Schütze: Foundations of Statistical Natural Language Processing,
MIT Press.
Geforderte Leistungen
• Bearbeitung der 7 Übungen
– Rechenübungen
– Programmierübungen
• Abschlussprüfung (schriftl. oder mündl.)
Webseite zum Seminar:
http://www.ims.uni-stuttgart.de/∼schmid/SNLP
Helmut Schmid
2
SNLP
Überblick
• Textkorpora
• Mathematische Grundlagen
• Kollokationsextraktion
• Wortbedeutungsdesambiguierung
• Sprachidentifizierung (Language Guesser)
• Wortart-Annotierung (Tagger)
• Parsen mit statistischen Methoden
• Übersetzung mit statistischen Methoden
Helmut Schmid
3
SNLP
Textkorpora
Korpus: Textsammlung für linguistische Zwecke
Einfache Häufigkeitsangaben zu Korpora:
• Gesamtzahl der Wörter (Tokens)
Tom Sawyer: 71 370 Tokens
• Zahl der unterschiedlichen Wörter (Types)
Tom Sawyer: 8 018 Types
• Zahl der Wörter, die einmal aufgetreten sind
(Hapax Legomena)
Tom Sawyer: 3 993 Hapax Legomena
Helmut Schmid
4
SNLP
Wortzählung
Wort
the
and
a
to
of
was
it
in
that
he
I
his
you
Tom
with
Häufigkeit
3332
2972
1775
1725
1440
1161
1027
906
877
877
783
772
686
679
642
• Funktionswörter: Artikel, Präpositionen, Konjunktionen, Pronomina etc.
• Inhaltswörter: Verben, Substantive, Adjektive,
Adverbien
Helmut Schmid
5
SNLP
Häufigkeiten 2. Ordnung
Wieviele Wörter tauchen genau n-mal auf?
n
1
2
3
4
5
6
7
8
9
10
11-50
51-100
>100
fn
3993
1292
664
410
243
199
172
131
82
91
540
99
102
⇒ Die meisten Wörter sind selten.
Helmut Schmid
6
SNLP
Rang vs. Häufigkeit
Daten: Korpus der Wochenzeitung “Die Zeit”
5000
Zeit
4500
4000
Frequenz
3500
3000
2500
2000
1500
1000
500
0
0
500 1000 1500 2000 2500 3000 3500 4000 4500 5000
Rang
1/r
Zeit
100000
Frequenz
10000
1000
100
10
1
1
Zipf’s Gesetz:
Helmut Schmid
10
f ∼ 1r
100
1000
Rang
10000
100000
(f · r ≈ K)
7
SNLP
Statistik I
• Statistik beschäftigt sich mit der Frage, wie
wahrscheinlich ein Ereignis ist.
Beispiel: Wahrscheinlichkeit von sechs Richtigen beim Lotto
• Zufallsexperiment: Experiment, bei dem mehrere Ergebnisse möglich sind. (Werfen von 2
Würfeln)
• Zufallsereignis: Das Ergebnis eines Zufallsexperimentes (7 Augen mit 2 Würfeln)
• Elementarereignis: Ereignis, das sich nicht als
Summe zweier anderer Ereignisse darstellen läßt.
• Stichprobe: Folge der Ereignisse, die sich bei
wiederholter Durchführung eines Zufallsexperimentes ergeben.
Helmut Schmid
8
SNLP
Statistik II
• Stichprobenraum Ω: Menge der möglichen Elementarereignisse
• Ereignisraum ℘(Ω): Menge der möglichen Ereignisse
• Wahrscheinlichkeitsverteilung: eine Funktion
p, die jedem Elementarereignis e einen Wert zwischen 0 und 1 zuweist, wobei gilt
X
p(e) = 1
e
• Die Wahrscheinlichkeit eines Ereignisses ist gleich
der Summe der Wahrscheinlichkeiten der entsprechenden Elementarereignisse.
Beispiel: Augenzahl 5 mit 2 Würfeln
Helmut Schmid
9
SNLP
Statistik III
• Bedingte Wahrscheinlichkeit: P (A|B)
Wahrscheinlichkeit eines Ereignisses A, wenn das
Ereignis B bereits bekannt ist.
P (A|B) =
P (A ∩ B)
P (B)
Beispiele:
– Würfel: Wahrscheinlichkeit, dass die Augenzahl eines Würfels gerade ist, wenn die Augenzahl größer als 3 ist.
– Wörter eines Zeitungsartikels: Wahrscheinlichkeit des Wortes Einstein, wenn das Wort
Albert vorausgeht.
• Apriori-Wahrscheinlichkeit: P (A)
Wahrscheinlichkeit eines Ereignisses A ohne das
zusätzliche Wissen über B
Helmut Schmid
10
SNLP
Statistik IV
• Kettenregel
P (A1 ∩ A2) = P (A1)P (A2|A1)
P (A1∩A2∩A3∩...) = P (A1)P (A2|A1)P (A3|A1∩A2)...
• Theorem von Bayes:
P (B|A)P (A)
P (A|B) =
P (B)
→•
Helmut Schmid
11
SNLP
Statistik V
• Zufallsvariable: Funktion X : Ω → <, welche
jedem Ereignis ω eine reelle Zahl X(ω) zuordnet.
Beispiel: Schulnoten
• Vorteil: Allgemeinere Betrachtung von Zufallsexperimenten möglich
• Falls X : Ω → S, wobei S ⊂ < eine abzählbare
Menge ist, so ist X eine diskrete Zufallsvariable.
• Falls X : Ω → {0, 1}, so handelt es sich um ein
Bernoulli-Experiment.
• Wahrscheinlichkeitsfunktion
p(X = x) = p(x) = P (Ax),
wobei Ax = {ω ∈ Ω|X(ω) = x}
Helmut Schmid
12
SNLP
Statistik VI
• Erwartungswert: der Mittelwert einer Zufallsvariablen
E(X) =
X
p(x) x
x
• Beispiel: Wenn ein Würfel geworfen wird und Y
die Augenzahl auf der Oberseite ist, dann ist
der Erwartungswert von Y
6
X
6
1 X
21
E(Y ) =
p(y) y =
y=
6
6
y=1
y=1
• Varianz: Maß für die Streuung der Werte einer
Zufallsvariablen
V ar(X) = E((X − E(X))2) = E(X 2) − E 2(X)
→•
• Standardabweichung: Quadratwurzel der Varianz
Helmut Schmid
13
SNLP
Statistik VII
• Mittelwert einer Stichprobe x1, x2, ..., xn
n
1 X
x̄ =
xi
n i=1
• Varianz einer Stichprobe
s2 =
Helmut Schmid
n
1 X
(xi − x̄)2
n − 1 i=1
14
SNLP
Statistik VIII
• Wenn mehrere Zufallsvariablen über einem Ereignisraum definiert werden, können gemeinsame Verteilungen (joint probability) definiert
werden.
p(x, y) = P (X = x, Y = y)
Beispiel: Wurf mit 2 Würfeln
X=Augenzahl des 1. Würfels
Y=Augenzahl des 2. Würfels
• Randverteilungen (marginal probabilities) erhält
man aus gemeinsamen Verteilungen, indem man
über alle Werte einer Zufallsvariablen summiert.
pX (x) =
pY (y) =
X
y
X
p(x, y)
p(x, y)
x
• Unabhängigkeit: Zwei Zufallsvariablen X und
Y sind unabhängig, falls p(x, y) = pX (x) pY (y)
Helmut Schmid
15
SNLP
Verteilungen I
Eine Binomialverteilung ergibt sich, wenn ein Versuch mit zwei Ausgängen (Bernoulli-Experiment)
wiederholt ausgeführt wird. (Beispiel: Münzwurf)
Die Wahrscheinlichkeit, dass ein Bernoulli-Ereignis
mit der Wahrscheinlichkeit p bei n Versuchen r-mal
auftritt, beträgt
n
b(r; n, p) =
pr (1 − p)n−r
r
n
n!
=
r
(n − r)! r!
0.3
b(r;10,0.5)
b(r;10,0.75)
0.25
Wahrsch.
0.2
0.15
0.1
0.05
0
0
2
4
6
8
10
Frequenz
Helmut Schmid
16
SNLP
Verteilungen II
• Der Erwartungswert (Mittelwert) einer Binomialverteilung b(r; n, p) beträgt np.
• Die Varianz einer Binomialverteilung beträgt
np(1 − p).
• Für große Werte von n nähert sich die Kurve der (diskreten) Binomialverteilung der Kurve
der kontinuierlichen Normalverteilung an.
Helmut Schmid
17
SNLP
0.25
’data10’
Wahrsch.
0.2
0.15
0.1
0.05
0
0
2
4
6
8
10
Frequenz
0.08
’data100’
0.07
Wahrsch.
0.06
0.05
0.04
0.03
0.02
0.01
0
0
20
40
60
Frequenz
0.03
80
100
’data1000’
0.025
Wahrsch.
0.02
0.015
0.01
0.005
0
0
Helmut Schmid
200
400
600
Frequenz
800
1000
18
SNLP
Verteilungen IV
• Die Normalverteilung ist gegeben durch
1
− (x−µ)
e 2σ2
n(x; µ, σ) = √
2π σ
2
0.4
n(x;0,1)
n(x;1.5,2)
0.35
Wahrsch.
0.3
0.25
0.2
0.15
0.1
0.05
0
-4
-2
0
Frequenz
2
4
• Ein Beispiel für annähernd normalverteilte Werte ist die Körpergröße (bei einem Geschlecht).
• Normalverteilungen werden auch als Gauß’sche
Verteilungen bezeichnet. Wenn sich eine Verteilung als Summe von Normalverteilungen darstellen lässt, so spricht man von einer Mischung
von Gauß-Verteilungen (Beispiel: Körpergröße)
Helmut Schmid
19
SNLP
Wahrscheinlichkeits-Schätzung
• Relative Häufigkeit: Wenn in einer Stichprobe
der Größe N ein Ereignis n-mal auftritt, so ist
n seine relative Häufigkeit.
N
• Für zunehmende Stichprobengröße konvergiert
die relative Häufigkeit eines Ereignisses zu seiner Wahrscheinlichkeit.
genauer ausgedrückt:
Die Wahrscheinlichkeit, daß die relative Häufigkeit um mehr als eine Konstante von der Wahrscheinlichkeit abweicht, konvergiert für zunehmende Größe der Stichprobe gegen Null.
Helmut Schmid
20
SNLP
Entropie I
• Welche Schlagzeile hat die größeren Chancen in
einer Zeitung zu erscheinen?
– Hund beißt Briefträger
– Briefträger beißt Hund
• Eine Nachricht ist umso informativer, je unerwarteter sie ist.
• Entropie: Wenn p(x) die Verteilungsfunktion
einer Zufallsvariablen X ist, dann ist die Entropie folgendermaßen definiert:
1
p(x) log2 p(x) = E(log2
H(X) = H(p) = −
)
p(x)
x∈X
X
Beispiele: Münzwurf, Würfel
• Anwendung: Die Entropie gibt an, wieviele Bits
im Mittel mindestens benötigt werden, um ein
Symbol zu kodieren.
Helmut Schmid
21
SNLP
Entropie II
• Die gemeinsame Entropie zweier Zufallsvariablen X und Y ist definiert als:
X X
H(X, Y ) = −
p(x, y) log2 p(x, y)
x∈X y∈Y
• Die bedingte Entropie der Zufallsvariablen Y ,
wenn die Zufallsvariable X gegeben ist, lautet:
H(Y |X) =
X
p(x)H(Y |X = x)
x∈X

=
X

p(x) −
x∈X
X X
= −
X
p(y|x) log2 p(y|x)
y∈Y
p(x, y) log2 p(y|x)
x∈X y∈Y
• Es gilt:
H(X, Y ) = H(X) + H(Y |X)
→•
• Die Kettenregel für bedingte Entropie
H(X1 , X2 , X3 , ...) = H(X1 ) + H(X2 |X1 ) + H(X3 |X1 , X2 )...
Helmut Schmid
22
SNLP
Mutual Information I
• Aufgrund der Kettenregel für die Entropie gilt
H(X, Y ) = H(X) + H(Y |X) = H(Y ) + H(X|Y )
und somit
H(X) − H(X|Y ) = H(Y ) − H(Y |X) = I(X; Y )
• Mutual Information I(X; Y ): Menge der Information, die eine Zufallsvariable über eine andere
enthält
p(x, y)
I(X; Y ) =
p(x, y) log2
p(x)p(y)
x,y
X
→•
• MI ist ein symmetrisches nicht-negatives Maß
der gemeinsamen Information zweier Zufallsvariablen.
• Punktweise Mutual Information: ein Maß für
die Korreliertheit von bspw. zwei Wörtern
p(x, y)
I(x; y) = log2
p(x)p(y)
Helmut Schmid
23
SNLP
Relative Entropie
• Relative Entropie (Kullback-Leibler-Abstand)
zweier Verteilungsfunktionen p(x) und q(x) ist
definiert als
p(x)
D(p||q) =
p(x) log2
q(x)
x∈X
X
• Die relative Entropie ist ein Maß für die Unterschiedlichkeit zweier Verteilungen.
• Sie gibt an, wieviel Bits im Mittel verschwendet
werden, wenn Ereignisse mit der Verteilung p
mit einem Code, der für die Verteilung q optimal
ist, kodiert werden.
→•
• Die relative Entropie ist immer nicht-negativ
und D(p||q) = 0 gilt gdw. p = q.
• Die Mutual Information ist ein Maß dafür, wie
weit die gemeinsame Verteilung von einer unabhängigen Verteilung entfernt ist:
I(X; Y ) = D(p(x, y) || p(x)p(y))
→•
Helmut Schmid
24
SNLP
Cross-Entropie
• Cross-Entropie zwischen einer Zufallsvariablen
X, die p-verteilt ist, und einer Verteilungsfunktion q
H(X, q) = −
X
p(x) log2 q(x)
x
1
)
q(x)
= H(X) + D(p||q)
= Ep(log2
→•
• Die Cross-Entropie eines Korpus x1n ist folgendermaßen definiert:
1
H(x1n, p) = − log2 p(x1n)
n
→•
• Statt der Cross-Entropie wird gelegentlich auch
die Perplexität verwendet
1
perp(x1n, p) = 2H(x1n,p) = p(x1n)− n
Helmut Schmid
25
SNLP
Kollokationen
Kollokationen sind mehr oder weniger feste Wortverbindungen, die beim Erwerb einer Sprache gelernt werden müssen. Die genaue Definition ist bei
verschiedenen Autoren unterschiedlich.
Häufig verwendete Kriterien für Kollokationen sind
• fehlende Kompositionalität: Die Bedeutung
einer Kollokation ergibt sich nicht kompositionell aus der Bedeutung der Einzelwörter
Beispiele: auf die Palme bringen, mit den Wölfen heulen,
eine Rede halten
• fehlende Ersetzbarkeit: Teile einer Kollokation können nicht frei gegen semantisch äquivalente Wörter ausgetauscht werden.
Beispiele: steife Brise, ?steifer Wind, hohe Achtung, tiefste Verachtung
• fehlende Modifizierbarkeit: Viele Kollokationen können nicht modifiziert werden.
Beispiele: im Auge behalten, ?in beiden Augen behalten
Guten Morgen, Mit freundlichen Grüßen
Helmut Schmid
26
SNLP
Kollokationen II
Weiteres Kriterium: fehlende direkte Übersetzbarkeit
“eine Entscheidung treffen” kann nicht als “to hit
a decision” ins Englische übersetzt werden.
Für manche Autoren sind auch stark miteinander
assoziierte Wörter Kollokationen, wie bspw.
Hund – bellen oder Arzt – Krankenhaus
Da Kollokationen wie Vokabeln gelernt werden müssen,
sind Methoden der automatischen Extraktion interessant für die Erstellung von entspr. Wörterbüchern
Helmut Schmid
27
SNLP
Kollokationen III
• häufigste Wortpaare in New York Times
Häufigkeit
80871
58841
26430
21842
21839
18568
16121
15630
15494
13899
13689
13361
Wort
of
in
to
on
for
and
that
at
to
in
of
by
Wort
the
the
the
the
the
the
the
the
be
a
a
the
• Adjektiv-Nomen-Paare im Hansard-Korpus
Häufigkeit
87655
20997
12260
8447
8071
7871
7683
7532
7511
6980
6814
6724
Helmut Schmid
Wort
hon.
federal
hon.
private
last
supplementary
Canadian
same
unanimous
small
great
federal
Wort
member
government
members
sector
year
question
people
time
consent
business
deal
Government
28
SNLP
Kollokationen IV
• Kollokationen mit variablem Wortabstand
⇒ Fenster (Abstand x bis y)
• häufigste Verb-Nomen-Paare mit maximalem Abstand 5 (lemmatisiert)
Verb
spielen
sagen
stellen
sehen
geben
schütteln
geben
geben
sagen
erzählen
kosten
erscheinen
machen
tragen
Helmut Schmid
Nomen
Rolle
Mann
Frage
Seite
Grund
Kopf
Zeit
Möglichkeit
Frau
Geschichte
Geld
Buch
Spaß
Name
Häufigkeit
28
20
18
16
16
16
14
12
12
12
11
11
10
10
29
SNLP
Statistische Tests
• Wortpaare sind häufig
– wenn die einzelnen Wörter häufig sind
– wenn sie eine Kollokation bilden
• Bei der Suche nach Kollokationen interessieren
diejenigen Paare, die häufiger sind als auf Grund
der Wahrscheinlichkeiten der Einzelwörter zu erwarten ist.
• Welche Paare das sind, sagt ein statistischer
Test.
Helmut Schmid
30
SNLP
Statistische Tests II
• Nullhypothese: Es besteht keine Beziehung zwischen den Einzelwörtern, also
p(w1, w2) = p(w1)p(w2)
• Erstelle eine Stichprobe (Korpus von Wortpaaren)
• Berechne die Gesamtwahrscheinlichkeit p aller
möglichen Stichprobenergebnisse, die mindestens
so weit vom Erwartungswert (bei Annahme der
Nullhypothese) abweichen wie das beobachtete
Ergebnis.
• Verwerfe die Nullhypothese, falls p zu klein ist
– p < 0.05 (signifikante Abweichung)
– p < 0.01
– p < 0.001
Helmut Schmid
31
SNLP
Statistische Tests III
• Beispiel: Ist das Bigram “new companies” signifikant häufiger als erwartet?
• Datenbasis: 14.307.668
15.828
4.675
8
Adjektiv-Nomen-Paare
Adjektiv new
Nomen companies
new companies
• Nullhypothese: Das Bigramm hat die Wahrscheinfc
lichkeit p0 = p̃new p̃companies = fNn N
• Die Wahrscheinlichkeit, bei N = 14.307.668 Wiederholungen eines Bernoulli-Experimentes mit
der Wahrscheinlichkeit p0 mind. 8 Einser-Ereignisse zu bekommen, ist
b(≥ 8, N, p0) = 1 −
7
X
b(i, N, p0) ≈ 0.15
i=0
• Bei Ablehnung der Nullhypothese beträgt die
Irrtumswahrscheinlichkeit 15 %.
⇒ Ergebnis nicht signifikant
Helmut Schmid
32
SNLP
χ2-Test
Der χ2-Test wird auf Kontingenz-Tabellen angewendet.
w2 = companies
w2 6= companies
w1 6= new
4667
14287173
14291840
w1 = new
8
15820
15828
4675
14302993
14307668
Der χ2-Test ist definiert durch
χ2 =
X (Oij − Eij )2
i,j
Eij
Oij sind die Werte aus der Kontingenztabelle
Eij sind die entsprechenden Erwartungswerte unter
der Annahme der Unabhängigkeit.
Eij = pi−p−j N =
Oi−O−j
O−−
Das zugehörige Signifikanzniveau liest man aus einer Tabelle ab.
Beispiel: χ2 ≈ 1.55 < 3.84
Helmut Schmid
⇒ nicht signifikant
33
SNLP
Probleme Statistischer Tests
• Viele Bigramme sind signifikant häufig, weil die
Unabhängigkeitsannahme auch für NichtKollokationen oft nicht erfüllt ist.
⇒ Sortierung nach Stärke der Assoziation
• Bigramme mit niedrigen Frequenzen erhalten
oft zu hohe Bewertungen.
⇒ Mindesthäufigkeit von bspw. 5 verwenden
Helmut Schmid
34
SNLP
Weitere Assoziationsmaße
• t-Score:
O11 − E11
t= √
O11
• Log-Likelihood Ratio
Oij
L=2
Oij log
Eij
ij
X
• punktweise Mutual Information
O11
M I = log
E11
Helmut Schmid
35
SNLP
Statistische Sprachmodelle
• Für verschiedene Anwendungen (z.B. Spracherkennung, Sprachidentifizierung, statistische Übersetzung) benötigt man Sprachmodelle, die Sätzen
Wahrscheinlichkeiten zuordnen.
Spracherkennung
wreck a nice beach – recognize speech
maschinelle Übersetzung
He will tomorrow come – He will come tomorrow
• Mit der Kettenregel kann die Gesamtwahrscheinlichkeit eines Textes xn
1 = x1 , ..., xn folgendermaßen zerlegt werden
p(xn
1 ) = p(x1 ) p(x2 |x1 ) p(x3 |x1 , x2 )...p(xn |x1 ...xn−1 )
Die xi können Wörter (SE, MÜ) oder Buchstaben (SI) sein.
• Wegen ihrer großen Zahl, können diese Wahrscheinlichkeiten nicht direkt geschätzt werden.
Helmut Schmid
36
SNLP
Statistische Sprachmodelle
Vereinfachende Annahme: Der Text wurde von einem Markow-Prozess k-ter Ordnung generiert, d.h.
p(x1...xn) =
n
Y
p(xi|xi−k ...xi−1)
i=1
• Jedes Wort hängt nur von den k vorhergehenden
ab.
p(xi|x1...xi−1) = p(xi|xi−k ...xi−1)
• Zeitinvarianz (hier für Markowprozesse 1. Ordnung)
p(Xi = a|Xi−1 = b) = p(Xk = a|Xk−1 = b) für
beliebige i, k
Hinzufügen eines Startsymbols x0 = hsi damit
p(x1|x0) definiert ist
Hinzufügen eines Endesymbols xn+1 = hei damit
P
n
xn p(x1 ) = 1
1
Helmut Schmid
37
SNLP
Statistische Sprachmodelle
Beispiel
Trainingskorpus:
I can can a can
Häufigkeiten: f(hsi, I)
f(I, can)
f(can, can)
f(can, a)
f(a, can)
f(can, hei)
=
=
=
=
=
=
1
1
1
1
1
1
Modell-Wahrscheinlichkeiten: p(I | hsi)
p(can | I)
p(can | can)
p(a | can)
p(can | a)
p(hei | can)
Wahrscheinlichkeit von
=
=
=
=
=
=
1
1
1/3
1/3
1
1/3
I can a can
p(I can a can) =
p(I | hsi) p(can | I) p(a | can) p(can | a) p(hei | can)
= 1 * 1 * 1/3 * 1 * 1/3 = 1/9
Helmut Schmid
38
SNLP
Vergleich von Englischen
Buchstabenmodellen
Modellierung von englischem Text mit Markow-Modellen
unterschiedlicher Ordnung über Buchstabenfolgen
p(It is ...) = p(I|hsi) p(t|I) p( |t)...
Cross-Entropie misst, wie gut die verschiedenen Modelle englischen Text beschreiben.
(Je kleiner die Entropie desto besser.)
1
n
H(x1 , p) = − log2 p(xn
1)
n
Modell
1
Uniforme Verteilung 27
0-ter Ordnung p(a)
1-ter Ordnung p(a|b)
Mensch (Shannon)
Helmut Schmid
Cross-Entropie
1)
4,76 Bit (= −log2 27
4,03 Bit
2,8 Bit
1,3 Bit
39
SNLP
Sprachidentifikation
Bei der Sprachidentifikation gilt es, die Sprache
eines Textes zu bestimmen.
Beispiel: Este sistema de ensaio é ideal.
Spanisch, Italienisch, Portugiesisch, Rumänisch?
Helmut Schmid
40
SNLP
Sprachidentifikation
Theoretische Herleitung
Bei der Sprachidentifikation suchen wir die wahrscheinlichste Sprache L für einen Text bestehend
aus den Zeichen an
1 = a1 , ..., an , d.h.
arg max p(L|an
1)
L
Anwendung des Bayes’schen Theorems:
n |L) p(L)
p(a
1
arg max p(L|an
1 ) = arg max
L
L
p(an
1)
Da p(an
1 ) nicht von L abhängt, hat es keinen Einfluss auf das Ergebnis
arg max p(an
1 |L) p(L)
L
Falls keine Information über die Apriori-Wahrscheinlichkeit p(L) der Sprachen gegeben ist, wird eine
uniforme Verteilung angenommen und somit
n
arg max p(an
1 |L) = arg max pL (a1 )
L
L
Man wählt also die Sprache L, deren Wahrscheinlichkeitsmodell pL die Daten mit der höchsten Wahrscheinlichkeit generiert.
pL(an
1) =
n+1
Y
pL(ai|ai−k ...ai−1)
(Markowmodell)
i=1
Helmut Schmid
41
SNLP
Sprachidentifikation
Anwendung
• Erstellung eines Trainingskorpus für jede mögliche Sprache (Deutsch, Englisch, Spanisch, ...)
• Schätzung der Parameter eines Markowmodelles für jede Sprache L
p (a, b, c)
pL(c|a, b) = P L
x pL (a, b, x)
NL
fL(a, b, c)
=
P
NL
x fL (a, b, x)
f (a, b, c)
= P L
x fL (a, b, x)
(Häufigkeiten fL(a, b, c) aus Trainingskorpus)
• Berechnung der Wahrscheinlichkeit pL(a1, a2, ..., an)
für jede Sprache L
• Rückgabe der Sprache L, für die pL(a1, a2, ..., an)
maximal wird
Helmut Schmid
42
SNLP
Sprachidentifikation II
Beispielergebnisse (Cross-Entropie statt Wahrscheinlichkeiten)
H(pL, xn
1) = −
1
log2 pL(xn
1)
n
Text: Das ist ein deutscher Satz.
Modell
danish
dutch
english
finnish
french
german
italian
portuguese
spanish
swedish
Bits/Symbol
4.048654
3.027868
3.604354
3.976386
3.426143
1.754679
4.256318
4.362893
4.314057
3.879200
Text: This is an English sentence.
Modell
danish
dutch
english
finnish
french
german
italian
portuguese
spanish
swedish
Helmut Schmid
Bits/Symbol
3.588310
3.558052
1.578621
4.080841
3.091803
2.806066
3.980872
3.839128
3.833479
3.492607
43
SNLP
Parameter-Schätzung
Parameter werden üblicherweise mit relativen Frequenzen aus Trainingsdaten geschätzt.
Beispiel: Wort-Bigramm-Wahrscheinlichkeiten
p(trinkt, T ee) =
f (trinkt, T ee)
N
N ist die Gesamtzahl der Bigramme im Korpus
Dies ist die Maximum-Likelihood-Schätzung (MLE)
bzgl. der Trainingsdaten. D.h. bei keiner anderen
Wahl der Parameter wäre die Wahrscheinlichkeit
der Trainingsdaten höher.
Problem: Viele Wortkombinationen tauchen in den
Trainingsdaten nicht auf. Deren Wahrscheinlichkeit
wird auf 0 geschätzt. Damit haben Texte mit einer
solchen Kombination die Wahrscheinlichkeit 0.
Die Parameter sind zu sehr an die Trainingsdaten
angepasst und generalisieren schlecht zu neuen Daten.
Helmut Schmid
44
SNLP
Glättung von Verteilungen
Generelle Idee: Ungesehene Ereignisse erhalten eine positive
Wahrscheinlichkeit. Gleichzeitig muss die Wahrscheinlichkeit
beobachteter Ereignisse etwas reduziert werden.
Lösung 1: Addiere 1 zu allen Häufigkeiten
f (w, w0) + 1
0
p(w, w ) =
N +B
B ist die Gesamtzahl aller möglichen Wortbigramme.
Es läßt sich zeigen, daß dieses Verfahren optimale
Ergebnisse liefert, wenn die Gleichverteilung a priori
die wahrscheinlichste Verteilung ist.
Das ist aber in der Computerlinguistik meist nicht
der Fall (Zipf-Verteilung).
In der Praxis überschätzt die Addiere-1-Methode
die Wahrscheinlichkeit nicht aufgetretener N-Gramme
und unterschätzt die der aufgetretenen.
Helmut Schmid
45
SNLP
Glättung von Verteilungen
Lösung 2: Addiere λ zu allen Häufigkeiten, wobei
der Wert von λ zwischen 0 und 1 liegt.
f (w, w0) + λ
0
p(w, w ) =
N + Bλ
Addiere λ entspricht einer Interpolation der MLEWahrscheinlichkeit mit einer uniformen Verteilung
N .
mit dem Interpolationsfaktor µ = N +Bλ
0)
f
(w,
w
1
0
p(w, w ) = µ
+ (1 − µ)
N
B
→•
Nachteile:
• Verfahren nötig, das gute λ-Werte liefert.
• Die Wahrscheinlichkeiten häufiger Ereignisse werden nicht adäquat geschätzt. In einem neuen
Korpus derselben Größe würden nur f ∗(w, w0)
viele Wortpaare w,w’ erwartet:
N
{z B}
f ∗(w, w0) = N p(w, w0) = µf (w, w0) + (1 − µ)
|
C
⇒ relative discounting
Helmut Schmid
46
SNLP
Held-Out-Schätzung
Idee: Teile das Trainingskorpus in zwei Teile und
berechne für jedes Korpus die Worthäufigkeiten.
Die Gesamthäufigkeit in Korpus 2 (Held-Out-Daten)
von Wörtern mit der Häufigkeit r in Korpus 1 ist
dann
Cr12 =
X
f2(w, w0)
hw,w0 i:f1 (w,w0 )=r
Nr1: Zahl der Tupel in Korpus 1 mit Häufigkeit r
Damit kann eine geglättete Wahrscheinlichkeitsverteilung definiert werden:
Cr12
0) = r
falls
f
(w,
w
1
Nr1
f ∗(w, w0)
0
p(w, w ) = P
∗
0
w,w0 f (w, w )
f ∗(w, w0) =
Verbesserung: Ausnutzung beider Teile zur Schätzung
(Deleted Estimation)
Cr12 + Cr21
∗
0
f (w, w ) =
Nr1 + Nr2
Helmut Schmid
47
SNLP
Good-Turing-Methode
Good-Turing Theorem: Wenn zwei unabhängige
Stichproben B1 und B2 gleicher Größe von einer
Zufallsvariablen gezogen werden, bei der jeder Wert
für sich binomialverteilt ist, so ist die erwartete
Häufigkeit f ∗ in Stichprobe B2 von den Types mit
Häufigkeit f in B1 gegeben durch
E(Nf +1)
∗
f ≈ (f + 1)
E(Nf )
wobei Nf die Zahl der Types mit Häufigkeit f ist
und E(Nf ) deren Erwartungswert.
Helmut Schmid
48
SNLP
Good-Turing-Methode
E(Nf +1)
∗
f ≈ (f + 1)
E(Nf )
Bestimmung von E(Nf )
• Verwendung der beobachteten Werte Nf aus
der Stichprobe
– funktioniert gut für kleine f
– Probleme mit Nullwerten bei großen f
⇒ Glätten bis zur Häufigkeit k (bspw. k = 10),
darüber f ∗ = f
• Approximierung der beobachteten Werte (f, Nf )
durch eine glatte Funktion S
Berechnung der Wahrscheinlichkeiten:
f ∗(w, w0)
0
p(w, w ) = P
∗
0
w,w0 f (w, w )
Helmut Schmid
49
SNLP
Vergleich von Glättungsverfahren
∗ ),
Praktische Ergebnisse mit Good-Turing (fGT
∗
∗ ) im
Addiere-1 (fadd1
) und Deleted Estimation (fdel
Vergleich zu den empirischen Ergebnissen auf un∗ ).
abhängigen Testdaten (femp
f
0
1
2
3
4
5
6
7
8
9
∗
femp
0.000027
0.448
1.25
2.24
3.23
4.21
5.23
6.21
7.21
8.26
Helmut Schmid
∗
fGT
0.000027
0.446
1.26
2.24
3.24
4.22
5.19
6.21
7.24
8.25
∗
fadd1
0.000137
0.000274
0.000411
0.000548
0.000685
0.000822
0.000959
0.00109
0.00123
0.00137
∗
fdel
0.000037
0.396
1.24
2.23
3.22
4.22
5.20
6.21
7.18
8.18
50
SNLP
Absolute Discounting
• Relative Discounting (Addiere-λ) führt zu falschen
Schätzungen bei häufigen Ereignissen.
• Good-Turing ist schwerer anwendbar, wenn die
Nf -Werte klein sind.
• einfache Alternative: Absolute Discounting.
– Subtraktion eines festen Betrags von allen
positiven Häufigkeiten
– Die Summe der Abzüge wird gleichmäßig auf
die nicht aufgetretenen Ereignisse verteilt.

0

 f (w,w )−δ
N
p(w, w0) =

 (B−N0)δ
N0 N
falls f (w, w0) > 0
sonst
N : Gesamtzahl der Tokens
B: Gesamtzahl der Types
N0 : Zahl der unbeobachteten Types
δ: Discount
Helmut Schmid
51
SNLP
Absolute Discounting II
• Beim Kneser-Ney-Glätten wird der Discount δ
folgendermaßen definiert:
δ=
N1
N1 + 2N2
• Nachteil von Absolute Discounting: Ergebnisse
für Ereignisse der Häufigkeit 1 sind nicht optimal.
• Verbesserung
– Chen, Goodman: unterschiedliche Discounts
für die Häufigkeiten 1, 2 und >2.
Helmut Schmid
52
SNLP
Backoff-Verfahren von Katz
• Glättung bedingter Wahrscheinlichkeiten
p(ci|ci−k , ..., ci−1)
• Statt die Abzüge (Discounts) gleichmäßig über
alle ungesehenen ci zu verteilen, werden sie gemäß
einer “Backoff”-Verteilung verteilt.

 f (ci−k ,...,ci)−δ falls f (...) > 0
f (ci−k ,...,ci−1 )
p(ci|ci−k , ..., ci−1) =
 α p(c |c
i i−k+1 , ..., ci−1 ) sonst
• Der Backoff-Faktor α stellt sicher, dass die Wahrscheinlichkeiten alle zu 1 summieren.
→•
• Das Backoff-Verfahren geht schrittweise bspw.
von Trigramm- zu Bigramm- und zu UnigrammWahrscheinlichkeiten über.
Helmut Schmid
53
SNLP
Addiere-Backoff
f (C, w) + αp̂(w|C 0)
p̂(w|C) =
f (C) + α
• Je kleiner f(C) ist, desto mehr Gewicht erhält
p(w|C 0).
• Je größer α ist, desto mehr Gewicht erhält p(w|C 0).
Wie sollte α am besten gewählt werden?
Helmut Schmid
54
SNLP
Witten-Bell Glättung
Welcher Kontext hat mehr verschiedene Fortsetzungen?
New York Stock ...
New York Times ...
⇒ Glätte stärker, wenn viele verschiedene Fortsetzungen existieren
⇒ Setze α = N1+(C, •) = Anzahl der Types, die
auf C in den Trainingsdaten folgen
Witten-Bell
f (C, w) + N1+(C, •) p̂(w|C 0))
p̂(w|C) =
f (C) + N1+(C, •)
Helmut Schmid
55
SNLP
Evaluierung
Unterschiedliche Sprachmodelle pM können miteinander verglichen werden, indem die Cross-Entropie
für jedes Modell auf neuen(!) Testdaten xn
1 = x1 , ..., xn
berechnet wird.
1
n)
log
p
(x
H(xn
,
p
)
=
−
2
M
M
1
1
n
Alternative: Perplexität
n
1
H(x1 ,p) = p(xn )− n
P erp(xn
,
p)
=
2
1
1
Helmut Schmid
56
SNLP
Wortbedeutungsdesambiguierung
• Wörter sind häufig mehrdeutig (ambig):
– Hahn (Vogel / Wasserhahn / Abzugshahn)
– Bank (Geldbank / Sitzbank / Sandbank)
– (einen Text / mit dem Boot) übersetzen
• Die richtige Bedeutung ergibt sich jeweils aus
dem Textkontext. (⇒ Desambiguierung)
• Wieviele Bedeutungen einem Wort zugeschrieben werden, variiert oft stark.
• Desambiguierung kann daher nur relativ zu einem bestimmten Wörterbuch erfolgen.
Helmut Schmid
57
SNLP
Wortbedeutungsdesamb. II
• Häufig sind die verschiedenen Bedeutungen eines Wortes nicht scharf gegeneinander abgegrenzt:
– Er geht zur Bank (→ Gebäude)
– Er eröffnet ein Konto bei der Bank
(→ Geldinstitut)
– Die Bank bestritt die Vorwürfe
(→ Gruppe von Personen)
– Er hebt bei der Bank Geld ab (→ Gebäude
oder Geldinstitut?)
– Er schreibt ein Buch (→ Text)
– Er hält ein Buch in der Hand (→ Gegenstand)
– Er liest ein Buch (→ Text?)
– Er hat das Buch gekauft aber nicht gelesen
(→ Text und Gegenstand?)
Helmut Schmid
58
SNLP
Wortbedeutungsdesamb. III
• Wortbedeutungsdesambiguierung in der maschinellen Übersetzung
– Hahn → tap, cock
– Karte → ticket, map, card
– Bank → bench, bank
– bank → Ufer, Bank
• Desambiguierung zwischen verschiedenen Bedeutungen eines Wortes mit unterschiedlichen
Wortarten (straffen, einen, sichern, der ) wird
als Wortart-Desambiguierung bezeichnet.
Helmut Schmid
59
SNLP
Wortbedeutungsdesamb. IV
Grundidee: Kontextwörter (v.a Inhaltswörter) sind
starke Indizien für die Wortbedeutung
Er öffnete den Hahn und ließ das Wasser laufen.
Der Hahn saß auf dem Mist und krähte.
Die Desambiguierung erfolgt auf Basis der n benachbarten Inhaltswörter (n beispielsweise 100)
Helmut Schmid
60
SNLP
Naiver Bayes-Klassifikator
• Wir suchen die wahrscheinlichste Bedeutung s
gegeben die Kontextwörter C = w1, ..., wn
p(C|s)p(s)
arg max p(s|C) = arg max
s
s
p(C)
= arg max p(C|s)p(s)
s
• Annahme: Die Kontextwörter sind statistisch
unabhängig gegeben die Wortbedeutung, d.h.
p(w1n|s) = p(w1|s) p(w2|s, w1)...p(wn|s, w1, ..., wn−1)
= p(w1|s) p(w2|s)...p(wn|s)
=
n
Y
p(wi|s)
i=1
(nicht exakt erfüllt, ergibt aber ein einfaches Modell)
• Die Parameter p(w|s) können mit (geglätteten)
ML-Schätzungen auf manuell desambiguierten
Daten bestimmt werden.
f (w, s)
p(w|s) = P
0
w0 f (w , s)
• Es gibt viele weitere Desambiguierungs-Verfahren.
Helmut Schmid
61
SNLP
Anwendung
Training
• Korpus, in dem alle Vorkommen des ambigen
Wortes “w” mit der jeweils richtigen Bedeutung
annotiert
• Extraktion aller Vorkommen von “w” mit 100
Kontextwörtern und korrekter Bedeutung
• Berechnung der Häufigkeit f (s, c) des Auftretens der einzelnen Kontextwörter c mit den verschiedenen Bedeutungen s
• Schätzung der Wahrscheinlichkeiten p(c|s) mit
Glättung
Desambiguierung
• Vorkommen von “w” identifizieren
• Menge W mit den 100 Kontextwörtern extrahieren
• Wahrscheinlichkeit p(W |s) = w∈W p(w|s) für
alle möglichen Bedeutungen s berechnen
Q
• Bedeutung s mit maximalem p(W |s) zurückgeben
Beispiel: → •
Helmut Schmid
62
SNLP
Evaluierung
• Evaluierung mit Pseudo-Desambiguierung
– keine manuelle Annotation notwendig
– Wähle zwei Wörter w1 und w2.
– Ersetze alle Vorkommen von w2 in einem
Korpus durch w1.
– Teile das Korpus in zwei Teile.
– Training auf dem ersten Teil
– Evaluierung auf dem zweiten Teil durch Vergleich mit den Originalwörtern
– Vorteil: minimaler Aufwand für die Erzeugung der Daten, perfekte Genauigkeit
• Obergrenze für die Evaluierung: menschliche Performanz bei der Desambiguierung
• Untergrenze: Wahl der häufigsten Bedeutung
unabhängig vom Kontext
Helmut Schmid
63
SNLP
Wortart-Desambiguierung
Viele Wörter sind nicht nur bzgl. ihrer Bedeutung
sondern auch bzgl. ihrer Wortart ambig.
Beispiele:
sichere
bezahlte
ab
der
sein
Müller
Adjektiv, finites Verb
Adjektiv, Partizip
Präposition, Verbpartikel
Artikel, Demonstrativpron., Relativpron.
Possessivpronomen, infinites Verb
normales Nomen, Eigennamen
Zur Desambiguierung wird der Kontext herangezogen. Es wird aber nicht das Bag-of-Words-Modell
verwendet, da für die Desambiguierung der Wortart
in der Regel die unmittelbar benachbarten Wörter
(bzw. deren Wortart) entscheidend ist.
• der Müller - Martin Müller
• sein Auto - zu sein
Helmut Schmid
64
SNLP
Wortart-Desambiguierung II
• Annahmen des statistischen Modelles:
1. Die Wortart des nächsten Wortes in einer
Folge hängt nur von den Wortarten der k
vorhergehenden Wörter ab.
2. Das nächste Wort selbst hängt nur von seiner Wortart ab.
• Unter diesen Annahmen ist die Wahrscheinlichkeit eines mit Wortart annotierten Textes folgendermaßen definiert:
p(w1n, tn
1) =
n
Y
i=1
p(w |t )
| {zi i }
{z
}
Lexikalische Wk.
Übergangswk.
p(ti|ti−k , ..., ti−1)
|
k ist meist 2 (Trigramm-Tagger).
• Es handelt sich um ein Hidden-Markow-Modell,
weil die Zustände (= Wortarten) nicht direkt
beobachtet werden können.
Beispiel: → •
Helmut Schmid
65
SNLP
Wortart-Desambiguierung III
• Die Wahrscheinlichkeiten können aus manuell
annotierten Trainingsdaten geschätzt werden.
• Übergangswahrscheinlichkeiten:
Glättung mit Backoff oder Interpolation
• lexikalische Wahrscheinlichkeiten:
– Anwendung von Bayes’ Gesetz:
p(w|t) =
p(t|w)p(w)
p(t)
– Der Faktor p(w) kann bei der Optimierung
weggelassen werden.
– ML-Schätzwerte für p(t|w) und p(t)
Wenn ein Lexikon mit der Liste möglicher
Wortarten für jedes Wort gegeben ist, werden die lexikalischen Wahrscheinlichkeiten geglätte
so dass jede Wortart eine positive Wahrscheinlichkeit erhält.
– Problem: unbekannte Wörter
Helmut Schmid
66
SNLP
Wortart-Desambiguierung IV
Behandlung unbekannter Wörter
• Falls alle Funktionswörter im Lexikon gelistet
sind, können unbekannte Wörter nur die Wortarten Nomen, Adjektiv, Adverb oder Verb besitzten.
• Die Wortendung und in geringerem Maß der
Wortanfang sagen viel über die Wortart aus.
Beispiele: ...liche, ...ungen, ...keit, ...te, Un...
• lexikalische Wahrscheinlichkeiten eines unbekannten Wortes w = an
1:
p(t|an
1 ) = p(t|an−k , ..., an )
Schätzung z.B. mit Backoff oder Interpolation
Helmut Schmid
67
SNLP
Anwendung
1. Korpus manuell mit Wortart annotieren
2. Häufigkeiten von Wortart-Trigrammen f (t, t0, t00)
und Wort/Wortart-Paaren f (w, t) aus Korpus
extrahieren
3. geglättete Wahrscheinlichkeiten für p(t|t0, t00), p(t|w)
und p(t) berechnen
4. wahrscheinlichste Wortartfolge tn
1 für den Eingabetext w1n berechnen
Helmut Schmid
68
SNLP
Wortart-Desambiguierung V
Berechnung der wahrscheinlichsten Wortartfolge tn
1
def
δj (i) = maxt1...ti−1 p(w1...wi−1, t1...ti−1, ti = j)
Viterbi-Algorithmus
1. Initialisierung: δj (0) = πj
2. Berechnung:
δj (k) = maxN
i=1 δi (k − 1) aij bjwk
N
ψj (k) = arg max δi(k − 1) aij bjwk
i=1
3. Ausgabe
N
tn = arg max δi(n)
i=1
tk = ψtk+1 (k + 1)
Bigramm-Tagger:
aij = p(tj |ti)
bjwk = p(wk |tj ) oder bjwk = p(tj |wk )/p(tj )
Helmut Schmid
69
SNLP
Wortart-Desambiguierung VI
Trigramm-Tagger
• Transformation eines Markow-Modelles 2. Ordnung in ein Markow-Modell 1. Ordnung
• Jeder Zustand entspricht einem Wortartpaar ht, t0i.
• Übergänge sind nur zwischen Zuständen ht, t0i
und ht0, t00i erlaubt.
• Definition der Übergangswahrscheinlichkeiten:
aht,t0i,ht0,t00i = p(t00|t, t0)
• Definition der lexikalischen Wahrscheinlichkeiten:
bht,t0i,w = p(w|t0)
Helmut Schmid
70
SNLP
Wortart-Desambiguierung VII
EM-Training
• Vorteil: Training ohne manuell annotierte Daten
möglich
• Grundidee:
1. Nimm ein unannotiertes Korpus und ein Lexikon
2. Wähle Startwerte für die Taggerparameter
3. Annotiere das Korpus mit dem Tagger
4. Zähle die Häufigkeiten
5. Schätze die Taggerparameter neu
6. weiter mit 3.
• Statt des Viterbi-Algorithmus wird zur Annotierung der Forward-Backward-Algorithmus verwendet.
Helmut Schmid
71
SNLP
Wortart-Desambiguierung VIII
Der Forward-Backward-Algorithmus berechnet:
• Forward-Wahrscheinlichkeiten
αj (k) = P (w1k , tk = posj )
N
X
=
αi(k − 1) aij bjwk
i=1
Bigramm-Tagger:
αt(k) =
X
αt0 (k − 1) p(t|t0) p(wk |t)
t0 ∈T
• Backward-Wahrscheinlichkeiten
n
βj (k) = P (wk+1
|tk = posj )
N
X
=
aji biwk+1 βi(k + 1)
i=1
Bigramm-Tagger:
βt(k) =
X
p(t0|t) p(wk+1|t0) βt0 (k + 1)
t0 ∈T
Helmut Schmid
72
SNLP
Wortart-Desambiguierung IX
• geschätzte Wortart-Wahrscheinlichkeiten
γj (k) = P (tk = posj |w1n)
P
n, wn)
p(t
tn
:t
=pos
1
1
j
1 k
=
P
n
n
tn p(t1 , w1 )
1
αj (k) βj (k)
= Pn
i=1 αi (n)
• geschätzte Übergangswahrscheinlichkeiten
γij (k) = P (tk = posi, tk+1 = posj |w1n)
P
p(tn
, w1n)
tn
:t
=pos
,t
=pos
1
i
j
k
k+1
1
=
P
n
n
tn p(t1 , w1 )
1
αi(k) aij bjwk+1 βj (k + 1)
=
Pn
i=1 αi (n)
Helmut Schmid
73
SNLP
Wortart-Desambiguierung X
• geschätzte Wort+Wortart-Häufigkeiten
X
cjw =
γj (k)
1≤k≤n:wk =w
• geschätzte Übergangshäufigkeiten
cij =
n
X
γij (k)
k=1
Helmut Schmid
74
SNLP
Wortart-Desambiguierung XI
EM-Training
1. Initialisierung von p(t|t0) und p(w|t)
2. Berechnung geschätzter Werte für f (t0, t) und
f (t, w) mit dem Forward-Backward-Algorithmus
3. Neuschätzung von p(t|t0) und p(w|t)
4. weiter mit 2. bis Abbruchkriterium erfüllt
Initialisierung
• uniform
• einzelne Wahrscheinlichkeiten von Hand wählen
Abbruchkriterium
• vorgegebene Anzahl von Iterationen (z.B. 2)
• Genauigkeit auf Testdaten sinkt
Helmut Schmid
75
SNLP
Wortart-Desambiguierung XI
Warum funktioniert das EM-Training?
• Das Lexikon schränkt die Tags eines Wortes ein.
⇒ unterschiedliche Wahrscheinlichkeit der Tagfolgen
• Kontext präferiert bestimmte Tags eines Wortes
⇒ unterschiedliche Wahrscheinlichkeit der Tags
eines Wortes
Helmut Schmid
76
SNLP
Wortart-Desambiguierung XII
• Typische Anzahl der Wortarten: 50-150
• Größe des Trainingskorpus: 104 − 106 Wörter
• Typische Genauigkeit: 95 % – 97 %
• Training mit dem EM-Algorithmus liefert meist
schlechtere Resultate als das Training auf manuell annotierten Daten
• viele andere Taggingverfahren
– Brill-Tagger
– Constraint-Grammar
– Maximum-Entropy-Tagger
– Support Vector Machines
Helmut Schmid
77
SNLP
Wortart-Desambiguierung XIII
Evaluierung
Zwei Tagger werden auf einem manuell annotierten Testkorpus verglichen. Der erste Tagger macht
960 Fehler, der zweite 940 Fehler. 900-mal annotieren beide dasselbe Wort falsch. Also macht in
100 Fällen genau einer der Tagger einen Fehler. 60
dieser Fehler macht der erste Tagger.
Frage: Gibt es einen signifikanten Unterschied in der
Genauigkeit?
Nullhypothese: Bei Wörtern, die genau einer der
Tagger falsch macht, beträgt die Wahrscheinlichkeit, dass Tagger 1 den Fehler machte, 0,5.
Wie wahrscheinlich sind unter Annahme der Nullhypothese Ergebnisse, die mindestens so weit vom
Mittelwert entfernt sind wie das Testergebnis?
2 ∗ b(≥ 60, 100, 0.5) ≈ 0.0568
⇒ kein signifikanter Unterschied
Helmut Schmid
78
SNLP
Wortart-Desambiguierung XIV
Anwendungen
• Vorstufe zum Parsen
• Extraktion von Lexikondaten
• Informations-Extraktion
• Prosodie-Generierung
• Sprachsynthese
Helmut Schmid
79
SNLP
Probabilistische Kontextfreie
Grammatiken
• “Traditionelle” Parser desambiguieren ihre Analysen nicht, sondern liefern eine Menge von Analysen (Parses).
• Sätze mittlerer und größerer Länge sind meistens syntaktisch ambig.
• Mit einem Wahrscheinlichkeitsmodell für Parses
könnte man für jeden Satz den wahrscheinlichsten Parse auswählen.
• Probabilistische kontextfreie Grammatiken
(PCFGs) liefern ein solches Modell für kontextfreie Grammatiken.
• Eine PCFG ist eine CFG, bei der jeder Regel
eine Wahrscheinlichkeit zugewiesen wurde mit
der Einschränkung
∀A∈V
X
pA(A → α) = 1
α
⇒ Familie von Wahrscheinlichkeitsverteilungen
Helmut Schmid
80
SNLP
PCFG II
Die Wahrscheinlichkeit eines Parsebaumes T ergibt
sich aus dem Produkt der Regelwahrscheinlichkeiten:
P (T ) =
=
Y
p(rule(n))
n in T
Y
p(r)fT (r)
r
Das Wahrscheinlichkeitsmodell beschreibt einen Generator für eine kontextfreie Grammatik, der in jedem Schritt das am weitesten links stehende Nichtterminal im (partiellen) Parsebaum zufällig gemäß
der Wahrscheinlichkeitsverteilung expandiert.
Helmut Schmid
81
SNLP
PCFG III
Beispielgrammatik:
S
VP
VP
NP
PP
V
→
→
→
→
→
→
NP VP
VP PP
V NP
NP PP
P NP
saw
1.0
0.3
0.7
0.4
1.0
1.0
P
NP
NP
NP
NP
NP
→
→
→
→
→
→
with
saw
stars
ears
telescopes
astronomers
1.0
0.04
0.18
0.18
0.1
0.1
Satz: astronomers saw stars with ears
Analyse t1: (S (NP astronomers) (VP (V saw) (NP
(NP stars) (PP (P with) (NP ears)))))
p(t1) = 0.0009072
Analyse t2: (S (NP astronomers) (VP (VP (V saw)
(NP stars)) (PP (P with) (NP ears))))
p(t2) = 0.0006804
Helmut Schmid
82
SNLP
PCFG IV
Kontextfreie Parser liefern die Menge der möglichen
Analysen in der Regel in Form eines Parsewaldes.
• Gemeinsame Teilbäume werden nur einmal repräsentiert.
• Knoten derselben Kategorie, die denselben Teil
der Eingabe überdecken, werden zusammengefaßt.
Parsewälder können auch als spezialisierte Grammatiken dargestellt werden:
S1
NP1
VP1
VP1
V1
VP2
→
→
→
→
→
→
NP1 VP1
astronomers
VP2 PP1
V1 NP2
saw
V1 NP3
Helmut Schmid
PP1
NP2
NP3
P1
NP4
→
→
→
→
→
P1 NP4
NP3 PP1
stars
with
ears
83
SNLP
PCFG V
Wie extrahiert man den wahrscheinlichsten Parse
aus einem Parsewald?
Viterbi-Algorithmus
Parsewald P = hN, Σ, S, Ri
1. Initialisierung:
δ[s] = 1 für alle s ∈ Σ
δ[s] = 0 für alle s ∈ N
δ[r] = 0 für alle r ∈ R
2. Berechnung
für alle r ∈ R in Bottomup-Reihenfolge
Q
δ[r] = p(r) s∈rhs(r) δ[s]
Falls δ[lhs(r)] < δ[r]
δ[lhs(r)] = δ[r]
ψ[lhs(r)] = r
3. Ausgabe durch Auslesen von ψ
Helmut Schmid
84
SNLP
PCFG VI
Wie werden PCFGs trainiert?
1. durch überwachtes Lernen (supervised training)
• erfordert ein (manuell) geparstes Korpus
(Treebank)
• Auszählung der Regelanwendungen f (r)
• Schätzung der Parameter durch MLE (eventuell mit Glättung)
f (A → α)
p(A → α) = P
β f (A → β)
2. durch unüberwachtes Lernen auf ungeparsten
Texten (EM-Training)
⇒ Inside-Outside-Algorithmus
Helmut Schmid
85
SNLP
PCFG VII
Expectation-Maximization(EM)-Training stellt die
Parameter so ein, dass die Wahrscheinlichkeit P (C)
eines Trainingskorpus C maximiert wird.
Es gibt keine Garantie dafür, dass eine PCFG, welche die Wahrscheinlichkeit der Trainingsdaten maximiert, auch die richtigen Parsebäume am besten
bewertet. In der Praxis ist dies aber tendenziell der
Fall.
Bei PCFGs wird der Inside-Outside-Algorithmus
für EM-Training verwendet.
Helmut Schmid
86
SNLP
PCFG VIII
Inside-Outside-Algorithmus
Parsewald P = hN, Σ, S, Ri
end(v)
i[v] = p(wstart(v)|cat(v))
start(v)−1
o[v] = p(w1
n
, cat(v), wend(v)+1
|S)
1. Berechnung der Inside-Wahrscheinlichkeiten
i[s] ← 1 für alle s ∈ Σ
i[x] ← 0 für alle x ∈ N ∪ R
für alle r ∈ R in Bottomup-Reihenfolge
Q
i[r] ← p(r) v∈rhs(r) i[v]
i[lhs(r)] ← i[lhs(r)] + i[r]
2. Berechnung der Outside-Wahrscheinlichkeiten
o[S] ← 1
o[x] ← 0 für alle x ∈ N ∪ Σ\{S}
für alle r ∈ R in Topdown-Reihenfolge
für alle v ∈ rhs(r)
i[r]
o[v] ← o[v] + o[lhs(r)] i[v]
Helmut Schmid
87
SNLP
PCFG IX
Inside-Outside-Algorithmus (Forts.)
3. Schätzung der Regelhäufigkeiten (E-Schritt)
für alle r ∈ R
i[r]
f [rule(r)] ← f [rule(r)] + o[lhs(r)]
i[S]
4. Parameterschätzung (M-Schritt)
für alle Regeln A → α
pneu(A → α) ← Pf [A→α]
f [A→β]
β
Helmut Schmid
88
SNLP
PCFG X
Inside-Outside-Algorithmus (Forts.)
• Das EM-Training mit dem Inside-Outside-Algorithmus wird mehrfach auf denselben Daten wiederholt.
• Dabei erhöht sich die Wahrscheinlichkeit der
Daten.
• Statt unannotierter Daten können auch partiell annotierte Daten für das Training verwendet
werden.
⇒ bessere Ergebnisse als mit Rohdaten
⇒ weniger Aufwand als bei voller Annotation
Helmut Schmid
89
SNLP
PCFG XI
Inside-Outside-Algorithmus (Forts.)
Probleme:
• Das Training kann in einem lokalen Maximum
stecken bleiben, so dass die optimale Lösung
(bzgl. Wahrscheinlichkeit der Daten) nicht gefunden wird.
• Es gibt keine Garantie, dass diejenigen Parameter, welche die Wahrscheinlichkeit der Daten maximieren, auch die höchste Genauigkeit
bei der Desambiguierung aufweisen. Tatsächlich
gibt es in der Regel keine exakte Übereinstimmung.
⇒ Wenn genügend Trainingsdaten vorhanden
sind, ist überwachtes Training genauer.
Helmut Schmid
90
SNLP
PCFG XIV
Lexikalisierung
• PCFGs sind nicht in der Lage, die häufig auftretenden Ambiguitäten bei Koordination und
PP-Attachment richtig aufzulösen.
• Solche Ambiguitäten erfordern Information über
die lexikalischen Köpfe der Konstituenten.
• Daher wurden lexikalisierte PCFGs entwickelt:
– Die Regelwahrscheinlichkeiten p(α|C) werden
durch lexikalisierte Regel-Wahrscheinlichkeiten
p(α|C, h) ersetzt:
– Ferner werden Wahrscheinlichkeiten für die
lexikalische Auswahl p(h|C, Cp, hp) benötigt.
Helmut Schmid
91
SNLP
PCFG XV
Head-Lexicalised PCFGs (HL-PCFGs)
Definition der Wahrscheinlichkeit eines Parsebaumes
P (T )
= Pstart (c(root(T ))) ∗
Pstart (h(root(T )) | c(root(T ))) ∗
Y
Prule (rule(n) | c(n), h(n)) ∗
nonterm n in T
Y
Pchoice (h(n) | c(n), c(m(n)), h(m(n))) ∗
nonroot n in T
Y
Prule (htermi | c(n), h(n)) Plex (w(n) | c(n), h(n))
term n in T
root(T ) liefert den Wurzelknoten von T .
c(n) liefert die Kategorie des Knotens n.
w(n) liefert das Wort des terminalen Knotens n.
m(n) liefert den Mutterknoten von n.
h(n) liefert den lexikalischen Kopf von n.
HL-PCFGs können in äquivalente PCFGs umgewandelt werden.
Der Viterbi- und der Inside-Outside-Algorithmus sind
auch bei HL-PCFGs verwendbar.
Helmut Schmid
92
SNLP
Parse Reranking
Problem: PCFGs können nicht alle Informationen
repräsentieren, die für die syntaktische Desambiguierung relevant sind.
Beispiel: Robben in Alaska und Eisbären in Grönland
hat zwei Analysen
NP
NP
N
C
und
PP
Robben P
in
NP
NP
N
Alaska
N
Robben
PP
Eisbären P
in
PP
N
NP
NP
N
Grönland
NP
P
in
NP
C
N
und
Alaska
NP
N
PP
Eisbären P
in
NP
N
Grönland
Bei Koordinationen werden Analysen bevorzugt, bei
denen die Konjunkte eine ähnliche Struktur besitzen.
Aber: Diese Art von Information kann in einer PCFG
schlecht repräsentiert werden.
Helmut Schmid
93
SNLP
Parse Reranking
Idee:
• Definition eines Merkmales “Koordination parallel bis Ebene X” mit X=1,2,3
• Zuweisung einer Wahrscheinlichkeit zu diesem
Merkmal
• Diese Wahrscheinlichkeit wird zur Parsebaumwahrscheinlichkeit hinzumultipliziert.
Aber:
• Es ergibt sich keine Wahrscheinlichkeitsverteilung mehr.
• Die üblichen Parameterschätzmethoden sind nicht
mehr anwendbar!
⇒ Log-lineare Modelle (Maximum-Entropie-Modelle)
Helmut Schmid
94
SNLP
Log-Lineare Modelle
Zusammenhang zwischen PCFGs und log-linearen
Modellen
p(T ) =
Y
P
f
(T
)
r
p(r)
= e r∈P logp(r)fr (T )
r∈P
Pm
= e
i=1 λi fi (T )
Damit sich auch nach dem Hinzufügen des Koordinationsmerkmals noch eine Wahrscheinlichkeitsverteilung ergibt, wird normalisiert:
1 Pm λifi(T )
p(T |S) =
e i=1
Z(S)
P
Z(S) =
X
e
m
i=1 λi fi (T )
T ∈Analysen(S)
Helmut Schmid
95
SNLP
Parse Reranking
Merkmal(schemata) für Parsing
(Auswahl aus Charniak 05)
• wichtigstes Merkmal: Viterbi-Wahrscheinlichkeit
des Basis-Parsers
• Häufigkeiten
– der Grammatikregeln
– der lexikalisierten Grammatikregeln
– der Kategorien
– der Elternkategorie-Tochterkategorie-Paare
– von Koordinationen, die bis zur Ebene X parallel sind.
– der Wort-Regens-Kombinationen
• Zahl der Knoten auf dem Weg vom Wurzelknoten zum letzten Wort des Satzes (→ Präferenz
für rechtsverzweigende Strukturen)
Helmut Schmid
96
SNLP
Log-Lineare Modelle
• Modelliert wird die bedingte Wahrscheinlichkeit
p(y|x) einer Annotation y gegeben die Daten x
• Über m Merkmalen {f1, ..., fm} wird die binäre
Funktion fi(x, y) definiert.
(
fi(x, y) =
1
0
falls x, y das Merkmal erfüllt
sonst
• Definition der Wahrscheinlichkeit
Pm
1
pλ(y|x) =
e i=1 λifi(x,y)
Zλ(x)
• λi ist das Gewicht von fi
• Die Normalisierungskonstante ist wie folgt definiert:
Zλ(x) =
X Pm
e
i=1 λi fi (x,y)
y
• Die Modellparameter λ = (λ1, ..., λm) werden
aus Trainingsdaten gelernt.
Helmut Schmid
97
SNLP
Log-Lineare Modelle II
Maximum-Likelihood Schätzung der Parameter
• Die Log-Likelihood der Trainingsdaten ist wie
folgt definiert:
L(λ) = log
Y
x,y
=
X
x,y
X
pλ(x, y)N (x,y)
m
X
N (x, y)
λifi(x, y) −
i=1 P
X
m
N (x)log
x
e
i=1 λi fi (x,y)
y
• Minimierung der Log-Likelihood durch Nullsetzen der partiellen Ableitung: δL/δλi = 0
X
N (x, y)fi(x, y) =
x,y
X
x
N (x)
X
y
pλ(y|x)fi(x, y)
→•
• Interpretation: Die beobachtete Häufigkeit eines
Merkmals im Korpus muss gleich seiner erwarteten Häufigkeit bei zufälliger Generierung des
unannotierten Korpus (mit den Parametern λ)
sein.
Helmut Schmid
98
SNLP
Generalized Iterative Scaling
Voraussetzung: konstante Anzahl von Merkmalen:
∀x,y
K
X
fi(x, y) = C
i=1
Definition eines Hilfsmerkmals:
fK+1(x, y) = C −
K
X
fi(x, y)
i=1
Update-Regel:
P
1
x,y N (x, y)fi (x, y)
(n+1)
(n)
λi
= λi + log P
P
C
N
(x)
x
y pλ (y|x)fi (x, y)
Die Folge λ1, λ2, ... konvergiert zu der eindeutigen
Lösung λ, für die gilt:
• λ maximiert die Likelihood der Trainingsdaten
• λ hat eine höhere Entropie H(pλ) als alle anderen λ0, die ebenfalls die Likelihood maximieren.
⇒ Maximum-Entropy Klassifikator
Helmut Schmid
99
SNLP
Generalized Iterative Scaling II
• Es sind nur bedingte Wahrscheinlichkeitsmodelle möglich.
• Das Training ist iterativ und damit relativ langsam.
• Im Training müssen auch die Merkmale ausgewählt werden.
• verbesserte Trainingsalgorithmen: Improved Iterative Scaling, L-BFGS
Helmut Schmid
100
SNLP
Diskriminatives Training
Ziel: Statt die Wahrscheinlichkeit einer Analyse möglichst
genau zu schätzen, zielt diskriminatives Training
darauf ab, direkt die Parsinggenauigkeit zu maximieren.
Averaged-Perceptron Algorithmus:
(si, ti) i = 1..N : Sätze si mit richtiger Analyse ti
Analysen(s): Menge der Analysen des Satzes s
F (s, t): Merkmalsvektor für Satz s und Analyse t
M : Zahl der Trainingsiterationen
W ← 0
S ← 0
for n←1 to M
for i←1 to N
t0 ← argmaxt∈Analysen(si)W F (si, t)
if t0 6= ti
W ← W + F (si, ti) − F (si, t0)
S ← S + W
return S / (M N)
Helmut Schmid
101
SNLP
Reranking: Anwendung
Training auf einer Baumbank:
• Aufteilung der Baumbank in Trainingsdaten, HeldOut-Daten und Testdaten
• Training des Parsers auf den Trainingsdaten
• N-best Parsing der Held-Out-Daten
• Extraktion der Merkmale für jeden Parsebaum
• Training des Rerankers auf den Held-Out-Daten
Helmut Schmid
102
SNLP
Reranking: Anwendung
Evaluierung auf den Testdaten:
• N-best Parsing der Testdaten
• Extraktion der Merkmale für jeden Parsebaum
• Reranking mit Ausgabe des besten Parsebaumes
• Berechnung des F-Scores
Helmut Schmid
103
SNLP
Statistische Übersetzung
Statistische Übersetzung basiert auf einem NoisyChannel-Modell.
Beispiel: Übersetzung eines deutschen Satzes g in
einen englischen Satz e.
“Noisy-Channel-Modell”: Ein englischer Satz wird
durch ein Übertragungsmedium geschickt. Auf Grund
von Verzerrungen kommt dabei ein deutscher Satz
heraus. Der Empfänger versucht, durch Entzerren
der erhaltenen Nachricht den ursprünglichen Satz
wiederherzustellen.
Das Noisy-Channel-Modell beschreibt also die umgekehrte Übersetzungsrichtung Englisch → Deutsch.
arg max p(e|g) = arg max p(g|e) p(e)/p(g)
e
e
= arg max p(e) p(g|e)
e
englisches Sprachmodell p(e) =
Qn
i=1 p(ei |ei−k ...ei−1 )
Übersetzungsmodell p(g|e)
Helmut Schmid
104
SNLP
Übersetzungsmodell
Das Übersetzungsmodell p(g|e) nimmt an, dass die
Wörter einzeln übersetzt werden.
Die Alignierung zweier Sätze zeigt, welches englische Wort mit welchem deutschen Wort übersetzt
wurde.
Beispielübersetzungen mit Alignierung der Wörter.
Er liest ein Buch
He reads a book
Er hat ein Buch gelesen
He has read a book
Er ist sich dessen bewusst
He is aware of this
Die Wahrscheinlichkeit einer Übersetzung ist die
Summe der Wahrscheinlichkeiten aller möglichen
Alignierungen: (a ist ein versteckter Parameter.)
p(g|e) =
X
p(g, a|e)
a
Helmut Schmid
105
SNLP
Übersetzungsmodell
Alignierung
• a5 = 3 bedeutet dass das 5. deutsche Wort mit
dem 3. engl. Wort verbunden ist.
• a5 = 0 bedeutet dass das 5. deutsche Wort unverbunden ist.
• e0 ist ein englisches Pseudowort, mit dem alle
unverbundenen deutschen Wörter aligniert werden.
Die deutschen Wörter werden von links nach rechts
generiert. Die Länge des deutschen Satzes wird zu
Beginn festgelegt. Falls m die deutsche Satzlänge
ist, gilt folgende Gleichung
p(g, a|e) = p(m|e)
m
Y
i−1 i−1
p(ai|a1
, g1 , e)p(gi|ai1, g1i−1, e)
i=1
Helmut Schmid
106
SNLP
Übersetzungsmodell
p(g, a|e) = p(m|e)
m
Y
i−1 i−1
p(ai|a1
, g1 , e)p(gi|ai1, g1i−1, e)
i=1
Vereinfachungen
• uniforme Verteilung für die Alignmentwahrscheinlichkeiten (l = Länge des englischen Strings)
1
i−1 i−1
p(ai|a1 , g1 , e) =
l+1
• Das deutsche Wort gi hängt nur von eai ab:
p(gi|ai1, g1i−1, e) = p(gi|eai )
• konstante Wahrscheinlichkeit p(m|e) = IBM-Modell 1:
m
Y
p(gi|eai )
p(g, a|e) =
m
(l + 1) i=1
Helmut Schmid
107
SNLP
Training
IBM-Modell 1:
m
Y
p(gi|eai )
p(g, a|e) =
(l + 1)m i=1
Training mit dem EM-Algorithmus:
Berechnung der geschätzten Häufigkeiten:
Qm
P
p(gk |eab )
a:ak =b i=0 p(gi|eai )
f (ak = b) =
=
P Qm
Pm
p(g
|e
)
i ai
a i=0
b=0 p(gk |eab )
E-Schritt:
Für alle Satzpaare (g, e) = (g1m, el1)
Für i=1 bis m
Für k=1 bis l
p(g |e )
c(gi, ek ) ← c(gi, ek ) + Pl i k
j=0 p(gi |ej )
M-Schritt:
c(g, e)
p(g|e) = P
0
g 0 f (g , e)
Helmut Schmid
108
SNLP
IBM-Modell 1
• Modell 1 ist für maschinelle Übersetzung zu simpel. Die folgenden Übersetzungen des Satzes
“Peter isst eine Banane und Hans isst einen Apfel.” sind alle gleich möglich:
– Peter eats a banana and Hans eats an apple.
– Peter eats an apple and Hans eats a banana.
• Aber für die Alignierung von bilingualen Korpora
und die Extraktion von Übersetzungslexika ist
Modell 1 sehr nützlich.
• Alignierte Korpora werden für das Training benötigt.
Helmut Schmid
109
SNLP
IBM-Modell 2
fügt Alignmentwahrscheinlichkeiten hinzu
p(g, a|e) = p(m|e)
m
Y
i−1 i−1
p(ai|a1
, g1 , e)p(gi|ai1, g1i−1, e)
i=1
Neue Vereinfachung:
i−1
p(ai|ai−1
,
g
1
1 , e) = p(ai |i, l)
Neues Modell:
p(g, a|e) = m
Y
p(ai|i, l)p(gi|eai )
i=1
Helmut Schmid
110
SNLP
HMM-Modell
Alignment hängt von der Distanz zum zuletzt übersetzten Wort ab.
p(g, a|e) = p(m|e)
m
Y
i−1 i−1
p(ai|a1
, g1 , e)p(gi|ai1, g1i−1, e)
i=1
Neue Vereinfachung:
i−1
p(ai|ai−1
,
g
1
1 , e) = p(ai |ai−1 , l)
Neues Modell:
p(g, a|e) = m
Y
p(ai|ai−1, l)p(gi|eai )
i=1
Helmut Schmid
111
SNLP
IBM-Modell III
Fruchtbarkeit (fertility) = Zahl der deutschen Wörter,
die mit einem englischen Wort aligniert sind.
p(φ|e) = Wahrscheinlichkeit, dass e mit k deutschen
Wörtern übersetzt wird. (übermorgen → the day
after tomorrow)
b ⊂ {1, ..., m} ist die umgekehrte Alignmentfunktion.
p(g, b|e) = p(b0|bl1)
l
Y
l Y
Y
p(bi|bi−1, ei)
i=1
p(gk |ei)
i=0 k∈bi
Vereinfachung in Modell III:
p(bi|bi−1, ei) = p(φi|ei)φi!
Y
p(k|i, m)
k∈bi
Helmut Schmid
112
SNLP
IBM-Modell IV
p(g, b|e) = p(b0|bl1)
l
Y
p(bi|bi−1, ei)
i=1
l Y
Y
p(gk |ei)
i=0 k∈bi
Vereinfachung in Modell IV:
p(bi|bi−1, ei) =
p(φi|ei) p=1(bi1 − bρ(i)|...)
φi
Y
p>1(bik − bi,k−1|...)
k=2
ρi = Index des letzten nicht gelöschten engl. Wortes.
b = Mittelwert der Zielwortpositionen in b
Die Positionswahrscheinlichkeiten hängen auch noch
von den Wortklassen der umgebenden Wörter ab.
Alle Möglichkeiten der Positionierung der eingefügten
1 ). Die Zahl
Wörter sind gleich wahrscheinlich ( phi
0!
der eingefügten Wörter ist binomialverteilt:
m − φ φo 1
0
l
m−2φ
0
p(b0|b1) =
(1 − p1)
p1
φ0
phi0!
Der Parameter p1 wird extern definiert.
Helmut Schmid
113
SNLP
IBM-Modell IV
Modell III und Modell IV sind beide defizitär, da
Zielpositionen außerhalb des Bereiches 1...l und auch
Positionen mehrfach generiert werden können.
Modell V ist nicht defizitär, aber deutlich komplizierter, langsamer und nicht besser.
Helmut Schmid
114
SNLP
Statistische Übersetzung III
• Übersetzung ê = arg maxe p(f |e)p(e)
• Wegen der Größe des Suchraumes ist nur eine
heuristische Suche möglich.
• Training auf bilingualen Texten mit dem EMAlgorithmus
• Das Training liefert ein zweisprachiges Wörterbuch und kann auch ausschließlich zu diesem
Zweck erfolgen.
Helmut Schmid
115
Herunterladen