Statistisk Maskinöversättning Anna Prytz Lillkull 729G11 annpr075@student.liu.se 2010-10-03
Innehållförteckning Inledning...3 Bakgund...3 Uppkomsten av maskinöversättning... 3 Ökat intresse för statistisk maskinöversättning... 4 Ord och dess relationer... 4 Språkkomplexitet... 4 Tillämpningsområden maskinöversättning... 4 Svårigheter med översättning... 5 Strukturskillnader... 5 Maskinöversättning...6 Ordbaserad översättning... 6 Transformationsmodell... 6 Interlingua... 6 Frasbaserade modeller... 6 Introduktion statistisk maskinöversättning... 7 Statistisk maskinöversättning: bakgrund... 7 Att bygga ett statistiskt maskinöversättningssystem... 8 Modellering del 1 -översättningsekvivalensmodell... 8 Modellering del 2 parameterisation... 8 Del 3 parameteruppskattning... 10 Del 4 avkodning... 10 Diskussion... 10 Referenser... 10
Inledning De flesta av oss talar och förstår endast ett eller några få språk. Det innebär att det finns tusentals språk vi inte behärskar. Språket blir en barriär vid kommunikation mellan människor då man varken kan förmedla något eller ta till sig något på ett främmande språk. Många människor är tvåspråkiga och kan översätta mellan två språk, men manuell översättning tar mycket lång tid. För att spara tid får maskiner översätta. För att kunna översätta från ett naturligt språk till ett annat, så att översättningen behåller samma betydelse, krävs idag en djup och rik förståelse av källspråket och en poetisk och kreativ behärskning av målspråket. Detta görs idag av människor vid hög kvalités litterära översättningar, men även de får ibland kompromissa för att översättningen ska vara tolerabel mot de båda språken. Om vi skulle kunna få en maskin att automatiskt översätta en mening på ett språk till ett annat perfekt krävs det förståelse av innehållet. Om maskiner kommer kunna översätta perfekt mellan två språk: då har vi skapat förstående maskiner, menar Jurafsky och Martin (2008). Maskinöversättning innebär att, med hjälp av datorer, översätta från ett språk till ett annat utan mänsklig involvering. Vad statistiska maskinöversättningsmodeller gör är att de behandlar översättning av naturligt språk som ett maskininlärningsproblem. Systemet utgår från mänskligt översätta texter och genom det lär sig systemets algoritmer att översätta automatiskt. Området är på framväxt och nya idéer presenteras hela tiden (Lopez, 2008). Bakgund Uppkomsten av maskinöversättning Det naturliga språkförståelse-fältet växte fram under 70-talet. Det drog igång med SHRDLU-systemet som var ett system som kunde acceptera kommandon i naturligt språk för att styra en robot. Roboten agerade i en begränsad leksaksvärld med olika block i. Den kunde till exempel förstå meningar som Flytta det röda blocket upp på toppen av det lilla gröna och utföra handlingen. Detta system var även det första som gjorde ett försök att bygga en omfattande grammatik för engelska språket. Under andra hälften av 90-talet genomgick språkbearbetnings-fältet stora förändringar. Förbättringar av snabbhet och minne för datorer tillät kommersiell exploatering av ett antal sidoområden inom bland annat språkbearbetning som stavnings- och grammatikkontroller. När internet senare började komma fanns det ett behov av språkbaserad informationsframskaffande. Automatisk språköversättning sågs i dess tidiga stadier som ett problem som skulle vara relativt enkelt att lösa. Det visade sig att problemet inte alls var så lätt som man hade trott och än idag kämpar utvecklare med diverse översättningsproblem (Jurafsky och Martin, 2008).
Ökat intresse för statistisk maskinöversättning Det ökade användandet av internet har starkt påverkat två valkretsar av översättningsanvändare. Den första är den krets som är intresserad av att sprida ut information på multipla språk. Det kan vara till exempel flerspråkiga regeringar eller företag som verkar på den globala marknaden. Det är denna utspridning av olika mänskligt översatta texter som har bidragit till att det finns mycket data att tillgå för den statistiska maskinöversättningsutvecklingen. Utspridningen av olika mänskligt översatta dokument på internet växer hela tiden. Den andra kretsen översättningsanvändare är de som är intresserade av att uppta information som inte är på deras eget språk. Det kan vara till exempel forskare eller vanliga internetanvändare. Det ökade behovet av bra översättningssystem leder till ett populärt intresse för maskinöversättning (Lopez, 2008). Ord och dess relationer Morfologi innebär att ord delas in i sina meningsfulla komponenter, som kallas för morfem. För att kunna skilja ett ord i singular från ett i plural kan man titta på morfologin där det sista morfemet antagligen kommer se olika ut för de båda orden. Syntax syftar till de strukturella relationerna som finns mellan orden i en mening, relaterat är grammatik. Med semantik menas den kunskap som finns kring vad orden och meningarna har för betydelse, vad de syftar till i verkligheten. Dessa komponenter är viktiga att ha kunskap om vid översättning. För att översätta ord kan det ibland krävas en kunskap kring ordets betydelse. Ibland kan det finnas flera alternativ till ett ords översättning. Synonymer är flera ord som har exakt samma betydelse. I de flesta fall kommer meningen att ha samma betydelse oavsett vilket ord man väljer av två synonymer, men vissa gånger krävs det att man väljer rätt för en korrekt betydelse av meningen. Synonymerna large och big kan inte slumpas vid översättning till big sister. Homonymer måste också tas i akt vid översättningar då en homonym är ett ord som kan ha flera olika betydelser beroende på sammanhang (Jurafsky och Martin, 2008). Språkkomplexitet Något som är viktigt att förstå och ha i beräkning vid studier inom språkbearbetning är de olika komplexitetsnivåerna som kan förekomma i naturligt språk. Ibland återkommer samma meningskonstruktioner men meningar kan ibland ha olika konstruktioner beroende på individens preferenser. Vissa meningar kan ibland vara svåra även för människor att förstå (Jurafsky och Martin, 2008). Tillämpningsområden maskinöversättning Maskinella översättningssystem översätter sällan perfekt. Bara för att maskinella översättningar inte alltid fångar den korrekta betydelsen av källmeningen behöver det inte betyda att översättningarna är oanvändbara. Förirring kan uppstå vid maskinöversättningar men vara begripliga trots allt. De kan vara användbara vid översättningar av till exempel recept då man trots viss förvirring ofta kan få en bra uppfattning om receptet, eftersom människan ofta kan lista ut betydelsen av en halvdålig översättning.
Automatisk översättning går betydligt fortare än manuell översättning. Därför används den ofta för att översätta långa texter som sedan efterredigeras av människor. Ett område där maskinöversättning fungerar bra, och inte kräver efterredigering, är domäner med begränsade vokabulär och bara några få grundfrastyper. I dessa domäner finns det sällan tvetydigheter i ordbetydelsen. Väderleksrapporter, flygbokningar, restaurangrekommendationer och hotellreservationer kan översättas maskinellt med bra resultat (Jurafsky och Martin, 2008). Svårigheter med översättning Det finns vissa universella likheter mellan alla språk. Likheter kommer av att språk har den funktionella rollen att vara ett kommunikationssystem mellan människor. Alla språk har till exempel ord som refererar till personer, för att prata om kvinnor, män, barn, ord för att äta och dricka, vara trevlig eller otrevlig. Alla språk innehåller också substantiv och verb. Men känt är att de flesta språk ändå skiljer sig åt i vissa avseenden. Vissa språk innehåller olika många ord. Ett språk kan ha många fler ord än ett annat och då skiljer sig samma mening på till exempel engelska och kinesiska där den kinesiska har färre. Många språk har stilistiska och kulturella skillnader. Men främst handlar det om att språk skiljer sig åt i dess systematiska struktur. Skillnaderna och likheterna i systematisk struktur är något vi kan studera och detta kallas för typologi. Nedan följer några typologiska fakta. Strukturskillnader Morfologiskt sätt kan språk kategoriseras i två variationisdimensioner. Den första dimensionen handlar om antal morfem per ord. I isolerande språk som vietnamesiska har varje ord ofta bara ett morfem. I polysyntetiska språk har orden ofta väldigt många morfem. Ett polysyntetiskt språk är till exempel eskimåspråket. Varje ord från dessa språk måste ofta översättas med en fras eller hel mening på ett ickepolysyntetiskt språk. Den andra morfologiska dimensionen handlar om den grad som morfem är segmenterade, från språk som turkiska där morfemen har klara gränser, till språk som ryska där ett enda affix kan ha flera morfem. Syntaktiskt sett är språk framträdande olika med avseende på ordningsföljd av verb, substantiv och objekt. Vid översättningar mellan språk som har olika ordföljd krävs omplaceringar av ord. De språk som har samma ordningsföljd brukar även ha andra gemensamma likheter i språkuppbyggnad. Något som kan skilja sig mellan språk är hur predikat i en mening kopplas till dess argument. I ungerskan markeras relationen mellan huvudordet och dess tillhörare på huvudordet. I svenskan däremot markeras relationen på icke-huvudordet. Exempel på svenska: mannens hus Exempel på hur det skulle sett ut med ungersk grammatik: mannen hus-hans Typologiska skillnader mellan språk gör att översättning försvåras (Jurafsky och Martin, 2008).
Maskinöversättning Ordbaserad översättning Statistiska maskinöversättningsmodeller influeras av de banbrytande IBM-modellerna. IBMmodellerna är ordbaserade modeller och tillhör den första generationen maskinöversättningsmodeller. En IBM-modell som har likheter med statistiska maskinöversättningsmodeller är IBM-modell 4. Denna modell är en mål-till-käll-modell det vill säga den producerar en källmening från en målmening (Lopez, 2008). I många modeller av ordöversättning, eller direktöversättning, översätter man genom att stegvis förvandla källmeningen till målmeningen. Man översätter ord för ord. För detta krävs ett antal lexikon och några enkla regler för att till exempel placera orden i en annan ordning. Vanligtvis motsvarar varje ord i källmeningen ett ord i målmeningen. Det stora problemet med dessa modeller är omplaceringsfenomenet. Denna metod används inte längre idag men är som sagt en föregångare till dagens system. Transformationsmodell Att se översättning som att det handlar om att övervinna de strukturella skillnaderna mellan språken har fått transformationsmodeller att växa fram. Dessa modeller försöker använda kunskapen kring de strukturella skillnaderna där de tittar hur två språk skiljer sig åt. Regler skapas för att kunna översätta mellan två språk. Ett problem med transformationsmodeller och alla dess regler är att reglerna måste skapas för alla par av språk vi vill översätta. Detta är inte optimalt om man vill översätta från flera språk till flera andra som till exempel inom EU, utan nya ansatser krävs. Interlingua En ansats som kallas interlingua har som grundidé att försöka utvinna innebörden av meningar för att sedan översätta just denna innebörd. Detta synsätt förutsätter att det finns en innebörd som går att representera. Tanken är att kunna representera alla meningar som betyder samma sak på samma sätt oavsett vilket språk det är på. Genom att använda en semantisk analyserare på källmeningen kan vi skapa sådana representationer, som beskriver relationer mellan orden, pronomen, prepositioner med mera (Jurafsky och Martin, 2008). Frasbaserade modeller Det är i naturligt språk vanligt att angränsande sekvenser av ord kan översättas som en enhet. Till skillnad från ordbaserad översättning där varje ord först måste översättas och sedan ordnas, om så ger frasbaserade modeller samma svar med färre steg. Det har visat sig vara större risk för att något går snett ju fler steg som är inblandade. I frasbaserade modeller är översättningsenheten en kortare eller längre fras. En fras från ett språk översätts till motsvarande fras i ett annat språk. Det spelar ingen roll om frasen är längre på ett
språk. Även ensamma ord, som inte tillhör någon speciell fras, kallas ettordsfraser och kan översättas. Översättningsprocessen sker i tre steg: 1. Meningen delas upp i fraser 2. Varje fras översätts till motsvarande 3. De översätta fraserna placeras i dess slutgiltiga ordning. Frasbaserade modeller producerar bättre översättningar än ordbaserade modeller (Jurafsky och Martin, 2008). Introduktion statistisk maskinöversättning När det finns en sekvens av J källord och en sekvens av I målord så är målet för översättningssystemet att med inputsekvensen f(j1) hitta en sekvens e(i1) som är översättningsekvivalent. Genom att visa de ord som motsvarar varandra i de två sekvenserna kan ett streck dras mellan orden, vilket kallas för att de är alignerade. Eftersom översättning av ord ofta är tvetydigt och valet då beror på kontext så måste översättningssystemet ha en mekanism som hjälper till att välja mellan flera olika alternativ. Ett annat problem är när språk skiljer sig åt i systematisk struktur. Systemet måste kunna ordna om orden så att de hamnat rätt. Alltså handlar översättning om att: göra ett antal ordöversättnings- och omplaceringsbeslut (Lopez, 2008). De klassiska metoderna, som direktöversättning och interlingua fokuserar främst på processen. En metod som väljer att fokusera på resultatet är statistiska maskinöversättningsmetoder. Målet med en översättning är att få en outputmening som maximerar någon värdefunktion som representerar vikten av överrensstämmelse och flyt. Statistisk maskinöversättning gör detta genom att bygga probabilistiska modeller av överrensstämmelse och flyt och sen kombinerar modellerna att välja den troligaste översättningen. Att modellera översättningen från en källspråksmening F till en målspråksmening E där målet är att maximera överrensstämmelse och flyt kan se ut så h ä r: bästa översättningen Ê = argmax av E överrensstämmelse(e,f) flyt(e) Denna modell kallas för bruskanalen (Jurafsky och Martin, 2008). Statistisk maskinöversättning: bakgrund Ansatsen till statistisk maskinöversättning är att se källmeningen, det vill säga indata som en korrupt version av målmeningen. Till exempel skulle en utländsk mening F, som vi vill översätta, vara en förvriden version av någon engelsk mening E, som vi vill ta reda på. Systemets uppgift är att upptäcka den dolda meningen E på engelska som genererade observationsmeningen F (Jurafsky och Martin, 2008).
Statistisk maskinöversättning handlar om att hantera översättning som ett maskininlärningsproblem. Det innebär att en inlärningsalgoritm appliceras till en stor samling tidigare översatt text, känt som en parallellkorpus (Lopez, 2008). N-gram är en probabilistisk modell för att förutsäga det troligaste ordet eller ordföljden. N-gram modellen är ett av de viktigaste verktygen inom språkbearbetning. Genom att ha data om vilka ord och ordföljder som är mest förekommande kan man räkna ut till exempel ordföljder. Modellen får träna på en parallellkorpus och är sedan kapabel att översätta tidigare osedd text på något av de två språken som fanns i parallellkorpusen (Jurafsky och Martin, 2008). Med en tillräckligt stor parallellkorpus och ett statistiskt maskinöversättningsverktyg kan ett maskinöversättningssystem för ett nytt språkpar byggas väldigt snabbt. Korrektheten för systemet beror på kvantitet, kvalitet och domän av träningskorpusarna (Lopez, 2008). Att bygga ett statistiskt maskinöversättningssystem För att bygga ett statistiskt maskinöversättningssystem finns det fyra problem som måste lösas. Dessa är: 1. För att förvandla en källmening till en målmening måste den serie av steg som krävs beskrivas. Detta kallas en översättningsekvivalensmodell. 2. Modellen måste kunna välja bra beslut när den står inför en tvetydighet. Det behövs en parameter, ett poängsystem för varje möjlig käll- och målmening som modellen väljer bland. Detta kallas parameterisation. 3. Parametern måste kunna definiera poängen för meningarna och detta kallas för parameteruppskattning. 4. Slutligen måste modellen kunna leta upp den målmening som har högst poäng, givet en källmening. Detta kallas för avkodning (Lopez, 2008). Modellering del 1 -översättningsekvivalensmodell En modell kan förklaras som en uppsättning regler som används av maskinöversättningssystemet för att kunna översätta meningar. I princip så kan reglerna komma från vart som helst, men ofta är de automatiskt uttagna från en parallellkorpus. Det finns många olika typer av modeller. Modellering del 2 parameterisation Då många möjliga alternativa översättningar finns i naturligt språk krävs det en mekanism som kan välja mellan dem. Funktionen för klassificering kommer vara förenklad P(e, d f). f är inputmeningen som ska översättas till e. Funktionen går över skilda mängder, men mängderna är väldigt stora eller oändliga.
Målet med matematisk modellering är att parameterisera funktionen för att effektivt och pålitligt lära den. För att göra detta kan man bland annat använda generativa modeller. En metod för att manipulera probabilistiska modeller är genom kedjeregeln: P(x,y) = P(x y) P(y) Generativa modeller löser upp P(x y) med Bayers regel till: P(X,Y) P(y x) P(x) P(x y) = = P(y) P(y) Genom att applicera Bayers regel till det strukturerade klassifikationsproblemet blir ekvationen: P(f,d e) P(e) P(e,d f) = P(f) Vid avkodning är denominatorn P(f) konstant oavsett input så den kan ignoreras och därmed fokuseras sannolikheterna för P(f,d e) och P(e). I statistisk maskinöversättning kallas funktionen P(e) språkmodellen och P(f,d e) för översättningsmodellen. För att upptäcka meningen e(i1) givet f(j1) modelleras det motsatta, precis som i IBM modell 4 som översatte från e(i1) till f(j1). Fördelen med denna, över att modellera P(e,d f) direkt, är att vi kan använd två oberoende modeller för analys av flertydigheter. Detta är fördelaktigt eftersom de båda modellernas uppskattningar är något felaktiga. Genom att använda dem tillsammans kan felaktigheterna uppvägas något. Inom språkmodellering är vårt mål att hitta en lätthanterlig representation för funktionen P((e(I1)). Generativa modeller använder probabilistiska verktyg där ett är kedjeregeln som får formeln att förvandlas till: I P((e(I1)) = P(ei ei-1, 1) j=1 Ekvationen berättar att den villkorliga sannolikheten för meningen e(i1) är produkten av många små sannolikheter, som var och en korresponderar med ett ensamt ord. För att ytterligare förenkla modellen införs något som kallas villkorligt oberoende. När variabeln x är villkorligt oberoende av y menas att P(x y) = P(x) det vill säga att när värdet på y är känt så påverkar det inte sannolikhetsfördelningen av x. Det är inte bra att göra för många eller fel antaganden om oberoende för att det kan leda till att sannolikhetsfördelningarna blir inkorrekta. Översättningsmodeller förenklas på samma vis som språkmodeller. Varje fördelning på höger sida i ekvationen innehåller ett tillräckligt litet antal termer för att systemet kan lära sig dem. När systemet kör kan värdet på termerna tittas upp och användas för att räkna ut funktionen. Alla dessa värden är parametrar av modellen (Lopez, 2008).
Del 3 parameteruppskattning Parameteruppskattning är när parametrarna för P(e,d f) får värden. I statistisk maskinöversättning får maskininlärningsalgoritmen en parallellkorpus som input för att kunna räkna ut parametervärden. De största parametervärdena är de som, troligen, ger bästa översättningen så därför vill systemet hitta den funktionen som ger maximalt värde. Del 4 avkodning Av modellen och uppskattningen av alla parametrar kan nu nya inputmeningar översättas. Detta steg kallas avkodning. Finite-state-avkodning är en algoritm där sökning sker genom en direkt acyklisk graf av tillstånd som representerar delar eller fullständiga översättningshypoteser. Dessa är konstruerade från vänster till höger i målspråkets ordföljd. Den hypotesmening som har högst poäng väljs som översättning (Lopez, 2008). Diskussion Jag tror att språköversättning alltid kommer att handla om språkförståelse i slutändan, oavsett hur många och hur avancerade modeller man skapar. Språköversättning och språkförståelse hänger ihop och jag tror inte att man med algoritmer kan skapa ett system som automatiskt kommer kunna översätta mellan språk på ett sådant sätt att människan tycker att det är felfritt. Eftersom alla individer har sina egna sätt att uttrycka sig på och är kreativa i det språk de behärskar, så skapas nya kombinationer av ord hela tiden. Nya uttryck kommer och går och ibland kan det vara svårt även för de människor som pratar ett språk att uppfatta betydelser av meningar. Men jag tror att översättningssystemen kommer att bli bättre i framtiden och att det kommer att underlätta för översättningsanvändarna. Även om översättningarna inte kommer vara helt perfekta så kommer människor fortfarande att ofta kunna lista ut innebörden av en översättning. Svårigheterna med de regelbaserade översättningssystemen är att reglerna är olika mellan alla språk och det blir fort svårt att hantera alla dessa regler. Även känns det som att denna ansats är den som mest tar hänsyn till just förståelsen av ett språk vid översättning. De statistiska modellerna har gått längre ifrån förståelsen tycker jag och satsar istället på att matcha inputmeningen med tidigare sedda meningar från parallellkorpusar. Det är en helt annan ansats än den som grundar sig på förståelsen av språk och dess säregenheter, men visat sig vara den överlägset bästa. I framtiden kanske det kommer bättre modeller som använder sig av det bästa från de båda ansatserna. Referenser Jurafsky, D. and Martin, J. (2008). Speech and language processing. 2 nd ed. Prentice- Hall Lopez, A. (2008). Statistical Machine Translation