Tải bản đầy đủ (.ppt) (32 trang)

Nghiên cứu dịch máy thống kê & Thử nghiệm xây dựng hệ dịch máy thống kê Anh-Việt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (527.16 KB, 32 trang )

Giáo viên hướng dẫn: ThS. Nguyễn Thị Thu Hương
1
Nghiên cứu dịch máy thống kê &
Thử nghiệm xây dựng hệ dịch máy
thống kê Anh-Việt
Nội dung

Dịch máy thống kê

Mô hình ngôn ngữ

Mô hình dịch

Giải mã

Hệ dịch máy thống kê Anh-Việt

Thử nghiệm

Kết luận
2
Tổng quan
3

Dịch máy thống kê: dịch văn bản từ ngôn ngữ này sang một ngôn ngữ khác dựa trên mô hình
được sinh ra một cách tự động từ ngữ liệu.

Bài toán: Cho câu tiếng Anh đầu vào e, tìm câu tiếng Việt v* sao cho xác suất điều kiện P(v|e)
là lớn nhất.

Công thức Bayes:


v* = argmax
v
P(e|v)P(v)

P(e|v): Mô hình dịch.

P(v) : Mô hình ngôn ngữ.
Mô hình dịch máy thống kê
4
Bộ giải mã (tìm kiếm):
( ) ( )
ˆ
arg max | *
v
v p e v p v=
Mô hình ngôn ngữ :p(v)
Mô hình dịch: p(e|v)
Ngữ liệu đơn ngữ
Ngữ liệu song ngữ
Tiền xử lý
Hậu xử lý
Câu nguồn e:
“I am a student”
Câu đích v:
“Tôi là một sinh viên”
Mô hình ngôn ngữ
5

Tính p(v):


Chuỗi xác suất: P(v)= p(v
1
,v
2
,…,v
I
) = p(v
1
) p(v
2
|v
1
)…p(v
I
| v
1
,v
2
,…,v
I-1
)

Giả thuyết Markov:

N-gram: cụm n-từ liên tiếp

Xấp xỉ n-gram: P (v
I
|v
1

, v
2
,…, v
I-1
) ≈ p (v
I
| v
I-n+1
, v
I-n+2
,…, v
I-1
)

Trigram(n=3): P(v)= p(v
1
,v
2
,…,v
I
) = ∏ p(v
k
| v
k-2
v
k-1
) k=1,…,I

Ví dụ: v = "Tôi đang đọc sách" (I=4)
p(Tôi đang đọc sách) = p(Tôi | <bắt-đầu-câu><bắt-đầu-câu>) *

p(đang | <bắt-đầu-câu>Tôi) *
p(đọc | tôi đang) *
p(sách | đang đọc)
Tính p(z|xy): P(đọc|tôi đang)= c(tôi đang đọc)/ c(tôi đang)
Mô hình ngôn ngữ
6

Dữ liệu thưa:

p(z | x y) = c(xyz)/ c(xy)

Ngữ liệu giới hạn: “xyz” không xuất hiện

p(z|
xy)=0

câu v chứa “xyz” bị gán p(v)=0.

Cần ước lượng lại các p(z|xy):

Phương pháp làm mịn (smoothing):
Laplace, Interpolation và Backoff
Các phương pháp làm mịn
7

Phương pháp Laplace:

V: kích thước từ vựng của ngữ liệu

Nhược điểm:


Chỉ giải quyết xác suất bằng 0 với các n-gram không xuất hiện.

Xác suất các n-gram có xuất hiện bị ước lượng sai lệch.
( ) 1
( | )
( )
Lap
c xyz
P z xy
c xy V
+
=
+
Các phương pháp làm mịn
8

Phương pháp Interpolation và Backoff:

Ý tưởng: tính xác suất theo các n-gram nhỏ hơn

Interpolation:
PInt(z | x y) = λ1 .P*(z|xy) +
λ2 .P*(z|xy) +
λ3 .P*(z) +
λ4
Các phương pháp làm mịn
9

