Title: Statistiska metoder
1Statistiska metoderInformation Retrieval
- Leif Grönqvist (leifg_at_ling.gu.se)
- GSLT (Sveriges nationella forskarskola i
språkteknologi) - Matematiska och systemtekniska institutionen,
Växjö universitet - Institutionen för lingvistik, Göteborgs
universitet
2Min bakgrund
- 1986-1989 4-årig teknisk (electrical
engineering) - 1989-1993 M.Sc. (official translation of
Filosofie Magister) in Computing Science,
Göteborg University - 1989-1993 62 points in mechanics, electronics,
etc. - 1994-2001 Work at the Linguistic department in
Göteborg - Various projects related to corpus linguistics
- Some teaching on statistical methods (Göteborg
and Uppsala), - and corpus linguistics in Göteborg, Sofia, and
Beijing - 1995 Consultant at Redwood Research, in
Sollentuna, working on information retrieval in
medical databases - 1995-1996 Work at the department of Informatics
in Göteborg (the Internet Project) - 2001-2006 PhD Student in Computer Science /
Language Technology
3Mina forskningsintressen
- Statistiska metoder i språkteknologi
- Dolda Markovmodeller
- Korpuslingvistik (Jens)
- Maskininlärning (Torbjörn)
- Vektorrymdsmodeller för lagring av semantisk
information - Samförekomststatistik
- Latent Semantic Indexing (LSI)
- Användning av lingvistisk information vid träning
4Statistik i datalingvistikens tjänst
- Problem med traditionella metoder
- Parsrar ger ibland 1000-tals analyser för ganska
normala meningar. Vilken är den rätta? - Hur analyserar man saker man aldrig sett förut?
- Hur gör man regler för något man inte vet hur det
fungerar? - En del taggare/parsers ger ibland inget svar
alls! - Många problem kan lösas med statistik
5Statistik i datalingvistik, forts.
- Egentligen inte statistik utan sannolikhetsteori
- Vi bygger en modell med en viss kunskap och låter
slumpen fylla i resten - Parametrar gissas utifrån så kallad träningsdata
- Sedan utgår man ifrån att träningskorpusen är
representativ för språket - Den analys med högst sannolikhet antas vara den
rätta - Statistiskt/sannolikhetsteoretiska metoder kallas
ofta för stokastiska ett annat ord bara
6Sannolikhetsteori
- Handlar om att räkna ut hur stor chans det är att
något inträffar givet en viss världskunskap - Sannolikheten P (Händelse Kunskap)
- Ett tal mellan 0 och 1
- 0 inträffar aldrig
- 1 inträffar alltid
- annars man vet bara hur troligt det är
- Exempel på sannolikheter
- P (femma är man kastar en tärning)
- P (det blir soligt imorgon)
- P (det blir regn imorgon det var soligt igår)
- P (nästa ord jag säger är päronsoda)
7Några grundbegrepp
- Försök en process som kan ha olika utfall
- Utfall resultatet av ett försök
- Utfallsrum Mängden av alla möjliga utfall
- Händelse Delmängd av utfallsrummet
- Likformig fördelning alla utfall är lika
sannolika - Sannolikhetsteori med denna förutsättning
uppfylld kallas kombinatorik. Exempel lotto,
stryktips, poker - Betingad sannolikhet en sannolikhet beräknad
utifrån någon viss kunskap - Beroende händelser händelser vars sannolikheter
påverkas av varandras utfall
8Sannolikhetsteori, forts.
- Det finns en massa räkneregler för att få fram
vad man vill
9Ett exempel ordklasstaggning
- Vi vill göra ett program som sätter ut rätt
ordklass på varje ord i en text - Träningsdata är en korpus som manuellt kodats med
ordklasser enligt något ordklassystem - Vi gissar att nya data liknar träningsdata
- En ny text som skall taggas innehåller ord med
olika egenskaper - Entydiga ord som alltid har samma ordklass
- Ambiguösa som haft två eller flera olika
ordklasser i träningskorpusen - Okända ord som inte finns i träningsdata
10Modellen för ordklasstaggning
- Det vi vill räkna ut är en sekvens av
ordklassetiketter (c1cn) som maximerar - P (c1cn o1on)
- Problem om sekvensen o1on inte finns i
träningsdata blir vår gissade sannolikhet 0 för
varje sekvens c1cn - En förenkling
- Tar tyvärr inte hänsyn till ordens omgivning
- För grov approximation Ett nytt försök
11Modellen, forts.
- Vi vill väga in både sannolikheter av typen P
(substantiv päron) och ordklassekvenser på
något sätt - Ett par små trick gör att vi kan hitta en sekvens
ordklasser som nästan alltid maximerar P (c1cn
o1on) genom att maximera - Ungefär lika med
12Modellen, forts.
- Nu innehåller formeln sannoliketer av typen
- P (päron substantiv)
- P ( verb ordet innan är ett pronomen)
- De första kallas lexikala och de andra
kontextuella - Dessa kan tas fram smidigt ur en träningskorpus
med så kallad Maximum Likelihood Estimation
13Hidden Markov Models
- En så kallad HMM (dold Markovmodell) är just vad
vi kommit fram till! - Används mycket flitigt inom datalingvistik
- Sekvensen som maximerar sannolikheten kan räknas
fram snabbt och smidigt - Kan åskådliggöras som en tillståndsmaskin
- Sannolikheter för att
- Starta i respektive tillstånd
- Hoppa mellan tillstånden
- Skicka ut en symbol
- Vi ser symbolerna men måste gissa tillstånden
- Kallas ibland för Shannons Noisy Channel Model
14HMMer, forts.
- Modellen används bland annat för
- Ordklasstaggning
- Tillstånden är ordklasser
- Symbolerna är ord
- Taligenkänning
- Tillstånden är ord (eller fonem)
- Symbolerna är delar av ljudsignalen
- Maskinöversättning
- Tillstånden är ord i ett språk
- Symbolerna är ord i det andra språket
- Låter rätt skumt, men det funkar!
15En stokastisk parser
- Vid parsning brukar inte HMMer användas
- Sannoliketer kan läggas till en traditionell
parser för att avgöra vilken parsning som är den
bästa - Kan göras robustare man tar alltid den bästa
men finns ingen bra så finns i alla fall någon!
16Information Retrieval
- Handlar om att lösa flera olika problem
- AltaVista-stilen
- Ge mig en massa dokument som innehåller orden
rymdfärjor och färdkost, i slumpvis ordning - Traditionell IR
- Ta fram alla dokument som handlar om rymdfärjor
och färdkost - Ge mig alla dokument som liknar det här
dokumentet - Fråga-svar-system
- Vem vann franska öppna 1982?
- Varför var det krig i Ruanda?
17IR, forts.
- Övriga system och uppgifter
- Ge mig 10 bra nyckelord för det här dokumentet
- Ta fram en förkortad version av den här texten
- Flerspråkiga varianter av ovanstående
- Skriv frågor på ett språk och få svar på ett
annat - Fråga på ett språk och få dokument på flera språk
18IR Komplikationer
- Folk är dåliga på att välja bra sökord
- Många skriver in endast 1-2 ord som fråga
- Dokumenten man söker i, samt även sökfrågorna,
innehåller stavfel - Många ord är ambiguösa
- Dokumenten som är relevanta för en sökfråga kan
ha helt olika innehåll i olika domäner - Datamängder är ofta ostrukturerade eller på flera
olika format
19En modell som löser en del av problemen
- LSI (Latent Semantic Indexing) är en metod att ta
vara på underliggande strukturell information i
dokumentsamlingar - Klassisk IR använder en vektormodell som
grupperar dokument med många gemensamma termer - Men!
- Dokument kan ha samma innehåll men använda olika
vokabulär - Termerna i dokumentet är kanske inte de mest
representativa - LSI använder termernas fördelning i samtliga
dokument när man jämför två dokument!
20En traditionell vektormodell
- Börja med en term/dokument-matris, precis som för
LSI - Likhet mellan dokument kan beräknas med kosinus
för vinkeln mellan vektorerna - Relevanta termer för ett dokument de som finns
i dokumentet - Problem i exemplet på nästa sida
- Termen trees verkar relevant för m-dokumenten
men finns inte i m4 - cos(c1, c5)0 liksom cos(c1, m3)
21Litet exempel
22Hur funkar LSI?
- Idén är att hitta latent (underliggande)
information som - Ord1 och ord2 förekommer ofta tillsammans så
kanske dokument1 (som innehåller ord1) och
dokument2 (som innehåller ord2) är relaterade? - dokument3 och dokument4 har många gemensamma
termer, så kanske orden de inte har gemensamt är
relaterade?
23Hur funkar LSI? Forts.
- I den klassiska vektormodellen är en
dokumentvektor 12-dimensionell och en termvektor
9-dimensionell för exemplet - Vi vill projicera dessa vektorer till ett
vektorrum med färre dimensioner - Ett sätt är att använda Singular Value
Decomposition (SVD) - Originalmatrisen räknas om till en ny
representation bestående av tre matriser
24Vad man får
XT0S0D0 X, T0, S0, D0 är matriser
25X kan räknas om med m2
26Vad får vi av SVD?
- Susan Dumais 1995 The SVD program takes the ltc
transformed term-document matrix as input, and
calculates the best "reduced-dimension"
approximation to this matrix. - Michael W Berry 1992 This important result
indicates that Ak is the best k-rank
approximation (in at least squares sense) to the
matrix A. - Leif 2003 Vad Berry menar är att SVD ger den
bästa projektionen från n till k dimensioner,
d.v.s. den projektion som bäst bibehåller
avståndet mellan vektorer
27Ett exempel baserat på 50000 tidningsartiklar
- stefan edberg
- edberg 0.918
- cincinnatis 0.887
- edbergs 0.883
- världsfemman 0.883
- stefans 0.883
- tennisspelarna 0.863
- stefan 0.861
- turneringsseger 0.859
- queensturneringen 0.858
- växjöspelaren 0.852
- grästurnering 0.847
bengt johansson johansson 0.852 johanssons 0.704
bengt 0.678 centerledare 0.674 miljöcentern 0
.667 landsbygdscentern 0.667 implikationer 0.645
ickesocialistisk 0.643 centerledaren 0.627 regerin
gsalternativet 0.620 vagare 0.616
28Efter lite trixande kan vi hitta
handbollspersoner istället för politik
- bengt-johansson 1.000
- förbundskapten-bengt-johansson 0.907
- förbundskaptenen-bengt-johansson 0.835
- jonas-johansson 0.816
- förbundskapten-johansson 0.799
- johanssons 0.795
- svenske-förbundskaptenen-bengt-johansson 0.792
- bengan 0.786
- carlen 0.777
- bengan-johansson 0.767
- johansson-andreas-dackell 0.765
- förlorat-matcherna 0.750
- ck-bure 0.748
- daniel-johansson 0.748
målvakten-mats-olsson 0.747 jörgen-jönsson-mikael
-johansson 0.744 kicki-johansson 0.744 mattias-j
ohansson-aik 0.741 thomas-johansson 0.739 handbo
llsnation 0.738 mikael-johansson 0.737 förbunds
kaptenen-bengt-johansson-valde 0.736 johansson-mat
s-olsson 0.736 sveriges-handbollslandslag 0.736 s
tällningen-33-matcher 0.736
29Några möjliga applikationer
- Automatisk generering av en domänspecifik
tesaurus - Nyckelordsextraktion från dokument i en
dokumentsamling - Hitta dokument som liknar varandra
- Hitta dokument som är relaterade till ett givet
dokument eller uppsättning termer
30Slut