Modelle mit maximaler Entropie Endliche Wahrscheinlichkeitsräume

Werbung
Modelle mit maximaler Entropie
Endliche Wahrscheinlichkeitsräume
Übersicht
Ein endlicher Wahrscheinlichkeitsraum (Ω, F, P) umfasst
Endliche Wahrscheinlichkeitsräume
Entropie
Partielle Information (Evidenz)
Prinzip der maximalen Entropie
Exponentielle Modelle
Generalized Iterative Scaling (GIS)
Erwartungswerte und Trainingskorpus
Ω: Endliche Menge der möglichen Ergebnisse
Lösung eines Effizienzproblems des GIS
Literatur
P: Wahrscheinlichkeitsmassfunktion mit der Signatur P: F → [0,1]
F: Ereignis-Algebra, normalerweise die Potenzmenge ℘ Ω
Ein Ereignis (event) ist eine Menge von Ergebnissen.
Eine Menge von Mengen F zusammen mit den Operationen Differenz \ und Vereinigung ∪ bilden eine Algebra genau dann, wenn für beliebige A,B gilt:
A ∈F ⇒ Ω \ A ∈ F
A ∈F ∧ B ∈F ⇒ A ∪ B ∈F
Die Potenzmenge einer endlichen Menge ist immer eine Algebra.
wobei P(Ω) = 1
(und P({}) = 0)
wobei für beliebige disjunkte Teilmengen A ∈ F und B ∈ F gilt:
P(A∪B) = P(A) + P(B)
Modelle mit maximaler Entropie — 1
Modelle mit maximaler Entropie — 2
Ein endlicher Wahrscheinlichkeitsraum
Entropie
Ein endlicher Wahrscheinlichkeitsraum (Ω, F, P) umfasst
Entropie H zeigt, wieviel Überraschung in einem Wahrscheinlichkeitsraum S=(Ω, F, P) steckt.
Ω= A×B = {(a,u),(a,u),(a,u),(a,u)}
HS = − ∑ P({w}) ⋅ log 2 P({w})
A= {a,a} mit a=Akzess bestanden, a=Akzess nicht bestanden
B= {u,u} mit u=Übungen gemacht, u=Übungen nicht gemacht
w ∈Ω
F= ℘ Ω = {{}, {(a,u)},{(a,u)},{(a,u)},{(a,u)},
{(a,u),(a,u)},{(a,u),(a,u)},{(a,u),(a,u)}, {(a,u),(a,u)},{(a,u),(a,u)},{(a,u),(a,u)},
{(a,u),(a,u),(a,u)},{(a,u),(a,u),(a,u)},{(a,u),(a,u),(a,u)},{(a,u),(a,u),(a,u)},
{(a,u),(a,u),(a,u),(a,u)}}
P: rekursiv aus Einzelwahrscheinlichkeit
Beispiel
a a Σ
u 0.5 0.1 0.6
u 0.2 0.2 0.4
Σ 0.7 0.3 1
0
falls W = {}
P (W ) = 
Wahrscheinlichkeits′
P
({
})
+
P
(
W
)
falls W ′ = W \ {ω}
ω
G

