Oppgave 1 (samlet 40%)

Like dokumenter
UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

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

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

UNIVERSITETET I OSLO

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

INF 2820 V2015: Obligatorisk innleveringsoppgave 3

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

INF 2820 V2016: Obligatorisk 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 V2011. Jan Tore Lønning & Stephan Oepen

INF2820 V2017 Oppgavesett 6 Gruppe 7.3

INF2820 Datalingvistikk V Gang 6.3 Jan Tore Lønning

INF 2820 V2016: Innleveringsoppgave 3 hele

INF2820 Datalingvistikk V Gang 26.2 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

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

Eksamen INF2820 Datalingvistikk, H2018, Løsningsforslag

INF2820 Datalingvistikk V Gang 27.2 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF 2820 V2018: Innleveringsoppgave 3

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

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

INF 2820 V2016: Innleveringsoppgave 3 del 1

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

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

INF2820 Datalingvistikk V2012

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Oppgave 1 (samlet 15%)

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning

INF2820-V2018 Oppgavesett 10 Gruppe 18.4

INF2820 Datalingvistikk V gang, Jan Tore Lønning

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

Obligatorisk oppgave 4, INF2820, 2014

INF2820 Datalingvistikk V gang, 27.2 Jan Tore Lønning

Oppgave 1 (samlet 15%)

INF 2820 V2016: Obligatorisk innleverinsoppgave 1

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

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

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

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

INF2820 Datalingvistikk V Gang Jan Tore Lønning

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

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

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

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

INF2820 Datalingvistikk V2012. Jan Tore Lønning

LF - Eksamen i INF1820

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF5110 V2013 Stoff som i boka står i kap 4, men som er generelt stoff om grammatikker

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

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF2820-V2014-Oppgavesett 15, gruppe 13.5

INF5110 V2012 Kapittel 4: Parsering ovenfra-ned

INF 2820 V2018: Innleveringsoppgave 2

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

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 23.3 Jan Tore Lønning

Kap. 5, Del 3: INF5110, fra 1/3-2011

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

INF2820 V2017 Oppgavesett 5 Gruppe 21.2

INF2820 Datalingvistikk V Gang 5.3 Jan Tore Lønning

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

Kap. 4 del I Top Down Parsering INF5110 v2006. Stein Krogdahl Ifi, UiO

Kap.4 del I Top Down Parsering INF5110 v2005. Arne Maus Ifi, UiO

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

Repetisjon. 1 binærtall. INF3110 Programmeringsspråk. Sist så vi ulike notasjoner for syntaks: Jernbanediagrammer. BNF-grammatikker.

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF3110 Programmeringsspråk

Bottom up parsering (nedenfra-og-opp) Kap. 5 del 1 Intro til parsering nedenfra-og-opp samt LR(0) og SLR(1) grammatikker INF5110 v2006

INF2820 V2017 Oppgavesett 5 arbeidsoppgaver

2/20/2012. I dag. Parsing. Recursive descent parser SÆRLIG TABELLPARSING. Venstre- og høyreavledning. Jan Tore Lønning

Kap. 5, del 1: Parsering nedenfra-opp (Bottom-up parsering) INF / Stein Krogdahl Ifi, UiO

INF2820 Datalingvistikk V Gang Jan Tore Lønning

Slides til 12.1 Formelt språk og formell grammatikk

INF2820 Datalingvistikk V Gang Jan Tore Lønning

Kap.4 del 2 Top Down Parsering INF5110 v2005. Arne Maus Ifi, UiO

Kap. 4: Ovenfra-ned (top-down) parsering

MAT1030 Forelesning 19

Lesekurs i praksis. Oppgaver på «Nivå 2» Vigdis Refsahl

Statisk semantisk analyse - Kap. 6

UNIVERSITETET I OSLO

INF5110, onsdag 19. februar, Dagens tema: Parsering ovenfra-ned (top-down)

INF2820 Datalingvistikk V Gang Jan Tore Lønning

Statisk semantisk analyse - Kap. 6

Kap. 5, del 1: Parsering nedenfra-opp (Bottom up parsing) INF5110. Stein Krogdahl Ifi, UiO

INF5110 Kap. 5: Parsering nedenfra-og-opp (Bottom-up parsing) 21/ Stein Krogdahl Ifi, UiO. Angående Oblig 1:

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.4 Jan Tore Lønning

Nasjonale prøver 2012

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

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

Transkript:

2 Du kan svare på norsk, dansk, svensk eller engelsk. Du skal besvare alle spørsmålene. Vekten på de ulike spørsmålene er oppgitt. Du bør lese gjennom hele settet slik at du kan stille spørsmål til faglærerne når de kommer i tilfelle noe er uklart. Hvis du føler noen forutsetninger mangler, lag dine egne og redegjør for dem! Oppgave 1 (samlet 40%) La grammatikk G1 være: VP -> VS CP CP -> C S NP -> DET N NP -> NP PP VP -> VP PP PP -> P NP NP -> 'dyret' 'treet' 'Kari' 'Ola' N -> 'dyr' 'tre' DET -> 'et' 'ethvert' VP -> 'sov' 'smilte' 'danset' VTV -> 'kjente' 'likte' 'dyttet' VS -> 'trodde' 'så' 'fortalte' C -> 'at' P -> 'fra' 'til' 'ved' Spørsmål 1.1 (10%) Tegn opp de 3 trærne som grammatikken tilordner til ordsekvensen 1) Kari så at Ola dyttet et dyr fra treet

3 Tre A: Tre B: Tre C:

4 Spørsmål 1.2 (5%) Forklar kort forskjellene i mening som svarer til de 3 forskjellige syntaktiske analysene. A) Seingen skjer fra treet, dvs. Kari sitter i treet og ser det som skjer. Dyttingen, Ola og dyret behøver ikke være i treet. B) Dyttingen skjer fra treet, dvs. dyret blir dyttet fra treet. Kari kan stå hvor som helst og se dette. C) Dyret fra treet er en måte å beskrive et bestemt dyr (til forskjell fra f.eks. dyret fra hulen ). Dette dyret blir dyttet. Hverken dytting eller seing behøver å skje noe bestemt sted. Spørsmål 1.3 (10%) Vis hvordan en «shift-reduce recognizer» kan gå frem for å finne en av de 3 analysene. Du behøver bare å finne en av analysene, ikke alle tre, og du behøver bare å vise de vellykkete valgene. <> Kari saa at Ola dyttet et dyr fra treet NP <> saa at Ola dyttet et dyr fra treet NP VS <> at Ola dyttet et dyr fra treet NP VS C <> Ola dyttet et dyr fra treet NP VS C NP <> dyttet et dyr fra treet NP VS C NP VTV <> et dyr fra treet NP VS C NP VTV DET <> dyr fra treet NP VS C NP VTV DET N <> fra treet NP VS C NP VTV NP <> fra treet NP VS C NP VP <> fra treet NP VS C S <> fra treet NP VS CP <> fra treet NP VP <> fra treet NP VP P <> treet NP VP P NP <> # NP VP PP <> # NP VP <> # S <> # (Også andre mulige løsninger. Greit her å bruke algoritmen som vist, som alltid reduser enkeltord etter skifting, men fint med en begrunnelse for dette. Også riktig om en bruker den generelle algoritmen.)

5 Spørsmål 1.4 (5%) Hvorfor tror du vi bruker en «shift-reduce recognizer» og ikke en «recursive descent recognizer» her? Grammatikken inneholder venstrerekursive regler NP -> NP PP VP -> VP PP En RD-algoritme vil kunne lede til en bunnløs rekursjon der vi predikerer flere og flere PP-er uten å teste mot input: NP NP PP NP PP PP NP PP PP Spørsmål 1.5 (10%) Vis hvordan CKY-algoritmen kan brukes til å anerkjenne at ordsekvensen i (1) er en setning ved å konstruere en CKY-tabell for den. Nummerer symbolene i den rekkefølgen du legger dem inn i tabellen. (0) Kari (1) saa (2) at (3) Ola (4) dyttet (5) et (6) dyr (7) fra (8) treet (9) 0) 1)NP 13)S 22)S 1) 2)VS 12)VP 21)VP 2) 3)C 11)CP 20)CP 3) 4)NP 10)S 19)S 4) 5)VTV 9)VP 18)VP 5) 6)DET 8)NP 17)NP 6) 7)N 7) 14)P 16)PP 8) 15)NP

6 Oppgave 2 (20%) I norsk kan vi etter kopulaverb, som være og bli, ha et substantiv i ubestemt form uten noen determinativ foran, som for eksempel student i setning (2). 2) Kari er student Grammatikken G2 genererer denne setningen og noen til: VP -> VI VP -> VCOP NOM NP -> PN NP -> DET NOM NOM -> N N -> 'elev' 'student' 'professor' PN -> 'Kari' 'Ola' DET -> 'en' 'enhver' VI -> 'sover' 'smiler' VTV -> 'kjenner' 'liker' VCOP -> 'er' 'blir' Du skal nå utstyre grammatikken med trekk (eng: features ) og utvide den. Du skal utvide klassen av NP til også å inneholde substantiv i ubestemt og bestemt form i entall og flertall med determinativer, som i Ubestemt Bestemt Entall En student Studenten Den studenten Flertall Studenter Mange studenter Noen studenter De studentene Disse studentene Du skal passe på at det blir riktig samsvar mellom determinativ og substantiv, og ikke f.eks. *en studenten, *mange student, *mange studentene, *de studenten. Du skal også passe på at det blir riktig samsvar i kopulakonstruksjonen. Riktig er f.eks. Kari er student Mange elever blir studenter Feil er f.eks. Kari er elever Mange elever blir student Mange elever blir studentene

