Innehåll. Syntax och syntaxformalismer. Definitioner från SAG. Adress till Swetwol. Argument för konstituentstruktur. Konstituentstruktur

Relevanta dokument
Ordklasser. Särdrag, lexikon och syntax. Öppna klasser. Slutna klasser. Vilka ord i lexikon? Vad skall man med en grammatik till?

Föreläsningens innehåll. Syntaxformalismer. Syntax - syntaxis (grek.) Språket. Kontextfria grammatiker. Syntax och grammatik

Särdrag, lexikon och syntax. Ordklasser. Ordklasskriterier II. Ordklasskriterier. Öppna klasser. Slutna klasser

Ordklasser. Särdrag, lexikon och syntax. Ordklasskriterier II. Ordklasskriterier. Öppna klasser. Slutna klasser

729G09 Språkvetenskaplig databehandling

Föreläsning 5: Modellering av frasstruktur. 729G09 Språkvetenskaplig databehandling Lars Ahrenberg

Frasstrukturgrammatik

Grammatisk teori II Attributvärdesgrammatik

Innehåll. Syntax. Kan allt delas upp i små delar? Varför är syntax fascinerande? Vad är syntax? Olika språksyn

Innehåll. Syntax. Kan allt delas upp i små delar? Varför är syntax fascinerande? Olika språksyn. Vad är syntax?

Grammatik för språkteknologer

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

Ordklasstaggning med funktionsordslexikon. Språklig ytanalys med regler. Jabberwocky (Källgren, 1992) Mer Jabberwocky (Lewis Carrol)

Datorlingvistisk grammatik

Modellering med kontextfri grammatik Kontextfri grammatik - definition En enkel kontextfri grammatik Klasser av formella språk

Grammatisk teori III Praktisk analys

Tekniker för storskalig parsning

Grundläggande syntaktiska funktioner och roller

Parsning = analys. Parsningsalgoritmer. Användningsområden. L1: Introduktion

Datorlingvistisk grammatik

Sidan 1. En situation. En modell för satsproduktion. Fri ordföljd. Finska kasus. Bunden ordföljd

Tekniker för storskalig parsning

FL 6: Definite Clause Grammars (kap. 7)

Fraser, huvuden och bestämningar

Syntax S NP VP. AdjP. sleep. ideas. DH2418 Språkteknologi Johan Boye. Syntax

Tekniker för storskalig parsning: Grundbegrepp

Lite mer psykologi. L2: Automater, Sökstrategier. Top-down. Kimballs sju principer

Språkgranskningsverktyg. Grammatikkontroll med Scarrie

Tenta i Lingvistik 729G08 ht10 ( )

Två-nivåmodellen, TWOL. 2D1418 Språkteknologi, Nada KTH Höstterminen 2004 Lisa Lagerkvist, Me-01

Djupstruktur och ytstruktur

Satser och satsdelar. 1 Satser och satsdelar inledning. 2 Primära satsdelar predikatet. 2.1 Översikt. Grammatik för språkteknologer

Sidan 1. Repetition: satsledsanalys (delvis från övningsboken) Satser och struktur Föreläsning 8, Lingvistik grundkurs. Vad är objekt och predikativ?

Fraser och satsled. Språkets uppbyggnad. Definitioner. Språkets uppbyggnad. De fem frastyperna. Allmänt om fraser

Korpuslingvistik vt 2007

Parsningens olika nivåer

Ord, lexem, ordformer (repetition) Ord och morfem (repetition) Fraser/konstituenter (repetition) Grammatisk analys i språkteknologin

Språkets struktur och funktion, 7,5 hp

Datorlingvistisk grammatik

KODNING AV MAXIMALA GRAMMATISKA ENHETER Manual

Lingvistik IV Konstituenter och frasstruktur

Parsningens olika nivåer

Grammatik för språkteknologer

Grammatik för språkteknologer

Konstituenter och frasstruktur. 729G49 16 April

Matematik för språkteknologer

GÖTEBORGS UNIVERSITET Institutionen för svenska språket. Introduktion till frasstrukturgrammatik

Partiell parsning Parsning som sökning

