Johan Karlsson Johka490. Statistical machine translation JOHAN KARLSSON

Relevanta dokument
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

Statistisk maskinöversättning

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

Statistisk Maskinöversättning eller:

SMT = ickefixerad maskinöversättning?

Taltaggning. Rapport av Daniel Hasselrot , 13 oktober 2003

Probabilistisk logik 2

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

Maskinöversättning 2008

Grundläggande textanalys. Joakim Nivre

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

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

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

Tekniker för storskalig parsning

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

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

Kursplaneöversättaren. Lina Stadell

Maskinöversättning 2008

- ett statistiskt fråga-svarsystem

Word- sense disambiguation

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

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

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

Datorlingvistisk grammatik

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

Föreläsning 5: Grafer Del 1

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

Föreläsninsanteckningar till föreläsning 3: Entropi

Word2Vec. Högkvalitativa vektorrepresentationer av ord tränat på stora mängder data. Innehåll LINKÖPINGS UNIVERSITET. 1. Inledning...

Cristina Eriksson oktober 2001

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

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

Probabilistisk logik 1

Anna: Bertil: Cecilia:

Fil: /home/lah/undervisning/sprakteknologi/ohbilder/oh1_kv.odp. Tjänster

DAB760: Språk och logik

Språkteknologi och Open Source

Maskinöversättning. F Anna Sågvall Hein

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

Optimering av depåpositioner för den minimala bensinförbrukningen i öknen

MÖSG ht 2005 Maskinöversättningssystemet MATS

Språkteknologi. Språkteknologi

Korpusbaserad Maskinöversättning

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

NEURAL MASKINÖVERSÄTTNING

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen

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

TDDA94 LINGVISTIK, 3 poäng tisdag 19 december 2000

Tekniker för storskalig parsning: Grundbegrepp

Statistisk mönsterigenkänning

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

ENGA01: Engelska grundkurs, 30 högskolepoäng Studiebeskrivning

Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, onsdagen den 17 augusti 2011, kl

Automatiserad kvalitetsbedömning av SOS samtal. Frida Hermansson-TUCAP

Partiell parsning Parsning som sökning

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

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar

Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

729G11 Artificiell Intelligens Marcus Johansson Marjo581. Fuzzy logic. Marcus Johansson Marjo581

Tekniken bakom språket

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

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

Likhetstecknets innebörd

4 Fler deriveringsregler

ENGA01: Engelska grundkurs, 30 högskolepoäng Studiebeskrivning

Tal i bråkform. Kapitlet behandlar. Att förstå tal

Extramaterial till Matematik X

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

Programmering II (ID1019)

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

Föreläsning 1: Intro till kursen och programmering

Matematik för språkteknologer

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

specialpedagogik/grundskola/122_inkludering_och_delaktighet_flersprakighet

Statistikens grunder HT, dagtid Statistiska institutionen

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

Omvärldsbevakning. Sammanfattning av Business Intelligence-kursen. Nyhetsarkiv och källork. Hämta webbnyheter. Modeller över texter

Stokastiska processer och simulering I 24 maj

Likhetstecknets innebörd

Föreläsning 5 Innehåll

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

Teoretisk lingvistik och datalingvistik. Robin Cooper

Kontextfria grammatiker

Ontologier. Cassandra Svensson

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

FUZZY LOGIC. Christopher Palm chrpa087

Reguljära uttryck Grammatiker Rekursiv nedåkning Allmänna kontextfria grammatiker. Syntaxanalys. Douglas Wikström KTH Stockholm

Forskning och utveckling inom språkteknologi Uppgift 3: Projektförslag Parallelliserad dependensparsning i CUDA

Artificiell Intelligens

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

Föreläsning 1: Intro till kursen och programmering

DATORER OCH PROGRAM. Datorn är en symbolmaskin

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

Objektorienterad modellering och diskreta strukturer. 13. Problem. Sven Gestegård Robertz. Datavetenskap, LTH

Pre-editering och maskinöversättning. Convertus AB

Första sidan är ett försättsblad (laddas ned från kurshemsidan) Alla frågor som nns i uppgiftstexten är besvarade

Dependensregler - Lathund

Inledande programmering med C# (1DV402) Introduktion till programmering

Från ljusenergi till en kub som går att stå på Hur man får en dator att känna igen olika former i visuell information

Transkript:

Johan Karlsson Johka490 Statistical machine translation JOHAN KARLSSON

