Generering av grundformer i Stava
Generering av grundformer i Stava
Generering av grundformer i Stava
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Generering</strong> <strong>av</strong> <strong>grundformer</strong> i St<strong>av</strong>a<br />
<strong>Generering</strong> <strong>av</strong> <strong>grundformer</strong> i St<strong>av</strong>a<br />
Laboration i Språkteknologi, ht-00<br />
Rebecka Jansson, d95-rja@nada.kth.se<br />
Niklas Kernby, d95-nke@nada.kth.se<br />
Handledare: Viggo Kann, viggo@nada.kth.se<br />
Uppgift<br />
I vissa fall (indexering <strong>av</strong> texter och informationssökning) har man nytta <strong>av</strong> att rensa bort eventuella<br />
suffix från ett ord och presentera det i sin grundform. Detta görs egentligen inte <strong>av</strong> St<strong>av</strong>a, och vår uppgift<br />
var att modifiera programmet så att alla inmatade ord presenteras i suffixfri grundform. Mer information<br />
om St<strong>av</strong>a finns på http://www.nada.kth.se/~viggo/st<strong>av</strong>a/.<br />
Lösning<br />
Suffixhantering i St<strong>av</strong>a<br />
Vid st<strong>av</strong>ningskontroll med St<strong>av</strong>a genomsöks först programmets ordlistor. För att hålla nere deras storlek<br />
lagras bara vissa former <strong>av</strong> regelbundet böjda ord. För regelbundna substantiv lagras ordet till exempel<br />
bara i böjningsformerna bestämd och obestämd singular samt obestämd plural. Övriga former härleds ur<br />
en lista med suffixregler, suffixlistan.<br />
En regel i suffixlistan består <strong>av</strong> ett vänster- och ett högerled. Vänsterledet innehåller ett suffix, som<br />
godkänns om det är möjligt att byta ut mot det eller de suffix som räknas upp i högerledet, och resultatet<br />
blir ett ord som finns med i ordlistan.<br />
Exempelregel: -orna -a, -an, -or<br />
Denna regel säger alltså att ordet X-orna ska godkännas om orden X-a, X-an och X-or återfinns i<br />
ordlistan, där X kan vara till exempel "dock", "kapp" eller "väsk".<br />
Hur få med grundformssuffixet?<br />
Efter suffixkontroll <strong>av</strong> till exempel kapporna har man alltså delat upp ordet i två delar; stammen kappoch<br />
suffixet -orna. Som grundform vill vi dock inte ha kapp, utan kappa. Praktiskt nog är suffixreglerna<br />
angivna just så att det första suffixet i högerledet är grundformssuffixet. Alltså kan grundformen<br />
uttryckas som det inmatade ordet med ursprungligt suffix utbytt mot detta första högerledssuffix.<br />
Nämnas kan att det egentligen bara är substantiv och adjektiv som har en grundform (Thorell, O. Svensk<br />
grammatik, 1973, §14.1.c). För verb har vi valt att ta fram infinitivformen, som vanligtvis inte är identisk<br />
med verbets stam.<br />
Suffixkontroll <strong>av</strong> former lagrade i ordlistan<br />
I dagens St<strong>av</strong>a kontrolleras inte suffix för de ord som återfinns i ordlistan, och det finns inte heller regler<br />
för dessa suffix i suffixlistan. Därför var vi tvungna att lägga in suffixkontroll även i detta fall, samt<br />
file:///C|/WINNT/Profiles/d95-nke/Desktop/Spraktek/St<strong>av</strong>alab.html (1 of 2) [2000-12-18 15:00:38]
<strong>Generering</strong> <strong>av</strong> <strong>grundformer</strong> i St<strong>av</strong>a<br />
utöka suffixlistan med de nödvändiga reglerna.<br />
För de suffix som dessa nya regler ska godkänna gäller att de redan finns med som högerled i<br />
suffixlistan, eftersom de beskriver böjningsformer som lagrats i ordlistan. Ett högerled beskriver<br />
böjningsformer för en viss grupp <strong>av</strong> ord, och för ett ord ur denna grupp ska alltså alla högerledets<br />
suffixformer finnas med i ordlistan. Det innebär att varje suffix ur högerledet kan bilda vänsterled i en<br />
regel där högerledet är oförändrat. Förfarandet blir tydligare med ett exempel:<br />
För att regeln "-orna -a, -an, -or" ska appliceras på ett ord kapporna krävs att kappa, kappan och<br />
kappor finns i ordlistan. Ett ord som tillhör denna grupp finns alltså lagrat just i de tre formerna, och då<br />
kan till exempel kappa anses tillhöra gruppen om både kappa, kappan och kappor finns med i ordlistan.<br />
Det ger upphov till en suffixregel "-a -a, -an, -or". Ytterligare två regler behövs för att fånga upp<br />
formerna kappan och kappor. Dessa två blir då "-an -a, -an, -or" och "-or -a, -an, -or".<br />
Med andra ord ska varje suffix som ingår i ett högerled ge upphov till en ny suffixregel med oförändrat<br />
högerled. Det stora antalet suffixregler (ett tusental) gör det mindre lämpligt att skapa dessa nya regler<br />
för hand, men det går bra att automatgenerera dem. I vår lösning har vi dock inte gjort detta utan bara<br />
lagt in några nya regler, som tillsammans fångar ett stort antal regelbundna substantiv och verb, för att<br />
visa principen. Vi har i efterhand skrivit ett Perlscript (suffixaren.pl) som automatiskt genererar samtliga<br />
nya suffixregler (new_suffixes) enligt denna princip.<br />
Sammansatta ord<br />
I ordlistan lagras inga sammansättningar. Därför måste sammansatta ord delas upp i för- och efterled för<br />
att kunna slås upp. Till suffixkontrollen kommer bara efterledet, men för att grundformsgenereringen ska<br />
vara användbar är det viktigt att den resulterande grundformen är <strong>av</strong> hela ordet, inte bara efterledet.<br />
Annars skulle ett ord som solförmörkelsen få sin grundform presenterad som förmörkelse, snarare än<br />
solförmörkelse. Vi är därför tvungna att hålla reda på eventuella förled som skalats bort under<br />
bearbetningen. För att hantera detta ser vi till att inte bara efterledet utan även en oförändrad upplaga <strong>av</strong><br />
ordet finns med vid suffixkontrollen. Det är detta ursprungliga ord som används för presentation, sedan<br />
vi tagit bort suffixet.<br />
Litteratur<br />
Domeij, R., Hollman, J. & Kann, V. Detection of Spelling Errors in Swedish Not Using a Word List En<br />
Clair. Journal of Quantitative Linguistics, 1(3), 195-201, 1994.<br />
(ftp://ftp.nada.kth.se/pub/documents/Theory/Viggo-Kann/detectspell.ps)<br />
Kann, V., Domeij, R., Hollman, J. & Tillenius, M. Implementation aspects and applications of a<br />
spelling correction algorithm. In Koehler, R., Uhlirova, L., Wimmer, G. (eds.): Text as a Linguistic<br />
Paradigm: Levels, Constituents, Constructs, 1999.<br />
(ftp://ftp.nada.kth.se/pub/documents/Theory/Viggo-Kann/TRITA-NA-9813.pdf)<br />
file:///C|/WINNT/Profiles/d95-nke/Desktop/Spraktek/St<strong>av</strong>alab.html (2 of 2) [2000-12-18 15:00:38]