Den 6. feb. 2009 kl. 13.36 skrev Karl Ove Hufthammer:
Takk til her Moshagen for ein veldig interessant e-post. Her er nokre kommentar få kommentarar.
Her òg er det mogleg å rekna precision/recall. Grunninnsikten er at den aktuelle korrigeringa bør koma som fyrste forslag, eller nær toppen, og at irrelevante forslag er støy, og jo mindre støy, jo betre. Både Hunspell og Aspell er svært dårlege når det gjeld støynivået - eg får ofte lange lister med forslag, der dei fleste er irrelevante.
Kan dette ha noko å gjera med korleis ordlistene vert genererte, altso at dei ikkje er spesielt tilpassa norsk ordlaging? Eg har ikkje brukt hunspell eller aspell særlig med dei norske ordlistene før, men har brukt dei engelske ordlistene ein del, og har stikk motsett erfaring. Eg har vore imponert over kor gode forslaga ved skrivefeil har vore, veldig ofte med rett forslag på førsteplass, sjølv når feilstavinga er heller ekstrem (slik ho av og til vert viss eg skriv for fort).
Felles for dei fleste iSpell-baserte stavekontrollar (Aspell, Myspell m.fl. er alle derivat av iSpell i ulike versjonar og generasjonar) er at dei i utgangspunktet er bygd for engelsk. Dette har vore svært uheldig fordi engelsk ikkje har bøying å snakka om, ikkje har fri samansetjing, og har ein relativt idiosynkratisk ortografi. Stavekontrollformalismane og -teknologien i Xspell-verktya har vorte forma etter engelsk, og resultatet er jamnt over ikkje tilfredsstillande for andre språk.
Hunspell står på Wikipedia omtalt som «a spell checker and morphological analyzer designed for languages with rich morphology and complex word compounding or character encoding», noko som kan indikera at hunspell kan spesialtilpassast til norsk mykje betre enn er gjort til no.
Det stemmer. Hunspell er mykje betre enn dei andre i Xspell-familien, nettopp fordi det er gjort eit alvorleg forsøk på å tilpassa både formalisme og motor til eit språk med rik morfologi og fri samansetjing, nemleg ungarsk.
Men Hunspell er framleis prega av arven etter Xspell - m.a. er formalismen direkte henta frå Myspell, med nokre få tillegg for å takla samansette ord og ein rikare morfologi. I tillegg insisterer Hunspell på å koma med forslag, sjølv om ingen av dei er relevante. Det lagar mykje støy.
Hunspell-formalismen er ikkje ein god formalisme for å halda ved like og byggja ut eit stort leksikon ("ordliste") for avansert korrektursjekking. Og Hunspell er *ikkje* laga for språk med enno rikare morfologi enn ungarsk, og slett ikkje for språk med kompleks morfofonologi. T.d. gav ei finsk gruppe som arbeider med open kjeldekode opp å bruka Hunspell, fordi det vart meiningslaust å formulera finsk grammatikk i Hunspell-formalismen.
Vi i Divvun-prosjektet har generert stavekontrollordlister for Hunspell for nord- og lulesamisk, men resultatet er ikkje bra nok, og det er store problem med å få samansette ord til å fungera som dei skal.
Eg ser for eksempel at den engelske affiks-fila inneheld ein regel som seier at stavekontrollen skal prøva «f» viss eit ord inneheld «ph» (og vise versa). For norsk kan ein lett tenka seg andre reglar (for eksempel -ang på slutten av ord kan bli -ant, som i restaurant og departement).
Slike reglar er det lett å formulera i dei fleste formalismane, men det som ikkje alltid er like klårt er korleis slike reglar samverkar med standardreglane, dvs korleis ein sik regel påverkar heile forslagsmekanismen totalt sett. Og utan ein skikkeleg testbenk er ein heller ikkje i stand til å måla endringane.
Eg reknar med både inngåande kjennskap til norsk som språk, samt ei korpus over vanlige skrivefeil (vil vera nyttig her.
Det er uråd å laga ein god stavekontroll utan å kjenna målspråket godt:), og eit korpus over skrivefeil er svært nyttig. I Divvun- prosjektet har vi pr i dag samla inn 7672 skrivefeil for nordsamisk, og 1287 for lulesamisk. Kor vanlege desse skrivefeila er, er det vanskeleg å seia, men det er grovt sett alle skrivefeil vi har funne i korpuset vårt. Samlinga med skrivefeil er *svært* nyttig, m.a. er det enkelt å sjekka om det finst skrivefeil som blir aksepterte av stavekontrollen (svaret er ja, det er uråd å byggja ein stavekontroll som oppdagar 100% av alle skrivefeil), og kor stor del av alle skrivefeil det gjeld.
Spesielt eit korpus basert på elevtekstar hadde vore fint å hatt.
Ja, elevtekstar er av dei vi har tenkt på i den nordiske stavekontrolltesten eg nemner på slutten.
Oppdaga forresten at Nynorskordboka og Bokmålsordboka på nett har ei oversikt over dei mest søkte orda, med informasjon om kva ord som ikkje er med i ordbøkene. Iallfall desse bør rett forslaga komma opp på første plass for. Eksempel: desverre, narcissist, potensiale, nyskjerrig, blandt, ansinitet, hovedsaklig (denne visste ikkje eg var feil!), paralell, forøvrig, værre, kontigent, alikevel, interesant.
Dette er det enkelt å få til.
For nynorsk kan -het → -heit, -leik eller -skap gje gode forslag.
Med tyngde på *kan*. Eg har ein gong prøvd det same (berre sjekk med eit -het-ord i den nynorske stavekontrollen i MS Word) - i dag er eg ikkje stolt over resultatet. Med ei konservativ (i teknisk meining, ikkje språkpolitisk) tilnærming kan det fungera.
Og -lge/- lga → -lgje/-lgja vil retta velge → veljge og følge → følgje, som er vanlige feilsøk i Nynorskordboka.
Ok
Det kan verka som forslagsmekanismen i hunspell er veldig meir avansert enn aspell, og då vil eg tru det er uheldig å bruka dei gamle affiksfilene.
Det er ingen direkte samanheng mellom forslagsmekanismen, og affiksfilene (bortsett frå at "lokale", dvs språkspesifikke tilpassingar til forslagsmekanismen som oftast står i starten av affiksfila, sjølv om dei ikkje har noko med affiksa å gjera). Eg er heller ikkje spesielt imponert over forslagsmekanismen til Hunspell - han er heilt ok, men heller ikkje meir. Derimot vart vi svært imponerte over forslagsmekanismen til underleverandøren vår for MS Office-versjonen, Polderland. *Utan* tilpassingar til samisk gav han eit langt over forventa resultat.
og hvis vi hadde en måte å kvantivisere opplevd kvalitet så hadde vi en målestokk som kunne brukes for å se om vi klarer å forbedre stavekontrollen eller ikke.
Ja, det hadde vore flott å få til.
Jf forslaget om å bruka testbenken vår. Han er framleis under utvikling, men er meir enn bra nok no til å gjennomføra slike testar.
- de samlar inn korpus for norsk (nb og nn), tekstane bør helst vera
public domain, og ikkje korrekturlesne tidlegare, heller ikkje med stavekontroll
Det hørest vanskelig ut, spesielt sidan teksten må vera elektronisk, og er han elektronisk, er han ofte sjekka med stavekontroll før. Unntak er kanskje e-postar, der det er mindre vanlig å bruka stavekontroll (eller lesa nøye gjennom før ein trykkjer «send»).
Forslaget om e-post var bra, det hadde eg ikkje tenkt på sjølv. Dei er offentlege, dei er ofte ikkje korrekturlesne som du nemner, og finst ferdige i elektronisk form. Men eit e-postkorpus vil ha ei slagside mot korte ord, slik at ein i mindre grad utfordrar evna til å handtera samansette ord. Det er likevel *mykje* betre enn ingenting.
I tillegg burde det vera mogleg å få til eit samarbeid med språkrådet, dei har ei interesse i at kvaliteten på tilgjengelege korrekturprogram blir tilstrekkeleg bra. Det er mogleg at den planlagde Norsk språkbank inneheld slik korrekt-merka data, men eg trur ikkje det er mykje, med tanke på kor materialet i hovudsak kjem i frå, og kva det tidlegare har vore brukt til.
Uansett vil eit e-postkorpus vera ein bra start. Finst det personar på denne lista som kunne tenkja seg å samla inn ei rimeleg mengde e-post på bokmål og nynorsk? Vi kan som sagt stilla infrastruktur og verkty til rådvelde. Ei rimeleg mengde = ca 5-10 000 ord.
På lengre sikt arbeider eg i lag med Arbeidsgruppa for språkteknologi i Norden, ei arbeidsgruppe i Nordisk språkråd, med å få til meir systematiske og jamførande testar av ulike språkkontrollverkty, i fyrste omgang stavekontrollar, på tvers av språk, og for fleire parallelle verkty for kvart språk. Det er altså eit mål å få ein uavhengig og jamførande test av t.d. norske stavekontrollar: MS Word, Aspell, Hunspell, iSpell, m.fl. - alle som finst tilgjengelege.
Det hørest fantastisk ut å få til.
:)
Vi får sjå kva som er mogleg, det største arbeidet blir å samla inn og merka opp tekstane for feil+korrigering.
Sjur