Google na podzim loňského roku oznámil rozšíření svého překladače o technologie strojového učení a neuronových sítí. Poprvé v historii strojových překladů je tak nyní možné překládat i mezi jazyky, jejichž páry nejsou přímo vloženy do systému a ten na ně ani nebyl trénován.
Překladač Googlu existuje už asi 10 let a neustále se rozšiřuje. Nyní podle Googlu podporuje 103 jazyků a každý den se prostřednictvím systému překládá přes 140 miliard slov. Kvalita se do určité míry zlepšuje prostě samospádem, jak přibývá „párových“ dokumentů, přesto však statistický přístup k překladu už začal narážet na své limity. Tak například systém podporující 103 jazyků potřebuje subsystémy pro jejich každý pár, což s sebou nese mj. i náklady na výpočetní výkon a další „počítačové“ prostředky stejně jako nutnost spravovat všechna tato prostředí vedle sebe.
Google proto na podzim loňského roku začal svůj překladač rozšiřovat o nové technologie, především neuronové sítě/strojové učení. Výsledkem byl systém Google Neural Machine Translation (GNMT). Mike Schuster, Melvin Johnson a Nikhil Thorat z Googlu nyní vysvětlují, že pro překlad v tomto systému není třeba neuronovou síť trénovat na všechny dvojice jazyků, ale zvládne i kombinace, které při tréninku do systému vůbec nebyly zadávány; autoři tomu říkají „zero-shot“. Vstupní text se prostě už jen označuje tokenem, který specifikuje, do jakého jazyka se má překládat. Je to údajně vůbec poprvé, co strojové překladače zvládnou něco podobného.
Samozřejmě se tím nemyslí, že by se překlad prováděl přes nějaký jazyk třetí (např. metodou „vše přes angličtinu“), i když… V průběhu učení sítě se totiž v systému vytváří abstraktní vrstva, reprezentace jednotlivých sdělení, kterou můžeme chápat právě jako univerzální jazyk („interlingua“), přes který pak prochází překlad. Tato vrstva má především podobu sémantiky (významu), neomezuje se na analýzu gramatických vztahů ve zpracovávaných textech.
Systém je díky tomu univerzální, přidávání dalších jazyků nevyžaduje žádnou změnu jeho architektury. Příslušnou vnitřní sémantickou reprezentaci si překladač vytváří automaticky, není to tak, že by v Googlu za tímto účelem navrhovali nějaký vlastní přemosťující jazyk typu esperanta. Programátoři Googlu tuto sémantiku v systému dokáží pouze zpětně najít, když zjistí, že odpovídajícím větám v různých jazycích systém postupně přiřazuje stejné či podobné atributy, které jsou mnohem propracovanější, než by odpovídalo pouze párování odpovídajících si frází.
Tyto výsledky jsou samozřejmě zajímavé i z obecnějšího pohledu – mají vztah k otázkám o povaze lidského jazyka, jeho zpracování v mozku (máme také nějaké vnitřní reprezentace nezávislé na konkrétních jazycích?) apod.
Zdroj: Google Blog a další