INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

Størrelse: px
Begynne med side:

Download "INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning"

Transkript

1 INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

2 PARSING DEL 2 2

3 I dag Recursive-descent parser, kort repetisjon Shift-reduce parser (bottom-up) Algoritme for anerkjenning Eksempelimplementasjon Svakheter ved RD- og SR-parsing CKY Algoritme Implementasjon 25. februar

4 Parsing Gitt en grammatikk G og streng s Spm1: Er s L(G) Spørsmål om anerkjennelse ( recognition ) Spm2: Hvorfor er s L(G)? Hva er frasestrukturen til s i G? Finn alle trær i T(G) som har s som utkomme ( yield ) Parsing 25. februar

5 Recursive descent parser S the dog saw a man in the park NP VP the dog saw a man in the park Det N VP the dog saw a man in the park the N VP the dog saw a man in the park N VP dog saw a man in the park dog VP dog saw a man in the park VP saw a man in the park V NP PP saw a man in the park saw NP PP saw a man in the park NP PP a man in the park Det N PP a man in the park a N PP a man in the park N PP man in the park man PP man in the park PP in the park P NP in the park in NP in the park NP the park Det N the park the N the park N park park park # # 25. februar

6 Recursive descent parser Lager en venstreavledning Det samme som å bygge et tre: Fra toppen ( top-down ) Fra venstre mot høyre I utgangspunktet er dette en ikkedeterminsitisk prosess: Hvilken grammatikkregel skal vi velge? Recursive descent-algoritmen gjør dette deterministisk Prøver alle alternativ ved et dybde-først søk Enkelt å implementere gjenkjenning, f.eks. i Python, ved rekursiv programmering Litt mer fiklete å programmere en parser som lager trær. 25. februar

7 I dag Recursive-descent parser, kort repetisjon Shift-reduce parser (bottom-up) Algoritme for anerkjenning Eksempelimplementasjon Svakheter ved RD- og SR-parsing CKY Algoritme Implementasjon 25. februar

8 Datastruktur Høyreavledning S NP VP NP V NP PP NP V NP P NP NP V NP P Det N NP V NP P Det park NP V NP P the park NP V NP in the park NP V Det N in the park NP V Det man in the park NP V a man in the park NP saw a man in the park Det N saw a man in the park Det man saw a man in the park the dog saw a man in the park Datastruktur reduce shift S # NP VP # N V NP PP # N V NP P NP # NP V NP P Det N # NP V NP P Det park # NP V NP P Det park NP V NP P the park NP V NP P the park NP V NP in the park NP V NP in the park NP V Det N in the park NP V Det man in the park NP V Det man in the park NP V a man in the park NP V a man in the park NP saw a man in the park NP saw a man in the park Det N saw a man in the park Det dog saw a man in the park Det dog saw a man in the park the dog saw a man in the park # the dog saw a man in the park 25. februar

9 Bottom-up: Shift reduce parser Struktur: Words: en liste av ord (terminaler) Stack: en stack av symboler (terminaler og ikketerminaler) Vanlig notasjon: Stack Words (toppen av stacken til høyre i Stack) Start: Words:= ordene i setningen som skal analyseres Stack:= tom Løkke: Hvis Words=[] og Stack=[S]: stopp med suksess! Hvis mulig, gjør en av følgende: (Shift:) Hvis Words=/=[], La Stack:=Stack+ first(words) og Words:=rest(Words) (Reduce:) Hvis det fins α, β, B, en regel B β og Stack= α + β: la Stack= α + B 25. februar

10 Bottom-up: Shift reduce parser ε Kim saw the girl with the telescope NP V Det girl with the telescope NP V Det girl with the telescope (SHIFT) NP V Det N with the telescope (REDUCE) NP V NP with the telescope (REDUCE) Merk: Det er bare toppen av stacken (det lengst til høyre) som kan reduseres i hvert trinn 25. februar

11 def recognize(grammar, stack, rwords, trace): if rwords==[] and len(stack)==1 and stack[0]==grammar.start(): return True else: for p in grammar.productions(): rhs = list(p.rhs()) n = len(rhs) if stack[-n:] == rhs: newstack = stack[0:-n] newstack.append(p.lhs()) if recognize(grammar, newstack, rwords,trace): return True if not len(rwords) == 0: newstack = stack[:] newstack.append(rwords[0]) if recognize(grammar, newstack, rwords[1:], trace): return True return False 25. februar

12 Fra anerkjenner til parser La stacken bestå av deltrær Hodet i deltreet er symbolet for algoritmen Stack: 4 elements Remaining input 12

13 def parse(grammar, stack, rwords): trees = [] if rwords == [] and len(stack)==1 and stack[0].node ==grammar.start(): return [stack[0]] else: for p in grammar.productions(): rhs = list(p.rhs()) n = len(rhs) top = [top_of[node] for node in stack[-n:]] if top == rhs: newst = stack[0:-n] newst.append(tree(p.lhs(), stack[-n:])) newtrees = parse(grammar,newst,rwords) trees = trees + newtrees if not len(rwords) == 0: newstack = stack[:] newstack.append(rwords[0]) newtrees = parse(grammar,newstack, rwords[1:]) trees = trees + newtrees return trees 25. februar

14 def top_of(element): if type(element) is str: t = element else: t = element.node return t 25. februar

15 SR-algoritme ikke-deterministisk To plasser for valg/ikke-determinisme: Skal vi flytte eller redusere? Hva skal vi velge når vi har flere valg for reduksjon? Eks: NP DET N NP N En implementasjon vil følge en fast strategi her. Hvis hver regel i grammatikken har en høyreside som består av nøyaktig en terminal (leksikalsk regel), eller som består av bare ikketerminaler, så kan algoritmen gjøres mer effektiv: Hver gang vi shifter et ord over på stacken, reduserer vi (Men fremdeles eksponetiell!) 25. februar

