Sunday 13 April 2014

IBM Model 1, 2, 3, dan 4 untuk Penyelarasan Kata (Word Alignment) pada Mesin Penerjemah


-->
Word alignment dari korpus bilingual memberikan pengetahuan penting untuk banyak tugas pengolahan bahasa alami, seperti ekstraksi dari kata-kata bilingual atau leksikal. Solusi dari masalah ini sangat tergantung pada kualitas word alignment. Model word alignment pertama kali diperkenalkan pada terjemahan mesin statistik (Brown et al., 1993). Alignment menggambarkan pemetaan dari kata-kata kalimat sumber terhadap kata-kata pada kalimat target.

Koehn, P. (2010) menjelaskan bahwa IBM Model 1 merupakan model word alignment yang menggunakan algoritma Expectation Maximization (EM) untuk melakukan komputasi porbabilitas translasi leksikal dari korpus paralel. Pada IBM model 1 didefinisikan kalimat sumber sebagai f = (f1, … flf) dimana lf adalah banyaknya kata dalam kalimat f, kalimat target sebagai e = (e1, … elf) dimana le adalah banyaknya kata dalam kalimat e dengan fungsi alignment a : j → i. Probabilitasnya didefinisikan sebagai :

Sebagai contoh, sebuah kalimat dari bahasa Jerman dengan terjemahannya dalam bahasa Inggris seperti berikut ini :



-->
Sumber : Koehn (2010)

IBM Model 2 menambahkan fungsi perubahan posisi kata-kata dari kalimat sumber ke kalimat target sebagai a(i | j, le , lf ), dimana i adalah posisi kata pada kalimat sumber, j adalah posisi kata pada kalimat target, le dan lf adalah banyaknya kata pada kalimat target dan kalimat sumber.

IBM Model 2 dapat dilihat sebagai 2 langkah proses, yaitu langkah penerjemahan (translation step) dan alignment step seperti berikut ini :



-->
Sumber : Koehn (2010)

Dua langkah tersebut secara matematis didefinisikan sebagai :

IBM Model 3 terdiri dari 4 langkah proses, yaitu fertility, NULL insertion, lexical translation, dan distortion. Pada proses fertility, setiap kata pada kalimat sumber dicari probabilitas berapa banyak kata hasil terjemahan dari kata tersebut yang didefinisikan sebagai n(Ф,f), dimana Ф adalah banyak kata hasil terjemahan dari kata f. Pada proses NULL insertion, setiap NULL yang disisipkan ditentukan dari probabilitas p1 setelah terjadinya setiap kata atau tidak menyisipkan NULL dengan probabilitas p0 = 1 − p1. Proses lexical translation dilakukan sama seperti IBM model 1, dan proses distortion mirip dengan langkah alignment pada IBM Model 2. Keempat langkah tersebut dicontohkan sebagai berikut :

 
-->
Sumber : Koehn (2010)

IBM model 4 mengacu kepada IBM model 3, tetapi dengan melakukan distorsi secara relatif pada proses distortion.

Sebagai contoh, kalimat sumber dan kalimat target terjemahan dengan alignment sebagai berikut :
 Sumber : Koehn (2010)

Distorsi pada IBM Model 4 adalah kata-kata pada kalimat sumber dengan fertility yang tidak 0 (nol) dari cept (disini ada 5 cept) yang berisi kata-kata pada kalimat target ej. Pusat i i dari sebuah cept πi, yaitu rata-rata yang dibulatkan ke atas dari j (ceiling(avg( j))).

Distorsi untuk setiap kata-kata pada kalimat sumber dimodelkan dengan sebuah probabilitas distribusi sebagai berikut.
  1. Untuk kata yang berasal dari NULL (misalnya kata do).
  2. Untuk kata pertama dalam cept (misalnya kata not), berdasarkan pada jarak antara kata dan pusat sebelum kata tersebut (j −Oi-1).
  3. Untuk kata-kata berikutnya didalam cept (misalnya kata the), berdasarkan jarak kata sebelumnya dalam cept. Probabilitas distribusi d1 dan d>1 dipelajari dari data yang dukondisikan menggunakan informasi leksikal.
Lebih jelasnya dapat dilihat seperti contoh berikut :

 Terdapat 5 (lima) cept yaitu π1 ... π5, posisi kata ke 3 (tiga) untuk kata ”ja” tidak digunakan karena tidak menghasilkan kata target. Pusat cept 4 ditentukan menjadi 6 karena rata-rata 5 dan 6 adalah 5,5, selanjutnya dibulatkan ke atas menjadi 6. Selanjutnya, distorsi untuk setiap kata-kata dari kalimat target ditentukan sebagai berikut :




-->
Ada 3 (tiga) kondisi untuk setiap kata-kata target yang didefinisikan distorsi relatifnya, yaitu : (1) kata-kata yang dihasilkan dari token NULL, (2) kata pertama di dalam cept dan (3) kata-kata berikutnya di dalam cept.

Kata-kata yang dihasilkan dari token NULL didistribusikan secara seragam, kata pertama di dalam cept menggunakan probabilitas distribusi :
d1 (j − Oi-1)

Kata-kata berikutnya di dalam cept menggunakan probabilitas distribusi :
d>1 ( j − πi,k−1)

Pada implementasinya, beberapa jenis kata cenderung berpindah posisi pada terjemahannya, sebagai contoh adjective–noun selalu dibalik saat diterjemahkan dari bahasa Prancis ke bahasa Inggris seperti pada kalimat affaires extérieur yang diterjemahkan menjadi external affairs .

Probabilitas distribusi pada dua persamaan sebelum ini untuk kata-kata ej dan f(i-1) adalah :
d1 (j − O i-1 | f(i-1) , ej )
dan
d>1 ( j − πi,k−1| ej)

IBM model 4 memperkenalkan kelas kata (word classes) pada penggunaannya, saat kosakata suatu bahasa dibagi-bagi menjadi beberapa kelompok (misalnya 50 kelas), hal ini dapat dikondisikan sebagai probabilitas distribusi pada kelas-kelas ini. Hasilnya hampir seperti model leksikal, tapi dilakukan secara statistik.

Secara formal, dapat digunakan 2 (dua) fungsi A(f) dan B(e) yang memetakan kata-kata terhadap kelas kata nya. 

d1 (j − O i-1 | A(f(i-1)), B(ej))
dan
d>1 ( j − πi,k−1| B(ej))

Banyak cara untuk mendefinisikan fungsi kelas kata A dan B. Salah satunya adalah dengan menggunakan penandaan PoS. Biasanya ini berarti menandai korpus paralel dengan instrumen tertentu secara otomatis. Alternatif lain adalah dengan mengklaster kata-kata secara otomatis ke dalam kelas kata dengan jumlah kelas tertentu.

Sumber :
-->
Brown, P. F., Della P., S. A., Pietra, V., dan Mercer, R. L. (1993) : The mathematics of statistical machine translation. Computational Linguistics, 19(2), 263–313.

-->
Koehn, P. (2010) : Statistical Machine Translation, Cambridge University Press, New York.