SMT = ickefixerad maskinöversättning?

Relevanta dokument
Johan Karlsson Johka490. Statistical machine translation JOHAN KARLSSON

LINKÖPINGS UNIVERSITET 729G11, Artificiell Intelligens II, HT10 SMT. En fördjupning i statistiska maskinöversättningssystem

Linköpings universitet Artificiell Intelligens II 729G11 HT Maskinöversättning. med hjälp av statistik. Erik Karlsson

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

Automatateori (2) Idag: Sammanhangsfria språk. Dessa kan uttryckas med Grammatik PDA

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Tekniker för storskalig parsning: Grundbegrepp

Statistisk maskinöversättning

Probabilistisk logik 2

Maskinöversättning möjligheter och gränser

Statistisk mönsterigenkänning

Kontextfria grammatiker

Tekniker för storskalig parsning

Statistisk Maskinöversättning eller:

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

Vad behövs för att skapa en tillståndsrymd?

de var svåra att implementera och var väldigt ineffektiva.

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

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Datorlingvistisk grammatik

Matematik för språkteknologer

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Introduktion till statistik för statsvetare

Språkteknologi och Open Source

- ett statistiskt fråga-svarsystem

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

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

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

Idag: Reguljära språk Beskrivs av Reguljära uttryck DFA Grammatik

Tentamen Marco Kuhlmann

Föreläsning 7: Syntaxanalys

Träd och koder. Anders Björner KTH

Tommy Färnqvist, IDA, Linköpings universitet

b) S Ø aa, A Ø aa» bb, B Ø aa» bc, C Ø ac» bc» 2. Låt L vara språket över 8a< som nedanstående NFA accepterar.

Programkonstruktion och Datastrukturer

Algoritmer, datastrukturer och komplexitet

Statistisk Maskinöversättning. Anna Prytz Lillkull 729G

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

Regression med Genetiska Algoritmer

4 Diskret stokastisk variabel

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

Tekniker för storskalig parsning

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

Algoritmer, datastrukturer och komplexitet

Mekaniskt lexikon, patenterat av George Artsrouni på tidigt 1930 tal Perforerade pappersband och avläsningsnockar 1 ord per 3 sekunder

Härledning av Black-Littermans formel mha allmänna linjära modellen

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Speciell användning av heltalsvariabler. Heltalsprogrammering. Antingen-eller-villkor: Exempel. Speciell användning av heltalsvariabler

Algoritmer, datastrukturer och komplexitet

PROGRAMFÖRKLARING I. Statistik för modellval och prediktion. Ett exempel: vågriktning och våghöjd

729G09 Språkvetenskaplig databehandling

Taltaggning. Rapport av Daniel Hasselrot , 13 oktober 2003

Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret Lektion 1

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

kl Tentaupplägg

Kursplaneöversättaren. Lina Stadell

Föreläsning 1. Introduktion. Vad är en algoritm?

DAB760: Språk och logik

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens Erik Claesson

Grundläggande logik och modellteori

Artificiell Intelligens

Föreläsning 9: NP-fullständighet

Partiell parsning Parsning som sökning

Föreläsning 8: Intro till Komplexitetsteori

Filosofisk Logik (FTEA21:4) föreläsningsanteckningar/kompendium. v. 2.0, den 29/ III. Metalogik 17-19

Formell logik Kapitel 1 och 2. Robin Stenwall Lunds universitet

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

Lektionsanteckningar 11-12: Normalfördelningen

Algoritmer, datastrukturer och komplexitet

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

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap

Lektion 8: Konstruktion av semantiska tablåer för PTL-formler

Optimala koder. Övre gräns för optimala koder. Gränser. Övre gräns för optimala koder, forts.

Optimala koder. Det existerar förstås flera koder som har samma kodordsmedellängd. Enklaste fallet är att bara byta 0:or mot 1:or.

SF1901: SANNOLIKHETSLÄRA OCH STATISTIK. MER HYPOTESPRÖVNING. χ 2 -TEST. Jan Grandell & Timo Koski

Tommy Färnqvist, IDA, Linköpings universitet

Krafts olikhet. En momentant avkodbar kod (prefixkod) med kodordslängderna l 1,...,l N existerar om och endast om. 2 l i. 1 i=1

Den räta linjens ekvation

Anna: Bertil: Cecilia:

Sidor i boken f(x) = a x 2 +b x+c

Anna Sågvall Hein, Institutionen för lingvistik, Uppsala universitet Rosenbad/ Automatisk översättning och översättningshjälpmedel

