INF2820 Datalingvistikk V Gang 20.3 Jan Tore Lønning

Like dokumenter
INF2820 Datalingvistikk V Gang 5.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 30.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 20.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V Gang 23.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 19.3 del 1 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

Spørsmål 1.1 (10%) Lag en ikke-deterministisk endelig tilstandsautomat (NFA) som beskriver dette språket.

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

INF 2820 V2015: Obligatorisk innleveringsoppgave 3

INF2820 Datalingvistikk V Gang 6.3 Jan Tore Lønning

2/24/2012. Context-Free Grammars. I dag. Avledning. Eksempel: grammar1 PARSING. Jan Tore Lønning

UNIVERSITETET I OSLO

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang 26.2 Jan Tore Lønning

INF2820 Datalingvistikk V2012

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

Obligatorisk oppgave 4, INF2820, 2014

Oppgave 1. La G1 være grammatikken med hovedsymbol S og følgende regler:

INF 2820 V2018: Innleveringsoppgave 3

2/22/2011. Høyre- og venstreavledninger. I dag. Chomsky-normalform (CNF) Chomsky-normalform (CNF) PARSING. Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V gang, 27.2 Jan Tore Lønning

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

INF2820 V2017 Oppgavesett 5 Gruppe 21.2

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF2820 V2017 Oppgavesett 5 arbeidsoppgaver

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

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

INF 2820 V2016: Innleveringsoppgave 3 hele

INF 2820 V2016: Obligatorisk innleveringsoppgave 3

INF2820 Datalingvistikk V Gang 27.2 Jan Tore Lønning

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

2/6/2012. Begrensninger ved regulære språk. INF2820 Datalingvistikk V2012. Formelle språk som ikke er regulære KONTEKSTFRIE GRAMMATIKKER.

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

INF 2820 V2016: Innleveringsoppgave 3 del 1

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning

INF2820-V2018 Oppgavesett 10 Gruppe 18.4

3/8/2011. I dag. Dynamic Programming. Example. Example FORMELLE EGENSKAPER VED SPRÅK (KAP. 16) Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF INF1820. Arne Skjærholt INF1820. Dagens språk: Russisk. dyes yataya l yektsiya. Arne Skjærholt. десятая лекция

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF 2820 V2018: Innleveringsoppgave 2

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

2/24/2012. Dynamic Programming. I dag. Example. Example PARSING. Jan Tore Lønning

Oppgave 1 (samlet 40%)

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

3/5/2012. Chart alternativ datastruktur. Fundamentalregelen. Chart-parsing. Bottom-up FORMELL SPRÅKTEORI. Jan Tore Lønning

Parsing basert på LFG: Et MlT/Xerox-system applisert på norsk

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Slides til 12.1 Formelt språk og formell grammatikk

INF2820 Datalingvistikk V2017 Forelesning 1.1, 16.1 Jan Tore Lønning

1/18/2011. Forelesninger. I dag: Obligatoriske oppgaver. Gruppeundervisning. Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V2017 Forelesning 2, 23.1 Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

UNIVERSITETET I OSLO

INF2820 V2017 Oppgavesett 6 Gruppe 7.3

INF2820 Datalingvistikk V2014. Forelesning 4, 6.2 Jan Tore Lønning

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

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

1/26/2012 LITT PYTHON. INF2820 Datalingvistikk V2012. Hvorfor Pyhton. Python syntaks. Python er objektorientert. Python datatyper.

INF2820 Datalingvistikk V2018 Forelesning 1 del 1, 15. jan. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang, del Jan Tore Lønning

3/1/2011. I dag. Recursive descent parser. Problem for RD-parser: Top Down Space. Jan Tore Lønning & Stephan Oepen

INF INF1820. Arne Skjærholt. Negende les INF1820. Arne Skjærholt. Negende les

Transkript:

INF2820 Datalingvistikk V2017 10. Gang 20.3 Jan Tore Lønning

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 2

CKY Parsing og Chart parsing Er dette egentlig en parser? Strengt tatt: Nei! Det er en anerkjenner Hvordan kan vi lage en parser som følger denne algoritmen? 3/16/2017 Speech and Language Processing - Jurafsky and Martin 3

Alternativ Alt 1: Bygg trær underveis og legg dem i chartet S S S S a Med en flertydig grammatikk kan chartet/tabellen vokse eksponensielt 4

