Föreläsningens innehåll. Granska. 1. Granskas regelspråk 2. Parsning i Granska 3. Språkgranskning i Granska 4. Granska-laborationen

Relevanta dokument
Parsning i Granska. Föreläsningens innehåll. Granskas uppbyggnad. Inspiration och förebilder. Regelmatchning/parsning. Granskas regelspråk

Innehåll. Grammatikkontroll i Granska. Problemställning. Datorstöd för skrivande. Vilka metoder finns? Granskas uppbyggnad

Innehåll GRAMMATIKKONTROLL I GRANSKA. Datorstöd för skrivande. Problemställning. Ola Knutsson

Behov av språklig granskning. Granska och automatisk språkgranskning av svensk text. Datorn som språkgranskare

Innehåll. Datorstöd för skrivande och grammatikkontroll Ola Knutsson DH2418 Språkteknologi. Datorstöd för skrivande. Vilka metoder finns?

3. Granskas regelspråk

Granskas regelspråk. Ola Knutsson. Uppdaterad IPLab, Nada, KTH

Grundläggande textanalys, VT2013

Institutionen för Lingvistik. NP-detektion UTVÄRDERING OCH FÖRSLAG TILL FÖRBÄTTRINGAR AV GRANSKAS NP-REGLER

Granskas regelspråk. Tentativ version, Ola Knutsson IPLab, Nada, KTH

Parsningens olika nivåer

Identifiering av ordvitsar med Granska

Grundläggande Textanalys VT Språkgranskning (2) Eva Pettersson

Taggning av räkneord som årtal eller andra räkneord, Språkteknologi 2D1418, HT 01 Jonas Sjöbergh, , 15 oktober 2001

Grundläggande Textanalys VT Språkgranskning (2) Eva Pettersson

Datorn har utvecklats till vårt viktigaste. Datorn som språkgranskare SPRÅKTEKNOLOGI OLA KNUTSSON

Introduktion till språkteknologi. Datorstöd för språkgranskning

Inkongruens och särskrivna sammansättningar en beskrivning av två typer av fel och möjligheten att granska dem automatiskt

Inkongruens och särskrivna sammansättningar

Parsningens olika nivåer

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

Innehåll. Definition av språkgranskningsverktyg. Datorn som skrivverktyg. Ola Knutsson KTH CSC, SPRÅKGRANSKNINGSVERKTYG

Kungliga Tekniska Högskolan Patrik Dallmann

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

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

språkgranskning, ht 2007

Grim. Några förslag på hur du kan använda Grim. Version 0.8

Grammatisk teori II Attributvärdesgrammatik

Statistisk grammatikgranskning

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

Obesvarade frågor från F1

Grundläggande textanalys. Joakim Nivre

En arbetsdag på kontoret kan innehålla. Så klarar man språkkontrollen DATORER RICKARD DOMEIJ

Skrivstöd. Joakim Nivre. Introduktion till språkteknologi. Skrivstöd. Inledning. Orsaker till stavfel. Detektering av icke-ord

Grammatifix Svensk grammatikkontroll i MS Word

729G09 Språkvetenskaplig databehandling

Grammatik för språkteknologer

Grammatik för språkteknologer

Stavningskontroll. Metoder och tillämpningar inom språkteknologin. ht Allmänt om språkgranskning. Stavningskontroll.

Tekniker för storskalig parsning

Obesvarade frågor från F4

DATORSTÖDD SPRÅKGRANSKNING OCH

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?

Automatisk språkgranskning av svensk text

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

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

Automatisk utvinning av felaktigt särskrivna sammansättningar

Datorlingvistisk grammatik

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

ORDKLASSTAGGNING. Marco Kuhlmann Institutionen för datavetenskap

Bootstrapping för substantivtaggning

Innehåll. Två olika sätt att utvärdera. Varför skall man utvärdera språkgranskningssystem? F6: UTVÄRDERING AV SPRÅKGRANSKNINGSVERKTYG

Grammatik för språkteknologer

