INF2820-V2014-Oppgavesett 15, gruppe 13.5



Like dokumenter
UNIVERSITETET I OSLO

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

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

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

Obligatorisk oppgave 4, INF2820, 2014

INF 2820 V2016: Innleveringsoppgave 3 del 1

INF 2820 V2016: Obligatorisk innleveringsoppgave 3

Forelesning 27. MAT1030 Diskret Matematikk. Bevistrær. Bevistrær. Forelesning 27: Trær. Roger Antonsen. 6. mai 2009 (Sist oppdatert: :28)

MAT1030 Diskret matematikk

MAT1030 Diskret Matematikk

INF 2820 V2015: Obligatorisk innleveringsoppgave 3

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

INF2820 Datalingvistikk V Gang 23.3 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

Oppgave 1 (samlet 40%)

INF2820 Datalingvistikk V Gang 13.4 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

LF - Eksamen i INF1820

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

0. Innledning. Et grunnleggende spørsmål i semantikk er:

INF2820 Datalingvistikk V gang, Jan Tore Lønning

Forelesning 33. Repetisjon. Dag Normann mai Innledning. Kapittel 11

INF 2820 V2018: Innleveringsoppgave 3

MAT1030 Diskret matematikk

Innledning. MAT1030 Diskret matematikk. Kapittel 11. Kapittel 11. Forelesning 33: Repetisjon

INF 2820 V2016: Innleveringsoppgave 3 hele

INF2820 V2017 Oppgavesett 5 Gruppe 21.2

INF1800 Forelesning 4

INF2820 V2017 Oppgavesett 5 arbeidsoppgaver

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

INF1800 LOGIKK OG BEREGNBARHET

UNIVERSITETET I OSLO

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

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

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 30.3 Jan Tore Lønning

Hjemmeeksamen 2 i INF3110/4110


INF2820-V2018 Oppgavesett 10 Gruppe 18.4

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF1800 LOGIKK OG BEREGNBARHET

INF 2820 V2016: Obligatorisk innleverinsoppgave 1

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

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

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

INF1820: Oppsummering

UNIVERSITETET I OSLO

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

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF3170 Logikk. Ukeoppgaver oppgavesett 6

Et utsagn (eng: proposition) er en erklærende setning som enten er sann eller usann. Vi kaller det gjerne en påstand.

Oppgave 1 (samlet 15%)

INF1800 Forelesning 6

Databaser fra et logikkperspektiv del 2

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

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

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

Repetisjonsforelesning

INF2820 Datalingvistikk V2015. Jan Tore Lønning

Oppgaver til INF 5110, kapittel 5

Øvingsforelesning 1 Python (TDT4110)

Deduksjon i utsagnslogikk

INF 2820 V2015: Obligatorisk innleveringsoppgave 4

INF1820 V2014 Oppgave 3b CFGer og semantikk

Spørsmål og svar rundt oblig 1 og verktøy

IN1140 H2019 gruppeoppgaver Språkmodeller og Ordklasser

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

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

MAT1030 Diskret Matematikk

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

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 26.2 Jan Tore Lønning

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

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning

Databaser fra et logikkperspektiv

EKSAMEN. 1 Om eksamen. EMNE: MA2610 FAGLÆRER: Svein Olav Nyberg, Trond Stølen Gustavsen. Klasser: (div) Dato: 24. mai 2004 Eksamenstid:

Sekventkalkyle for utsagnslogikk

MAT1030 Forelesning 25

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

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

MAT1030 Plenumsregning 5

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Roger Antonsen

Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2)

MAT1030 Forelesning 25

Litt om kompilering og interpretering. Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Syntaks og semantikk

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Dag Normann

Et utsagn (eng: proposition) er en erklærende setning som enten er sann eller usann. Vi kaller det gjerne en påstand.

Semantisk Analyse del I

INF2820 Datalingvistikk V2012

MAT1030 Diskret Matematikk

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

Transkript:

INF2820-V2014-Oppgavesett 15, gruppe 13.5 Vi møtes på FORTRESS denne uka. Semantikk i grammatikken Utgangspunktet er det lille grammatikkfragmentet med semantiske regler presentert I NLTK-boka som simple-sem.fcfg. Du finner det i /projects/nlp/nltk_data/grammars/book_grammars/ Oppgave 1 Gjør deg kjent med grammatikken. Se hvordan grammatikken analyserer følgende setninger: 1. Cyril walks 2. Cyril sees Angus 3. Every girl walks 4. All girls walk 5. Every girl sees Angus 6. A dog bites every man 7. Angus gave a bone to every dog Bruk som før >>> import nltk >>> from nltk import load_parser >>> semparse = load_parse( file:simple-sem.fcfg ) >>> analyses = semparse.nbest_parse(<sent>) >>> for t in analyses: print t, \n\n For bare å se semantikken kan du skrive >>> for t in analyses: print t.node[ SEM ], \n\n Forsikr deg også om at grammatikken ikke aksepterer 8. Cyril walk 9. Every girl gives 10. All girls sees Angus 1

Oppgave 2 Utvidelser, regel for regel Vi skal nå se på utvidelser av grammatikken til å dekke flere fenomen syntaktisk og semantisk. Dette kan gjøres på litt ulike måter. I første omgang skal vi tillate oss å skrive semantiske regler som passer akkurat til hver syntaktiske regel. A. Adjektiv For enkle adjektiv som modifiserer substantiv er det vanlig å analysere dem som predikat som er forbundet med predikatet som svarer til substantivet med &, for eksempel small girl representeres som \x. (small(x) & girl(x)) Dette kan vi oppnå med en regel som: Nom[NUM=?n,SEM=<\x.(?adj(x) &?nom(x))>] -> A[SEM=?adj] Nom[NUM=?n,SEM=?nom] Hva må de leksikalske oppslagene for small og old være for å gi riktig resultat sammen med denne regelen? Utvid simple-sem.fcfg med regelen og oppslagene og lagr den under et nytt navn f.eks. rule_sem.fcfg. Se at den gir riktig resultat på noen eksempler, som 11. A small old man walks 12. Every old dog bites a small boy B. Relativsetninger Vi vil utvide fragmentet med noen enkle relativer som i 13. Every dog that bites a boy walks. 14. Cyril sees a dog that barks. Semantikken for denne konstruksjonen er tilsvarende som for adjektiv; dog that barks representeres som \y.(dog(y) & bark(y)) Som for adjektiv kan vi innføre dette med en semantisk regel i den syntaktiske regelen Nom[,SEM=<\x.(?nom(x) &?vp(x))>] -> Nom[,SEM=?nom] R VP[,SEM=?vp] R -> 'that' Vi trenger ikke flere regler, men vi trenger å fylle inn for prikkene for syntaktiske formål. Gjør dette i grammatikken din ( rule_sem.fcfg ). Test grammatikken din på (13) og (14). Sjekk også at du får riktig resultat på setning (15) og at eksemplene (16-19) ikke godtas av parseren. 15. All dogs that bark bite a bone 16. All dogs that barks bite a bone 17. All dogs that bark bites a bone 18. Every dog that bark walks 19. Every dog that barks walk Hvor mange analyser gir grammatikken din av setning(20)? Er setningen flertydig? Hvorfor får den mer enn en analyse? 20. Every old dog that walks barks 2

C. Setningskonjunksjon og -disjunksjon Det burde være opplagt hva slags semantikk vi ønsker for setninger som 21. Every dog barks and some dogs bite some boy 22. Angus sees Cyril or Angus sees Irene Dette kan oppnås med regler som S[SEM = <?s1 &?s2>] -> S[SEM=?s1] And S[SEM=?s2] And -> and Og tilsvarende for or. Utvid grammatikken din med disse reglene og test den på passende eksempler. D. Verbkonjunksjon og -disjunksjon Vi vil gjerne analysere setninger som 23. Every dog barks or chases some boy 24. Some boy walks and gives a bone to a dog that barks Det burde være klart hva slags semantikk vi ønsker for denne typen konstruksjoner. For eksempel ønsker vi noe slikt som (eller noe som er logisk ekvivalent med): \x. (bark(x) some y. (boy(y) & chase(x,y))) for barks or chases some boy. Implementer en løsning som svarer til dette, og se at du får riktig resultat på de to eksempelsetningene. E. Negasjon I logikk er negasjon i likhet med konjunksjon og disjunksjon betraktet som noe som opererer på setninger. I naturlige språk er det annerledes. Negasjon forekommer midt inni setningen. Den operer på VP-leddet, eller en del av VP-leddet. Setninger som inneholder negasjon blir ofte regnet som semantisk flertydige. For eksempel, betyr (25) det samme som (26) eller (27)? Hvor mange mulige betydninger har setning (28)? 25. All dogs do not bark 26. all x. (dog(x) -> -bark(x)) 27. -all x. (dog(x) -> bark(x)) 28. Every dog does not bite a boy 29. all x.(dog(x) -> -exists z1.(boy(z1) & bite(x,z1))) Vi skal ikke se på dette problemet her, men alltid velge den løsningen hvor negasjon rekker over VP inkludert alle NP-er i VP, men ikke over subjekts-np. Altså vil setning (25) tolkes som formel (26) og setning (28) tolkes som formel (29). For å få til dette kan vi bruke en syntaktisk analyse på formen 3