Rangordning av internetsidor - ett egenvärdesproblem för positiva matriser

MVE051/MSG Föreläsning 7

Ma7-Per: Algebra. Det andra arbetsområdet handlar om algebra och samband.

Algoritmanalys. Inledning. Informationsteknologi Malin Källén, Tom Smedsaas 1 september 2016

Den räta linjens ekvation

Föreläsning 5: Grafer Del 1

PROV I MATEMATIK Automatateori och formella språk DV1 4p

Stat. teori gk, ht 2006, JW F7 STOKASTISKA VARIABLER (NCT 5.7) Ordlista till NCT

Introduktion till formella metoder Programmeringsmetodik 1. Inledning

Linköpings universitet

Probabilistisk logik 1

Upplägg. Binära träd. Träd. Binära träd. Binära träd. Antal löv på ett träd. Binära träd (9) Binära sökträd (10.1)

1, 2, 3, 4, 5, 6,...

Transkript:

SMT = ickefixerad maskinöversättning? Richard Larsson (Linköpings universitet, 2016) 1

Introduktion För formella språk gäller bl.a. att det finns en exakt definierad uppsättning regler, som kallas för språkets grammatik. Grammatiken beskriver i vilken ordning man får kombinera givna tecken, och även vilka tecken som är tillåtna i språket. Denna del brukar kallas språkets syntaktiska del. Men för att språket inte enbart ska bestå av ändlösa rader teckenkombinationer behövs också en semantisk del som istället beskriver betydelsen av de olika tecknen. Detta räcker för att ett formellt språk som exempelvis ett programmeringsspråk eller ett logikspråk ska vara komplett och gå att använda fullt ut, men det blir svårare när det kommer till de naturliga språken som människor använder i kommunikation med varandra, eftersom man där inte har lika exakt definierade regler för vare sig syntax eller semantik. Så det finns två huvudsakliga problem för att formellt redogöra för naturliga språk: 1) De saknar en exakt och komplett grammatik. 2) Meningar på naturliga språk kan vara flertydiga. För att därmed effektivt redogöra för en modell av ett naturligt språk fungerar en sannolikhetsfördelning av meningar bättre än ett absolut regelverk (Russel & Norvig, 2009). Man brukar använda sig av sannolikhetsfunktioner som P = (målspråk källspråk) för att avgöra sannolikheten för att en given uppsättning tecken på ett naturligt språk består av ord i ett annat givet språk. När det därför kommer till artificiell intelligens som översätter texter på naturligt språk, så kallad maskinöversättning (MT), behöver man använda sig av en sådan funktionell modell för ett språk. Sannolikhetsfördelningar baserade på denna modell innebär att översättningar inte kan bli helt exakta, vilket är kärnproblemet för MT. Däremot har man under åren utvecklat en mängd mer eller mindre effektiva heuristiska verktyg för att precisera jämförelsen mellan två språk. Det finns flera sätt att angripa problemet på. I MTs tidiga historia (ca. 1940-tal till 1960-tal) utgick man från vad som kallas ordlistbaserad MT, där man helt enkelt utgick ifrån en tvåspråkig ordlista och lät översättningen ske utan vidare regler än så (Tripathi & Sarkhel, 2010). Det jag i denna fördjupningsstudie har valt att inrikta mig på kallas statistisk maskinöversättning (SMT). Ett annat av de mer intressanta alternativen som används för MT är exempelvis hybridöversättning (HMT) och går istället ut på att flera metoder används för översättningar, bl.a. en modifierad variant av SMT. Det finns dock ingen metod som är perfekt, utan olika metoder fungerar bättre på vissa aspekter men sämre på andra gentemot varandra. Generellt beskrivet går SMT ut på att avgöra om en översättning mellan två naturliga språk är korrekt eller ej beroende på meningarnas förekomster i stora tvåspråkiga korpusar. Korpusar är databaser innehållande stora mängder text av diverse slag. Korpusarna används som de statistiska databaser utifrån vilka reglerna i den statistiska modellen som används genereras. Frågan jag försöker besvara i den här litteraturstudien är dock om det är så enkelt 2

