INF1820: Introduksjon til språk-og kommunikasjonsteknologi

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

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning

IN1140: Introduksjon til språkteknologi. Forelesning #4

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

INF2080 Logikk og beregninger

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

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 V2017 Oppgavesett 6 Gruppe 7.3

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

Følger Sipsers bok tett både i stoff og oppgaver.

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

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

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

Turingmaskiner en kortfattet introduksjon. Christian F Heide

INF2820 Datalingvistikk V gang, Jan Tore Lønning

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

Turingmaskiner en kortfattet introduksjon. Christian F Heide

INF 2820 V2016: Obligatorisk innleverinsoppgave 1

IN2080. Oppgave 1. Oppgave 2. Eksamen. Vår Den nondeterministiske endelige automaten A er gitt ved (Q, Σ, δ, q 0, F ) der

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

Løsningsforslag til obligatorisk oppgave 3 INF1800 Logikk og beregnbarhet, høsten 2009

TMA4140 Diskret Matematikk Høst 2016

INF2080 Logikk og beregninger

INF2820 Datalingvistikk V Gang Jan Tore Lønning

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

Skanning del I INF /01/15 1

INF2820 Datalingvistikk V Gang Jan Tore Lønning

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

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet

Viktige begrep i kapittel 1.

Matematikk for IT Eksamen. Løsningsforslag

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

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Øvingsforelesning 2. Mengdelære, funksjoner, rekurrenser, osv. TMA4140 Diskret Matematikk. 10. og 12. september 2018

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

INF3110 Programmeringsspråk

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

Skanning del I. Kapittel 2 INF 3110/ INF

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2220: Time 8 og 9 - Kompleksitet, beregnbarhet og kombinatorisk søk

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

INF2820 Datalingvistikk V2015. Jan Tore Lønning

Dagens tema: Regulære språk og uttrykk

IN1140: Introduksjon til språkteknologi. Forelesning #5

MAT1030 Forelesning 22

Typisk: Kan det være både nøkkelord og navn, så skal det ansees som nøkkelord

MAT1030 Forelesning 22

Kombinatorikk. MAT1030 Diskret Matematikk. Oppsummering av regneprinsipper

MAT1030 Diskret Matematikk

Introduksjon. MAT1030 Diskret Matematikk. Introduksjon. En graf. Forelesning 22: Grafteori. Roger Antonsen

Typisk: Kan det være både nøkkelord og navn, så skal det ansees som nøkkelord

Introduksjon. MAT1030 Diskret matematikk. Søkealgoritmer for grafer. En graf

MAT1030 Diskret matematikk

INF1820: Oppsummering

Slides til 12.1 Formelt språk og formell grammatikk

En repetisjon hrj høst 2009

INF2820 Datalingvistikk V2018 Forelesning 3, 29. jan. Jan Tore Lønning

Hva er syntaks? En overskrift i en norsk avis: Dagens tema Grundig repetisjon og utdyping:

INF2820 Datalingvistikk V2012

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

Dagens tema Grundig repetisjon og utdyping: Syntaks kontra semantikk

Generell rekursjon og induksjon. at(n) + bt(n 1) + ct(n 2) = 0

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

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

LO118D Forelesning 3 (DM)

Scanning - I Kap. 2. Hva scanneren gjør

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

INF2820 Datalingvistikk V2015. Forelesning 4, 9.2 Jan Tore Lønning

UNIVERSITETET I OSLO

Repetisjon og mer motivasjon. MAT1030 Diskret matematikk. Repetisjon og mer motivasjon

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

LØSNINGSFORSLAG UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet. Oppgave 1 Mengdelære (10 poeng)

Emnenavn: Matematikk for IT. Eksamenstid: Faglærer: Christian F Heide

UNIVERSITETET I OSLO

Emnenavn: Matematikk for IT. Eksamenstid: Faglærer: Christian F Heide

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

Hjemmeeksamen 1 i INF3110/4110

MAT1030 Diskret matematikk

MAT1030 Diskret Matematikk

UNIVERSITETET I OSLO

Forelesning 29: Kompleksitetsteori

INF2820 Datalingvistikk V2017 Forelesning 3, 30.1 Jan Tore Lønning