16 I dag Recursive-descent parser, kort repetisjon Shift-reduce parser (bottom-up) Algoritme for anerkjenning Eksempelimplementasjon Svakheter ved RD- og SR-parsing CKY Algoritme Implementasjon 25. februar

17 Problemer spesielt for Shift-Reduce Unære produksjonsregler: Shift-Reduce kan tillate disse, men en må sjekke at det ikke er cykler av unære regler i grammatikken: A B B A Tomme produksjonsregler: NP DET N PPS PPS PP PPS PPS # Når skulle vi foreslå dem? Hvor mange? Iterasjon? 17

18 Problemer for RD-parsing 1. Venstrerekursjon: Hvordan takler parseren N AP N N N PP? 2. Dobbeltarbeid: Som en del av en overordnet gal analyse kan den finne riktige deler, men disse blir glemt 3. Prøving og feiling som er litt blind 25. februar

19 Problem for både RD og SR Ineffektivitet RD: Eksempel: S NP VP Noen valg under NP Noen valg under VP Vi foretar valgene for VP på nytt for hvert alternativ under NP Tilsvarende for SR For hvert valg vi foretar må vi se på alle muligheter for resten av strengen på nytt 25. februar

20 I dag Recursive-descent parser, kort repetisjon Shift-reduce parser (bottom-up) Algoritme for anerkjenning Eksempelimplementasjon Svakheter ved RD- og SR-parsing CKY Algoritme Implementasjon 25. februar

21 Dynamisk programmering I en beregning kan det inngå delberegninger som må foretas flere ganger Med DP tar vi vare på resultatet av disse beregningene underveis slik at Vi slipper å gjøre delberegningene flere ganger Øker effektiviteten, F.eks. i noen tilfeller fra eksponentiell til polynomisk tid Kan lagre flertydige strukturer med felles deler Vi skal se på CKY-parser, nå Chartparser, senere 21

22 Chomsky-normalform (CNF) CKY algoritmen forutsetter at grammatikken er på Chomsky-normalform En grammatikk er på Chomsky-normalform hvis alle reglene er på en av følgende former: A B C (ikketerminaler) A t (t en terminal) Vi skal senere se at: Enhver CFG G hvor ε L(G), er svakt ekvivalent til en G på CNF. Altså L(G) = L(G ) 25. februar

23 CKY-parsing Hovedide: 1. For hvert segment [i, j] av ord i input, bestem hvilke ikke-terminaler som disse ordene kan avledes fra 2. Bottom-up 3. Kortere segmenter før lengre segmenter 23

24 CKY-parsing, forts. Hvilke kategorier har ord j, dvs segment [j-1,j]? Betrakt alle regler: A w j for en eller annen A Lagr disse A-ene i tabell[j-1, j] Se så på segmenter av to ord, [i, i + 2]: For å legge en ikke-terminal, A, i tabell[i, i+2] må det Finnes en regel A B C for en eller annen B og C B må utspenne [i, i+1] C må utspenne [i+1, i+2] 24

25 CKY-parsing ff. Deretter se på tre-ordsfragmenter [i, i+3]: For å legge en ikke-terminal, A, i tabell[i, i+3] må det Finnes en regel A B C for en eller annen B og C B må utspenne [i, i+1] og C må utspenne [i+1, i+3], eller B må utspenne [i, i+2] og C må utspenne [i+2, i+3] I det generelle tilfellet [i, j]: Det må finnes en regel A B C for en eller annen B og C B må utspenne [i, k] og C må utspenne [k, j], for en eller annen k, hvor i<k<j 25

26 Example 2/25/2015 Speech and Language Processing - Jurafsky and Martin 26

27 Example 2/25/2015 Speech and Language Processing - Jurafsky and Martin 27

28 Example Hvordan fylle søyle 5 2/25/2015 Speech and Language Processing - Jurafsky and Martin 28

29 Example 2/25/2015 Speech and Language Processing - Jurafsky and Martin 29

30 Example 2/25/2015 Speech and Language Processing - Jurafsky and Martin 30

31 Example 2/25/2015 Speech and Language Processing - Jurafsky and Martin 31

32 Example 2/25/2015 Speech and Language Processing - Jurafsky and Martin 32

33 CKY Algorithm 2/25/2015 Speech and Language Processing - Jurafsky and Martin 33

34 I dag Recursive-descent parser, kort repetisjon Shift-reduce parser (bottom-up) Algoritme for anerkjenning Eksempelimplementasjon Svakheter ved RD- og SR-parsing CKY Algoritme Implementasjon 25. februar

35 CKY-implementasjon (følger pseudok.) def cky(words, cfg): tabl = [[set([]) for j in range(len(words)+1) ] for i in range(len(words))] for j in range(len(words)): tabl[j][j+1] = set([p.lhs() for p in cfg.productions() if p.rhs() == (words[j],)]) for i in range(j-1,-1,-1): for k in range(i+1, j+1, 1): tabl[i][j+1] = tabl[i][j+1].union( [p.lhs() for p in grammar.productions() if (p.rhs()[0] in tabl[i][k] and p.rhs()[1] in tabl[k][j+1])]) return tabl 35

36 CKY-implementasjon (mer prosedyrell) def cky(words, cfg): tabl = [[[] for j in range(len(words)+1) ] for i in range(len(words))] for j in range(len(words)): tabl[j][j+1] = [p.lhs() for p in cfg.productions() if p.rhs() == (words[j],)] for i in range(j-1,-1,-1): for k in range(i+1, j+1, 1): for p in grammar.productions(): if (p.rhs()[0] in tabl[i][k] and p.rhs()[1] in tabl[k][j+1]): if not p.lhs() in tabl[i][j+1]: tabl[i][j+1].append(p.lhs()) return tabl 36

