språkgranskning, ht 2007

Relevanta dokument
Maskinöversättning och språkgranskning, ht 2006

Språkgranskningsverktyg, vt 2008

Språkgranskningsverktyg, vt 2009

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

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

Maskinöversättning och språkgranskning F5 Allmänt om språkgranskning + ordkontroll

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

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

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

Grundläggande textanalys, VT 2011 Stavnings- och grammatikkontroll i Microsoft Word. Eva Pettersson UU/Convertus

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

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

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

Lingvistik I Delmoment: Datorlingvistik

Lingvistik I Delmoment: Datorlingvistik

Målet är att ge maskiner förmågan att plocka ut information ur

Grundläggande textanalys, VT2013

Grundläggande textanalys. Joakim Nivre

Tekniker för storskalig parsning

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

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

Lingvistik I Delmoment: Datorlingvistik

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

Stränglikhet Manchester United vs Manchester Utd. B A R A N S Ö L E N

Missplel ett generellt verktyg för generering av stavfel

Taltaggning. Rapport av Daniel Hasselrot , 13 oktober 2003

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

Obesvarade frågor från F4

Statistisk Maskinöversättning eller:

Språkgranskningsverktyg. F1: Introduktion

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

Språkgranskningsverktyg, vt 2009

Kungl. Tekniska högskolan NADA Grundformer med Stava

Identifiering av ordvitsar med Granska

b) NY KURS (Ange kursnamn, årskurs, önskad läsperiod, schemablocksplacering. Bifoga utkast till kursplan.)

Kom igång med SpellRight

Vad kan statistik avslöja om svenska sammansättningar?

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

språkgranskning, ht 2007

Statistisk grammatikgranskning

TDDD02 Språkteknologi för informationssökning / Ordpredicering. Marco Kuhlmann Institutionen för datavetenskap

Datorlingvistik och språkteknologi

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

Språkteknologi och Open Source

Hur hanterar stavningskontrollerna. texter skrivna av skolbarn? en utvärdering av Stava Rex och Microsoft Word 2007.

Eva Ansell Ulrika Nilsson WORD 2008 MICROSOFT. för Mac

Teoretisk lingvistik och datalingvistik. Robin Cooper

Österlengymnasiet

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

Cristina Eriksson oktober 2001

TDDD02 Språkteknologi för informationssökning (2016) Introduktion. Marco Kuhlmann Institutionen för datavetenskap

Skäl för revideringarna är att kursplanerna tydligare ska spegla kursernas innehåll och mål.

Nederländska I A 15 högskolepoäng. Välkommen till Nederländska I A, 15 högskolepoäng

TDDD02 Språkteknologi för informationssökning (2016) Ordpredicering. Marco Kuhlmann Institutionen för datavetenskap

Uppgift 1 (grundläggande konstruktioner)

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Använda SpellRight 2 i Word 2010

Kursplan för kurs på grundnivå

Lathund för Stava Rex

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på layout, ett GUI-baserat program Frågor

SPRÅKTEKNOLOGIPROGRAMMET

Projektförslag. Datalingvistisk projektkurs VT mars 2007

Matematiska metoder för språkvetare, 7,5 hp

ViTal. Talsyntes. Användarhandledning

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

FOR BETTER UNDERSTANDING. Kom igång med. WordFinder Snabbguide

Kursbeskrivning med litteraturlista HT-13

Språkvetenskapliga och psykologiska perspektiv inom logopedi, 15 hp

SOLP02, Rättssociologi i teori och praktik, 15 högskolepoäng Socio-Legal Theory and Practice, 15 credits Avancerad nivå / Second Cycle

Nederländska I 30 högskolepoäng Termin 1 (15 högskolepoäng) Välkommen till Nederländska I, 30 högskolepoäng

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

Kursplaneöversättaren. Lina Stadell

Socialpsykologiska teorier, 7,5 hp

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1

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

Föreläsningar Lektioner Laborationer Projekt Tentamina Inlämningsuppgifter Seminarier Annat. D-sektionen IT

Grammatik, det fixar väl datorn?

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

Kursplan för kurs på grundnivå