7 S -> NP[NUM=?n] VP[NUM=?n] VP -> VI VP[NUM=?n] -> VCOP NOM[NUM=?n, -DEF] NP[DEF=?d, NUM=?n] -> DET[DEF=?d, NUM=?n] NOM[DEF=?d, NUM=?n] NP[+DEF, NUM=sg] -> PN NOM[DEF=?d, NUM=?n] -> N[DEF=?d, NUM=?n] N[-DEF, NUM=sg] -> 'elev' 'student' 'professor' N[-DEF, NUM=pl] -> 'elever' 'studenter' 'professorer' N[+DEF, NUM=sg] -> 'eleven' 'studenten' 'professoren' N[+DEF, NUM=pl] -> 'elevene' 'studentene' 'professorene' DET[-DEF, NUM=sg] -> 'en' 'enhver' DET[+DEF, NUM=sg] -> 'den' 'denne' DET[-DEF, NUM=pl] -> 'mange' 'noen' DET[+DEF, NUM=pl] -> 'disse' 'de' VI -> 'sover' 'smiler' VTV -> 'kjenner' 'liker' VCOP -> 'er' 'blir' Oppgave 3 (samlet 20%) Følgende lille fcfg-fragment, no-sem, inneholder regler for noen få norske setninger og tilordner dem semantiske representasjoner. % start S S[SEM=<?npsem(?vpsem)>] -> NP[SEM=?npsem] VP[SEM=?vpsem] NP[SEM=<\X.X(?npsem)>] -> PN[SEM=?npsem] NP[SEM=<?dsem(?nsem)>] -> Det[SEM=?dsem] Nom[SEM=?nsem ] VP[SEM=?vpsem] -> IV[SEM=?vpsem] VP[SEM=<\s.?npsem(\o.?tvsem(s,o))>] -> TV[SEM=?tvsem] NP[SEM=?npsem] Nom[SEM=?nsem] -> N[SEM=?nsem] PN[SEM=<ola>] -> 'Ola' PN[SEM=<kari>] -> 'Kari' IV[SEM=<sov>] -> 'sov' IV[SEM=<smilte>] -> 'smilte' TV[SEM=<likte>] -> 'likte' TV[SEM=<beundret>] -> 'beundret' Det[SEM=<\P Q.exists x.(p(x) & Q(x))>] -> 'et' Det[SEM=<\P Q.all x.(p(x) -> Q(x))>] -> 'ethvert' N[SEM=<hus>] -> 'hus' N[SEM=<barn>] -> 'barn' N[SEM=<dyr>] -> 'dyr'

8 Spørsmål 3.1 (10%) Vis hvordan setningen 3) Kari beundret et dyr vil bli analysert i denne grammatikken, og følgelig hvilken semantisk representasjon den får. Se neste side Spørsmål 3.2 (10%) Grammatikken skal utvides med PP-ledd som modifiserer Nom-ledd. For å få dette legger vi til reglene Nom[ ] -> Nom[ ] PP[ ] PP[ ] -> P[ ] NP[ ] P[ ] -> 'fra' Fyll ut -feltene med semantiske trekk slik at setning (4) får den semantiske representasjonen (5). 1) Kari beundret ethvert dyr fra et hus 2) all x.((dyr(x) & exists z.(hus(z) & fra(x,z))) -> beundret(kari,x)) Nom[SEM=<\x.(?nom(x) &?pp(x))>] -> Nom[SEM=?nom] PP[SEM=?pp] PP[SEM=<\s.?npsem(\o.?psem(s,o))>] -> P[SEM=?psem] NP[SEM=?npsem] P[SEM=<fra>] -> 'fra'

9