Lingvistik V Satsdelar, huvud- och bisatser

Automatateori (2) Idag: Sammanhangsfria språk. Dessa kan uttryckas med Grammatik PDA

2. Utgångspunkter och angreppssätt för automatisk språkgranskning

Världens språk, 7,5hp vt 2012

Maskinöversättning och språkgranskning. F6: Grammatikkontroll

Morfologiska kriterier. Svenska adjektiv har två slags böjningar: kongruensböjning och komparationsböjning.

Hemtentamen HT13 Inlämning senast Lärare: Tora Hedin

Ord och morfologi. Morfologi

Neurolingvistik - Grammatik

Satsdelar. Carina

Syntax 1: Fraser och satsled Syntax 2: Satser och meningar

Satsled och satstruktur

Grammatik för språkteknologer

Lingvistiskt uppmärkt text

Datum: Date: Provkodr: KTR1 Exam code:

TDDC89 LINGVISTIK måndag 20 oktober 2008

Förord KERSTIN BALLARDINI

Trädrepresentation. Parentesrepresentation

Satslära introduktion

Grundläggande textanalys. Joakim Nivre

Inlämningsuppgift: Pronomenidentifierare

Ryska pronomen. Pronomen är en sluten ordklass som består av många undergrupper. Pronomina kan fungera självständigt eller förenat

Cristina Eriksson oktober 2001

Kontextfria grammatiker

Obesvarade frågor från F1

MÖSG ht 2005 Maskinöversättningssystemet MATS

Kungliga Tekniska Högskolan Patrik Dallmann

Introduktion till formella metoder Programmeringsmetodik 1. Inledning

TDDA94 LINGVISTIK, 3 poäng tisdag 19 december 2000

Facit för diagnostiska provet i grammatik

*han är nyss bekymrad b)pp kan i motsats till de flesta andra Adj. aldrig ta en gradkvantor (som t.ex. mycket):

Lösningsförslag till tentamen i Språkteknologi 2D1418,

DD1361 Programmeringsparadigm. Formella Språk & Syntaxanalys. Per Austrin

Datum: Date: Provkodr: KTR1 Exam code:

Lexikon: ordbildning och lexikalisering

Kompositionell semantik och λ-kalkyl

Språkpsykologi/psykolingvistik

Lingvistiska grundbegrepp

Lingvistik V Satsdelar, huvud- och bisatser. 729G49 23 april

Struktur och funktion i satser en introduktion till satsträd Niklas Edenmyr (Inst. f. lingvistik & filologi)

Datum: Date: Provkodr: KTR1 Exam code:


Statistisk grammatikgranskning

Varför är morfologi viktigt? Morfologisk analys och generering. Vad är ett ord (idag vs. i dag) Kan man inte lägga alla ord i en lexikonfil?

Språkteknologi och Open Source

Semantik och pragmatik (Serie 3)

De som (som) vi använder

Implementering av partikelverb för projektet Datorstödd inlärning av grammatik och språkteori

ORDKLASSTAGGNING. Marco Kuhlmann Institutionen för datavetenskap

Grammatik skillnader mellan svenska och engelska

Formell logik Kapitel 1 och 2. Robin Stenwall Lunds universitet

SYNTAKTISKA FUNKTIONER (forts.) Attribut o Attribut ger ytterligare information om det som nominalfrasen refererar till.

Transkript:

Syntax och syntaxformalismer Språkteknologi 2D1418 2002 Ola Knutsson Innehåll Dependensgrammatik Kontextfri grammatik Särdrag och särdragsstrukturer Syntaxformalismer DCG och Unifieringsbaserad grammatik i Prolog Definitioner från SAG Fras (enligt SAG): en fras är en grammatisk konstruktion som inte är en sats och som definieras efter sin inre struktur och sin distribution. Sats (enligt SAG): en sats är en konstruktion som består av subjekt (som kan saknas i vissa satstyper) och finit verbfras (predikatsled) samt optionellt vissa adverbial som hör till hela satsen. Flertalet satstyper har dessutom inledare (en satsbas eller en subjunktion). Adress till Swetwol http://www.lingsoft.fi/cgi-bin/swetwol Andra lingsoftdemosar: http://www.lingsoft.fi/demos.html Konstituentstruktur Konstituenter: grupper av ord kring ett huvudord den röda hundens tofflor besegrades vid Waterloo deras gröngulblåa egendomliga egenskaper en hund Huvudord: det centrala elementet i en fras tofflor, besegrades, egenskaper NN (Nomen), VB (Verb), PP (prepositioner), JJ (Adjektiv) Nominalfraser (NP), Verbfraser (VP) Prepositionsfraser (PP), Adjektivfraser (AP) Argument för konstituentstruktur uppträder i liknande kontexter: en hund sågs i parken i parken sågs en hund sågs en hund i parken enskilda ord kan kan inte ersätta konstituenten *hund sågs i parken *i parken sågs en konstituenter kan flyttas men inte brytas upp i parken sågs en hund sågs en hund iparken *i hund en parken sågs *hund sågs i parken en 1

Argument mot konstituentanalys Flertydighet mellan konstituenterna är stor och när de sätts ihop ökar flertydigheten igen Ganska mycket talar för att ordbaserade system är både enklare att konstruera och effektivare att parsa. Varför dependensgrammatik? Fokus ofta på engelskan vid utveckling av grammatiska teorier. Engelskan har en ganska fast ordföljd till skillnad mot många andra språk i världen. Dependensgrammatik, hävdar en del, är bättre lämpat för språk mer friare ordföljd. Dependensgrammatik Relationer mellan ord Om A och B hör ihop: A styr B (B är beroende av A) B styr A dependens 1. Det styrande ordet har ett semantiskt oberoende 2. Det styrande ordet är bestämmande för helhetens kategori och syntaktiska uppträdande 3. Det styrande ordet upptar en position i helheten som måste ges uttryck, medan ett styrt ord optionellt. Statsrådet ensamt Statsrådet är ensamt. VB NN PP PS NN min kusin studerade vid universitet NN VB PP NN Grammatiska funktioner Subjekt, predikat, adverbial S SUBJEKT PREDIKAT PS min farbror satte på kaffet PS NN V ADV P NN Min kusin studerade vid universitetet 2

Grammatiska relationer i (tidig) transformationsgrammatik Subjektet = NP Problem? Sambandet grammatisk relation och fraskategori ej entydigt Subjekt kan vara en sats Subjektet kan stå efter verbet, eller markeras morfologiskt (latin). 1. Min kusin studerade vid universitet 2. Min kusin studerade för mig I 1 kan PP bytas ut mot där ej i 2 utan betydelseförändring, men vi ser ingen skillnad i traditionell konstituentanalys mellan: vid universitet och för mig. Använd formellt definierade grammatiska relationer -undvik semantiska, speciellt om en parallell semantisk beskrivning finnes Huvud, bestämmande för frasens typ den lilla mannen Subjekt, i det finita verbets närhet, jag, dojjan passar inte Direkt objekt, närmast efter verbet Jag har en ny cykel Grammatiska relationer forts. Indirekt objekt, Jag gav mannen en dator Predikativt komplement, Jag blir så glad Bisatskomplement, Hon talade inte om att hon redan kunde spela fiol. Icke-finit verbalt komplement, Hon lovade att spela fiol Partikel, Hon bar ner fiolen Kontextfri grammatik Prepositionsobjekt, Mannen står på taket Adverbial, Mannen lagade skorstenen på taket Relativsats, Mannen som står där borta Kallas också frasstrukturgrammatik Grammatiken består av regler och lexikon I lexikonet finns terminalerna (ord). Symboler som uttrycker kluster eller generaliseringar av terminalerna kallas icketerminaler (regler). Används både för generering och analys 3

