Hvordan Google konverterede sprogoversættelse til et problem med vektorrummatematik

Datalogi er ved at ændre karakteren af ​​oversættelsen af ​​ord og sætninger fra et sprog til et andet. Enhver, der har prøvet BabelFish eller Google Oversæt vil vide, at de leverer nyttige oversættelsestjenester, men dem der er langt fra perfekte.





Den grundlæggende idé er at sammenligne et korpus af ord på ét sprog med det samme korpus af ord oversat til et andet. Ord og sætninger, der har lignende statistiske egenskaber, betragtes som ækvivalente.

Problemet er selvfølgelig, at de indledende oversættelser er afhængige af ordbøger, der skal kompileres af menneskelige eksperter, og det tager betydelig tid og kræfter.

Nu har Tomas Mikolov og et par venner hos Google i Mountain View udviklet en teknik, der automatisk genererer ordbøger og sætningstabeller, der konverterer et sprog til et andet.



Den nye teknik er ikke afhængig af versioner af det samme dokument på forskellige sprog. I stedet bruger den data mining-teknikker til at modellere strukturen af ​​et enkelt sprog og sammenligner derefter dette med strukturen af ​​et andet sprog.

Denne metode giver ingen antagelser om sprogene, så den kan bruges til at udvide og forfine ordbøger og oversættelsestabeller for alle sprogpar, siger de.

Den nye tilgang er forholdsvis ligetil. Den er afhængig af ideen om, at hvert sprog skal beskrive et lignende sæt af ideer, så de ord, der gør dette, skal også være ens. For eksempel vil de fleste sprog have ord for almindelige dyr som kat, hund, ko og så videre. Og disse ord bruges sandsynligvis på samme måde i sætninger som en kat er et dyr, der er mindre end en hund.



Det samme er tilfældet med tal. Billedet ovenfor viser vektorrepræsentationerne af tallene et til fem på engelsk og spansk og viser, hvor ens de er.

Dette er et vigtigt spor. Det nye trick er at repræsentere et helt sprog ved at bruge forholdet mellem dets ord. Mættet af alle relationerne, det såkaldte sprogrum, kan opfattes som et sæt vektorer, der hver peger fra et ord til et andet. Og i de senere år har lingvister opdaget, at det er muligt at håndtere disse vektorer matematisk. For eksempel resulterer operationen 'konge' - 'mand' + 'kvinde' i en vektor, der ligner 'dronning'.

Det viser sig, at forskellige sprog deler mange ligheder i dette vektorrum. Det betyder, at processen med at konvertere et sprog til et andet svarer til at finde den transformation, der konverterer det ene vektorrum til det andet.



Dette gør oversættelsesproblemet fra et lingvistik til et matematik. Så problemet for Google-teamet er at finde en måde at kortlægge et vektorrum nøjagtigt på det andet. Til dette bruger de en lille tosproget ordbog, der er udarbejdet af menneskelige eksperter - at sammenligne det samme korpus af ord på to forskellige sprog giver dem en færdiglavet lineær transformation, der gør det trick.

Efter at have identificeret denne kortlægning, er det en enkel sag at anvende den på de større sprogrum. Mikolov og co siger, at det fungerer bemærkelsesværdigt godt. På trods af sin enkelhed er vores metode overraskende effektiv: Vi kan opnå næsten 90 % præcision@5 for oversættelse af ord mellem engelsk og spansk, siger de.

Metoden kan bruges til at udvide og forfine eksisterende ordbøger, og endda til at spotte fejl i dem. Faktisk gør Google-teamet præcis det med en engelsk-tjekkisk ordbog og finder adskillige fejl.



Endelig påpeger teamet, at da teknikken kun gør få antagelser om selve sprogene, kan den bruges på argots, der er fuldstændig uafhængige. Så mens spansk og engelsk har en fælles indoeuropæisk historie, viser Mikolov og co, at den nye teknik også fungerer lige så godt for sprogpar, der er mindre nært beslægtede, såsom engelsk og vietnamesisk.

Det er et nyttigt skridt fremad for fremtiden for flersproget kommunikation. Men holdet siger, at dette kun er begyndelsen. Det er klart, at der stadig er meget, der skal udforskes, slutter de.

Ref: arxiv.org/abs/1309.4168 : Udnyttelse af ligheder mellem sprog til maskinoversættelse

skjule