Koala - Korps lingvistiska annotationer, att utveckla en infrastruktur för text-baserad forskning med högkvalitativa annotationer
Målet för Koala-projektet är att förbättra annoteringarna, som har skapats automatiskt med välkända språkteknologiska metoder. Det görs genom att lägga till språklig kunskap i systemet via de många resurser som finns tillgängliga via Språkbanken, samt genom att kombinera de olika annoteringsverktygen för lexikal analys, ordklasstaggning, betydelsedisambiguering och syntaktisk analys till ett högkvalitativt system där annoteringar på ord- och meningsnivå informerar varandra och där systemet inte fattar beslut innan det har all tillgänglig information. De data och verktyg som blir resultatet kommer att göras fritt tillgängliga.
Huvudmålet för infrastrukturprojektet Koala - Korps lingvistiska annotationer - har varit att förbättra de analysverktyg som används för att märka upp texterna i forskningsinfrastrukturen Korp (<https://spraakbanken.gu.se/korp>) med lingvistisk information, s.k. annotering, som ordklasser och syntaktiska funktioner. Korp innehåller en stor mängd texter,på i huvudsak svenska, som forskare och allmänhet kan söka i fritt, för att undersöka t ex hur vanligt ett ord eller språkligt fenomen är eller hur språket har förändrats över tid. Annoteringen är nödvändig för att göra de stora textmängderna bättre sökbara. Primäranvändaren har ett språkligt intresse, men även användare med andra intresseområden kan utforska sina frågor, som samhällsvetare, historiker, m fl.
Vi har arbetat med att förbättra en mängd olika analysnivåer, men också på ett mer övergripande plan hur de olika analyserna samspelar, samt tvetydighet, skalbarhet och spårbarhet. Mängden text i Korp har sedan projektstarten ökat från ca 1-2 miljarder ord till runt 15 miljarder idag, och fortsätter att öka.
Även om Korp är det mest framträdande skyltfönstret för projektets resultat gentemot användarna av forskningsinfrastrukturen, så är insatserna oerhört viktiga också för övriga delar av forskningsinfrastrukturen inom Språkbanken. Analysverktygen finns tillgängliga för användning på andra texter än de som finns i Korp, och texterna i Korp finns också nedladdningsbara för andra ändamål än konkordanssökningen som Korp tillhandahåller. Dessutom används analysverkygen för ett flertal andra av Språkbankens infrastrukturverktyg, såsom Strix, som är under uppbyggnad för analyser som bygger mer på texten som enhet snarare än ordet, och Lärka, en inlärningsplattform för att lära sig svenska och svensk språkanalys, som används för att i forskningssyfte samla in realtidsdata om språkinlärning.
Språkbanken är en forskningsinfrastruktur för tre typer av forskning: (1) språkteknologi, (2) språkvetenskap, samt (3) digital humaniora och samhällsvetenskap (DHS). Det arbete som har utförts inom projektet i syfte att förbättra annotationerna i Korp har också samtidigt utgjort (tillämpad) språkteknologi och de flesta nedan uppräknade publikationerna redovisar detta arbete. Några nya språkteknologiresurser har dragit direkt nytta av de förbättrade annoteringarna, nämligen "Culturomics Gigaword Corpus" (<https://spraakbanken.gu.se/swe/resurs/gigaword>), attitydlexikonet SenSALDO (<https://spraakbanken.gu.se/swe/resurs/sensaldo>), samt den svenska tesaurusen Blingbring (<https://spraakbanken.gu.se/swe/resurs/blingbring>). Bland DHS-forskning som har använt infrastrukturen kan nämnas en studie i retorikhistoria och ett arbete om platsnamn i Riksarkivets digitaliserade medeltidsbrev.
Projektets resultat
För att analysverktygen ska kunna ta sig an texten behöver man definiera dess grundläggande delar, dvs. meningar och ord. Den vanligaste definitionen av ett ord (eller token) är simplistiskt någonting avgränsat av blanktecken eller skiljetecken, men styrs nu istället av lexikonet. Därigenom kan man påverka vad som ses som ett ord genom att skapa en ny ingång i vårt centrala lexikon SALDO. Det ger att det t ex är lättare att hantera flerordsuttryck genom att lägga till dem i lexikonet.
Framöver kommer version 3.0 av SALDO att göras tillgänglig. Den innehåller en ny ordklasskategorisering, som är mer lik den ordklasstaggning som nu införs (se nedan). Dessutom har information om böjning och sammansättning separerats. Det finns även platshållare för extra information om orden, såsom domän eller stil. Slutligen har det skapats en mängd nya ingångar i lexikonet. Vårt arbete har också visat att det finns olika typer av flerordsuttryck, som syntaktiskt beter sig på olika sätt. Hanteringen av dessa kommer att implementeras i SALDO vid ett senare tillfälle.
Flera nya typer av analys har implementerats, som attityd, lexikala klasser och uppmärkning av namnuttryck, samt olika läsbarhetsindex. Dessutom har flera verktyg för analys på ordnivå förbättrats. Hanteringen av sammansättningar har förbättrats avsevärt genom att sammansättningsalternativ nu rankas utifrån sannolikhet. De kan också bestå av fler led, medan de tidigare av praktiska skäl var begränsade till två led.
Inom projektet har vi utvecklat flera nya metoder för att i text skilja mellan olika betydelser av ett ord. Dessa är i huvudsak s.k. oövervakade metoder som använder sig av en stor mängd text och ett lexikon. En av metoderna har implementerats och finns tillgänglig genom Sparv, Spåkbankens analysverktyg. Ordbetydelser i materialen i Korp är därmed numera rankade efter sannolikhet.
En av de viktigare analyserna på lexikal nivå är ordklasstaggning, som ger en ordklass för varje ord i texten, men också mer detaljerad morfologisk information. En större förändring i ordklasstaggningen är att våra lexikala resurser, lexikon och morfologisk beskrivning, nu finns med i ordklasstaggningsverktyget. Det betyder att den statistiska ordklasstaggaren får hjälp när den stöter på ett ord den inte har sett tidigare (för att det, eller en form av det, inte finns med i träningsdatan som ordklasstaggaren lärt sig ordklasserna av).
I och med bygget av utvärderingskorpusen Eukalyptus har det skapats en ny ordklasskategorisering. Den stämmer bättre överens med standardverket Svenska Akademiens grammatik än den tidigare uppsättningen, kallad SUC efter Stockholm-Umeå corpus, som i stort sett all svensk ordklasstaggning de senaste decennierna baserats på. Den nya kategoriseringen har dock ännu inte fullt ut implementerats i Korp, då det några praktiska problem kvarstår vad gäller den syntaktiska strukturen, som sedan byggs ovanpå ordklasstaggningen.
Gällande den syntaktiska analysen har vi utvärderat flera olika syntaktiska parsrar, samt anpassat en dependensparser så att vi kan få ut flera annoteringshypoteser. Vi har diskuterat olika sätt att sortera sökresultat i Korp baserat på annoteringskvalitet (eller snarare hur säkra verktygen är på en given annotering), men den stora utmaningen ligger i hur man ska visa upp denna information på ett lättfattligt sätt för användaren.
En stor del av arbetet för att kunna utvärdera verktygens resultat har varit att skapa en utvärderingskorpus med annoteringar för de olika nivåerna, dvs ordklasser och morfologisk information, ordbetydelse, syntaktisk analys m.m. Detta arbete är avslutat och vi sammanställer nu hela materialet för att kunna göra det tillgängligt även för andra. Vi har påbörjat arbetet med att utvärdera verktygen för de olika analysnivåerna, men detta arbete kommer att fortsätta framöver, för att vi ska kunna säga hur mycket de olika analysverktygen har förbättrats under projektets gång och hur bra analyserna är för olika typer av text.
Problem och avvikelser från planen
I ansökan pekade vi på ett antal olika utvecklingsmöjligheter för annoteringsinfrastrukturen och flera av dessa har kunnat implementeras under projektet. Även i de fall där vi ännu inte har konkreta resultat i form av en implementation har en viktig aktivitet i projektet också varit att fundera över strukturer mer långsiktigt vilket har har banat väg för möjligheten att implementera fler verktyg och funktioner i framtiden. Till exempel gäller detta frågan om spårbarhet, som handlar om att kunna se var data kommer ifrån och hur den har framställts. Detta har vi mest arbetat med på ett konceptuellt plan och vi kan idag hämta informationen ur systemen, men vi har ännu ingen bra lösning på hur man ska hantera den extremt stora ökning av data det skulle innebära att ha denna information tillgänglig under hela processen.
Den största avvikelsen från tidsplanen har bestått i att skapandet av utvärderingskorpusen har tagit mer tid än vi hade beräknat, delvis beroende på annoterare som slutat. Den är dock nu så gott som färdig och kommer att publiceras i sommar. Den har redan gjorts tillgänglig på förfrågan för forskare från Uppsala universitet.
Infrastrukturens tillgänglighet och framtid
Korp är ett av de viktigaste verktygen i Språkbankens forskningsinfrastruktur. Språkbanken har i dagsläget funnits i närmare 45 år, och är från och med 2018 en del i den nationella infrastrukturen Språkbanken (med bidrag från VR 2018-2024). Arbetet med att utveckla verktygen för infrastrukturen Korp har stor del i att Språkbanken först blev en universitetsgemensam infrastruktur vid Göteborgs universitet, och sedan kände sig redo för att ansöka om att bli en nationell infrastruktur.
Med några få undantag är materialet i Korp (<https://spraakbanken.gu.se/korp>) fritt tillgängligt för sökning. Dessutom tillhandahåller vi de flesta texterna, med deras annotering, för nedladdning i form av s.k. meningsmängder, där meningarna är omkastade för att texten inte ska kunna återskapas som helhet, av rättighetsskäl. Även sökverktyget Korp är fritt tillgängligt (via Github <https://github.com/spraakbanken/>). Alla annoteringsverktyg kan användas fritt via Sparv (<https://spraakbanken.gu.se/sparv>), så att man kan märka upp sina egna texter.
Internationella samarbeten
Sedan projektbidraget beviljades har Språkbanken blivit nationell koordinator för Swe-Clarin, den svenska delen i den europeiska infrastrukturen CLARIN ERIC (med 22 medverkande länder). Korp är ett viktigt verktyg inom Swe-Clarin.
Ett antal institutioner i olika länder har valt att driva sin egen instans av Korp, för att kunna hantera och söka i material på det egna språket/språken. Några exempel är finska Korp (<https://korp.csc.fi/>) och samiska Korp (<http://gtweb.uit.no/korp/>).