Kontextfria grammatiker Frastrukturgrammatiker P: Regler på formen A B N: icke-terminaler: S, NP, VP, AP, N, V Σ: terminaler: kalle, cyklar, parken, i S: startsymbol: S G = <N, Σ, P, S > Derivering en räcka av regelapplikationer på en sträng Träd: en strukturell representation baserat på deriveringen Parsningsproblemet: att mappa ett träd till en sträng (snabbast möjligt) nästa föreläsning behandlar detta En minigrammatik S NP VP VP V1 (Adverbial) VP V2 NP (Adverbial) VP V3 NP NP (Adverbial) Adverbial Adverb Adverbial PP PP Prep + NP NP NN NP PM PM Pelle PM Kalle PM Göteborg NN hästen NN pojken NN boken V1 sover V2 gillar V3 ger Adverb fort Prep i Vi kan generera en sats S NP VP S NN VP S Hästen V2 NP S Hästen gillar NP S Hästen gillar pojken Att hantera kongruens Kongruens: konstituenternas morfologiska struktur anpassar sig efter huvudordet En liten bil, inte: en litet bil NP dtutrsinind jjutrsinind nnutrsinind NP dtneusinind jjneusinind nnneusinind dtutrsinind en jjutrsinind liten jjneusinind litet nnutrsinind bil Vi får en kombinatorisk explosion Särdragsstrukturer särdrag_1 värde_1 särdrag_n värde_n num SIN gender UTR spec DEF 4

Unifiering [num SIN] [num SIN] JA! [num SIN] [num PLU] NEJ! [num SIN] [num []]=[num SIN] [num SIN] [gender UTR]= Särdrag som grammatiska filter Verbfrasregler: VP V[subcat intranstiv] VP V[subcat transitiv] NP VP V[subcat ditransitiv] NP NP Num SIN Gender UTR S NP VP VP VB[subcat intranstiv] VP VB[subcat transitiv] NP VP VB[subcat ditransitiv] NP NP NP Pelle, hästen, pojken boken Lexikon: sover VB[subcat intransitiv] beundrar VB[subcat transitiv] ger VB[subcat ditransitiv] Genererar: Pelle sover. Genererar inte: Pelle sover hästen. Unifiering i regler S NP VP <NP NUMBER> = <VP NUMBER> Mannen är glad <NUMBER SIN> <NUMBER SIN> NP DET NOMINAL <Det AGREEMENT> = <Nominal AGREEMENT> <NP AGREEMENT> = <Nominal AGREEMENT> En grammatik definieras genom: 1. Ett lexikon 2. En uppsättning kategorier 3. En uppsättning regler Ord- terminala symboler Kategorier- icke-terminala symboler Kontextfria regler: C s Kontextkänsliga regler: C s/s1_s2 Grammatikens språk Om en mening kan härledas med grammatikens regler sägs grammatiken generera meningen. Samma språk svagt ekvivalenta Isomorfa syntaktiska strukturer starkt ekvivalenta 5

Chomsky-hierarkin Typ 0: Obegränsade grammatikor Typ 1: Kontextkänsliga grammatikor Typ 2: Kontextfria grammatikor Typ 3: Finite-state grammatikor Övergenerering och undergenerering Genererar: Pelle sover hästen. Genererar inte: Sover Pelle? Parsning Parsning: Att utföra bästa möjliga (av grammatiken tillåten) analys av ett språkligt påstående. Problem: Språkets tvetydighet och även grammatikens flertydighet Generering Genereringsproblemet är parsningsproblemets motsats: Att från en logisk representation skapa ett påstående i naturligt språk. Påståendet måste givetvis ha samma innebörd som den logiska formen. tvåvägsgrammatikor = grammatikor som kan användas både för analys och generering. Vad menas med syntaxformalism? Ett språk för att formalisera grammatiska regler. Ganska ofta med fokus på: en given syntaktisk teori (ofta knepiga lingvistiska relationer), några kärnmeningar, sällan något omfattande textmaterial. Representera lingvistisk kunskap i ett system För att tilldela indata en strukturell analys Syntaktiska teorier/formalismer Transformationsgrammatik (Chomsky et al) HPSG (Pollard & Sag) PATR-II Tree Adjoining Grammar Dependency Grammar och Constraint Grammar (se Parsning II) Finite-state grammars 6