som att säga att SMT därmed är en helt generativ översättningsmetod i och med att metodens träningsdata baseras på korpusar, eller om det snarare är ofrånkomligt att någonstans använda sig av en fixerad ontologisk modell i någon form som den generativa aspekten av metoden ställs mot, för det är vid första anblick att komma närmare detta fria ideal som var syftet med SMT gentemot sina föregångare. Kommer man ända fram med SMT och hur långt är det i annat fall kvar tills man inom MT lyckas konstruera den totala bryggan mellan naturligt språk och strikt algoritmisk avbildning av dessa? För att besvara frågan ges först en övergripande genomgång av vad MT är och vilka olika grenar som finns, för att bekanta läsaren med de grunder som SMT baseras på, och därefter följer en genomgång av principerna inom SMT självt. Slutligen diskuteras alltsammans där mina personliga reflektioner tas upp utifrån dessa båda stycken. 3

SMT = ickefixerad maskinöversättning? Olika metoder för maskinöversättning Som nämnt i inledningen är de två huvudsakliga problemen med MT att naturligt språk innehåller tvetydigheter och att de saknar exakta regelverk. En konsekvens av dessa två problem är exempelvis att översättningar inte lyckas parsa (det att analysera en ordsträng för att analysera dess frasstruktur enligt en given grammatik) perfekt mellan de båda involverade språken då de inte har exakt samma semantiska betydelser av ett visst ord på grund av att olika språk kategoriserar världen på olika sätt. Ordet distinguish på engelska kan översättas till svenska som skilja, men i meningen distinguished guests skulle den översättningen bli skilda gäster, vilket får en helt annan semantisk innebörd än i orginaltexten och en översättning tillbaka till engelska igen skulle kunna medföra divorced guests som resultat. Sättet man inom MT har valt för att lösa detta problem är att använda sig av vad som kallas ett interlingua, vilket är ett representationsspråk för hur två faktiska språk ska jämföras med varandra som tar hänsyn till samtliga tvetydigheter av detta slag. I ett interlingua skulle ordet distinguished indexeras så att varje betydelse av ordet skulle gå att urskiljas: distinguish 1, distinguish 2 etc. Dock är inte ens ett interlingua ett komplett instrument för att lyckas perfekt med översättningar. Fall där det får problem är när ovannämnda typ av flertydigheter ligger såpass nära varandra att inte ens kontexten enkelt eller ens alls kan användas för att avgöra vad som är rätt tolkning av en mening. Exempelvis den engelska meningen The ball hit the window. It broke. Det är omöjligt att avgöra vad ordet it pekar på utan att ha en personlig kännedom om den kontext som beskrivs: går fönstret eller bollen sönder? Hur gör därmed ett AI, vilket saknar livserfarenheten som människor använder sig av för sin språkliga tolkning, när det funderar över denna typ av problem och inte har tillgång till ett perfekt interlingua att slå upp det rätta svaret i? Det finns flera svar på detta. Främst finns det generellt sett två ytterligheter inom MT vad gäller på vilken nivå man väljer att genomföra översättningen (Tripathi & Sarkhel, 2010): Metafrasöversättning ord-för-ord-översättningar där alltså varje ord i källspråkets text översätts till ett ord i målspråkets text. Parafrasöversättning en mer dynamisk motsvarighet där man istället fokuserar på den semantiska betydelsen i en given textmängd. Har man innebörden av metafrasöversättning och parafrasöversättning klar för sig kan man sedan beskriva samtliga metoder inom MT med hur de använder sig av dem, vilket kan illustreras med Vauquois triangel: 4

Figur 1 fritt översatt från Tripathi & Sarkhel (2010) I toppen av triangeln är ett komplett interlingua och botten utgörs av direkta ord-förordmetoder mellan två språk. Metoderna som implementerar strikt metafras- eller strikt parafrasöversättning utgörs på parafrassidan av regelbaserad maskinöversättning (RBMT) och på metafrassidan av ordlistebaserad. RBMT utgår ifrån en stor mängd morfologiska, syntaktiska och semantiska regler och kombinerar dessa med stora mängder tvåspråkiga ordlistor för att översätta texter (Tripathi & Sarkhel, 2010), medan ordlistebaserad översättning enbart använder sig av just ordlistor och översätter orden direkt från källspråket till målspråket. Transfermetoden i triangelns mitt baserar sig på en metod som sker i tre steg: Analys i vilken den syntaktiska och semantiska strukturen i källspråket erhålls. Transfer informationen från det analytiska steget överförs till motsvarigheten i målspråket. Syntes i vilken översättningen genereras utifrån informationen i transfersteget. MT brukar anses ha tre generationer i sin utveckling. Till den första generationen brukar man räkna ordlistebaserad översättning. Utifrån lärdomen om resultaten från denna princip började man istället fundera över införandet av grammatiska regler i översättningsmetoderna, vilket utgör huvudparten av den andra generationens översättningsmetoder, som inkluderar transfermetoden där som sagt en regelmall kombineras med en ordlista. Problemet även med transfermetoden är dock att den liksom sin föregångare utgår från en mer eller mindre fast mall, ordlistor och grammatiska regelsystem som facit. Vad gäller naturligt språk medför detta problem med grammatiska undantag, flertydigheter av samma ord etc. För att förbättra träffsäkerheten på översättningar blev därför nästa generation en metod som istället utgick ifrån det analyserade datat för att generera sin grammatikstruktur. Den mest effektiva metoden inom denna generation är statistisk maskinöversättning (SMT). 5