Innehåll Introduktion... 2 Bakgrund... 3 Statistiska maskinöversättningssystem... 3 Hur ett SMT-system fungerar... 4 Motsvarighetsmodell för översättning... 4 Ändlig tillståndsomvandlare... 4 Synkron kontextfri grammatik... 5 Parameterisering... 6 Generativa modeller... 7 Parameteruppskattning... 8 Avkodning... 9 Avkodning i FST-modeller... 9 Avkodning i SCFG-modeller... 9 Diskussion... 10 Litteraturförteckning... 11

Introduktion Sen industriella revolutionen har maskiner tagit över allt mer uppgifter från människan. Allt från att odla vete till kollektivtrafik har blivit automatiserat. Under de senaste årtiondena har även maskiner som löser uppgifter som anses kräva tänkande och intelligens blivit allt vanligare i form av datorer. Uppgifter som kräver många års träning även för människor har blivit gratistjänster på internet. En av dessa tjänster är automatisk översättning (Hädanefter MT från engelskans machine translation). Förr fick man använda sig av lexikon för att översätta en mening ord för ord men idag finns översättningsprogram som gör sak automatiskt. Att översätta en text från ett språk till ett annat är en svår konst. Det finns många utmaningar man ställs inför när man ska göra en översättning. En sådan utmaning är tvetydighet. Syntaktisk, lexikal och semantisk tvetydighet förekommer nästan alltid i någon form vid översättning (Dorr, Jordan, & Benoit, 1998). Syntaktisk tvetydighet innebär att samma fras kan syfta på olika saker. Meningen Jag såg mannen på kullen med kikaren kan ha flera olika innebörder. Lexikal tvetydighet betyder att en och samma stavning kan ha två olika betydelser, som till exempel ordet far. Semantisk tvetydighet innebär att ett källord kan ha flera motsvarigheter i målspråk, exempelvis bo som på engelska kan översättas till live och stay. Dorr, Jordan och Benoit (1998) skriver vidare att det inte finns något facit för hur en översättning ska se ut. Olika texter och sammanhang kräver olika översättningar. Alla dessa problem är något som människor är bra på att avgöra om de är försedda med en kontext. Men det är väldigt svårt att försöka hitta och skriva bra regler för hur översättningar ska gå till. Även om idéerna om en automatisk översättningsmaskin har funnits i flera århundraden är det inte fören det senaste 60 åren som det faktiskt gjorts några framsteg. Under 1950- och det tidiga 60-talet var optimismen att knäcka koden till MT stor. Men 1966 kom Automatic Language Processing Advisory Committee med en dyster rapport. Teknologin ansågs vara för dålig och det visade sig att mänskliga översättare var betydligt billigare och bättre än deras maskinella motsvarigheter (Dorr, Jordan, & Benoit, 1998). Detta gjorde att utvecklingen stannade av. Under de två senaste årtiondena har dock MT åter fått stort genomslag, och fokus har skiftat från att manuellt försöka skriva regler för programmen. Istället har man idag precis som inom andra delområden inom Natural Language Processing (NLP) istället riktat in sig på program som själva kan lära sig själva. Statistisk maskinöversättning (Hädanefter SMT från

engelskans statistical machine translation) bygger på att man låter ett program automatiskt lära sig vilka översättningar som är statistiskt troligast för genom att låta det jämföra samma manuella översatta text på två språk ifrån så kallade inlärningskorpusar. (Koehn, 2012) Bakgrund Statistiska maskinöversättningssystem SMT har på senare år blivit allt mer populärt, framför allt sen man insåg nyttan med program som inte behöver översätta perfekt. I tidig utveckling av MT ställde man höga krav på översättningarna som man ansåg skulle kunna vara på en människas nivå. Idag har fokus skiftats och i och med internets framväxt har efterfrågan på tillräckligt bra översättning ökat (Koehn, 2012). Idag finns det en marknad för översättningar som inte är perfekta men som är tillräckligt bra för att en person ska förstå vad som menas. SMT hanterar översättning som ett maskininlärningsproblem, vilket innebär att man låter ett program lära sig själv från en färdigöversatt text. Genom att applicera en inlärningsalgoritm på två parallella korpusar kan programmet sedan översätta tidigare okända meningar. Den stora fördelen med SMT är därför att det inte kräver manuellt nedskrivna regler för att fungera, istället kan programmet lära sig själv. I och med att programmet lär sig och skapar statistiska sannolikheter från redan översatta korpusar kan det bli väldigt bra inom en begränsad domän. Detta på grund av att språket tenderar att vara sig likt när man pratar om liknande ämnen, och det därmed är en statistiskt större chans att ord och fraser förekommer flera gånger i en text relaterad till en specifik domän. Detta medför dock även att det är svårt att göra program för öppna domäner och att det krävs mycket träningsdata för att utveckla ett bra generellt program. (Bertoldi & Federico, 2009) På senare år har tjänster som Google translate börjat erbjuda nya översättningsmöjligheter, till exempel av hela hemsidor. SMT försöks även implementerats tillsammans med andra tjänster, framför allt i handhållna enheter (Koehn, 2012). Exempel på detta är röst- och bildigenkänningssystem som i realtid översätter språk. I och med det de senare årens större överfrågan förekommer det idag allt mer forskning på utvecklingen av SMT-system.