Datorn som hjälp vid språkgranskningen

Grammatisk teori III Praktisk analys

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

Gränssnitt för FakeGranska. Lars Mattsson

Innehåll. Språkinlärning: mänsklig och datorstödd. Olika typer av program för datorstödd språkinlärning. Varför datorer i språkutbildning?

Morfologi, särdrag, lexikon och syntax. När är det bra med morfologi? Vad är ett ord? Morfem. Stam och affix

Språkgranskningsverktyg. Grammatikkontroll i Word

Frasstrukturgrammatik

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

Majoritetsgranskaren ett sätt att förbättra grammatikgranskare genom att kombinera dem LINDA NORELIUS

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

Fraser, huvuden och bestämningar

Taltaggning. Rapport av Daniel Hasselrot , 13 oktober 2003

Partiell parsning Parsning som sökning

Maskininlärning med boostrapping. Maskininlärningslabb i Språkteknologi

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

Kungl. Tekniska högskolan NADA Grundformer med Stava

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

Grundläggande syntaktiska funktioner och roller

Parsning I. Disposition. Parsning användingsområden. Vad menas med parsning inom språkteknologin? Top-down parsning. Parsning som sökning

Lingvistik I Delmoment: Datorlingvistik

Tentamen Marco Kuhlmann

Datum: Date: Provkodr: KTR1 Exam code:

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

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

Lingvistiska grundbegrepp

Lingvistik IV Konstituenter och frasstruktur

Djupstruktur och ytstruktur

Svårigheter med kurslitteraturen

Språkliga strategier för att minnas och lära, till exempel tankekartor och stödord. Mål:

Tekniker för storskalig parsning

Kritiskt tänkande HTXF04:3 FTEB05. Grundläggande semantik II

Skrivstöd. Varför bry sig om stavning? Hur används stavningskontroll? Christian Hardmeier

Språkteknologi och Open Source

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

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

Facit för diagnostiska provet i grammatik

Grammatik, det fixar väl datorn?

Språkgranskningsverktyg, vt 2008

Korpuslingvistik (SV2119) Föreläsning 2: Språkbankens korpusar och sökverktyget Korp

729G09 Språkvetenskaplig databehandling

PAROLE Exempel Förklaring SUC. PARTICIP AF00000A tf particip förkortning PC AN. pluralis obestämd/bestämd genitiv. pluralis obestämd/bestämd nominativ

FTEA12:2 Filosofisk metod. Att värdera argumentation I

Satsdelar. Carina

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

Grammatik för språkteknologer

Bedömning av språklig nivå utifrån processbarhetsteorin - Har andraspråksinlärare på Komvux utvecklats språkligt mellan olika kurser?

Transkript:

Granska Ola Knutsson knutsson@nada.kth.se Föreläsningens innehåll 1. Granskas regelspråk 2. Parsning i Granska 3. Språkgranskning i Granska 4. Granska-laborationen Granskas uppbyggnad Tokeniseraren Taggaren Lexikon (SUC & SAOL) Statistik (SUC) Regelmatcharen Regler (300 regler) Ordböjningsfunktion Grafiskt gränssnitt Interaktion med användaren Regelmatchning/parsning Varje regel kan appliceras var som helst i texten. Toppen-ner, djupet-först, vänster-höger Stannar så fort något regelelement ej matchar Optimerad matchning med statistiska medel. Reglerna förhandsgranskas och ett regelankare väljs ut. Binder regler till taggbigram och de ord som finns i reglerna, detta sparas på disk. Optimeringen ger 6 ggr snabbare matchning. Granskas regelspråk Regelsyntax Granskningsregler Hjälpregler Andra tillämpningar än språkgranskning Inspiration och förebilder Constraint Grammar (Karlsson et al, 1995) Finite-state parsing (Karttunen et al, 1997) Frasstruktur med särdrag med värden konstituenter, konkatenering, en del av helheten helst inga träd 1