Vilka formalism skall man välja? Närhet till grammatisk teori? Krav på effektivhet? Hur är det att arbeta i formalismen? Vilka lexikal resurser krävs? Vilken typ av analys är nödvändig? Är det bättre att implementera något eget? Teorier in i datorn Första försöket att bygga ett system baserat på transformationsgrammatik, Petrick 1965. Problem med implementationen Augmented Transition Networks (Woods 1970) Lexikon och grammatikregler separerade Samma kraft som en transformationsgrammatik skulle kunna uppnås. Constraint-based formalismer Om alla grammatiska kategorier skall formuleras som frasstrukturregler får vi en mycket stor mängd regler Grammatiska kategorier skall ses som objekt Constraint restriktioner GPSG Syftet var att skapa en unifierings-baserad formalism Frasstrukturregler utan transformationer skall vara tillräckligt för att beskriva språk Huvudmotivationen var att ta fram en enkel formalism med: En syntaktisk nivå: ytstruktur Ett slags syntaktiskt objekt: frasstrukturregeln GPSG Generalized Phrase Structure Grammar Gerald Gazdar, sent 70-tal, Gazdar, Klein, Pullum, Sag En distinktion mellan universala principer och språkspecifika regler ID-regler, immediate dominance rules Metaregler, mappningar från ID-regler till IDregler LP, linear precedence, statements, definierar generell principer bland ordningen av systernoder Immediate dominance and linear precedence Immediate Dominance = frasstrukturregler men utan någon fastlagd inbördes ordning mellan noderna på högersidan (döttrarna) i en regel. I princip är dessa språkoberoende. Linear Precedence = adderar den språkspecifika ordningen mellan dotternoderna. 7

HPSG (Pollard & Sag 1984) Head-driven Phrase Structure Grammar Kombinerar särdrag och principer (jfr GB) Informationen finns i lexikonet Några få principer motorn Heads (V, N, A, P) Särdragsstrukturer Head-Feature-Principle kräver att modernoden unifieras dotternoder http://hpsg.stanford.edu/ Fall som frasstruktur inte klarar Adverbets placering i satsen Adverb kan dyka upp lite var som helst i satsen Frasstruktur har konkatenering som en viktig operator Gazdar, Klein, Pullum & Sag (1985). ID/LP-regler Immediate dominance ID VP --> V, NP, PP, AdvP Säger inte i vilken ordning V, NP, PP, AdvP kommer Linear precedence LP-regler: V < NP V < PP NP < S1 Som säger: V föregår NP, V föregår PP, NP föregår S1, när de hänger från samma nod. Om ingen position är given för AdvP så kan den förekomma var som helst Transformationsgrammatik i NLP Chomsky introducerade förändringar av trädstrukturer, s.k. Transformationer. Lingvister använde transformationer för alla möjliga grammatiska konstruktioner: Kongruens och kasus, nu används särdrag. Relationer mellan aktiva och passiva satser, nu används lexikal regler. Varierande ordföljd, nu används alternativa frasstrukturregler för detta. För att göra en transformation behövs en trädstruktur, och måste vi använda transformationer för att skapa träd blir detta omöjligt. Transformationsgrammatiker används sällan inom NLP Supertaggning I (se t.ex. Joshi & Srinivas, 1994) Först fanns orden, Sedan kommer taggarna Och därefter kom supertaggarna! Det finns en supertagg för varje syntaktisk omgivning som ett ord kan befinna sig i. Vi får fler taggar än vid ordklasstaggning. Supertaggarna hämtas från LTAG Ordet masterminded har t.ex. 6 supertaggar: transtivt verb, passivt verb, relativiserad form m.fl Supertaggning II Hur går det till? Lokal statistisk information, trigram över supertaggar. SuperTag tränades på 1 miljon ord med supertaggar. Testade på 47 000 ord, 92.2 % av dessa taggades korrekt. Parsning och supertaggning: Supertaggning klarar nästan alltid att analysera meningar. För att få en komplett syntaxanalys måste supertaggar kombineras. Parsningen blir 30 ggr. snabbare med supertaggaren som förprocess. Tillämpningar: dokumentfiltrering, textförenkling, ordbetydelstaggning (hur skall ordet bank tolkas). 8

