Statystyczne tłumaczenie maszynowe – metoda tłumaczenia automatycznego, w której przekład tworzony jest w oparciu o modele statystyczne, których parametry pozyskiwane są poprzez analizę korpusu równoległego danej pary języków. Ten sposób tłumaczenia stanowi alternatywę dla metod opartych o reguły transferu, jak i dla systemów opierających się na przykładach.
Pierwsze koncepcje tłumaczenia statystycznego zostały wprowadzone w roku 1949 przez Warrena Weavera[1], który zaproponował użycie do tego celu teorii informacji Claude'a Shannona. Pomysł ten odrodził się i został rozpropagowany w roku 1991, dzięki grupie badawczej z centrum badawczego, Thomas J. Watson Research Center[2]. Duży wpływ na ponowne przyjrzenia się zastosowaniom statystyki do tłumaczenia automatycznego miały sukcesy metod stochastycznych w dziedzinie rozpoznawania mowy.
Obecnie najbardziej znanym systemem korzystającym z tej metody jest Google Translate.
Spis treści |
Fundamenty tłumaczenia statystycznego stanowi Teoria Informacji. Przy tłumaczeniu dokumentu określamy prawdopodobieństwo
, że ciąg znaków p w języku źródłowym (np. polskim) jest tłumaczeniem ciągu a w języku obcym (np. angielskim).
Stosując do
Twierdzenie Bayesa możemy powiedzieć, że
jest proporcjonalne do
, gdzie model tłumaczenia
to prawdopodobieństwo iż tekst obcy jest tłumaczeniem tekstu źródłowego, zaś model językowy
to prawdopodobieństwo wystąpienia danego tekstu źródłowego. Rozbija to problem początkowy na dwa podproblemy.
Znalezienie najlepszego tłumaczenia
polega więc na wybraniu tego o najwyższym prawdopodobieństwie:

Dosłowna implementacja tego wzoru mogłaby polegać na zachłannym przeszukiwaniu wszystkim możliwych ciągów p* w języku źródłowym. Wydajne przeszukiwanie należy do zadań dekodera tłumaczenia maszynowego, który korzysta z ciągu w języku obcym, metod heurystycznych i innych metod do zachowania kompromisu pomiędzy ograniczaniem przestrzeni przeszukiwań, a przyzwoitą jakością przekładu.
Jako, że przechowywanie wszystkich możliwych ciągów języka źródłowego i ich tłumaczeń nie jest możliwe, tekst jest przeważnie tłumaczony zdanie po zdaniu, jednak nawet to ograniczenie nie jest wystarczające.
Pierwotnie modele tłumaczenie statystycznego działały w oparciu o wyrazy, jako podstawową jednostkę, są to:
Najefektywniejsze obecnie systemy pracują na większych od wyrazów strukturach składniowych, jak np. zdania, jednak wciąż używają dopasowań wyrazów do obliczania parametrów niezbędnych przy translacji[5][6].
Najczęściej wymieniane korzyści płynące z tłumaczenia statystycznego, w porównaniu do tradycyjnego podejścia to:
Podstawową jednostką tłumaczenia tego typu są wyrazy pewnego języka naturalnego. Zazwyczaj ilość wyrazów w zdaniach źródłowych różni się od ich tłumaczeń z powodu wyrazów złożonych, morfologii oraz idiomów. Wskaźnik informujący nas o tym ile wyrazów produkowanych jest przez słowa języka źródłowego nazywamy płodnością. W teorii zakładamy, że każde z wyprodukowanych słów utożsamiamy z tym samym obiektem. W praktyce nie zawsze musi to być prawdziwe. Dla przykładu polskie słowo "zamek", będące homonimem, możemy przełożyć na angielskie "castle" lub "lock".
Przykładem systemu tłumaczenia na poziomie wyrazów jest ogólnodostępny pakiet GIZA++ (licencja GPL), zawierający program trenujący dla modeli IBM, modelu HMM oraz Modelu 6[4].
Tłumaczenie oparte na wyrazach nie jest już zbyt często używane i zostaje zastępowane systemami koncentrującymi się na frazach, które jednak wciąż korzystają z GIZY++ (lub podobnych programów), dla dopasowania korpusu językowego. Dopasowania ułatwiają wyciąganie fraz lub wnioskowanie reguł składniowych.
Sprawia to, że pomimo iż same tłumaczenia na poziomie wyrazów nie są obecnie popularne, problem dopasowań wyrazów jest ciągle poruszany, a algorytmy ulepszane.
Tłumaczenie bazujące na zdaniach stara się ominąć ograniczenia tłumaczeń na poziomie wyrazów, poprzez przekład całych ciągów zdań o różnych długościach. Ciągi te zwane są blokami bądź frazami, jednak nie są to frazy w rozumieniu lingwistycznym, ale frazy wyciągnięte z korpusu równoległego przy użyciu metod statystycznych. Zastosowanie fraz w rozumieniu lingwistycznym jest oczywiście możliwe, lecz uzyskana jakość tłumaczenia jest w takim przypadku gorsza[7].
Do problemów z jakimi borykają się systemy tłumaczenia statystycznego należą:
Idiomy mogą być szczególnie problematyczne przy tłumaczeniach na poziomie wyrazów. Ze względu na fakt, iż występują w korpusach rzadziej od słów składających się na nie, mogą być czasem przetłumaczone w sposób groteskowy. Przykładem może być angielskie "It rains cats and dogs" – czyli polskie "leje jak z cebra", co w statystycznym tłumaczeniu może zostać przełożone dosłownie na "pada kotami i psami".
Szyk wyrazów różni się w zależności od języka. Pewnej klasyfikacji można dokonać określając typową kolejność występowania w zdaniu podmiotu, orzeczenia i dopełnienia, możemy więc mówić o językach SVO(Subject, Verb, Object), czy SOV(Subject, Object, Verb). Występują także inne różnice gramatyczne między językami, jak chociażby sposób odmiany rzeczowników lub układ wyrazów w zdaniach pytających.
Systemy tłumaczenia statystycznego przechowują różne odmiany wyrazów jako odrębne ciągi znaków nie będące w żadnej relacji ze sobą, tak więc formy lub frazy nie znajdujące się w zestawie treningowym systemu nie mogą zostać przetłumaczone.