37 Properties Grammar: S NP VP NP Det Nsg NP Npl VP IV VP TV NP Det en NP en Nsg fisker maler Npl fisker maler snurrer IV fisker maler snurrer TV fisker maler en fisker maler snurrer Det NP NP S Nsg Npl NP IV VP TV S S VP Nsg Npl NP IV VP TV S S S VP Npl NP IV VP 37

38 Properties Grammar: S NP VP NP Det Nsg NP Npl VP IV VP TV NP Det en NP en Nsg fisker maler Npl fisker maler snurrer IV fisker maler snurrer en fisker maler snurrer Det NP Det kan være vilkårlig mange TV kategorier fisker maler i en celle. NLTK s har en mangelfull implementasjon av wfst der en celle bare har rom for et symbol NP S Nsg Npl NP IV VP TV S S VP Nsg Npl NP IV VP TV S S S VP Npl NP IV VP 38

39 Begrensninger i CKY 1. Grammatikken må være på CNF 2. Det foreslås strukturer som holder lokalt, men ikke globalt: Løsninger baserer seg på å kombinere TD og BU En løsning til 1 er å omforme grammatikken til CNF: Neste gang Hjelp for begge problemene å innføre dotted items og chart-parsing senere i semesteret 25. februar

INF2820 Datalingvistikk V Gang 26.2 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 26.2 Jan Tore Lønning INF2820 Datalingvistikk V2018 7. Gang 26.2 Jan Tore Lønning I dag Fra sist: Høyre- og venstreavledninger Recursive-descent parser (top-down) Shift-reduce parser (bottom-up) Pythonimplementasjon: Shift-Reduce

Detaljer

INF2820 Datalingvistikk V Gang 27.2 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 27.2 Jan Tore Lønning INF2820 Datalingvistikk V2017 7. Gang 27.2 Jan Tore Lønning I dag Fra sist: Høyre- og venstreavledninger Recursive-descent parser (top-down) Shift-reduce parser (bottom-up) Pythonimplementasjon: Shift-Reduce

Detaljer

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning INF2820 Datalingvistikk V2016 7. Gang 2.3 Jan Tore Lønning I dag CKY-algoritmen Python-implementasjon Chomsky Normal Form (CNF) 2. mars 2016 2 Dynamisk programmering I en beregning kan det inngå delberegninger

Detaljer

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 2.3 Jan Tore Lønning INF2820 Datalingvistikk V2016 7. Gang 2.3 Jan Tore Lønning I dag CKY-algoritmen Python-implementasjon Chomsky Normal Form (CNF) 1. mars 2016 2 Dynamisk programmering I en beregning kan det inngå delberegninger

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning KONTEKSTFRIE GRAMMATIKKER OG PARSING 23. februar 2012 2 I dag Kontekstfrie grammatikker, avledninger og trær (delvis repetisjon) Parsing: ovenifra og ned

Detaljer

INF2820 Datalingvistikk V2012

INF2820 Datalingvistikk V2012 INF2820 Datalingvistikk V2012 Jan Tore Lønning KONTEKSTFRIE GRAMMATIKKER OG PARSING 24. februar 2012 2 1 I dag Kontekstfrie grammatikker, avledninger og trær (delvis repetisjon) Parsing: ovenifra og ned

Detaljer

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

2/24/2012. Context-Free Grammars. I dag. Avledning. Eksempel: grammar1 PARSING. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning KONTEKSTFRIE GRAMMATIKKER OG PARSING 24. februar 2012 2 Context-Free Grammars Det mest sentrale verktøyet i datalingvistikk 24. februar 2012 3 2/24/2012 Speech

Detaljer

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning INF2820 Datalingvistikk V2016 6. Gang - 24.2 Jan Tore Lønning PARSING DEL 1 2 I dag Hva er parsing? Høyre- og venstreavledninger Recursive-Descent parser (top-down) Shift-Reduce parser (bottom-up) Pythonimplementasjon:

Detaljer

INF2820 Datalingvistikk V gang, 27.2 Jan Tore Lønning

INF2820 Datalingvistikk V gang, 27.2 Jan Tore Lønning INF2820 Datalingvistikk V2014 7. gang, 27.2 Jan Tore Lønning I dag Mellomspill: Chomsky Normal Form Tabellparsing: CKY-algoritmen Innlede Chart-Parsing 20. februar 2014 2 Chomsky-normalform (CNF) En grammatikk

Detaljer

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning INF2820 Datalingvistikk V2015 6. Gang - 23.2 Jan Tore Lønning PARSING DEL 1 2 I dag Høyre- og venstreavledninger Recursive-descent parser (top-down) Begynne Shift-reduce parser (bottom-up) 25. februar

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning MER OM PARSING, SÆRLIG TABELLPARSING 20. februar 2012 2 I dag Oppsummering og utfylling fra sist: Recursive-descent parser (top-down) Shift-reduce parser

Detaljer

INF2820 Datalingvistikk V Gang 6.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.3 Jan Tore Lønning INF2820 Datalingvistikk V2017 8. Gang 6.3 Jan Tore Lønning I dag CKY-algoritmen fortsatt fra sist Python-implementasjon av CKY Chomsky Normal Form (CNF) Chart-parsing BU-algoritme for chart-parsing 3.

Detaljer

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

2/20/2012. I dag. Parsing. Recursive descent parser SÆRLIG TABELLPARSING. Venstre- og høyreavledning. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning MER OM PARING, ÆRLIG TABELLPARING 20. februar 2012 2 hift-reduce parser (bottom-up) vakheter ved disse 20. februar 2012 3 Parsing Gitt en grammatikk G og