SpellRight. för Mac. Innehåll. Rättstavning på engelska. Inställningar...13 Allmänt...13 Ordlistor SpellRight för Mac i korthet...

Objektorienterad Programmering Övningsuppgifter

Skriftspråk i förändring möter förlegade skrivstöd

Objektorienterad programmering och Java

Tentamen Marco Kuhlmann

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

Word- sense disambiguation

Inlämningsuppgift: Pronomenidentifierare

INSTITUTIONEN FÖR SPRÅK OCH LITTERATURER

Språkteknologiska stöd. Förskolor. Stemming. Slå ihop till samma ord

DAB760: Språk och logik

ÄEND01, Engelska 1, 30 högskolepoäng English 1, 30 credits Grundnivå / First Cycle

KSMB43, Matkultur: Konsumtion och produktion, 15 högskolepoäng Food Culture, Consumption and Production, 15 credits Grundnivå / First Cycle

EMG:s väg till examensarbeten av mycket hög kvalitet

Använda Stava Rex i Word 2010

Lathund för SpellRight

G2E, Grundnivå, har minst 60 hp kurs/er på grundnivå som förkunskapskrav, innehåller examensarbete för kandidatexamen

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Hjälper dig att kontrollera din text efter felstavningar och lättförväxlade ord. Manual

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?

Så här fungerar Stava Rex

Transkript:

Maskinöversättning och språkgranskning, ht 2007 Föreläsning 2 Stavningskontroll evapet@stp.lingfil.uu.se 1

Föreläsningsöversikt Kursöversikt Allmänt om språkgranskning Allmänt om stavningskontroll Stavningskontroll: feligenkänning Stavningskontroll: felkorrigering Inlämningsuppgift 2

Kursplan - Syfte 5 poäng, grundnivå, huvudområde: språkteknologi Mål: Kursen ger grundläggande kunskaper om metoder, datastrukturer och algoritmer som används vid maskinöversättning och i språkgranskningssystem. 3

Kursplan - Innehåll Kursen behandlar olika metoder för maskinöversättning och datorstödd översättning, bl.a. regelbaserade system som arbetar med särdragsstrukturer. Kursen behandlar också metoder för språkgranskning och för användning av kontrollerat språk. 4

Examination Aktivt deltagande i undervisningen Muntlig presentation av fördjupningsuppgift Genomförande av laborationer och inlämningsuppgifter med skriftlig rapportering. Kursen betygsätts enligt följande: inlämningsuppgift om stavningskontroll: 0,5 poäng labb om grammatikkontroll: 1 poäng labb om statistisk maskinöversättning: 1 poäng labb om regelbaserad maskinöversättning: 1,5 poäng fördjupningsuppgift inom valfritt område: 1 poäng 5

Språkgranskning Stavningskontroll Grammatikkontroll Stilkontroll Applikationer för svenska: Microsoft Word SCARRIE Granska (Stava) Skribent 6

Vad förväntas av det ideala stavningskontrollprogrammet? Känna igen och larma för alla felstavade ord Känna igen och acceptera alla rättstavade ord Ge ett korrekt rättningsförslag för alla felstavade ord 7

Mer realistiska förväntningar Känna igen och larma för de mest frekventa och lättidentifierade felstavningarna Känna igen och acceptera alla rättstavade ord, som är tillräckligt frekventa i språket Ge ett troligt rättningsförslag för alla felstavade ord (frekvens) 8

Stavningskontrollens två delar 1) Feligenkänning att hitta felen 2) Felkorrigering att ge ersättningsförslag 9

Feligenkänning i Microsoft Word

Felkorrigering i Microsoft Word

Feligenkänning Isolerade ord stavfel som resulterar i icke-ord: och --> coh Ord i kontext stavfel som resulterar i riktiga ord (real word errors): jag er dålig på att stava språk tekn olog i är kul bättre korrigeringsförslag: det är sår t att stava Word 2003 föreslår: såret, svårt, sårat, såt, sått 12

Feligenkänningsstrategier Lexikon Fullformslexikon vs stamlexikon Lexikonstorleken avgörande: För stort lexikon = många fel missas (låg täckning) För litet lexikon = många falska alarm (låg precision) Trigram av tecken Används mest inom OCR Ovanliga trigram antas utgöra felstavningar 13