Eksempel (0) a (1) a (2) a (3) a (4) 0) (Sa) (S(Sa)(Sa)) (S(S(Sa)(Sa))(Sa)) (S(S(S(Sa)(Sa))(Sa))(Sa)) (S(Sa)(S(Sa)(Sa))) (S(S(Sa)(S(Sa)(Sa)))(Sa)) (S(S(Sa)(Sa))(S(Sa)(Sa))) (S(Sa)(S(S(Sa)(Sa))(Sa))) (S(Sa)(S(Sa)(S(Sa)(Sa)))) 1) (Sa) (S(Sa)(Sa)) (S(S(Sa)(Sa))(Sa)) (S(Sa)(S(Sa)(Sa))) 2) (Sa) (S(Sa)(Sa)) 3) (Sa) March 16, 2017 5

Et bedre alternativ Ikke bygg hele trær Men inkluder i strukturen informasjon som gjør det mulig å konstruere alle trær. (Merk: Hvis vi vil skrive ut alle trær får vi uansett en eksponensiell algoritme fordi antallet trær til en streng kan være eksponensielt i lengden av inputt.) 6

Eksempel (0) a (1) a (2) a (3) a (4) 0) (1,S,'a') (3,S,[(1,2)]) (6,S,[(1,5),(3,4)]) (10,S,[(1,9),(3,8),(6,7)]) 1) (2,S,'a') (5,S,[(2,4)]) (9,S,[(2,8),(5,7)]) 2) (4,S,'a') (8,S,[(4,7)]) 3) (7,S,'a') 7

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 8

Trekk ( features ) trinn for trinn NLTK ch.9, ex. 8 S NP_SG VP_SG S NP_PL VP_PL NP_SG Det_SG N_SG NP_PL Det_PL N_PL VP_SG V_SG VP_PL V_PL Det_SG 'this' Det_PL 'these' N_SG 'dog' N_PL 'dogs' V_SG 'runs' V_PL 'run' Kategorier og trekk S NP[NUM=sg] VP[NUM=sg] S NP[NUM=pl] VP[NUM=pl] NP[NUM=sg] Det[NUM=sg] N[NUM=sg] NP[NUM=pl] Det[NUM=pl] N[NUM=pl] VP[NUM=sg] V[NUM=sg] VP[NUM=pl] V[NUM=pl] Det[NUM=sg] 'this' Det[NUM=pl] 'these' N[NUM=sg] 'dog' N[NUM=pl] 'dogs' V[NUM=sg] 'runs' V[NUM=pl] 'run' March 16, 2017 9

Trekk trinn for trinn 2 Kategorier og trekk S NP[NUM=sg] VP[NUM=sg] S NP[NUM=pl] VP[NUM=pl] NP[NUM=sg] Det[NUM=sg] N[NUM=sg] NP[NUM=pl] Det[NUM=pl] N[NUM=pl] VP[NUM=sg] V[NUM=sg] VP[NUM=pl] V[NUM=pl] Saml sammen likheter S NP[NUM=?x] VP[NUM=?x] NP[NUM=?x] Det[NUM=?x] N[NUM=?x] VP[NUM=?x] V[NUM=?x] Det[NUM=sg] 'this' Det[NUM=pl] 'these' N[NUM=sg] 'dog' N[NUM=pl] 'dogs' V[NUM=sg] 'runs' V[NUM=pl] 'run' Det[NUM=sg] 'this' Det[NUM=pl] 'these' N[NUM=sg] 'dog' N[NUM=pl] 'dogs' V[NUM=sg] 'runs' V[NUM=pl] 'run' March 16, 2017 10

Intuitiv tolkning CFG S NP VP Med trekk S NP[NUM=?x] VP[NUM=?x] Hvis words[i,j] er en NP og words[j,k] er en VP Så kan words[i,k] være en S Hvis words[i,j] er en NP og words[j,k] er en VP og NP sin NUM = VP sin NUM Så kan words[i,k] være en S March 16, 2017 11

I NLTK Samme grammatikken forts. i 9.3 i NLTK-boka. VP[TENSE=?t, NUM=?n] > V[SUBCAT=intrans, TENSE=?t, NUM=?n] VP[TENSE=?t, NUM=?n] > V[SUBCAT=trans, TENSE=?t, NUM=?n] NP VP[TENSE=?t, NUM=?n] > V[SUBCAT=clause, TENSE=?t, NUM=?n] SBar V[SUBCAT=intrans, TENSE=pres, NUM=sg] > 'disappears' 'walks' V[SUBCAT=trans, TENSE=pres, NUM=sg] > 'sees' 'likes' V[SUBCAT=clause, TENSE=pres, NUM=sg] > 'says' 'claims' V[SUBCAT=intrans, TENSE=pres, NUM=pl] > 'disappear' 'walk' V[SUBCAT=trans, TENSE=pres, NUM=pl] > 'see' 'like' V[SUBCAT=clause, TENSE=pres, NUM=pl] > 'say' 'claim' V[SUBCAT=intrans, TENSE=past, NUM=?n] > 'disappeared' 'walked' V[SUBCAT=trans, TENSE=past, NUM=?n] > 'saw' 'liked' V[SUBCAT=clause, TENSE=past, NUM=?n] > 'said' 'claimed' 12

