Maskinoversettelse er automatisk oversettelse ved hjelp av en datamaskin. Når man bruker et oversettelsesprogram, skriver man inn tekst på ett språk og får ut den samme teksten på et annet.

Programmer for maskinoversettelse er blitt enkle å bruke og svært effektive. De har gjort det enkelt og raskt å oversette mellom ulike språk og er en av de mest anvendelige delene av språkteknologien. Mange applikasjoner på både datamaskin og mobiltelefon har integrert mulighet for maskinoversettelse av innhold.

Anvendelse

Mange har i dag tilgang til programmer for maskinoversettelse. Flere mobiltelefoner kommer med sine egne løsninger forhåndsinstallert, og mange nettlesere har en funksjon som kan oversette nettsider automatisk når de oppdager tekst som ikke er på brukerens angitte språk. Det finnes også applikasjoner der man kan spille inn tale som så blir oversatt og spilt av på et annet språk.

En av de mest kjente eksemplene på maskinoversettelse er laget av amerikanske Google. I 2021 oppga de at deres program, Translate, hadde blitt installert på en milliard mobile enheter siden lanseringen i 2010. Per 2022 støttet tjenesten oversettelse mellom 133 språk.

Historie

Tidlige metoder

Ideen om å bruke datamaskiner til oversettelse mellom språk begynte for alvor å skyte fart på 1950-tallet. Forskere fra universitetet i Georgetown og IBM demonstrerte i 1954 et program som kunne oversette et utvalg setninger fra russisk til engelsk, uten at operatøren behøvde noen forkunnskaper i russisk. Programmet oversatte hvert russisk ord til en unik kode via et oppslagsverk. Disse kodene ble så omsatt til engelsk ved hjelp av et sett med regler. Reglene ble utviklet av forskere som behersket begge språkene.

Sluttbrukeren av disse programmene behøvde ikke å kunne språkene det ble oversatt mellom, men utviklerne av programmet måtte beherske språkene godt nok til at de kunne utforme reglene for oversettelsen. Programmene var lite fleksible og krevde store mengder manuelt arbeid for å fungere.

Selv om disse tidlige programmene for maskinoversettelse var svært ressurskrevende og ikke på langt nær fungerte like godt som dagens løsninger, viste de at det kunne være mulig å utvikle programmer for å oversette mellom de fleste språk. Dette motiverte videre forskning på feltet.

Statistisk maskinoversettelse

Moderne maskinoversettelse kom for alvor på starten av 2000-tallet. Ved hjelp av metoder fra statistikk samt samlinger med parallelltekster – det vil si tekster som er oversatt til flere språk – ble det mulig å lage programmer som ikke lenger behøvde regler skrevet av personer med inngående språkkunnskaper. Denne tilnærmingen, kjent som statistisk maskinoversettelse, sammenligner ordsekvenser som befinner seg på samme sted i parallelltekster, og kan på den måten bygge opp en oversikt over enkeltord, fraser og setninger som sannsynligvis har samme betydning i forskjellige språk. Disse oversiktene kan genereres automatisk og er derfor mye enklere å lage enn de tidlige regelbaserte systemene, gitt at man har tilgang til gode parallelltekster.

Siden statistisk maskinoversettelse er basert på å sammenligne ordsekvenser, fungerer de mindre godt mellom språk som har svært ulik ordstilling. Norsk er for eksempel et SVO-språk, det vil si at man vanligvis bygger setninger ved å starte med et subjekt, deretter et verb og til slutt et objekt. Koreansk, derimot, er et SOV-språk, der subjektet innleder en setning, etterfulgt av objektet og så verbet helt til slutt. Å oversette mellom norsk og koreansk kan derfor bli utfordrende hvis man kun baserer seg på forekomster av ord i parallelltekster.

En annen utfordring var å håndtere faste uttrykk og metaforer. Disse kan typisk ikke oversettes ord for ord mellom to språk. Det engelske idiomet «break a leg» kan for eksempel ikke oversettes direkte til norsk uten å miste betydningen sin fullstendig. Selv om det var mulig å ta høyde for slike problemer, slet likevel de tidlige systemene med å håndtere dem på en god og fleksibel måte.