En exempelregel - ett bil exregel@exempelregler X(text="ett"), Y(wordcl=nn & gender=utr) corr(x.form(gender:=y.gender)) mark(x Y) action(scrutinizing) Granskas regelsyntax Några viktiga operatorer: & logiskt och logiskt eller! logiska negation = lika med!= inte lika med := tilldelningsoperator, matchningsvariabelsavskiljare konsekvenspil, avskiljer regelns vänster- och högerled Matchning av ord Matchningsvariabler: X Y Z osv. Orden ses som objekt med attribut och metoder. Textattribut: text= ord Särdragsatrribut Särdragsvärden wordcl=ordklass dt, nn, jj, gender= genus utr, neu num=numerus sin, plu, sin/plu spec=species ind, def, ind/def vbf=verbform prs, prt, sup X() matchar godtyckligt token Matchar bilen med en viss redundans: X(text= bilen & lemma= bil & wordcl=nn & gender=utr & num=sin & spec=def & case=nom) Unifiering eller attributjämförelser Punktnotation X.särdragsattribut=värde undef värde saknas X.gender!=Y.gender (X.gender!=undef & Y.gender!=undef & X.gender!=Y.gender) x:[gen=gen], y:[gen=gen] X(), Y(gender=X.gender) 2

Optionella sekvenser? Noll eller ett ord (hjälpregel) * Noll eller flera ord + Minst ett ord eller flera Namngivning av regelkategori och regler category regelkategori info( namngivning ) link( www namn på länk ) regelnamn@regelkategori X() action(regeltyp) Vänsterledets syntax Följande måste finnas med i vänsterledet: regelnamn@regelkategori regelbörjan X minst en matchningsvariabel Xn optionella matchningsvariabler konsekvenspilen Jag ser en bil. Jag ser den lilla bilen. Jag ser ett stort hus. X1(wordcl=dt), X2(wordcl=jj & gender=x1.gender & num=x1.num & spec=x1.spec), X3(wordcl=nn & gender=x2.gender & num=x2.num & spec=x2.spec) en litet bil ett liten hus X1(wordcl=dt), X2(wordcl=jj & num=x1.num & spec=x1.spec), X3(wordcl=nn & gender!=x2.gender & gender=x1.gender & num=x2.num & spec=x2.spec) mark corr jump info action link Högerledet det som skall markeras i texten korrektion av det som har matchats hopp i regelsamlingen eller förbi ord kommentar om felet vilken regeltyp det är, scrutinizing/help ev. länk till mer info om felet 3

Högerledets syntax Följande element måste finnas med: action(regeltyp) Viktiga metoder för ersättningsförslag insert (Y) tar Y som text, t.ex. Y.text och sätter in det före det angivna objektet, X.insert(Y) join (Y) tar Y som text enligt: X.join(Y.text) och sätter ihop dem till en textsträng (ord) delete tar bort det angivna objektet, enligt: X.delete(). replace(y) tar Y som text, Y.text, och ersätter det angivna objektet med Y, enligt X.replace(Y.text) Några viktiga metoder no_of_tokens Returnerar antalet ord som en matchningsvariabel innehåller form(särdrag:=särdragsvärde, ) Returnerar en ny ordform Generering av ersättningsförslag Här ligger några trevligt restauranger. Problem: Om varje ord i lexikonet kopplas explicit till alla dess böjningsformer blir lexikonet väldigt stort. Lösning: Basformen trevlig slås upp i lexikonet. Varje basform i lexikonet har en böjningsregel. Med hjälp av böjningsregeln för trevlig hittas den rätta formen trevliga. Viktiga funktioner smart_concat (X, Y) spell_ok (ord) spell_corr (felstavat_ord) Reglernas syntax regelnamn@regelkategori X() action(regeltyp) 4

