INF1820: Ordklassetagging

Like dokumenter
INF1820: Introduksjon til språk-og kommunikasjonsteknologi

HMM-tagging INF4820 H2008. Jan Tore Lønning. 30. september. Institutt for Informatikk Universitetet i Oslo

INF5820 Natural Language Processing - NLP. H2009 Jan Tore Lønning

INF1820: Oppsummering

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

IN1140: Introduksjon til språkteknologi. Forelesning #5: Språkmodeller

INF1820: Ordklasser INF1820: Ordklasser. Arne Skjærholt. 13. februar. INF1820: Ordklasser. Arne Skjærholt. 13. februar

IN1140: Introduksjon til språkteknologi. Forelesning #12

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

IN1140: Introduksjon til språkteknologi. Forelesning #13

Slides til 12.1 Formelt språk og formell grammatikk

INF INF1820. Arne Skjærholt. Terza lezione INF1820. Arne Skjærholt. Terza lezione

INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning

INF5830, H2009, Obigatorisk innlevering 2. 1 Oppgave: Unære produksjoner i CKY

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Tema 1: Hendelser, sannsynlighet, kombinatorikk Kapittel ST1101 (Gunnar Taraldsen) :19

LF - Eksamen i INF1820

UNIVERSITETET I OSLO

Sannsynlighetsregning og kombinatorikk

Oppgave 2. Eksamen INF2820, 2015, oppgave 2. La gramatikk G være:

Oppgave 1 (samlet 15%)

IN1140 H2019 gruppeoppgaver Språkmodeller og Ordklasser

INF1820 INF Arne Skjærholt INF1820. Arne Skjærholt

IN1140: Introduksjon til språkteknologi. Forelesning #6

. Grammatiske problem med å beskrive ordklassen adverb og setningsleddet adverbial i norsk. Sverre Stausland Johnsen Universitetet i Oslo

IN1140: Introduksjon til språkteknologi. Forelesning #6

Kompleksitet. IN algoritmer og datastrukturer Plenumstime / repetisjon

INF2820 Datalingvistikk V2016. Jan Tore Lønning

IN1140: Introduksjon til språkteknologi. Forelesning #2

Kapittel 2: Hendelser

Rekurrens. MAT1030 Diskret matematikk. Rekurrens. Rekurrens. Eksempel. Forelesning 16: Rekurrenslikninger. Dag Normann

Lineærtransformasjoner

a) Ved numerisk metode er det løst en differensiallikning av et objekt som faller mot jorden. Da, kan vi vi finne en tilnærming av akselerasjonen.

MA2401 Geometri Vår 2018

Oppgave 2. INF5110 oppgave 2 på eksamen v04 med teori. FirstMengder. Arne Maus Ifi. Eks. 4.9 Beregning av First-mengde. terminal

Analysedrypp I: Bevis, mengder og funksjoner

Dokument-embeddings / Markov-kjeder. Fredrik Jørgensen, Schibsted Media/UiO

Følgelig vil sannsynligheten for at begge hendelsene inntreffer være null,

Kapittel 2: Sannsynlighet [ ]

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

Fagdag ) Du skal fylle ut en tippekupong. På hvor mange måter kan dette gjøres?

Oppgave 1. Spørsmål 1.1 (10%) Gitt det regulære uttrykket: a((bcd)+(cd))*cd

9 Lineærtransformasjoner TMA4110 høsten 2018

Obs. Læreren må være klar over at det er mulig å få riktig svar ved å regne feil her,

Notat om Peanos aksiomer for MAT1140

MAT1030 Forelesning 22

Kombinatorikk. MAT1030 Diskret Matematikk. Oppsummering av regneprinsipper

MAT1030 Diskret Matematikk

Oppgave 1 Vi har gitt følgende grammatikk for noe vi kan kalle speilengelsk :

Matchinger i ikke-bipartite grafer

MA2401 Geometri Vår 2018

ÅMA110 Sannsynlighetsregning med statistikk, våren 2011

Sannsynlighetsregning og Statistikk

INF 2820 V2015: Obligatorisk innleveringsoppgave 3

APPENDIKS D Geminittisk språk/grammatikk

Kapittel 5: Mengdelære

MAT1030 Diskret Matematikk

ØVINGER 2017 Løsninger til oppgaver. 3.1 Myntkast For et enkelt myntkast har vi to mulige utfall, M og K. Utfallsrommet blir

Kapittel 2: Sannsynlighet

ÅMA110 Sannsynlighetsregning med statistikk, våren 2007

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

Obligatorisk oppgave 1 i MAT1140, Høst Løsninger med kommentarer

1 Mandag 8. februar 2010

Løsningsforslag, eksamen statistikk, juni 2015

Partielle ordninger, Zorns lemma og utvalgsaksiomet

Eksamen REA3022 Matematikk R1. Nynorsk/Bokmål

Utvalgsaksiomet, velordningsprinsippet og Zorns lemma

Oppgave 1 Vi lar X være antall tankskip som ankommer havnen i løpet av en dag. Vi har fått oppgitt at X poisson(λ) med