Hur ett SMT-system fungerar Lopez (2008) delar in översättningsprocessen i ett SMT-system i fyra olika delar. Först måste väljs en motsvarighetsmodell (kallas även bara modell) för hur översättningen ska gå till. En modell är ett antal steg programmet måste göra för att översätta en text. Steg två är att få modellen att göra bra val i de fall det finns tvetydiga översättningar. Detta kallas parameterisering och görs för att modellen ska komma fram till den bästa möjliga översättningen. Varje input och output jämförs och poängsätts. I steg tre gör systemet en parameteruppskattning för att lära sig vilka ord som motsvarar varandra på käll- och målspråket. Till sist måste modellen avkoda översättningen. Detta görs genom att ta fram den översättningen med högst poäng för den givna inputen. De olika stegen förklaras mer ingående nedan, om inget annat anges baseras följande delar på Lopez (2008) beskrivning. Motsvarighetsmodell för översättning En motsvarighetsmodell är en samling regler för hur ett MT-system ska översätta en mening från ett språk till ett annat. Det finns många olika sorters modeller men Lopez skriver att de vanligaste är ändlig tillståndsomvandlare (Finite-state transducers (FST)) och synkron kontextfri grammatik (synchronous context-free grammars (SCFG)). FST kommer ursprungligen från datavetenskapen och bygger på samma koncept som en ändlig automat (finite-state automata (FSA)), som är en beräkningsmodell som har ett ändligt antal tillstånd och övergångar mellan dessa tillstånd. En FSA befinner sig alltid i ett av tillstånden och kan ändra tillstånd med hjälp av extern input. SCFG kommer ursprungligen från språkteori och bygger på grammatiska regler som är kopplade till två språk, en grammatisk regel i källspråket har alltså (i bästa fall) en motsvarande regel i målspråket. Detta gör att ett ord i källspråket kan ersättas (översättas) med noll, ett eller flera ord i målspråket, baserat på dessa regler, oavsett kontext. Ändlig tillståndsomvandlare En ändlig tillståndsomvandlare är en variant av en ändlig automat som kan definieras som en mängd symboler, en mängd tillstånd och en mängd övergångar mellan dessa tillstånd. Övergångarna kan förklaras med grundtillståndet, sluttillståndet och en symbol. Det kan även illustreras med en riktad graf med noder och riktade kanter, varje nod kan endast peka på en annan nod, kanterna mellan noderna visar en övergång (Martin & Jurafsky, 1999). Till skillnad från en FSA har en FST två mängder symboler en från käll- och en från målspråket som motsvarar varandra. En FST kan därför sägas redogöra för relationer mellan ord som till

