Grundläggande textanalys, VT 2011 Stavnings- och grammatikkontroll i Microsoft Word Eva Pettersson UU/Convertus evapet@stp.lingfil.uu.se
Föreläsningsöversikt Allmänt om grammatikkontroll Allmänt om stilkontroll Språkgranskningssystem för andra språk än svenska Språkgranskningssystem för svenska, med fokus på Grammatifix Dagens labb
Varför behövs grammatikkontroll? Andraspråksinlärning Dyslexi Komplexa grammatiska konstruktioner Slarvfel Stilkontroll Stavningskontroll
Varför räcker inte stavningskontroll för stavningskontroll? Isolerade stavfel som resulterar i icke-ord fångas av stavningskontrollen: coh à och Brist på lexikontäckning kan lura skribenten att faktiskt stava fel, exvis särskriva sammansättningar: jätte trött Ord i kontext, dvs stavfel som resulterar i riktiga ord (real word errors): jag er dålig på att stava språk teknologi är kul Bättre korrigeringsförslag: det är sårt att stava Word/PPT 2011 föreslår: särt, sort, surt, svårt, sårat
Vad förväntas av det ideala grammatikkontrollprogrammet? Känna igen och larma för alla grammatiska fel Känna igen och acceptera alla grammatiskt korrekta strukturer Ge ett korrekt ersättningsförslag för alla ogrammatiska strukturer och kontextuellt felaktiga ordformer
Mer realistiska förväntningar Endast larma för riktiga grammatikfel, även om inte alla fel upptäcks Fokusera på typiska och/eller frekventa feltyper Korpusundersökning Anpassning till olika typer av skribenter, exvis dyslektiker eller andraspråksinlärare Fokusera på sådana typer av fel som är lätta att hitta
Grammatikkontrollens delar Feldetektering (detection) Fel i nominalfrasen: *det tidiga 1800-talen Feligenkänning (recognition) Numerusinkongruens: determinerare huvudord Feldiagnos (diagnosis) Substantivet står i plural istf singular alt. Determineraren står i singular istf plural Felkorrigering (correction) det tidiga 1800-talet alt. de tidiga 1800-talen
Feligenkänning av sammansättningar Enklast strategi: ord = ord + ord dator + lingvistik = datorlingvistik Förfinad strategi: ord = förled + ord flicka + klänning = fllickklänning äpple + paj = äppelpaj kvinna + parti = kvinnoparti cigarr + rök = cigarrök
Feligenkänning av sammansättningar (forts) Sammansättningsanalys minskar antalet falska alarm Sammansättningsanalys kan dock öka antalet missade fel! Missade fel i Word97 pga sammansättningsanalys: kotakt kontakt makelera makulera medalg medalj cykelsäll cykelställ särkskilt särskilt
Problem inom grammatikkontroll Hur kan man känna igen så många fel som möjligt utan att få för många falska alarm? Långa och komplexa strukturer: De i paragraf 5 stadgade undantaget Undantag från normalfallet: Strindbergs Röda Rummet Begränsat till meningsnivå: Jag träffade en flicka igår. De var mycket söta. Hur sträng bör man vara? Jag insåg att det här går inte. Hur hanterar man dialektala uttryck? Denna boken är bra.
Strategier för grammatikkontroll Grammatikbaserad grammatikkontroll Fenomenbaserad grammatikkontroll
Grammatikbaserad kontroll Fullständig syntaktisk analys Relaxering Kan hantera strukturer där två av varandra beroende ord inte står intill varandra: Problemet med den kommunala fördelningen från inkomstskatter för säsongsanställda är svår att lösa Svaga punkter: robusthet och effektivitet
Fenomenbaserad kontroll Begränsad analys Robust och effektivt Begränsat till grammatiska felaktigheter mellan ord som står nära varandra, exvis otillåtna ordklasskombinationer: kunnat kommit
Stilkontroll Genomsnittlig ord- och meningslängd Minusord Ålderdomliga Vardagliga/talspråkliga Byråkratiska Vissa syntaktiska konstruktioner Passiv Konsekvenskontroll ska skall, mej mig
Critique Språkgranskningssystem för andra språk än svenska CORRie
Critique Första praktiska grammatikbaserade språkkontrollsystemet (80-talet) IBM Engelska och franska Föregångare till språkkontrollen i den engelska versionen av Microsoft Word
Feltyper i Critique 25 grammatiska feltyper, fördelade på fem kategorier: Numerusinkongruens: many book/he go Fel pronomenform: between you and I Fel verbform: seems to been/had expect Skiljeteckenfel Sammanblandningar av ord: who s whose 85 stilistiska fel
CORRie Utvecklat för holländska Fem generella feltyper Insättning tåget har har redan gått - hus bil Borttagning tåget _ redan gått Substitution the well performance Transposition jag tror att tåget går inte idag Feature mismatch den lilla huset/männen är glad
Grunden till CORRies feltyper Kompetensfel Fonetiska fel: resturang à restaurang Homofonfel: gott à gått Performansfel Insättning språkteknologii Borttagning spåkteknologi Substitution sprokteknologi Transposition spårkteknologi
Språkgranskningssystem för svenska Grammatifix, Lingsoft SCARRIE, Uppsala universitet Modifierad variant: ScaniaChecker Granska, Nada, KTH Skribent, Norstedts Ordbok
Grammatifix Stavfel hanteras separat (Orthografix) Parsning med SWECG (Swedish Constraint Grammar) i fem steg: 1. Förbehandling 2. Morfologisk analys 3. Morfologisk disambiguering 4. Morfosyntaktisk mappning 5. Syntaktisk disambiguering
Steg 1: Förbehandling Tokenisering Cirka 150 fraser Cirka 5 000 förkortningar *dessa entreprenöriella faktorer hade än_så_länge dämpat explosionen $
Steg 2: Morfologisk analys SWETWOL, cirka 75 000 grundformer "<*dessa>" "denna" <**c> <DEM> <MD> DET UTR/NEU DEF PL NOM @DN "denna" <**c> <DEM> PRON UTR/NEU DEF PL NOM "<entreprenöriella>" "<faktorer>" "faktor" N UTR INDEF PL NOM "<hade>" "ha" <AUX> V ACT PAST "<än_så_länge>" "än_så_länge" <COLLOCATION> ADV "<dämpat>" "dämpa" V ACT SUPINE "dämpa" <PCP2> A NEU INDEF SG NOM "<explosionen>" "explosion" N UTR DEF SG NOM "<$.>" "$." CLB <PUNCT>
Morfologisk analys av okända ord För ord som saknas i SWETWOL-lexikonet: Ett 60-tal regler baserade på suffix Okända ord som inte matchas av någon regel antas vara substantiv "<entreprenöriella> "entreprenöriella" <NON-SWETWOL> A UTR/NEU DEF SG NOM "entreprenöriella" <NON-SWETWOL> A UTR/NEU DEF/INDEF PL NOM
Steg 3: Morfologisk disambiguering Cirka 2 100 morfologiska disambigueringsregler "<*dessa>" "denna" <**c> <DEM> <MD> DET UTR/NEU DEF PL NOM @DN "<entreprenöriella> entreprenöriella <NON-SWETWOL> A UTR/NEU DEF/INDEF PL NOM "<faktorer>" "faktor" N UTR INDEF PL NOM "<hade>" "ha" <AUX> V ACT PAST "<än_så_länge>" "än_så_länge" <COLLOCATION> ADV "<dämpat>" "dämpa" V ACT SUPINE "<explosionen>" "explosion" N UTR DEF SG NOM "<$.>" "$." CLB <PUNCT>
Steg 4: Morfosyntaktisk mappning Normalt i SWECG: syntaktiska funktionstaggar I Grammatifix: Alla ord tilldelas båda taggarna @OK och @ERR "<*dessa>" "denna" <**c> <DEM> <MD> DET UTR/NEU DEF PL NOM @DN @OK @ERR "<entreprenöriella>" "entreprenöriella" <NON-SWETWOL> A UTR/NEU DEF/INDEF PL NOM @OK @ERR "<faktorer>" "faktor" N UTR INDEF PL NOM @OK @ERR
Steg 5: Syntaktisk disambiguering Feldetekteringsregler väljer om @OK-taggen eller @ERRtaggen ska gälla (@w =s! (@ERR) ; För ett ord (@w) välj (=s!) feltaggen (@ERR) (0 N-DEF) ; om ordet själv (0) är ett substantiv i bestämd form (N-DEF) och (-2 GEN) ; om andra ordet till vänster (-2) är en genitiv (GEN) och (-1 A-DEF)) ; om det första ordet till vänster är ett adjektiv i best.form (A-DEF). unionens snabba utvidgningen Kontrollera ordformen utvidgningen. Om ett substantiv styrs av en genitiv, t.ex. unionens, bör det stå i obestämd form
Feltyper i Grammatifix 43 feltyper fördelade på tre kategorier: Grammatiska fel (26) Främst verbkedjor och kongruens inom nominalfraser Stilbrott på ordnivå (3) Byråkratiska ord: hemställan, vederlag Talspråkliga ord: Ålderdomliga ord: dej, redaktörn särla, tillförne Brott mot skrivkonventioner (14) Parenteser, datumformatering, interpunktion med mera
SCARRie Scandinavian Proof-Reading Tools Svenska, norska och danska Korrekturläsningsverktyg för tidningsskribenter Stavnings- och grammatikkontroll Bygger på stor empirisk felundersökning SCARRie Error Corpora Database (ECD) Cirka 9 000 autentiska fel från SvD och UNT Fel med korrigering utförd av korrekturläsare
SCARRie Error Corpora Database
Feltyper i SCARRie Error Corpora Database Hierarkiska feltypologi i fyra nivåer Cirka 500 feltyper Fem feltyper på översta nivån Stavfel (SE) 43% Interpunktionsfel (PU) 17% Stil, mening och referens (SP) 16% Grammatiska fel (GP) 15% Grafiska fel (GR) 9%
Vanliga grammatiska feltyper Nominalfrasen (41%) Numerusinkongruens mellan framförställt attribut och huvud (GPNPAG01) en upptrappad psykologiska krigföring Verbvalens (17%) Infinitivmärke saknas (GPVVIP01) Vi kommer också jobba med OS-arenan Prepositionsfras (11%) Fel preposition (GPPPPR04) Prognoserna över arbetslöshetens utveckling
Uppbyggnad Stavningskontroll baserad på CORRie Lexikonuppslagning Sammansättningsregler Grammatikkontroll Partiell parsning med Uppsala Chart Parser (UCP) Chart Scanner (ReportChart) letar igenom analysen efter felsärdrag
SCARRies grammatikkontroll Tre typer av regler Accepterande regler en hund NP Relaxerade relger ett hund NP med kongruensfel Lokala felregler för strukturella fel på sats- och meningsnivå
SCARRies grammatikkontroll (forts) Hanterar cirka 30 grammatiska feltyper utifrån feltypologin Exempel på feltyper som hanteras: Fel i nominalfrasen en eventuellt segerfest får vänta Pronomenkasus och ingen kan väl klandra de som deltog Fel i verbkedjan om människor börja tro på förändring Ordföljdsfel jag undrar vad gör de små busungarna
Scania Checker Variant av SCARRie som anpassats till att hantera Scanias kontrollerade språk Utvecklat vid institutionen för lingvistik, UU, och driftas idag av avknoppningsföretaget Convertus AB Används dagligen av Scanias skribenter Minusord för konsistens vid val av terminologi fotkontakt, golvkontakt, fotströmställare, fotomkopplare Ersätt med: golvströmställare
Dagens labb Utvärdering av stavnings- och grammatikkontroll i MS Word http://stp.lingfil.uu.se/~evapet/undervisning/ textanalys11/word-lab.html
Referenser Anna Sågvall Hein, 1998, A Chart-Based Framework for Grammar Checking Initial Studies http://www.lingfil.uu.se/personal/anna/nodali.pdf Ola Knutsson, 2001, Automatisk språkgranskning av svensk text Antti Arppe, 1999, Developing a Grammar Checker for Swedish: http:// www.ling.helsinki.fi/~aarppe/publications/nodalida-99.pdf Juhani Birn, 1999, Detecting grammar errors with Lingsoft s Swedish grammar checker Rickard Domeij, 2005, Datorn granskar språket (kapitel 6-7) Theodorus Gregorius Vosse, 1994, The Word Connection: Grammar-based Spelling Error Correction in Dutch Anna Sågvall Hein, 1998, A grammar checking module for Swedish, i WP12* Olga Wedbjer Rambell et al, 1998, An Error Database of Swedish, i WP5* Olga Wedbjer Rambell, 1998, Error Typology for Automatic Proof-reading, i WP4* * Working Papers in Computational Linguistics & Language Engineering http://www.lingfil.uu.se/ling/wp.html