10 Oppgave 4 (samlet 20%) La grammatikk G4 være VP -> VI VP -> VS 'at' S NP -> DET NOM NOM -> N NOM -> NOM REL REL -> 'som' S/NP S/NP -> NP/NP VP S/NP -> NP VP/NP VP/NP -> VTV NP/NP VP/NP -> VS 'at' S/NP NP/NP -> NP -> 'dyret' 'barnet' 'Kari' 'Ola' N -> 'dyr' 'barn' DET -> 'et' 'ethvert' VI -> 'sov' 'smilte' 'danset' VTV -> 'kjente' 'likte' 'klappet' VS -> 'trodde' 'visste' 'fortalte' Her er et symbol som S/NP å oppfatte som en enkel ikke-terminal (eller mao. et enkelt kategorisymbol). Skrivemåten er valgt for lettere å se hva symbolene står for. S/NP kan oppfattes som en «S som mangler en NP». Tilsvarende er NP/NP en «NP som mangler en NP». Derfor kan den være tom. Spørsmål 4.1 (5%) Tegn opp treet grammatikken tilordner til ordsekvens (6). 3) Kari klappet et dyr som Ola fortalte at barnet likte

11 Spørsmål 4.2 (15%) Vi ønsker å bruke denne grammatikken sammen med CKY-algoritmen. Men skal vi gjøre det, må grammatikken være på Chomsky-normalform (CNF). Finn en grammatikk på CNF for språket beskrevet av G4. Viss trinnene i omformingen. (Det holder på hvert trinn å si hvilke regler som blir strøket og hvilke som blir lagt til) Trinn 1: Fjerner tomme produksjoner, som gir VP -> VI VP -> VS 'at' S NP -> DET NOM NOM -> N NOM -> NOM REL REL -> 'som' S/NP S/NP -> NP/NP VP S/NP -> VP S/NP -> NP VP/NP VP/NP -> VTV NP/NP

12 VP/NP -> VTV VP/NP -> VS 'at' S/NP NP -> 'dyret' 'barnet' 'Kari' 'Ola' N -> 'dyr' 'barn' DET -> 'et' 'ethvert' VI -> 'sov' 'smilte' 'danset' VTV -> 'kjente' 'likte' 'klappet' VS -> 'trodde' 'visste' 'fortalte' Trinn 2: Fjerner unære produksjoner med ikke-terminal på høyre side som gir: VP -> VS 'at' S NP -> DET NOM NOM -> NOM REL REL -> 'som' S/NP S/NP -> NP/NP VP S/NP -> VTV NP S/NP -> VS 'at' S S/NP -> NP VP/NP VP/NP -> VTV NP/NP VP/NP -> VS 'at' S/NP NP -> 'dyret' 'barnet' 'Kari' 'Ola' N -> 'dyr' 'barn' NOM -> 'dyr' 'barn' DET -> 'et' 'ethvert' VI -> 'sov' 'smilte' 'danset' VP -> 'sov' 'smilte' 'danset' S/NP -> 'sov' 'smilte' 'danset' VTV -> 'kjente' 'likte' 'klappet' VP/NP -> 'kjente' 'likte' 'klappet' VS -> 'trodde' 'visste' 'fortalte' Trinn 3: Setter inn ikketerminaler for terminaler som står på høyresider med mer enn ett symbol

13 VP -> VS A S NP -> DET NOM NOM -> NOM REL REL -> R S/NP S/NP -> NP/NP VP S/NP -> VTV NP S/NP -> VS A S S/NP -> NP VP/NP VP/NP -> VTV NP/NP VP/NP -> VS A S/NP NP -> 'dyret' 'barnet' 'Kari' 'Ola' N -> 'dyr' 'barn' NOM -> 'dyr' 'barn' DET -> 'et' 'ethvert' VI -> 'sov' 'smilte' 'danset' VP -> 'sov' 'smilte' 'danset' S/NP -> 'sov' 'smilte' 'danset' VTV -> 'kjente' 'likte' 'klappet' VP/NP -> 'kjente' 'likte' 'klappet' VS -> 'trodde' 'visste' 'fortalte' R -> 'som' A -> 'at' Trinn 4: Omfomer slik at alle høyresider med ikketerminaler inneholder nøyaktig 2 VP -> VS X1 X1 -> A S NP -> DET NOM NOM -> NOM REL REL -> R S/NP S/NP -> NP/NP VP S/NP -> VTV NP S/NP -> VS Y1 Y1 -> A S S/NP -> NP VP/NP

14 VP/NP -> VTV NP/NP VP/NP -> VS Z1 Z1 -> A S/NP NP -> 'dyret' 'barnet' 'Kari' 'Ola' N -> 'dyr' 'barn' NOM -> 'dyr' 'barn' DET -> 'et' 'ethvert' VI -> 'sov' 'smilte' 'danset' VP -> 'sov' 'smilte' 'danset' S/NP -> 'sov' 'smilte' 'danset' VTV -> 'kjente' 'likte' 'klappet' VP/NP -> 'kjente' 'likte' 'klappet' VS -> 'trodde' 'visste' 'fortalte' R -> 'som' A -> 'at' SLUTT