Anatomien til en kompilator - I

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

UNIVERSITETET I OSLO

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

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet. INF1080 Logiske metoder for informatikk

Plenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode

MAT1030 Diskret matematikk

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

INF2820 V2017 Oppgavesett 5 Gruppe 21.2

Transkript:

INF1820: Introduksjon til språk-og kommunikasjonsteknologi Fjerde forelesning Lilja Øvrelid 6 februar, 2014

OVERSIKT Såkalt endelig tilstand (finite-state) -teknologi er kjapp og effektiv nyttig for et antall språkteknologiske oppgaver Vi skal se nærmere på: 1. Regulære uttrykk 2. Endelige tilstandsmaskiner ( Finite state automata, FSA) 3. Regulære språk

QUIZ Beskriv strengene som aksepteres av følgende regulære uttrykk og gi et par eksempler /ab+a/ (ab) * \sdis[a-z]+\s ([ˆaeiou][aeiou])\1

FSA ER Ethvert regulært uttrykk kan implementeres som en endelig tilstandsmaskin (og vice-versa) Måte å beskrive et spesielt formelt språk, nemlig regulære språk Hva er en endelig tilstandsmaskin (FSA)? Abstrakt beregningsmaskin Består av en mengde tilstander (noder i en graf), og en mengde transisjoner (kanter i en graf) Tre typer tilstander: vanlig, start og slutt

FSA ER Brukes for å gjenkjenne/akseptere strenger: Antar en tape, der input-symbolene leses av celle etter celle Maskinen starter i starttilstanden For hvert symbol på tape en, forsøker tilsvarende transisjon i maskinen Dersom ingen mulig transisjon: avvis Når strengen er ferdig lest, sjekk om tilstanden er sluttilstand Ja: aksepter, nei: avvis

EN LITEN DIGRESJON

FORMELL DEFINISJON En endelig tilstandsmaskin er definert ved: Q = {q0, q 1, q 2,...,q n 1 }: en endelig mengde tilstander Σ: et endelig alfabet q0 : en starttilstand F: mengden av sluttilstander, F Q δ(qi, i): en funksjon som gitt en tilstand q i og et inputsymbol i Σ, returnerer en ny tilstand q Q

Kan også spesifiseres ved en transisjonstabell:

For saueprat-eksempelet: Q = {s1, s 2, s 3, s 4 } Σ = {a, b,!} F = s4 δ(q, i) er gitt ved transisjonstabellen

FSA som gjenkjenner strenger på formen [ab]+ Feks a, b, ab, ba, aab, bab, aba, bba, etc. FSA definert som: a b S 0 S 1 S 1 S 1 : S 1 S 1

FSA for enkle (engelske) substantivfraser d for artikler ( determiners ), a for adjektiver og n for substantiver the car the green car the fast green car... d a n S 0 S 1 ø ø S 1 ø S 1 S 2 S 2 : ø ø ø Hva med fast cars eller cars?

Ikke-deterministiske FSAer En FSA er ikke-deterministisk dersom den inneholder mer enn ett valg for minst en node disse valgene kan involvere tomme (ǫ-)transisjoner for hvertfall en tilstand og ett symbol fins det mer enn en transisjon som passer b a! S 0 S 1 ø ø S 1 ø S 1,S 2 ø S 2 ø ø S 3 S 3 : ø ø ø

Enhver ikke-deterministisk FSA kan gjøres deterministisk Gjenkjenne strenger med NFSAer eksempel på søkeproblem Strategier Backup: Hver gang må foreta et valg: marker hvor langt var kommet og hvilken tilstand Look-ahead: Se framover i input en Parallellisme: Utforske alternative ruter samtidig

Hvorfor endelige ( finite )? Antall tilstander er bestemt på forhånd (transisjonstabellen) Derfor bruker maskinen begrenset minne Hva den gjør ved hvert skritt bestemmes av transisjonstabellen Tilstanden ved ethvert tidspunkt reflekterer prosesseringsrekkefølgen Klasser av formelle språk som ikke er regulære krever ekstra minne for å holde styr på tidligere informasjon, feks såkalte center-embedding konstruksjoner (mer om dette senere)

