A számítógépes nyelvfeldolgozás alapjai Gépi fordítás A számítógépes nyelvfeldolgozás alapjai A számítógépes nyelvfeldolgozás alapjai – 2013. április 25.
Bevezetés Machine Translation (MT) Teljes szövegek automatikus fordításra forrás nyelvről célnyelvre. Computer Aided Translation (CAT) Nehéz feladat: jelentést kell visszaadni, ugyanakkor a másik nyelv morfológiai és szintaktikai szabályainak is meg kell felelni
Bevezetés - 2 Jelenleg a minőség (jelentősen) elmarad az emberi fordítástól DE: bizonyos részterületeken elég Receptek Időjárás-jelentés Óriási igény lenne rá, főleg Magyarországon
A fordítási feladat „Csak kiszótárazom, lefordítom és kész” legyen 1 mondat átlagosan 15 szó hosszú legyen 1 szónak átlagosan 3 jelentése 1 „mondatnak” 315 különböző fordítása áll elő * szórendből permutációk * extra szavak, kimaradó szavak
A fordítási piramis Interlingua Forrásnyelvi szemantika Célnyelvi szemantika Forrásnyelvi szintaxis Célnyelvi szintaxis Forrásnyelvi szavak Célnyelvi szavak
Gépi fordítási megközelítések Szótáron alapuló Szintaktikai transzformáción alapuló Szemantikai transzformáción alapuló
Szótáron alapuló fordítóprogram Elektronikus szótáron vagy kétnyelvű szólistákon alapszik A forrásnyelvi szavakat, szóalakokat vagy frázisokat szavaknak, szóalakoknak vagy frázisoknak felelteti meg a célnyelvben A különböző eljárások különböző problémákhoz vezetnek
Szó-szó megfeleltetésnél fellépő problémák: Nincs benne a szótárban a szó (ilyenkor forrásnyelvi szó kerül a céloldalra is) Túl sok jelentést ad meg a szótár (általában gyakoriság alapján dönt a fordítóprogram)
Szóalak-szóalak megfeleltetésnél fellépő problémák: A szótár csak egy szóalakot tartalmaz Agglutináló nyelvekben (pl. magyar) a szavaknak rengeteg formájuk van Morfológiai elemzőre is szükség van (lenne) a fordításhoz
Frázis-frázis megfeleltetésnél fellépő problémák: Forrásnyelvi és célnyelvi szintaktikai elemzés kell Szintaktikai többértelműségek feloldása Szükség van (lenne) szintaktikai elemzőre is
Szintaktikai transzformáción alapuló fordítás Szintaktikai fát fordít (= alakít át) szintaktikai fává Nemcsak a fa levelei fordítódnak le, hanem átalakul a fa maga
A fatranszformáció lépései 1 adott csomóponthoz társítjuk maximum 1 gyermekét bizonyos valószínűséggel Az elemi fa gyermekeit rendezzük (sorrend változtatása, elemek beszúrása vagy törlése…) 3. A leveleknél levő lexikai egységeket lefordítjuk
Példa Mary did not slap the green witch Maria no daba una bofetada a la bruja verde
Jellemzők Szórendi problémákat általában jól kezeli Rokon nyelvek közti fordításra alkalmas módszer Bonyolult, költséges transzformációs szabályok Eltérő nyelvtani szerkezeteknél teljesen rossz fordítás: La botella entro a la cuerva flotando. The bottle floated into the cave. *The bottle entered the cave floating.
Szemantikai transzformáció Szemantikai információt is hasznosítanak a fordítás során A nyelvek közti különbségek semlegesítődnek Szemantikai jegyek alkalmazása (legegyszerűbb)
Köztes (logikai) nyelvre fordítódik le a forrásnyelvi információ (Interlingua) A köztes nyelvről fordítódik át a célnyelvre Az információt (jelentést) fordítjuk, nem pusztán a szintaxist Manapság: angol ~ interlingua
Példa John gave Mary a book. Give(john; book; mary) T<now Jean a donné un livre à Marie. János adott Marinak egy könyvet.
Szemantikai alapú fordítás Egyszerűbb szabályok Pontosabb fordítás Elméleti szemantikai alapokon nyugszik Kevés a tapasztalat Nehezen építhető ki minden nyelvpárra Az elméleti szemantika fejlődésével módosításokra is szükség lehet
Példaalapú fordítás (EBMT) „amikor az ember fordít, nem használ transzformációs szabályokat, hanem korábban látott mintákat használ” Van egy fordítási adatbázis (párhuzamos korpusz) Azonosítjuk a fordítási egységeket Az adatbázisból kiválasztjuk a legközelebbi mintát
Módszerek Példaalapú: adatbázisban tárolt mondatok/kifejezések közül melyikre hasonlít legjobban Szótáralapú: gyenge, rokon nyelvekre lehet jó (szintaktikai) transzfer alapú: legtöbb módszer ezt használja, tűrhető megoldások Interlingua: köztes nyelvre fordít – „utópia”
Statisztikai MT Minden szónak több lehetséges fordítása van Válasszuk ki a legvalószínűbb szekvenciát Fordítási modell: bag-of-words fordítás Nyelvi modell: értelmes mondatok argmax P(m|a)=argmax P(m)*P(a|m)
BLEU-score A fordítás minőségének mérése Az embernél nincs jobb kiértékelő, de az nagyon drága Adott néhány (emberi) fordítás minden mondatra a teszthalmazon Számoljuk meg, hogy 1,2,3,4 gramok milyen fedésben vannak az emberi fordításokkal + javítások…
Magyar-angol eredmények (2007)
Fejlesztések MetaMorpho (www.webforditas.hu) Google Translate (http://translate.google.com/) Bing (http://www.bing.com/translator) Hunglish nyersfordító Emberi fordítást segítő eszközök (CAT) fejlesztése: intelligens szótárak lexikai adatbázisok fordítómemóriák párhuzamos korpuszok
Vicces példák 2006-ból… Összetett szavak: bányászszív [miner sucks] bulvárszíndarab [boulevard colour][ piece] gyertyamártás candle sauce habképző [foam][ derivational suffix] hajsütés hair baking halálnem death gender halmajonéz [dying mayonnaise] hóhányás [snow][ vomit] hóhullás [snow][ corpse] hőképzés [heat][ training] hőkiütés [heat][ knockout] időjóslat [time][ prophecy] + light verb construction fényigeszerkezet (2012)
Konkrét példák (angol-magyar fordítás) Többjelentésű szó nem megfelelő jelentésben (1): Her children go to the same school as mine. A gyerekei bányaként járnak ugyanabba az iskolába. (MetaMorpho) Gyermekei megy ugyanaz iskola mint bánya. (InterTran) A gyerekei ugyanabba az iskolába járnak, mint az enyémek. (referencia)
Angol-magyar fordítás Többjelentésű szó nem megfelelő jelentésben (2): John gives marvellous parties. John csodálatos pártokat ad. (MetaMorpho) Budi ad csodálatos parti. (InterTran) János fantasztikus bulikat szokott rendezni. (referencia)
Angol-magyar fordítás Többjelentésű szó nem megfelelő jelentésben (3): When did you last fly a plane? Mikor röpítettél egy repülőgépet utoljára? (MetaMorpho) Mikor tett ön utolsó slicc egy sík? (InterTran) Mikor vezettél utoljára repülőgépet? (referencia)
Angol-magyar fordítás Többjelentésű szó nem megfelelő jelentésben (4): There are no biscuits left! Kekszek nincsenek balra! (MetaMorpho) Nincs kétszersültek bal! (InterTran) Nincs több keksz! (referencia)
Angol-magyar fordítás Szótári-elemzői hiányosságok I haven’t driven a car for ages. Nem vezettem autót régóta. (MetaMorpho) ÉN kikötő vezetett egy autó részére évek. (InterTran) Évek óta nem vezettem autót. (referencia)
Angol-magyar fordítás Nyelvtan hiánya (1): How many dogs does the Queen have? A királynőnek hány kutya van? (MetaMorpho) Mennyi kutyák csinál a Királynő volna? (InterTran) Hány kutyája van a királynőnek? (referencia)
Angol-magyar fordítás Nyelvtan hiánya (2): What does he do in his free-time? Mit nyír ki övé szabad-idő? (MetaMorpho) Mi csinál ő csinál -ban -a szabad - idő? (InterTran) Mit csinál szabadidejében? (referencia)
Konkrét példák (magyar-angol fordítás) Többjelentésű szó nem megfelelő jelentésben (1): Bal kézzel írok. [Left hand][ Irishmen]. (MetaMorpho) Leftward kézzel írok. (InterTran) I write with my left hand. (referencia)
Magyar-angol fordítás Többjelentésű szó nem megfelelő jelentésben (2): Csak Margót ébresztettem fel. Csak[ Margin][ waked]. (MetaMorpho) Only Margin awoke up. (InterTran) I only woke Margot. (referencia)
Magyar-angol fordítás Többjelentésű szó nem megfelelő jelentésben (3): Hány kutyája van a királynőnek? [Vomits] kutyája[ is][ the queen]? (MetaMorpho) Vomit his dog there is the queen? (InterTran) How many dogs does the Queen have? (referencia)
Magyar-angol fordítás Többjelentésű szó nem megfelelő jelentésben (4): Kedden költöztek ki. [Tue] költöztek[ who]. (MetaMorpho) On Tuesday trek who. (InterTran) They moved out on Tuesday. (referencia)
Magyar-angol fordítás Szótári-elemzői hiányosságok: Én inkább vennék egyet. [I] inkább[ would buy] egyet. (MetaMorpho) Am I rather vennék university. (InterTran) I’d rather buy one. (referencia)
Magyar-angol fordítás Nyelvtani hiányosságok (1): Én inkább vennék egyet. [I] inkább[ would buy] egyet. (MetaMorpho) Am I rather vennék university. (InterTran) I’d rather buy one. (referencia)
Magyar-angol fordítás Nyelvtani hiányosságok (2): Ma te vigyáztál a gyerekeire, nem? [Today][ you] vigyáztál[ his children],[ gender]? (MetaMorpho) Yet today your are take care the about your child , not? (InterTran) You looked after her children today, didn’t you? (referencia)