Hjälpregler Npmin@ X(wordcl=dt wordcl=ps)?, Y(wordcl=jj)*, Z(wordcl=nn wordcl=pm) action(help, gender:=z.gender, num:=z.num, if X.wordcl=ps then spec:=def else spec:=z.spec end, case:=z.case) Npkonj@ (Npmin/X)(), Y(wordcl=kn), (Npmin/Z)() action(help, num:=plu) NP@ Npkonj action(help); ; Npmin action(help) Rekursiva hjälpregler En effektiv beskrivning/implementation av NP kräver rekursion. Vänsterrekursiva regler är ej tillåtna. En minigrammatik, del 1 NP@ (NPmin)() action(help); % stoppvillkor för PP (NPmPP)() action(help) En minigrammatik, del 2 NPmin@ % NP (DT PS) (JJ) NN X(wordcl=dt wordcl=ps)?, % optionell determinerare eller possessiv Y(wordcl=jj)*, % noll eller flera adjektiv Z(wordcl=nn) % ett substantiv action(help) NPmPP@ (NPmin )(), (PP)() action(help) En minigrammatik, del 3 % NP NPmin PP % det går inte att anropa NP här, då hade % regeln blivit vänsterrekursiv eftersom NP % NPmPP. % en eller flera prepositionsfraser PP@ % PP pp NP X(wordcl=pp), % en preposition (NP/Y)() % NP som kan innehålla 1 el. n PP action(help) 5

Kontextkänsliga regler Man vill tjuvkika på kontexten Bygga CG-liknande regler Statisk vänsterkontext En kontextkänslig regel A@ vänsterkontext, ENDLEFTCONTEXT, B(), BEGINRIGHTCONTEXT, högerkontext % A, regelhuvud % LC % B, regelkropp % RC action(help) Tillämpningar Omtaggningar Transformeringar Fras- och satsreduktion Högre nivå av taggning, t.ex. syntaktiska funktioner, satsadverbial NP-detektion, och andra fraser Satsgränsigenkänning Satstypigenkänning Omtaggning, taggaren gör ibland fel DT_WRONG@ X(wordcl!=dt), endleftcontext, Y(wordcl=dt), beginrightcontext, Z(wordcl!=dt & wordcl!=rg & wordcl!=ro & wordcl!=pc & wordcl!=jj & wordcl!=nn) action(help, wordcl:=pn, pnf:=sub, gender:=y.gender, num:=y.num, spec:=y.spec) Satsgränsigenkänning Varför är det bra att känna igen satser? Ejerheds experiment och algoritmer Text-till-tal Minskar sökrymden för granskningsreglerna Förbättrar precisionen hos NP-regler Koordineringsflertydighet [Gamla hundar eller katter] äter [fisken och köttet] [[Gamla hundar] eller [katter]] äter [fisken] och [köttet]. [Hunden äter köttet] och [katten äter fisken] [Hunden äter [köttet och katten]] [äter fisken] 6

Regler för satsgränsigenkänning eva11@ V(sed!=sen & text!="som" & wordcl!=sn), X((wordcl=pn & pnf=sub) (wordcl=pm & case=nom) (wordcl=nn & case=nom & V.case!=gen) wordcl=ab), ---ENDLEFTCONTEXT---, Y(wordcl=kn), ---BEGINRIGHTCONTEXT---, Y2(((wordcl=pn & pnf=sub) (wordcl=pm & case=nom) (wordcl=nn & case=nom) wordcl=ab) & wordcl=x.wordcl), Z(wordcl=vb & (vbf=prs vbf=prt vbf=imp)) % vbf=sup)) action(help, wordcl:=y.wordcl) Autentiskt exempel Visst hade vi våra funderingar, han har inte tävlat sedan 5 januari, han har inte som Johann Mühlegg laddat länge på hög höjd. <clause> <ph type="ab" pos="2">visst</ph> <ph type="vb" pos="3">hade</ph> <ph type="npmin" pos="4">vi</ph> <ph type="npmin" begin="5" end="6" repr="nn.utr.plu.def.nom">våra funderingar</ph> </clause> <clause> <ph type="mid" pos="7">,</ph> <ph type="npmin" pos="8">han</ph> <ph type="vb" begin="9" end="11" repr="vb.prt.akt">har inte tävlat</ph> <ph type="ab" pos="12">sedan</ph> <ph type="ab" pos="13">5 januari</ph> </clause> <clause> <ph type="mid" pos="14">,</ph> <ph type="npmin" pos="15">han</ph> <ph type="vb" pos="16">har</ph> <ph type="ab" pos="17">inte</ph> <ph type="kn" pos="18">som</ph> <ph type="nppm" begin="19" end="20" repr="pm.nom">johann Mühlegg</ph> <ph type="vb" pos="21">laddat</ph> <ph type="ab" pos="22">länge</ph> <ph type="pp" begin="23" end="25" repr="ab">på hög höjd</ph> <ph type="mad" pos="26">.</ph> </clause> Fras- och satsreduktion Den gamle mannen letar efter sin gamla hatt med det blå bandet.! Mannen letar efter hatten. Jag känner popstjärnan som står där borta vid baren.! Jag känner popstjärnan vid baren. Jag känner popstjärnan. 7