Maskinoversettelse i dag

Dagens programmer for maskinoversettelse er i all hovedsak basert på maskinlæring og kan ses på som en videreutvikling av klassisk statistisk maskinoversettelse. Feltet blir i dag ofte referert til som Neural Machine Translation (NMT) fordi sammenligningen mellom ordsekvenser er byttet ut med nevrale nettverk som er trent på store mengder data for å oversette mellom to eller flere språk. Tjenesten Google Translate byttet over fra statistisk maskinoversettelse til en modell basert på nevrale nettverk i 2016, og siden har de aller fleste konkurrerende løsninger gjort det samme.

Enkelt forklart består et moderne program for maskinoversettelse av en maskinlæringsmodell som har to deler: En del som har som oppgave å kode teksten som skal oversettes, til en serie med tall, og en annen del som genererer tekst i språket det oversettes til, ut fra denne tallserien.

Mer presist er oppgaven til den første delen å lage gode representasjoner av inn-språket, såkalte embeddings, som i matematiske termer blir gjort ved å plassere ord i et vektorrom. Den andre delen må så lære seg hvordan disse vektorene forholder seg til vokabularet i ut-språket. Til å begynne med er alle vektorene, innstillingene og parameterne i modellen tilfeldige tall, men ettersom modellen trenes på parallelltekster, vil begge delene bli gradvis bedre og bedre. En slik modell kalles gjerne for en sekvens-til-sekvens-modell, og den kan også brukes for å løse andre typer tekstoppgaver, som å sammenfatte lengre tekster til korte sammendrag eller lage chatbots.

Fordeler og utfordringer

Den store fordelen ved dagens nevrale modeller for maskinoversettelse er at de er ekstremt fleksible. Hvis man har gode nok parallelltekster, er det ingen avgjørende begrensning at to språk har svært ulik ordstilling. Siden modellene lager kontekstavhengige representasjoner av språket, er det også lettere å håndtere problemer som faste uttrykk. Moderne løsninger består dessuten av én enkelt modell, og de er derfor enkle å implementere og distribuere. Løsninger for statistisk maskinoversettelse inneholdt ofte flere komponenter og var ikke like fleksible.

Den største utfordringen er behovet for data. Nevrale nettverk krever på generelt grunnlag store mengder treningsdata, noe som gjør det vanskeligere å bygge gode oversettelsessystemer for språk der dette ikke er lett tilgjengelig. Kvaliteten på systemer som oversetter fra de største språkene, er derfor mye høyere enn for mindre språk. Å bygge gode oversettelsesmodeller for mindre språk er et aktivt forskningsfelt innen språkteknologi, og mye av arbeidet handler om å samle inn gode parallelltekster.

En annen utfordring er hvordan man skal evaluere maskinoversettelse. I de fleste oppgaver der man benytter maskinlæring, vet man hva som er det riktige svaret. Om man lager et system som klassifiserer bilder eller tekst inn i noen forhåndsdefinerte kategorier, for eksempel bilder av katter og hunder, kan man måle nøyaktigheten til systemet ved å telle opp hvor mange ganger det angir feil kategori. Med oversettelse er ikke dette like rett fram, da man kan lage flere oversettelser som er akseptable. Å bruke mennesker til å vurdere kvaliteten er en mulighet, men dette er ofte svært ressurskrevende.

I dag benyttes flere automatiske evalueringsmetoder, deriblant den omdiskuterte BLEU-metoden. Enkelt forklart måler denne i hvilken grad oversettelsen overlapper med en foreslått fasit. Til tross for at den beviselig har flere mangler, og flere har tatt til orde for å forkaste den, er den fortsatt et av de mest brukte målene på hvor god en modell for maskinoversettelse er.

Les mer i Store norske leksikon

Kommentarer

Kommentarer til artikkelen blir synlig for alle. Ikke skriv inn sensitive opplysninger, for eksempel helseopplysninger. Fagansvarlig eller redaktør svarer når de kan. Det kan ta tid før du får svar.

Du må være logget inn for å kommentere.

eller registrer deg