MA2401 Geometri Vår 2018

Transkript:

NF1820: Ordklassetagging NF1820: Ordklassetagging Arne Skjærholt 6. mars NF1820: Ordklassetagging Arne Skjærholt 6. mars

NF1820: Ordklassetagging Ordklassetagging Never gonna give you up Never gonna let you down Problemet: Gitt en inputsekvens av ord, hva er den riktige sekvensen tagger for ordene? RB: adverb; MD+TO: modal with infinitival to; VB: verb base form; PRP: personal pronoun; RP: particle Never gonna give you up Never gonna let you down

NF1820: Ordklassetagging Ordklassetagging Never/RB gonna/md+to give/vb you/prp up/rp Never/RB gonna/md+to let/vb you/prp down/rp Problemet: Gitt en inputsekvens av ord, hva er den riktige sekvensen tagger for ordene? RB: adverb; MD+TO: modal with infinitival to; VB: verb base form; PRP: personal pronoun; RP: particle Never/RB gonna/md+to give/vb you/prp up/rp Never/RB gonna/md+to let/vb you/prp down/rp

NF1820: Ordklassetagging Ordklassetagging Flertydighet De fleste ord er entydige: 11,5% av ordtyper er flertydige. Men 40% av tokens er flertydige. Det vil si: ord som forekommer ofte er oftere flertydige enn mindre vanlige ord. Men ikke alle betydninger er like vanlige, og vanlige i denne sammenhengen tilsvarer sannsynlighet. Dette kommer vi til å benytte oss av. Flertydighet