Noen observasjoner - formalismen S NP[NUM=?x] VP[NUM=?x] VP[TENSE=?t, NUM=?n] > V[SUBCAT=intrans, TENSE=?t, NUM=?n] VP[TENSE=?t, NUM=?n] > V[SUBCAT=trans, TENSE=?t, NUM=?n] NP VP[TENSE=?t, NUM=?n] > V[SUBCAT=clause, TENSE=?t, NUM=?n] SBar En kategori kan ha mer enn ett trekk Et trekk kan ta en atomær verdi, eks.: trans eller være en (delt) variabel Vi behøver ikke spesifisere alle trekk: F.eks. VP i de to reglene er forenlige 13

Noen observasjoner - anvendelse S NP[NUM=?x] VP[NUM=?x] VP[TENSE=?t, NUM=?n] > V[SUBCAT=intrans, TENSE=?t, NUM=?n] VP[TENSE=?t, NUM=?n] > V[SUBCAT=trans, TENSE=?t, NUM=?n] NP VP[TENSE=?t, NUM=?n] > V[SUBCAT=clause, TENSE=?t, NUM=?n] SBar Færre syntaktiske regler, men i utgangspunktet like stort leksikon Mange muligheter for å skrive en grammatikk i denne formalismen ikke én fasit Eksempelet viser en mulig behandling av subkategorisering av verb Men like mange regler som i en CFG Skal se alternative måter senere Flere trekk, som tense, kan være nyttige 14

Eksempel med tysk Tysk har en rikere morfo-syntaks Enda mer å spare her ved å bruke trekk F.eks 16 former av bestemt artikkel Case Masc Fem Neut Plural Nom der die das die Gen des der des der Dat dem der dem den Acc den die das die 15

Hvordan kan vi takle dette i CFG? NP_neut_sg_nom Det_neut_sg_nom N_neut_sg_nom NP_neut_sg_acc Det_neut_sg_acc N_neut_sg_acc NP_neut_sg_gen Det_neut_sg_gen N_neut_sg_gen NP_neut_sg_dat Det_neut_sg_dat N_neut_sg_dat NP_fem_sg_nom Det_fem_sg_nom N_fem_sg_nom NP_fem_sg_acc Det_fem_sg_acc N_fem_sg_acc NP_fem_sg_gen Det_fem_sg_gen N_fem_sg_gen NP_fem_sg_dat Det_fem_sg_dat N_fem_sg_dat NP_mask_sg_nom Det_mask_sg_nom N_mask_sg_nom NP_mask_sg_acc Det_mask_sg_acc N_mask_sg_acc NP_mask_sg_gen Det_mask_sg_gen N_mask_sg_gen NP_mask_sg_dat Det_mask_sg_dat N_mask_sg_dat NP_pl_nom Det_pl_nom N_pl_nom NP_pl_acc Det_pl_acc N_pl_acc NP_pl_gen Det_pl_gen N_pl_gen NP_pl_dat Det_pl_dat N_pl_dat 16

Observasjoner Dette gir 16 ulike regler Kanskje ikke nok. Vi må skille mellom Bestemt: der gute Mann Ubestemt: ein guter Mann (begge er nom, mask, sg) Og vi må kanskje dra på forskjellene i andre deler av gramamtikken, eks S NP_neut_sg_nom S NP_mask_sg_nom S NP_fem_sg_nom Osv. VP_3p_sg VP_3p_sg VP_3p_sg 17

Tysk med trekkgrammatikk, alt 1 S NP[CASE=nom, NUM=?x, PERS=?y] VP[NUM=?x, PERS=?y] NP[CASE=?z,NUM=?x, PERS=3rd] Det[CASE=?z,NUM=?x, GEN=?u] N[CASE=?z,NUM=?x, GEN=?u] VP[NUM=?x, PERS=?y] V[SUBC= dtv, PERS=?y, NUM=?x] NP[CASE=dat] NP[CASE=acc] Det[NUM=sg, CASE=nom, GEN=mask] 'der' N[NUM=sg, CASE=nom, GEN=mask] Mann' 18

