ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
_¯_
DƯƠNG THỊ PHƯƠNG MAI
LIÊN KẾT TỪ TỰ ĐỘNG
CHO MỤC ĐÍCH HỖ TRỢ HỌC TIẾNG ANH
LUẬN VĂN THẠC SĨ
NGÀNH KHOA HỌC MÁY TÍNH
Mã số: 60.48.01.01
TP HỒ CHÍ MINH - 2017
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
_¯_
DƯƠNG THỊ PHƯƠNG MAI
LIÊN KẾT TỪ TỰ ĐỘNG
CHO MỤC ĐÍCH HỖ TRỢ HỌC TIẾNG ANH
LUẬN VĂN THẠC SĨ
NGÀNH KHOA HỌC MÁY TÍNH
Mã số: 60.48.01.01
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS. NGUYỄN LƯU THUỲ NGÂN
TP HỒ CHÍ MINH – 2017
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả nêu
trong Luận văn là trung thực và chưa từng được công bố trong bất kỳ công trình nào
khác.
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này đã được cảm
ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc.
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
KHOÁ LUẬN TỐT NGHIỆP
THẠC SĨ KHOA HỌC MÁY TÍNH
LIÊN KẾT TỪ TỰ ĐỘNG CHO
MỤC ĐÍCH HỖ TRỢ HỌC
TIẾNG ANH
GIẢNG VIÊN HƯỚNG DẪN:
TS. NGUYỄN LƯU THUỲ NGÂN
SINH VIÊN THỰC HIỆN:
DƯƠNG THỊ PHƯƠNG MAI
11, 2016
LỜI CÁM ƠN
Tôi xin chân thành cám ơn gia đình và bạn bè đã hỗ trợ và động viên
tôi rất nhiều trong thời gian thực hiện luận văn. Đặc biệt, tôi xin gửi
lời cảm ơn chân thành nhất đến tiến sĩ Nguyễn Lưu Thùy Ngân và
tiến sĩ Nghiêm Quốc Minh đã tận tình hướng dẫn và giúp đỡ tôi hoàn
thành luận văn này.
TÓM TẮT
Tiếng Anh đóng vai trò quan trọng trong giao tiếp quốc tế, tuy nhiên
soạn thảo văn bản tiếng Anh một cách chuyên nghiệp là một công
việc không hề dễ dàng với những người không sử dụng tiếng Anh như
tiếng mẹ đẻ hoặc ngôn ngữ thứ hai, đặc biệt là viết văn bản khoa học.
Nhu cầu có một hệ thống để hỗ trợ viết và học tiếng Anh là rất lớn.
Xây dựng hệ thống học tiếng Anh bao gồm nhiều bước: xây dựng ngữ
liệu chuẩn để phục vụ nghiên cứu, nghiên cứu kỹ thuật phân tích lỗi
tự động, nghiên cứu kỹ thuật phát hiện lỗi văn phong, lỗi chính tả,
lỗi ngữ pháp..., xây dựng hệ thống hỗ trợ học tiếng Anh. Luận văn
này tập trung nghiên cứu bước xây dựng ngữ liệu và phân tích, phân
loại lỗi, một trong những bước quan trọng làm tiền đề cho việc phát
triển toàn bộ hệ thống.
Mục lục
Mục lục
3
Danh sách hình vẽ
6
1 TỔNG QUAN
1.1 Giới thiệu bài toán . . . . . . . . . . . . . .
1.2 Mục tiêu, đối tượng và phạm vi nghiên cứu .
1.2.1 Mục tiêu . . . . . . . . . . . . . . . .
1.2.2 Đối tượng . . . . . . . . . . . . . . .
1.2.3 Phạm vi nghiên cứu . . . . . . . . .
1.3 Ý nghĩa . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
7
7
8
8
9
9
9
.
.
.
.
.
.
.
.
.
.
.
.
11
11
12
12
13
14
15
16
16
16
16
17
17
2 CƠ SỞ LÝ THUYẾT
2.1 Tình hình nghiên cứu . . . . . . . .
2.2 METEOR . . . . . . . . . . . . . .
2.2.1 Giới thiệu . . . . . . . . . .
2.2.2 Liên kết từ trong Meteor . .
2.2.3 Chuẩn hoá ngữ liệu . . . . .
2.2.4 Xây dựng bảng Paraphrase .
2.2.5 Nhận xét . . . . . . . . . .
2.3 MANLI . . . . . . . . . . . . . . .
2.3.1 Giới thiệu . . . . . . . . . .
2.3.2 Kiến trúc hệ thống MANLI
2.3.3 Nhận xét . . . . . . . . . .
2.4 GIZA++ . . . . . . . . . . . . . . .
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
MỤC LỤC
2.5
2.6
2.7
2.8
2.4.1 Giới thiệu . . . . . . . . . . . . . . .
2.4.2 GIZA++ refined . . . . . . . . . . .
2.4.3 Nhận xét . . . . . . . . . . . . . . .
Nhận diện lỗi tiếng Anh của Huichao Xue và
2.5.1 Giới thiệu . . . . . . . . . . . . . . .
2.5.2 Phương pháp . . . . . . . . . . . . .
2.5.3 Nhận xét . . . . . . . . . . . . . . .
Support Vector Machine . . . . . . . . . . .
2.6.1 Giới thiệu . . . . . . . . . . . . . . .
2.6.2 Nhận xét . . . . . . . . . . . . . . .
Naive Bayes . . . . . . . . . . . . . . . . . .
2.7.1 Giới thiệu . . . . . . . . . . . . . . .
2.7.2 Nhận xét . . . . . . . . . . . . . . .
Decision Tree . . . . . . . . . . . . . . . . .
2.8.1 Giới thiệu . . . . . . . . . . . . . . .
2.8.2 Nhận xét . . . . . . . . . . . . . . .
3 XÂY DỰNG NGỮ LIỆU
3.1 Ngữ liệu SWA . . . . . . .
3.2 Đề xuất bộ nhãn mới . . .
3.3 Xây dựng ngữ liệu SWA-2
3.4 Ngữ liệu NUCLE . . . . .
3.5 Ngữ liệu FCE . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4 PHƯƠNG PHÁP NHẬN DIỆN VÀ PHÂN
4.1 Kiến trúc hệ thống . . . . . . . . . . . . . .
4.2 Liên kết từ . . . . . . . . . . . . . . . . . . .
4.3 Phân lớp liên kết từ . . . . . . . . . . . . . .
5 THỬ NGHIỆM
5.1 Giới thiệu . . . . .
5.2 Liên kết từ tự động
5.2.1 Thiết kế thử
5.2.2 Thử nghiệm
. . . . .
. . . . .
nghiệm
. . . . .
.
.
.
.
.
.
.
.
4
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . .
. . . . .
. . . . .
Rebecca
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
17
17
18
18
18
18
22
22
22
22
23
23
23
23
23
24
.
.
.
.
.
25
25
27
31
31
31
LOẠI LỖI
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
36
36
37
37
.
.
.
.
39
39
40
40
40
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . .
. . .
. . .
Hwa
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
MỤC LỤC
5.3
5.4
5.5
5.2.3 Phân tích lỗi liên kết từ .
Phân lớp liên kết từ . . . . . . . .
5.3.1 Thiết kế thử nghiệm . . .
5.3.2 Kết quả thử nghiệm . . .
So sánh với METEOR . . . . . .
5.4.1 Thiết kế thử nghiệm . . .
5.4.2 Kết quả thử nghiệm . . .
Thử nghiệm trên bộ ngữ liệu khác
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
6.1 Những kết quả thu được . . . . . . . . . .
6.1.1 Ý nghĩa khoa học . . . . . . . . . .
6.1.2 Ý nghĩa thực tiễn . . . . . . . . . .
6.2 Hướng phát triển . . . . . . . . . . . . . .
Tài liệu tham khảo
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
43
43
44
45
45
45
47
.
.
.
.
50
50
50
51
51
52
5
Danh sách hình vẽ
2.1
2.2
2.3
2.4
2.5
Ví dụ về liên kết từ trong METEOR. E=Exact, S=Stem, P=Paraphrase 14
Ví dụ về nhận diện lỗi tiếng Anh . . . . . . . . . . . . . . . . . . 20
Ví dụ về nhập nhằng trong bước nhận diện những phép biến đổi
cơ bản . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Ví dụ về nhập nhằng trong bước tổng hợp những phép biến đổi cơ
bản . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Ví dụ về nhập nhằng trong bước tổng hợp những phép biến đổi cơ
bản . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1
3.2
3.3
Ví dụ về một cặp câu được gán nhãn lỗi trong ngữ liệu SWA. . .
Bộ nhãn được sử dụng trong ngữ liệu SWA . . . . . . . . . . . . .
Bộ nhãn đề xuất mới . . . . . . . . . . . . . . . . . . . . . . . . .
25
27
30
4.1
Cấu trúc tổng quan hệ thống . . . . . . . . . . . . . . . . . . . .
36
5.1
Ví dụ về nhóm lỗi (1): Các từ có liên quan không được liên kết với
nhau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ví dụ về nhóm lỗi (2): Các từ không liên quan được liên kết với
nhau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Liên kết từ trong NUCLE - Ví dụ 1 . . . . . . . . . . . . . . . . .
Liên kết từ trong NUCLE - Ví dụ 2 . . . . . . . . . . . . . . . . .
5.2
5.3
5.4
6
42
43
48
48
Chương 1
TỔNG QUAN
1.1
Giới thiệu bài toán
Tiếng Anh hiện nay đóng một vai trò quan trọng trong giao tiếp quốc tế, đây
cũng là một điều kiện quan trọng để tiếp cận, cập nhật các nguồn tri thức từ
khắp nơi trên thế giới. Trong hầu hết các hội nghị quốc tế ở tất cả các lĩnh vực,
tiếng Anh là ngôn ngữ bắt buộc trong việc viết bài báo khoa học và trình bày.
Tuy nhiên đối với người không bản xứ (non-native speakers) việc viết tiếng Anh
một cách mạch lạc luôn là một thách thức không nhỏ.
Một số chương trình máy tính hiện nay có thể hỗ trợ sửa lỗi chính tả và lỗi
ngữ pháp tự động (Microsoft Word), tuy nhiên vẫn chưa đáp ứng được nhu cầu
của người dùng chuyên nghiệp. Nguyên nhân là do những lỗi của người viết rất
đa dạng, trong khi máy tính chỉ có thể nhận diện được một phần nhỏ. Một số lỗi
máy tính chỉ ra không hẳn là lỗi mà có thể do người dùng sử dụng một từ mới,
không có trong từ điển mà phần mềm đó dùng. Ví dụ: requisitioner (người đặt
đơn hàng) bị phần mềm Microsoft Word đánh dấu là một từ lỗi.
Để tránh những lỗi như trên thì thường những bài viết trước khi gửi đi sẽ
qua một bước gọi là đọc sửa lỗi (proofread). Đây là một bước cần thiết để nâng
cao chất lượng cho bài viết, bước này được thực hiện bởi người bản xứ (native
speakers). Tuy nhiên, chi phí của việc đọc sửa lỗi thường rất cao, do đó nhu cầu
có chương trình hỗ trợ viết và sửa lỗi tiếng Anh một cách tự động là rất lớn. Xây
dựng chương trình này bao gồm nhiều bước: xây dựng ngữ liệu chuẩn để phục
7
vụ nghiên cứu, nghiên cứu kỹ thuật phân tích lỗi tự động, nghiên cứu kỹ thuật
phát hiện lỗi văn phong, lỗi chính tả, lỗi ngữ pháp..., tích hợp và xây dựng toàn
bộ hệ thống.
Bước xây dựng ngữ liệu và phân tích, phân loại lỗi là bước quan trọng, và kết
quả của bước này có thể ảnh hưởng đến độ chính xác của toàn bộ chương trình.
Việc phân tích và phân loại lỗi có thể cung cấp những số liệu thống kê có ích cho
người viết, ví dụ: phân loại lỗi, các lỗi thường gặp, tỉ lệ các lỗi thường gặp... Để
làm được những số liệu thống kê như trên đòi hỏi phải có kĩ thuật so khớp giữa
văn bản gốc và văn bản đã sửa lỗi, từ đó phân loại và gán nhãn các điểm khác
biệt. Các bộ dữ liệu được liên kết và gán nhãn này nếu được xây dựng tốt sẽ giúp
cho việc phát triển các phương pháp mô hình hóa và tự động hóa các luật chỉnh
sửa lỗi cú pháp hoặc lỗi văn phong. Từ đó, các luật này sẽ được tích hợp vào hệ
thống hỗ trợ học tiếng Anh. Đồng thời, việc kết hợp sử dụng tập ngữ liệu chuẩn
và các kỹ thuật xử lý ngôn ngữ sẽ cho phép chúng ta đánh giá được mức độ hữu
ích của các luật chỉnh sửa trong thực tế.
Về việc so khớp hai văn bản, luận văn này sử dụng phương pháp liên kết từ
tự động, sau đó phân loại liên kết từ bằng các bộ phân lớp dựa trên máy học
thống kê. Bài toán có thể được phát biểu như sau:
• Input: hai văn bản
– Văn bản gốc được viết bởi người không bản xứ
– Văn bản được chỉnh sửa bởi chuyên gia là người bản xứ
• Output: hai văn bản đã được liên kết từ (word aligned) và phân lớp liên
kết từ (alignment classified)
1.2
1.2.1
Mục tiêu, đối tượng và phạm vi nghiên cứu
Mục tiêu
• Mục tiêu 1: Mục tiêu tổng quát của đề tài hướng đến việc xây dựng bộ ngữ
liệu để dùng trong việc nghiên cứu các phương pháp / kĩ thuật sửa lỗi tự
động hoặc hỗ trợ học tiếng Anh.
8
• Mục tiêu 2: Mục tiêu cụ thể là nghiên cứu phương pháp liên kết từ và phân
loại liên kết từ tự động trong ngữ cảnh hỗ trợ học tiếng Anh.
Việc nghiên cứu các phương pháp sửa lỗi tự động hoặc xây dựng hệ thống hỗ
trợ học tiếng Anh dựa trên thống kê đòi hỏi phải có bộ ngữ liệu được liên kết từ
đủ lớn. Những bộ ngữ liệu hiện đang có sẵn trên thế giới chưa đáp ứng đủ nhu
cầu nghiên cứu toàn diện cho mục đích sửa lỗi tự động cho các bài báo khoa học
hoặc hỗ trợ học tiếng Anh. Trong khi đó, do tốn nhiều chi phí nên bộ ngữ liệu
được liên kết bằng tay không đủ lớn, điều này đòi hỏi cần phải có phương pháp
liên kết và phân lớp từ tự động để có thể xây dựng một bộ ngữ liệu lớn phục vụ
được nhu cầu nghiên cứu.
1.2.2
Đối tượng
• Các công cụ liên kết từ và các phương pháp phân lớp bằng máy học
• Văn bản khoa học được viết bằng tiếng Anh, gồm hai bản: bản chưa chỉnh
sửa và bản được chỉnh sửa bằng tay bởi chuyên gia người bản xứ
1.2.3
Phạm vi nghiên cứu
Nội dung đề tài tập trung vào các bài báo khoa học được viết bằng tiếng Anh
trong hai lĩnh vực nghiên cứu là thị giác máy tính (computer vision) và xử lý
ngôn ngữ tự nhiên (natural language processing).
1.3
Ý nghĩa
Việc xây dựng được bộ ngữ liệu chuẩn để phục vụ nghiên cứu, ngoài việc sử dụng
trong ứng dụng hỗ trợ viết và học tiếng Anh, nó còn có thể được sử dụng trong
các ứng dụng sửa lỗi tự động và có thể dùng cho việc so sánh các công cụ này với
nhau. Hiện nay trên thế giới có một số ngữ liệu được xây dựng để phục vụ cho
nghiên cứu bắt lỗi ngữ pháp, chính tả như bộ ngữ liệu NUCLE, và NICT CLE.
Tuy nhiên chưa có bộ ngữ liệu cho các bài báo khoa học đáp ứng nhu cầu nghiên
cứu toàn diện các kỹ thuật hỗ trợ cho việc học tiếng Anh.
9
Về bài toán liên kết từ, có khá nhiều các nghiên cứu và công cụ có sẵn, tuy
nhiên dành cho mục đích xây dựng hệ thống hỗ trợ học tiếng Anh thì đây còn là
một vấn đề khá mới. Hơn nữa, việc nghiên cứu, tổng hợp và phân tích các phương
pháp phần nào sẽ giúp hệ thống hóa các phương pháp liên kết từ hiện có.
Kết quả của đề tài này sẽ giúp xây dựng được bộ dữ liệu tốt phục vụ nghiên
cứu trên những ứng dụng như sửa lỗi tự động, hỗ trợ viết và học tiếng Anh.
10
Chương 2
CƠ SỞ LÝ THUYẾT
2.1
Tình hình nghiên cứu
Một số chương trình đã được xây dựng để hỗ trợ người không bản xứ viết tiếng
Anh, ví dụ như trong các bài báo [1], [2], [3]. Các hướng giải quyết được đề xuất
là: xây dựng công cụ hỗ trợ người viết truy vấn cụm từ thích hợp (collocation,
language expression) hoặc gợi ý cụm từ thích hợp dựa trên mô hình ngôn ngữ
n-gram (NETSPEAK, [1]), hoặc dựa trên việc trích xuất co-occurrence và xếp
hạng theo T-scores (SAW, [3]). Một số kĩ thuật khác cũng được tích hợp vào để
người dùng có thể mở rộng khả năng tìm kiếm hoặc giúp cho việc tìm kết quả
nhanh hơn. Ngoài ra, Milton và Cheng ([2]) còn xây dựng chương trình để kiểm
tra lỗi ngữ pháp cho người viết tiếng Anh như là ngôn ngữ nước ngoài (Check
My Word).
Về bài toán liên kết từ cho tiếng Anh, có khá nhiều công trình nghiên cứu về
vấn đề này. Có một số công cụ liên kết từ tự động đã được xây dựng và sử dụng
rộng rãi như GIZA++ ([4]), Berkeley Aligner ([5]). Tuy nhiên, tùy theo loại ứng
dụng cụ thể muốn xây dựng mà bài toán liên kết từ có thể khác nhau ít hay
nhiều. Ví dụ, bài toán liên kết từ trong dịch máy thống kê có thể khác hoàn toàn
với bài toán liên kết từ sử dụng trong suy diễn ngôn ngữ tự nhiên (NLI - natural
language inference).
Liên quan đến bài toán liên kết từ trên dữ liệu đơn ngữ (monolingual alignment) có bài báo của Bouamor ([6]), tác giả sử dụng 3 kĩ thuật: liên kết từ dựa
11
trên máy học thống kê và không sử dụng kiến thức về ngôn ngữ học, liên kết từ
dựa trên ngữ nghĩa có sử dụng kiến thức ngôn ngữ học, và liên kết từ dựa trên
sự tương đồng về cấu trúc cú pháp. Bài báo của X.Yao và Durme (MANLI, [7])
sử dụng những kỹ thuật đơn giản như part-of-speech tags và từ điển WordNet
nhưng hiệu quả trong việc liên kết từ trên dữ liệu đơn ngữ, đặc biệt là hiệu suất
rất cao, thích hợp sử dụng cho khối lượng dữ liệu lớn. Ngoài ra, còn một số công
cụ được xây dựng với mục đích khác nhưng có tích hợp tính năng liên kết từ tự
động. Ví dụ METEOR ([8]) là một độ đo để đánh giá chất lượng các bản dịch
máy bằng cách liên kết bản dịch máy và bản dịch tham khảo, sau đó tính điểm
dựa trên các liên kết này.
Sau đây chúng tôi tóm tắt và phân tích một số phương pháp liên kết từ và
phân lớp liên kết từ được tham khảo đến trong luận văn.
2.2
METEOR
2.2.1
Giới thiệu
METEOR, viết tắt của Metric for Evaluation of Translation with Explicit ORdering,
là một công cụ được xây dựng như một độ đo để đánh giá chất lượng các bản
dịch máy.
Meteor đánh giá chất lượng bản dịch máy bằng cách liên kết các câu trong
bản dịch máy với bản dịch tham khảo (reference translation) do người dịch, sau
đó tính điểm tương đồng (lexical similarity score) giữa các câu trong hai bản dịch
này. Nếu có nhiều hơn một bản dịch tham khảo, điểm này sẽ được tính trên từng
bản dịch máy và bản dịch tham khảo, và điểm cao nhất sẽ được ghi nhận. Chất
lượng của toàn bộ bản dịch máy được tính dựa trên điểm của từng câu trong bản
dịch máy đó.
Như mô tả ở trên, việc đánh giá chất lượng bản dịch máy sẽ được thực hiện
qua hai bước: bước một là liên kết từ giữa bản dịch máy và bản dịch tham khảo,
bước hai là tính điểm tương đồng giữa hai bản dịch này dựa vào các liên kết từ ở
bước một. Với mục đích là nghiên cứu các phương pháp liên kết từ có liên quan,
luận văn này chỉ tập trung nghiên cứu bước một là bước liên kết từ giữa bản dịch
máy và bản dịch tham khảo.
12
Phần dưới sẽ trình bày phương pháp liên kết từ trong Meteor, riêng phần thử
nghiệm và đánh giá kết quả thử nghiệm đối với Meteor sẽ được trình bày trong
Chương 6.
2.2.2
Liên kết từ trong Meteor
Cho mỗi cặp dịch máy - dịch tham khảo, Meteor xây dựng các liên kết từ dựa
trên các loại so sánh tương đồng sau:
Exact: Các từ giữa hai văn bản được khớp (match) khi từ loại dạng đã chia
(surface form) là giống nhau.
Stem: Các từ được đưa về dạng nguyên mẫu (stem) bằng Snowball Stemmer
và khớp khi dạng nguyên mẫu của chúng giống nhau.
Synonym: Các từ được khớp nếu chúng cùng là từ đồng nghĩa của một bộ
từ đồng nghĩa dựa theo cơ sở dữ liệu WordNet.
Paraphrase: Các từ được khớp nếu chúng được liệt kê là paraphrase với nhau
trong bảng paraphrase. Bảng paraphrase này sẽ được mô tả rõ hơn ở phần sau.
Mỗi kiểu so sánh tương đồng như trên sẽ được cài đặt thành một bước khớp
từ (word matcher) trong Meteor, theo đúng thứ tự ở trên: Exact, Stem, Synonym
và cuối cùng là Paraphrase. Tại mỗi bước, Meteor sẽ xác định tất cả các từ có thể
khớp với nhau giữa hai bản dịch dựa trên những từ không khớp nhau từ những
bước trước. Sau đó, liên kết từ sẽ được xác định bằng cách tìm ra tập con lớn
nhất của các cặp từ mà thoả những tiêu chí như sau:
1. Mỗi từ trong từng câu có từ 0-1 matches
2. Số lượng từ được match trong cả hai câu là lớn nhất
3. Số lượng chunk là nhỏ nhất. Một chunk được định nghĩa là một dãy các
liên kết từ liên tiếp nhau và có thứ tự giống như nhau trong cả hai câu.
4. Tổng khoảng cách giữa các từ match với nhau trong hai câu là nhỏ nhất.
Nghĩa là nếu một từ/ngữ trong câu này có thể match với nhiều từ/ngữ
trong câu kia thì từ/ngữ nào xuất hiện tại vị trí gần với từ kia hơn sẽ ưu
tiên được chọn.
13
Ví dụ:
Câu dịch máy: "As we will describe below , we additionally use QuestionBank
in experiments ."
Câu dịch tham khảo: "As described below , we also used QuestionBank in the
experiments ."
Sau khi chạy Meteor để liên kết từ ta được kết quả như Hình 2.1, riêng từ we,
will và the không liên kết với từ nào khác và được xem là Unaligned. Lưu ý, câu
trong bản dịch máy có chứa 2 từ we, theo tiêu chí số 4 thì từ we thứ 2 (nằm ở
vị trí số 6) gần với vị trí của từ we trong câu dịch tham khảo hơn nên Meteor sẽ
liên kết hai từ này với nhau.
As we will describe below , we additionally use QuestionBank in experiments .
As described below , we also use QuestionBank in the experiments .
E
S
E
E E
P
E
E
E
E
E
Hình 2.1: Ví dụ về liên kết từ trong METEOR. E=Exact, S=Stem, P=Paraphrase
2.2.3
Chuẩn hoá ngữ liệu
Để tăng tính chính xác khi liên kết các từ giữa hai bản dịch với nhau, Meteor
có một bước chuẩn hoá ngữ liệu trước khi liên kết từ. Bước chuẩn hoá này làm
những việc như sau:
• Tách từ và đưa tất cả các từ về dạng chữ in thường (non-capitalized).
• Xoá các dấu gạch nối trong các từ nối.
Ví dụ: far-off → far off
• Xoá dấu chấm trong các từ viết tắt.
Ví dụ: U.N. → UN
Xem xét cụm từ "U.S.-based organization", khi chạy qua bước chuẩn
hoá ngữ liệu này sẽ thành "US based organization". Sau bước tiền xử
14
lý này, tất cả các cụm từ ở dưới sẽ khớp với nhau, do đó làm tăng độ
chính xác khi mà các câu trong hai bản dịch có phong cách viết khác nhau.
U.S.-based organization
U.S.based organization
US-based organization
US based organization
2.2.4
Xây dựng bảng Paraphrase
Trong phiên bản mới nhất của Meteor (Meteor Universal 2014), bảng paraphrase
được rút trích ra một cách tự động theo từng bước như sau:
Đầu tiên, rút trích các ngữ (phrase) ra từ ngữ liệu song ngữ và đưa vào bảng
ngữ (Koehn et al., 2003).
Sau đó, tương ứng với một ngữ (e1 ) của target language trong bảng trên, tìm
một ngữ f thuộc source language mà là bản dịch của e1 này. Mỗi ngữ e2 (e2 = e1 )
mà cùng là bản dịch của ngữ f thì được xem là paraphrase của e1 với xác suất
P (f |e1 ).P (e2 |f ). Xác suất e2 là paraphrase của e1 sẽ là:
P (e2 |e1 ) =
P (f |e1 ).P (e2 |f )
f
Để tăng độ chính xác cho việc rút trích paraphrase này, có nhiều kĩ thuật được
áp dụng. Những kĩ thuật sau được áp dụng cho từng mẫu paraphrase (e1 , f, e2 ):
• Loại những paraphrase có xác suất rất thấp (P (f |e1 ).P (e2 |f ) < 0.001).
• Loại những paraphrase mà e1 , f , hay e2 có chứa dấu câu.
• Loại những paraphrase mà e1 , f , hay e2 chỉ chứa từ chức năng (function
words).
Những kĩ thuật sau được áp dụng cho mỗi cặp paraphrase (e1 , e2 ) sau khi tính
tổng xác suất tất cả các mẫu trong ngữ liệu:
• Loại những paraphrase có xác suất rất thấp (P (e2 |e1 ) < 0.01).
• Loại những paraphrase mà e2 chứa trong e1 .
15
2.2.5
Nhận xét
Bộ liên kết từ trong Meteor được xây dựng cho liên kết từ đơn ngữ (monolingual
alignment), có tính tới các yếu tố về hình thái từ và paraphrase, đặc biệt là cho
ngôn ngữ tiếng Anh. Do đó, Meteor khá phù hợp cho bài toán liên kết từ mà
chúng tôi đang nghiên cứu.
2.3
2.3.1
MANLI
Giới thiệu
MANLI là một công cụ liên kết từ được xây dựng để giải quyết vấn đề liên kết
từ trong Suy diễn Ngôn ngữ tự nhiên (Natural Language Inference - NLI).
Vấn đề của Suy diễn Ngôn ngữ tự nhiên có thể tóm tắt lại đó là xác định một
ngữ giả thuyết H có phải được suy diễn ra từ một ngữ tiền đề P hay không.
Ví dụ: Để nhận ra rằng câu Kennedy was killed có thể được suy diễn từ câu
JFK was assassinated thì cần nhận ra mối quan hệ giữa Kennedy và JFK, giữa
killed và assassinated.
Do đó, hầu hết những cách tiếp cận cho bài toán này đều dựa vào liên kết từ,
nghĩa là thiết lập những liên kết giữa những từ tương ứng với nhau nằm trong
H và P . Để làm được điều này, MANLI sử dụng biểu diễn liên kết dựa trên cụm
từ, khai thác những kiến thức ngôn ngữ học có liên quan, và sử dụng bộ dữ liệu
huấn luyện có giám sát được xây dựng dành cho liên kết từ trong lĩnh vực NLI.
2.3.2
Kiến trúc hệ thống MANLI
Để giải quyết vấn đề như trên, hệ thống MANLI được xây dựng bao gồm bốn
thành phần:
1. Hàm biểu diễn liên kết dựa trên cụm từ
2. Hàm tính điểm cho các liên kết dựa trên các đặc trưng
3. Bộ giải mã sử dụng phương pháp mô phỏng để tìm ra những liên kết từ có
điểm cao
16
4. Perceptron learning để tối ưu hoá các trọng số đặc trưng
MANLI được ghi nhận có kết quả tốt hơn các công cụ liên kết từ hiện tại, cụ
thể là GIZA++, trên dữ liệu Recognizing Textual Entailment (RTE2).
2.3.3
Nhận xét
MANLI được xây dựng để giải quyết vấn đề cho bài toán Suy diễn Ngôn ngữ
tự nhiên (NLI), vốn cũng có một số điểm tương đồng với bài toán mà chúng tôi
đang nghiên cứu nên MANLI cũng là một công cụ khá phù hợp để sử dụng cho
bài toán này.
2.4
GIZA++
2.4.1
Giới thiệu
GIZA++ là công cụ phổ biến nhất để liên kết từ trong lĩnh vực dịch máy thống
kê. Nó được sử dụng để huấn luyện Mô hình IBM 1-5 và mô hình liên kết từ
Hidden Markov. Nó được xây dựng cho trường hợp đa ngôn ngữ và không có xu
hướng thiên về liên kết các chuỗi giống nhau.
2.4.2
GIZA++ refined
Khi sử dụng GIZA++ để liên kết từ, kết quả xuất ra chỉ là các liên kết từ 1 − n,
trong khi kết quả cần có là tạo ra được các liên kết m × n. Do đó, chúng tôi làm
các bước sau đây:
Đầu tiên, chúng tôi sử dụng phương pháp liên kết từ mặc định 1 − n khi huấn
luyện mô hình. Sau đó, để tạo ra các liên kết m × n, chúng tôi tiếp tục các bước
sau:
• Chạy mô hình hai lần riêng biệt trên hai hướng: một hướng là liên kết từ
văn bản gốc tới văn bản chỉnh sửa, và ngược lại, liên kết từ văn bản chỉnh
sửa tới văn bản gốc
• Sử dụng heuristics grow-diag-final của Moses để tổng hợp hai kết quả ở
bước trên lại với nhau
17
Kết quả cuối cùng được gọi là GIZA++ refined và chúng tôi sẽ dùng thuật ngữ
này từ đoạn này trở về sau.
2.4.3
Nhận xét
GIZA++ là công cụ liên kết từ được xây dựng cho lĩnh vực dịch máy thống kê và
cho trường hợp đa ngôn ngữ. Tuy nó không được xây dựng nhằm để giải quyết
bài toán mà luận văn đang nghiên cứu nhưng đây là công cụ liên kết từ phổ biến
nhất hiện nay và để có thể so sánh toàn diện, chúng tôi cũng chạy thử nghiệm
với GIZA++. Kết quả thử nghiệm sẽ được trình bày trong Chương 6 bên dưới.
2.5
Nhận diện lỗi tiếng Anh của Huichao Xue
và Rebecca Hwa
2.5.1
Giới thiệu
Công trình này được trình bày trong bài báo Improved Correction Detection in
Revised ESL Sentences ([9]), nghiên cứu và cải tiến phương pháp nhận diện lỗi
tiếng Anh, nó được phát triển từ bài báo Correction Detection and Error Type
Selection as an ESL Educational Aid ([10]). Nghiên cứu này tập trung vào hai
việc chính: một là phát hiện lỗi tiếng Anh và hai là phân loại các lỗi tiếng Anh
này từ những bài luận tiếng Anh của những sinh viên sử dụng tiếng Anh như là
ngoại ngữ. Hai bài báo trích dẫn ở trên đều dùng bộ ngữ liệu Cambridge Learner
Corpus (CLC) ([11]). Bộ ngữ liệu này gồm khoảng 1,200 bài luận tiếng Anh cùng
với các lỗi đã được chỉnh sửa và phân loại bởi những giáo viên người bản ngữ.
Bộ ngữ liệu này hiện có 75 nhãn lỗi, bao gồm lỗi về chia thì động từ, thứ tự từ,
lỗi chính tả, etc.
2.5.2
Phương pháp
Khi so sánh một câu tiếng Anh gốc do sinh viên viết và câu đã được sửa lỗi,
người ta nhận thấy rằng mỗi lỗi được sửa có thể được phân tích ra thành một bộ
18
Description (Code)
Unnecessary (U)
Incorrect verb tense (TV)
Countability error (C)
Incorrect word order (W)
Incorrect negative (X)
Spelling error (S)
Wrong form used (F)
Agreement error (AG)
Replace (R)
Missing (M)
Incorrect argument structure (AS)
Wrong Derivation (D)
Wrong inflection (I)
Inappropriate register (L)
Idiomatic error (ID)
Sample and Correction
July is the period of time that suits me best.
July is the time that suits me best.
She gave me autographs and talk really nicely
She gave me autographs and talked really nicely.
Please help them put away their stuffs.
Please help them put away their stuff.
I would like to know what kind of clothes should I bring.
I would like to know what kind of clothes I should bring.
We recommend you not to go with your friends.
We recommend you don’t go with your friends.
Our music lessons are speccial.
Our music lessons are special.
In spite of think I did well, I had to reapply.
In spite of thinking I did well, I had to reapply.
I would like to take some picture of beautiful scenery.
I would like to take some pictures of beautiful scenery.
The idea about going to Maine is common.
The idea of going to Maine is common.
Sometimes you surprised when you check the balance.
Sometimes you are surprised when you check the balance.
How much do I have to bring the money?
How much money do I have to bring?
The arrive of every student is a new chance.
The arrival of every student is a new chance.
I enjoyded it a lot.
I enjoyed it a lot.
The girls’d rather play table tennis or badminton.
The girls would rather play table tennis or badminton.
The level of life in the USA is similar to the UK.
The cost of living in the USA is similar to the UK.
Bảng 2.1: Bộ nhãn lỗi của bài báo
gồm những phép biến đổi cơ bản (basic edits) như là: thêm từ (word insertions),
xoá từ (word deletion) và thế từ (word substitutions).
Ví dụ: Xem Hình 2.2 bên dưới, lỗi "to change"→ "changing" là tổng hợp của
việc xoá từ to và thế từ change thành changing, lỗi "moment"→ "minute" là một
phép thế từ. Do đó, chúng ta có thể xây dựng hệ thống để nhận diện lỗi bằng
cách thực hiện hai bước sau: (1) nhận diện những phép biến đổi cơ bản (basic
edits) trong câu sửa lỗi, và (2) tổng hợp những phép biến đổi cơ bản mà chúng
đều sửa cùng một lỗi.
Tuy nhiên, trong thực tế cách tiếp cận hai bước như thế này có thể gây ra
nhận diện sai do sự nhập nhằng. Sự nhập nhằng này có thể từ một trong hai
19
Hình 2.2: Ví dụ về nhận diện lỗi tiếng Anh
bước. Ví dụ về sự nhập nhằng ở bước một, xem Hình 2.3 bên dưới. Các phép
biến đổi cơ bản được chương trình nhận diện ra ở đây là thế từ (because → for),
thế từ (of → repairs) và thêm từ (reparations), trong khi các phép biến đổi này
đúng ra phải được nhận diện là thêm từ (because), thế từ (of → for) và thế từ
(reparations → repairs). Lỗi này xảy ra do thuật toán Levenshtein chỉ cố gắng
giảm thiểu số lượng phép biến đổi, mà không quan tâm các phép biến đổi này có
mang ý nghĩa trong ngôn ngữ học hay không.
Hình 2.3: Ví dụ về nhập nhằng trong bước nhận diện những phép biến đổi cơ bản
Ví dụ về sự nhập nhằng ở bước hai, xem Hình 2.4 và 2.5 bên dưới. Hình 2.4
mô tả những trường hợp lỗi khi mà các phép biến đổi cơ bản cùng sửa một lỗi,
nhưng bước tổng hợp lại không nhận diện ra được, và không thể gom nhóm các
phép biến đổi này được. Hình 2.5 mô tả trường hợp lỗi ngược lại, khi các phép
biến đổi cơ bản không cùng sửa một lỗi, nhưng bước tổng hợp lại xem chúng
cùng sửa một lỗi và gom nhóm chúng lại với nhau. Lỗi này là do trong bước tổng
hợp những phép biến đổi cơ bản, công trình nghiên cứu trước đó của Swanson
và Yamangilapplied đã áp dụng một heuristic về khoảng cách - những phép biến
đổi nào mà gần nhau sẽ được gom nhóm lại với nhau.
Theo bước phân tích lỗi, những lỗi như trên làm cho bước nhận diện lỗi sai
30% và 75% việc nhận diện sai tới từ bước hai: bước tổng hợp các phép biến đổi
20
Hình 2.4: Ví dụ về nhập nhằng trong bước tổng hợp những phép biến đổi cơ bản
Hình 2.5: Ví dụ về nhập nhằng trong bước tổng hợp những phép biến đổi cơ bản
cơ bản. Do đó, để tăng độ chính xác của toàn bộ hệ thống, nghiên cứu này tập
trung vào xây dựng một bộ phân lớp cho bước tổng hợp các phép biến đổi cơ
bản.
Dựa vào việc phân tích lỗi, việc quyết định những phép biến đổi cơ bản có
liên quan với nhau hay không sẽ phụ thuộc vào ngữ cảnh. Từ nhận xét đó, tác giả
huấn luyện bộ phân lớp nhị phân Maximum Entropy dựa trên những đặc trưng
rút trích được từ những ngữ cảnh có liên quan cho các phép biến đổi cơ bản.
Bảng bên dưới mô tả cho các đặc trưng trong bộ phân lớp này. Những đặc
trưng này dùng để xác định: (A) việc tổng hợp hai phép biến đổi cơ bản có trùng
khớp với một lỗi thông thường hay không và (B) một phép biến đổi cơ bản có
chỉ ra một lỗi đơn lẻ hay không.
Type
A
B
Name
gap-between-edits
tense-change
word-order-error
same-word-set
revised-to
editdistance=1
not-in-dict
word-choice
preposition-error
Description
Khoảng cách giữa hai phép biến đổi. Cụ thể, đây là số lượng từ giữa hai phép biến đổi cơ bản trong câu gốc, cũng như là trong câu đã được chỉnh sửa.
Nhận diện những mẫu như là: nếu cặp câu gốc - câu chỉnh sửa mà khớp với mẫu "V-ing => to V"
Bộ từ trong câu gốc của những phép biến đổi cơ bản này có giống bộ từ trong câu chỉnh sửa hay không.
Nếu câu gốc và câu chỉnh sửa có chung một bộ từ, thì có thể là tất cả những phép biến đổi này nhằm để sửa lỗi thứ tự từ (word order).
Cụm từ này bao gồm hai từ được chỉnh sửa.
Nếu phép biến đổi cơ bản là một phép thế, và từ gốc/chỉnh sửa chỉ có khoảng cách là 1, nó biểu thị rằng phép biến đổi cơ bản này đang sửa một lỗi chính tả.
Nếu từ gốc không nằm trong từ điển, nó thể hiện rằng đây là một lỗi chính tả
Nếu từ gốc và từ được chỉnh sửa có cùng nhãn từ loại, đây có thể là lỗi lựa chọn từ (word choice).
Từ gốc và từ chỉnh sửa cùng là giới từ.
Bảng 2.2: Các đặc trưng được sử dụng trong bộ phân lớp
Những lỗi được gán nhãn một cách rõ ràng được rút trích từ một vài mẫu
trong bộ ngữ liệu sẽ được dùng để huấn luyện cho bộ phân lớp này. Đầu tiên,
21