Backoff:

Với: P*(z|xy) = c(xyz) / c(xy)
P*(z|xy) = c(yz) / c(y)
P*(z) = c(z) / tổng số từ xuất hiện
P*(z|xy) nếu: c(xyz)>0
P(z|xy)=
α(xy)P(z|y) ngược lại
P*(z|y) nếu c(yz) >0
P(z|y)=
α(y)P*(z) ngược lại
Mô hình dịch
10

Tính xác suất p(e|v).

Dựa trên việc gióng hàng từ giữa 2 câu Việt(v)Anh(e):

1

1, 3

5, 4

4, 6

9, 7

10: gióng hàng 1-1

2


(2,3), 5

(6,7,8): gióng hàng 1-nhiều
I take on extra work in order to get money
Tôi làm việc thêm để kiếm tiền
Gióng hàng: a {11, 2(2,3), 35, 44, 5(6,7,8), 69, 710}
1
7 8
9 102
3 4 5 6
1 72 3 4 5 6
Mô hình dịch dựa trên đơn vị từ

Đơn vị dịch: từ

IBM Model 1-5:

Phương pháp sinh: chia quá trình gióng hàng thành
các bước nhỏ hơn. Mô hình hóa các bước đó bằng các
xác suất điều kiện dựa trên các giả thuyết đơn giản
11
Mô hình dịch dựa trên đơn vị từ
12

IBM Model1: ví dụ với |e|=J, |v|=I
Bước 1:Xác định độ dài câu e
P(J|v)=ε
Bước 2: Chọn gióng hàng
1
1

( | , )
1
J
j
P a J v
I
=
=
+

Bước 3: Chọn dịch tương ứng các từ tiếng Việt sang tiếng Anh
1
( | , , ) ( | )
j
J
j a
j
P e a J v t e v
=
=

1
( , | ) ( | )
( 1)
j
J
j a
J
j
P e a v t e v

I
ε
=
=
+

Dịch máy thống kê dựa trên đơn vị từ

IBM Model 1:

Xác suất p(e|v):

Giả thuyết chọn gióng hàng đơn giản

Đưa ra các mô hình IBM Model 2, 3,4 và 5 để có giả thuyết khái
quát hơn.
13
1
( | ) ( , | ) ( | )
( 1)
j
J
j a
J
a a
j
P e v P e a v t e v
I
ε
=

= =
+
∑ ∑

Dịch máy thống kê dựa trên đơn vị từ

Hạn chế của các mô hình IBM:

Chỉ giải quyết được gióng hàng 1-nhiều

Không giải quyết được gióng hàng nhiều- nhiều

Gióng hàng theo đơn vị cụm từ (phrase)
14
Dịch máy thống kê dựa trên đơn vị cụm từ

Đơn vị dịch: cụm từ, là một chuỗi các từ liên tiếp bất kỳ

Mỗi cụm tiếng Việt ứng với một cụm tiếng Anh :
: xác suất dịch cụm từ

Các cụm từ có thể bị dịch chuyển:
: xác suất chuyển dịch

start
i
: vị trí đầu tiên của cụm từ tiếng Anh ứng với

end
i-1

: vị trí cuối của cụm từ tiếng Anh ứng với
Xác suất p(e|v):
15
j
v
i
e
( | )
i i
e v
ϕ
( )
1
1
i i
d start end

− −
i
v
1i
v

( )
( )
( )
1
1
| | 1
I

i i i i
i
p e v e v d start end
ϕ

=
= − −

We have a
green
house
Chúng_tôi
ngôi_nhà
xanh
có một
Gióng hàng cụm từ

Dựa trên gióng hàng từ hai chiều AnhViệt, ViệtAnh

Thu thập các cụm từ được gióng hàng hợp lệ theo hai chiều