Feligenkänning m.h.a. lexikon Problem: språket är produktivt omöjligt att lista alla ord i lexikonet Brist på täckning kan lura skribenten att faktiskt stava fel, t. ex. särskriva sammansättningar: jätte trött 14

Feligenkänning m.h.a. lexikon Kompletterande strategier: Morfologiska regler för t.ex. avledningar Sammansättningsregler Egennamnsigenkänning Samförekomst: Stoet och dess fol -> fel eller föl? Tillåt användaren att lägga till egna ord i lexikonet 15

Feligenkänning: sammansättningar Enklast strategi: ord = ord + ord dator + lingvistik = datorlingvistik Förfinad strategi: ord = förled + ord flicka + klänning = flickklänning äpple + paj = äppelpaj kvinna + parti = kvinnoparti cigarr + rök = cigarrök 16

Feligenkänning: sammansättningar Lösning: Lista alla fogeformer i lexikonet Problem: Sammansättningar bildas rekursivt och fogeformen kan ändras i flerledade sammansättningar: kakdeg ---> pepparkaksdeg barnbokhylla/barnbokshylla 17

Feligenkänning: sammansättningar Sms-analys minskar antalet falska alarm Sms-analys kan dock öka antalet missade fel! Missade fel i Word97: kotakt kontakt makelera makulera medalg medalj cykelsäll cykelställ särkskilt särskilt 18

Några frågeställningar kring feligenkänning Hur göra med sällsynta/fackspråkliga ord, som ligger nära felskrivningar av frekventa ord? verv/värv (verv = kraft, livfullhet, glöd enligt SAOL) boke/boken (boke = bokvirke) Dialektala ord? Hur sträng bör man vara? (mej, direktörn) 19

Feligenkänning: sammanfattning Måste ta hänsyn till kontexten: Real Word Errors Två strategier: Lexikon, vanligast Trigram, främst inom OCR Ordlistans storlek är avgörande: För stort lexikon -> många fel missas För litet lexikon -> många falska alarm Språket är produktivt kompletterande strategier behövs 20

Felkorrigeringens två delar 1) Ta fram ett antal korrigeringskandidater 2) Rangordna korrigeringskandidaterna 21

Felkorrigering: feltyper Kompetensfel Fonetiska fel: restaurang ---> resturang Homofonfel: gott ---> gått Performansfel Insättning språkteknologii Borttagning spåkteknologi Substitution sprokteknologi Transposition spårkteknologi 22

Felkorrigering: feltyper Kompetensfel eller performansfel? tunnt Feltyp ofta inte nödvändig att fastställa för att få fram lämpligt korrigeringsförslag, dock: Kompetensfel: hemta ---> hämta, hämtade Performansfel: hemta --> hemtam 23

Felkorrigering: empiriskt grundade iakttagelser De flesta felstavningar är performansfel (insättning, borttagning, substitution eller transposition) De flesta felstavningar påverkar inte ordets längd med mer än en bokstav Första bokstaven i ordet är sällan felaktig Tangenternas placering påverkar Bokstävernas frekvenser påverkar 24

Korrigeringsstrategier Minimum Edit Distance Likhetsnycklar N-gramsbaserade tekniker Regelbaserade tekniker Probabilistiska tekniker Neurala nätverk 25

Minimum Edit Distance Stränglikhet Minsta antalet editeringsoperationer som behövs för att omvandla en sträng till en annan Editeringsoperationer: Insättning Borttagning Substitution (alt. borttagning + insättning) Transposition (alt. borttagning + insättning) 26

Minimum Edit Distance dist(0,0) = 0 dist(i,0) = i dist(j,0) = j dist(i-1, j) + 1 (insättning) dist(i,j) = min dist(i, j-1) + 1 (borttagning) dist(i-j, j-1)+ d(s i, t j ) (substitution) där i är strängen s fram till i:te tecknet, och j är strängen t fram till j:te tecknet, och d(s i,t j ) är 0 om s i =t j och 1 i övriga fall 27

Minimum Edit Distance r ä n g n a r e g n a r substitution + insättning + borttagning = 3 28

