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) xX 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) xX 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) xX 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 n1 | 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