SMT Enligt Lopez (2008) finns det fyra kriterier som ett SMT-system måste klara av för att fungera: 1) Det måste innehålla en beskrivning av stegen som transformerar en mening på källspråket till en mening på målspråket. Detta kallas för systemets modell. 2) Det måste kunna hantera flertydigheter, vilket man inom SMT gör med parameterisering. Parameterisering är att indexera alla specialfall av ord eller uttryck som kan ha fler än en betydelse. 3) Till parametrarna man tar fram beräknar man sedan ett värde för att ge dem olika vikt, vilket kallas parameteruppskattning. 4) När dessa kriterier sedan implementeras på en given mening text måste en beräkning på vilken översättning som är mest sannolik göras, vilket kallas avkodning. I SMT sker alltså översättningar baserat på statistiska modeller som genereras utifrån stora tvåspråkiga korpusar, vilket är korpusar där samma texter på de respektive språken finns och kan jämföras med varandra. Att utgå ifrån stora korpusar betyder att man inte behöver vare sig analysera källtexten eller skapa ett komplext interlingua, utan allt som behövs är att texter jämförs och graden av korrekthet är sedan proportionell mot förekomstandelen av en given motsvarighet mellan källspråk och målspråk i korpuset (Russel & Norvig, 2009). För följande stycken om dessa fyra mekanismer inom SMT är 1, 3 och 4 baserade på Lopez (2008) och 2 baserat på Russel & Norvig (2009). 1. Modellkonstruktion FST Den ena av de populäraste metoderna för att formalisera modeller inom SMT, som kallas finite-state transducer (FST), utgår ifrån principerna i finite-state automata (FSA), vilka utgörs av en mängd tillstånd S, en mängd artiklar L och en mängd övergångar D. För varje övergång från ett tillstånd till ett annat läses två tillstånd (ursprung och mål) och en artikel av: D {S x S x L} För att detta ska kunna användas inom översättning måste man dessutom utveckla det till att använda sig av två artiklar. L 1 läses in i den ena mängden (källspråket) och baserat på denna skrivs L 2 i den andra mängden (målspråket). Om de båda mängderna L 1 och L 2 icke-tomma betyder det att varje element x i L 1 är korresponderande värden med y i L 2. När man har detta använder man sedan utdatat från en FST som indatat i en annan FST, vilket utgör den totala mekaniken i modellen. 6

SCFG Den andra metoden för att skapa modeller inom SMT kallas synchronous context-free grammar (SCFG), vilket är olika sorters generaliseringar av kontextfri grammatik (CFG) med två utdatasträngar. CFGer består av tre enhetstyper. En mängd icketerminala symboler N, en mängd terminala symboler T och produktioner D = {N (N T)*}. Produktioner fungerar som själva transferfunktionen (se föregående stycke) i det här fallet: en icketerminal symbol ersätts av en eller flera terminala eller icketerminala symboler. Först skapas en icketerminal rotsymbol med rewriting rule d D, och därefter omskrivs rekursivt nya symboler tills hela utdatamängden består av terminala symboler. I naturligt språk utgör N-symboler syntaktiska kategorier (såsom NP, VP etc.) och T-symboler utgör ord. Som sagt är SCFGer specialiserade till två strängar för varje produktion, vilka är indexerade för att särskiljas. En typisk tilldelning kan se ut såhär: NPB JJ 1 NN 2 / JJ 1 NN 2. Detta genererar sedan två träd, ett för vardera språk. 2. Parameterisering Som nämnt ovan innehåller naturligt språk ofta flertydigheter, flera möjliga betydelser av exakt samma ord, och vilken av dessa betydelser som är korrekt kan endast avgöras av kontexten. Det är för att kunna välja mellan dessa olika betydelser som parameterisering används inom SMT. Även denna del av SMTs fyra grundläggande element har många lösningar. Generellt använder man sig dock av principen där man parsar ett inputvärde mot ett outputvärde enligt f: X x Y R där en slumpmässig variabel x inom mängden X och en slumpmässig variabel y inom mängden Y mappas till ett reellt värde som rangordnar möjliga utdata. Inom vad som kallas en joint model P(x,y) har vi följande förhållande: summan av alla värden x och y inom mängderna X och Y är 1, och simultanfördelningen: (x, y) (XxY) P(x = x, y = y) [0, 1]. Det andra sättet att beräkna de stokastiska variablerna x och y är genom konditionalisering: och (x, y) (XxY) P(x = x y = y) [0, 1]. Och detta är de konditionaliserade, stokastiska variablerna x betingade på motsvarande y- variabler. 7

