captcha image

A password will be e-mailed to you.

Sieci neuronowe potrafią tłumaczyć z jednego języka na drugi, choć wcześniej nie były tego uczone! Pokazały to dwa niezależne eksperymenty.

Na świecie istnieje 7099 żywych języków, natomiast ponad 82 proc. ludzkości włada zaledwie 576 z nich. Z kolei wszechstronny, zdawałoby się, Tłumacz Google, obsługuje jedynie 103 języki. A co z resztą? Tutaj z odsieczą może przyjść sztuczna inteligencja.

Trzeba przyznać, że tam, gdzie tłumaczenie maszynowe korzysta z sieci neuronowych, jego jakość stoi na wysokim poziomie. Dowodem choćby tegoroczna przemiana Tłumacza Google, który – gdzieś na początku kwietnia z dnia na dzień przełączony na sieć neuronową – zaczął o wiele trafniej i precyzyjniej tłumaczyć. Sami sprawdźcie, bo różnica jest zasadnicza. Jednak dojście do takiej jakości wymaga lat pracy i dużych nakładów finansowych na nauczenie sztucznej inteligencji, co to znaczy dobre tłumaczenie. Inżynierowie wykorzystują do tego tzw. nadzorowane uczenie maszynowe. Algorytmy karmione są masą danych wejściowych, na podstawie których generują (właściwie zgadują) ich zdaniem najlepsze rozwiązanie postawionego przed nimi zadania. Następnie jego wynik porównywany jest z właściwą odpowiedzią i oceniany przez człowieka. To sprawia, że sieć neuronowa się uczy.

W przypadku nadzorowanej translacji maszynowej dużym uproszczeniem dla inżynierów i lingwistów są wielkie korpusy tych samych tekstów, które zostały przetłumaczone na najbardziej rozpowszechnione języki. Sytuacja się komplikuje, kiedy chcemy nauczyć sieć neuronową tłumaczenia na bardziej egzotyczne języki. Brakuje tak dobrze przygotowanych danych wejściowych i przygotowanie nowego translatora przestaje być opłacalne. Dlatego naukowcy szukają innych metod, właśnie takich jak samouczące się sieci, które nie wymagają wspomagania ich przez człowieka.

Jak to możliwe?

Autor jednego z takich projektów, Mikel Artetxe z Uniwersytetu Kraju Basków (UPV) w San Sebastian, na łamach magazynu Science podał taki przykład: dajemy jednej osobie mnóstwo chińskich książek i wiele książek arabskich – każda z nich jest inna, a ich tematyka nie zazębia się. Zadanie, jakie stoi przed tą osobą, to nauczenie się na tej podstawie tłumaczenia z chińskiego na arabski. Artetxe mówi: „To wydaje się niemożliwe, ale okazuje się, że komputer potrafi to zrobić”.

Podobne wnioski wyciągnęli autorzy drugiej pracy opublikowanej w Science, naukowcy z Carnegie Mellon UniversityObie prace powstały niezależnie od siebie i  obie opisują wykorzystanie procesu nienadzorowanego uczenia maszynowego do tłumaczenia tekstów. Choć w detalach się różnią, to zasada ich działania jest podobna. Na czym polega nienadzorowane uczenie maszynowe, dość dobrze wyjaśnia poniższy film. Ale by mieć pełny obraz, najpierw zobaczcie, o co chodzi w uczeniu nadzorowanym.

W przypadku tłumaczenia cały proces sprowadza się skonstruowania dwukierunkowego słownika bez pomocy „nadzorcy”, który będzie oceniał, czy to, co zgadła sieć neuronowa, jest w rzeczywistości poprawne.

Uczenie bez nadzoru

Języki, choć bardzo różnią się od siebie, mają wiele cech wspólnych. W każdym języku podobne słowa występują obok siebie. Weźmy np. samochód, obok którego znajdziemy pewnie takie wyrazy jak kierowca, koła, paliwo, jechać, stać, wypadek, kupić, sprzedać itd. W uproszczeniu można powiedzieć, że sieci neuronowe w tysiącach zdań wyłapują takie powiązania, nadają im odpowiednie rangi i tworzą ich wzorce (mapy). Najpierw dla jednego języka, potem dla drugiego. Następnie podczas tłumaczenia trzeba znaleźć schemat odpowiadający wybranemu zdaniu i odszukać słowa w innym języku, które układają się w jak najbardziej podobny wzorzec.

Samo uczenie opiera się, jak to opisują naukowcy w swoich pracach, na dwóch metodach: tłumaczeniu wstecznym (back translation) i odszumianiu (denoising). Pierwsza technika polega na tłumaczeniu w tę i z powrotem tego samego zdania. Oryginalna sentencja np. w języku francuskim tłumaczona jest na język angielski, następnie zdanie wynikowe tłumaczone jest z powrotem na francuski i porównywane z oryginałem. Dzieje się tak do momentu, kiedy algorytm stwierdzi, że dalsze wprowadzanie korekt nie przybliża go już bardziej do postaci pierwotnej.

Odszumianie to z kolei celowe wprowadzanie do przetłumaczonego zdania szumu informacyjnego – poprzez zmianę szyku czy usunięcie jakiegoś wyrazu – przed poddaniem go wstecznej translacji. Jeśli Was to zainteresowało, to warto, żebyście spojrzeli na tę prezentację, w której Artetxe objaśnia bardziej szczegółowo, na czym polega mapowanie.

Na razie jakość tłumaczeń pozostawia wiele do życzenia. Obydwie metody zajęły się tłumaczeniem pomiędzy językiem angielskim a francuskim, korzystając z zestawu około 30 milionów zdań. Wyniki uzyskane w BLEU (Bilingual Evaluation Understudy), czyli algorytmie oceniającym jakość tłumaczenia maszynowego, jak na razie utrzymują się na poziomie od 15 do 32 (w zależności od metody i języka). Dla porównania: najlepszy translator na świecie, DeepL może pochwalić się wynikiem 44,7. Muszę przyznać, że DeepL jest naprawdę dobry, ale fakt, że nowe programy same uczą się, jak tłumaczyć, jest dla mnie fascynujący i bardzo jestem ciekaw, jakim wynikiem pochwalą się za dwa-trzy lata.

Na podstawie: Science; dodatkowe źródło.

Nie ma więcej wpisów