Uppsala universitet
Institutionen för lingvistik
Introduktion till
språkteknologi HT 00
Laborationen syftar till att ge en första bekantskap med parsning, en central bearbetningstyp inom språkteknologin, som bland annat används för att lösa ordklassflertydigheter. I laborationen får du tillfälle att tillämpa dina kunskaper om ordklass, fras och sats i konkret regelskrivande.
Din uppgift är att skriva en uppsättning grammatikregler för några svenska meningar och prova ut dem med datorns hjälp. Det du ska åstadkomma är en så kallad frasstrukturanalys, och till detta använder du programmet PC-PATR. PC-PATR är ett program av Stephen McConnel på Summer Institute of Linguistics (SIL) och implementerar en parsningsformalism som heter PATR-II. PATR-II kan mycket mer än det som ni kommer att använda det till i labben, så om du tittar i dokumentationen till det och inte begriper den så är det inget att förskräckas över.
Dessa meningar ska ni använda.
Grammatiken innehåller regler som skrivs så här:
där -> fungerar som omskrivningssymbol. Kategorierna som står till höger kan definieras genom att stå till vänster i andra regler (NP och VP i exemplet), eller så kan de vara ordklasser som nämns i lexikonet. (NN och VB i exemplet; se längre fram!); Toppregler Rule S -> NP VP ; Nominalfraser Rule NP -> NN Rule NP -> NP_1 CN NP_2 ; Verbalfraser Rule VP -> VB
Observera:
Lexikonet ligger i en egen fil. I denna labb är det ett fullformslexikon där det enda vi säger om orden är vilken ordklass de tillhör. Det ser ut så här:
\w mormor \c NN \w gråter \c VB
Efter "\w" anges själva ordformen (w = word) och efter "\c" anges ordklassen (c = category). Även i denna fil kan man lägga in kommentarer efter semikolon.
I denna tabell ges den ordklassindelning du ska använda:
| NN | Nomen | Prep | Prepositioner |
| PM | Proprium (egennamn) | CN | Konjunktioner |
| PN | Pronomen (personliga pronomen) | AB | Adverb |
| AV | Adjektiv | NL | Numeral (räkneord) |
| VB | Verb | BD | Bestämningsord (förenade pronomen och artiklar) |
I övrigt använder du de fraskategorier du finner motiverade för uppgiften.
PC-PATR körs som "pcpatr" i ett skal. Då får man en prompter "PC-PATR>" till vilken man kan ge särskilda kommandon till PC-PATR. Här följer ett exempel på en typisk körning där grammatiken och lexikonet ovan laddas in, varpå en kort mening parsas. Ens egen input skrivs här fetstilt.
$ pcpatr PC-PATR (PATR II style unification parser) Version 1.2.3 (May 11, 2000), Copyright 2000 SIL Compiled Oct 9 2000 11:36:15 with PC-Kimmo functions version 2.1.8 (May 11, 2000) and AMPLE functions version 3.3.11 (May 11, 2000) Type ? for help PC-PATR>load grammar labb Loading grammar from labb.grm PC-PATR>load lexicon labb Loading lexicon from labb.lex 2 lexicon entries loaded from labb.lex PC-PATR>parse mormor gråter 1: S ___|____ NP VP | | NN VB mormor gråter S: [ cat: S ] 1 parse found PC-PATR>
Observera att PC-PATR antar att grammatikfilen har ett namn som slutar på ".grm" och lexikonfilen ett namn som slutar på ".lex". Efter att grammatiken eller lexikonet ändrats får du lov att ladda den igen. Varje gång man laddar in en grammatikfil så tas alla grammatikregler först bort, så du måste ha alla regler i samma fil. Motsvarande gäller för lexikonfiler. Det går att förkorta "load grammar" med "l g" och "load lexicon" med "l l".
Observera också parse-kommandot. Skriv inte meningen med inledande stor bokstav, och avsluta inte med punkt eller annan interpunktion. Allt sådant skulle krångla till det i onödan. Det är ju "mormor" (med litet m) som står i lexikonet, och vi har ingen särskilt hantering av interpunktion. Kommandot "parse" kan förkortas "p".
Förenkla gärna meningarna medan du testar din grammatik, istället för att bara prova med just de elva meningarna ovan. Om du får "**** Cannot parse this sentence ****" för en mening, så prova att förenkla någon del av meningen, så kanske du inser vad i meningen det är som din grammatik ännu ej klarar.
Om du t.ex. vill prova dina NP-regler kan du prova meningar där du lägger ett enkelt verb till den NP du vill prova, så att det inte tillkommer några problem i VP:n. (Dessutom blir analysträden inte lika stora, och därmed lättöverskådligare.)
När du provar ut VP-regler kan du tvärtom använda en så enkel NP som möjligt.
Ett tips för att underlätta överblicken är att hålla alla regler för en viss frastyp tillsammans i grammatikfilen.
Redovisning lämnas i form av skriftlig rapport till Per eller Leif-Jöran senast den 24 november. Om du har ett efternamn som börjar på A-K så lämna till Per och om du har ett efternamn som börjar på L-Ö så lämna till Leif-Jöran. (Detta är samma indelning som den ursprungliga indelningen i grupp 1 och grupp 2 i GD:n.)
Rapporten ska innehålla/behandla (minst) följande
Rapporten kan antingen skrivas som en ren textfil eller snyggskrivas med ordbehandlare eller liknande. Lämna in rapporten till Per/Leif-Jöran antingen i dennes postfack på institutionen, eller via mail. Om du använder mail, så skicka en ren text, Postscript eller PDF. (Men inte ett format som hör till nån viss ordbehandlare.)
Rapporten kommer att ges betyget godkänd eller underkänd.
Lycka till!
Fyll också i mittkursutvärderingen under labben! Glöm inte att ändra "Kurs:" överst i formuläret!
Laborationsinstruktioner skrivna i oktober/november 2000 av Per Starbäck (efter Erik Mats, Anna Sågvall Hein och Per Sandhammar)