Detaljer

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

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen KONTEKSTFRIE GRAMMATIKKER OG PARSING 22. februar 2011 2 I dag Avledninger og normalformer Parsing: ovenifra og ned (top-down) Parsing: nedenifra

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning TABELLPARSING OG CHART- PARSING 24. februar 2012 2 I dag Mellomspill: Chomsky Normal Form Tabellparsing: CKY-algoritmen Innlede Chart-Parsing 24. februar

Detaljer

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

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 KONTEKSTFRIE GRAMMATIKKER OG PARSING 22. februar 2011 2 Høyre- og venstreavledninger Til hvert tre svarer det mange avledninger. For kontekstfrie

Detaljer

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning INF2820 Datalingvistikk V2015 14. Gang 4.5 Jan Tore Lønning CHART PARSING 2 I dag Svakheter ved tidligere parsere RD og SR: ineffektivitet CKY: CNF Chart parsing,,dotted items og fundamentalregelen Algoritmer:

Detaljer

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning INF2820 Datalingvistikk V2018 6. Gang - 19.2 Jan Tore Lønning I dag Kontekstfrie grammatikker og naturlige språk Grammatikker og trær i NLTK Kontekstfrie grammatikker, avledninger og trær Hva er parsing?

Detaljer

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning INF2820 Datalingvistikk V2014 8. gang, 6.3.2014 Jan Tore Lønning I dag Chart parsing Implementasjon CKY og Chart: Parsing vs anerkjenning 2 Chart alternativ datastruktur (S, [0, 1]) (VP, [0,1]) (Det, [1,2])

Detaljer

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning INF2820 Datalingvistikk V2016 8. Gang 9.3 Jan Tore Lønning CHART-PARSING 2 I dag Bakgrunn Svakheter med andre parsere CKY og Chart Chart-parsing: hovedideer BU chart-parsingalgoritmen Algoritmen uttrykt

Detaljer

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning INF2820 Datalingvistikk V2016 8. Gang 9.3 Jan Tore Lønning CHART-PARSING 2 I dag Bakgrunn Svakheter med andre parsere CKY og Chart Chart-parsing: hovedideer BU chart-parsing algoritmen Algoritmen uttrykt

Detaljer

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

2/24/2012. Dynamic Programming. I dag. Example. Example PARSING. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning TABELLPARSING OG CHART- PARSING 24. februar 2012 2 I dag Mellomspill: Chomsky Normal Form Tabellparsing: CKY-algoritmen Innlede Chart-Parsing Dynamic Programming

Detaljer

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning INF2820 Datalingvistikk V2017 9. Gang 13.3 Jan Tore Lønning I dag chart-parsing Fortsatt fra sist: Chart-parsing: hovedideer BU chart-parsing: algoritmen NLTKs ChartParser Enkel Python-implementasjon av

Detaljer

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

INF2820 Datalingvistikk V Gang 19.3 del 1 Jan Tore Lønning INF2820 Datalingvistikk V2018 10. Gang 19.3 del 1 Jan Tore Lønning I dag: to deler A. Active chart-parsing Fortsatt fra sist B. Tekstklassifisering 2 CHART-PARSING 3 I dag chart-parsing Chart-parsing:

Detaljer

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

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen TABELLPARSING 1. mars 2011 2 I dag Oppsummering fra sist: Recursive-descent og Shift-reduce parser Svakheter med disse Tabellparsing: Dynamisk

Detaljer

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning INF2820 Datalingvistikk V2015 8. Gang 9.3 Jan Tore Lønning I dag Avslutte parsing i denne omgang Chomsky Normal Form (CNF) Algoritme for omforming CKY Algoritme Implementasjon Begynne trekkgramatikker

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning CHART-PARSING FORMELL SPRÅKTEORI 5. mars 2012 2 Chart alternativ datastruktur NP Det Nom Nom Nom PP NP PP P NP Det Nom, N P NP, PN 0 book 1 the 2 flight 3

Detaljer

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

3/1/2011. I dag. Recursive descent parser. Problem for RD-parser: Top Down Space. Jan Tore Lønning & Stephan Oepen INF2820 Datalingvistikk V2011 TABELLPARSING Jan Tore Lønning & Stephan Oepen 1. mars 2011 2 I dag Oppsummering fra sist: Recursive-descent og Shift-reduce parser Svakheter med disse Tabellparsing: Dynamisk

Detaljer

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

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen CHARTPARSING (SEKSJ 13.4) FORMELLE EGENSKAPER VED SPRÅK (KAP. 16) 8. mars 2011 2 I dag Oppsummering fra sist: Dynamisk programmering CKY-algoritmen

Detaljer

INF 2820 V2015: Obligatorisk innleveringsoppgave 3

INF 2820 V2015: Obligatorisk innleveringsoppgave 3 INF 2820 V2015: Obligatorisk innleveringsoppgave 3 Besvarelsene skal leveres i devilry innen fredag 17.4 kl 18.00 Filene det vises til finner du i o /projects/nlp/inf2820/cfg Del 1 RD Parsing Oppgave 1:

Detaljer

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning INF2820 Datalingvistikk V2017 6. Gang - 20.2 Jan Tore Lønning I dag Kontekstfrie grammatikker og naturlige språk (fortsatt fra sist) Kontekstfrie grammatikker og regulære språk Grammatikker og trær i NLTK

Detaljer

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

3/5/2012. Chart alternativ datastruktur. Fundamentalregelen. Chart-parsing. Bottom-up FORMELL SPRÅKTEORI. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning CHART-PARSING FORMELL SPRÅKTEORI 5. mars 2012 2 Chart alternativ datastruktur NP Det Nom Fundamentalregelen NP Det Nom Nom Nom PP Nom Nom PP NP PP P NP Det