LFG Lexikalisk-funktionell grammatik (Lexical Functional Grammar). Är en teori för den universella grammatiken (Chomsky). Grammatiska funktioner/relationer betraktas som primitiva begrepp kan inte definieras med frasstruktur. Syntaktiska regler tillåts inte förändra grammatisk funktion hos en kosntituent. Inga transformationer ingen ytstruktur-djupstruktur Två nivåer: konstituentstruktur(c-struktur) och funktionell struktur (f-struktur) c-strukturen är ett frasstrukturträd genererat med CFG f-strukturen bestäms både av CFG:en och lexikal information The LFG Grammar Writer s workbench (Xerox) http://www.parc.xerox.com/istl/groups/nltt/ medley/ LFG för svenska, Linköping Dependency grammar Dependensgrammatik, Tesnière 1959 Formalismer/parsningssystem: Functional Dependency Grammar (Järvinen & Tapanainen, 1997) Link Grammar (Sleator & Temperely, 1993) Constraint Grammar Finite-state grammars Finite-state transducers (Karttunen et al, 1997) Finite-state intersection grammar (Koskenniemi, 1990) designing a parsing grammar (Voutilainen, 1994) bra fokus på grammatikern, som skall skriva alla dessa regler. Olika analysnivåer kan samverka: en flertydighet på en nivå kan lämnas till nästa nivå, flertydig information från en nivå ovanför kan användas för att disambiguera en lägre nivå. Mer om finite-state parsning nästa föreläsning. DCG Definite Clause Grammar En notation i Prolog för att skriva logiska grammatiker Pereira och Warren 1980 Prolog genererar automatiskt en parser för DCG-grammatiken. DCG --> Prolog HEAD -- > BODY. en möjlig form av HEAD är BODY. Konjunktionsoperatorn, DCG: s --> np(agr), vp(agr). Översätts till: s(p0, P2) :- np(agr, P0, P1), vp(agr, P1, P2). Det existerar en konstituent, s, från punkt P0 till P2 om det existerar en np mellan punkterna P0 och P1 och en vp mellan P1 och P2, och särdragsvariablerna Agr i np och vp stämmer överens. 9

Mer DCG När DCG-reglerna är översatta finns de endast expanderade i Prolog. icke-terminal --> icke-terminal. icke-terminal --> [hund] icke-terminal --> [så, länge] Icke-terminal --> {write ( Vilken NP va? )} Icke-terminal --> en serie av ovan sammansatta med, expand_term/2 SICStus 3 #6: Mon Feb 2 19:42:45 MET 1998?- expand_term((s --> np, vp), What). What = s(_a,_b):-np(_a,_c),vp(_c,_b)? yes?- expand_term((n --> [bilen]), Hur). Hur = n(_a,_b):-'c'(_a,bilen,_b)? yes?- expand_term((ab --> [så], [länge]), H). H = ab(_a,_b):-'c'(_a,så,_c),'c'(_c,länge,_b)? En grammatik i DCG s --> np, vp. vp --> vb. vp --> vb, np. vp --> vb, np, np. np --> dt, nn. np --> nn. Ett lexikon i DCG nn --> [pelle]. nn --> [hästen]. nn --> [pojke]. nn --> [bok]. nn --> [hus]. dt --> [en]. dt --> [ett]. vb --> [sover]. vb --> [beundrar]. vb --> [ger]. vb --> [ser]. Vad får vi ut? Vi får en parser som accepterar godkända strängar, vi får inga träd. Om vi bygger ut grammatiken kan vi få parsern att bygga syntaxträd. Varje regel skall fylla i sin struktur S --> np, vp. Skall ge s(, ), fylls i av np och vp. Np vill i sin tur fylla i med np(, ) osv. En grammatik i DCG med parseträd s(s(np, VP)) --> np(np), vp(vp). vp(vp(vb)) --> vb(vb). vp(vp(vb,np)) --> vb(vb), np(np). vp(vp(vb, NP1, NP2)) --> vb(vb), np(np1),np(np2). np(np(dt, NN)) --> dt(dt), nn(nn). np(np(nn)) --> nn(nn). 10