Minimum Edit Distance 29

Minimum Edit Distance 30

Minimum Edit Distance 31

Likhetsnycklar Strängar matchas mot nycklar Ord som stavas på liknande sätt har likadana eller nästan likadana nycklar 32

Likhetsnycklar: SOUNDEX SOUNDEX: Indexing on Sound Odell & Russel, 1918 (!) Fonetisk likhet Vokaler ignoreras Konsonanter grupperas tillsammans om de liknar varandra fonetiskt Användning: Flygbokningssystem (Davidson 1962) 33

Likhetsnycklar: SOUNDEX 1) Behåll det första tecknet 2) Ersätt efterföljande tecken enligt nedan: a, e, i, o, u, y, h, w: 0 b, f, p, v: 1 c, g, j, k, q, s, x, z: 2 d, t: 3 l: 4 m, n: 5 r: 6 3) Ta bort alla nollor 4) Ta bort alla på varandra följande dubbletter 5) Spara de tre första siffrorna 34

Likhetsnycklar: SOUNDEX disappoint disapont ---> D215 ---> D215 Ersättningsförslag för disapont: disband, disbands, disbanded, disbanding, disbandment, disbandments, dispense, dispenses, dispensed, dispensing, dispenser, dispensers, dispensary, dispensaries, dispensable, dispensation, dispensations, deceiving, deceivingly, despondent, despondency, despondently, disobeying, disappoint, disappoints, disappointed, disappointing, disappointedly, disappointingly, disappointment, disappointments, disavowing 35

N-gramsbaserade tekniker Stränglikhet: andelen gemensamma n-gram (trigram) Likhet(i, j) = 2C/(n+n ) där n är antalet trigram i i och n är antalet trigram i j och C är antalet trigram gemensamma för i och j 36

N-gramsbaserade tekniker Hur lika är concider och consider? ##c #co con onc nci cid ide der er# r## ##c #co con ons nsi sid ide der er# r## C (antalet gemensamma trigram) = 7 n (antalet trigram i concider) = 10 n (antalet trigram i consider) = 10 Likhet(concider, consider) = 2C/n+n = 14/20 = 0,70 37

N-gramsbaserade tekniker Hur lika är concider och cider? ##c #co con onc nci cid ide der er# r## ##c #ci cid ide der er# r## C (antalet gemensamma trigram) = 6 n (antalet trigram i concider) = 10 n (antalet trigram i cider) = 7 Likhet(concider, cider) = 2C/n+n = 12/17 = 0,71 38

N-gramsbaserade tekniker Modifierat likhetsmått: Likhet(i, j) = C/max(n, n ) Likhet(concider, consider) = 7/10 = 0,70 Likhet(concider, cider) = 6/10 = 0,60 39

Felkorrigering: sammanfattning Två uppgifter Ta fram ersättningsförslag Rangordna ersättningsförslagen Kompetensfel vs performansfel Exempel på korrigeringsstrategier: Minimum Edit Distance Likhetsnycklar N-gramsbaserad korrigering 40

Hemuppgift Antag att en skribent av misstag har skrivit in käran. Antag vidare att ett stavningskontrollprogram har kommit fram till att det rör sig om en felstavning och att möjliga ersättningsförslag är tjäran och kärran. Hur skulle dessa ersättningsförslag rangordnas enligt det (modifierade) n-gramsbaserade måttet? Illustrera dina uträkningar! Hur skulle ersättningsförslagen rangordnas enligt Minimum Edit Distance? Illustrera genom att rita upp matriserna! Kommentera dina resultat. Är rangordningen lika bra för alla typer av skribenter? Skulle båda alternativen finnas med bland ersättningsförslagen om man istället hade använt sig av likhetsnycklar på samma sätt som i SOUNDEX? Varför/varför inte? Kommentera! 41

Referenser Karen Kukich, 1992, Techniques for Automatically Correcting Words in Text Daniel Jurafsky & James H. Martin, 2000 (avsnitt 5.1 5.6), Speech and Language Processing Roger Mitton, 1996, Spellchecking by Computer. http://www.dcs.bbk.ac.uk/~roger/spellchecking.html 42