Ước lượng được
16
Gióng hàng Anh-Việt
Gióng hàng Việt-Anh
( )
( )
( )
|
|

i i
i i
i
count e v
e v
count v
ϕ
=
Giải mã
17

Tiến trình giải mã:

Đầu vào: câu tiếng Anh e

Đầu ra: câu tiếng Việt v
He did not
go
home
- chọn cụm từ tiếng Anh cần dịch
Anh ta
He
did not go
home
- tìm cụm từ tiếng Việt tương ứng
- thêm cụm từ tiếng Việt vào cuối câu dịch tạm thời
He
did not
go
home

Anh ta
- đánh dấu cụm từ tiếng Anh đã được dịch
đã không
- chuyển sang dịch cụm từ tiếp theo cho đến hết câu tiếng Anh
He did not go
home
Anh ta
- kết thúc dịch
He
did not
go home
đã không vềAnh ta
nhà
Giải mã

Các khả năng dịch
18
He did not go home
anh_ta làm không đi nhà

thực_hiện
không_phả
i
trở_thành chỗ_ở
đàn_ông đã không_đún
g
về
quê_hương
nó làm trở_thành quê_hương
anh_ta đã đi về

đã không
làm không đúng
Giải mã

Mở rộng không gian giả thuyết

Giảm bớt số lượng giả thuyết:
19
anh_ta nhà

đàn_ông
thực_hiện
đã không
làm
đã
trở_thành
về
nhà
He did not go home
Hệ dịch máy thống kê
Anh-Việt
20
Huấn luyện mô hình & Dịch
21
Giải mã:
( ) ( )
ˆ
arg max | *
v
v p e v p v=

Mô hình ngôn ngữ :p(v)
(xác suất n-gram)
Mô hình dịch: p(e|v)
(xác suất dịch cụm từ,
xác suất chuyển dịch)
Ngữ liệu đơn ngữ tiếng Việt
Ngữ liệu song ngữ Anh-Việt
Tiền xử lý
Hậu xử lý
Câu nguồn (tiếng Anh) e:
“I am a student”
Câu đích (tiếng Việt) v:
“Tôi là một sinh viên”
Thực hiện dịch
Huấn luyện các mô hình
Thu thập và xử lý dữ liệu

Nguồn ngữ liệu song ngữ Anh-Việt:

Dịch tay thủ công

Lấy tự động từ Internet: VOA.com, BBC.com,…

Ngữ liệu:

4843 cặp câu thuộclĩnh vực CNTT

160,000 cặp câu thuộc lĩnh vực chung

Gióng hàng câu:

22
Tiền xử lý dữ liệu

Tách từ tiếng Việt:

Tiếng Việt là ngôn ngữ đơn lập

Một từ được cấu tạo từ một hoặc nhiều âm tiết:

Ví dụ: “Tôi muốn mua một chiếc máy_tính mới”

“máy”-”machine”

“tính”-”calculate”

“máy_tính”- “computer”

tách từ có thể khử nhập nhằng trong quá trình dịch
Anh-Việt
23
Xây dựng mô hình ngôn ngữ

Các công cụ xây dựng:

SRILM, IRSTLM, RandLM

Lựa chọn SRILM:

Mô hình n-gram


Cấu hình làm mịn hỗ trợ: Interpolation và Backoff

Ưu điểm:

Cấu hình đơn giản

Thống kê nhanh

Sử dụng cấu hình Interpolation: qua thử nghiệm với bộ ngữ liệu đã có cho kết quả tốt hơn
Backoff.
24
Gióng hàng từ

Dùng GIZA++:

Phổ biến

Mô hình gióng hàng: IBM Model 1-5 và mô hình
HMM (thay thế IBM Model 2)

Nhược điểm:

Không có gióng hàng nhiều-nhiều, nhiều-1

Thực hiện gióng hàng 2 chiều các cặp câu Anh-Việt

Làm cơ sở gióng hàng cụm từ
25

×