För att sedan kunna använda sig av dessa uppsättningar probabilistiska data inom SMT kombinerar man parameteriseringen med mekanismen i modelleringen, D. D är den regel som används för att klassificera de probabilistiska värdena så att flertydiga ord mappas till korrekt översättning enligt endera SFT-principen, där D utgör övergångar mellan olika tillstånd, eller enligt SCFG-principen, där D istället utgör grammatiska produktionsregler. Syftet med det D man vill använda är att kunna parsa alla f inom V F *, dvs. samtliga variabelvärden inom källspråket, med alla e inom V E *, motsvarande för målspråket. Den matematiska modell som används för detta är därmed: där e är källspråket, f är målspråket och d är modellen som förklarar förhållandet mellan e och f. Så med andra ord, sannolikheten för att ett givet ord på källspråket motsvarar ett givet ord på målspråket är summan av samtliga fall där dessa stöts på i de tvåspråkiga korpusarna, givet förhållanderegeln d. Ofta men inte alltid är de båda stegen modellering och parameterisering, dvs. klassifikation och rangordning, integrerade. Det finns sedan dels generativa och diskriminativa modeller. Jag har valt att beskriva mekanismerna inom generativ modellering. Så principen är som sagt sannolikhetsfördelningar P(målspråk källspråk) för att avgöra om en text består av ett visst språk. Den enklaste modellen där denna grund används är n- grammodeller. Ett n-gram är en sekvens tecken på n antal tecken. Detta införs i vår sannolikhetsfördelning P(målspråk källspråk) som P(c 1:N ) där c är tecknet och indexeringen från 1 till N är teckensekvensens början och slut. Exempelvis skulle kanske P( apa ) = 0.83 (obs. enbart ett påhittat, uppskattat värde!) i en svensk korpus, men få ett lägre värde i en korpus på ett annat språk där ordet apa inte förekommer. Eftersom det finns en otalig mängd strängar av ett givet språk som har apa i sig men inte avgränsas till enbart apa, exempelvis gapa, naprapat eller rentav härmapa, är det dessutom nödvändigt att kunna införa denna avgränsning formellt. Detta görs med Markovantaganden. Ett Markovantagande (uppkallat efter den ryska statistikern Andrei Markov) är uppfyllt när sannolikhetsfördelningen i en serie P(X t X 0:t-1 ) är begränsat till att enbart bero på en given mängd tecken som direkt föregår det sökta tecknet t. Denna regel ger sedan upphov till vad som kallas Markovkedjor, så att för exempelvis första ordningens Markovkedja P(X t X o:t-1 ) = P(X t X t-1 ). För mer avancerade varianter av Markovkedjor blir sannolikhetsfördelningen sedan P(X t X o:t-1 ) = P(X t X t-2, X t-1 ) för andra ordningens osv. Detta innebär alltså att i en given teckensträng X är sannolikheten för strängens värde vid tecken t given av en ändlig och given mängd tecken dessförinnan. Vad har då allt detta för koppling till maskinöversättning? Jo, en Markovkedja av ordningen n 1 8