exempel översättning från två olika språk. Inputen hej skulle i en FST som var tränad på att översätta från svenska till engelska kunna ge outputen hi. En annan skillnad från en FSA är att en FST kan ge flera olika outputs till ett och samma input. Det finns både ordbaserade och frasbaserade FST-modeller. Ordbaserade FST-modeller bygger på tre olika steg. I steg ett räknar modellen ut hur många ord i målspråket som motsvarar källordet. Detta kallas för ett ords fertilitet. Varje ord kan ha en fertilitet på noll, ett eller flera, efter det multipliceras ordet med dess fertilitet. I steg två sker själva översättningen. Varje ord i källspråket översätts separat till målspråket. I steg tre flyttas orden om i en ordning som stämmer bättre överens med målspråkets. Det tredje steget är FST-modellernas största svaghet. I och med att en omvandlare är menad att matcha två symboler, i det här fallet två ord är det svårt att hitta ett bra sätt att jämföra olika ords placering i olika språk eftersom att det inte finns någon kontext på ordnivån. Frasbaserade FST-modeller översätter till skillnad från ordbaserade inte varje ord för sig. Istället delas varje mening in i fraser som översätts som en sekvens. Fertilitet är borta och varje sekvens översätts till exakt en sekvens i målspråket. De översatta fraserna kan dock ha olika längd från källspråket. Fördelen med frasbaserade modeller är att varje fras struktureras för sig, möjligheterna för ordningen på orden är därmed mer begränsad än i ordbaserade modeller. Precis som ordbaserade går frasbaserade modeller genom tre steg. Det första steget är att källmeningen delas in i fraser. Detta baseras på systemets tidigare erfarenheter om vilka ord som ofta förekommer tillsammans. I steg två översätts varje fras. I det tredje steget flyttas fraserna om för att förhoppningsvis bilda en grammatiskt korrekt mening. Omförflyttningen av fraser går till på samma sätt som den gör i ordbaserade modeller. Frasbaserade modeller kräver oftast större träningsdata än ordbaserade för att det är mindre sannolikhet att en hel fras förekommer än ett enskilt ord. Frasbaserade modeller är dock oftast bättre på att hantera hynonymer och sammansatta ord. (Tripathi & Sarkhel, 2010). Synkron kontextfri grammatik En SCFG-modell har flera fördelar jämfört med FST-modell. SCFG-modeller bygger på regler från de båda språken de översätter mellan. Detta gör att det är lättare att representera syntaktiska skillnader och likheter mellan språken. Det gör även att det är lättare att förflytta ord och fraser över långa avstånd i meningar. En SCFG-modell bygger på CFG vilket består av avslutade symboler i detta fall ord, och icke avslutade symboler i detta fall syntaktiska kategorier som till exempel verbfras. Processen börjar med en syntaktisk kategori, till exempel nominalfras, denna ersätts sedan enligt regler med antingen hierarkiskt lägre

syntaktiska kategorier eller genom en avslutad symbol, det vill säga ett ord. Denna process fortsätter fram till dess att alla icke avslutade symboler har ersatts med avslutade. Vilket kan illustreras i ett träddiagram (bild 1). Bild 1. Ett träddiagram från en SCFG-modell Parameterisering FST- och SCFG- modellerna tar fram många möjliga översättningar på ett givet input. Modeller hjälper oss hitta ord eller fraser som matchar varandra i två språk. Problemet med detta är som tidigare nämnts naturliga språks tvetydighet, ett och samma ord eller fras kan ha flera olika betydelser. Vilken av betydelserna som är korrekt kan endast avgöras av kontexten. Systemet behöver därför nåt sätt att välja den rätta betydelsen. Lösningen på detta kallas parameterisering. Parameterisering innebär att varje målmening poängsätts. Parameterisering kommer från maskininlärning och det finns ett antal olika modeller för det. Problemet som ska lösas är att hitta den målmening som bäst motsvarar källmeningen. För att göra detta måste man räkna ut sannolikheten för outputen i målspråket baserat på den givna inputen från källspråket, P(e f). Problemet är dock att det finns ett antal olika målmeningar och lösningen blir därför att summera alla möjliga härledningar till målmeningen, detta görs med funktionen P(e f) = d:y (d,e) P(e, d f). Denna beräkning är exponentiell i dess komplexitet, vilket gör den för beräkningsmässigt komplicerad för att användas i praktiken. Därför används oftast endast P(e, d f), där d är modellen som används, alltså FST eller SCFG. Med andra ord, sannolikheten för att det givna ordet från källspråket motsvarar ett givet ord på målspråket är summan av samtliga fall där dessa matchar varandra i de tvåspråkiga korpusarna, givet förhållanderegeln d. Även detta ställer till problem beräkningsmässigt. Eftersom e och f är meningar från olika språk finns det i princip oändligt många möjligheter att härleda dessa meningar till varandra. Därför görs en parameterisering av funktionen. Det finns ett antal sätt