Lexikonet i DCG nn(nn(pelle)) --> [pelle]. nn(nn(hästen)) --> [hästen]. nn(nn(pojke)) --> [pojke]. nn(nn(bok)) --> [bok]. nn(nn(hus)) --> [hus]. dt(dt(en)) --> [en]. dt(dt(ett)) --> [ett]. vb(vb(sover)) --> [sover]. vb(vb(beundrar)) --> [beundrar]. vb(vb(ger)) --> [ger]. vb(vb(ser)) --> [ser]. När den första regel anropas, instanieras omedelbart dess argument till s(np, VP) Variabler NP och VP är ännu så länge oinstansierade. Därefter instanieras NP till np(dt, NN) Hela strukturen är då s(np(dt, NN), VP) DT, NN och VP saknar då sina värden, men de fås när exekveringen fortsätter. Om Prolog backtrackar så är instansieringarna ogjorda. Nyckelidén är att arbeta med information som man ännu inte har, bygg istället delvis instanierad struktur och instansiera senare. Denna teknik är Prologs styrka. Hur blir det? (del 1)?- s(träd, [pelle, sover],[]). Träd = s(np(nn(pelle)),vp(vb(sover)))??- s(t, [pelle, ser, ett, bok],[]). T = s(np(nn(pelle)),vp(vb(ser),np(dt(ett),nn( bok))))? Särdrag i grammatiken Vi vill ha ett elegant sätt att representera/uttrycka syntaktiska krav Lägger till sädrag och unifiering till våra vanliga frasstrukturregler (augmenting) Mål: Att associera komplexa särdragsstrukturer med lexikal poster och instanser av grammatiska kategorier Att styra bildningen av särdragsstrukturer för större grammatiska konstituenter baserade på komponenternas sädragsstrukturer Att framtvinga restriktioner som måste stämma överens mellan angivna delar i grammatiska konstruktioner DCG med genuskongruens s(s(np, VP)) --> np(np,_), vp(vp). vp(vp(vb)) --> vb(vb). vp(vp(vb,np)) --> vb(vb), np(np,_). vp(vp(vb, NP1, NP2)) --> vb(vb), np(np1, _),np(np2,_). np(np(dt, NN), GEN) --> dt(dt,gen), nn(nn, GEN). np(np(nn), GEN) --> nn(nn, GEN). DCG med subkategorisering s(s(np, VP)) --> np(np,_), vp(vp). vp(vp(vb)) --> vb(vb,). vp(vp(vb,np)) --> vb(vb), np(np,_). vp(vp(vb, NP1, NP2)) --> vb(vb), np(np1, _),np(np2,_). np(np(dt, NN), GEN) --> dt(dt,gen), nn(nn, GEN). np(np(nn), GEN) --> nn(nn, GEN). 11

Lexikon nn(nn(pelle), utr) --> [pelle]. nn(nn(hästen), utr) --> [hästen]. nn(nn(pojke), utr) --> [pojke]. nn(nn(bok), utr) --> [bok]. nn(nn(hus), neu) --> [hus]. dt(dt(en),utr) --> [en]. dt(dt(ett),neu) --> [ett]. vb(vb(sover)) --> [sover]. vb(vb(beundrar)) --> [beundrar]. vb(vb(ger)) --> [ger]. vb(vb(ser)) --> [ser]. Hur blir det? (del 2)?- s(träd,[pelle,ser,en, bok],[]). Träd = s(np(nn(pelle)),vp(vb(ser),np(dt(en),n n(bok))))? ; no?- s(träd, [pelle, ser, ett, bok],[]). no s(s(np, VP)) --> np(np,_), vp(vp). vp(vp(vb)) --> vb(vb,intrans). vp(vp(vb,np)) --> vb(vb,trans), np(np,_). vp(vp(vb, NP1, NP2)) --> vb(vb,ditrans), np(np1, _),np(np2,_). Vi bygger ut verben i lexikonet: vb(vb(sover),intrans) --> [sover]. vb(vb(beundrar), trans) --> [beundrar]. vb(vb(ger), ditrans) --> [ger]. vb(vb(ser), trans) --> [ser].?- s(t,[pelle,sover],[]). T = s(np(nn(pelle)),vp(vb(sover)))? ; no?- s(t,[pelle, sover, hasten],[]). no?- s(t,[pelle, ser, hasten],[]). T = s(np(nn(pelle)),vp(vb(ser),np(nn(hasten) )))??- s(t,[pelle, ger, hasten, en, bok],[]). T = s(np(nn(pelle)),vp(vb(ger),np (nn(hasten)),np(dt(en),nn(bok ))))? yes?- s(t,[pelle, ser, hasten, en, bok],[]). 12