FORMELL SPRÅKTEORI Et formelt språk er en mengde strenger Et endelig alfabetσog noen operasjoner for å kombinere strenger Regulære språk er den enkleste klassen av formelle språk Klassen av språk som kan defineres av regulære uttrykk Klassen av språk som kan gjenkjennes av FSAer

KOMPLEKSITET Komputasjonell kompleksitet: hvilken uttrykkskraft (og ressurser som kreves for å prossessere) klasser av formelle språk Lingvistisk kompleksitet: hva gjør noen konstruksjoner eller setninger vanskeligere å forstå This is the dog, that worried the cat, that killed the rat, that ate the malt, that lay in the house that Jack built. his is the malt that the rat that the cat that the dog worried killed ate.

CHOMSKY-HIERARKIET et hierarki av klasser av språk (sett på som mengder av strenger), ordnet etter kompleksitet språkene i én klasse inkludere språkene i lavere klasser sammenheng mellom klassen av språk og hvilke formelle regelsystemer man kan bruke for å generere språkene

CHOMSKY-HIERARKIET

CHOMSKY-HIERARKIET Regulære språk: endelig tilstandsmaskin (FSA) Kontekstfrie språk: kontekstfrie grammatikker (CFG) Kontekstsensitive språk: Turingmaskin med endelig tape Turing-ekvivalente språk: Turingmaskin formell modell som kan beskrive logikken bak enhver algoritme http://www.youtube.com/watch?v=cyw2ewoo6c4

HVA MED NATURLIGE SPRÅK? Chomsky-hierarkiet har også blitt brukt for å forstå naturlige språks kompleksitet og ikke minst hvilke modeller vi kan bruke til å prossessere dem Chomsky (1957): English is not a regular language Om kontekstfrie språk: I do not know whether or not English is itself literally outside the range of such analyses

FORMELL SPRÅKTEORI Hva slags uttrykk er ikke regulære? I naturlige språk: feks såkalt center-embedding 1. The dog died 2. The cat the dog saw died 3. The cat the dog the mouse bit saw died 4.... (the noun) n (transitivt-verb) n 1 intransitivt-verb Lignende vil være regulære: A*B* died

FORMELL SPRÅKTEORI Men representerer dette faktisk språkbruk? Autentisk eksempel: Anyone who feels that if so-many more students whom we haven t actually admitted are sitting in on the course than ones we have that the room had to be changed, then probably auditors will have to be excluded, is likely to agree that the curriculum needs revision.

Hvordan kan vi karakterisere klassen av regulære språk? ǫ er den tomme strengen ø er den tomme mengden Σ er et alfabet (symboler)

Klassen av regulære språk overσkan defineres formelt som: ø er et regulært språk a Σ ǫ,{a} er et regulært språk Dersom L1 og L 2 er regulære språk, da er følgende språk også regulære: 1. L 1 L 2 (konkatenering) 2. L 1 L 2 (union eller disjunksjon) 3. L 1 (Kleenes closure) Alle regulære uttrykk faller inn under dette feks tellerene er bare repetisjon + Kleenes closure [] er disjunksjon

De regulære språkene er lukket under: differanse: L1 L 2 : mengden strenger som er i L 1 men ikke i L 2 snitt: L1 L 2 : mengden strenger som er i både L 1 og L 2 komplement: Dersom L1 er et regulært språk så erσ L 1, mengden av alle mulige strenger som ikke er i L 1, også det reversering: Dersom L1 er et regulært språk så er L R 1, mengden av reverserte strenger fra L 1 også det

Egenskapene kan brukes til å bevise medlemskap i en formell språklig klasse Feks: Engelsk er ikke regulært L ce = (the noun) n (transitivt-verb) n 1 intransitivt-verb Lce er en delmengde av engelsk, ikke et regulært språk Lce er snittet av det naturlige språket engelsk med den regulære mengden L reg =A*B* intransitivt verb da regulære språk er lukket under snitt og Lreg er et regulært språk så ville snittet mellom Lce og L reg være regulært dersom engelsk var regulært engelsk er altså ikke regulært Pumping Lemma (kap 16 J&M)