You are on page 1of 12

Ví dụ

Au sortir de la saison 97/98 et surtout


Dịch máy /
au debut de cette saison 98/99…
Lê Thanh Hương
Bộ môn Hệ thống Thông tin With leaving season 97/98 and
Viện CNTT &TT – Trường ĐHBKHN especially at the beginning of this
Email: huonglt-fit@mail.hut.edu.vn season 98/99…

1 2

Các vấn đề Các vấn đề


2. Cú pháp: trật tự từ trong câu
1. Xử lý sự giống và khác nhau giữa các ngôn ngữ To Yukio; Yukio ne
Tiếng Anh – tiếng Việt:
Hình vị: # số âm tiết/từ: The (affix1) red (affix2) flag (head)
Ngôn ngữ đơn âm tiết ( tiếng Việt, Trung Quốc) – 1 Lá cờ (head) đỏ (affix2) ấy (affix1)
tiếng/từ
3. Các nét riêng biệt
Ngôn ngữ đa âm tiết (Siberian Yupik), 1 từ = cả 1 câu
English brother Vietnamese anh
Mức độ phân chia âm tiết em
English wall German wand (inside)
mauer(outside)
German berg English hill
mountain

3 4

Không gian khái niệm


Ba khối chính trong dịch máy
ngôn
hiểu dịch
ngữ ngôn ngữ đích
ngôn ngữ ngôn ngữ
nguồn S T

thông tin ánh xạ


ngôn ngữ
nguồn - đích

Khoảng trống từ vựng: tiếng Nhật không có từ nào nghĩa privacy;


tiêgns Anh không có từ ứng với yakoko (lòng hiếu thảo)
5 6

1
Hiểu ngôn ngữ
1. Nhập nhằng từ vựng:
Các phương pháp dịch máy
English: book - Spanish libro, reservar cao
siêu ngôn ngữ siêu ngôn ngữ
⇒ Sử dụng thông tin cú pháp
mức trừu ngữ nghĩa
2. Nhập nhằng cú pháp:
tượng dịch chuyển đổi
I saw the guy on the hill with the telescope a g
cú p
pháp
áp

3. Nhập nhằng ngữ nghĩa: thấp s t từ-từ dịch trực tiếp


E: While driving, John swerved & hit a tree
a = a(s)
John’s car g = f(a(s)); f – hàm chuyển đổi
S: Minetras que John estaba manejando, se desvio y t=g(f(a(s)))
golpeop con un arbo

7 8

Sơ đồ chuyển đổi Luật chuyển đổi

9 10

Sơ đồ chuyển đổi
Cách tiếp cận siêu ngôn ngữ: sử dụng
nghĩa
Chuyển đổi: các luật chuyển đổi từ ngôn ngữ này
sang ngôn ngữ khác
ĐỐi tượng/sự kiện (ontology)

11 12

2
Các kiểu dịch máy
cao
mức độ siêu ngôn ngữ
Dịch máy thống kê trừu tượng ngữ nghĩa } chuyển đổi
cú pháp
a g
thấp s t từ-từ

13 14

Dịch máy thống kê


ý tưởng
Coi việc dịch như bài toán kênh có nhiễu
Input (Nguồn) “Noisy” Output (đích)
The channel
E: English words... (adds “noise”) F: Les mots Anglais...

Mô hình dịch: P(E|F) = P(F|E) P(E) / P(F)


Khôi phục lại E khi biết F:
Sau khi đơn giản hóa (P(F) không đổi):

argmaxE P(E|F) = argmaxE P(F|E) P(E)

15 16

Các yếu tố Ý tưởng gióng hàng