är vad man kallar en n-grammodell, och denna används till statistisk språkidentifiering genom att man riktar in sig på avgränsade teckensträngar som förmodas påträffas i ett givet språk. Datormodeller gör detta med en träffsäkerhet på upp till 99%, bortsett från med språk som inte liknar varandra mycket, såsom exempelvis kinesiska och engelska. En trigrammodell (dvs. ett n-gram bestående av tre tecken) ser alltså ut såhär: P(X i X 1:i-1 ) = P(X i X i-2:i-1 ) (dvs. identisk med ovanstående formel, men denna börjar leta explicit vid index 1). Denna regel används sedan i kombination med kedjeregeln F (x) = f (g(x)) * g (x) till att generera följande fakultetsuttryck: När SMT var i sin linda var tankarna om metoden att man enklast skulle lyckas maximera träffsäkerheten genom att omvandla denna formel med hjälp av Bayes regel. Bayes regel använder man när man vill stöka om sannolikheterna från orsak symptom till symptom orsak. Formeln ser ut såhär: Om vi låter P(A) representera sannolikheten för att en text är på ett visst språk l och P(B A) representera förekomsterna av ett givet antal tecken, c i, på ett visst språk får vi Här kan vi stoppa in Markovantagandet, eftersom ekvationen är normaliserad gentemot ett givet antal tecken och vi vet att inga tecken utöver den sträng vi tittar på är lika relevanta. En trigrammodell som ger oss maximala sannolikheten för att ett språk är det vi söker är därmed där ms är målspråket vi söker och ks är källspråket som redan är känt. 9

3. Parameteruppskattning När alltså parametrarna finns givna är nästa steg att tilldela värden till dem genom parameteruppskattning. Detta sker inom SMT med hjälp av beräkningar med parallella korpusar som datamängder. Inom generativa modeller använder man sig av statistisk uppskattningsteori där man gör antagandet att den framtagna modellens översättning överrensstämmer så bra som möjligt med det riktiga värdet, vilket alltså görs genom att man tränar AI:t med modellen på de parallella korpusarna. Man använder den matematiska modellen där C {E* x F*}, och E* och F* i sin tur är de båda mängderna träningsdata som används för de respektive språken. Syftet är att hitta funktionens maximala tillstånd med flest påträffade korrelationer mellan mängderna och detta kallas för maximum likelihood estimation (MLE). I idealfall som myntkastning fungerar formeln P(kr) = #(kr)/#(kr+kl) utmärkt för att ta reda på sannolikheten för det kända antalet kronor och klavar, men det är svårare för maskinöversättning som försöker parsa två språk och vill ha reda på förekomsten av vissa meningsbyggnader i en okänd mängd möjliga meningsbyggnader. Orsaken är att man enbart kan titta på meningspar och inte på den totala mängden sammanfallande förekomster av enskilda ord i meningarna. Exempelvis kan ordet lend i en kontext betyda låna ut men i en annan kanske ordet ska tolkas metaforiskt som i lend an eye, vilket är ett lexikaliserat uttryck som det går att leta efter genom att söka på hela frasen, men om det däremot finns ickelexikaliserade fraser som använder ordet i samma metaforiska betydelse så fungerar inte ovanstående sannolikhetsfördelning som mekanism. Lösningen på detta problem kallas Expected-Maximization-algoritmen (EM-algoritmen). I denna måste vi ha en ny konstant Θ 0, vilket är förväntade antal observationer av sammanfallande av två ords lika översättningar, inte baserat på träningsdata från hela korpuset utan på träningsdata från en såpass enkel träningsmängd att en regel kan sättas för vad Θ 0 ska vara för en given översättning. Vi får då ekvationen där alltså det givna värdet Θ 0 används för att uppskatta värdena på alla möjliga sammanfallanden mellan f och e mellan 1-I respektive 1-J för orden inom parentesen. Därefter kan man göra en likadan beräkning som vid myntkast som är lika relevant för språk. När detta sedan appliceras på hela korpuset kan en regel Θ 1 sättas och man kan nu jämföra och se om P Θ1 (C) > P Θ0 (C) och denna jämförelse mellan de två olika värdena (det oövervakade eller övervakade värdet) når aldrig något globalt maximum eftersom detta aldrig är känt, utan är en ständig hill climbing-process som hela tiden rekursivt undersöker om den 10