raum als Tabelle
Wahrscheinlichkeitsmass für Grundereignisse(=Ereignis mit genau 1 Ergebnis):
PG = {({(a,u)},0.5),({(a,u)},0.1),({(a,u)},0.2),({(a,u)},0.2)}
Modelle mit maximaler Entropie — 3
H = −(P({( a, u)} ⋅ log 2 P({( a, u)}) + P({( a, u)}) ⋅ log 2 P({( a, u)}) +
P({( a, u)}) ⋅ log 2 P({( a, u)}) + P({( a, u)}) ⋅ log 2 P({( a, u)})
= −(0.5 ⋅ log 2 0.5 + 0.2 ⋅ log 2 0.2 + 0.1⋅ log 2 0.1 + 0.2 ⋅ log 2 0.2)
= −(-0.5+
+ -0.464+-0.332+-0.464)
a a Σ
u 0.5 0.1 0.6
u 0.2 0.2 0.4
Σ 0.7 0.3 1
Wahrscheinlichkeitsraum als Tabelle
H = 1.76
= 1.76
Wahrscheinlichkeitsräume mit gleichwahrscheinlichen Grundereignissen haben
immer die höchste Entropie!
Modelle mit maximaler Entropie — 4
Eigenschaften
Partielle Information
Entropie beinhaltet die Funktion
Oft reichen die vorhandenen Informationen nicht aus,
um das Wahrscheinlichkeitsmass eindeutig zu fixieren.
f(x)
 x ⋅ log 2 x falls x > 0

g( x) = 
0
falls x = 0
0.2
0.4
0.6
0.8
1
x
-0.1
P({(x,y)|x=a}) = 0.7
-0.2
daraus folgt: P({(x,y)|x≠a}) = 0.3
-0.3
Unten sind 2 von unendlich vielen möglichen Wahrscheinlichkeitsmassen!
-0.4
-0.5
Minimum dieser Funktion
ist bei 1/e, d.h. dem Kehrwert der
Basis des natürlichen Logarithmus
(e ≈ 2.71828).
Beispiel: Vorhandene Information: 70% bestehen Akzessprüfung
1/e ≈ 0.36788
a a Σ
u 0.5 0.1 0.6
u 0.2 0.2 0.4
Σ 0.7 0.3 1
a a Σ
u 0.6 0.1 0.7
u 0.1 0.2 0.3
Σ 0.7 0.3 1
Partiell bekannter Wahrscheinlichkeitsraum
Kompatibler Wahrscheinlichkeitsraum A
Kompatibler Wahrscheinlichkeitsraum B
HA = 1.57
HB = 1.88
Modelle mit maximaler Entropie — 5
u
u
Σ
Σ
a
a
0.35 0.15 0.5
0.35 0.15 0.5
0.7 0.3 1
Modelle mit maximaler Entropie — 6
Prinzip der Maximalen Entropie
Mögliche Entropiewerte
Wähle denjenigen Wahrscheinlichkeitsraum aus, welcher
die partielle Information berücksichtigt und die höchste
Entropie hat! (Jaynes 1957)
Alle Wahrscheinlichkeitsmasse des Beispiels,
Entropie wird auch als Mass der fehlenden Information bezeichnet
Der beste Wahrscheinlichkeitsraum ist also derjenige, welche die
vorhandene und die fehlende Information exakt wiedergibt!
Problem
die mit der partiellen Information kompatibel sind,
lassen sich als Funktion mit 2 Argumenten darstellen.
x = P({(a,u)})
y = P({(a,u)})
Hx ,y = −( x ⋅ log 2 x + (0.7 − x ) ⋅ log 2 (0.7 − x )
+ y ⋅ log 2 y + (0.3 − y ) ⋅ log 2 (0.3 − y ))
H
Wie finde ich den besten aller möglicher Wahrscheinlichkeitsräume?
Kodierung der partiellen Information als Erwartungswert
Finden des Wahrscheinlichkeitsraumes mit höchster Entropie, welcher die Erwartungswerte erfüllt
Modelle mit maximaler Entropie — 7
u
u
Σ
Σ
a
a
x 0.3-y x+0.3-y
0.7-x y y+0.7-x
0.7 0.3
1
1.75
1.5
1.25
1
Partiell bekannter Wahrscheinlichkeitsraum
0.2
0
y
0.2
0.1
x
0.4
0.6
0
6
0
Entropie der möglichen
Wahrscheinlichkeitsmasse
Modelle mit maximaler Entropie — 8
Kodierung der partiellen Information
Kodierung der partiellen Information
Die Evidenz lässt sich ausdrücken als Erwartungswert E
einer binären Funktion f über einem Wahrscheinlichkeitsraum (Ω,F,P).

Mehr als eine binäre Funktion
1 falls ω = (a, y)
f (ω ) = 
0 sonst
f: Ω → {0,1}
E: P × (Ω → {0,1}) → [0,1]
E (P , f ) = 0.7
Falls P bekannt ist, lässt sich der Erwartungswert berechnen:
E(P , f ) =
∑ P({ω}) ⋅ f (ω )
Im Allgemeinen braucht es n binäre Funktionen, um die Evidenz
auszudrücken.
Binäre Funktionen werden deshalb als endliche Folgen der Länge
n dargestellt.
f :{1..n} → (Ω → {0,1})
Statt der funktionalen Notation f(i)(ω) wird übliche Index-Notation
fi(ω) verwendet. Beispiel:
1 falls ω = (a, y)
f1(ω ) = 
0 sonst
E(PA , f ) = 0.6 ⋅ 1 + 0.1⋅ 1 + 0.1⋅ 0 + 0.2 ⋅ 0 = 0.7
E(PB , f ) = 0.35 ⋅ 1 + 0.35 ⋅ 1 + 0.15 ⋅ 0 + 0.15 ⋅ 0 = 0.7
ω ∈Ω
E (P , f1) = 0.7
Sowohl Modell A wie B erfüllen erwartungsgemäss den Erwartungswert.
Modelle mit maximaler Entropie — 9
Modelle mit maximaler Entropie — 10
Berechne P aus E! Trivialer Fall
Berechne P aus E: Komplexerer Fall…
Unter der Bedingung, dass
Die Darstellung der partiellen Information wird zu stark
eingeschränkt, um praktisch verwendbar zu sein.
es für jedes Grundereignis ω höchstens eine binäre Funktion fi gibt,
Ein einfaches schwierigeres Beispiel
fi (ω ) = 1
für die gilt:
lässt sich P mit maximale Entropie trivial berechnen
Erwartungswert von fi (ω ) = 1
P({ω }) =
Anzahl Ergebnisse ω ′ mit fi (ω ′) = 1
Für Grundereignisse,
für die keine binäre Funktion 1 ergibt, wird eine künstliche binäre
Funktion f0 eingeführt, die genau dann 1 ergibt. Ihr Erwartungswert:
E(P , f0 ) = 1−
∑
i∈{1.. n}
E(P , fi )
Modelle mit maximaler Entropie — 11
70% bestehen Akzessprüfung
60% machen die Übungen
a a Σ
u 0.5 0.1 0.6
u 0.2 0.2 0.4
Σ 0.7 0.3 1
Partiell bekannter Wahrscheinlichkeitsraum
Die Attraktivität des Ansatzes der maximalen Entropie besteht darin, dass beliebige, aber für den Anwendungsbereich nützliche
binäre Funktionen definiert werden können!
Damit aus beliebigen binären Funktionen ein Wahrscheinlichkeitsmass mit maximaler Entropie berechnet werden kann, werden exponentielle Modelle verwendet.
Modelle mit maximaler Entropie — 12
Exponentielle Modelle
Beispiel B in exponentieller Form
Die Wahrscheinlichkeit eines Grundereignisses ergibt
sich als normalisiertes Produkt aller gewichteten binären
Funktionswerte:
Anzahl binäre Funktionen
Gewichtung
n=1
α = 2 13
PG ({ω}) =
1
Berechung von Z
1
∏ fi(ω )
Z i∈{1.. n} α i
Z=
=
Die endliche Folge α:{1..n} → ℜ + enthält für jede binäre Funktion eine Gewichtung.
Z normalisiert, d.h. stellt sicher, dass wir ein Wahrscheinlichkeitsmass haben.
Z=
∑ ∏
ω ∈Ω i∈{1.. n}
∑ ∏ α f (ω )
ω ∈Ω i ∈{1}
f1(ω )
∑α
i
1
f1(( a,u ))
1
+ α f (( a,u)) + α f (( a,u)) + α f (( a,u))
1
1
1
1
= α1 + α1 + α 0 + α 0
= α + α + 1+ 1
= 6 23
1
1
f (ω )
αii
Modelle mit maximaler Entropie — 13
1
1
1
1
1
1
Wahrscheinlichkeit der Grundereignisse
PG ({(a, u)}) =
α 21
1
1
1
7
α f (( a,u)) = α f (( a,u)) = α 1 = = 3 =
= 0.35
∏
Z i ∈{1}
Z
Z
Z 6 23 20
PG ({(a, u)}) =
1
1
1
1
1
3
∏ α f (( a,u)) = Z α f (( a,u)) = Z α 0 = Z = 6 2 = 20 = 0.15
Z i ∈{1}
3
i
1
1
i
1
i
1
1
i
1
1
Modelle mit maximaler Entropie — 14
Eigenschaften der exponentiellen Form
Der Erwartungswert und α
Die exponentielle Form
Der Erwartungswert der binären Funktion f1
muss allen Grundereignissen mit
gleichen binären Funktionswerten
die gleiche Wahrscheinlichkeit
zumessen!
PG ({(a, u)}) = PG ({(a, u)})
PG ({(a, u)}) = PG ({(a, u)})
1
steigt an, je höher α1 wird.
PG
sinkt, je kleiner α1 wird.
0.75
0.5
0.25
1
2
3
4
5
6
α1
kann durch das geeignete Gewicht α1
auf jeden beliebigen Wert zwischen
0 und 1 gesetzt werden.
E
1
fi (ω )
αi
Die Potenz «verschwindet».
Modelle mit maximaler Entropie — 15
α
= i
1
falls fi (ω ) = 1
falls fi (ω ) = 0
21/3
0.8
0.7
0.6
0.4
0.2
Abhängigkeit der Wahrscheinlichkeit
der Grundereignisse von α
reduziert sich wegen der Binariät
der Funktionen sofort.
Σ
a
a
0.35 0.15 0.5
0.35 0.15 0.5
0.7 0.3 1
Wahrscheinlichkeitsraum B
Binäre Funktion
ω ∈Ω
=α
u
u
Σ
1 falls ω = (a, y)
f1(ω ) = 
0 sonst
i
1
2
3
4
5
6
Abhängigkeit des Erwartungswertes E
der binären Funktion f1 von α
Der Erwartungswert 0.7 von f1 kann
(nur) durch die Gewichtung α1 = 2 1/3 erreicht werden.
Modelle mit maximaler Entropie — 16
α1
Berechnung von α : GIS
Flussdiagramm: Iteration
Der GIS-Algorithmus (Generalized Iterative Scaling)
Gegeben
berechnet α für beliebige Funktionen f :Ω → [0, m] .
binäre Funktionen f und Erwartungswerte E(P,f )
stimmt α iterativ auf die gewünschten Erwartungswerte E ab.
Gesucht
bedingt für jedes Grundereignis eine konstante Summe aller
(binären) Funktionen C
∀ω ∈ Ω
C = max ∑
∑ fi (ω ) = C
ω
i ∈{1.. n}
i ∈{1.. n}
fi (ω )
∑
i ∈{1.. n}
Berechne besseres α
aus α, E(P’,f) und E(P,f)
Berechne neue P’ aus
aktuellem α und f
Nein
Eine Hilfsfunktion fn+1 wird eingeführt, welche die Summe aller
Funktionen auf eine Konstante C ergänzt
fn +1(ω ) = C −
Berechne Erwartungswerte E(P’, f)
optimales α
Die Einschränkung auf binäre Funktionen hat berechnungstechnische Vorteile.
Initialisiere α mit 1
Hat α
(genug) konvergiert?
Stoppe
Ja
fi (ω )
Modelle mit maximaler Entropie — 17
Modelle mit maximaler Entropie — 18
Rekursiver Lernschritt für α
Die Berechnung des besseren α
erfolgt rekursiv für jede Funktion fi :
Praktisches Problem I: Erwartungswerte
Woher kommen Erwartungswerte? Aus Trainingskorpus!
Berechne besseres α
aus α, E(P’,f) und E(P,f)
1
 E(P , fi )  C
α i′ = α i ⋅ 

 E(P ′, fi )
E(P , fi ) =
Die Grösse des Lernschritts wird wesentlich mitbestimmt von C,
der «maximalen Aktivierung» einer binären Funktion.
Je grösser C ist, desto kleiner wird der Lernschritt innerhalb
einer Iteration; d.h. umso mehr Iterationen braucht es
zur Konvergenz.
Modelle mit maximaler Entropie — 19
Trainingskorpus
T:{1..N} → Ω
Der Erwartungswert einer binären Funktion ergibt sich aus der
Summe aller Funktionswerte aus dem Trainingskorpus, normalisiert
durch die Anzahl Token darin (N).
C = max
ω
∑
i ∈{1.. n}
fi (ω )
1
∑ fi (T (n))
N n∈{1..N}
Beispiel Trigramm-Wortartbestimmung
Ω = C ×C ×W ×C
, wobei C= Tags, W=Wortformen
Interpretation: ω = (c−2 , c−1, w 0 , c0 ) sei das Ergebnis, dass das Wort w0 das Tag c0
hat, wobei die Tags c-2 und c-1 links neben dem Wort vorkommen.
Modelle mit maximaler Entropie — 20
Praktisches Problem II: Erwartungswerte
Praktische Lösung von Problem II
Das Berechnen der Erwartungswerte einer Iterationsstufe
ist zu aufwändig bei realistischen NLP-Anwendungen:
Dank bayesscher Regel und Kontexten aus Trainingskorpus:
E(P ′, fi ) =
∑ P ′({ω }) ⋅ f (ω )
ω ∈Ω
E( P ′ , f i ) =
i
Beispiel Trigramme im NEGRA-Korpus:
Bei 55 verschiedenen Tags und ca. 50'000 Wortformen gibt es
55·55·50'000·55 = 8'318'750'000 verschiedene Grundereignisse.
Ausweg für Klassifikation
Bei klassifikatorischen Problemen setzt sich
ein einzelnes Ergebnis ω aus einem Kontext b
und einer Klasse a zusammen: ω=(a,b)
Ω = A × B = C × (C × C × W )
ω = (a, b) = (c0 ,(c−2 , c−1, w 0 ))
Beim Berechnen des Erwartungswertes werden
statt allen möglichen Kontexten nur diejenigen
aus dem Trainingskorpus verwendet, BT!
BT = {b| ∃i T (i ) = ( a, b)}
Modelle mit maximaler Entropie — 21
Literatur
Grundlegendes
Manning, Ch. D., Schütze, H.: «Foundations of Statistical Natural Language Processing», 3rd printing ed. Cambridge, MA: MIT Press, 2000. (unbedingt Errata konsultieren!)
Ratnaparkhi, A.: «A Simple Introduction to Maximum Entropy Models for Natural
Language Processing», Philadelphia: Institute for Research in Cognitive Science, 1997.
Lau, R.: «Adaptive Statistical Language Modelling», Diss. MIT, 1994.
Darroch, J.N., Ratcliff, D.: «Generalized iterative scaling for log-linear models», in:
The Annals of Mathematical Statistics, 43: pp.1470-1480 (elektronisch zugänglich via
http://www.jstor.org)
Weiterführendes
http://www-2.cs.cmu.edu/~aberger/maxent.html (Information zum Improved Iterative
Scaling)
Goodman, J.: «Sequential Conditional Generalized Iterative Scaling» in: Proceedings
of the 40th Annual Meeting of ACL, 2002: pp.9-16 (Effizienzoptimierungen)
Modelle mit maximaler Entropie — 23
1
∑ ∑ P ′(a | b) ⋅ fi(( a, b))
N b∈BT a∈A
Grosser Effizienzgewinn, da Trainingskorpus meist nur einen Bruchteil der möglichen
Kontexte enthält (sparse data)
Die bedingte Wahrscheinlichkeit kann direkt aus dem exponentiellen Modell
berechnet werden, indem nur über die Klassen normalisiert wird.
P ′( a | b) =
1
Zb
∏
i∈{1.. n}
f (( a, b))
αii
Z b=
∑ ∏
a∈A i∈{1.. n}
f (( a, b))
αii
PS: Die Bestimmung von C (maximaler Aktivierung) kann normalerweise ohne Schaden über dem Trainingskorpus berechnet werden.
Modelle mit maximaler Entropie — 22
Herunterladen