minnp@reduc X(wordcl=dt wordcl=ps), Y(wordcl=jj)*, Z(wordcl=nn) corr(x.delete() Y.delete() Z.form(spec:=def)) action(scrutinizing) Jämförelse med CG ( <ett> =s!@err) (1C N-UTR)) cg1@kong X(text= ett ), Y(A(lex.wordcl=nn & lex.gender=utr)) corr(x.form(gender:=utr)) action(scrutinizing) Finite-state parsning för grammatikkontroll Cooper & Sofkova 1998 % Den grova regeln (Broad grammar) define NP [dt jj* nn]; % de finare reglerna define Npdef[dt_def jj_def* nn_def]; define Npind[dt_ind jj_ind* nn_ind]; % Den felaktiga frasen skall finnas i NP men inte i Npdef eller Npind: NP [Npdef Npind]; Jämförelse med finite-state grammars NP@ X1(wordcl=dt), X2(wordcl=jj)*, X3(wordcl=nn) action(help) % Hjälpregel 2: NPunion@ X1(wordcl=dt), X2(wordcl=jj & spec=x1.spec)*, X3(wordcl=nn & spec=x1.spec) action(help) % Granskningsregeln: (NP)() ~ (NPunion)() info( kommentar ) Behov av språklig granskning Datorn är det viktigaste skrivverktyget Det är enkelt att producera text som ser bra ut, men problemen med formuleringar av innehållet kvarstår Det är enkelt att producera mycket text mer skrivande - mindre läsning och granskning Kraftfulla redigeringsmöjligheter ger upphov till att språkfel uppstår Datorn som språkgranskare Fördelar: outtröttlig tillgänglig snabb Men: fragmentarisk ger falska alarm 8

Vad tillför forskning om automatisk språkgranskning? Kommersiella program långt ifrån kompletta eller perfekta Många problem fortfarande olösta Kunskap om verktygens användning och effekter på språk och skrivande Forskningsbakgrund Språkliga datorstöd för skrivande, Kerstin Severinson Eklundh (1992) Stavningskontroll med Stava, Kann & Hollman (1992) Plita (1994) Granska (1996) Granska + Stava = sant (1998) Språkgranskning och skrivprocessen Revisionsprocessen Skrivprocessen enligt Flower & Hayes (1981) Planering Textproduktion Granskning/revision Skribenten rör sig mellan processerna ny textproduktion kräver ny granskning osv. Detektion Diagnos Revision Felet markeras Felet förklaras Ersättningsförslag presenteras Metoder för grammatikkontroll 1. Grammatisk analys av texten 2. Fenomenbaserad granskning 3. En kombination av 1 och 2 Granskas angreppssätt Specifika felregler Mer omfattande grammatisk analys endast när det behövs Statistisk analys i botten för hantering av oförutsägbara konstruktioner, t.ex. texter med många fel i. 9