Mô hình ngôn ngữ - Language Model (LM): xác suất thấy
1 câu tiếng Anh (E) (xác suất tiền nghiệm): Mô hình dịch TM không quan tâm đến chuỗi đúng các từ
P(E) tiếng Anh
Mô hình dịch - Translation Model (TM): câu đích trong Sử dụng cách tiếp cận gán nhãn:
tiếng Pháp (F) khi có câu tiếng Anh: • 1 từ tiếng Anh(“tag”) ~ 1 từ tiếng Pháp (“word”)
P(F|E) → không thực tế: thậm chí số từ trong 2 câu không bằng
Thủ tục tìm kiếm: nhau
Cho F, tìm E tốt nhất sử dụng mô hình ngôn ngữ LM và → sử dụng “gióng hàng”.
mô hình dịch TM.
Vấn đề: thiếu dữ liệu!
Gióng hàng câu: tìm các nhóm câu trong 1 ngôn ngữ tương
Ta không thể tạo từ điển câu E ↔ F
ứng với các nhóm câu khác trong ngôn ngữ khác
Thậm thí bình thường ta không thấy 1 câu lặp lại 2 lần
17 18

3
Gióng hàng câu Gióng hàng câu
The old man is El viejo está feliz 1. The old man is 1. El viejo está feliz
happy. He has happy. porque ha pescado
porque ha pescado 2. He has fished many muchos veces.
fished many muchos veces
veces. Su times
times.
times. His wife 2. Su mujer habla
mujer habla con él. 3. His wife talks to him.
con él.
talks to him. The Los tiburones 4. The fish are jumping.
5. The sharks await. 3. Los tiburones
fish are jumping. esperan. esperan.
The sharks await.

19 20

Gióng hàng câu Gióng hàng từ - Mức dễ


1. The old man is 1. El viejo está feliz
happy. porque ha pescado
2. He has fished many muchos veces.
times. 2. Su mujer habla con
3. His wife talks to him. él.

4. The fish are jumping. 3. Los tiburones


esperan.
5. The sharks await.
Khó khăn:
Sự liên quan chéo: trật tự câu thay đổi khi dịch

21 22

Gióng hàng từ - Khó hơn Gióng hàng từ - Khó hơn

23 24

4
Gióng hàng từ - Mã hóa
Gióng hàng từ - Khó
0 1 2 3 4 5 6
e0 And the program has been implemented

f0 Le programme a été mis en application


0 1 2 3 4 5 6 7
Gán thông tin tuyến tính:
• f0(1) Le(2) programme(3) a(4) été(5) mis(6) en(6)
application(6)
• e0 And(0) the(1) program(2) has(3) been(4)
implemented(5,6,7)
25 26

Học việc gióng hàng từ sử dụng Học việc gióng hàng từ sử dụng EM
EM

27 28

Học việc gióng hàng từ sử dụng EM Kênh nhiễu


e f
Mô hình ngôn ngữ Mô hình dịch Giải mã
P(e) P(f|e) Argmax
e =P(e|f)
P(e|f)

29 30

5
Các thành phần của mô hình dịch
Giả thiết
Individual translations are independance
Ví dụ
1 từ tiếng Anh – n từ tiếng Pháp
P(Jean aime Marie| John loves Mary)
1 từ tiếng Pháp - (0-1) từ tiếng Anh
1 l l m Gióng hàng(Jean, John), (aime, loves), (Marie,
P ( f | e) =
Z

a1
L∑
am=0
∏ P( f
j =1
j | ea j ) Mary),
Mary) ta có 3 xác suất
P(Jean|John) x P(aime|loves) xP(Marie|Mary)
fj - từ j trong f;
aj - vị trí trong e được gióng hàng với fj
eaj - từ trong e được gióng hàng với fj
Z là hằng số chuẩn hóa
aj = 0: từ j trong câu tiếng Pháp được gióng hàng với một
từ rỗng (không dịch sang)
m – độ dài của f
31 32

Giải mã e = arg max e P(e | f )


Thuật toán EM
P (e) P ( f | e) E-step
= arg max e Khởi tạo giá trị P(wf|we) ngẫu nhiên
P( f ) Tính số lần tìm thấy wf trong tiếng Pháp khi có we trong
= arg max e P (e) P( f | e) tiếng Anh

