ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Vũ Ngọc Kha
XỬ LÝ NHẬP NHẰNG NGỮ NGHĨA TRONG DỊCH
MÁY THỐNG KÊ DỰA VÀO CỤM TỪ
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2010
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Vũ Ngọc Kha
XỬ LÝ NHẬP NHẰNG NGỮ NGHĨA TRONG DỊCH
MÁY THỐNG KÊ DỰA VÀO CỤM TỪ
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: TS. Nguyễn Phương Thái
HÀ NỘI - 2010
LỜI CẢM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn chân thành và sâu sắc nhất đến thầy hướng
dẫn của tôi, TS. Nguyễn Phương Thái, người đã tạo điều kiện cho tôi có một môi
trường nghiên cứu rất tốt, hướng dẫn, chỉ bảo cho tôi trong quá trình nghiên cứu
và hoàn thành luận văn này.
Tôi xin tỏ lòng biết ơn tới các thầy trong bộ môn Khoa Học Máy Tính, cùng
các thầy cô trường Đại học Công nghệ, ĐHQG Hà Nội, đã tạo điều kiện cho tôi
có môi trường làm việc tốt; dạy dỗ, bồi dưỡng kiến thức cho tôi trong những năm
tháng học tập tại trường, cùng với những góp ý về chuyên môn trong quá trình
tôi nghiên cứu và hoàn thành luận văn tốt nghiệp.
Tôi xin chân thành cảm ơn ThS. Nguyễn Thị Phương Thảo, Viện Công
Nghệ Thông Tin, Viện Khoa Học Việt Nam đã có những góp về đề tài nghiên
cứu của tôi.
Cuối cùng, gia đình, bạn bè và người thân là chỗ dựa tinh thần vững chắc
giúp tôi vượt qua những giai đoạn khó khăn và hoàn thành luận văn này.
Hà Nội, ngày 20 tháng 05 năm 2010
Sinh Viên
Vũ Ngọc Kha
TÓM TẮT NỘI DUNG
Dịch máy thống kê là quá trình 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 song
ngữ. Yếu điểm của phương pháp dịch máy thống kê là nó không sử dụng thông
tin ngữ cảnh trong quá trình dịch. Xử lý nhập nhằng ngữ nghĩa sử dụng thông tin
ngữ cảnh của một cụm từ để đưa ra nghĩa đúng của cụm từ đó trong một văn
cảnh cụ thể. Tích hợp xử lý nhập nhằng ngữ nghĩa sẽ nâng cao chất lượng bản
dịch của hệ dịch máy thống kê. Hệ dịch không chỉ có ưu điểm của phương pháp
thống kê mà còn có thêm thế mạnh từ tri thức ngôn ngữ được kết hợp linh hoạt
dưới dạng các yếu tố ngôn ngữ tương ứng như từ loại, thông tin hình thái…
Luận văn sử dụng MEM (Maximum Entropy Model) để huấn luyện mô
hình WSD. WSD sử dụng MEM có khả năng ứng dụng với bộ dữ liệu lớn, rất
phù hợp với hướng tiếp cận thống kê.
Mô hình WSD sau khi đã được huấn luyện có thể lấy làm thuộc tính cho
SMT. Tương tự như mô hình dịch hay mô hình ngôn ngữ, mô hình WSD là một
thành phần xác định xác suất của các nghĩa của một từ, cụm từ trong câu nguồn.
Trọng số của thuộc tính WSD có thể được điều chỉnh dựa vào huấn luyện cực
tiểu sai số (Minimum Error Rate Training).
Kết quả thực nghiệm cho thấy, độ chính xác của bộ WSD sử dụng MEM là
khoảng trên 70%, điểm BLEU của hệ dịch máy khi được tích hợp WSD tăng lên
từ 36.57 (không sử dụng WSD) lên 37.45 (sử dụng tất cả các thuộc tính WSD).
Ngoài ra, thực nghiệm cũng cho thấy các thuộc tính WSD khi được sử dụng cùng
nhau sẽ cho kết quả tốt nhất.
MỤC LỤC
DANH SÁCH CÁC HÌNH VẼ
DANH SÁCH CÁC BẢNG
BẢNG CÁC TỪ VIẾT TẮT
BLEU Bilingual Evaluation Understudy
IIS Improved Iterative Scaling
MEM Maximum Entropy Model
MLE Maximum Likelihood Estimation
MT Machine Translation
LODCE
Longman Dictionary of
Contemporary English
POS Part Of Speech
SMT Statistical Machine Translation
WSD Word Sense Disambiguation
BẢNG CÁC THUẬT NGỮ
Word Sense Disambiguation Xử lý nhập nhằng ngữ nghĩa
Machine Translation Dịch máy
Statistical Machine Translation Dịch máy thống kê
Phrase-based SMT Dịch máy thống kê dựa vào cụm từ
Sample Mẫu
Interlingua Dịch liên ngữ
Corpus-based Dựa vào ngữ liệu
Example-based Dựa vào ví dụ
Phrase-based Dựa vào cụm từ
Knowledge-based Dựa vào tri thức
Word-based Dựa trên từ
Noisy channel model Mô hình kênh nhiễu
Alignment model Mô hình dóng hàng từ
Fertility Độ hỗn loạn
Phrase Cụm từ
Reordering model Mô hình trật tự từ
Language model Mô hình ngôn ngữ
Translation model Mô hình dịch
Smoothing Làm mịn
Maximum Likelihood Estimation Ước lượng hợp lý cực đại
Linear Interpolation Nội suy tuyến tính
Feature Đặc trưng
Active Feature Đặc trưng tích cực
Word penalty Hàm phạt từ
Corpus-based method Phương pháp dựa trên ngữ liệu
Labeled dataset Tập dữ liệu đã được gán nhãn
Domain adaptation Thích nghi miền
BẢNG CÁC THUẬT NGỮ
Constraint Ràng buộc
Principle of Insuficient Reason Nguyên lý lập luận thiếu
Indicator Function Hàm chỉ thị
Feature Function Hàm đặc trưng
Simplex Đơn hình
Primal problem Bài toán cơ sở
Dual problem Bài toán đối ngẫu
Contrained optimization Tối ưu có ràng buộc
Uncontrained optimization Tối ưu không ràng buộc
Gradient ascent Leo dốc gradient
Gradient conjugate Liên hợp gradient
Iterative scaling algorithm Thuật toán leo lặp
Basic feature selection Lựa chọn đặc trưng cơ sở
Minimum Error Rate Training Huấn luyện cực tiểu sai số
Approximate gains Xấp xỉ độ tăng
LỜI MỞ ĐẦU
Thời gian gần đây, dịch máy đóng một vai trò quan trọng, hỗ trợ con
người trong việc tìm kiếm, cập nhật thông tin từ nhiều nguồn ngôn ngữ khác
nhau. Trong số các hướng nghiên cứu trong dịch máy hiện nay, hướng tiếp cận
thống kê đang được đánh giá là hướng phát triển tiềm năng và thu hút được sự
quan tâm của nhiều nhà nghiên cứu trên thế giới. Ưu điểm vượt trội của
phương pháp tiếp cận thống kê là hệ dịch tự động thu thập các thông tin, thiết
lập các từ điển, các quy luật dựa trên kết quả thống kê có được từ kho ngữ liệu.
Do đó, dịch máy thống kê tính khả chuyển cao và có khả năng áp dụng cho tất
cả các cặp ngôn ngữ.
Trong phương pháp thống kê, có ba hướng tiếp cận chính, đó là dịch máy
thống kê dựa trên đơn vị từ, dựa trên đơn vị cụm từ và dựa trên cú pháp. Trong
đó, dịch máy thống kê dựa trên đơn vị cụm từ hiện đang là phương pháp tiếp
cận đưa ra kết quả tốt nhất và thu hút được nhiều sự quan tâm nhất.
Tuy nhiên, cách tiếp cận thống kê vẫn phải đối mặt với những hạn chế do
sự thiếu hụt về thông tin ngôn ngữ, thông tin ngữ cảnh. Mô hình dịch thống kê
vẫn chưa giải quyết được một số vấn đề cơ bản của dịch máy ví dụ như trật tự
từ, lựa chọn cụm từ phù hợp…Gần đây, các nghiên cứu tích hợp thông tin ngôn
ngữ và thông tin ngữ cảnh vào dịch máy thống kê đã gặt hái được những thành
công đáng khích lệ. Các hạn chế trên đã được cải thiện khá tốt.
Việc lựa chọn từ dịch ảnh hưởng rất nhiều đến chất lượng dịch, do đó,
nâng cao chất lượng của việc lựa chọn từ dịch sẽ nâng cao chất lượng hệ dịch.
Xử lý nhập nhằng ngữ nghĩa sử dụng các thông tin ngữ cảnh để đưa ra nghĩa
đúng của một từ, cụm từ trong một văn cảnh cụ thể. Nó sẽ cung cấp thêm thông
tin cho việc xác định nghĩa trong ngôn ngữ đích của một từ, cụm từ trong ngôn
ngữ nguồn. Từ đó nâng cao chất lượng hệ dịch thống kê.
Dịch máy thống kê làm việc trên kho ngữ liệu song ngữ lớn nên sử dụng
MEM để huấn luyện WSD là phương án tối ưu nhất. Mô hình WSD sử dụng
MEM có thể ứng dụng với bộ dữ liệu lớn, rất phù hợp với hướng tiếp cận thống
kê.
Theo những quan sát, đánh giá trên, luận văn hướng đến việc nghiên cứu
và tích hợp xử lý nhập nhằng ngữ nghĩa vào hệ dịch thống kê Anh – Việt dựa
trên đơn vị cụm từ. Trong đó, mô hình cực đại Entropy (MEM) sẽ được sử
dụng để huấn luyện WSD. Nếu thực hiện thành công, chất lượng dịch sẽ được
nâng cao đáng kể.
Chương I:
GIỚI THIỆU DỊCH MÁY VÀ KHÓ KHĂN TRONG DỊCH MÁY
1.1 Dịch máy là gì ?
Dịch máy (Machine Translation - MT) hay còn gọi là dịch tự động là một
nhánh của xử lý ngôn ngữ tự nhiên, là sự kết hợp giữa ngôn ngữ dịch thuật và
khoa học máy tính. Dịch máy thực hiện dịch một ngôn ngữ này (ngôn ngữ
nguồn) sang một ngôn ngữ khác (ngôn ngữ đích) một cách tự động, không có sự
can thiệp của con người trong quá trình dịch.
1.2 Lịch sử dịch máy
Lịch sử của dịch máy bắt đầu từ thế kỷ 17 khi 2 nhà triết học Leibniz và
Descartes đưa ra những ý tưởng đầu tiên về các mã thực hiện mối liên hệ giữa
nhiều ngôn ngữ, nhưng tất cả những đề xuất này chỉ dừng lại ở mức lý thuyết mà
không có một ứng dụng thực tế nào.
Sáng chế đầu tiên cho một chương trình "dịch tự động" được thực hiện vào
khoảng giữa thập niên 1930. Vào thời điểm này Georges Artsruni đã tạo ra một
bộ từ điển song ngữ với chức năng tra từ tự động bằng các băng giấy, tiếp theo
một người Nga là Pyotr Troyanskii tiếp tục phát triển với nhiều chi tiết hơn. Nó
không chỉ có một bộ từ điển song ngữ mà còn bao gồm các quy tắc ngữ pháp cơ
bản dựa trên quốc tế ngữ.
Tuy nhiên, lịch sử của dịch tự động được chính thức ghi nhận từ thập niên
1950. Vào năm 1954, thực nghiệm Georgetown-IBM đã thực hiện thành công thí
nghiệm dịch tự động hoàn toàn hơn 60 câu tiếng Nga sang tiếng Anh. Thành
công bước đầu này đã tạo điều kiện để lập ra những quỹ đầu tư có giá trị cho các
nghiên cứu. Tại thời điểm đó, các tác giả tuyên bố rằng chỉ trong vòng từ 3 đến 5
năm nữa vấn đề dịch máy sẽ được giải quyết [16].
Nhưng thực tế kết quả chậm hơn nhiều, báo cáo ALPAC vào năm 1966 cho
thấy sau hơn 10 năm nghiên cứu lĩnh vực này vẫn không có những tiến bộ đáng
kể và hệ quả là số tiền chi cho nghiên cứu giảm mạnh. Vào cuối thập niên 1980,
khi máy vi tính có tốc độ xử lý cao hơn đồng thời lại rẻ hơn thì người ta mới bắt
đầu quan tâm hơn đến mô hình thống kê vốn đòi hỏi khả năng xử lý dữ liệu cực
lớn mà trước đó không thể thực hiện được vì các nguyên nhân kỹ thuật cũng như
kinh tế.
Lĩnh vực dịch tự động trong vài năm qua đã có những thay đổi lớn, có rất
nhiều nghiên cứu dựa trên các nền tảng thống kê và ví dụ mẫu (samples). Hiện
nay, một số công ty đã xây dựng chương trình dựa trên thống kê như Language
Weaver (chuyên cung cấp các sản phẩm và dịch vụ thương mại liên quan đến
dịch thuật), Google và Microsoft cũng có các sản phẩm tương tự do chính họ giữ
11
bản quyền. Một hướng tiếp cận mới là kết hợp (lai ghép) các phương pháp với
nhau, như những nghiên cứu phối hợp giữa các nguyên tắc cú pháp và hình thái
học vào trong các hệ thống thống kê.
Dịch máy Anh - Việt
Những năm thập niên 1960 vấn đề dịch tự động cho tiếng Việt đã bắt đầu
được nghiên cứu, hầu hết đều do các nguyên nhân chính trị và quân sự. Các tài
liệu nước ngoài cho thấy, được sự bảo trợ của không lực Mỹ, Bernard E. Scott
thành lập công ty Logos vào năm 1969 với mục đích tiếp tục nghiên cứu việc tổ
chức hệ thống dịch tự động từ tiếng Anh ra tiếng Việt. Scott bắt đầu chuẩn bị cho
việc tổ chức hệ thống dịch tự động này vào mùa xuân năm 1965 tại Viện công
nghệ máy tính New York. Vào khoảng tháng 6 năm 1970 hệ thống dịch tự động
có tên Logos I ra đời với từ điển tự động hóa hỗ trợ chỉ có hơn 1.000 từ tiếng
Việt, tác giả của hệ thống này là Byrne, Charles E. ; Scott, Bernard E. ; Binh,
Truong N. Nhưng hệ thống này không tồn tại được lâu, việc nghiên cứu của
Scott chấm dứt vào năm 1973 [21]. Cũng trong khoảng thời gian này, một dự án
khác về xây dựng hệ thống dịch tự động từ tiếng Anh ra tiếng Việt đã được tiến
hành vào đầu thập niên 1970 tại Tập đoàn viễn thông Xyzyx, California. Ban
đầu, hệ thống này được xây dựng để dịch văn bản Anh - Pháp về vũ trụ học trên
máy IBM 360 theo nguyên tắc hoạt động tương tự như của hệ thống Logos.
Cho đến nay, hệ dịch máy Anh-Việt được sử dụng rộng rãi tại Việt nam đầu
tiên là EVTRAN – 1997, và sau đó EVTRAN 2.0, 1999 với hơn 200.000 từ và
cụm từ. Từ năm 2006, bản EVTRAN 3.0 (được gọi là Ev-Shuttle) biên dịch văn
bản hai chiều Anh-Việt và Việt-Anh (với hơn 500.000 mục từ vựng).
1.3 Phân loại các tiếp cận dịch máy
Hình 1. Các phương pháp tiếp cận dịch máy
12
Các phương pháp tiếp cận dịch máy có thể được chia thành 3 lớp chính sau:
dịch trực tiếp, dịch chuyển đổi và dịch liên ngữ [30].
1.3.1 Dịch trực tiếp
Phương pháp này thực hiện dịch từng từ trong văn bản nguồn thành từ trong
ngôn ngữ đích rồi ghép lại theo đúng thứ tự của các từ trong văn bản nguồn.
Phương pháp này rất đơn giản song hiệu quả không cao. Cấu trúc này được áp
dụng vào nhưng năm đầu của lịch sử dịch máy và đạt được thành công trong ngữ
cảnh hẹp.
1.3.2 Dịch chuyển đổi
Có hai phương pháp đó là chuyển đổi cú pháp và chuyển đổi ngữ nghĩa.
Cấu trúc này có độ chính xác tốt hơn cấu trúc dịch trực tiếp, song phải tốn nhiều
công sức trong việc tiến hành chuyển đổi tri thức ngôn ngữ cho từng cặp ngôn
ngữ.
1.3.3 Dịch liên ngữ
Hình 2. Dịch liên ngữ
Dịch liên ngữ là một phương pháp cổ điển của dịch máy. Trong phương
pháp này, văn bản nguồn cần được dịch sẽ được chuyển đổi sang một ngôn ngữ
quốc tế (là một ngôn ngữ trừu tượng). Sau đó, văn bản ngôn ngữ đích sẽ được
sinh ra từ văn bản ngôn ngữ quốc tế này. Ưu điểm của phương pháp này là, trong
dịch máy đa ngôn ngữ, ta không cần phải tạo ra các thành phần chuyển đổi cho
mỗi cặp ngôn ngữ (xem hình vẽ 2). Tuy nhiên, nhược điểm của của nó là khó
đưa ra được định nghĩa ngôn ngữ quốc tế là gì? Với phạm vi lớn, điều này không
thể thực hiện được. Do đó, ngữ cảnh lý tưởng cho dịch máy liên ngữ là miền
nghiên cứu là một miền hẹp và cụ thể.
1.4 Dịch máy thống kê
Dịch máy thống kê là một trong hai phương pháp nằm trong hướng tiếp cận
dựa trên ngữ liệu (corpus-based).Trong dịch máy thống kê, thay vì xây dựng các
từ điển, quy luật chuyển đổi bằng tay, hệ dịch tự động xây dựng các từ điển, quy
luật dựa trên kết quả thống kê có được từ kho ngữ liệu. Vì thế, dịch máy thống
kê có tính khả chuyển cao và có thể áp dụng cho bất kỳ cặp ngôn ngữ nào. Đây
13
là hướng tiếp cận được đánh giá cao và đã thu được những kết quả ấn tượng.
Trong phần sau, chúng tôi sẽ giới thiệu kỹ hơn về phương pháp tiếp cận này.
1.5 Khó khăn trong dịch máy
Khó khăn của việc thiết kế chương trình dịch tự động là làm sao khử nhập
nhằng hiệu quả. Nhập nhằng, đây là khái niệm chỉ tính không rõ ràng của ngôn
ngữ. Nhập nhằng có thể là do hiện tượng đồng âm gây ra, nhập nhằng từ loại,
hoặc nhập nhằng từ đa nghĩa…
1.5.1 Nhập nhằng từ đồng âm
Ví dụ ta cần dịch từ “đường kính”, nếu không có ngữ cảnh của từ này thì ta
không thể biết đây là một chất có vị ngọt dùng để pha đồ uống hay là đoạn thẳng
đi qua tâm và nối 2 điểm của một hình cầu, hoặc mặt cầu.
1.5.2 Nhập nhằng từ loại
Một từ có thể có nhiều chức năng ngữ pháp và với mỗi chức năng ngữ pháp
nó có một nghĩa khác nhau. Vấn đề này là thường gặp trong ngôn ngữ tự nhiên.
Ví dụ từ “concrete”, nếu từ loại là tính từ thì nó có nghĩa là “cụ thể”, nhưng nếu
từ loại là danh từ thì nó lại có nghĩa là “bê tông”.
1.5.3 Nhập nhằng cú pháp
Trong ngôn ngữ tự nhiên, một câu có thể có nhiều cây cú pháp khác nhau.
Do đó có thể đươc hiểu theo nhiều nghĩa khác nhau. Ví dụ : “I saw a man with a
telescope”. Một cây cú pháp cho câu này là:
Hình 1. Cây cú pháp thứ nhất
Từ cây cú pháp này, có thể hiểu ý nghĩa câu trên là tác giả nhìn thấy một người
đàn ông mà người ấy có một cái ống nhòm. Một cây cú pháp khác là:
14
Hình 2. Cây cú pháp thứ hai
Với cây cú pháp này, câu trên được hiểu là tác giả nhìn người đàn ông đó qua
ống nhòm[19].
1.5.4 Nhập nhằng tham chiếu
“John took the fruit from the table, then he cleaned it”
Ở đây ta chưa xác định được “it” tham chiếu đến “fruit” hay là “table”.
1.5.5 Nhập nhằng phân đoạn
Loại nhập nhằng này chỉ tồn tại trong ngôn ngữ loại đơn lập. Đây cũng là
một vấn đề mà hệ dịch Việt – Anh gặp phải. Không giống như tiếng Anh (và
nhiều ngôn ngữ khác) mỗi từ mang trọn vẹn một nghĩa và được xác định ranh
giới qua khoảng trắng, trong ngôn ngữ đơn lập, một từ có thể được ghép từ nhiều
từ đơn.
Ví dụ: Ông già đi nhanh quá.
Ở đây ta chưa xác định được ý của tác giả muốn nói người đàn ông kia già
đi nhanh (“ông” là chủ ngữ, “già đi nhanh quá” là vị ngữ) hay tác giả muốn nói
tới một “ông già” nào đó mà “đi nhanh” hơn bình thường (“ông già” là chủ ngữ,
“đi nhanh quá” là vị ngữ). Với những câu nhập nhằng như thế này, cũng sẽ có
hai cây cú pháp tương ứng.
1.5.6 Cấu trúc ngữ pháp phức tạp
Ngôn ngữ tự nhiêu có nhiều cấu trúc ngữ pháp rất phức tạp, điển hình như
cấu trúc đệ quy, ta có thể xây dựng được một câu rất dài. Ví dụ với luật (trong
tiếng Anh): N -> adj N, ta có thể sinh ra một danh từ rất dài: small light brown
skinny dog.
1.5.7 Lượng từ vựng nhiều
Tiếng Anh có khoảng 500.000 từ thông dụng và 300.000 thuật ngữ khoa
học, việc đưa dữ liệu này vào máy tính như thế nào và xử lý chúng cũng là một
khó khăn mà dịch máy phải giải quyết.
1.5.8 Không đồng nhất giữa ngôn ngữ
- Không tương đồng về từ vựng: tiếng Anh và tiếng Việt khác nhau về ngôi và
cách xưng hô. Trong tiếng Anh, ta chỉ sử dụng một đại từ “I” thì trong tiếng Việt,
15
ta lại sử dụng “tôi, tao, tớ, anh, chị, bố, mẹ,…” tùy vào văn cảnh và vị trí người
nói.
- Không tương đồng về văn hóa: thành ngữ trong 2 ngôn ngữ được diễn đạt khác
nhau.
- Ngoài ra, còn có sự khác nhau về quy ước. Ví dụ: trong tiếng Anh, khi ta hỏi
o Is she not a widow? (bà ta không phải là góa phụ à?)
o No. (ý nói bà ta không phải là một góa phụ)
Khi dịch sang tiếng Việt, câu trả lời như trên phải được dịch là “Vâng”, ý
nói bà ta không phải là góa phụ. Nếu ta dịch như bình thường, “No” thành
“Không” thì người nghe có thể hiểu là bà ta là một góa phụ.
16
Chương II:
PHƯƠNG PHÁP DỊCH MÁY THỐNG KÊ
Chương trước đã giới thiệu cho chúng ta một cái nhìn tổng quan về dịch
máy và những khó khăn trong dịch máy. Trong chương này, chúng ta sẽ đi sâu
về một phương pháp tiếp cận của dịch máy, đó chính là hướng tiếp cận thống kê.
2.1 Giới thiệu tổng quan
Dịch máy dựa trên phương pháp thống kê đang là một hướng phát triển đầy
tiềm năng bởi những ưu điểm vượt trội so với các phương pháp khác. Thay vì
xây dựng các từ điển, các quy luật chuyển đổi bằng tay, hệ dịch này tự động xây
dựng các từ điển, các quy luật dựa trên kết quả thống kê có được từ các kho ngữ
liệu. Chính vì vậy, dịch máy dựa vào thống kê có tính khả chuyển cao và áp dụng
được cho bất kỳ cặp ngôn ngữ nào.
Dịch máy dựa trên phương pháp thống kê sẽ tìm câu ngôn ngữ đích e phù
hợp nhất (có xác suất cao nhất) khi cho trước câu ngôn ngữ nguồn f.
Một hệ dịch máy dựa trên phương pháp thống kê có thể được mô hình hoá
như sau:
Hình 3. Mô hình hệ dịch máy dựa trên phương pháp thống kê
Dịch máy thống kê lần đầu tiên được đề cập trong bài báo “A Statistical
Approach to Machine Translation”, 1990 của Peter Brown với phương pháp sử
dụng là mô hình Kênh nhiễu (Noisy Channel Model).
Mô hình Kênh nhiễu được Brown áp dụng trong bài toán dịch máy như sau:
17
Cho câu tiếng Pháp f
1
j
= f
1
…f
j
…f
J
cần dịch sang câu
tiếng Anh e
1
i
= e
1
…e
i
…e
I
, Brown đề xuất mô hình kênh nhiễu với e
là đầu vào bộ mã hoá (Encoder), qua kênh nhiễu e được chuyển hoá thành f
và sau đó, f được gửi đến bộ giải mã (Decoder). Như vậy, trong các câu
tiếng Anh, ta chọn câu sao cho xác suất hậu nghiệm Pr(e
1
i
, f
1
j
) là lớn
nhất, theo luật quyết định Bayes :
Như vậy, ta có thể xây dựng mô hình chung của hệ dịch máy bằng phương
pháp thống kê thông qua hình ảnh kênh nhiễu:
Hình 4. Mô hình kênh nhiễu
Mô hình ngôn ngữ thường được giải quyết bằng mô hình n-gram. Pha giải
mã thường được giải quyết bằng các thuật toán Search như Viterbi Beam, A*
stack, Graph Model.
Trong mô hình dịch, vấn đề trọng tâm của việc mô hình hoá xác suất dịch
Pr(f
1
j
|e
1
i
) là việc định nghĩa sự tương ứng giữa các từ của câu nguồn với các từ
của câu đích. Mô hình thực hiện việc đó gọi là mô hình dóng hàng từ (alignment
model). Brown đã đưa ra năm mô hình dóng hàng từ khác nhau từ IBM1 đến
IBM5 . Sau đó, một loạt các nghiên cứu với nhiều cách tiếp cận khác nhau ra đời
phù hợp với đặc điểm của các ngôn ngữ khác nhau.
Phương pháp dịch máy thống kê truyền thống là dựa trên đơn vị từ (word-
based). Trong phương pháp dịch word-based, đơn vị được dịch là các từ. Số từ
trong câu được dịch là khác nhau, phụ thuộc vào các từ ghép, hình thái từ và
thành ngữ. Tham số độ dài của chuỗi từ trong ngôn ngữ đích gọi là độ hỗn loạn
(“fertility”) [6], tức là số từ của ngôn ngữ đích mà được sinh ra từ một từ của
ngôn ngữ nguồn trong một dóng hàng từ. Tham số này có thể là 0, 1 hoặc nhiểu ;
tương ứng với một từ trong ngôn ngữ nguồn có liên kết tới 0, 1, nhiều từ trong
ngôn ngữ đích [24].
Tuy nhiên, tuỳ vào đặc điểm của ngôn ngữ, như cặp ngôn ngữ Anh-Việt và
nhiều cặp ngôn ngữ khác như Anh-Trung, Anh-Nhật, , hệ dịch phải đối mặt với
khó khăn trong quá trình sắp xếp trật tự của các từ tiếng Anh tương ứng khi dịch
sang câu tiếng Việt. Trong quá trình dịch, kết nối từ tiếng Anh tương ứng với từ
tiếng Việt có thể là 1-1, 1-không, 1-nhiều, nhiều-1 hoặc nhiều-nhiều. Mô hình
dịch dựa trên đơn vị từ không cho kết quả tốt trong trường hợp kết nối nhiều-1
18
hoặc nhiều-nhiều với trật tự các từ trong câu tương ứng là khác nhau. Khi đó,
phân tích dựa trên đơn vị cụm từ (phrase-based ) được đề xuất để giải quyết vấn
đề này.
Ở đây, khái niệm cụm từ (phrase) không theo định nghĩa của ngôn ngữ học
mà các cụm từ này được sinh ra dựa vào các phương pháp thống kê
áp dụng trên ngữ liệu học. Trong [1], Koehn mô tả một cách khái quát quá
trình dịch thống kê dựa trên cụm từ như sau:
♦ Câu nguồn được tách thành các cụm từ
♦ Mỗi cụm từ được dịch sang ngôn ngữ đích
♦ Các cụm từ đã dịch được sắp xếp theo một thứ từ phù hợp
Phương pháp dịch máy thống kê dựa trên đơn vị cụm từ là phương pháp
mới được phát triển, có một số mô hình đã được xây dựng và chất lượng được
đánh giá là khá cao khi áp dụng cho các cặp ngôn ngữ như Anh-Trung, Anh-
Arab, [2]. Tuy chất lượng có tốt hơn mô hình dịch thống kê dựa trên đơn vị từ,
mô hình dịch thống kê dựa trên cụm từ vẫn chưa giải quyết được một số vấn đề
như ngữ pháp, khả năng lựa chọn cụm từ với tính chính xác cao, dịch tên, lượng
từ vựng có hạn và việc chuyển đổi cú pháp [3].
Hiện nay, rất nhiều cách tiếp cận khác ra đời nhằm cải thiện chất lượng của
hệ dịch, tích hợp thêm các thông tin ngôn ngữ như tiến hành tiền xử lý, sử dụng
các thông tin về ngữ pháp để chuyển đổi câu ngôn ngữ nguồn e về một dạng e’
gần với ngôn ngữ đích trước khi thực hiện việc gióng hàng từ (thực hiện chuyển
đổi trật tự từ).
2.2 Mô hình ngôn ngữ
2.2.1 Mô hình n-gram
Một chuỗi ký tự có thể được cắt thành các chuỗi con nhỏ hơn gồm n từ. Các
chuỗi con n từ như vậy được gọi là n-gram. Có một số loại n-gram phổ biến như
unigram (n = 1), bigram (n = 2), trigram (n = 3). Nếu một chuỗi từ mà có nhiều
n-gram hợp lệ thì có thể kết luận là chuỗi từ đó là hợp lệ. Ký hiệu p(y|x) là xác
suất mà từ y theo sau từ x. Chúng ta có thể ước lượng xác suất này dựa vào thống
kê trên kho ngữ liệu đơn ngữ.
Xác suất có điều kiện bigram là thương số của phép chia số lần xuất hiện
cụm “xy” cho số lần xuất hiện từ “x” trong kho ngữ liệu.
P(y|x) =
Tương tự như vậy cho trigram:
P(z|xy) =
2.2.2 Mô hình ngôn ngữ
19
Mô hình ngôn ngữ là quá trình tính xác suất p(e) của ngôn ngữ đích nhằm
tính ra chuỗi câu đích có xác suất phù hợp nhất. Để tìm ra chuỗi câu đích có xác
suất phù hợp nhất, ta tính xác suất cho các câu ứng viên. Gán xác suất cho một
câu, ta nhân các xác suất điều kiện n-gram tương ứng trong câu đó. Câu phù hợp
là câu có tỉ lệ các n-gram phù hợp là cao nhất.
Ví dụ, trong mô hình ngôn ngữ bigram, xác suất của câu “I saw the red
house” được tính bằng :
P(I, saw, the, red, house) = p(I|<s>)*p(the|saw)*p(red|the)*p(house|red).
Tương tự như vậy, trong mô hình ngôn ngữ trigram, xác suất của câu trên
được tính như sau:
P(I, saw, the, red, house) =
p(I|<s>,<s>)*p(saw|<s>,I)*p(the|I,saw)*p(red|saw,the)*p(house|the,red)
Mô hình ngôn ngữ có ý nghĩa quan trọng trong việc xác định câu dịch đúng.
Ví dụ, dựa vào mô hình ngôn ngữ ta có thể dễ dàng xác định được rằng câu “I
saw the red house” là tốt hơn câu “I saw the house red”.
2.2.3 Làm mịn (smoothing)
Mô hình n-gram có thể gán xác suất bằng 0 cho một câu mà trong câu này
có chứa n-gram chưa xuất hiện trong ngữ liệu huấn luyện. Nếu trong ngữ liệu
huấn luyện, “z” chưa bao giờ xuất hiện sau “xy” nhưng đã xuất hiện sau “y” thì
cụm từ “xyz” có thể là hợp lệ. Ví dụ, trong ngữ liệu huấn luyện có thể chưa có
cụm “the red house” nhưng đã có cụm “the house”. Trong nhiều trường hợp, ngữ
liệu huấn luyện có thể không bao quát hết các trường hợp, do đó phải có kỹ thuật
làm mịn để giải quyết vấn đề này. Có nhiều kỹ thuật làm mịn khác nhau đã được
đưa ra như ước lượng hợp lý cực đại (Maximum Likelihood Estimate - MLE)
thông qua Good-Turing Estimation, Nội suy tuyến tính ( Linear Interpolation ),
Adding 1, Backoff Models [30]. Một ví dụ với phương pháp nội suy tuyến tính là
khi tính xác suất của n-gram ta có thể sử dụng công thức sau:
p(z|xy) = λ
1
+ λ
2
+ λ
3
+ λ
4
Hay đơn giản là sử dụng phương pháp Adding 1:
p(z|xy) =
Trong đó, |V| là độ lớn của tập từ vựng.
2.3 Mô hình dịch
Trong khi mô hình ngôn ngữ bảo đảm cho câu đích được dịch trôi chảy thì
mô hình dịch đảm bảo cho việc câu đích được dịch tương ứng với câu nguồn.
Trong mô hình dịch, vấn đề trọng tâm của việc mô hình hóa xác suất dịch p(e|f)
là việc định nghĩa sự tương ứng giữa các từ của câu nguồn với các từ của câu
đích. Mỗi tương đương được gọi là một liên kết. Mô hình thực hiện việc xác định
20
liên kết giữa các từ của câu đích với các từ của câu nguồn là mô hình dóng hàng
từ.
Kết nối trong mô hình dóng hàng từ có thể là 1 – 1 (một từ của câu nguồn
tương ứng với một từ trong câu đích) , 1 – nhiều (một từ tương ứng với nhiều từ),
hay nhiều - nhiều (nhiều từ tương ứng với nhiều từ).
Hình 5. Một từ tiếng Việt tương ứng với 1 hoặc nhiều từ tiếng Anh (1 - n)
Hình 6. Một hoặc nhiều từ tiếng Việt tương ứng với một từ tiếng Anh (n - 1)
21
Hình 7. Nhiều từ tiếng Việt tương ứng với nhiều từ tiếng Anh (n – n)
Trong dịch thống kê, xác suất dịch P(ƒ|e) biểu diễn mối quan hệ giữa câu
trong ngôn ngữ nguồn ƒ với câu trong ngôn ngữ đích e. Có nhiều cách dịch một
câu trong ngôn ngữ nguồn sang một câu trong ngôn ngữ đích. Với mỗi dóng
hàng tương ứng cho ta một cách dịch. Do đó, ta có công thức mối quan hệ giữa
mô hình dóng hàng từ và mô hình dịch:
P(ƒ|e) = Σ
a
p(ƒ,a|e)
Trong đó a là một dóng hàng từ của cặp (ƒ,e).
Sau này chúng ta sẽ thực hiện nghiên cứu trên hệ dịch máy thống kê dựa vào
cụm từ (phrase-based SMT), nên sau đây chúng tôi sẽ giới thiệu về mô hình dịch
này [30].
2.4 Mô hình chuyển đổi trật tự từ (reordering model)
Hiệu quả của mô hình dịch máy thống kê sẽ không cao nếu như ta dựa hoàn
toàn vào xác suất mà không quan tâm đến đặc điểm về ngôn ngữ học cũng như
những điểm giống và khác nhau của các cặp ngôn ngữ dịch. Trong đó, sự khác
nhau về trật tự từ giữa hai ngôn ngữ ảnh hưởng rất nhiều đến chất lượng dịch
máy.
Mục đích của việc chuyển đổi trật tự từ là làm cho trật tự từ của câu nguồn
càng gần với trật tự từ của câu đích càng tốt. Việc chuyển đổi này sẽ giúp làm
giảm các dóng hàng chéo, hay nói cách khác là làm phẳng các dóng hàng giữa
hai câu nguồn và câu đích. Ví dụ dưới đây cho ta thấy, trước khi chuyển đổi trật
tự từ, hầu hết các dóng hàng đều là chéo, sau khi chuyển đổi, tất cả các dóng
hàng chéo đều được làm phẳng. Đối với dịch máy thống kê, càng có ít dóng hàng
chéo thì hệ dịch càng cho kết quả tốt. Vì lúc này, bộ giải mã của nó có thể dịch
các từ tương ứng từ ngôn ngữ nguồn sang ngôn ngữ đích mà không cần phải
quan tâm đến vấn đề trật tự từ. Đây là một lý do mà bài toán chuyển đổi trật tự từ
cũng đang được quan tâm khá nhiều.
22
Hình 8. Trước khi chuyển đổi.
Hình 9. Sau khi chuyển đổi
Dóng hàng từ trước và sau khi chuyển đổi trật tự từ câu tiếng Anh
Sau khi chuyển đổi, các dóng hàng từ giảm đáng kể.
Hiện tại, có hai hướng tiếp cận chính trong bài toán chuyển đổi trật tự từ
trong dịch máy thống kê:
- Chuyển đổi trật tự từ của câu ngôn ngữ nguồn, hay còn gọi là tiền xử lý
(preprocessing).
- Chuyển đổi trật tự từ của câu ngôn ngữ đích, hay còn gọi là hậu xử lý (post-
processing).
Trên đây là các thuộc tính của mô hình dịch thống kê áp dụng công thức
Bayes. Tuy nhiên, trên thực tế lại có nhiều hơn các thành phần tác động tới quá
trình dịch và trọng số tác động của các thành phần này cũng là khác nhau, vì vậy
mô hình dịch thống kê áp dụng Bayes là không linh hoạt. Sau đây, chúng tôi sẽ
giới thiệu một mô hình tổng quát hơn, linh hoạt hơn, đó là mô hình log-linear
dành cho dịch máy thống kê.
23
Chương III:
CÁC THÀNH PHẦN TRONG MỘT HỆ DỊCH MÁY THỐNG KÊ
ANH – VIỆT DỰA TRÊN ĐƠN VỊ CỤM TỪ
Chương này sẽ giới thiệu về mô hình log-linear và ứng dụng của nó trong
bài toán dịch máy thống kê dựa trên đơn vị cụm từ.
3.1 Mô hình log-linear áp dụng cho bài toán dịch máy
Ở chương II, chúng ta đã biết đến hệ dịch thống kê dựa trên đơn vị cụm từ
áp dụng công thức Bayes, hệ dịch thống kê này bao gồm 3 mô hình thành phần
chính:
- Bảng xác suất dịch cụm từ (mô hình dịch - translation model)
- Mô hình sắp xếp trật tự từ (word reordering)
- Mô hình ngôn ngữ. (language model)
Trên thực tế, có nhiều yếu tố tác động trực tiếp tới quá trình dịch và mỗi
thành phần lại tác động dưới những trọng số khác nhau tới kết quả dịch. Chính vì
vậy, cách tính trực tiếp mô hình dịch sử dụng mô hình log-linear đã được đề xuất
bởi Och và Ney [4]. Mô hình log-linear được mô hình dưới công thức tổng quát
sau:
i
h
i
(x)
Với trọng số λ và hàm đặc trưng h(x)
Trong mô hình log-linear áp dụng cho bài toán dịch máy, mỗi điểm dữ liệu
(ở đây là việc dịch một câu) như là một vec-tơ. Và một mô hình là một tập các
vec-tơ đặc trưng tương ứng. Các hàm đặc trưng được huấn luyện độc lập và được
kết hợp với giả định rằng chúng là độc lập với nhau. Như vậy, mô hình log-linear
được sử dụng trong quá trình dịch có nhiều ý nghĩa khác nhau. Thứ nhất là việc
đánh trọng số các thành phần khác nhau là rất linh hoạt và có thể áp dụng mỗi
tập trọng số khác nhau cho các cặp ngôn ngữ khác nhau, tối ưu nhất cho từng
cặp. Thứ hai là cấu trúc này cho phép chúng ta có thể thêm các thành phần thông
tin hữu ích khác vào mô hình dịch dưới dạng các hàm thuộc tính tương tự như
thuộc tính mô hình dịch, mô hình ngôn ngữ, mô hình trật tự từ…
Khi đó, bài toán dịch máy thống kê sẽ trở thành bài toán tìm kiếm:
v
best
= argmax
v
{p(v|e)}
= argmax
v
{
i
h
i
(x) }
24
Mô hình log-linear được mô hình hóa như sau:
Hình 10. Mô hình log-linear
Trong mô hình log-linear áp dụng cho dịch máy thống kê, mô hình ngôn
ngữ và mô hình dịch vẫn là 2 thành phần đặc trưng cơ bản nhất. Ngoài ra, một số
đặc trưng hữu ích khác giúp cho quá trình dịch máy thống kê dựa trên đơn vị
cụm từ là mô hình trật tự từ, trọng số dịch từ vựng, hàm phạt từ… Sau khi tích
hợp, WSD cũng là một thành phần trong mô hình log-linear.
Ta có thể thấy mô hình dịch thống kê áp dụng công thức Bayes là trường
hợp riêng của mô hình log-linear khi ta sử dụng hai hàm đặc trưng:
h
1
= log(p(e|v)), λ
1
= 1
h
2
= log(p(v)), λ
2
= 1
Khi đó:
v
best
= argmax
v
{p(v|e)}
= argmax
v
{e
1*log(p(e|v))+1*log(p(v))
} = argmax
v
{p(e|v)*p(v)}
3.2 Các đặc trưng khác sử dụng trong mô hình dịch dựa vào cụm từ
Ngoài 3 thành phần chính như trong hệ dịch thống kê (đã được giới thiệu ở
trên) thì mô hình dịch dựa vào cụm từ còn sử dụng một số đặc trưng khác như
hàm phạt từ và xác suất dịch theo 2 hướng.
25