Två olika användare av Granska länsstyrelsen Skribenten en vuxen person med svenska som modersmål Regelkonstruktören/lingvisten den som konstruerar reglerna i Granska Granskas mest eftersökta feltyper Inkongruens i nominalfraser: ett villa Särskrivna sammansättningar: en hus bil Inkongruens i predikativ: Mannen är glada Andra feltyper som Granska detekterar Felaktiga sammansättningar: undertiden Objektsform efter preposition: skicka brev till de Fel i verbfras: Vi kommer spela en låt Ordföljdsfel: De sjöng trots att han spelade inte låten längre. Inkongruens i nominalfraser I Hon bor i det gröna villan. Språkgranskning är en av språkteknologins viktigaste tillämpningsområden Han hade fickorna fylld med guld. Inkongruens i nominalfraser: problem Han var motståndare till ett gatans parlament i staden. I går utlöste den nya hot Semantisk kongruens: Statsrådet själv vs. Statsrådet självt Paul Weller är en av undantagen 10

en litet bil ett liten hus kong1@kong X1(wordcl=dt), X2(wordcl=jj & num=x1.num & spec=x1.spec), X3(wordcl=nn & gender!=x2.gender & gender=x1.gender & num=x2.num & spec=x2.spec) action (scrutinizing) corr (X2.form(gender:=X3.gender)) Särskrivna sammansättningar I En ljus hårig sjuk sköterska satt vid en bar disk. Mellan 12 och 16 kollar vi glykolhalt och spolar vatten och olja på din bil. Jag har köpt en ny rygg säck. Han dömdes för miss handel av hovrätten. Särskrivna sammansättningar II en mans röst vs. en mansröst Du kan få älgen som del betalning. delbetalning Men inte: Hon tog det som en del betalning. Vi jagade en del älg. Särskrivna sammansättningar: några lösningar Utnyttja kongruens/inkongruens: ett cykel ställ Stava: cykelställ är en godkänd sammansättning Satsgränsigenkänning (Ejerheds algoritm) Accepterande regler Taggning av felaktiga konstruktioner Här taggas hylla som nomen: Vi har köpt en bok hylla sa Per. Här taggas hylla som verb: Vi har köpt en bok hylla på IKEA sa Per. Hur man skriver regler för att hitta felaktiga särskrivningar I grova drag för t.ex. språk granskning eller signal detektionsteori: 1. Leta upp två substantiv i obestämd form som står i följd. Korrekta detektioner: I grova drag för t.ex. språk granskning eller signal detektionsteori Anpassa sig till taggaren? Tillgång till fler tolkningar av ordet + lexikal sannolikhet Falska alarm: Jag kan tänka mig att en massa bedömare har gjort en rad studier i ämnet. 11