Detaljer

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

INF5830, H2009, Obigatorisk innlevering 2. 1 Oppgave: Unære produksjoner i CKY INF5830, H2009, Obigatorisk innlevering 2 Innleveringsfrist 4.11 1 Oppgave: Unære produksjoner i CKY For bottom-up parsere, som CKY, har vi forutsatt at grammatikken er på CNF. For de ikke-leksikalske

Detaljer

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

Oppgave 2. Eksamen INF2820, 2015, oppgave 2. La gramatikk G være: 2 Eksamen INF2820, 2015, oppgave 2 Oppgave 2 La gramatikk G være: S > NP VP VP > VI VP > VTV NP VP > VS CP CP > C S NP > 'dyret' 'barnet' 'Kari' 'Ola' VI > 'sov' 'smilte' 'danset' VTV > 'kjente' 'likte'

Detaljer

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

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 CHARTPARSING (SEKSJ 13.4) FORMELLE EGENSKAPER VED SPRÅK (KAP. 16) 8. mars 2011 2 I dag Oppsummering fra sist: Dynamisk programmering CKY-algoritmen

Detaljer

INF 2820 V2016: Obligatorisk innleveringsoppgave 3

INF 2820 V2016: Obligatorisk innleveringsoppgave 3 INF 2820 V2016: Obligatorisk innleveringsoppgave 3 Besvarelsene skal leveres i devilry innen torsdag 21.4 kl 18.00 Filene det vises til finner du i o /projects/nlp/inf2820/cfg Oppgave 1: Shift-reduce-effektivisering

Detaljer

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning INF2820 Datalingvistikk V2016 5. Gang - 17.2 Jan Tore Lønning I dag Kontekstfrie grammatikker, avledninger og trær Kontekstfrie grammatikker og regulære språk Kontekstfrie grammatikker for naturlige språk

Detaljer

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning INF2820 Datalingvistikk V2015 5. Gang - 16.2 Jan Tore Lønning I dag Kontekstfrie grammatikker, avledninger og trær (delvis repetisjon) Kontekstfrie grammatikker og regulære språk Kontekstfrie grammatikker

Detaljer

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning INF2820 Datalingvistikk V2018 9. Gang 13.3 Jan Tore Lønning I dag to deler A. Trekkstrukturgramatikker Fortsatt fra sist B. Chart-parsing Fortsetter parsing fra for to uker siden 2 TREKKSTRUKTUR- GRAMMATIKKER

Detaljer

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

Oppgave 1. La G1 være grammatikken med hovedsymbol S og følgende regler: 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 indikert. Du bør lese gjennom hele settet slik at du kan stille spørsmål til faglærerne

Detaljer

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning INF2820 Datalingvistikk V2014 9. gang, 13.3.2014 Jan Tore Lønning I dag Chart parsing Implementasjon (Earley s algoritme) Parsing vs anerkjenning For CKY og chart Trekkbaserte ( feature-based )grammatikker

Detaljer

Eksamen INF2820 Datalingvistikk, H2018, Løsningsforslag

Eksamen INF2820 Datalingvistikk, H2018, Løsningsforslag Eksamen INF2820 Datalingvistikk, H2018, Løsningsforslag 1 2 Tre1: Tre 2: Tre 3: 3 Det kan være lurt å bytte ut regel NP > NP og NP med NP > NP C NP C > og Grammatikk G blander terminaler og ikketerminaler

Detaljer

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

Spørsmål 1.1 (10%) Lag en ikke-deterministisk endelig tilstandsautomat (NFA) som beskriver dette språket. 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

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Side 1 Det matematisk-naturvitenskapelige fakultet Eksamen i: INF2820 Datalingvistikk Eksamensdag: 6. juni 2014 Tid for eksamen: 1430-1830 Oppgavesettet er på 5 side(r) Vedlegg: 0

Detaljer

INF2820-V2018 Oppgavesett 10 Gruppe 18.4

INF2820-V2018 Oppgavesett 10 Gruppe 18.4 INF2820-V2018 Oppgavesett 10 Gruppe 18.4 Chart-parsing med papir og penn Denne oppgaven tjener flere formål: Få bedre grep på chart-parsing See hvordan en chart-parser behandler venstrerekursjon Praktisk

Detaljer

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

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen FORMELLE OG NATURLIGE SPRÅK KONTEKSTFRIE GRAMMATIKKER 7. februar 2011 2 Naturlige språk som formelle språk Et formelt språk består av: En

Detaljer

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

Oppgave 1 Vi har gitt følgende grammatikk for noe vi kan kalle speilengelsk : Eksempelspørsmål Spørsmål av denne typen kan forventes til eksamen, men kanskje ikke så mange. I hvert fall ville dette pluss spørsmål fra første del av pensum blitt for mye for en tretimers eksamen. Oppgave

Detaljer

Kap.4, del 2: Top Down Parsering Kap. 5, del 1: Bottom Up Parsing INF5110, 7/ Legger ut en oppgave til kap. 4 (se beskjed).

Kap.4, del 2: Top Down Parsering Kap. 5, del 1: Bottom Up Parsing INF5110, 7/ Legger ut en oppgave til kap. 4 (se beskjed). Kap.4, del 2: Top Down Parsering Kap. 5, del 1: Bottom Up Parsing INF5110, 7/2-2008 Legger ut en oppgave til kap. 4 (se beskjed). tein Krogdahl Ifi, UiO Merk: Av de foilene som ble delt ut på papir på

Detaljer

INF2820 V2017 Oppgavesett 5 arbeidsoppgaver