VP[ ] -> AUX[ ] NEG[ ] VP[ ] NEG[ ] -> 'not' AUX[ ] -> 'does' AUX[ ] -> 'do' Det er flere deler som må fylles ut. På den ene siden semantikken. På den andre siden må det legges inn syntaktiske trekk som forhindrer at følgende strenger blir analysert. 30. Angus does not barks 31. Angus bark Implementer en løsning for dette. Sjekk at du får riktig semantisk analyse for (25) og (28) og at (30) og (31) ikke godkjennes. Oppgave 3 Utvidelser med funksjonsapplikasjon I oppgave 2 tillot vi oss å lage regler som konstruerer morens semantikk fra døtrenes semantikk, og der regelen konstruerte dette på forskjellig måte i de ulike reglene. Men ser vi på de originale semantiske reglene i simple-sem.fcfg, så er morens semantikk enten lik en av døtrenes semantikk, eller den har formen f(a_1,,a_n) der f er semantikken til en av døtrene og hver a_i er semantikken til en annen datter. Følgende er eksempler på dette. VP[NUM=?n,SEM=?v] -> IV[NUM=?n,SEM=?v] VP[NUM=?n,SEM=<?v(?obj)>] -> TV[NUM=?n,SEM=?v] NP[SEM=?obj] VP[NUM=?n,SEM=<?v(?obj,?pp)>] -> DTV[NUM=?n,SEM=?v] NP[SEM=?obj] PP[+TO,SEM=?pp] Vi skal nå omforme utvidelsene våre til å være på en liknende form. Vi starter forfra med simplesem.fcfg og lager en ny utvidelse av som vi for eksempel kan kalle as fun_sem.fcfg. Vi skal lage dene trinn for trinn. A. Adjektiv Regelen for adjektiv kunne se ut som Nom[NUM=?n,SEM=<?adj(?nom)>] -> A[SEM=?adj] Nom[NUM=?n,SEM=?nom] Hva blir nå de leksikalske oppslagene for small og old når vi ønsker at setningene som helhet skal få en analyse logisk ekvivalent til den vi hadde i oppgave 2? Implementer løsningen din og sjekk at den stemmer. B. Relativsetninger Nå kan reglene se ut som Nom[,SEM=<?rel(?nom)>] -> Nom[,SEM=?nom] Rel[,SEM=?rel] Rel[,SEM=<?rp(?vp)>] -> R[SEM=?rp] VP[,SEM=?vp] R[SEM= ] -> 'that' Fullfør reglene, spesielt semantikken for that. Test resultatet på eksemplene (13-20) som i oppgave 2. 4

C. Setningskonjunksjon og -disjunksjon Vi kan nå slippe å innføre forskjellige syntaktiske regler for konjunksjon og for disjunksjon. Vi kan slå de to reglene sammen til en og overlate forskjellen til de leksikalske oppslagene for and og or. S[SEM = <?conj(?s1,?s2)>] -> S[SEM=?s1] Con[SEM=?conj] S[SEM=?s2] Con[SEM= ] -> 'and' Con[SEM= ] -> 'or' Implementer dette. Sett inn semantiske representasjoner for og sjekk at du får riktig analyse av setningene (21) og (22). Sjekk også at du får to analyser for setningen 32. Angus sees Cyril or Angus sees Irene and Irene walks E. Negasjon I dette formatet kan en tenkes seg en regel for negasjon på formen VP[,SEM=<?neg(?vp)>] -> AUX[ ] NEG[,SEM=?neg] VP[SEM=?vp] Hvordan skal da det leksikalske oppslaget for not se ut? NEG[, SEM= ] -> 'not' SLUTT 5