Vấn đề: không gian tìm kiếm vô hạn


zw f , we = ∑ P( w f | we )
( e , f ) s .t . we = e , w f = f
Mẹo: M-step
tìm kiếm dùng ngăn xếp: xây dựng dần, lưu trong stack các Đánh giá lại xác suất dịch prs từ giá trị z trên:
phần đã dịch z w f , we
P( w f | we ) =
sử dụng một số độ đo về độ phù hợp, vd., chamber/house,
(nhưng có thể đi sai đường nếu 1 từ thường xuất hiện với từ ∑ v
z v,w e
khác, như commune/house, vì có Chambre de Communes (hạ tổng được tính trên tất cả các từ tiếng Pháp v
nghị viện)
33 34

Đánh giá
Đánh giá dựa trên tập ngữ liệu Hansard: Lý do
48% câu tiếng Pháp được dịch đúng Hiện tượng méo: từ tiếng Anh ở đầu câu được
2 loại lỗi: gióng hàng với từ tiếng Pháp ở cuối câu – hiện
Dịch sai nghĩa: tượng này giảm xác suất gióng hàng
• Permettez que je donne un example à chambre
• Let me give an example in the House (incorrect decoding) Hiện tượng sinh (fertility): sự tương ứng giữa từ
• (Let me give the House an example)
tiếng Anh và tiếng Pháp (1-to-1, 1-to-2, 1-to-0,
…),
Dịch sai ngữ pháp:
• Vous avez besoin de toute l’aide disponsible Vd, fertility(farmers) trong tập ngữ liệu = 2,
• You need all of the benefits available (ungrammatical vì từ này khi dịch sang tiếng Anh thường gồm
decoding) 2 từ : les argiculteurs
• (You need all the help you can get)
To go → aller
35 36

6
Lý do Thiếu tri thức ngôn ngữ
Các giả thiết độc lập: các câu ngắn được ưu tiên hơn
vì có ít xác suất hơn (khi nhân) Không lưu thông tin về các ngữ: ví dụ không
⇒ nhân kết quả với 1 hằng số tỉ lệ thuận với độ dài gióng hàng được “to go” và “aller”
câu Không có ràng buộc cục bộ:
Phụ thuộc dữ liệu luyện: 1 thay đổi nhỏ trong dữ liệu Eg, is she a mathematician
luyện gây ra thay đổi lớn trong các giá trị ước lượng
Âm vị. Các từ tạo bởi các âm vị khác nhau được
tham số
coi là các ký hiệu riêng biệt
Vd, P(le|the) thay đổi từ 0.610 xuống 0.497
Dữ liệu thưa. Các đánh giá cho các từ ít gặp
TÍnh hiệu quả. Bỏ các câu > 30 từ, vì làm không gian
tìm kiếm tăng theo cấp số mũ
không chính xác
Thiếu tri thức ngôn ngữ
37 38

Các hệ thống gióng hàng khác Phát hiện biên của câu
Các tập ngữ liệu sử dụng giả thiết: Sử dụng luật, danh sách liệt kê:
• Dữ liệu song song (dịch E ↔ F) Dấu kết thúc câu:
• Dấu ngắt đoạn (nếu được đánh dấu)
Gióng hàng câu • 1 số kýý tự:
ự ?,, !,, ;
• Phát hiện câu • Vấn đề: dấu chấm ‘.’
– Kết thúc câu (... left yesterday. He was heading to...)
• Gióng hàng câu
– Dấu chấm thập phân : 3.6 (three-point-six)
– Dấu chấm hàng nghìn: 3.200
Gióng hàng từ – Viết tắt: cf., e.g., Calif., Mt., Mr.
• Tách từ – Vân vân: ...
• Gióng hàng từ (với 1 số ràng buộc) – 1 số ngôn ngữ: 2nd ~ 2.
– Ký hiệu đầu: A. B. Smith
Phương pháp thống kê: vd Maximum Entropy
39 40

Gióng hàng câu Các phương pháp gióng hàng


Vấn đề với phát hiện biên của câu:
Nhiều phương pháp (xác suất hoặc không)
E: Dựa trên độ dài ký tự
F: Dựa trên độ dài từ
Đầu ra mong đợi: Các phân mảnh với cùng số “cùng gốc” (sử dụng nghĩa từ)
lượng mảnh liên tiếp nhau. • Sử dụng từ điển (F: prendre ~ E: make, take)
• Sử dụng khoảng cách từ (độ tương tự): tên, số, từ vay mượn,
Gióng hàng: từ gốc Latin
E: Kết quả tốt nhất:
F: Thống kê, dựa trên từ hoặc dựa trên ký tự
Kết quả: 2-1, 1-1, 1-1, 2-2, 2-1, 0-1
41 42

7
Gióng hàng dựa trên độ dài Nhiệm vụ gióng hàng
Định nghĩa bài toán như việc tính xác suất: Định nghĩa:
argmaxA P(A|E,F) = argmaxA P(A,E,F) (E,F cố định) Cho P(A,E,F) ≅ Πi=1..nP(Bi),
tìm cách chia (E,F) thành n bead Bi=1..n
i 1 n, sao cho
Định
Đị h nghĩa
hĩ 1 “bead”:
“b d” “bead”
bead (2:2)
tối đa xác suất P(A,E,F) trên tập luyện.
E:
Bi = p:qαi, với p:q ∈ {0:1,1:0,1:1,1:2,2:1,2:2}
F:
mô tả phép gióng hàng
Lấy xấp xỉ:
Pref(i,j) – xác suất của cách gióng hàng tốt nhất từ
P(A,E,F) ≅ Πi=1..nP(Bi),
điểm đầu cho đến (i,j)
Trong đó Bi là 1 bead; P(Bi) không phụ thuộc vào phần còn
lại của E,F.
43 44

Định nghĩa đệ qui Xác suất của 1 Bead


Định nghĩa P(p:qαk):
Khởi tạo: Pref(0,0) = 0.
k đề cập đến “bead” kế tiếp, với các đoạn của câu p và q,
Pref(i,j) = max ( độ dài lk,e và lk,f.
e ( ,j ) P((0:1αk), Pref(i-1,j)
Pref(i,j-1) e ( ,j) P((1:0αk), Pref(i-1,j-1)
e ( ,j ) P((1:1αk),
Sử dụng
d phân
hâ bố chuẩn
h ẩ cho
h các
á độ dài khác
khá nhau:
h
Pref(i-1,j-2) P(1:2αk), Pref(i-2,j-1) P(2:1αk), Pref(i-2,j-2) P(2:2αk) )
P(p:qαk) = P(δ(lk,e,lk,f,μ,σ2),p:q) ≅ P(δ(lk,e,lk,f,μ,σ2))P(p:q)
δ(lk,e,lk,f,μ,σ2) = (lk,f - μlk,e)/√lk,eσ2

E: i Đánh giá P(p:q) từ tập dữ liệu nhỏ, hoặc đoán và đánh


F: Pref(i-2,j-2)
Pref(i-2,j-1)
Pref(i-1,j-2)
Pref(i-1,j-1)
Pref(i-1,j)
Pref(i,j-1) P(α2:1
P(2:2 k)α
P(
P(
P( 1:2kα

αk)))
P(1:0αk) gía lại sau khi gióng hàng
0:1
1:1 kk
j Từ có thể được dùng như dấu hiệu tốt hơn để định
nghĩa P(p:qak).
45 46

Gióng hàng từ Thuật toán gióng hàng từ


Nếu chỉ dựa trên độ dài, không thực hiện được:
từ có thể bị đảo trật tự, các phép dịch thường có Khởi tạo với tập ngữ liệu gióng hàng câu.
độ dài khác nhau Cho (E,F) là 1 cặp câu (là 1 bead).
1. Khởi tạo ngẫu nhiên p(f|e), f∈F, e∈E.
Ý tưởng: 2. Đếm trên tập ngữ liệu:
Đưa ra vài mô hình dịch đơn giản. c(f,e) = Σ(E,F);e∈E,f∈F p(f|e)
Tìm các tham số bằng cách xét tất cả các cách với ∀ cặp gióng hàng (E,F), kiểm tra xem e có trong E và f
gióng hàng. có trong F không. Nếu đúng, bổ sung p(f|e).
Sau khi có tham số, tìm cách gióng hàng tốt nhất 3. Đánh giá lại:
khi có các tham số này. p(f|e) = c(f,e) / c(e) [c(e) = Σf c(f,e)]
4. Lặp đến khi p(f|e) thay đổi ít.
47 48

8
Cách gióng hàng tốt nhất
Với mỗi cặp (E,F), tìm
A = argmaxA P(A|F,E) = argmaxA P(F,A|E)/P(F) = Dịch máy sử dụng cú pháp
argmaxA P(F,A|E) = argmaxA (ε / (l+1)m Πj=1..m
p(fj|eaj)) = argmaxA Πj=1..mp(fj|eaj)
Sử sụng thuật toán lập trình động theo
kiểuViterbi.
Tính lại p(f|e)

49 50

Yamada and Knight (2001):


Tại sao dùng cú pháp
Lý do cần cú pháp
Cần thông tin ngữ pháp
Cần các ràng buộc khi sắp lại câu
Khi chèn các từ chức năng vào câu, cần
đặt ở vị trí chính xác
Khi dịch từ cần sử dụng từ có cùng từ
loại với nó

51 52

Mô hình dựa trên cú pháp Cây cú pháp (Anh) Æ câu (Nhật)


Cây cú pháp Câu
(tiếng Anh) (tiếng Nhật)
Mô hình dịch

Tiền xử lý câu tiếng Anh bằng bộ PTCP


Thực hiện các phép tính xác suất trên cây cú
pháp
Sắp lại trật tự các nút
Chèn nút mới vào
Dịch các từ ở lá

53 54

9
1. Sắp lại trật tự
Bảng tham số: sắp lại
Trật tự gôc Sắp lại P(Sắp lại| Trật tự gốc)

Đặc trưng điều kiện = dãy các nhãn con


55 56

2. Chèn Bảng tham số: chèn

Đặc trưng điều kiện = nhãn cha & nhãn nút (vị trí) & none (là từ)

57 58

3. Dịch Bảng tham số: Dịch

Đặc trưng điều kiện = từ (tiếng Anh) Ghi chú: Dịch thành NULL Æ xóa

59 60

10
Thử nghiệm Kết quả
Dữ liệu luyện: 2000 cặp câu J-E Điểm trung bình #câu
Y/K model 0.582 10
J: tách từ sử dụng Chasen
IBM model 5 0.431
0 431 0
E: PTCP sử dụng bộ PTCP Collins
Luyện trên 40000 câu từ Treebank, độ cx
Điểm trung bình được tính trên 3 người với 50 câu
~90%
ok(1.0), không chắc (0.5), sai (0.0)
E: từ cây cú pháp, xác định trật tự từ chỉ tính độ chính xác
và chuyển đổi (SVO <-> SOV)
Luyện sử dụng EM: 20 vòng lặp
61 62

Kết quả: gióng hàng 1 Kết quả: gióng hàng 2

63 64

Một số hệ thống dịch máy trên


Internet
http://www.google.com/language_tools?hl=en
http://www.systransoft.com/index.html
http://babelfish altavista digital com/
http://babelfish.altavista.digital.com/

65 66

11
67

69 70

12

You might also like