Presentation laddar. Vänta.

Presentation laddar. Vänta.

Grammatikkontroll för skribenter med svenska som andraspråk Johnny Bigert, Viggo Kann, Ola Knutsson och Jonas Sjöbergh KTH Nada Stockholm, Sverige.

Liknande presentationer


En presentation över ämnet: "Grammatikkontroll för skribenter med svenska som andraspråk Johnny Bigert, Viggo Kann, Ola Knutsson och Jonas Sjöbergh KTH Nada Stockholm, Sverige."— Presentationens avskrift:

1 Grammatikkontroll för skribenter med svenska som andraspråk Johnny Bigert, Viggo Kann, Ola Knutsson och Jonas Sjöbergh KTH Nada Stockholm, Sverige

2 Grammatikkontroll i CALL Behov: Lärarna vill ha bort låg-nivå fel Eleverna vill inte upprepa fel Skapa “feedback” på elevers fria textproduktion Diskussion: Är det bra eller dåligt att fokusera på fel? Missade fel och falska alarm?

3 Räcker inte reglerna till? Varför inte fullparsning (deep parsing)? Kan man hitta alla fel i en text? Grammatiskt/acceptabelt Hur skall man analysera en text som är full av fel?

4 Tre metoder för grammatikkontroll Granska – handskrivna regler ProbGranska – statistik MLGranska – regler skapas automatiskt

5 Granskas uppbyggnad Tokeniseraren Taggaren Lexikon (SUC & SAOL) Statistik (SUC) Regelmatcharen Regler (300 regler) Ordböjningsfunktion Grafiskt gränssnitt Interaktion med användaren

6 Kvinnannn.utr.sin.def.nom hadevb.prt.akt.aux köptvb.sup.akt endt.utr.sin.ind nyjj.pos.utr.sin.ind.nom husnn.neu.plu.ind.nom bilnn.utr.sin.ind.nom

7 { X(wordcl=nn & spec=ind & case=nom), % hus Y(wordcl=nn) % bil --> mark(X Y) corr(X.join(Y.text)) action(scrutinizing) }

8 ProbGranska: Detektion av kontextkänsliga stavfel Vi vill hitta oförutsägbara fel, t.ex. för  frö Vi använder en hybridmetod: Statistik över taggtrigram (DT JJ NN 23000) från SUC (1 miljon ordklasstaggade ord) Lingvistisk kunskap för frastransformationer/reduktioner

9 Jagpn.utr.sin.def.sub harvb.prs.akt.aux en dt.utr.sin.ind liten jj.pos.utr.sin.ind.nom hundnn.utr.sin.ind.nom sa vb.prt.akt mannennn.utr.sin.def.nom. mad

10 En första ansats Algoritm: För varje position i i indataströmmen om frekvensen av (t i-1 t i t i+1 ) är låg i referenskorpus rapportera fel till användaren rapportera inget fel

11 Glesa data (sparse data) Glesa data för taggtrigramsstatistik – oändligt stort korpus saknas. Fras- och satsgränser kan skapa nästa vilka trigram som helst.

12 Exempel på glesa data ”Det är varje chefs uppgift att …” Det är varje taggas som pn.neu.sin.def.sub/obj, vb.prs.akt, dt.utr/neu.sin.ind och har frekvensen noll. dt.utr/neu.sin.ind är ovanlig, 709 förekomster i SUC.

13 Ersätt en tagg med en annan liknande tagg Vi försöker ersätta: Det är varje chefs uppgift.. med Det är en chefs uppgift.. (pn.neu.sin.def.sub/obj, vb.prs.akt, dt.utr.sin.ind) Vi får upp taggfrekvensen till 231

14 Olika taggbyten är olika bra Vi måste ha viktade trigram. Vi använder statistik ur korpus för att få fram relevanta vikter.

15 Metoden är bra på att hitta fel … men ger fortfarande ifrån sig många falska alarm. Förbättra metoden med lingvistisk kunskap

16 Sats- och frasigekänning med ytparsning Använd satsen som analysenhet för feldetektionen. Transformera ovanliga fraser till frekventa Ersätt frasen med dess huvud Ta bort en del fraser (AdvP, PP).

17 Frastransformationer Exempel: Alla hundar som är bruna är lyckliga Hundarna är lyckliga NP

18 Slutsatser Metoden är bra på att identifiera kontextkänsliga stavfel. Med lingvistisk kunskap kan metoden få högre precision Metoden bör kunna skalas upp till n-gram över fras och därmed bör mer strukturella fel kunna upptäckas (framtida forskning)

19 MLGranska: Maskininlärning för feldetektion Se problemet som ett taggningsproblem Märk upp felen t.ex. med taggen ERROR och resten med OK Träna en maskininlärningsalgoritm (t.ex. TBL) på det annoterade materialet + material med korrekt text. Utvärdera på ett okänt men annoterat material.

20 MLGranska Vi behöver många fel Idé: Skapa fel automatiskt Träna en maskininlärningsalgoritm på detta material. Automatisk annotering. Förlåtande felgenerering. Skapa en “feltaggare” för varje feltyp

21 Skapa träningsdata 1. Ta en referenskorpus 2. Ta en kopia av denna referenskorpus. 3. Skapa särskrivningsfel i denna – märk upp dessa ERROR 4. Övriga ord märks upp med OK i de två korpusarna.

22 FamiljenNNOK boddeVBOK i PPOK ett DTOK hus NNOK och KNOK körde VBOK en DTOK miljövänligJJOK bil NNOK.MADOK

23 KvinnanNNOK hade VB OK köpt VBOK en DT OK ny JJOK hus NNERROR bilNNERROR.MAD OK

24 Hur går träningen till? Regelmallar, ord/tagg före/efter Ta en kopia av träningskorpusen för att få en träningsmängd och ett “facit”. Applicera en initialgissning på träningsmängden = för varje ord – vilken tagg är vanligast? Skapa regler utifrån regelmallarna Välj ut de regler som gör träningsmängden mer lik “facit”. Välj bästa regeln, applicera denna, kolla nästa bästa regel.

25 KvinnanNNOK hade VB OK köpt VBOK en DT OK ny JJOK hus NNOK bilNNOK.MAD OK

26 NN OK + NN OK  NN ERROR + NN ERROR KvinnanNNOK hade VB OK köpt VBOK en DT OK ny JJOK hus NNERROR bilNNERROR.MAD OK

27 MLGranska möter en ny text 1.Ordklasstagga orden 2.Gör en initialgissning 3.Tillämpa de genererade reglerna 4.Förhoppningsvis har felen taggats med taggen ERROR 5.Alla särskrivningar kontrolleras mot stavningskontrollen Stava

28 MLGranska Fördelar: Begränsad manuell insats En taggare per feltyp kan ge bra diagnos och även ersättningsförslag (åtminstone för särskrivningar). Nackdelar: Varje feltaggares enskilda falsklarm kan resultera i många falsklarm om man sätter ihop dem i ett verktyg.

29 Slutsatser Metoderna upptäcker olika fel – överens ibland Fördelar/nackdelar med varje metod? Vilka fel kommer vi fortfarande inte åt? Vi har jämfört metoderna på “felsamlingar” Just nu gör vi jämförelser på balanserat textmaterial


Ladda ner ppt "Grammatikkontroll för skribenter med svenska som andraspråk Johnny Bigert, Viggo Kann, Ola Knutsson och Jonas Sjöbergh KTH Nada Stockholm, Sverige."

Liknande presentationer


Google-annonser