INF2820 V2017 Oppgavesett 5 arbeidsoppgaver INF2820 V2017 Oppgavesett 5 arbeidsoppgaver Dette er oppgaver du kan arbeide med på egen hånd. Du kan også arbeide med dem i gruppa 28.2 (hvis du har innleveringsoppgave 2 under kontroll) og spørre gruppelæreren

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning LITT PYTHON 2 Hvorfor Pyhton NLTK Natural Language Tool Kit: Omgivelser for å eksperimentere med datalingvistikk Diverse datalingvistiske algoritmer Inkluderte

Detaljer

INF2820 V2017 Oppgavesett 5 Gruppe 21.2

INF2820 V2017 Oppgavesett 5 Gruppe 21.2 INF2820 V2017 Oppgavesett 5 Gruppe 21.2 Denne uka er det først noen teoretiske oppgaver. Deretter er det en del praktiske arbeidsoppgaver som vil forberede deg til arbeidet med innleveringsoppgavesett

Detaljer

INF 2820 V2016: Innleveringsoppgave 3 hele

INF 2820 V2016: Innleveringsoppgave 3 hele INF 2820 V2016: Innleveringsoppgave 3 hele Dette er det komplette settet! Besvarelsene skal leveres i devilry innen fredag 24.3 kl 18.00 Det blir 5 sett med innleveringsoppgaver. Hvert sett gir inntil

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 20. januar 2012 2 Non-Determinism Speech and Language Processing - Jurafsky and Martin

Detaljer

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

Kap.4 del I Top Down Parsering INF5110 v2005. Arne Maus Ifi, UiO Kap.4 del I Top Down Parsering INF5110 v2005 Arne Maus Ifi, UiO Innhold Motivering Boka gir først parsering uten First/Follow-mengder og så innfører dem. Vi tar teorien først First og Follow-mengder Fjerning

Detaljer

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

INF5110 V2013 Stoff som i boka står i kap 4, men som er generelt stoff om grammatikker INF5110 V2013 Stoff som i boka står i kap 4, men som er generelt stoff om grammatikker 29. januar 2013 Stein Krogdahl, Ifi, UiO NB: Ikke undervisning fredag 1. februar! Oppgaver som gjennomgås 5. februar

Detaljer

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning INF2820 Datalingvistikk V2016 9. Gang 16.3 Jan Tore Lønning I dag Kort repetisjon: Hoedideer i chart-parsing CKY og chart: anerkjenning vs parsing Formell språkteori: Chomsky-hierarkiet Er naturlige språk

Detaljer

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning INF2820 Datalingvistikk V2012 Jan Tore Lønning BEGRENSNINGER VED REGULÆRE SPRÅK OG KONTEKSTFRIE GRAMMATIKKER 2 I dag 1. Begrensninger ved regulære språk 2. Noen egenskaper ved naturlige språk 3. Kontekstfrie

Detaljer

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

INF2820 Datalingvistikk V2014. Forelesning 4, 6.2 Jan Tore Lønning INF2820 Datalingvistikk V2014 Forelesning 4, 6.2 Jan Tore Lønning I dag Oppsummering av endelige tilstandsteknikker Regulære uttrykk: teoretiske og praktiske Begrensninger ved regulære språk Noen egenskaper

Detaljer

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

1/26/2012 LITT PYTHON. INF2820 Datalingvistikk V2012. Hvorfor Pyhton. Python syntaks. Python er objektorientert. Python datatyper. INF2820 Datalingvistikk V2012 Jan Tore Lønning LITT PYTHON 2 Hvorfor Pyhton Python syntaks NLTK Natural Language Tool Kit: Omgivelser for å eksperimentere med datalingvistikk Diverse datalingvistiske algoritmer

Detaljer

INF5110 V2012 Kapittel 4: Parsering ovenfra-ned