3. Använd Stava 2. Ta bort så många falska alarm som möjligt. Ställ ytterligare krav på matchningen. språk språkgranskning granskning Viktigaste kravet: det första substantivet får inte tillhöra gruppen substantiv som kan utgöra en måttapposition, t.ex. grupp, antal, rad, massa. Felstavat! Stava Rättstavat! Inget alarm Felet signaleras Särskrivningsregel saer3@särskrivning X(wordcl=substantiv & spec=ind & case=nom & nntype!= set & nntype!=dat), Y(wordcl=substantiv & spec=ind & spell_ok(smart_concat(x.text, Y.text)) mark(x Y) corr(x.join(y.text)) info( Felaktig särskrivning ) Inkongruens i predikativ I Mannen är glada Mannen är glad/männen är glada Problemet med den kommunala fördelningen från inkomstskatter för säsongsanställda är svår att lösa inom befintligt skattesystem. Inkongruens i predikativ: problem Längre beroenden som är svåra att analysera Strukturella flertydigheter Inkongruens kan vara det riktiga Gröt är gott Gröt är god En ny utrikesminister vore inte så dum En ny utrikesminister vore inte så dumt Inkongruens i predikativ: några dellösningar Omfattande nominalfrasanalys Hittar fler fel, men ger också nya falska alarm Godkänna många konstruktioner: Gröt är gott gröt är bränt Många olösta problem Feltypen kräver i många fall semantisk analys 12

Hjälpregler En liten by NPmin@ X(wordcl=dt), Y(wordcl=jj)*, Z(wordcl=nn) action(help, gender:=z.gender, num:=z.num) System av hjälpregler en liten by en liten by på landet NP@ (NPmin)() action(help); (NPmPP) action(help) Den gamle mannen är glada Den gamle mannen på bänken är glada predex@pred (NP)(), X(wordcl=vb & vbt=kop), Y(wordcl=jj & num!=np.num) corr(y.form(num:=np.num)) Utvärdering av Granska på fem texttyper Problem med utvärderingar: Hur mycket text behövs? I vilket skick är texten? Mycket manuellt arbete Människor hittar inte alla fel och gör felbedömningar Ersättningsförslag svåra att bedöma utan användare Täckning och precision Täckning = antal korrekta alarm/alla fel 100 % täckning = 10 av 10 fel upptäcks Precision = antal korrekta alarm/alla alarm 100 % precision = 10 av 10 felrapporter är korrekta Dragkamp mellan täckning och precision Vad vill användaren ha? Andra utvärderingar Critique (Jensen et al) 39-70 % korrekta alarm beroende på användarkategori Birns utvärdering av Grammatifix: Täckning 35 % och precision 70 % (nyhetstext). Bredenkamp et al utvärderade två mänskliga granskare: upptäcker 7 resp. 8 av 10 fel 13

Fem texttyper Sportnyheter 63 568 ord Utrikesnyheter 20 881 ord Myndighetstexter 36 667 ord Populärvetenskap 32 386 ord Gymn.- och högskoleuppsatser 47 517 ord -------------------------------------------------------- 201 019 ord (400 A4) Felfrekvenser Fel i verbkedjan 21 % Särskrivna sammansättningar 18 % Inkongruens i nominalfraser 17 % Inkongruens i predikativ 4 % Stavfel med gram-sem konsekvens 13 % Jag har hjort läxan Ord saknas 13 % Han kör? grön bil Några resultat Begränsad undersökning I populärvetenskaplig text upptäcktes 9 av 10 fel, 5 av 10 felrapporter var korrekta Gymn.- och högskoletexter upptäcktes 4 av 10 fel, 7 av 10 felrapporter var korrekta Utvärdering med användare Försöksuppgift: Granska en preparerad text med Granska och Words GK Observationer: Ersättningsförslag Felaktig diagnos Falska alarm Flera olika diagnoser och ersättningsförslag diagnos ersättningsförslag ett cykel ställ särskrivning ett cykelställ ett cykel ställ kongruensfel en cykel ställ Utvärdering med användare Falska alarm: Stavfel vållade inga problem (i denna undersökning) Mer komplicerade feltyper fick användarna att ändra i texten Språkligt skickliga skribenter nöjer sig med detektionen av felet, diagnos och ersättning utförs på egen hand. 14

Utvärdering med användare Ersättningsförslagen är viktiga för att ställa rätt diagnos. Vid flera alternativ, valde användarna i nästan samtliga fall ett korrekt. Lärdomar: Svårt att följa användare som granskar med s.k. kontinuerlig granskning Intressantare om användarna får arbeta med sina egna texter Framtida arbete Olika fel har olika lång bearbetningstid för användaren, gäller även falska alarm. Ett falskt alarm från stavningskontrollen går snabbt att avfärda. Det finns många fel kvar att detektera! Stavfel med grammatisk/semantisk konsekvens och Ord saknas Granska en experimentell miljö En öppnare arkitektur för experiment med olika tokeniserare, lexikon, taggare, hjälpregelsamlingar osv. Mer grundläggande analys behövs, t.ex. algoritmer för igenkänning av syntaktiska funktioner Användaranpassning av Granska Andraspråksinlärare och användare med speciella behov Andra behov av språklig hjälp Om en mening innehåller många fel är den synnerligen svår att analysera Nya krav på gränssnitt och innehåll 15