Tysk med trekkgrammatikk, alt 2 S NP[CASE=nom, AGR=?x] VP[AGR=?x] NP[CASE=?z, AGR=?x] Det[CASE=?z, AGR=?x,] N[CASE=?z, AGR=?x,] VP[AGR=?x] V[SUBC= dtv, AGR=?x] NP[CASE=dat] NP[CASE=acc] Vi kan samle flere trekk som hører sammen i en «pakke», en trekkstruktur innenfor en større struktur Det[CASE=nom, AGR=[NUM=sg, GEN=mask]] 'der' N[CASE=nom, AGR=[NUM=sg, GEN=mask]] Mann' 19

Trekkstrukturer Lang tradisjon i lingvistikk Eks.: fonologi En mengde trekk og verdier: For hvert trekk er det definert hvilke verdier som er mulige Et skritt videre: Hele trekkstrukturer som verdier 20

Trekkstrukturer som grafer Attribute Value Matrices (AVMs) Directed Acyclic Graphs (DAGs) To alternative notasjoner for det samme 21

Deling («Reentrancies») 22

1. Regler med trekkstrukturer S NP VP NP Det N V serve V serves En ikke terminal suppleres med en partiell trekkstruktur Mulig deling mellom trekkstrukturene i en regel Terminalene er uendret 16. mars 2017 23

1B. NLTKs format S NP VP S NP[AGR=?x] VP[AGR=?x] NP Det N NP[AGR=?x] Det[AGR=?x] Nom[AGR=?x] V serves V[AGR=[NUM=SG, PERS=3rd]] serves NLTKs format er en implementasjon av denne formalismen Men som vi vil se senere, har implementasjonen en del begrensninger i forhold til formalismen 16. mars 2017 24

Liten eksempelgrammatikk: S > NP[AGR=?x] VP[AGR=?x] NP[AGR=?x] > DET[AGR=?n] N[AGR=?n] VP[AGR=?x] > V[AGR=?x] NP V[AGR = [NUM = 'pl']] > 'serve' V[AGR = [NUM = 'sg', PERS = '3rd']] > 'serves' DET[AGR = [PERS = '3rd']] > 'the' DET[AGR = [PERS = '3rd', NUM = 'sg']] > 'a' DET[AGR = [PERS = '3rd', NUM = 'pl']] > 'many' N[AGR = [PERS = '3rd', NUM = 'sg']] > 'restaurant' N[AGR = [PERS = '3rd', NUM = 'pl']] > 'restaurants' N[AGR = [PERS = '3rd', NUM = 'sg']] > 'hamburger' N[AGR = [PERS = '3rd', NUM = 'pl']] > 'hamburgers' N[AGR = [PERS = '3rd', NUM = 'sg']] > 'customer' N[AGR = [PERS = '3rd', NUM = 'pl']] > 'customers' N[AGR = [PERS = '3rd']] > 'fish' 25 16. mars 2017

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 26

Anerkjenning med grammatikken the restaurant serves many hamburgers 16. mars 2017 27

De leksikalske reglene Det N V Det N the restaurant serves many hamburgers 16. mars 2017 28

En regel svarer til partielt lokalt tre NP Det N Det N V Det N the restaurant serves many hamburgers 16. mars 2017 29

Prøver å unifisere regel med noder NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 30

Tilsvarende NP Det N NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 31

(strukturen for the utvides) NP NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 32

VP V NP NP NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 33

(VP samsvarer med SUBJ ikke OBJ) VP NP NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 34

S NP NP VP NP NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 35

Strukturene unifiseres (2=3=4) S VP NP NP Det N V Det N the restaurant serves many hamburgers 16. mars 2017 36

Ikke en grammatisk setning Det N V Det N the restaurant serve many hamburgers 16. mars 2017 37

4 kan ikke unifiseres med både 2 og 3 S NP NP VP NP NP Det N V Det N the restaurant serve many hamburgers 16. mars 2017 38

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 39

En generalisering av formalisme 1 Trekkstrukturgrammatikk Syntaktisk regel: En trekkstr. på v.s Null eller flere t.s. på h.s Deling mellom trekkstr.ene Leksikalsk regel: En trekkstr. på v.s En terminal på h.s. gives 16. mars 2017 40

En generalisering av formalisme 1 Hvis det er et trekk som alle strukturene i reglene har, f.eks. CAT (eller *TYPE*) dette trekket bare tar atomære verdier, så blir dette det samme som å ha en ikke terminal + trekkstruktur Men dette formatet gir også muligheter for utvidelser: F.eks. regler med variable cat trekket Bruke neste gives 16. mars 2017 uke 41

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 42

