13. Statistical Alignment and Machine Translation

Transkrypt

13. Statistical Alignment and Machine Translation
13. Statistical Alignment and Machine Translation
MT – najważniejsze zastosowanie NLP. Obecnie nie m dobrych systemów MT poza bardzo
specyficznymi, np. tłumaczącymi prognozy pogody.
Różne podejścia do MT:
Word for word – każdy wie ze tak jest źle.
Syntactic transfer approach – parsujemy tekst źródłowy, transformujemy sparsowane drzewko w
drzewko syntaktyczne w języku docelowym (przy użyciu odpowiednich reguł), następnie z tego
tworzymy tekst. Problemem jest założenie, że potrafimy jednoznacznie sparsowad tekst.
Semantic transfer approach – tworzymy reprezentacje sensu zdania, a następnie z tej reprezentacji
próbujemy stworzyd twkst w języku docelowym. Problem: wygenerowane zdanie często jest
nienaturalne.
Interlingua – formalizm reprezentacji wiedzy. Przy dużej liczbie języków tradycyjnie trzebaby zrobid n2
systemów, a przy tym rozwiązaniu wystarczy jedynie n.
13.1 Text Alignment
Nie jest samo w sobie częścią MT, ale pomaga w poprawianiu wyników. Używane jest do tworzenia
zasobów językowych takich jak słowniki dwujęzyczne czy równoległe gramatyki (?)
TA polega na analizie tekstów dwujęzycznych i dopasowywaniu do siebie odpowiadających
fragmentów z obu tekstów.
13.1.1 Aligning sentences and paragraphs
Teksty dwujęzyczne nie zawsze wyglądają tak, że jest tłumaczenie zdanie do zdania, tzn. czasem
jedno zdanie w tekście oryginalnym to 2 zdania w tłumaczeniu, itp., często zmienia się np. szyk zdania
aby tłumaczenie było bardziej naturalne. Zatem ustala się, że jeśli jakiś kawałek określonej długości
się zgadza, to zdania zostają uznane za odpowiadające sobie.
W wypadku, gdy kolejnośd zdao w dwu tekstach się różni (np. 2 zdania zostały zamienione miejscami,
tzw. crossing dependencies), zakłada się że takie bloki są sobie odpowiadające, i zdania dopasowuje
się do siebie wewnątrz tych bloków.
13.1.2 Length-based methods
Są to dośd stare metody biorące pod uwagę jedynie długośd dopasowywanych zdao.
Gale and Church (1993)
Ich rozwiązanie opierało się na prostym algorytmie dynamicznym obliczającym najlepsze
dopasowanie, przy założeniu że dopuszczane jest jedynie 6 typów dopasowao kolejnych fragmentów:
Ten algorytm ma kwadratową złożonośd, ale oni najpierw liczyli dopasowania paragrafów, a potem
zdao w paragrafach, więc działało to szybko również dla długich tekstów.
Dopasowania pojedynczych zdao były determinowane na podstawie długości zdao liczonych w
znakach.
Brown et al. (1991c)
Metoda podobna do poprzedniej, ale długości zdao były liczone jako ilośd wyrazów w zdaniu, a nie
liter.
Wu (1994)
Wykazał przydatnośd metody Gale’a i Church’a na przykładzie języków: English i Cantonese, które są
w stosunku do siebie bardzo różne.
13.1.3 Offset alignment by signal processing techniques
Te metody próbują ustalid, w których miejscach teksty się zgadzają.
Church (1993)
W tekstach pochodzących np. z OCRa pojawiają się problemy np. z nagłówkami, stopkami,
zgubionymi kropkami itp., więc nawet dopasowanie paragrafów nie jest trywialnym zadaniem.
Church zaproponował użycie tzw. cognates (=słów podobnie wyglądających w obu językach), na tej
podstawie dopasowując fragmenty tekstu.
Metoda Churcha, dot plot, polega na skonkatenowaniu tekstu źródłowego i tłumaczenia,
umieszczeniu ich na osiach X i Y oraz zaznaczaniu punktów w miejscach, gdzie te teksty są podobne
(podobieostwo = identycznośd 4-znakowych sekwencji) – powstaje „bitext map”. Charakterystyczne
cechy takiej mapy: na przekątnej są same punkty, bo to linia (x,x), tzn. wszystko na niej się zgadza.
„Prawie przekątne” mniejszych kwadracików: powstają z nakładania się „cognates”. Po stworzeniu
takiej mapy uruchamia się wyszukiwanie heurystyczne, które znajduje najlepszą ścieżkę na tych
„prawie przekątnych”, czyli dopasowanie.
Fung and McKeown (1994)
Jest to metoda, która w założeniu ma stworzyd mini słownik dwujęzyczny.
W tej metodzie bierze się kolejne słowa, zlicza odległości pomiędzy wystąpieniami tego słowa w
tekście i porównuje z analogicznymi odległościami z tekstu w drugim języku (za pomocą Dynamic
Time Warping – standardowego algorytmu dynamicznego używanego w rozpoznawaniu mowy). Jeśli
te odległości są w miarę podobne to dana para wyrazów trafia do słownika.
Dalej, na podstawie słownika, algorytmem dynamicznym takim jak wcześniej, dopasowuje się teksty
do siebie.
13.1.4 Lexical methods of sentence alignment
Kay and Riischeisen (1993)
Metoda polega na wyszukiwaniu słów o podobnych znaczeniach, łączenia ich ze sobą, następnie
dopasowywaniu najbardziej oczywistych zdao. Jeśli pozostały niedopasowane zdania, to w
dopasowanych zdaniach wyszukiwane są kolejne słowa o podobnych znaczeniach, i wykonywana jest
kolejna iteracja tego algorytmu.
Chen (1993)
Chen dopasowuje zdania konstruując prosty model dopasowujący słowa. Najlepsze dopasowanie to
takie, które maksymalizuje prawdopodobieostwo wygenerowania korpusu przy użyciu danego
modelu. Model generalnie jest podobny do zaproponowanego przez Gale and Church. Chen chciał
stworzyd prosty model, dlatego nawet nie brał pod uwagę np. tego, że jedno słowo może zostad
przetłumaczone na dwa.
Algorytm wygląda tak, że najpierw zakłada się, że dopasowania są typu 1:0 oraz 0:1 (tzn. słowo z
tekstu oryginalnego nie pojawia się w tłumaczeniu, oraz że w tłumaczeniu pojawia się słowo nowe).
Następnie zachłannie zamienia się 1:0 i 0:1 na 1:1 tam, gdzie taka zmiana daje największy zysk, i tak
do momentu kiedy wszystkie możliwe pary zostaną pozamieniane.
Haruno and Yamazaki (1996)
Ich metoda to przeróbka metody Kay and Roscheisen (1993), która działa dla krótkich tekstów i
istotnie różnych języków. Odrzucają z analizy function words, do dopasowywania słów używają m.in.
part of speech taggerów, używają słownika do znajdowania odpowiadających słów.
13.2 Word Alignment
Może służyd np. do tworzenia słowników dwujęzycznych. Słowa są dobierane np. na podstawie
częstotliwości ich użycia. Pojawiają się problemy ze słowami, które nie mają odpowiadających
znaczeo, ale pojawiają się w porównywanych tekstach w podobnych miejscach. Większośd
algorytmów odnajdujących błędne dopasowania bazuje na EM.
13.3 Statistical Machine Translation
Do MT można użyd „noisy channel model”. Na wejściu podajemy zdanie e z języka angielskiego,
transformujemy je do francuskiego f, które następnie wysyłamy do dekodera który determinuje
angielskie zdanie e’ dla którego prawdopodobieostwo otrzymania f jest największe (nie musi to byd
dokładnie to samo co e). Trzeba więc zbudowad 3 komponenty do tłumaczenia z jednego języka do
drugiego: language model, translation model i decoder. Trzeba też ustalid parametry modelu
(translation probabilities).
Language model
Model określa prawdopodobieostwo P(e) zdania e. O takich modelach było w rozdziałach 6, 11 i 12.
Translation model
Prosty model bazujący na dopasowywaniu słów:
Gdzie e to zdanie z języka angielskiego, f z francuskiego, fj to j-ty wyraz w słowie f, aj to indeks w e
słowa odpowiadającego słowu fj. P(wf | we) to prawdopodobieostwo wystąpienia w f słowa wf jeśli
wystąpiło słowo we w e (translation probability).Zakłada się tu niezależnośd indywidualnych
tłumaczeo, tzn. że np. P (Jean aime Marie l John loves Mary) = P(Jean l John) x P(aime | loves ) x
P(Marie l Mary)
Decoder
Wykonuje się tu maksymalizację:
Problemem jest tu nieskooczona przestrzeo rozwiązao, więc potrzeba heurystycznego wyszukiwania
(które nie gwarantuje odnalezienia optymalnego rozwiązania), np. wyszukiwanie przyrostowe
(doklejanie kolejnych najbardziej pasujących słów).
Translation probabilities
Prawdopodobieostwa szacuje się algorytmem EM, zakładając że posiada sie korpus dopasowanych
zdao. Jeśli jakiś wyraz jest mocno dopasowany do jakiegoś innego, to staje się niedostępny do
dopasowania do innych wyrazów, co zapobiega dopasowywaniu tego samego wyrazu do 2 różnych.
Algorytm zaczyna się od losowego ustalenia wag P(wf | we). Następnie liczona jest oczekiwana ilośd
wystąpieo wf jeśli w angielskim odpowiedniku wystąpiło we.
Sumowanie odbywa się po wszystkich parach skojarzonych zdao, w których występują odpowiednio
wf oraz we. Następnie oblicza się prawdopodobieostwa translacji:
Sumując po wszystkich angielskich słowach v.
Mało prawdopodobne dopasowania są karane (np. dla dopasowanych słów z początku i kooca
zdania).
Żyznośd (fertility) – ilośd słów, na które tłumaczy się dane słowo (np. farmer (en) = les agriculteurs
(fr)) – fertility = 2. W większości przypadków żyznośd = 1 lub 2.
W praktyce taki model ma skutecznośd około 48% poprawnie przetłumaczonych zdao. Najczęściej
pojawiające się błędy to błędne lub niegramatyczne tłumaczenie:
Analiza tego modelu wskazuje kilka jego błędów:


Fertility is asymmetric – np. „to go” = „aller” jest tłuczone jako “to”  “” oraz “go” 
“aller”, co nie jest poprawne i dalej może powodować błędy.
Independence Assumption – założenia dotyczące niezależności kolejnych wyrazów w zdaniu
promują krótkie zdania.


Sensitivity to training data – małe zmiany korpusu powodują duże zmiany estymowanych
parametrów
Efficiency – dekodowanie zdao składających się z około 30 słów już jest zbyt czasochłonne
Główne problemy tego modelu wywodzą się z braku wykorzystania wiedzy lingwistycznej.




No notion of phrases (przykład z „to go”)
Non-local dependencies – nielokalne zależności są trudne do wychwycenia przy
zastosowaniu n-gramów.
Morphology – różne formy tego samego wyrazu są traktowane jako różne wyrazy
Sparse data problems – oszacowania dla rzadkich słów będą błędne
Podsumowując, podstawowym problemem „noisy channel model” jest brak wykorzystania wiedzy o
języku naturalnym. Nielingwistyczne modele są dobre do dopasowywania słów, ale nie nadają się do
MT (trzeba dodad wiedzę lingwistyczną).