NF1820: Ordklassetagging Ordklassetagging Ordklassekriterier Litt repetisjon: Ordklasseinndelingen organiserer alle ord, slik at et ord tilhører nøyaktig én ordklasse (det er en taksonomi) styrt av visse kriterier. Morfologisk: hare/haren vs. redd/*redd-en Syntaktisk: en redd hare/redd for ilden vs. *en redd/*hare for ilden Semantisk: hare: dyr, levende vesen; redd: egenskap Ordklassekriterier

2014-03-05 NF1820: Ordklassetagging Ordklassetagging Ordklassekriterier Formelle/morfologiske Funksjonelle/syntaktiske Betydningsmessige/semantiske Litt repetisjon: Ordklasseinndelingen organiserer alle ord, slik at et ord tilhører nøyaktig én ordklasse (det er en taksonomi) styrt av visse kriterier. Morfologisk: hare/haren vs. redd/*redd-en Syntaktisk: en redd hare/redd for ilden vs. *en redd/*hare for ilden Semantisk: hare: dyr, levende vesen; redd: egenskap Ordklassekriterier Formelle/morfologiske Funksjonelle/syntaktiske Betydningsmessige/semantiske

2014-03-05 NF1820: Ordklassetagging Utfallsrom Ω, mengden av mulige utfall En delmengde E Ω kalles en hendelse P tilordner sannsynlighet [0,1] til hendelser Snakke litt om eksemplene fra forrige gang. Utfallsrom Ω, mengden av mulige utfall En delmengde E Ω kalles en hendelse P tilordner sannsynlighet [0,1] til hendelser

NF1820: Ordklassetagging Betinget sannsynlighet P (A B) P (A B) = P (B) P (A B) = P (A)P (B A) P (A B) = P (A B)P (B) P (A)P (B A) = P (A B)P (B) Betinget sannsynlighet P (A B) = P (A B) P (B) P (A B) = P (A)P (B A) P (A B) = P (A B)P (B) P (A)P (B A) = P (A B)P (B)

NF1820: Ordklassetagging Bayes teorem Eksempelet: En skole har 40% jenter og 60% gutter. Alle guttene går i bukser, halvparten av jentene bruker skjørt, resten bukser. Hva er sannsynligheten for at en i bukser er en jente? Bayes teorem

NF1820: Ordklassetagging Bayes teorem P (B A)P (A) P (A B) = P (B) Eksempelet: En skole har 40% jenter og 60% gutter. Alle guttene går i bukser, halvparten av jentene bruker skjørt, resten bukser. Hva er sannsynligheten for at en i bukser er en jente? Bayes teorem P (A B) = P (B A)P (A) P (B)

2014-03-05 NF1820: Ordklassetagging Argmax: Den x som gir størst f (x) x 0 = argmax x X f (x) betyr at f (x) f (x 0) for alle x X Argmax: Den x som gir størst f (x) x0 = argmax x X f (x) betyr at f (x) f (x 0 ) for alle x X

2014-03-05 NF1820: Ordklassetagging Argmax: Den x som gir størst f (x) x 0 = argmax x X f (x) betyr at f (x) f (x 0) for alle x X def argmax(f, xs): max_f = f(x[0]) max_x = x[0] for x in xs[1:]: new_f = f(x) if new_f > max_f: max_f = new_f max_x = x return (max_x, max_f) Argmax: Den x som gir størst f (x) x0 = argmax x X f (x) betyr at f (x) f (x 0 ) for alle x X def argmax(f, xs): max_f = f(x[0]) max_x = x[0] for x in xs[1:]: new_f = f(x) if new_f > max_f: max_f = new_f max_x = x return (max_x, max_f)

NF1820: Ordklassetagging Tagging Utfallsrommet er alle taggsekvenser n, gitt den observerte setningen w1 n, og vil finne den taggsekvensen som er mest sannsynlig (har høyest sannsynlighet) gitt ordsekvensen: ˆt 1 n = argmax x P (tn 1 wn 1 ). Tagging

NF1820: Ordklassetagging ˆt 1 n = argmax P ( n wn 1 ) n Men denne sannsynligheten er faktisk ganske vanskelig å regne på, så vi bruker Bayes teorem og omformer uttrykket. Sannsynligheten til ordsekvensen kan strykes, siden den sannsynligheten er konstant for en gitt inputstreng. ˆt 1 n = argmax P ( n wn 1 ) n

NF1820: Ordklassetagging ˆt 1 n = argmax P ( n wn 1 ) n P (w1 n = argmax tn 1 )P (tn 1 ) n P (w1 n) Men denne sannsynligheten er faktisk ganske vanskelig å regne på, så vi bruker Bayes teorem og omformer uttrykket. Sannsynligheten til ordsekvensen kan strykes, siden den sannsynligheten er konstant for en gitt inputstreng. ˆt 1 n = argmax P ( n wn 1 ) n = argmax t n 1 P (w n 1 tn 1 )P (tn 1 ) P (w n 1 )

NF1820: Ordklassetagging ˆt 1 n = argmax P ( n wn 1 ) n P (w1 n = argmax tn 1 )P (tn 1 ) n P (w1 n) = argmaxp (w1 n tn 1 )P (tn 1 ) n Men denne sannsynligheten er faktisk ganske vanskelig å regne på, så vi bruker Bayes teorem og omformer uttrykket. Sannsynligheten til ordsekvensen kan strykes, siden den sannsynligheten er konstant for en gitt inputstreng. ˆt 1 n = argmax P ( n wn 1 ) n = argmax t n 1 P (w n 1 tn 1 )P (tn 1 ) P (w n 1 ) = argmaxp (w1 n tn 1 )P (tn 1 ) n

NF1820: Ordklassetagging n P ( n ) = P (t i t i 1) i n P (w1 n tn 1 ) = P (w i t i) 1 Men vi er ikke helt i mål enda. Først gjør vi den samme antagelsen for P ( n ) som vi gjorde for språkmodeller: neste tagg avhenger kun av foregående tagg. Dette kalles for Markovantagelsen. En lignende antagelse gjør vi for ordsekvensen gitt taggsekvensen: hvert ord avhenger kun av taggen på det ordet. Dette siste uttrykket er heller ikke åpenbart bedre, men med en lur algoritme (Viterbi-algoritmen) går det bra. Viterbi er pensum i NF4820. n P ( n ) = P (t i t i 1 ) n P (w1 n tn 1 ) = P (w i t i ) i 1

NF1820: Ordklassetagging n P ( n ) = P (t i t i 1) i n P (w1 n tn 1 ) = P (w i t i) 1 n ˆt 1 n = argmax P (t i t i 1)P (w i t i) n i=1 Men vi er ikke helt i mål enda. Først gjør vi den samme antagelsen for P ( n ) som vi gjorde for språkmodeller: neste tagg avhenger kun av foregående tagg. Dette kalles for Markovantagelsen. En lignende antagelse gjør vi for ordsekvensen gitt taggsekvensen: hvert ord avhenger kun av taggen på det ordet. Dette siste uttrykket er heller ikke åpenbart bedre, men med en lur algoritme (Viterbi-algoritmen) går det bra. Viterbi er pensum i NF4820. n P ( n ) = P (t i t i 1 ) n P (w1 n tn 1 ) = P (w i t i ) ˆt n 1 = argmax t n 1 i 1 n P (t i t i 1 )P (w i t i ) i=1

NF1820: Ordklassetagging ˆP (t t ) = c(t,t) c(t ) ˆP (w t) = c(w,t) c(t) Sannsynlighetene estimerer vi akkurat som i språkmodellene (med MLE). Sannsynligheten P (t t ) kalles ofte for transisjonssannsynligheten, og P (w t) for emisjonssannsynligheten. ˆP (t t ) = c(t,t) c(t ) ˆP (w t) = c(w,t) c(t)

2014-03-05 NF1820: Ordklassetagging Q tilstander V vokabular t : Q Q P e : Q V P Q,V,t,e En annen måte å se HMMer på er som en probabilistisk FSA, noe som forklarer bruken av transisjon. Når maskinen kommer inn i en tilstand genererer den et ord (emisjonen) som er det vi ser. Dette er også grunnen til at vi snakker om hidden: den faktiske tilstandssekvensen er ukjent for oss (skjult). t: transisjonsfunksjonen, e emisjonsfunksjonen, q s starttilstand, q f sluttilstand. Q tilstander V vokabular t : Q Q P e : Q V P Q,V,t,e

NF1820: Ordklassetagging