Trekkstrukturer Lang tradisjon i lingvistikk Eks.: fonologi En mengde trekk og verdier: For hvert trekk er det definert hvilke verdier som er mulige Et skritt videre: Hele trekkstrukturer som verdier 43

Trekkstrukturer som grafer Attribute Value Matrices (AVMs) Directed Acyclic Graphs (DAGs) To alternative notasjoner for det samme 44

Deling («Reentrancies») 45

Trekkstrukturer - formelt To endelige mengder F = {f 1, f 2,, f n } A = {a 1, a 2,, a n } En trekkstruktur over F og A er Atomær, dvs et element i A, eller Ikke atomær. Det er et objekt. Dette inneholder En mengde trekk, dvs en delmengde av F: f 1, f 2,, f j Til hvert av disse trekkene er det en verdi, som igjen er en trekkstruktur (atomær eller ikke atomær) En trekkstruktur kan ikke inneholde to par av trekk og verdier (f k, a k ), (f p, a p ) der f k = f p, men a k =/= a p To trekkstrukturer som inneholder de samme trekk verdiparene kan være identiske, men behøver ikke være det 16. mars 2017 (som dictionaries i python) 46

Unifikasjon av trekkstrukturer 16. mars 2017 47

16. mars 2017 48

16. mars 2017 49

16. mars 2017 50

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 51

Subsumpsjon og unifikasjon Subsumpsjon F subsummerer G F er minst like generell som G Hvis og bare hvis: F er atomær og F=G Ellers For hvert trekk x i F: F(x) subsumerer G(x) For alle stier p, q in F: Hvis F(p) = F(q), så G(p) = G(q) Unifikasjon H er unifikasjonen av F og G H = Hvis og bare hvis Og H er den mest generelle slike trekkstrukturen 16. mars 2017 52

NLTK - implementasjon >>> fs1 = nltk.featstruct(tense='past', NUM='sg') >>> fs1 [NUM='sg', TENSE='past'] >>> print fs1 [ NUM = 'sg' ] [ TENSE = 'past' ] >>> from nltk import FeatStruct >>> fs2 = FeatStruct(CAT='vp', AGR = fs1) >>> print fs2 [ AGR = [ NUM = 'sg' ] ] [ [ TENSE = 'past' ] ] [ ] [ CAT = 'vp' ] 16. mars 2017 53

NLTK - implementasjon >>> fs3 = fs2.unify(featstruct( "[AGR =?x, SUBJ = [AGR =?x]]")) >>> print fs3 [ AGR = (1) [ NUM = 'sg' ] ] [ [ TENSE = 'past' ] ] [ ] [ CAT = 'vp' ] [ ] [ SUBJ = [ AGR > (1) ] ] 16. mars 2017 54

I dag grammatikker med trek og unifikasjon Fortsatt:) CKY og Chart: Parsing vs anerkjenning Grammatikker med trekk Tolkning av grammatikkene, eksempel En generalisering av formalismen Trekkstrukturer, mer formelt Subsumpsjon og unifikasjon Trekkstrukturgrammatikker, mer formelt 55

Betingelser på grammatikalitet S, Hvert lokalt tre må tillates av en grammatikkregel NP, VP, DET, N, V, NP, DET, N, the restaurant serves many fish 16. mars 2017 56

Lokalt tre tillatt av regel eks 1 t1: S, Hvert lokalt tre må tillates av en grammatikkregel NP, VP, R1: S NP VP Regelen R1 svarer til et lokalt tre t2 R1 tillater t1 hvis t1 «utvider» t2, Mer formelt: hvis t2 subsummerer t1 16. mars 2017 57

Subsumpsjon av trær Vi kan utvide definisjonen av subsumpsjon fra trekkstrukturer til trær med trekkstrukturer på nodene Et tre T subsummerer et tre T dersom Trekkstrukturen på T subsummerer strukturen på T Inkludert at hvis T har en kategori, så har T samme kategori Hvis T har døtrene D 1, D 2,, D n, så har T like mange døtre D 1, D 2,, D n, der D i subsummerer D i for i = 1, 2,, n, og Alle delinger i T er også delinger i T. 58

Tolkning av grammatikk Et tre T med trekkstrukturer er tillatt av grammatikk G hvis og bare hvis. Hvis t 1, t 2,, t n er alle de lokale trærne i T, så fins det tilsvarende regler i G, si g 1, g 2,, g n s.a.: tre t i er tillatt av regel g i for i= 1, 2,, n Hvis T er et annet tre tillatt av de samme reglene g 1, g 2,, g n, på tilsvarende subtrær og T subsummerer T, så subsummerer T også T. "Det skal ikke være med mer i treet enn det reglene krever. " 16. mars 2017 59