befinner sig i ett lokalt maximum eller inte fortsätter genom hela översättningsprocessen. Det är i och med detta ständiga knådande som man med rätta kan kalla metoden för generativ. Slutsatsen blir formeln där D är det okända korrigeringsdatat. Utöver denna mekanism för parameteruppskattning behövs även vad som kallas ordjustering. Det man är ute efter med ordjustering är att hitta ord-för-ord-motsvarigheter i ett givet meningspar e och f så att justeringen A [1, I] x [1, J]. Om (i, j) A så är ordet e i justerat med ordet f j. Det finns sedan diverse undermetoder för hur denna justering ska gå till. Assymmetriska modeller letar efter en maximering av ett visst antal stegs förskjutning som ett givet ord som ska översättas har i en mening på källspråket jämfört med i målspråkets mening enligt Den nya konstanten a är alltså justeringsvariabeln som tilldelas värdet a j, vilket är ett uppskattat värde på ordet e:s mest sannolika förskjutningsposition i den givna meningen. Sedan finns diverse andra metoder såsom symmetriska justeringsmodeller eller övervakad inlärning för justering, men syftet är alltså samma för samtliga. Det sista steget som behövs i parameteruppskattning är uppskattning i log-linjära modeller. I log-linjära modeller använder man, för att uppskatta graden av korrekthet, konstanterna λ K 1 i formeln vilket är en monstruös formel där man tack och lov vad gäller det slutgiltiga steget avkodning kan slopa den normaliserande nämnaren eftersom den är konstant för ett givet värde f J 1 i och med att man gör ett Markovantagande för detta värde. λ K 1 är uppskattningsvikterna för modellen. Genom att inkludera dessa i MLE-formeln beskriven ovan har vi en mätning på hur sannolik vår parameteruppskattning är. För att komma fram till dessa parametrar tränas de enligt minimum error-rate training (MERT)-metoden. Man börjar i MERT med en felfunktion E(ê, e), ett predicerat värdet ê och ett värde e som har visat sig vara en bra översättning enligt undersökningar utförda på människor via enkäter e.d. Därefter tränar man sina vikter enligt Alltså är λ K 1 ett värde som i grunden uppskattas utifrån en mänsklig uppfattning om vad som anses vara en bra översättning. 11

4. Avkodning Vi är nu framme vid SMTs sista steg där allting knyts ihop och översättningen äger rum genom en komplett parsning från källspråk till målspråk. Vad vi då har kommit fram till är en slutgiltighet, till skillnad från alla våra tidigare steg som istället har tagit fram statistisk sannolikhet utan att behöva knyta dem till slutgiltiga grammatiska regler. Det kan vi inte längre skjuta framför oss och den klart mest använda formeln för detta sista steg är Detta kallas träffsäkert nog för en beslutsregel. Vi är alltså även här ute efter att hitta ett maximum i en funktion enligt samma argument som ovan. Märk väl att det, trots att f (vilket ju är källspråket) är känt och det finns en ändlig mängd värden (e, d), finns en gigantisk mängd data att söka igenom, och därför används olika sökheuristiker för att komma fram till det optimala värdet. De två heuristiker som används för detta baserar sig på de två avgreningarna inom modellkonstruktionen, FST och SCFG. FST-avkodning För FST-avkodning används en acyklisk och riktad graf där varje nod är tillstånd bestående av färdiga eller inkompletta hypoteser om vad som är korrekt översättning. Noderna är uppbyggda av fyra kriterier: 1) En delmängd C {1, 2,..., J} där elementen utgör positionerna för orden i den översatta meningen på källspråket. 2) För n-grammodeller hålls även n 1 antal ord av målspråket i minnet för att kunna konstruera en n-gramkomponent av sannolikheten för modellen. 3) Kostnaden h för varje genererad nod i sökträdet och därmed varje delhypotes. 4) Kostnaden g för hela sökträdets totala kostnad, dvs. kostnaden för den kompletta hypotesen. För att generera tillstånd (noder) i sökrymden läggs nya värden till i delmängden (1) och nya ord i hypotessträngen, vilket blir översättningen från den givna nodens källspråksord till det genererade målspråksordet. Kostnaden h uppdateras genom att sannolikheten för den givna delhypotesen beräknas. På detta vis genereras sökträdet och alltså översättningen i FSTavkodning. En mängd möjliga heuristiker såsom A* och greedy search används sedan för att minimera minnes- och tidskomplexiteten och samtidigt maximera optimaliteten. SCFG-avkodning Syftet med SCFG-avkodning är att generera parallella sökträd, beräkna kostnaden för dessa och välja översättning efter det träd som ger högst poäng. Trädens noder kallas spans, vilka består av icketerminala symboler, strängar av angränsande ord samt de regler från den gällande språkmodellen som behövs för att kunna kombinera flera spans. Man använder sedan SCFG-produktioner som matchar två givna ordsekvenser (N) som redan har infererats i tidigare, mindre spans för att generera nya spans som kombinerar dessa för att bilda en ny 12