att genomföra parameterisering men det vanligaste är att man använder generativa modeller, vilket förklaras mer ingående nedan. Generativa modeller Generativa modeller använder sig av kedjeregeln och Bayes regel för att förenkla uttrycket P(e, d f). Kedjeregeln fungerar enligt: P(x, y) = P(x y)p(y), och Bayes regel fungerar enligt: P(y x) = P(x y)p(y). Kedjeregeln och Bayes regel på funktionen P(e, d f) ger därför P(x) P(e, d f) = P(f,d e)p(e). Eftersom nämnaren P(f ) är samma för alla inputs kan den ignoreras. P(f) Kvar blir då P(e, d f) = P(f, d e)p(e). På denna funktion kan man applicera två olika modeller på problemet. Dessa modeller kallas språk- och översättningsmodeller. Genom att applicera två olika modeller får man en mer balanserad uträkning som i bästa fall väger upp för varandras svagheter. De båda modellerna kan ses som stokastiska modeller som bygger på heuristik från inlärningen av korpusar. Språkmodellen som använder sig av P(e) kan ses som en process som genererar stokastiska meningar på målspråket. Medan Översättningsmodellen som använder sig av P(f, d e) kan ses som en stokastisk process som genererar krypterade meningar från källspråket till målspråket. Brown et. al. (1993) skriver att översättningsmodellen ger stora sannolikheter för meningar i målspråket som har rätt ord för att förklara innebörden av källmeningen, oavsett hur välformulerade de är. Språkmodellens sannolikheter å andra sidan är stora för välformulerade meningar i målspråket, men saknar förankring i källspråket. När sannolikheterna från de båda modellerna multipliceras får de meningar som både förklarar innebörden och är välformulerade högst sannolikhet. Hur de båda modellerna fungerar förklaras mer ingående nedan. Språkmodeller Man använder som sagt språkmodellen för att ta fram välformulerade meningar i målspråket, eller med andra ord den mening som har störst sannolikheten att förekomma i målspråket. Detta kan skrivas genom funktionen P(e 1 I ). Om man applicerar kedjeregeln på denna funktion kommer man fram till att den betingade sannolikheten för e 1 I är summan av flera större sannolikheter som motsvarar sannolikheten för översättningen av varje enskilt ord, funktionen för detta ser ut såhär; P(e 1 I ) = I J=1 P (e i e i 1 1 ). Detta förenklar beräkningen något men den är fortfarande komplex. För att underlätta ytterligare kan man använda sig av betingad självständighet, det betyder att varje ord översätts oberoende av de andra orden i meningen. Detta gör dock översättningen mindre tillförlitlig, men det är nödvändigt för att hålla ner komplexiteten på beräkningen. För att hålla nere beräkningskomplexiteten men samtidigt

