Statistik

Werbung
Korpuslinguistik für und mit
Computerlinguistik
Seminar SS 2003
Sitzung 3: Statistik, Vektoren
Gerold Schneider
Übersicht
 Wahrscheinlichkeitsrechnung
 Maximum Likelihood Estimation (MLE)
 Informationstheorie
 Statistische Tests
 Sprachmodelle
 Vektoren (Igor)
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
2
Bedingte Wahrscheinlichkeit
 Zusatzinfo verändert Wahrscheinlichkeit
 Priori und posteriori Wahrscheinlichkeit
 Definition:
p( A | B) 
p( A  B)

p( B)
mehr B auch in A
mehr B
ausserhalb A
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
3
Bedingte Wahrscheinlichkeit: Bayes'
p( A | B) 
p( A  B)
p( B)
p( A | B)  p( B)  p( A  B)
p( A  B)
p( B | A) 
p( A)
p( B | A) 
p( A  B) p( A | B)  p( B)

p( A)
p( A)
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
4
Bayes: Medizinische Tests als Beispiel
 Eine seltene Krankheit befällt 0.2 % der Bevölkerung: P(I)=.002
 Die Erkennungsrate des Tests ist 98 %: P(⊕|I)=.98, P(⊕|I')=.02
 Mein Test sagt ⊕! Wie gross ist die Gefahr, dass ich krank bin?
Bayes:
P( | I)P(I)
P(I | ) 
P()
krank (I), richtig erkannt (⊕|I)
P(⊕) = ?. 2 Wege zu ⊕
gesund (I'), nur falsch gestestet (⊕|I')
P( | I)P(I)
(.98)(.002 )
P(I | ) 

 8.94 %
P( | I)P(I)  P( | I' )P(I' ) (.98)(.002 )  (.02)(.998 )
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
5
Maximum Likelihood Estimation
(MLE)
 Eine einfache Methode, (bedingte) Wahrscheinlichkeiten
aufgrund von empirischen Daten zu schätzen (estimate).
 Wir kennen die „wirklichen“ Wahrscheinlichkeiten nicht,
aber wir beobachten empirische Werte. Wir nehmen an, dass
diese mit grösster Wahrscheinlichkeit (maximum likelihood)
die „wirklichen“ Wahrscheinlichkeiten annähern.
p( A  B)
freq( A  B)
f (tag B tag A )
p( A | B) 
^
, z.B. tagging
p( B)
freq( B)
f (tag B )
Statt freq oft auch f oder # (number of) oder C (count)
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
6
Informationstheorie
 „Information Theory is interested in the situation before the
reception of a symbol, rather than the symbol itself“ (Oakes)
 Information und Informatik: Binarität. Entropie H=Anzahl der
nötigen Binärentscheidungen.
H ( X )    p( x) log 2 p( x)
xX
 log2 aufgrund der Binarität. Es gilt:
log 2 ( M ) 
log 10 ( M )
 3.32 log 10 ( M )
log 10 (2)
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
7
Informationstheorie: Entropie
 Spezialfall: Equiprobabilität (alle p(x) gleich: p(x)=1/X))
H ( X )    p( x) log 2 p( x)  log 2 p( x)
xX
p * Baumtiefe
 B = log2 X = - log2 (1/X) drückt aus: 2B = X
 B = # Binärentscheidungen=Pfadlänge=Baumtiefe
E.g. log2 256= - log2 (1/256) = 8
 Bei Nicht-Equiprobabilität gewichtet mit p(x): „Tieferer Baum für
seltenes, den tieferen Baum selten nehmen“  optimale Bitkürze
 Perplexity(X) = 2H = Durchschnittliche Pfadlänge
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
8
Informationstheorie: Co-occurrence,
Statistische Tests („goodness of fit“)
 Mutual Information:
p(h | i )
p(i | h)
I (h; i)  log 2
 log 2
p ( h)
p(i)
 Relative Entropie (Kullback-Leibler):
p ( x)
D( p || q)   p( x) log 2
q ( x)
xX
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
9
Statistische Tests: 2
 Basiert nicht auf Informationstheorie, sondern eher auf
Standardabweichung=s, Variance=s2:
1 N
2
s 
(on  o) 2

n  1 n 1
Abweichung vom Schnitt im Quadrat, pro Anzahl Werte
 Chi-Quadrat= 2:
(on  en ) 2
 
en
n 1
Abweichung vom Modell E im Quadrat, im Verhältnis zum
jeweiligen Wert e
N
2
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
10
Statistische Tests: G2 = Log-likelihood
 Dem 2 Test eng verwandt
N
G  2 on (log on  log en )
2
n 1
 Besonders erfolgreich für Kollokationen:
row total  column marginal
E
=
O:
w1
¬w1
grand total
w2
a
b
¬w2
c
d
log   2(a log a  b log b  c log c  d log d
 (a  b) log( a  b)  (a  c) log( a  c)
 (a  b) log( a  b)  (a  c) log( a  c)
 (a  b  c  d ) log( a  b  c  d )
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
11
Sprachmodelle: Abhängigkeiten und
Unabhängigkeitsannahmen I
In Bigramm-Tagger ist p(Tag) als abhängig modelliert nur vom
 vorhergehenden Tag: p(Tag n1 | Tag n )
 Wort: p(Tag n | Wort n ) bzw. p(Wort n | Tag n )
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
12
Sprachmodelle: Abhängigkeiten und
Unabhängigkeitsannahmen II
Ein „vollständiges“ Sprachmodell berücksichtigte enorm viele
weitere Abhängigkeiten: längere Distanz, Struktur,Prosodie,...
 die ... sitzende Frau
 [die [...PP] sitzende Frau NP]
 DIE ... sitzende Frau
 die auf der Bank sitzende Frau meine ich, nicht jene.
 Männer. Die auf der Bank sitzende Frau, auf sie wartend, suchen.
 Anno Domini 1712. Die auf der Bank sitzende Frau. Ora Cenae.
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
13
Sprachmodelle: Abhängigkeiten,
Komplexität, Auftretenshäufigkeit
Mit zunehmender Feinheit des Sprachmodells verschlimmern sich
zwei Probleme:
 Grösse des Suchraumes: kann schon für ein Bigramm-Modell
enorm sein  cutoff, dynamische Programmierung (Viterbi). Vgl.
Zeitaufwand fürs Training des Brill-Taggers.
 Seltenes Auftreten (sparse data): schon bei Bigrammen ein
Problem für p(Wort|Tag) falls Wort unbekannt. Bei Trigrammen
wird ein backoff zu Bigrammen verwendet. Quadrigramme sind
so sparse, dass sie keine Taggingverbesserung mehr bringen.
Gerold Schneider: Korpuslinguistik für
Computerlinguistik, III
14
Herunterladen