kombination, och på så vis konstrueras trädet iterativt span för span tills hela källspråket har parsats, och därpå produceras slutligen utdatat (översättningen) enligt ordföljden i målspråket. Vilken av dessa två principer för avkodning som är optimal är en stor fråga inom SMT, för trots att tidskomplexiteten för SCFG-avkodning är polynom (O(J 2 )) gör användandet av heuristiker inom SFT-avkodning att det är allt annat än klart vilken av dem som hanterar detta bäst, och SFT-avkodare är i praktiken ofta snabbare än SCFG. 13

Diskussion Frågeställningen är som sagt i inledningen huruvida man kan säga att SMT är fritt från fixerande ramverk andra än naturligt språk till skillnad från sina föregångare, som baserade sig på givna mallar utifrån ordböcker och fördefinierade grammatiska regler. SMTs grammatik genereras som vi har sett genom att använda sig av kontinuerligt växande mängder data som är exempel på naturligt språk, och de ramverk som måste användas för att formalisera källspråkets och målspråkets grammatiker utgörs ju av värdesmaximering i relativt enkla funktioner med språken som träningsdata. MERT-metodens viktuppskattning, metodikerna för produktionen D, och EM-algoritmen utgör väldigt effektivt preciserande instrument för maximering av den statistiska uppskattningen inom SMT med denna grund. Dock knyts alltihop samman när metoden implementeras på beslutsregeln vid avkodningen, och denna regel utgår ju från jämförelsen mellan det predicerade värdet ê och e. e hämtas i MERT-metoden från statistik från mänsklig uppfattning om vad som räknas som en korrekt översättning. Slutsatsen blir därför att inte ens SMT är en helt ickefixerad MT-metod. Vidare är svaret på den andra inledningsfrågan att metodiken inom SMT inte räcker för att exakt parsa naturligt språk i en komplett interlingua. SMT får exempelvis problem ju mer olik ordföljden är mellan två språk (Russel & Norvig, 2009). Detta eftersom det ju baseras på principen att ju fler exempel på en given teckensträng som påträffats desto mer sannolikhet för att den strängen utgör den korrekta översättningen (desto högre poäng ges den med andra ord vid träning), och ju färre exempel som parsar varandra på samma sätt desto mindre statistisk power får sluthypotesen vid avkodningen. Andra exempel på problem som uppstår av samma orsak är egennamn och idiom i texter. Förbättringar på en del av detta hittar man inom HMT, där exempelvis statistical rule generation (SRG) och multi-pass (MP) kan nämnas i relation till SMT (Hutchins, 2003), vilket båda är tekniker som kombinerar SMT med RBMT-metoder för att effektivisera sökningen på olika sätt. Detta ökar dock fortfarande inte träffsäkerheten och för översättningen närmare ett interlingua. Det enda som historiskt sett har burit frukt av alternativen till SMT är bättre lingvistiska system, dvs. mer kompletta interlinguan, men att någonsin komma till en perfekt parafrasöversättning är inte rimligt inom en överskådlig framtid. Däremot kommer det bli intressant att se hur system som Google Translate utvecklas när mängden text i användbara korpusar växer med spridningen av information på Internet. Jag lutar snarare åt SMTapproachen än åt fulländandet av grundläggande syntaktiska regelverk som Noam Chomskys generativa grammatik, särskilt vad gäller naturliga språks dynamiska natur som ständigt fortsätter att utvecklas. Kanske någon gång i framtiden, när kognition är komplett formaliserat och Big Data-beräkningar genererar algoritmer för hur språk verkligen uppstår från grunden, att vi kommer att få se SMT passerat som fanbärare, men jag tror det är väldigt långt dit, och jag ser inga trovärdiga alternativ på horisonten ännu. Men vem vet, å andra sidan? Exponentiell ökning är ett ofta underskattat fenomen! 14

Källor 1) Lopez, A. (2008). Statistical Machine Translation. ACM Comput. Surv., 40, 3, Art. 8. University of Edinburgh. 2) Tripathi, S., Sarkhel, J. K. (2010). Approaches to Machine Translation. Annals of Library and Information Studies, vol. 57, Dec. 2010, pp. 388-393. Banaras Hindu University. 3) Russel, S. J., Norvig, P. (2009). Artificial Intelligence: A Modern Approach, 3e. Prentice Hall. 4) Hutchins, J. (2003). Example Based Machine Translation a Review and Commentary. Recent Advances in Example-based Machine Translation. Kluwer Academic Publishers. 15