behålla lite kontext i meningsbyggnaden brukar man ha betingad självständighet för alla ord förutom de närmast föregående. Detta kallas för en n-gram språkmodell. Det vanligaste är att varje ord anses vara oberoende av alla ord förutom det precis innan, n-1, vilket medför lite mer tillförlitlighet men har fortfarande en beräkningsnivå som är möjlig. Detta kallas för en bigram modell och använder sig av funktionen e I 1 I n. En n-gram språkmodell använder sig därför av funktionen P(e 1 I = Översättningsmodeller I J=1 P (e i e i 1 i n ). Man använder sig av en översättningsmodell för att inkludera rätt ord i målmeningen för att förklara innebörden av källmeningen. Uppbyggnaden liknar språkmodellens men istället för att söka efter grammatiskt korrekt mening söker den efter en bra modell för hur den mening fås. Modellerna motsvarar övergångarna i en FST eller en hierarkisk ersättning i en SCFGmodell. För att behålla komplexiteten på en rimlig nivå vill man i en översättningsmodell precis som i en språkmodell ha sannolikheten för mindre enheter än hela meningen. Detta uppnås på samma sätt som i språkmodeller genom att använda sig av kedjeregeln. Vilken gör att varje steg i en FST-modell och varje övergång i en SCFG-modell representeras. Till slut kan man använda sig av betingad självständighet för att få ekvationen P(f 1 I, d 1 m e 1 I = J J=1 P(f j f j 1 1, f j 1 1, e I 1 M m=1 P( d m d m 1 1, e I 1 ). Parameteruppskattning När P(e, d f) har definierats måste det för att uppskatta vilken som är den bästa översättningen tilldelas ett värde till alla parametrar (Lopez, 2008). Detta kallas en parameteruppskattning och är en teknik som kommer från maskininlärning. I ett SMT-system används en parallell korpus för att låta programmet basera sannolikheter på dessa värden. Sannolikheterna måste uppskattas på grund av språks tvetydighet. Ett ord kan ha olika betydelse vilket gör att För att göra det antas att den parallella korpusen är översatt av programmet och att den är korrekt. Målet är att hitta den uppskattning som har maximal sannolikhet. Detta görs genom att anta att träningskorpusen är C (E F ), alla parametrar är Θ och sannolikheten för C under alla parametrar är P Θ (C). Målet är då att hitta alla parametrar som uppfyller funktionen och därefter välja ut den bästa. Om ett ord förekommer ofta i träningskorpusen är det större chans att uppskattningen ligger nära det faktiska värdet. Ju större träningskorpusen är desto bättre blir systemet på att uppskatta.

Avkodning Efter att parameteruppskattning har gjorts är det dags att avkoda den utdata som detta ger. Det är i det här steget man kan få ut nya översättningar. Detta görs genom att lösa maximeringsproblemet i följande ekvation. Funktionen kallas för beslutsregeln, det finns andra alternativ men just den här är den mest använda. Variablerna i ekvationen gör att det är en väldigt stor sökrymd. Det är därför viktigt att söka så effektivt som möjligt. FST och SCFG-modeller använder sig av två olika avkodningssystem. Avkodning i FST-modeller FST-modeller söker i en acyklisk riktat graf. Varje tillstånd i grafen består av: En delmängd med positionerna i källmeningen på de ord som blivit översatta. Vid n-gram modeller memoreras de n-1 föregående orden. Delhypotesen, det vill säga varje genererad nods, kostnad. Den uppskattade kvarvarande kostnaden för att komplettera delhypotesen. Eftersom att sökrymden oftast är väldigt stor och en översättning inte kan vara optimal används nästan aldrig en optimal sökmetod. A* kan räkna ut svaret på ekvationen exakt och därmed generera den översättning som har störst sannolikhet, men det är ett för beräkningskrävande alternativ. Istället används ofta Beam Search vilket är en metod för att begränsa sökningen. I beam search utökas endast de mest troliga noderna för varje tillstånd. Avkodning i SCFG-modeller Målet med avkodning i SCFG-modeller är att räkna ut det träd som har störst sannolikhet. Detta görs genom att hitta det träd som bäst motsvarar grammatiken från källmeningen för att sedan kopiera motsvarande träd för målmeningen. Tillstånden i sökrymden, trädens noder, kallas för spans och består av en del av meningen eller en icke avslutad symbol, samt regler från modellen för att kombinera spans. Sökningen går till genom att utgå från varje källord och generera en span. Sedan används modellens regler för att generera hierarkiskt högre kategorier tillsammans med närliggande spans för att generera nya spans. Detta itereras till dess att källspråksträdet har genererats därefter produceras själva översättningen. SCFG-avkodning är i teorin mindre komplext än FST-avkodning men med bra avgränsningar i den senare är det möjligt att skära ned på komplexiteten. I praktiken är nästan alla dagens FST-system snabbare än SCFG-systemen.

Diskussion Utvecklingen av MT och framför allt SMT har gått framåt mycket under de senaste årtiondena. Internet har efterfrågat en ny sorts översättning som inte behöver vara perfekt. Detta är något som både är en möjlighet och utmaning för SMT-system. I och med att det ett system kan lära sig av sig själv finns det stora möjligheter att utveckla det ytterligare och applicera det på specifika domäner. Utmaningen att översätta ospecifika texter, som ofta förekommer på internet, är därför också stor och kräver därmed vidare forskning. Men forskningsfältet är relativt ungt och det finns idag många olika modeller att använda sig av. Samspel mellan dessa modeller eller framsteg inom ett specifik modell kan tänkas utveckla nya synsätt på området. Många teorier och modeller inom SMT kommer från andra ämnen som natural language processing (NLP), att kunskapen inom dessa områden ökar kommer även SMT-system att tjäna på. Något som i blivit större är också interaktionen mellan SMT och dessa andra områden. I samspelet mellan NLP och SMT finns även problemet med domänlös översättning. Hur man kan lösa är en viktig fråga för vidare forskning.

Litteraturförteckning Bertoldi, N., & Federico, M. (2009). Domain Adaptation for Statistical Machine Translation with Monolingual Resources, 30, 182 189. Brown, P., Della Pietra, V., Della Pietra, S., & Mercer, R. (1993). The Mathematics of Statistical Machine Translation: Parameter Estimation. Computational Linguistics, 19(2), 263 311. Dorr, B. J., Jordan, P. W., & Benoit, J. W. (1998). A Survey in Current Paradigms in Machine Translation. Koehn, P. (2012). Statistical Machine Translation. New York: Cambridge University press. Lopez, A. (2008). Statistical machine translation. Edinburgh: University of Edinburgh. Martin, J. H., & Jurafsky, D. (1999). Speech and Language Processing. New Jersey: Prentice Hall. Tripathi, S., & Sarkhel, J. K. (2010). Approaches to machine translation. Annals of Library and Information Studies, 57, 388 393.