Maskinöversättning Cristina Eriksson 660719-4005 d98-cer@nada.kth.se 15 oktober 2001 1
Sammanfattning Att låta en maskin översätta från ett språk till ett annat är ett forskningsområde som man lägger ner stora resurser på. Det finns flera olika angreppsmetoder för att få en bra översättning. Flera metoder används parrallelt och tre stora angreppssätt är syntaktisk översättning, semantisk översättning och direkt översättning. Dessa elaborerar jag över med några enkla exempel. Både inom det civila och militära så finns det stora besparingar att göra om man kan snabba upp översättningsprocessen. Bara inom EU ska alla skrivna dokument översättas till medlemsländernas språk och inom det militära kan vi bara gissa oss till vilka oerhörda resursbesparingar en snabb och effektiv maskinöversättning skulle ge. Innehåll 1 Inledning 3 2 Maskinöversättning 3 2.1 Syntaktisk översättning...................... 4 2.2 Semantisk översättning...................... 5 2.3 Direkt översättning........................ 6 3 Slutledning 7 2
1 Inledning Som en del av kursen Språkteknologi, 2D1418, som ges under period 1 hösten 2001 av Institutionen för Numerisk Analys och Datalogi vid KTH, ska det lämnas in en kortare uppsats som behandlar ett ämne inom språkteknologin. Jag har valt att skriva om maskinöversättning, ett ämne som jag tycker verkar mycket intressant. Maskinöversättning är dock ett stort område där utvecklingen går framåt, så jag har valt att inrikta denna uppsats mot några olika sätt att angripa översättningsproblematiken. 2 Maskinöversättning Att översätta en text från ett språk till ett annat med hjälp av datorkraft har varit en önskedröm sedan datorernas barndom. Man ville finna interlinguatet, länken mellan alla språk. Om man skulle hitta denna fulländade språkoberoende kunskapsrepresentationen så kunde man med hjälp av en knapptryckning kunna översätta alla dokument från ett språk till ett annat. Såsom mycket annat så började maskinöversättningsutvecklingen inom det militära och kalla krigets dagar. Båda sidor ville ha fullständig kontroll på vad den andra gjorde. Man gjorde då en råöversättning som tittades igenom för att bestämma om man skulle kosta på dokumentet en riktig översättning. Mycket arbete har lagts ner på att utveckla program som kan översätta texter från ett språk till ett annat, men fortfarande används enkla råöversättare då man bara vill ha en idé om vad som står i dokumentet. Vill man däremot ha en bättre översättning så måste det till andra metoder då språken är uppbyggda på olika sätt. Olika språk har inte samma struktur, vissa sätter subjektet före predikatet andra gör tvärtom. Tar man dessutom hänsyn till verbet placering så fins det många olika möjligheter för ett språks utseende. Tempus uttrycks också på flera olika sätt. Ett ord vars betydelse beror på omgivande ord kan i ett annat språk ha ett specifikt ord för varje betydelse. 3
Det finns tre övergripande sätt att angripa maskinöversättningen. Ett sätt är att man kan utgå från det syntaktiska trädet som en mening bildar. Ett annat är att anta att det existerar en interlingua och ett tredje är att direktöversätta meningar. Dessa tre angreppsmetoder är vad jag ska försöka elaborera över här. 2.1 Syntaktisk översättning För att översätta sin mening enligt detta sätt så parsar man först meningen så att man får ett parsträd i det språk som man ska översätta från. Sedan tar man bort de ord som är språkspecifika och inte för handlingen framåt. Nu har man en grundmening i ett träd som man kan ändra i trädet så att det passar det nya språket och som man då översätter rakt av. Nu återstår bara att få rätt form på meningen och sätta dit språkspecifika ord. Nedan visar jag ett exempel där man översätter från engelska till japanska i [3] sid 808. Grundmeningen är: There was an old man gardening. Efter att ha parsat meningen så är den upp delad i följande delar: there was an old man gardening Ordet there har ingen motsvarighet i japanskan så det plockar vi bort, och vi ändrar strukturen på meningen till att bli, an old man, who was gardening, was: ((an old man gardening) was) Japanskan vänder på subjektet och predikatet så det vänder vi på nu: ((gardening an old man) was) Nu gör vi överstättningnen till japanskan, varje syntaktisk del för sig: ((niwa no teire o suru ojiisan) ita) 4
Denna mening går att förstå, men för att den ska vara korrekt så måste vi göra ett par saker till med den. Först så ska vi lägga till ordet ga som behövs i japanskan för att markera subjektet. Sedan ska vi välja rätt verb för subjektet så det blir flytande i språket. Sist så ska vi böja på verben till rätt form. När vi sedan skriver ut det på en mening blir det som följer: niwa no teire o shite ita ojiisan ga ita garden GEN upkeep OBJ do PAST-PROG old man SUBJ was 2.2 Semantisk översättning Semantisk översättning kan också kallas för betydelsebaserad översättning. Den grundläggande tanken är att det finns ett grundläggande interlingua, ett någonting som har betydelse representationen för alla språk. Detta interlingua är helt språkoberoende. Man bygger upp en interlinguansk representation som kan se ut som så här om man använder samma mening som i förra avsnittet, there was an old man gardening. Händelse Gardening Man Agent Number Sg Definiteness Indef Aspekt Form Progressive Past Denna representation säger mycket om vad som sker men inte allt. Tar vi det engelska ordet man så finns det många sätt att översätta det till japanska beroende på de orden runt i kring. Vi har här tappat att det handlade om en gammal man. Man kan då gå ett steg längre och representera om orden så att representationen inte bara bygger på orden i meningen utan man kan översätta dricka till inta, vätska, via munnen vilket är lättare att att ha som universell händelse. 5
Flera av de interlingua som finns idag är mellan två olika språk och då kan det fungera. Men ska man översätta mellan flera språk så kan det vara som i japanskan där det finns speciella ord för äldre bror och yngre bror, medan i svenskan och engelskan så är det två ord. För att översätta mellan engelskan och japanskan så behövs det en liten annorlunda interlingua än det som ska användas till att översätta mellan engelskan och svenskan. 2.3 Direkt översättning Direkt översättning är ungefär vad det låter som. Man översätter direkt fast i flera steg, där varje steg fokuserar på ett speciellt problem. Systemen är ofta byggda med ett språkpar i sinne och åt vilket håll som översättningen ska gå åt. I det exempel som jag visar ur [3] sidan 816 översätter vi en mening från japanska till engelska. Mening som ska översättas: watashihatsukuenouenopenwojonniageta 1. I japanskan använder man inte mellanslag för att visa var ord börjar och slutar. Men vi börjar med en morfoligogisk analys som ger oss följande mening. watashi ha tsukue no ue no pen wo jon ni ageru PAST 2. Vi letar upp de viktigaste orden och översätter dem till engelska: I ha desk no ue no pen wo John ni give PAST 3. Vi tittar på prepositionerna. Orden som blir on ändrar samtidigt på ordföljden för desk och pen. I engelskan så ger man saker till någon: I ha pen on desk wo John to give PAST 6
4. Vi flyttar om ordföljden så att den passar in i SVO och tar bort japanskaartikelord som ej går att översätta.: I give PAST pen on desk John to 5. Sätter in de engelska artiklarna och ändrar ordningen på to och John. I give PAST the pen on the desk to John 6. Slutligen så böjer vi på verbet och den slutliga engelska meningen blir: I gave the pen on the desk to John Det finns flera sätt att använda sig utav direktöversättning. Vissa ordningar passar bättre för vissa språkpar. 3 Slutledning I praktiken så använder man sig utav alla dessa tre angreppsvinklar till att maskinöversätta språk. När man översätter mellan två kända språkpar så kan man beroende på språkens karaktär använda de algoritmer som passar bäst. Om man bara skulle hitta någonting litet som snabbar upp översättningen från ett språk till ett annat så kommer det att ge stora fördelar. Bara inom EU översätts stora mängder text till alla medlemsländernas språk och om man kan snabba upp den processen så är mycket pengar sparade. 7
Referenser [1] Hur genererar datorn text? av Hercules Danianis, http://www.dsv.su.se/ hercules/textgen/frame1textgen.html [2] Textgenerering av Lena Santamarta, 6 juni, 2000, http://www.svenska.sics.se/textanalys/textanalys-gen.htm [3] Speech and Language Processing av Daniel Jurafsky James H. Martin, Chapter 21 - Machine Translation av Nigel Ward 8