CLE Core language engine Istället för att arbeta med en lingvistisk ren formalism (som måste kompileras till något mer effektivt) syftar CLE att vara en formalism som ligger när implementationsspråket. CLE är unifieringbaserad formalism implementerad i Prolog, som har inbyggd unifiering. I stort sett samma formlism för morfologi, syntax och semantik CLE S NP VP Förenklat i CLE: syn(s_np_vp_normal, core, doc( [Jag flyger], [d1, d3, e1], Covers all normal types of clauses ), [s:[vform=vform, type=type], np:[type=type], vp:[vform=vform] SLE The Swedish Language Engine Arbetet startade 1990, Gambäck med flera Baserat på CLE Morfologisk, syntaktisk och semantisk analys Svenska meningar analyseras och konverteras till en intern semantisk represenation. Analys och generering kan göras med samma grammatik, som dock kompileras olika. Spoken Language Translator (SLT) Domänen flygbokning, översätter frågor på engelska till svenska Även andra tillämpningar Särdragskategorier och särdragsvärden i grammatikregler np:[num=num, gen= Gen,tree=np(DET,N)] => np_det_n- [dt:[num=num,gen=gen, tree=det], nn:[num=num,gen=gen, tree=n]]. np:[num=num,gen=gen,tree=np(n)] => np_n- [nn:[num=num,gen=gen, tree=n]]. Diderichsens satsscheman lexicon(pelle,nn:[num=sin,gen=utr,tree=np(pelle)]). lexicon(hästen,nn:[num=sin,gen= utr, tree=nn(hästen)]). lexicon(bok,nn:[num=sin,gen= utr, tree=nn(bok)]). lexicon(hus,nn:[num=sin,gen=neu, tree=nn(hus)]). lexicon(en,dt:[num=sin,gen=utr, tree=dt(en)]). lexicon(ett,dt:[num=sin,gen=neu, tree=dt(en)]). lexicon(den,dt:[num=sin,gen=utr, tree=dt(den)]). lexicon(de,dt:[num=plu,gen=_, tree=dt(de)]). Paul Diderichsen, en dansk lingvist Satsscheman: Fundament Nexufält Innehållsfält Finit verb Subjekt Satsadv Infinit verb obj. Adv Pojken reste [] inte igår Igår reste pojken inte Reste pojken inte igår? Vem reste [] inte igår? 13

Satsscheman är bra för Beskrivning av ordföljd eller fältföljd Formalismen används både i traditionella grammatikor och för språkinlärning Skall man implementera en svenska grammatik, kan man enkelt hänvisa till paragrafer Bra för att utveckla transformationer mellan satser, hyfsat enkelt att Bra för en noggrann igenkänning och analys av satser Kan åtminstone delvis beskrivas med ändliga automater en eller flera automater för varje fält. Ordningen hos adverben? nog inte korrekt inte nog ogrammatiskt Hur viktigt är det egentligen att skilja ut ogrammatiska konstruktioner från grammatiska? Vi återkommer till analys av ogrammatisk indata Hur bygger man en grammatik? Det finns ingen bok med grammatiska regler för svenska språket Utgå från någon grammatikbok Använd stora textmängder för att se var grammatiken läcker. Testa igen på stora textmängder, upprepa Alla grammatikor läcker. Se till så att alla meningar får någon form av analys/delanalys. Det är det viktiga. Lämna flertydigheter om de är svåra eller använd heuristik för att ta bort tolkningar, 100 analyser är inget system bekänt av 14