INF5110 V2012 Kapittel 4: Parsering ovenfra-ned INF5110 V2012 Kapittel 4: Parsering ovenfra-ned (top-down) Tirsdag 7. februar Stein Krogdahl, Ifi, UiO Oppgaver som gjennomgås i morgen, onsdag: -Spørsmålene på de to siste foilene fra onsdag 1/2 (Bl.a.

Detaljer

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning INF2820 Datalingvistikk V2016 Jan Tore Lønning I dag Automater og regulære uttrykk Litt Python Implementasjon av DFA i Python Naiv NFA-algoritme Smart NFA-algoritme Pythonimplementasjon av smart NFA 1.

Detaljer

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

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 Begrensninger ved regulære Regulære er ikke ideelle modeller for naturlige, dvs Verken regulære uttrykk eller NFA er ideelle for å beskrive naturlige fordi:

Detaljer

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning INF2820 Datalingvistikk V2014 Jan Tore Lønning ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 22. januar 2014 2 DFA deterministisk endelig maskin Q = {q0, q1, q2,, qn-1} Strengt

Detaljer

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning INF2820 Datalingvistikk V2016 Jan Tore Lønning ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 25. januar 2016 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En innretning som

Detaljer

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning INF2820 Datalingvistikk V2016 Jan Tore Lønning ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 3. februar 2016 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En innretning som

Detaljer

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

Kap. 5, del 1: Parsering nedenfra-opp (Bottom up parsing) INF5110. Stein Krogdahl Ifi, UiO Kap. 5, del 1: Parsering nedenfra-opp (Bottom up parsing) INF5110 NB: Disse foilene er litt justert og utvidet i forhold til de som er delt ut tidligere på en forelesning. Ta dem ut på nytt! Stein Krogdahl

Detaljer

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

Kap. 4 del I Top Down Parsering INF5110 v2006. Stein Krogdahl Ifi, UiO Kap. 4 del I Top Down Parsering INF5110 v2006 Stein Krogdahl Ifi, UiO 1 Innhold First og Follow-mengder Boka ser på én parseringsmetode først, uten å se på First/Follow-mengder. Vi tar teorien først To

Detaljer

Syntaksanalyse. Skanner (repetisjon) Parsering top-down bottom-up LL(1)-parsering Recursive descent Forutsetninger. IN 211 Programmeringsspråk

Syntaksanalyse. Skanner (repetisjon) Parsering top-down bottom-up LL(1)-parsering Recursive descent Forutsetninger. IN 211 Programmeringsspråk Syntaksanalyse Skanner (repetisjon) Parsering top-down bottom-up LL(1)-parsering Recursive descent Forutsetninger Ark 1 av 26 Forelesning 15.10.2001 Syntaksanalyse En parser er et program som analyserer

Detaljer

INF3110 Programmeringsspråk

INF3110 Programmeringsspråk INF3 Programmeringsspråk Dagens tema Syntaks (Komp 47, kap 3 (og noe 4)) Repetisjon Regulære språk i klassisk BNF Regulære språk i utvidet BNF Regulære språk i jerbanediagrammer Regulære språk og automater

Detaljer

INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning

INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning ENDELIGE TILSTANDSMASKINER OG REGULÆRE SPRÅK 19. januar 2017 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En

Detaljer

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning INF2820 Datalingvistikk V2015 Jan Tore Lønning ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 26. januar 2015 2 ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 26. januar 2015

Detaljer

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning INF2820 Datalingvistikk V2014 11. gang, 27.3.2014 Jan Tore Lønning I dag Repetere en del begreper: Trekkstrukturer Unifikasjon og subsumpsjon Trekkbaserte grammatikker Form: to alternative format Tolkning

Detaljer

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning INF2820 Datalingvistikk V2016 11. Gang 6.4 Jan Tore Lønning Sist Med anbefalt lesing og rekkefølge Grammatiske trekk («features») NLTK boka, seksj 9.1 Trekkstrukturer («feature structures») J&M, seksj

Detaljer

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

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 31. januar 2011 2 SAMMENHENGER FSA OG REGULÆRE UTTRYKK 31. januar

Detaljer

Oppgave 1 (samlet 40%)

Oppgave 1 (samlet 40%) 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

Detaljer

Dagens Tema: Grammatikker Kap. 3 i K. C. Louden

Dagens Tema: Grammatikker Kap. 3 i K. C. Louden INF 5110, 29. januar 2015 Stein Krogdahl Dagens Tema: Grammatikker Kap. 3 i K. C. Louden Min Foil-stil: Ofte mer tekst enn man helt kan få med seg på forelesningen, for at de skal være gode til repetisjon

Detaljer

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

Kap. 5, del 1: Parsering nedenfra-opp (Bottom-up parsering) INF / Stein Krogdahl Ifi, UiO Kap. 5, del 1: Parsering nedenfra-opp (Bottom-up parsering) INF5110 8/2-2013 tein Krogdahl Ifi, UiO 1 Bottom up parsering (nedenfra-og-opp) Tokenklasser + ikketerminaler B B Tilstander Tabell for LR-parsering

Detaljer

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

INF2820 Datalingvistikk V2017 Forelesning 2, 23.1 Jan Tore Lønning INF2820 Datalingvistikk V2017 Forelesning 2, 23.1 Jan Tore Lønning ENDELIGE TILSTANDSMASKINER OG REGULÆRE SPRÅK, DEL 2 19. januar 2017 2 Sist uke: FSA Brukes om hverandre: Finite state automaton - FSA

Detaljer

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

Oppgave 1. Spørsmål 1.1 (10%) Gitt det regulære uttrykket: a((bcd)+(cd))*cd 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

Detaljer

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning INF2820 Datalingvistikk V2015 Jan Tore Lønning ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 22. januar 2015 2 ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 23. januar 2015

Detaljer

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning INF2820 Datalingvistikk V2015 Jan Tore Lønning Idag Automater og regulære uttrykk Litt Python Implementasjon av DFA i Python Naiv NFA-algoritme Smart NFA-algoritme Pythonimplementasjon 30. januar 2015

Detaljer

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

Repetisjon. 1 binærtall. INF3110 Programmeringsspråk. Sist så vi ulike notasjoner for syntaks: Jernbanediagrammer. BNF-grammatikker. INF3 Programmeringsspråk INF3 Programmeringsspråk Dagens tema Syntaks (Komp 47, kap 3 (og noe 4)) Repetisjon Regulære språk i klassisk NF Regulære språk i utvidet NF Regulære språk i jerbanediagrammer

Detaljer

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

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 ottom up parsering (nedenfra-og-opp) Kap. 5 del 1 Intro til parsering nedenfra-og-opp samt LR(0) og LR(1) grammatikker INF5110 v2006 rne Maus, Ifi UiO t 1 t 2 t 3 t 7 t 4 t 5 t 6 LR-parsering og grammatikker

Detaljer

INF2820 Datalingvistikk V forelesning, 30.1 Jan Tore Lønning

INF2820 Datalingvistikk V forelesning, 30.1 Jan Tore Lønning INF2820 Datalingvistikk V2014 3. forelesning, 30.1 Jan Tore Lønning Idag Noen ord om Python Implementasjon av DFA J&Ms algoritme Oversatt til Python Rekursiv vs. Iterativ implementasjon Naiv NFA-algoritme

Detaljer

Syntax/semantics - I INF 3110/ /29/2005 1

Syntax/semantics - I INF 3110/ /29/2005 1 Syntax/semantics - I Program program execution Compiling/interpretation Syntax Classes of langauges Regular langauges Context-free langauges Scanning/Parsing Meta models INF 3/4-25 8/29/25 Program

Detaljer

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

Oppgave 2. INF5110 oppgave 2 på eksamen v04 med teori. FirstMengder. Arne Maus Ifi. Eks. 4.9 Beregning av First-mengde. terminal Oppgave 2 INF5110 oppgave 2 på eksamen v04 med teori rne Maus Ifi FirstMengder Def { terminal First () = { a finnes avledning * a α } Dessuten: Om er utnullbar, så er ε First() Eks. 4.9 eregning av First-mengde

Detaljer

INF2820 Datalingvistikk V Gang 23.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 23.3 Jan Tore Lønning INF2820 Datalingvistikk V2015 10. Gang 23.3 Jan Tore Lønning I dag Trekkbaserte grammatikker, delvis repetisjon Formelle egenskaper: Alternative format for slike grammatikker Tolkning av grammatikkreglene

Detaljer

INF2820 Datalingvistikk V Gang 5.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 5.3 Jan Tore Lønning INF2820 Datalingvistikk V2018 8. Gang 5.3 Jan Tore Lønning I dag: CNF og trekkstrukturgrammatikker Chomsky Normal Form (CNF) Grammatikker med trekk Trekkstrukturer og trekkstrukturgrammatikker Tolkning

Detaljer

INF2820 Datalingvistikk V Gang 30.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 30.3 Jan Tore Lønning INF2820 Datalingvistikk V2016 10. Gang 30.3 Jan Tore Lønning I dag Med anbefalt lesing og rekkefølge Grammatiske trekk («features») NLTK boka, seksj 9.1 Trekkstrukturer («feature structures») J&M, seksj

Detaljer

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

Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Dagens tema Syntaks (kapittel 2.1 + Komp. 47, kap. 1 og 2) 1/19 Forelesning 6 1.10.2003 Litt om kompilering og interpretering En kompilator oversetter et program til et annet språk, for eksempel maskinspråk.

Detaljer

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 16.3 Jan Tore Lønning INF2820 Datalingvistikk V2015 9. Gang 16.3 Jan Tore Lønning I dag Med anbefalt lesing og rekkefølge Grammatiske trekk («features») NLTK boka, seksj 9.1 Trekkstrukturer («feature structures») J&M, seksj

Detaljer

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

Litt om kompilering og interpretering. Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Syntaks og semantikk Litt om kompilering og interpretering Dagens tema Syntaks (kapittel 2. + Komp. 47, kap. og 2) En kompilator oversetter et program til et annet språk, for eksempel maskinspråk. Et program interpreteres

Detaljer

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.4 Jan Tore Lønning INF2820 Datalingvistikk V2016 11. Gang 6.4 Jan Tore Lønning Sist Med anbefalt lesing og rekkefølge Grammatiske trekk («features») NLTK boka, seksj 9.1 Trekkstrukturer («feature structures») J&M, seksj

Detaljer

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

Kap.4 del 2 Top Down Parsering INF5110 v2005. Arne Maus Ifi, UiO Kap.4 del 2 Top Down Parsering INF5110 v2005 Arne Maus Ifi, UiO LL(1) tabell for uttrykks-grammatikk Har fjernet venstrerekursjon: Har fjernet venstre-rekursjon: Alternativ def. av LL(1) grammatikker Sier

Detaljer

1/31/2011 SAMMENHENGER FSA OG REGULÆRE UTTRYKK. Regulære språk. Fra FSA til RE. Fra regulært uttrykk til NFA REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2

1/31/2011 SAMMENHENGER FSA OG REGULÆRE UTTRYKK. Regulære språk. Fra FSA til RE. Fra regulært uttrykk til NFA REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 31. januar 2011 2 Regulære språk Følgende er ekvivalente: a) L kan

Detaljer

Stoff som i boka står i kap 4, men som er. 10. Februar Ifi, UiO

Stoff som i boka står i kap 4, men som er. 10. Februar Ifi, UiO INF5110 V2010 Stoff som i boka står i kap 4, men som er generelt stoff om grammatikker 10. Februar 2010 Stein Krogdahl Ifi, UiO Oppgaver som gjennomgås 16/2: - Spørsmålene på foil 35 og 36 fra 9/10 - Finn

Detaljer

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

Kap. 4: Ovenfra-ned (top-down) parsering Kap. 4: Ovenfra-ned (top-down) parsering Dette bør leses om igjen etter kapittelet: First og Follow-mengder Boka tar det et stykke uti kap 4, vi tok det først (forrige foilbunke) LL(1)-parsering og boka

Detaljer

INF 5110, 3. februar Dette foilheftet: Kapittel 3

INF 5110, 3. februar Dette foilheftet: Kapittel 3 INF 5110, 3. februar 2009 Stein Krogdahl Min Foil-stil: Ofte mer tekst enn man helt kan få med seg på forelesningen, for at de skal være gode til repetisjon De kommende ca. 4 forelesninger: Kontekstfrie

Detaljer

INF2820 Datalingvistikk V Gang 13.4 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 13.4 Jan Tore Lønning INF2820 Datalingvistikk V2015 11. Gang 13.4 Jan Tore Lønning I dag Unifikasjonsgrammatikker Repetisjon og overblikk: Formalisme Lingvistisk anvendelse Utvidelse av lingvistisk anvendelse NLTKs implementering

Detaljer

INF / Kap. 5, Del 2 Stein Krogdahl, Ifi, UiO

INF / Kap. 5, Del 2 Stein Krogdahl, Ifi, UiO INF5110 12/2-2013 Kap. 5, Del 2 Stein Krogdahl, Ifi, UiO Dagens temaer: Noen foiler igjen fra forrige gang SLR(1), LR(1)- og LALR(1)-grammatikker NB: Oppgaver til kap 4 og 5 er lagt ut på undervisningsplanen

Detaljer