Tài liệu Khóa luận Mở rộng bộ dữ liệu huấn luyện cho quá trình xử lý nhập nhằng nghĩa của từ: ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Vũ Minh Đức
MỞ RỘNG BỘ DỮ LIỆU HUẤN LUYỆN CHO QUÁ
TRÌNH XỬ LÝ NHẬP NHẰNG NGHĨA CỦA TỪ
KHOÁ 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ũ Minh Đức
MỞ RỘNG BỘ DỮ LIỆU HUẤN LUYỆN CHO QUÁ
TRÌNH XỬ LÝ NHẬP NHẰNG NGHĨA CỦA 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: Tiến sĩ Nguyễn Phƣơng Thái
HÀ NỘI - 2010
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
i
LỜI CẢM ƠN
Lời đầu tiên, tôi xin bày tỏ lòng biết ơn chân thành đến các thầy cô giáo trƣờng Đại
học Công Nghệ, Đại học Quốc Gia Hà Nội nói chung và các thầy cô trong bộ môn Khoa
học Máy Tính nói riêng. Trong suốt bốn năm học tập trong trƣờng, các thầy cô không
những tận tình truyền đạt kiến thức mà còn luôn động viên giúp đỡ tôi trong học tập cũng
nhƣ trong cuộc sống.
Đặc biệt, tôi muốn gửi lời cảm ...
51 trang |
Chia sẻ: haohao | Lượt xem: 1125 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận Mở rộng bộ dữ liệu huấn luyện cho quá trình xử lý nhập nhằng nghĩa của từ, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CƠNG NGHỆ
Vũ Minh Đức
MỞ RỘNG BỘ DỮ LIỆU HUẤN LUYỆN CHO QUÁ
TRÌNH XỬ LÝ NHẬP NHẰNG NGHĨA CỦA TỪ
KHỐ 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ũ Minh Đức
MỞ RỘNG BỘ DỮ LIỆU HUẤN LUYỆN CHO QUÁ
TRÌNH XỬ LÝ NHẬP NHẰNG NGHĨA CỦA TỪ
KHỐ 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: Tiến sĩ Nguyễn Phƣơng Thái
HÀ NỘI - 2010
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
i
LỜI CẢM ƠN
Lời đầu tiên, tơi xin bày tỏ lịng biết ơn chân thành đến các thầy cơ giáo trƣờng Đại
học Cơng Nghệ, Đại học Quốc Gia Hà Nội nĩi chung và các thầy cơ trong bộ mơn Khoa
học Máy Tính nĩi riêng. Trong suốt bốn năm học tập trong trƣờng, các thầy cơ khơng
những tận tình truyền đạt kiến thức mà cịn luơn động viên giúp đỡ tơi trong học tập cũng
nhƣ trong cuộc sống.
Đặc biệt, tơi muốn gửi lời cảm ơn sâu sắc đến thầy giáo, tiến sĩ Nguyễn Phƣơng
Thái, ngƣời đã tận tình chỉ bảo, hƣớng dẫn tơi trong suốt quá trình nghiên cứu và hồn
thiện khĩa luận tốt nghiệp.
Tơi cũng xin cảm ơn các bạn sinh viên K51, đã luơn cùng tơi nghiên cứu và học tập,
đã cho tơi những ý kiến đĩng gĩp giá trị trong suốt thời gian học tập cũng nhƣ trong quá
trình nghiên cứu đề tài khĩa luận tốt nghiệp.
Cuối cùng, tơi xin gửi lời cảm ơn sâu sắc đến gia đình và bạn bè, những ngƣời luơn
động viên giúp đỡ tơi vƣợt qua những khĩ khăn trong cuộc sống.
Hà Nội, ngày 21 tháng 5 năm 2010
Sinh viên
Vũ Minh Đức
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
ii
TĨM TẮT KHĨA LUẬN
Trong các chủ đề thuộc lĩnh vực xử lý ngơn ngữ tự nhiên, xử lý nhập nhằng nghĩa
của từ là một chủ đề dành đƣợc nhiều sự quan tâm chú ý của những nhà nghiên cứu, phát
triển, ứng dụng khoa học máy tính. Lý do là mặc dù nếu đứng một mình, xử lý nhập
nhằng nghĩa của từ ít đem lại lợi ích cụ thể trong đời sống hàng ngày, nhƣng nĩ lại cĩ một
vai trị quan trọng trong nhiều ứng dụng xử lý ngơn ngữ tự nhiên hữu ích khác nhƣ dịch
máy, tìm kiếm thơng tin, khai phá dữ liệu, … Do vậy đã cĩ rất nhiều cách tiếp cận để giải
quyết vấn đề xử lý nhập nhằng nghĩa của từ đƣợc đƣa ra nhƣ sử dụng bộ cở sở tri thức, áp
dụng các luật để xử lý nhập nhằng, hoặc sử dụng các thuật tốn học máy cĩ giám sát để
phân lớp nghĩa của từ … Trong tất cả các cách tiếp cận trên, lớp phƣơng pháp dựa vào
các thuật tốn học máy cĩ giám sát tỏ ra là cĩ đƣợc một kết quả xử lý nhập nhằng tốt
nhất. Tuy vậy lớp phƣơng pháp này cĩ một nhƣợc điểm đĩ là yêu cầu một bộ dữ liệu huấn
luyện (thƣờng là lớn) các trƣờng hợp xuất hiện của từ đã đƣợc gán nhãn nghĩa sẵn. Nếu
phải chuẩn bị bộ dữ liệu huấn luyện này một cách thủ cơng thì ta phải tốn rất nhiều cơng
sức, thời gian và chi phí do vậy tìm kiếm một giải pháp cho phép tự động hĩa giai đoạn
này là một nhu cầu thực tế. Nắm bắt đƣợc nhu cầu trên, đề tài khĩa luận của tơi đƣợc thực
hiện nhằm mục đích tìm hiểu phƣơng pháp xây dựng một hệ thống xử lý nhập nhằng
nghĩa của từ, đĩng vai trị nhƣ một cơng cụ cho phép mở rộng bộ dữ liệu nhỏ đã gán
nghĩa cho các trƣờng hợp xuất hiện của từ đang cần mở rộng dữ liệu huấn luyện thành
một bộ dữ liệu huấn luyện đủ lớn nhƣng chỉ địi hỏi rất ít cơng sức của con ngƣời, hỗ trợ
cho quá trình xử lý nhập nhằng nghĩa của những từ mang nội dung trong ngơn ngữ tự
nhiên.
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
iii
MỤC LỤC
LỜI CẢM ƠN ........................................................................................................................ i
TĨM TẮT KHĨA LUẬN .................................................................................................... ii
MỤC LỤC .......................................................................................................................... iii
DANH MỤC HÌNH VẼ ...................................................................................................... vi
DANH MỤC BẢNG BIỂU ................................................................................................ vii
Chƣơng 1: Mở đầu ................................................................................................................ 1
1.1. Đặt vấn đề ............................................................................................................... 1
1.2. Mục tiêu đề tài ........................................................................................................ 2
1.3. Đối tƣợng và phƣơng pháp nghiên cứu .................................................................. 3
1.4. Cấu trúc khĩa luận .................................................................................................. 5
Chƣơng 2: Các đặc tính của từ liên quan đến mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa
của từ .................................................................................................................................... 7
2.1. Một nghĩa trong một nhĩm từ đồng xuất hiện ........................................................ 7
2.2. Một nghĩa trong một văn bản .................................................................................. 8
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng ....... 10
3.1. Thuật tốn học máy cĩ giám sát Naive Bayes ......................................................... 10
3.1.1. Giới thiệu về Nạve Bayes ................................................................................. 10
3.1.2. Ƣớc lƣợng xác suất ............................................................................................ 11
3.2. Thuật tốn mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ ............................... 13
3.2.1. Giới thiệu ........................................................................................................... 13
3.2.2. Các bƣớc của thuật tốn ..................................................................................... 14
3.3. Lựa chọn từ cho nhĩm từ đồng xuất hiện trên quan điểm lý thuyết ........................ 18
3.3.1. Khoảng cách lân cận của từ đang cần xử lý nhập nhằng nghĩa ......................... 19
3.3.2. Xử lý từ trong nhĩm từ đồng xuất hiện ............................................................. 19
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
iv
3.3.3. Chuyển đổi từ trong nhĩm từ đồng xuất hiện thành thuộc tính của bộ phân lớp
..................................................................................................................................... 20
Chƣơng 4: Cấu trúc và định dạng của dữ liệu .................................................................... 22
4.1. Dữ liệu đầu vào ........................................................................................................ 22
4.1.1. Dữ liệu chuẩn đã gán nghĩa ............................................................................... 22
4.1.2. Dữ liệu chƣa gán nghĩa – BNC .......................................................................... 23
4.2. Dữ liệu sử dụng trong quá trình chạy chƣơng trình ................................................. 25
4.3. Định dạng file kết quả thực nghiệm ......................................................................... 25
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
nghĩa. .................................................................................................................................. 27
5.1. Bộ cơng cụ NLTK .................................................................................................... 27
5.2. Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
nghĩa của từ. .................................................................................................................... 27
5.2.1. Các cơng cụ chuẩn bị dữ liệu ............................................................................. 28
5.2.2. Hàm cơng cụ test ............................................................................................... 29
5.2.3. Các hàm phân lớp và mở rộng bộ dữ liệu .......................................................... 30
5.2.4. Các hàm cơng cụ khác ....................................................................................... 31
Chƣơng 6: Kết quả thực nghiệm ........................................................................................ 32
6.1. Dữ liệu thực nghiệm ................................................................................................. 32
6.2. Thí nghiệm 1 ............................................................................................................ 34
6.2.1. Bố trí thí nghiệm ................................................................................................ 34
6.2.2. Kết quả thực nghiệm .......................................................................................... 35
6.2.3. Nhận xét ............................................................................................................. 36
6.3. Thí nghiệm 2 ............................................................................................................ 37
6.3.1. Bố trí thí nghiệm ................................................................................................ 37
6.3.2. Kết quả thực nghiệm .......................................................................................... 38
6.3.3. Nhận xét ............................................................................................................. 38
Chƣơng 7: Kết luận ............................................................................................................ 40
7.1. Các kết quả đạt đƣợc và hạn chế .............................................................................. 40
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
v
7.2. Các cơng việc trong tƣơng lai .................................................................................. 41
Tài liệu tham khảo .............................................................................................................. 42
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
vi
DANH MỤC HÌNH VẼ
Hình 1: Sơ đồ các dữ liệu và cơng cụ sử dụng trong nghiên cứu, khảo sát phƣơng pháp
mở rộng dữ liệu huấn luyện cho quá trình xử lý nhập nhằng nghĩa của từ .......................... 4
Hình 2: Sơ đồ các bƣớc của phƣơng pháp mở rộng bộ dữ liệu huấn luyện cho quá trình xử
lý nhập nhằng nghĩa của từ ................................................................................................. 15
Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ
vii
DANH MỤC BẢNG BIỂU
Bảng 1: Các nghĩa và số lƣợng từ tƣơng ứng của từ “line” trong dữ liệu chuẩn ............... 32
Bảng 2: Các nghĩa và số lƣợng từ tƣơng ứng của từ “hard” trong dữ liệu chuẩn .............. 33
Bảng 3: Các nghĩa và số lƣợng từ tƣơng ứng của từ “interest” trong dữ liệu chuẩn ......... 33
Bảng 4: Các nghĩa và số lƣợng từ tƣơng ứng của từ “serve” trong dữ liệu chuẩn ............. 33
Bảng 5: Số lƣợng các từ “line”, “hard”, “serve”, “interest” trong BNC ............................ 34
Bảng 6: Kết quả thí nghiệm 1 của từ “line” ....................................................................... 35
Bảng 7: Kết quả thí nghiệm 1 của từ “hard” ...................................................................... 35
Bảng 8: Kết quả thí nghiệm 1 của từ “serve” ..................................................................... 36
Bảng 9: Kết quả thí nghiệm 1 của từ “interest” .................................................................. 36
Bảng 10: Kết quả thí nghiệm 2 của từ “line” ..................................................................... 38
Bảng 11: Kết quả thí nghiệm 2 của từ “serve” ................................................................... 38
Chƣơng 1: Mở đầu
1
Chƣơng 1: Mở đầu
1.1. Đặt vấn đề
Xử lý nhập nhằng nghĩa của từ là một trong những vấn đề đƣợc rất nhiều nhà nghiên
cứu trong lĩnh vực xử lý ngơn ngữ tự nhiên quan tâm đến. Vấn đề này đƣợc nêu lên nhƣ
một bài tốn riêng biệt lần đầu tiên là vào những năm cuối thập kỷ 40 của thế kỷ 20 và
đƣợc coi nhƣ là một trong những vấn đề lâu đời nhất của lĩnh vực xử lý ngơn ngữ tự
nhiên [1]. Nhận đƣợc nhiều sự quan tâm và từ sớm nhƣ vậy là do xử lý nhập nhằng nghĩa
của từ đĩng vai trị quan trọng trong rất nhiều các bài tốn khác của xử lý ngơn ngữ tự
nhiên. Ta cĩ thể lấy ví dụ nhƣ trong dịch máy, hệ xử lý nhập nhằng nghĩa của từ làm
nhiệm vụ chọn đúng từ trong ngơn ngữ đích cho những từ trong ngơn ngữ gốc cĩ các cách
dịch sang ngơn ngữ đích là khác nhau với các nghĩa khác nhau [1]. Ngồi ra ta cĩ thể thấy
sự xuất hiện của hệ xử lý nhập nhằng nghĩa của từ trong các hệ thống tìm kiếm thơng tin,
khai phá dữ liệu và rất nhiều các ứng dụng hữu ích khác.
Đƣợc quan tâm nhƣ vậy nên ta cĩ thể thấy rất nhiều các phƣơng pháp xử lý nhập
nhằng nghĩa của từ đã đƣợc các nhà nghiên cứu đề xuất. Phƣơng pháp đầu tiên cần nĩi tới
là phƣơng pháp sử dụng bộ cở sở tri thức để xử lý nhập nhằng nghĩa của từ. Nĩ khơng
dùng đến các yếu tố trong văn bản mà hồn tồn căn cứ vào bộ cơ sở tri thức cĩ sẵn [1].
Điểm yếu của phƣơng pháp này là bộ cơ sở tri thức thƣờng sẽ rất lớn, hơn nữa với sự
phức tạp của ngơn ngữ tự nhiên thì việc dùng các luật để xử lý nhập nhằng cũng chỉ đạt
đƣợc độ chính xác cĩ giới hạn.
Phƣơng pháp dùng các thuật tốn khơng giám sát cũng đang là một hƣớng đi rất
đƣợc chú ý để giải quyết bài tốn xử lý nhập nhằng nghĩa của từ. Nĩ sẽ phân cụm các
trƣờng hợp xuất hiện của từ trong văn bản và từ đĩ đƣa ra nghĩa của từ [9]. Phƣơng pháp
này cĩ thể là một phƣơng pháp cĩ nhiều cải tiến và hy vọng phát triển trong tƣơng lai tuy
nhiên trong hiện tại nĩ vẫn chƣa phải phƣơng pháp cĩ độ chính xác cao nhất.
Phƣơng pháp cĩ độ chính xác phân lớp nghĩa của từ cao nhất trong thời điểm hiện
tại vẫn là phƣơng pháp sử dụng các thuật tốn học máy cĩ giám sát [9]. Phƣơng pháp này
dựa vào giả thiết rằng văn cảnh xung quanh cho ta đủ cơ sở để cĩ thể kết luận chính xác
Chƣơng 1: Mở đầu
2
nghĩa của một từ [1]. Và do sử dụng các hàm phân lớp dựa trên các thuật tốn học cĩ
giám sát, nĩ địi hỏi phải cĩ một bộ dữ liệu huấn luyện gồm các trƣờng hợp xuất hiện của
từ đã đƣợc gán nghĩa trƣớc để huấn luyện cho các hàm phân lớp này. Bộ dữ liệu huấn
luyện càng lớn thì khả năng gán nghĩa chính xác cho từ đang cần xử lý nhập nhằng nghĩa
của các hàm phân lớp sau quá trình huấn luyện sẽ càng cao. Tuy vậy, việc phải chuẩn bị
trƣớc bộ dữ liệu huấn luyện lớn là một điểm trừ của phƣơng pháp này, đặc biệt nếu cơng
việc chuẩn bị dữ liệu phải làm thủ cơng. Đĩ thực sự sẽ là một cơng việc rất nặng nhọc, tốn
rất nhiều thời gian, cơng sức và cĩ chi phí cao. Từ đĩ phát sinh nhu cầu phải cĩ một
phƣơng pháp cho phép con ngƣời chỉ cần gán nghĩa thủ cơng cho một số lƣợng nhỏ các
trƣờng hợp xuất hiện của từ mà đầu ra là một bộ dữ liệu đủ lớn, đủ chính xác để huấn
luyện các hàm phân lớp xử lý nhập nhằng nghĩa của từ. Để đạt đƣợc các yêu cầu đĩ,
phƣơng pháp này chỉ cĩ thể đƣợc xây dựng dựa vào sức mạnh tự động của máy tính, tức
là, sử dụng máy tính để mở rộng tự động bộ dữ liệu huấn luyện cho quá trình xử lý nhập
nhằng nghĩa của từ.
Nĩi đến bài tốn xử lý nhập nhằng nghĩa của từ thì ta cĩ xử lý nhập nhằng nghĩa cho
những từ mang nội dung (của câu, của văn bản) và cho những từ chức năng (tức là những
từ xuất hiện do yêu cầu về mặt ngữ pháp của ngơn ngữ tự nhiên). Với các từ chức năng
(nhƣ “to”, “from”, “in”, ...) ta cĩ thể sử dụng các luật ngữ pháp hay nhiều yếu tố khác để
xác định nghĩa của từ. Tuy nhiên trong giới hạn của khĩa luận này, ta chỉ xét đến các từ
cĩ chứa nội dung (nhƣ “line”, “interest”, “hard”, “serve”, ...).
1.2. Mục tiêu đề tài
Những vấn đề đã nêu ở trên cho ta thấy đƣợc sự cần thiết của việc nghiên cứu, xây
dựng một cơng cụ hỗ trợ mở rộng bộ dữ liệu huấn luyện xử lý nhập nhằng nghĩa của từ
(mang nội dung) một cách tự động. Yêu cầu chính của cơng cụ này là hỗ trợ những ngƣời
chuẩn bị dữ liệu xử lý nhập nhằng nghĩa của từ sao cho họ bỏ ra cơng sức nhỏ nhất, thời
gian ngắn nhất nhƣng thu đƣợc về một bộ dữ liệu lớn, chính xác, cĩ khả năng sửa lỗi một
phần những sai sĩt trong quá trình gán nghĩa cho từ trong bộ dữ liệu.
Từ yêu cầu thực tế đĩ, mục tiêu của đề tài khĩa luận là trình bày một thuật tốn bán
giám sát xử lý nhập nhằng nghĩa của từ đĩng vai trị nhƣ một hệ thống mở rộng bộ dữ liệu
xử lý nhập nhằng nghĩa của từ một cách tự động, do đĩ con ngƣời chỉ cần chuẩn bị một
lƣợng dữ liệu nhỏ đƣợc gán nghĩa cho các trƣờng hợp xuất hiện của từ đang cần gán
Chƣơng 1: Mở đầu
3
nghĩa cùng với một bộ dữ liệu chƣa gán nghĩa từ, ta sử dụng phƣơng pháp này để mở
rộng bộ dữ liệu gán nghĩa ra một cách tự động, cuối cùng thu đƣợc một bộ dữ liệu mới
lớn hơn nhiều lần đồng thời cĩ độ chính xác đủ tốt, và cĩ khả năng sửa một phần lỗi cĩ
thể cĩ trong dữ liệu gán nghĩa ban đầu.
1.3. Đối tƣợng và phƣơng pháp nghiên cứu
Đối tƣợng nghiên cứu của khĩa luận là cách thức áp dụng những đặc tính của từ
trong ngơn ngữ tự nhiên vào quá trình mở rộng tự động bộ dữ liệu nghĩa của từ (mang nội
dung).
Phƣơng pháp nghiên cứu là dựa vào bộ cơng cụ xử lý ngơn ngữ tự nhiên (nltk) cĩ
sẵn để xây dựng một bộ cơng cụ cho phép đƣa ra, khảo sát, và khẳng định đƣợc một cách
thức cụ thể để mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ. Trong khĩa luận, tiếng
Anh đƣợc lấy làm ví dụ do tiếng Anh đƣợc coi là một ngơn ngữ quốc tế, nhu cầu dịch từ
tiếng Anh ra các ngơn ngữ khác và ngƣợc lại là khá cao. Tuy vậy, phƣơng pháp đƣợc
trình bày cĩ thể áp dụng cho các ngơn ngữ khác ngồi tiếng Anh.
Chƣơng 1: Mở đầu
4
Hình 1: Sơ đồ các dữ liệu và cơng cụ sử dụng trong nghiên cứu, khảo sát phương pháp
mở rộng dữ liệu huấn luyện cho quá trình xử lý nhập nhằng nghĩa của từ
Dữ liệu chƣa
gán nghĩa của
từ đang xét
Huấn luyện bộ phân lớp
Naive Bayes
nltk.classify.naivebayes
Bộ dữ liệu văn
bản
Chuẩn bị dữ
liệu (liệt kê,
định dạng)
Cơng cụ tự xd Phân lớp nghĩa
nltk.classify.naivebayes
Dữ liệu chuẩn
chƣa định dạng
Cơng cụ tự xd
Gán lại nghĩa trong cùng
văn bản, loại bỏ trƣờng
hợp cĩ xác suất thấp
Cơng cụ tự xây dựng
Dữ liệu gán
nghĩa của từ
đang xét (mở
rộng sau vịng
lặp đầu tiên)
Chuẩn bị dữ
liệu (định dạng)
Điều kiện dừng
Chƣa thỏa mãn điều
kiện dừng, tiếp tục
huấn luyện
Dữ liệu gán
nghĩa mở rộng
của từ đang xét
Dữ liệu gán
nghĩa ban
đầu của từ
đang xét
Chƣơng 1: Mở đầu
5
1.4. Cấu trúc khĩa luận
Khĩa luận đƣợc tổ chức thành các chƣơng nhƣ sau:
Chƣơng 1: Mở đầu
Chƣơng này nhằm nêu bật sự cần thiết, ý nghĩa thực tiễn, đối tƣợng, phƣơng
pháp nghiên cứu, mục tiêu của đề tài phƣơng pháp tự động mở rộng bộ dữ liệu
huấn luyện cho quá trình xử lý nhập nhằng nghĩa của từ.
Chƣơng 2: Các đặc tính của từ liên quan đến mở rộng bộ dữ liệu xử lý nhập
nhằng nghĩa của từ
Chƣơng này chỉ ra những đặc tính của từ liên quan đến nghĩa của nĩ, giúp ích
cho quá trình mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ một cách tự động.
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập
nhằng nghĩa của từ
Chƣơng này nêu lên các thuật tốn học máy cĩ giám sát và bán giám sát đƣợc
áp dụng trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ đặc
biệt là khi chỉ cĩ một lƣợng nhỏ dữ liệu huấn luyện ban đầu. Đồng thời, dựa trên lý
thuyết của các thuật tốn đã nêu để xem xét đến cách thức lựa chọn và chuyển đổi
những từ thuộc nhĩm từ đồng xuất hiện của từ đang cần gán nghĩa thành các thuộc
tính sử dụng cho quá trình phân lớp nghĩa của từ đĩ.
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
Chƣơng này giới thiệu định dạng dữ liệu chuẩn dùng để huấn luyện và kiểm
thử bộ xử lý nhập nhằng nghĩa của từ và bộ dữ liệu khơng gán nhãn dùng cho quá
trình mở rộng tự động bộ dữ liệu huấn luyện chuẩn ban đầu.
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý
nhập nhằng nghĩa
Chƣơng này giới thiệu sơ lƣợc về cơng cụ đƣợc sử dụng để nghiên cứu, kiểm
tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ.
Chƣơng 6: Kết quả thực nghiệm
Chƣơng 1: Mở đầu
6
Chƣơng này nêu kết quả thực nghiệm. So sánh kết quả khi chỉ dùng dữ liệu
huấn luyện ban đầu và sau khi đã mở rộng đƣợc bộ dữ liệu huấn luyện. Ngồi ra,
chƣơng này cịn so sánh kết quả thực nghiệm khi thay đổi một vài lựa chọn về từ
trong nhĩm từ đồng xuất hiện với từ đang cần xử lý nhập nhằng hoặc khi thay đổi
số lƣợng các trƣờng hợp xuất hiện của từ trong bộ dữ liệu huấn luyện ban đầu.
Chƣơng 7: Kết luận
Chƣơng này nêu lên và đánh giá những kết quả đã đạt đƣợc, đồng thời đƣa ra
những cơng việc cần làm trong tƣơng lai để cải tiến mở rộng thêm phƣơng pháp tự
động mở rộng bộ dữ liệu huấn luyện xử lý nhập nhằng nghĩa của từ.
Chƣơng 2: Các đặc tính của từ liên quan đến mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ
7
Chƣơng 2: Các đặc tính của từ liên quan đến mở rộng bộ dữ liệu xử
lý nhập nhằng nghĩa của từ
Đặc tính của từ trong ngơn ngữ tự nhiên cĩ rất nhiều. Tuy nhiên ta chỉ quan tâm đến
hai đặc tính giúp ích cho vấn đề mở rộng bộ dữ liệu xử lý nhập nhằng đĩ là:
Một nghĩa trong một nhĩm từ đồng xuất hiện: Một từ thƣờng chỉ mang một
nghĩa khi xét trong trƣờng hợp nĩ đi kèm với cùng các từ giống nhau dù trong các câu
khác nhau.
Một nghĩa trong một văn bản: tức là một từ thƣờng cĩ xu hƣớng mang một
nghĩa trong một văn bản. Rất hiếm trƣờng hợp cĩ từ mang hai hay nhiều nghĩa trong cùng
một văn bản.
Đƣơng nhiên nhƣ đã nĩi ở trên, hiện tại ta đang chỉ xét đến những từ mang nội
dung, cịn những từ chức năng nằm ngồi phạm vi nghiên cứu của khĩa luận này.
2.1. Một nghĩa trong một nhĩm từ đồng xuất hiện
Một từ cĩ thể cĩ nhiều nghĩa và nghĩa của nĩ lại phụ thuộc vào văn cảnh mà nĩ
đƣợc xét. Những từ xung quanh một từ chính là những từ tạo ra văn cảnh cho từ đĩ.
Chính vì vậy, dù trong hai câu khác nhau, từ vẫn thƣờng cĩ cùng một nghĩa khi cùng đi
kèm với các từ đồng thời xuất hiện trên cả hai câu đĩ. Nhƣ vậy, đầu mối cho phép ta xác
định nghĩa của từ đang cần xử lý nhập nhằng nghía chính là những từ xung quanh nĩ.
Đặc tính một nghĩa trong một nhĩm từ đồng xuất hiện nêu ở trên đã đƣợc
Yarowsky[6] khảo sát và đánh giá. Tác giả này nghiên cứu trên một tập văn bản 380 triệu
từ bao gồm rất nhiều nguồn và kết quả là độ chính xác trung bình của đặc tính một nghĩa
trong một nhĩm từ đồng xuất hiện ở vào khoảng 95%. Tuy vậy, theo Yakowsky, đặc tính
này phụ thuộc vào loại nhĩm từ đồng xuất hiện. Nĩ là một đặc tính rất mạnh khi các từ ta
căn cứ vào nằm liền kề và theo thứ tự với từ đang cần gán nghĩa, tuy nhiên nĩ bị giảm dần
tính đúng đắn theo khoảng cách. Loại từ ta căn cứ vào là loại từ mang nội dung hay khơng
cũng là một điểm chú ý. Cụ thể là theo nghiên cứu của Yarowsky, độ chính xác của đặc
tính một nghĩa trên một nhĩm từ đồng xuất hiện đạt đến trên 97% đối với những nhĩm từ
Chƣơng 2: Các đặc tính của từ liên quan đến mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ
8
đồng xuất hiện mà những từ của nĩ gần kề, theo thứ tự với từ đang cần gán nghĩa và là
những từ mang nội dung.
Từ những nhận xét rút ra từ nghiên cứu của Yakowsky, ta thấy rằng để áp dụng hiệu
quả đƣợc đặc tính một nghĩa trong một nhĩm từ đồng xuất hiện ta cần phải giải quyết
đƣợc vấn đề là làm sao để chọn đƣợc các từ cĩ giá trị nhất và sử dụng cách thức nào để
chuyển đổi chúng thành các thuộc tính sử dụng trong việc phân lớp nghĩa cho từ ta đang
cần gán nghĩa.
2.2. Một nghĩa trong một văn bản
Một từ thƣờng thống nhất về nghĩa trong cùng một văn bản. Đặc tính này đƣợc
nghiên cứu và đánh giá bởi Gale, Church và Yakowsky [4]. Các tác giả này tiến hành thử
nghiệm bằng cách chọn ngẫu nhiên từ bộ sách giáo khĩa của Grolier (Grolier‟s
Encyclopedia) một bộ 82 cặp nhĩm từ cùng xuất hiện cho chín từ đa nghĩa là “antenna”,
“campain”, “deposit”, “drum”, “hull”, “interior”, “knife”, “landscape”, và “marine”.
Trong đĩ 54 cặp đƣợc chọn cùng trong một văn bản. Họ kết luận đƣợc là 94% những cặp
của những từ đa nghĩa này chọn từ cùng một văn bản là cĩ cùng một nghĩa. Với một bộ
văn bản khác là bộ văn bản Brown (Brown Corpus), các từ “antenna”, “drum”, “hull” và
“knife” bị loại bỏ vì chỉ cĩ một nghĩa trong bộ văn bản này. Tuy vậy với 108 cặp nhĩm từ
cùng xuất hiện của các từ cịn lại nhƣ trong thử nghiệm trƣớc đĩ, các tác giả đã tiến hành
thực nghiệm để khẳng định thêm đặc tính một nghĩa trên một văn bản. Kết quả là 96% các
cặp này cĩ cùng một nghĩa. Cuối cùng Gale, Church và Yakowsky kết luận đƣợc rằng đặc
tính một nghĩa trong một văn bản là chính xác. Tuy nhiên đặc tính này khơng mạnh bằng
đặc tính một nghĩa trong một nhĩm từ đồng xuất hiện. Tức là nĩ cĩ thể bị bỏ qua nếu các
từ xung quanh, cùng xuất hiện với từ đang cần gán nghĩa cho ta một khẳng định đủ mạnh
về nghĩa của từ (xác suất xác định dựa vào các yếu tố địa phƣơng lớn hơn một ngƣỡng
nào đĩ)[7].
Dù cĩ độ ƣu tiên thấp hơn đặc tính một nghĩa trên một nhĩm từ đồng xuất hiện
nhƣng đặc tính một nghĩa trong một văn bản cĩ vai trị và tính chất mang tính quyết định
trong quá trình gán nghĩa tự động cho một bộ dữ liệu chƣa gán nghĩa. Cụ thể là nĩ cho
phép mở rộng bộ dữ liệu gán nghĩa ban đầu thành một bộ dữ liệu rất lớn nhờ vào việc áp
dụng tính chất tồn cục của văn bản mà chỉ dựa vào một số dữ liệu cục bộ đƣợc cung cấp
ban đầu là các trƣờng hợp xuất hiện đã đƣợc gán thủ cơng trƣớc với các nghĩa của từ đang
Chƣơng 2: Các đặc tính của từ liên quan đến mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ
9
cần gán nghĩa. Hơn nữa, đặc tính này cịn cho phép sửa lỗi cĩ trong các dữ liệu ban đầu
hoặc phát sinh trong quá trình tự động bị gán nghĩa sai. Chi tiết cách thức ứng dụng đặc
tính này trong phƣơng pháp mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của
từ sẽ đƣợc trình bày trong phần thuật tốn (chƣơng 3) của khĩa luận.
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
10
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu
xử lý nhập nhằng
3.1. Thuật tốn học máy cĩ giám sát Naive Bayes
3.1.1. Giới thiệu về Nạve Bayes
Naive Bayes là một thuật tốn phân lớp đơn giản nhƣng hiệu quả. Nĩ cho phép gán
trực tiếp một nhãn lớp c (ở đây là một nghĩa của từ) từ một tập thuộc tính đầu vào với giả
thiết là các thuộc tính trong tập thuộc tính là độc lập với nhau. Tức là xác suất đồng thời
của chúng bằng tổng các xác suất của từng thuộc tính:
𝑝 𝑓1, 𝑓2,… , 𝑓𝑛 = 𝑝(𝑓𝑖)
𝑛
𝑖=1
(1)
Để gán nhãn cho một tập các thuộc tính đầu vào, Naive Bayes sẽ xác định xác suất
hậu nghiệm của nhãn lớp c và bộ thuộc tính đầu vào F. Xác suất này theo cơng thức
Bayes đƣợc tính nhƣ sau
𝑝(𝑐|𝐹) = 𝑝 𝑐 (𝑓1 ,𝑓2 ,…𝑓𝑛) =
𝑝 𝑐 𝑝((𝑓1 ,𝑓2 ,…𝑓𝑛) |𝑐)
𝑝(𝑓1 ,𝑓2 ,…𝑓𝑛)
(2)
Nhƣ vậy, đầu tiên ta cần tính xác suất tiên nghiệm của lớp 𝑝(𝑐). Xác suất này đƣợc
xác định dựa vào các dữ liệu huấn luyện ban đầu. Nếu theo lý thuyết ta cĩ thể tính:
𝑝 𝑐 =
𝑐𝑜𝑢𝑛𝑡(𝑐)
𝑁
(3)
Với count(c) là số các trƣờng hợp c đƣợc gán nhãn trong bộ dữ liệu huấn luyện và N
là số nhãn lớp.
Sau khi đã cĩ đƣợc xác suất tiên nghiệm 𝑝(𝑐), ta cần xác định hai xác suất cịn lại:
𝑝 𝐹 𝑐 = 𝑝 𝑓1, 𝑓2,… , 𝑓𝑛 𝑐) (4)
𝑝 𝐹 = 𝑝 𝑓1, 𝑓2 ,… , 𝑓𝑛 (5)
Nếu theo hai cơng thức trên thì việc tính tốn hai xác suất này trong thực tế là rất
khĩ. Tuy vậy, theo giả thiết của Naive Bayes về tính độc lập của các thuộc tính, ta cĩ:
𝑝 𝐹 𝑐 = 𝑝 𝑓1 𝑐 𝑝 𝑓2 𝑐 …𝑝 𝑓𝑛 𝑐 (6)
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
11
𝑝 𝐹 = 𝑝 𝑓1 𝑝 𝑓2 … 𝑝 𝑓𝑛 (7)
Khi này việc tính các xác suất 𝑝 𝐹 𝑐 và 𝑝(𝐹) trở nên dễ dàng với việc tính từng
xác suất nhỏ 𝑝(𝑓𝑖|𝑐) và 𝑝(𝑓𝑖).
Sau quá trình huấn luyện, ta đã xác định đƣợc hết các xác suất tiên nghiệm 𝑝(𝑐), các
xác suất của các thuộc tính 𝑝(𝑓𝑖) và 𝑝(𝑓𝑖|𝑐). Lúc này, nếu đƣa vào một bộ thuộc tính F,
hàm phần lớp Naive Bayes sẽ tính xác suất hậu nghiệm của tất cả các lớp đã đƣợc tính
bằng cơng thức (2) nhƣ đã trình bày ở trên. Lớp nào cĩ xác suất cao nhất thì sẽ đƣợc chọn
làm nhãn gán cho tập thuộc tính đầu vào F.
Áp dụng trong bài tốn xử lý nhập nhằng nghĩa của từ A đang xét, thì ta cĩ c là một
nghĩa thuộc C là tập các nghĩa của từ A. Các f chính là các thuộc tính chuyển hĩa từ các
từ thuộc nhĩm từ đồng xuất hiện với A.
Giả thiết về sự độc lập của các thuộc tính, ngồi việc làm cho việc tính các xác suất
trở nên đơn giản, cịn cĩ một lợi ích khác. Cụ thể Naive Bayes chống lại khá tốt hiện
tƣợng một nhãn lớp do cĩ quá nhiều trong bộ dữ liệu huấn luyện (𝑝(𝑐) lớn) mà cĩ lợi thế
hơn trong quá trình phân lớp. Ta lấy ví dụ, nếu thuộc tính f xuất hiện trong nhĩm các
thuộc tính phân lớp từ A với tần xuất trong nghĩa c1 là 20%, nghĩa c2 là 12%, nghĩa c3 là
7%. Nhƣ vậy, giả sử dù nghĩa c3 cĩ xác suất xuất hiện lớn hơn c1 tuy nhiên xác suất hậu
nghiệm của c3 sẽ phải nhân với 0.07 cịn c1 sẽ chỉ phải nhân với 0.2. Từ đĩ cĩ khả năng
trƣờng hợp xuất hiện đĩ của A vẫn đƣợc gán nhãn là c1.
3.1.2. Ƣớc lƣợng xác suất
Mặc dù việc tính các xác suất nhƣ trong cơng thức (3), (6) và (7) khá đơn giản và
thuận tiện tuy vậy đĩ lại khơng phải là một lựa chọn tốt trong thực tế. Ta hay xem xét
cơng thức (3). Cơng thức này sẽ tính rất chính xác trong điều kiện ta cĩ một tập huấn
luyện cĩ đầy đủ các nghĩa và các nghĩa cĩ tỉ lệ hồn tồn giống trong thực tế. Tuy nhiên
điều này gần nhƣ là khơng thể cĩ đƣợc. Vì vậy cĩ thể xảy ra hai trƣờng hợp sau:
Tập huấn luyện thiếu một nghĩa trong thực tế:
Điều này hồn tồn cĩ thể xảy ra vì việc thu thập mẫu trong thực tế khơng thể
hồn tồn đầy đủ đƣợc và trong trƣờng hợp này giả sử nghĩa cịn thiếu là nghĩa c‟,
nhƣ vậy theo cơng thức (3) ta cĩ xác suất của nghĩa c‟ là:
𝑝 𝑐′ =
𝑐𝑜𝑢𝑛𝑡(𝑐′)
𝑁
= 0
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
12
Tức là nếu hàm phân lớp của ta gặp một trƣờng hợp trong thực tế cĩ nghĩa c‟
thì theo cơng thức (3) và cơng thức (1), xác suất của nĩ theo hàm phân lớp sẽ bằng
0, sẽ khơng cĩ một trƣờng hợp nào đƣợc gán nghĩa c‟ cả.
Tập huấn luyện chỉ cĩ một nghĩa:
Điều này ít xảy ra nhƣng khơng phải là khơng cĩ. Khi đĩ theo cơng thức (3)
xác suất của nghĩa đĩ sẽ bằng 1. Điều này đƣơng nhiên khơng đúng với thực tế.
Việc tính các xác suất trong các cơng thức (6) và (7) cũng gặp vấn đề gần tƣơng tự.
Để giải quyết một phần các trƣờng hợp này ngƣời ta đề xuất các biện pháp làm mịn khác
nhau. Các phƣơng pháp này khơng thể giúp tính tốn hồn tồn chính xác các xác suất
nhƣng chúng cho phép loại bỏ các trƣờng hợp xác suất bằng 0 hoặc bằng 1.
Sau đây là các phƣơng pháp làm mịn đƣợc mơ tả cụ thể để giải quyết các vấn đề gặp
phải với cơng thức (3). Những vấn đề trong việc tính các xác suất trong các cơng thức (6)
và (7) cĩ thể đƣợc giải quyết một cách tƣơng tự.
3.1.2.1. Ước lượng Laplace
Ƣớc lƣợng Laplace là một trong những ƣớc lƣợng xác suất đơn giản nhất. Nĩ giả sử
rằng mọi trƣờng hợp đều đã xảy ra ít nhất một lần.
𝑝 𝑐′ =
𝑐𝑜𝑢𝑛𝑡(𝑐′) + 1
𝑁 + 𝐵
Trong đĩ N là số các trƣờng hợp trong tập huấn luyện và B là số các nghĩa cĩ thể cĩ.
3.1.2.2. Ước lượng hợp lý cực đại
Một trong những điểm khơng tốt của Ƣớc lƣợng Laplace là nĩ tính xác suất quá lớn
cho các nghĩa chƣa từng xảy ra. Ƣớc lƣợng hợp lý cực đại hạn chế bớt một phần đĩ là
thay vì cộng 1 nhƣ Laplace, nĩ sẽ cộng 0.5 cụ thể nhƣ sau.
𝑝 𝑐′ =
𝑐𝑜𝑢𝑛𝑡 𝑐′ + 0.5
𝑁 + 0.5𝐵
3.1.2.3. Ước lượng Lidstone
Cả ƣớc lƣợng Laplace và ƣớc lƣợng hợp lý cực đại đều là trƣờng hợp đặc biệt của
ƣớc lƣợng Lidstone
𝑝 𝑐′ =
𝑐𝑜𝑢𝑛𝑡 𝑐′ + ∝
𝑁+ ∝ 𝐵
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
13
Trong đĩ ∝ là một số thƣờng đƣợc lấy trong đoạn [0, 1]. Ƣớc lƣợng Lidstone làm
việc tƣơng tự nhƣ ƣớc lƣợng hợp lý cực đại và ƣớc lƣợng Laplace. Nĩ chỉ tốt hơn ở chỗ
thay vì dùng hằng số cố định, nĩ sử dụng một số cĩ thể thay đổi đƣợc. Tuy vậy, chỗ yếu
của nĩ đĩ là làm sao để tính đƣợc số ∝ đĩ.
3.1.2.4. Ước lượng Good Turing
Ý tƣởng của ƣớc lƣợng Good Turing là ƣớc lƣợng các xác suất của những nghĩa
chƣa xuất hiện bằng các nghĩa đã xuất hiện một lần. Với Nc số các nghĩa đã xuất hiện c
lần, ta coi nhƣ nĩ đã xuất hiện c* lần
𝑐∗ = (𝑐 + 1)
𝑁𝑐 + 1
𝑁𝑐
Từ đĩ ta cĩ p(c)
𝑝 𝑐 =
𝑐 ∗
𝑁
3.2. Thuật tốn mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ
3.2.1. Giới thiệu
Thuật tốn Nạve Bayes là thuật tốn học khá hiệu quả. Tuy vậy, là một thuật tốn
học cĩ giám sát nên nhƣợc điểm lớn nhất của nĩ là nĩ yêu cầu bộ dữ liệu huấn luyện lớn
để cĩ thể đạt đƣợc độ chính xác cao trong quá trình phân lớp. Trong khi đĩ, mục tiêu của
khĩa luận này là tìm cách để giảm thiểu cơng sức của con ngƣời trong quá trình gán nghĩa
bằng tay cho từ. Ta chỉ muốn sử dụng một bộ dữ liệu gán nghĩa ban đầu nhỏ, mà nếu nhƣ
thế và cố dùng Nạve Bayes để gán nghĩa thì ta lại khơng đảm bảo đƣợc tính chính xác
của bộ dữ liệu đầu ra. Do vậy, ta cần phải cĩ một thuật tốn phối hợp với Nạve Bayes để
đảm bảo dùng bộ dữ liệu huấn luyện khơng lớn nhƣng độ chính xác vẫn ở mức yêu cầu.
Sau đây tơi sẽ trình bày một thuật tốn cho phép mở rộng bộ dữ liệu đầu vào nhỏ
ban đầu để cho kết quả đầu ra là một bộ dữ liệu lớn hơn, cho phép xử lý nhập nhằng nghĩa
của từ chính xác hơn. Phƣơng pháp này đã từng đƣợc Yakowsky mơ tả nhƣng ơng sử
dụng nĩ kèm với thuật tốn học máy danh sách quyết định[7]. Theo đĩ, ơng sử dụng một
danh sách các câu chứa từ đang cần gán nghĩa và những câu cĩ xác suất cao nhất sẽ đƣợc
xếp trên cùng, tiếp đĩ là các câu cĩ xác suất nhỏ hơn. Tuy vậy, thuật tốn danh sách quyết
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
14
định thực sự sẽ gặp vấn đề về tìm kiếm và sắp xếp khi danh sách quyết định trở nên lớn
hơn, mà điều này là điều ta đang mong muốn do mục đích là mở rộng đƣợc bộ dữ liệu.
Một điểm hạn chế khác nữa là danh sách quyết định chỉ dựa vào trƣờng hợp xuất hiện của
từ cĩ xác suất cao nhất, phù hợp với trƣờng hợp đang cần gán nghĩa (phù hợp ở đây là cĩ
những từ đồng xuất hiện giống với trƣờng hợp xuất hiện của từ đang cần gán nghĩa), do
vậy, khả năng phân lớp nghĩa của danh sách quyết định cũng bị hạn chế. Với những hạn
chế nĩi trên của thuật tốn danh sách quyết định, tơi muốn đƣa ra một cách sử dụng một
hàm phân lớp Nạve Bayes làm nhiệm vụ phân lớp nghĩa dựa vào các nhĩm từ đồng xuất
hiện của từ đang cần gán nghĩa, đĩng vai trị làm nhân cho thuật tốn mở rộng bộ dữ liệu
xử lý nhập nhằng để phần nào cải tiện đƣợc hiệu suất chung của tồn bộ hệ thống, đồng
thời tăng thêm độ chính xác cho bộ dữ liệu huấn luyện đƣợc mở rộng ở đầu ra.
3.2.2. Các bƣớc của thuật tốn
Dữ liệu đầu vào của thuật tốn là một bộ dữ liệu huấn luyện nhỏ cĩ các câu chứa từ
đang cần gán nghĩa và nghĩa của từ đĩ đã đƣợc gán trƣớc. Thứ hai, ta cần cĩ một bộ dữ
liệu chƣa đƣợc gán nghĩa của từ. Bộ dữ liệu này càng lớn thì khả năng mở rộng bộ dữ liệu
huấn luyện ban đầu càng cao. Dữ liệu đầu ra của thuật tốn là một bộ dữ liệu lớn, mở
rộng từ bộ dữ liệu nhỏ ban đầu. Đi vào chi tiết, thuật tốn cĩ các bƣớc nhƣ sau.
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
15
Hình 2: Sơ đồ các bước của phương pháp mở rộng bộ dữ liệu huấn luyện cho quá trình
xử lý nhập nhằng nghĩa của từ
Dữ liệu chƣa
gán nghĩa của
từ đang xét
Huấn luyện bộ phân lớp
Naive Bayes (3.2.2.2)
Bộ dữ liệu văn
bản
Chuẩn bị dữ liệu
(liệt kê, định
dạng) (3.2.2.1)
Phân lớp nghĩa cho từ
đang xét dựa vào nhĩm từ
đồng xuất hiện (3.2.2.3)
Dữ liệu chuẩn
chƣa định dạng
Gán lại nghĩa dựa vào đặc
tình một nghĩa trong một
văn bản (3.2.2.4 Bƣớc 1)
Dữ liệu gán
nghĩa của từ
đang xét (mở
rộng sau vịng
lặp đầu tiên)
Chuẩn bị dữ liệu
(định dạng)
(3.2.2.1)
Điều kiện dừng
(3.2.2.5)
Chƣa thỏa mãn điều
kiện dừng, tiếp tục
huấn luyện
Dữ liệu gán
nghĩa mở rộng
của từ đang xét
Loại bỏ những trƣờng hợp
cĩ xác suất quá thấp
(3.2.2.4 Bƣớc 2)
Dữ liệu
gán nghĩa
mở rộng
Dữ liệu gán
nghĩa ban đầu
của từ đang xét
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
16
3.2.2.1. Chuẩn bị dữ liệu.
Tại bƣớc này ta cần liệt kê và định dạng theo chuẩn nhất định tất cả các câu cĩ chứa
từ cần gán nghĩa cĩ trong bộ dữ liệu chƣa gán nghĩa và bộ dữ liệu đã gán nghĩa của từ.
Tuy liệt kê nhƣng ta vẫn phải cĩ phƣơng thức để bảo tồn quan hệ khơng thuộc hoặc cùng
thuộc một văn bản của các câu. Đồng thời, chọn luơn những từ cĩ thể cĩ khả năng đĩng
vai trị là những từ thuộc nhĩm từ đồng xuất hiện, hay là những từ đĩng vai trị làm văn
cảnh cho phép ta căn cứ vào để gán nghĩa cho từ đang cần gán nghĩa. Các phƣơng pháp
chọn từ thuộc nhĩm từ đồng xuất hiện tơi sẽ trình bày cụ thể ở phần sau của chƣơng này.
Tuy nhiên, cĩ một điểm cần lƣu ý là nếu ta chọn phƣơng pháp nào để lấy từ thuộc nhĩm
từ đồng xuất hiện thì ta phải thống nhất phƣơng pháp đĩ cho cả bộ dữ liệu đã gán nghĩa
và chƣa gán nghĩa để đạt đƣợc hiệu quả cao nhất.
3.2.2.2. Huấn luyện bộ phân lớp Nạve Bayes.
Từ dữ liệu đã đƣợc liệt kê, định dạng và chọn từ cĩ khả năng làm làm văn cảnh cho
từ cần gán nghĩa của bộ dữ liệu huấn luyện ban đầu đã cĩ từ bƣớc 3.2.2.1, ta tiến hành tạo
các bộ thuộc tính để huấn luyện cho bộ phân lớp Nạve Bayes. Theo đĩ mỗi từ trong
nhĩm từ đồng xuất hiện của từ đang cần gán nghĩa sẽ đi kèm một giá trị nào đĩ (giá trị
này tùy theo cách chuyển đổi các từ từ nhĩm các từ đồng xuất hiện sang tập các thuộc
tính) và mỗi cặp (từ, giá trị) đĩ trở thành một thuộc tính. Cách thức chuyển đổi thành
thuộc tính nhƣ thế nào cịn tùy thuộc vào loại thơng tin nào của từ trong nhĩm từ đồng
xuất hiện với từ đang cần gán nghĩa mà ta muốn giữ lại. Phƣơng thức chuyển đổi thành
các thuộc tính là một yếu tố cĩ ảnh hƣởng trực tiếp đến độ chính xác của quá trình phân
lớp nghĩa của từ nên cần xem xét một cách cẩn thận. Chi tiết cụ thể về các phƣơng thức
này sẽ đƣợc trình bày ở phần sau của chƣơng này. Khi đã cĩ đƣợc tập các thuộc tính, thì
từ các cơng thức đã nêu ở trên và các thuộc tính (từ, giá trị) cĩ mặt trong mỗi trƣờng hợp
xuất hiện của từ, ta ƣớc lƣợng đƣợc các xác suất hay các mẫu (model) cần thiết cho quá
trình phân lớp sau này (nhƣ đã trình bày ở phần 3.1).
3.2.2.3. Phân lớp nghĩa của từ.
Ta sử dụng bộ phân lớp Nạve Bayes đã đƣợc huấn luyện ở trên để tiến hành gán
nghĩa lại cho tồn bộ dữ liệu bao gồm cả dữ liệu đã gán nghĩa và chƣa gán nghĩa. Bộ phân
lớp sẽ tính xác suất của mỗi nghĩa trên mỗi trƣờng hợp xuất hiện của từ và chọn nghĩa cĩ
xác suất cao nhất. Việc gán nghĩa lại cả phần dữ liệu huấn luyện là nhằm để gán lại nghĩa
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
17
cho những từ đã cĩ thể bị gán nghĩa sai ban đầu hoặc trong quá trình lặp sau này (Bƣớc
3.2.2.4). Việc phân lớp nghĩa cho các trƣờng hợp xuất hiện của từ đang cần gán nghĩa
trong bƣớc này hồn tồn dựa vào các thuộc tính địa phƣơng hay các cặp (từ, giá trị) cĩ
đƣợc khi mã hĩa nhĩm từ đồng xuất hiện thành các thuộc tính. Đây chính là bƣớc thể hiện
rõ nhất ứng dụng của đặc tính một nghĩa trong một nhĩm từ đồng xuất hiện của từ trong
ngơn ngữ tự nhiên.
3.2.2.4. Gán lại nghĩa hoặc loại bỏ những trường hợp sai nhờ vào các thuộc tính tồn
cục.
Bƣớc này gồm cĩ hai bƣớc nhỏ sau:
Gán lại nghĩa dựa vào đặc tính một nghĩa trong một văn bản:
Bƣớc này dựa vào trƣờng hợp xuất hiện của từ đã đƣợc gán nghĩa cĩ xác suất
cao nhất trong một văn bản. Nhƣ đã trình bày ở trên, đặc tính một nghĩa trong một
văn bản của từ là một đặc tính quan trọng. Vì một từ thƣờng mang một nghĩa trong
một văn bản nên ta cĩ thể dựa vào đĩ để mở rộng bộ dữ liệu hoặc sửa lỗi gán nghĩa
cĩ trong dữ liệu. Những trƣờng hợp xuất hiện của từ đƣợc gán nghĩa cĩ xác suất quá
thấp thƣờng là khơng chính xác. Và khi đĩ khả năng nĩ mang nghĩa của trƣờng hợp
đƣợc gán nghĩa cĩ xác suất cao nhất của văn bản là cao hơn. Nhƣ vậy ta thấy rằng,
dựa vào đặc tính một nghĩa trong một văn bản của từ, ta vẫn cĩ thể gán nghĩa đƣợc
cho các trƣờng hợp xuất hiện của từ mà ta cịn chƣa cĩ thơng tin của chúng để gán
nghĩa hoặc là các thơng tin quá ít đến nỗi khơng thể gán nghĩa chính xác.
Loại bỏ các trƣờng hợp cĩ xác suất quá thấp:
Dựa vào trƣờng hợp xuất hiện của từ đƣợc gán nghĩa cĩ xác suất cao nhất
trong tồn bộ bộ dữ liệu để loại bỏ những trƣờng hợp từ đƣợc gán nghĩa cĩ xác suất
nằm dƣới một ngƣỡng nào đĩ (so với xác suất cao nhất kia). Chú ý rằng bộ dữ liệu ở
đây là bộ dữ liệu bao gồm cả dữ liệu gán nghĩa ban đầu và dữ liệu gán nghĩa mở
rộng từ bộ dữ liệu văn bản chƣa gán nghĩa ở đầu vào.
3.2.2.5. Bước lặp và điều kiện kết thúc
Các dữ liệu đƣợc gán nghĩa trong bƣớc 3.2.2.3 và đủ tiêu chuẩn để vƣợt qua bƣớc
3.2.2.4 sẽ trở thành dữ liệu huấn luyện cho bộ phân lớp và quá trình đƣợc lặp lại từ bƣớc
3.2.2.2.
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
18
Vịng lặp kết thúc khi sự thay đổi nhỏ hơn một số cho trƣớc nào đĩ. Chính xác nhất
thì ta sẽ phải quan sát sự thay đổi các tham số của hàm phân lớp nhƣ các xác suất về
nghĩa của từ, các xác suất của các thuộc tính, các xác suất điều kiện của thuộc tính và
từng nhãn lớp (nghĩa của từ đang cần gán nghĩa). Tuy vậy, với số thuộc tính lớn khoảng
vài trăm đến vài nghìn thì quan sát đƣợc sự thay đổi của chúng khơng phải việc đơn giản.
Một cách dễ hơn để xác định điều kiện kết thúc vịng lặp là quan sát sự thay đổi về
số lƣợng của tập dữ liệu mở rộng ở đầu ra. Vì khi bộ phân lớp đã ổn định, các tham số
khơng cịn thay đổi (hoặc thay đổi rất ít trong giới hạn nào đĩ) thì xác suất gán nghĩa cho
các trƣờng hợp xuất hiện trong tồn bộ dữ liệu sẽ khơng thay đổi. Khi đĩ, tập các trƣờng
hợp đƣợc gán nghĩa lại của từ vƣợt qua ngƣỡng cho phép sẽ khơng cịn thay đổi và kết
quả là số lƣợng các trƣờng hợp xuất hiện của từ trong bộ dữ liệu mở rộng ở đầu ra sẽ
khơng thay đổi nữa. Cách này tuy dễ hơn và nhanh hơn nhiều nhƣng lại thiếu chính xác
hơn so với cách trƣớc.
Ngồi cách thức xác định điều kiện dừng vịng lặp thì một điểm khác cần lƣu ý ở
đây là khơng nhất thiết tất cả các trƣờng hợp xuất hiện của từ trong bộ dữ liệu đã gán
nghĩa ban đầu đều sẽ xuất hiện trong tập dữ liệu đầu ra hoặc chúng cũng cĩ thể xuất hiện
nhƣng với nghĩa khác nghĩa đã đƣợc gán ban đầu. Điều này là do trong quá trình lặp cĩ
thể trƣờng hợp đã gán nghĩa đĩ khơng cịn đủ độ tin cậy (xác suất nhỏ hơn nghƣỡng cho
phép) nên đã bị loại ra khỏi tập dữ liệu cuối cùng hoặc đã bị gán nghĩa lại. Nhƣ vậy ta
thấy rằng với một bộ dữ liệu chƣa gán nghĩa lớn, đầy đủ các nghĩa của từ thì nếu trong tập
dữ liệu huấn luyện ban đầu cĩ một lƣợng nhỏ dữ liệu bị gán nghĩa sai thì trong quá trình
mở rộng dữ liệu, nĩ cĩ thể sẽ bị loại ra khỏi tập dữ liệu cuối cùng.
Cuối cùng, sau quá trình lặp lại nhiều lần việc gán nghĩa cho bộ dữ liệu hỗn hợp các
trƣờng hợp xuất hiện đƣợc gán nghĩa và chƣa đƣợc gán nghĩa của từ cần xét, ta đã thu
đƣợc một bộ dữ liệu lớn hơn đƣợc gán nghĩa đầy đủ của từ. Nhƣ vậy, ta đã giảm đƣợc rõ
rệt khối lƣợng cơng việc gán nghĩa thủ cơng trƣớc đây. Từ đĩ cho phép chúng ta cĩ đƣợc
các bộ dữ liệu lớn hơn trƣớc đây nhiều lần trong một thời gian ngắn hơn nhiều.
3.3. Lựa chọn từ cho nhĩm từ đồng xuất hiện trên quan điểm lý thuyết
Từ đặc tính của từ và của thuật tốn học bán giám sát lấy Nạve Bayes làm nhân,
đĩng vai trị phân lớp nghĩa của từ theo đặc tính một nghĩa trong một nhĩm từ đồng xuất
hiện trong mỗi vịng lặp, ta quay lại xem xét một cách lý thuyết các lựa chọn về cách chọn
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
19
những từ cho nhĩm từ đồng xuất hiện của từ đang cần gán nghĩa nhƣ thế nào. Ở đây cĩ
một số vấn đề nhƣ sau: thứ nhất là chọn từ ở khoảng cách nào; thứ hai là những từ đƣợc
chọn cĩ cần xử lý trƣớc khi đƣa vào xử lý nhập nhằng nghĩa hay khơng; thứ ba là lựa
chọn những thơng tin nào của chúng để chuyển hĩa thành thuộc tính, và thể hiện những
thơng tin đĩ nhƣ thế nào.
3.3.1. Khoảng cách lân cận của từ đang cần xử lý nhập nhằng nghĩa
Đầu tiên là vấn đề chọn đƣợc những từ nằm trong khoảng cách thích hợp với từ
đang cần gán nghĩa. Vì theo đặc tính một nghĩa trong một nhĩm từ đồng xuất hiện của từ,
các từ ở khoảng cách càng xa thì càng ít giá trị trong việc khẳng định nghĩa của từ. Vì thế
tơi chỉ lấy trong khoảng cách 5 từ so với vị trí của từ đang xét, tức là một nhĩm 10 từ gồm
5 từ trƣớc, 5 từ sau từ đang cần gán nghĩa sẽ đƣợc chọn vào nhĩm từ đồng xuất hiện của
nĩ.
3.3.2. Xử lý từ trong nhĩm từ đồng xuất hiện
Ngoại trừ các mạo từ, giới từ hay một số nhĩm từ chức năng khác, một từ thƣờng cĩ
nhiều thể hiện về mặt hình thái nhƣ số ít, số nhiều của danh từ, hay các động từ cĩ các
dạng khác nhau khi cĩ chủ ngữ là số ít hoặc ở các thời khác nhau … Vì vậy, một câu hỏi
cần đặt ra là cĩ tiến hành chuyển đổi về gốc nguyên thể của từ hay khơng. Cần xác định
rõ là chuyển đổi về từ nguyên thể ở đây là quá trình loại bỏ các hậu tố sao cho từ đƣợc
cho trở về dạng nguyên thể. Ví dụ nhƣ:
Generations => generation
Letters => letter
Adding => add
Easier => easy
…
Việc này cho phép ta tránh xử lý những trƣờng hợp từ bị thay đổi do các yêu cầu về
ngữ pháp của ngơn ngữ nhƣng thực chất nĩ chỉ là một từ. Tức là nghĩa của nĩ về cơ bản
khơng đổi. Mà thực chất nghĩa cơ bản của từ mới là yếu tố giúp xác định văn cảnh của
câu. Việc này cĩ hai lợi ích nhƣ sau.
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
20
Lợi ích thứ nhất của việc này đĩ là ta giảm đƣợc số lƣợng các từ thuộc nhĩm từ
đồng xuất hiện (hay đúng hơn là giảm hiện tƣợng lặp từ) tức là giảm đƣợc số lƣợng các
thuộc tính (các cặp (từ số ít, giá trị), (từ số nhiều, giá trị), ... sẽ chỉ cịn là 1 thuộc tính (từ
nguyên thể, giá trị)). Điều này cho phép tăng tốc độ của quá trình huấn luyện và gán nghĩa
của Nạve Bayes và tăng tốc độ hội tụ của thuật tốn xử lý nhập nhằng nghĩa của từ bán
giám sát.
Lợi ích thứ hai là cũng theo giả định về tính độc lập của Nạve Bayes, sử dụng quá
nhiều biến thể của từ (coi là từ chứa nội dung) trong nhĩm từ đồng xuất hiện cĩ thể làm
giảm hiệu quả phân lớp về mặt lý thuyết. Cụ thể là, giả sử nhƣ ta cĩ các biến thể khác
nhau w, w‟, w‟‟ của từ W và chúng đều đƣợc chọn để đƣa vào nhĩm từ đồng xuất hiện
phân lớp cho một từ A cĩ nghĩa c ở các trƣờng hợp xuất hiện khác nhau của A nhƣng khi
chuyển hĩa thành thuộc tính chúng đều cĩ giá trị x thuộc X (tức là thành các cặp (w, x),
(w‟,x), (w‟‟,x) (Tập giá trị X của x đƣợc xác định tùy thuộc vào cách thức chuyển đổi
thành thuộc tính). Vì chỉ là những biến thể của W nên chúng đều cĩ nghĩa cW nào đĩ. Giả
sử nhƣ tính chung tất cả các biến thể thì W cĩ tới 20% là thuộc nhĩm từ đồng xuất hiện
của A cùng đi kèm với giá trị x, tuy nhiên tính riêng từng biến thể thì w cĩ 10%, w‟ cĩ
6% và w‟‟ cĩ 4%. Nhƣ vậy, khi phân lớp, thay vì xác suất ƣớc lƣợng của A cĩ nghĩa c sẽ
nhân với 0.2 (là xác suất 𝑝(𝑊𝑥 |𝑐)) (Wx là chỉ thuộc tính với cặp (W,x)) thì do W bị chia
thành các biến thể và do giả định độc lập của Nạve Bayes mà khi này con số sẽ là 0.1
(𝑝 𝑤𝑥 𝑐 ), hoặc 0.06 (𝑝 𝑤′𝑥 𝑐 ), hoặc 0.04 (𝑝 𝑤′′𝑥 𝑐 ) lần lƣợt cho các trƣờng hợp từ A
xuất hiện với (w, x), (w‟, x), (w‟‟, x). Nhƣ vậy, xác suất phân lớp sẽ giảm đáng kể trong
trƣờng hợp để nguyên những biến thể hình thái của các từ trong nhĩm từ đồng xuất hiện
so với trƣờng hợp chúng ta chuyển những từ này về dạng nguyên thể.
Tĩm lại, về mặt lý thuyết, chuyển từ về dạng nguyên thể cịn cĩ thể giúp tăng thêm
độ chính xác cho quá trình phân lớp.
3.3.3. Chuyển đổi từ trong nhĩm từ đồng xuất hiện thành thuộc tính của bộ phân lớp
Một cách chuyển đổi đơn giản nhất cho một thuộc tính từ một từ thuộc nhĩm từ
đồng xuất hiện đĩ là theo dạng nhị phân. Theo cách này, nếu từ wi xuất hiện trong nhĩm
từ đồng xuất hiện của một trƣờng hợp xuất hiện của từ c đang cần gán nghĩa thì ta cĩ
thuộc tính (wi, 1), và ngƣợc lại (wi, 0). Nhƣ vậy, cách chuyển đổi này cho phép thể hiện
đƣợc thơng tin từ wi cĩ xuất hiện trong nhĩm từ đồng xuất hiện hay khơng. Tuy vậy, nếu
Chƣơng 3: Các thuật tốn trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng
21
sử dụng cách này thì sẽ xảy ra rất nhiều trƣờng hợp nhập nhằng do cĩ thể cĩ nhiều nhĩm
từ đồng xuất hiện của từ đƣợc gán nghĩa khác nhau nhƣng cùng cĩ các từ giống nhau và
chỉ khác về vị trí của các từ trong nhĩm. Khi đĩ theo cách chuyển đổi này, tất cả các
nhĩm này đều cĩ cùng một bộ thuộc tính. Điều này sẽ hạn chế khả năng phân lớp chính
xác của Nạve Bayes.
Cách chuyển đổi thứ hai khắc phục nhƣợc điểm của cách chuyển đổi theo dạng nhị
phân, đĩ là, ta sẽ căn cứ theo khơng chỉ sự xuất hiện của từ mà cịn theo cả vị trí của từ để
xác định các thuộc tính. Cụ thể là nếu các từ xuất hiện trong nhĩm từ đồng xuất hiện của
từ c đang cần gán nghĩa theo thứ tự:
w1 w2 w3 w4 w5 c w6 w7 w8 w9 w10
Thì ta sẽ cĩ bộ thuộc tính: (w1, -5), (w2, -4), …, (w10, 5)
Cĩ thể thấy rằng với cách chuyển đổi thành thuộc tính nhƣ vậy, ta đã bảo tồn đƣợc
thơng tin về vị trí của các từ trong nhĩm từ đồng xuất hiện và khơng cịn sự nhập nhằng
giữa các nhĩm từ đồng xuất hiện cĩ cùng các từ giống nhau nhƣng khác về vị trí các từ.
Ngồi hai cách chuyển đổi từ trong nhĩm từ đồng xuất hiện thành thuộc tính nhƣ ở
trên thì ta cịn rất nhiều cách mã hĩa thuộc tính khác nữa cho phép giữ đƣợc nhiều thơng
tin hơn nữa của các từ đồng xuất hiện với từ cần gán nghĩa ví dụ nhƣ các thơng tin về từ
loại chẳng hạn. Sử dụng đƣợc thêm thơng tin của từ loại sẽ giúp tăng thêm rất nhiều độ
chính xác cho bộ phân lớp Naive Bayes. Tuy vậy, đề tài khĩa luận này khơng tập trung
vào Naive Bayes và cách thức để hàm phân lớp này đạt đƣợc độ chính xác cao nhất mà
chủ yếu đặt trọng tâm vào nghiên cứu, khảo sát phƣơng pháp mở rộng bộ dữ liệu. Chính
vì vậy tơi muốn giữ việc chọn thuộc tính ở mức đơn giản cho phép.
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
22
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
4.1. Dữ liệu đầu vào
Nhƣ đã trình bày ở phần thuật tốn, phƣơng pháp mở rộng dữ liệu đƣợc trình bày
trong khĩa luận này là một phƣơng pháp học máy bán giám sát. Phần nhân của phƣơng
pháp này là một thuật tốn học cĩ giám sát Nạve Bayes. Vì vậy, ta cần thiết phải cĩ một
lƣợng dữ liệu chuẩn (tức là đã gán nghĩa cho mỗi trƣờng hợp xuất hiện của từ đang cần
gán nghĩa) dùng để huấn luyện cho Nạve Bayes trong giai đoạn đầu. Ngồi ra ta cịn cần
một bộ dữ liệu văn bản lớn khác chƣa đƣợc gán nghĩa dùng trong quá trình mở rộng bộ dữ
liệu ban đầu thành bộ dữ liệu đầu ra. Sau đây tơi sẽ trình bày cụ thể về định dạng của hai
bộ dữ liệu đã gán nghĩa và chƣa gán nghĩa cho các trƣờng hợp xuất hiện của từ đang cần
gán nghĩa đƣợc sử dụng trong thí nghiệm.
4.1.1. Dữ liệu chuẩn đã gán nghĩa
Dữ liệu chuẩn sử dụng trong khĩa luận này là bộ dữ liệu cho các từ chứa nội dung
hay các từ mang nghĩa của câu và văn bản. Trong đĩ các trƣờng hợp xuất hiện của mỗi từ
đƣợc gộp vào cùng một file với tên là từ đang cần gán nghĩa cộng với phần đuơi “.pos”.
Từ file đĩ, ta cĩ thể lấy đƣợc các thơng tin về nghĩa của từ, các tên của văn bản nguồn
chứa trƣờng hợp từ mang nghĩa đĩ và các câu chứa từ đĩ đã đƣợc phân loại từ loại theo
chuẩn Penn Treebank . Cụ thể một đoạn văn bản chứa 1 trƣờng hợp từ “line” cĩ nghĩa
“cord” đƣợc định dạng nhƣ sau:
the/DT company/NN argued/VBD that/IN its/PRP$ foreman/NN needn/NN 't/NN
have/VBP told/VBN the/DT worker/NN not/RB to/TO move/VB the/DT plank/NN to/TO
which/WDT his/PRP$ lifeline/NN was/VBD tied/VBN because/IN ''/'' that/WDT
comes/VBZ with/IN common/JJ sense/NN ./. ''/''
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
23
the/DT commission/NN noted/VBD ,/, however/RB ,/, that/IN dellovade/NNP hadn/NN
't/NN instructed/VBD its/PRP$ employees/NNS on/IN how/WRB to/TO secure/VB
their/PRP$ lifelines/NNS and/CC didn/VBD 't/NN heed/NN a/DT federal/JJ
inspector/NN 's/POS earlier/JJR suggestion/NN that/IN the/DT company/NN install/VB
special/JJ safety/NN lines/NNS inside/IN the/DT a-frame/NNP structure/NN
it/PRP was/VBD building/VBG ./.
Trong đĩ id là thơng tin nhận dạng của từ, senseid chứa nghĩa của từ, và nằm giữa
hai tag và là các câu chứa từ đang cần gán nghĩa. Từ đang cần gán
nghĩa đứng sau tag khi đứng cùng trong câu. Giữa các từ ngăn cách với nhau bởi
1 ký tự trống và trong một từ, phần từ và phần thơng tin từ loại ngăn cách với nhau bởi ký
tự “/”
4.1.2. Dữ liệu chƣa gán nghĩa – BNC
BNC là viết tắt của British National Corpus. Đây là một bộ văn bản lớn gồm cĩ trên
100 triệu từ thuộc cả ngơn ngữ nĩi và viết, đƣợc tập hợp từ nhiều nguồn. Phiên bản dùng
trong khĩa luận là phiên bản mới nhất BNC XML, xuất bản năm 2007 [8].
Khoảng 90% bộ văn bản là những văn bản viết, bao gồm các tờ báo của các vùng và
quốc gia, các tạp chí chuyên nghành và tạp chí cho các lứa tuổi với các sở thích khác
nhau, các sách học thuật và các tiểu thuyết nổi tiếng, các bức thƣ, các bài luận của các
trƣờng học và nhiều thể loại khác[8].
Ngơn ngữ nĩi chiếm khoảng 10% cịn lại trong bộ văn bản BNC. Nĩ gồm những
bản ghi lại các cuộc nĩi chuyện của những ngƣời tình nguyện thuộc nhiều lứa tuổi, ngành
nghề, tơn giáo, tầng lớp xã hội khác nhau[8].
Bộ BNC XML đƣợc định dạng theo chuẩn XML 1.0, cung cấp nhiều thơng tin về
thể loại của văn bản, các ngắt câu, ngắt từ, các thơng tin về từ loại, về dạng nguyên thể
của từ. Sau đây là một đoạn trong một file xml của BNC:
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
24
CHAPTER
1
„
But
,
‟
said
Owen
,
...
Trong đĩ tag biểu thị đây là một đoạn văn bản
viết thuộc loại tiểu thuyết. là biểu thị của trang 5. cho biết đây là một
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
25
chƣơng mới. cho biết đây là tên chƣơng. cĩ ý nghĩa là một đoạn văn. Các tag
và là các từ và các dấu.
4.2. Dữ liệu sử dụng trong quá trình chạy chƣơng trình
Khi chạy bộ xử lý nhập nhằng nghĩa của từ, ta cần chuẩn hĩa bộ dữ liệu đã gán
nghĩa và chƣa gán nghĩa. Ở mức đơn giản nhất ta cũng cần loại bỏ các dấu câu và từ đang
cần gán nghĩa để lấy ra những từ thuộc nhĩm từ đồng xuất hiện. Ở mức cao hơn, để kiểm
chứng lý thuyết về việc chuyển từ thuộc nhĩm từ đồng xuất hiện với từ đang cần gán
nghĩa về dạng từ nguyên thể, ta cịn cần tiến hành biến đổi dữ liệu ban đầu nhiều hơn nữa.
Một số trƣờng hợp cá biệt, nếu vì lý do nào đĩ mà dữ liệu ban đầu chƣa đƣợc gán nhãn từ
loại thì ta cịn phải chạy thêm các thuật tốn phân lớp thơng tin từ loại. Do vậy, dữ liệu
đầu vào tỏ ra kém hiệu quả nếu ta sử dụng trực tiếp nĩ trong quá trình chạy và kiểm thử
bộ xử lý nhập nhằng nghĩa của từ. Vì thế ta cần phải chuyển nĩ về dạng thích hợp hơn,
tránh phải chuẩn hĩa đi chuẩn hĩa lại dữ liệu trong quá trình mở rộng bộ dữ liệu xử lý
nhập nhằng nghĩa của từ đang cần gán nghĩa.
Định dạng của dữ liệu sử dụng giống hồn tồn với dữ liệu chuẩn và chỉ thêm ngay
sau tag một tag chứa câu đã đƣợc
chuẩn hĩa. Với các văn bản thuộc bộ dữ liệu chƣa gán nghĩa thì phần senseid trong mỗi
trƣờng hợp từ sẽ cĩ giá trị là “Unknown”
Dữ liệu sau khi chuẩn hĩa đƣợc lƣu lại vào một thƣ mục gồm file chứa dữ liệu huấn
luyện (và các file kiểm tra nếu cĩ) cùng với một thƣ mục “Data” chứa tồn bộ file chứa
các trƣờng hợp của từ thuộc bộ dữ liệu chƣa đƣợc gán nghĩa. Các trƣờng hợp thuộc cùng
một văn bản sẽ đƣợc chứa vào cùng một file.
4.3. Định dạng file kết quả thực nghiệm
File chứa kết quả thực nghiệm đƣợc sinh ra trong quá trình chạy bộ cơng cụ khảo sát
phƣơng pháp mở rộng dữ liệu. Từ file này ta sẽ đánh giá đƣợc lý thuyết đƣa ra cĩ phù hợp
với kết quả thực tế hay khơng. Ví dụ một file thử nghiệm với từ “serve” cĩ dạng nhƣ sau:
Chƣơng 4: Cấu trúc và định dạng của dữ liệu
26
Result file InterestTest3/interest_2.result
Change of output instance: 31
Number of Loop: 13
Output File: D:\KhoaLuan\Code\InterestTest3\interest.out with 34366 instances
Test 1: Correct per Total: 173/235
Test 2: Correct per Total: 1049/1418
Theo đĩ, dịng đầu tiên là dịng chỉ tên của file test.
Dịng thứ hai là mức độ thay đổi cuối cùng về số lƣợng các trƣờng hợp đƣợc đƣa ra,
số này cĩ thể là dƣơng hay âm tùy thuộc vào số lƣợng tăng hay giảm.
Dịng thứ ba chỉ số vịng lặp đã lặp đến khi hàm mở rộng dữ liệu huấn luyện hội tụ.
Dịng thứ tƣ là đƣờng dẫn đến file dữ liệu đầu ra và số lƣợng các trƣờng hợp xuất
hiện của từ cĩ trong đĩ.
Hai dịng cuối cùng là độ chính xác của quá trình thực nghiệm, đo bằng số trƣờng
hợp phân lớp đúng với nghĩa đƣợc gán ban đầu của file dữ liệu chuẩn trên tổng số trƣờng
hợp trong hai file kiểm tra.
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa
27
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ
liệu xử lý nhập nhằng nghĩa.
5.1. Bộ cơng cụ NLTK
NLTK (Natural Language Toolkit) là một bộ các thƣ viện và chƣơng trình phong
phú viết bằng ngơn ngữ Python. Nĩ bao gồm rất nhiều mơ đun, cho phép thực hiện rất
nhiều cơng việc thƣờng gặp trong xử lý ngơn ngữ tự nhiên nhƣ đọc một bộ văn bản, xử lý
chuỗi ký tự, phát hiện những nhĩm từ đồng xuất hiện đi cùng nhau, việc gán nhãn từ loại,
phân lớp, v.v. [2][10]
Để phục vụ cho việc nghiên cứu, khảo sát, chứng minh các lý thuyết trong đề tài
khĩa luận, tơi đã dùng một số mơ đun của NLTK nhƣ:
Nltk.corpus.reader.bnc: cho phép đọc bộ dữ liệu BNC.
Nltk.classify.naivebayes: cung cấp bộ phân lớp Nạve Bayes làm phần nhân cho
thuật tốn mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa của từ.
Nltk.tag: cung cấp bộ gán nhãn từ loại cho những văn bản thiếu thơng tin từ loại.
Nltk.stem.wordnet: cung cấp bộ chuyển đổi từ về dạng từ nguyên thể.
5.2. Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập
nhằng nghĩa của từ.
Đây là một cơng cụ do tơi lập trình bằng ngơn ngữ Python với mục đích kiểm tra
trong thực tế phƣơng pháp mở rộng bộ dữ liệu cĩ cho lại hiệu quả tốt khơng. Vì đƣợc làm
ra nhằm mục đích nghiên cứu nên bộ cơng cụ này cĩ những đặc tính sau đây:
Tính tùy biến cao:
Vì để nghiên cứu đƣợc thì việc tùy biến đƣợc các thơng số nhƣ mức độ hội tụ
của hàm mở rộng dữ liệu, hay nhƣ cĩ tùy chọn cĩ chuyển các từ trong nhĩm từ đồng
xuất hiện về dạng nguyên thể hay khơng, là một điều bắt buộc phải cĩ để cĩ thể
khảo sát đƣợc kỹ càng các lý thuyết đã nêu ở trên và so sánh các kết quả giữa chúng.
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa
28
Tính linh hoạt trong sử dụng:
Bộ cơng cụ này cĩ tính linh hoạt cao trong việc sử dụng tức là nĩ cho phép
dùng kết hợp các mơ đun theo một cách tự do nhất. Điều này cho phép thiết kế nhiều
thử nghiệm khác nhau.
Sau đây là những phần chính của bộ cơng cụ cĩ liên quan tới việc bố trí thử nghiệm
và kiểm tra kết quả độ chính xác, các phần khác khơng liên quan trực tiếp sẽ chỉ đƣợc
trình bày sơ lƣợc:
5.2.1. Các cơng cụ chuẩn bị dữ liệu
Hàm splitTrainTestSet(labeledDataFile, trainPerTotalRate, testPerTotalRate):
hàm này nhằm chia file dữ liệu chuẩn ban đầu thành hai file dữ liệu huấn luyện và
kiểm tra. Sau khi chia các file huấn luyện và kiểm tra sẽ nằm cùng thƣ mục với file
dữ liệu chuẩn, trong đĩ, file huấn luyện và file kiểm tra cĩ tên là tên của file dữ liệu
chuẩn và phần mở rộng lần lƣợt là “.train” và “.test”. Các tham số của hàm này là:
o labeledDataFile là đƣờng dẫn tới file dữ liệu chuẩn.
o trainPerTotalRate và testPerTotalRate là tỉ lệ của các trƣờng hợp đƣợc đƣa
vào file huấn luyện và kiểm tra so với tổng số các trƣờng hợp cĩ trong file dữ
liệu chuẩn.
Hàm createFormatedData(trainDataPath, testDataPath, test2DataPath,
corporaPath, newDataPath, nameOfCorpora, labeledWord, needLemmatizing):
hàm này nhằm tạo dữ liệu cho các thử nghiệm. Trong đĩ, các dữ liệu huấn luyện ban
đầu, dữ liệu kiểm tra và dữ liệu từ bộ văn bản đều đƣợc chuyển đổi sang dạng định
dạng quy định ở phần 4.2. Theo đĩ, việc chuyển đổi các từ thuộc nhĩm từ đồng xuất
hiện sang dạng nguyên thể hay khơng sẽ đƣợc thống nhất giữa các dữ liệu ban đầu
và bộ dữ liệu. Các tham số của hàm cĩ ý nghĩa nhƣ sau:
o trainDataPath: đƣờng dẫn đến file huấn luyện (kết quả từ hàm
splitTrainTestSet)
o testDataPath, test2DataPath: đƣờng dẫn đến các file kiểm tra (kết quả từ
hàm splitTrainTestSet và genRandomTestFile)
o corporaPath: đƣờng dẫn đến bộ dữ liệu văn bản chƣa gán nghĩa của từ (ở
đây là BNC)
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa
29
o newDataPath: đƣờng dẫn cho một thƣ mục mới (chƣa tạo) chứa tồn bộ các
dữ liệu đƣợc chuyển đổi.
o nameOfCorpora: tên của tập dữ liệu văn bản chƣa gán nghĩa.
o labeledWord: từ đang cần đƣợc gán nghĩa để mở rộng bộ xử lý nhập nhằng.
o needLemmatizing: nhận giá trị True hoặc False. Nếu là True thì các từ thuộc
nhĩm từ đồng xuất hiện từ sẽ đƣợc chuyển đổi về dạng nguyên thể, và ngƣợc
lại với False thì các từ đĩ sẽ đƣợc giữ nguyên.
Hàm genRandomTestFile(standardLabeledFile, outputFilePath, trainFile,
testPerTotalRate): hàm này cho phép sinh lại file test. Trong đĩ:
o standardLabeledFile là đƣờng dẫn đến file dữ liệu chuẩn.
o outputFilePath là đƣờng dẫn đến file mới sẽ đƣợc tạo (thƣờng là vào thẳng
thƣ mục chứa dữ liệu kiểm tra)
o trainFile là đƣờng dẫn đến file huấn luyện đã đƣợc tạo.
o testPerTotalRate là tỉ lệ giữa số lƣợng các trƣờng hợp trong tập kiểm tra và
tồn bộ tập dữ liệu chuẩn.
5.2.2. Hàm cơng cụ test
Hàm testWithFormatedData(formatedDataPath, labeledWord,
approxUnchangeFeature, rateWithMaxInFile, rateWithMaxInCorpora)
Hàm này đĩng vai trị rất quan trọng khi khảo sát, kiểm tra, đánh giá. Nĩ cho phép ta
tùy chỉnh mức giới hạn thay đổi về số lƣợng các trƣờng hợp từ ở file đầu ra. Tức là tùy
chỉnh độ hội tụ của hàm mở rộng bộ dữ liệu huấn luyện bằng tham số approx Unchange -
-Feature.
Với tham số rateWithMaxInFile, hàm này cho phép ta chỉnh ngƣỡng mà nếu thấp
hơn ngƣỡng đĩ thì trƣờng hợp trong file sẽ bị gán nghĩa bằng nghĩa của trƣờng hợp cùng
trong file cĩ xác suất lớn nhất. Đây là một tỉ lệ, nghĩa là nếu xác suất lớn nhất là
maxFileProb thì ngƣỡng sẽ bằng (maxFileProb * rateWithMaxInFile).
Tham số rateWithMaxInCorpora lại cho ta chỉnh ngƣỡng theo xác suất lớn nhất của
tồn bộ bộ dữ liệu. Những trƣờng hợp nào cĩ xác suất nhỏ hơn ngƣỡng
(maxCorporaProb * rateWithMaxInCorpora) sẽ khơng đƣợc đƣa vào tập dữ liệu để huấn
luyện tiếp nếu đĩ là khi đang trong vịng lặp. Nếu vịng lặp đã kết thúc trƣờng hợp nào cĩ
xác suất nhỏ hơn ngƣỡng thì sẽ khơng cĩ mặt ở file dữ liệu đầu ra.
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa
30
formatedDataPath là đƣờng dẫn đến thƣ mục cĩ chứa dữ liệu đã đƣợc định dạng
theo định dạng đƣợc định nghĩa ở mục 4.2. Thƣ mục này chính là thƣ mục newDataPath,
đƣợc tạo từ hàm createFormatedData đã trình bày ở mục 5.2.1
labeledWord là từ đang đƣợc gán nghĩa, hay là từ đang đƣợc xử lý nhập nhằng
Sau khi hàm này chạy xong thì nĩ sẽ ghi kết quả của cuộc thử nghiệm ra các file
word_1_1.result, word_1_2.result, word_2.result vào thƣ mục formatedDataPath, trong
đĩ word là từ đang đƣợc xử lý nhập nhằng (labeledWord).
o Word_1_1.result chứa kết quả thực nghiệm khi chỉ huấn luyện hàm phân
lớp bằng bộ huấn luyện đƣợc trích từ bộ dữ liệu chuẩn ban đầu và kiểm thử
bằng file kiểm tra thứ nhất.
o Word_1_2.result chứa kết quả thực nghiệm khi chỉ huấn luyện hàm phân
lớp bằng bộ huấn luyện đƣợc trích từ bộ dữ liệu chuẩn ban đầu và kiểm thử
bằng file kiểm tra thứ hai.
o Word_2.result chứa kết quả thực nghiệm khi huấn luyện hàm phân lớp bằng
bộ dữ liệu đã đƣợc mở rộng bằng thuật tốn đã nêu ở trên và kiểm thử bằng cả
hai file kiểm tra.
Chi tiết về định dạng của các file kết quả đƣợc định nghĩa ở phần 4.3, cách thực hiện
thí nghiệm cụ thể đƣợc trình bày trong chƣơng 6.
5.2.3. Các hàm phân lớp và mở rộng bộ dữ liệu
Các hàm phân lớp và mở rộng bộ dữ liệu đĩng vai trị trung tâm trong tồn bộ bộ
cơng cụ. Chúng quyết định đến độ chính xác của bộ dữ liệu đầu ra cĩ nghĩa là quyết định
tới sự thành cơng hay thất bại của phƣơng pháp mở rộng bộ dữ liệu cho quá trình xử lý
nhập nhằng nghĩa của từ.
Trong đĩ, hàm classifyFormatedCorporaWithNaiveBayes là hàm phân lớp
NaiveBayes. Nĩ chịu trách nhiệm chính trong việc gán đƣợc nghĩa chính xác trong mỗi
vịng lặp của thuật tốn bằng giả thiết một nghĩa trong một nhĩm từ.
Hàm extendOneLabeledDataSetWithFormatedCorpora là hàm minh họa cho tồn
bộ thuật tốn của phƣơng pháp mở rộng bộ dữ liệu huấn luyện đã đề xuất, áp dụng đặc
tính một nghĩa trong một văn bản để mở rộng và chính xác hĩa bộ dữ liệu đầu ra. Nĩ
đĩng vai trị chính yếu trong việc tạo đƣợc một bộ dữ liệu đầu ra chính xác nhất.
Chƣơng 5: Cơng cụ khảo sát, kiểm tra phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa
31
Thuật tốn của hai hàm trên đã đƣợc nêu chi tiết trong chƣơng 3.
5.2.4. Các hàm cơng cụ khác
Cĩ rất nhiều các hàm cơng cụ khác trong bộ cơng cụ tơi đã xây dựng nhƣ các hàm
đọc dữ liệu đã định dạng và chƣa định dạng, các hàm chịu trách nhiệm ghi ra file những
trƣờng hợp xuất hiện của từ, các hàm chuyển đổi giữa các file định dạng và khơng định
dạng ... Tuy vậy vai trị của chúng chỉ là phụ trợ và khơng liên quan nhiều đến các thực
nghiệm của ta.
Chƣơng 6: Kết quả thực nghiệm
32
Chƣơng 6: Kết quả thực nghiệm
Trong các chƣơng trƣớc tơi đã trình bày cụ thể về phƣơng pháp mở rộng bộ dữ liệu
huấn luyện cho quá trình xử lý nhập nhằng cũng nhƣ các cách chọn lựa và chuyển đổi
những từ cùng xuất hiện với từ đang cần gán nghĩa thành những thuộc tính để phân lớp
nghĩa cho các trƣờng hợp xuất hiện của từ này. Tuy vậy, đĩ mới chỉ là lý thuyết, ta cần
chứng minh lý thuyết này bằng các thực nghiệm cụ thể.
6.1. Dữ liệu thực nghiệm
Tơi tiến hành thực nghiệm trên 4 file dữ liệu chuẩn của 4 từ: “line”, “hard”,
“interest”, và “serve”. Trong 4 file dữ liệu này, từng trƣờng hợp xuất hiện của từ đã đƣợc
xác định nghĩa cụ thể. Định dạng của 4 file này đƣợc định nghĩa trong phần 4.1.1.
Thống kê cụ thể về số lƣợng các trƣờng hợp từ xuất hiện trong file, các nghĩa và số
lƣợng các trƣờng hợp trong từng nghĩa, ta cĩ các bảng số liệu sau đây.
Nghĩa Số lƣợng
Cord 373
Division 374
Product 2217
Text 404
Phone 429
Formation 349
Tổng: 4146
Bảng 1: Các nghĩa và số lƣợng từ tƣơng ứng của từ “line” trong dữ liệu chuẩn
Chƣơng 6: Kết quả thực nghiệm
33
Nghĩa Số lƣợng
HARD1 3455
HARD2 502
HARD3 376
Tổng: 4333
Bảng 2: Các nghĩa và số lƣợng từ tƣơng ứng của từ “hard” trong dữ liệu chuẩn
Nghĩa Số lƣợng
Interest_1 361
Interest_2 11
Interest_3 66
Interest_4 178
Interest_5 500
Interest_6 1252
Tổng: 2368
Bảng 3: Các nghĩa và số lƣợng từ tƣơng ứng của từ “interest” trong dữ liệu chuẩn
Nghĩa Số lƣợng
SERVE2 853
SERVE6 439
SERVE10 1814
SERVE12 1272
Tổng: 4378
Bảng 4: Các nghĩa và số lƣợng từ tƣơng ứng của từ “serve” trong dữ liệu chuẩn
Về bộ dữ liệu văn bản dùng trong quá trình mở rộng bộ dữ liệu huấn luyện, tơi sử
dụng bộ dữ liệu văn bản BNC nhƣ đã giới thiệu trong phần 4.1.2. Số lƣợng những trƣờng
hợp các từ “line”, “hard”, “serve”, “interest” xuất hiện trong BNC đƣợc thống kê trong
bảng số liệu sau.
Chƣơng 6: Kết quả thực nghiệm
34
Từ Số lƣợng
Line 33392
Hard 23571
Serve 15313
Interest 35863
Bảng 5: Số lƣợng các từ “line”, “hard”, “serve”, “interest” trong BNC
6.2. Thí nghiệm 1
Mục đích thực hiện thí nghiệm là để trả lời hai câu hỏi:
Liệu dữ liệu đƣợc mở rộng bằng phƣơng pháp đã nêu cĩ đủ độ tin cậy để cĩ thể
dùng để huấn luyện làm tăng độ chính xác cho các hàm phân lớp xử lý nhập nhằng
nghĩa của từ hay khơng.
Liệu việc chuyển đổi về từ nguyên thể cĩ làm tăng độ chính xác cho quá trình xử
lý nhập nhằng ngữ nghĩa, từ đĩ làm tăng độ chính xác của bộ dữ liệu đầu ra hay
khơng.
6.2.1. Bố trí thí nghiệm
Với mỗi từ ta chia tỉ lệ số lƣợng các trƣờng hợp xuất hiện của từ trong file dữ liệu
chuẩn thành tập huấn luyện và các tập kiểm tra theo các tỉ lệ khác nhau. Cụ thể tập
huấn luyện cĩ tỉ lệ 0.3, tập kiểm tra thứ nhất cĩ tỉ lệ 0.1 và tập kiểm tra thứ hai cĩ tỉ
lệ 0.6 so với tồn bộ tập dữ liệu chuẩn. Trong đĩ:
o Tập huấn luyện đƣợc chọn ngẫu nhiên trong tập dữ liệu chuẩn nhƣng vẫn
đảm bảo tỉ lệ giữa số lƣợng các trƣờng hợp mang các nghĩa khác nhau của từ
nhƣ trong tập dữ liệu chuẩn và đảm bảo khơng cĩ trƣờng hợp xuất hiện của từ
nào đƣợc chọn 2 lần.
o Tập kiểm tra đƣợc chọn nhƣ với tập huấn luyện. Tuy nhiên, những trƣờng
hợp của tập kiểm tra và tập huấn luyện đƣợc đảm bảo khơng trùng nhau.
Mỗi lƣợt thực nghiệm bao gồm 2 giai đoạn:
o Giai đoạn 1: khơng chuyển các từ thuộc nhĩm từ đồng xuất hiện về từ
nguyên thể
o Giai đoạn 2: chuyển các từ thuộc nhĩm từ đồng xuất hiện về từ nguyên thể
Chƣơng 6: Kết quả thực nghiệm
35
Mỗi giai đoạn lại bao gồm hai lần phân lớp nghĩa cho các trƣờng hợp trong tập
kiểm tra và so sánh với nghĩa đã đƣợc xác định từ trƣớc của mỗi trƣờng hợp từ. Từ
đĩ đƣa ra tỉ lệ phần trăm phân lớp nghĩa đúng.
o Lần 1: Chỉ sử dụng tập huấn luyện đã đƣợc chọn từ tập dữ liệu chuẩn để
phân lớp nghĩa cho các trƣờng hợp trong các tập kiểm tra.
o Lần 2: Sử dụng phƣơng pháp đã nêu để mở rộng tập huấn luyện đã chọn và
tiến hành huấn luyện trên tập mở rộng mới đĩ. Sau đĩ lại kiểm tra tỉ lệ phần
trăm chính xác bằng các tập kiểm tra.
6.2.2. Kết quả thực nghiệm
Với từng từ, ta cĩ các kết quả thực nghiệm nhƣ sau:
Giai
đoạn
Lần
Từ
nguyên
thể
Huấn
luyện mở
rộng
Số lần
lặp
Số trƣờng
hợp đầu ra
Train:test
0.3:0.1
Train:test
0.3:0.6
1
1 1 # 46.7% 46.5%
2 x 12 29108 68.6% 64.3%
2
1 x 1 # 46.2% 46.3%
2 x x 11 29335 63.7% 63.1%
Bảng 6: Kết quả thí nghiệm 1 của từ “line”
Giai
đoạn
Lần
Từ
nguyên
thể
Huấn
luyện mở
rộng
Số lần
lặp
Số trƣờng
hợp đầu ra
Train:test
0.3:0.1
Train:test
0.3:0.6
1
1 1 # 76.6% 75.6%
2 x 8 23830 75.7% 73.7%
2
1 x 1 # 77.5% 78.2%
2 x x 8 23709 78.5% 76.5%
Bảng 7: Kết quả thí nghiệm 1 của từ “hard”
Chƣơng 6: Kết quả thực nghiệm
36
Giai
đoạn
Lần
Từ
nguyên
thể
Huấn
luyện mở
rộng
Số lần
lặp
Số trƣờng
hợp đầu ra
Train:test
0.3:0.1
Train:test
0.3:0.6
1
1 1 # 70.9% 69.3%
2 x 7 15532 76.4% 76.5%
2
1 x 1 # 72.9% 70.2%
2 x x 7 15674 78.2% 76.8%
Bảng 8: Kết quả thí nghiệm 1 của từ “serve”
Giai
đoạn
Lần
Từ
nguyên
thể
Huấn
luyện mở
rộng
Số lần
lặp
Số trƣờng
hợp đầu ra
Train:test
0.3:0.1
Train:test
0.3:0.6
1
1 1 # 3.83% 5.78%
2 x 11 33953 70.2% 71.4%
2
1 x 1 # 4.26% 5.15%
2 x x 13 34366 73.6% 74%
Bảng 9: Kết quả thí nghiệm 1 của từ “interest”
6.2.3. Nhận xét
6.2.3.1. Hiệu quả của việc mở rộng bộ dữ liệu
Từ kết quả thí nghiệm trên, ta thấy hầu hết các trƣờng hợp đều cho thấy mức độ
chính xác trong xử lý nhập nhằng nghĩa của các từ đang cần gán nghĩa tăng lên rõ rệt. Đặc
biệt đáng ngạc nhiên trong trƣờng hợp thí nghiệm với từ “interest”. Mức tăng từ 65.62%
đến 69.34% thật sự đáng ấn tƣợng.
Mức tăng rõ ràng trong hầu hết các thí nghiệm là một kết quả đáng mừng, tuy vậy,
riêng với trƣờng hợp từ “hard” ta lại ghi nhận đƣợc sự sụt giảm độ chính xác phân lớp
nghĩa của từ khi sử dụng bộ dữ liệu mở rộng so với khi chỉ dùng lƣợng nhỏ dữ liệu huấn
luyện ban đầu để huấn luyện cho bộ phân lớp. Điều này đặt ra một giả thiết đĩ là nếu dữ
liệu huấn luyện ban đầu cung cấp càng nhiều thơng tin cho phép phân lớp chính xác thì
đồng thời vai trị của dữ liệu mở rộng từ bộ dữ liệu văn bản chƣa gán nghĩa của từ cĩ thể
cũng càng sụt giảm. Đến một mức nào đĩ, việc sử dụng dữ liệu huấn luyện mở rộng sẽ
Chƣơng 6: Kết quả thực nghiệm
37
khơng cịn cĩ ý nghĩa, thậm chí cịn làm giảm độ chính xác của kết quả phân lớp nghĩa
(nhƣ trƣờng hợp của từ “hard”). Tuy vậy, để cĩ thể khẳng định đƣợc nhận định này, ta
cần tiến hành thêm thí nghiệm để kiểm chứng.
6.2.3.2. Hiệu quả của việc chuyển từ trong nhĩm từ đồng xuất hiện về dạng nguyên thể
Các thí nghiệm trên cho thấy một mức tăng về độ chính xác tuy khơng nhiều lắm khi
ta áp dụng kỹ thuật chuyển từ trong nhĩm từ đồng xuất hiện về dạng nguyên thể. Mức
tăng chỉ vào khoảng 2 đến 3 % và trong một số trƣờng hợp cịn ghi nhận mức giảm nhẹ
độ chính xác phân lớp nghĩa (từ line bảng 6). Đây là một kết quả thấp hơn mong đợi về
mặt lý thuyết (nhƣ đã trình bày ở phần 3.3.2). Tuy vậy, dù chỉ tăng nhẹ nhƣng cũng chứng
tỏ đƣợc rằng chuyển từ về dạng nguyên thể cũng đã phần nào giảm bớt đƣợc nhiễu và cải
thiện đƣợc độ chính xác của quá trình phân lớp. Điều này khơng phải khơng cĩ ý nghĩa gì
mà thực tế khi ta phải phân lớp nghĩa cho một số lƣợng lớn các trƣờng hợp xuất hiện của
từ (ít nhất là trên 15000 trƣờng hợp nhƣ trong thí nghiệm này) thì mức tăng độ chính xác
thêm 2 đến 3 % theo tơi cũng rất giá trị.
6.3. Thí nghiệm 2
Từ hiện tƣợng sụt giảm độ chính xác phân lớp khi sử dụng dữ liệu huấn luyện mở
rộng so với khi sử dụng một lƣợng dữ liệu huấn luyện ban đầu của từ “hard” trong thí
nghiệm 1, tơi tiến hành thí nghiệm 2 nhằm trả lời câu hỏi liệu khi vai trị của dữ liệu gán
nhãn ban đầu tăng lên thì vai trị của dữ liệu mở rộng thu đƣợc từ phƣơng pháp mở rộng
bộ dữ liệu cĩ bị giảm đi hay khơng.
6.3.1. Bố trí thí nghiệm
Tơi loại trừ hai từ “hard” và “interest” là hai từ cĩ kết quả quá đặc biệt ở thí nghiệm
1 (từ “hard” ngay từ khi sử dụng dữ liệu huấn luyện ban đầu đã cĩ xác suất phân lớp
nghĩa cao, cịn từ “interest” ngƣợc lại lại cĩ kết quả phân lớp nghĩa ban đầu quá thấp so
với khi dùng dữ liệu mở rộng). Nhƣ vậy, chỉ cĩ hai từ “line” và “serve” đƣợc thử nghiệm
trong thí nghiệm này.
Để tăng dần vai trị của dữ liệu huấn luyện ban đầu, tơi tiến hành thí nghiệm tăng
dần mức tỉ lệ số trƣờng hợp xuất hiện của từ trong tập huấn luyện so với tổng số các
trƣờng hợp xuất hiện của từ trong bộ dữ liệu chuẩn đã gán nghĩa. Cụ thể các mức tăng là
0.1, 0.3, 0.5, 0.7 và 0.9. Đồng thời tơi giữ tỉ lệ số lƣợng các trƣờng hợp trong tập kiểm tra
so với tổng số lƣợng các trƣờng hợp trong dữ liệu chuẩn cố định ở mức 0.1.
Chƣơng 6: Kết quả thực nghiệm
38
Các tập huấn luyện và kiểm tra vẫn đƣợc chọn theo các tiêu chuẩn của thí nghiệm 1
tức là ngẫu nhiên, khơng cĩ trƣờng hợp cùng xuất hiện trong tập huấn luyện và tập kiểm
tra và giữ đúng tỉ lệ giữa số lƣợng các trƣờng hợp mang các nghĩa của từ trong các tập
huấn luyện và kiểm tra nhƣ trong tập dữ liệu chuẩn.
6.3.2. Kết quả thực nghiệm
Kết quả thực nghiệm trong thí nghiệm 2 với hai từ “line” và “serve” đƣợc thể hiện
trong 2 bảng sau:
Tỉ lệ train:test
Dữ liệu huấn luyện
ban đầu
Dữ liệu huấn luyện
mở rộng
Mức độ cải thiện độ
chính xác
0.1:0.1 35.5% 49.4% 13.9%
0.3:0.1 47.4% 60.3% 12.9%
0.5:0.1 54.3% 68.4% 14.1%
0.7:0.1 57.4% 68.6% 11.2%
0.9:0.1 61.8% 69.8% 8%
Bảng 10: Kết quả thí nghiệm 2 của từ “line”
Tỉ lệ train:test
Dữ liệu huấn luyện
ban đầu
Dữ liệu huấn luyện
mở rộng
Mức độ cải thiện độ
chính xác
0.1:0.1 56.2% 69.5% 13.3%
0.3:0.1 66.7% 79.6% 12.9%
0.5:0.1 73.2% 79.1% 5.9%
0.7:0.1 74.3% 81.2% 6.9%
0.9:0.1 77.3% 82.3% 5%
Bảng 11: Kết quả thí nghiệm 2 của từ “serve”
6.3.3. Nhận xét
Từ các kết quả thí nghiệm trên, ta thấy rằng mức độ cải thiện độ chính xác phân lớp
nghĩa của từ nhờ vào bộ dữ liệu mở rộng luơn cao nhất khi tập huấn luyện ban đầu cĩ số
lƣợng trƣờng hợp xuất hiện của từ ít (tỉ lệ so với tồn bộ tập dữ liệu chuẩn là 0.1, 0.3, 0.5)
Chƣơng 6: Kết quả thực nghiệm
39
và luơn thấp nhất khi tập huấn luyện ban đầu cĩ số lƣợng trƣờng hợp xuất hiện của từ là
cao nhất (tỉ lệ 0.9). Nhƣ vậy ta cĩ thể kết luận rằng vai trị của bộ dữ liệu mở rộng dựa
vào bộ dữ liệu văn bản chƣa gán nghĩa sẽ giảm đi khi lƣợng thơng tin cần thiết cho phân
lớp nghĩa của từ trong dữ liệu huấn luyện ban đầu tăng lên.
Chƣơng 7: Kết luận
40
Chƣơng 7: Kết luận
7.1. Các kết quả đạt đƣợc và hạn chế
Qua quá trình nghiên cứu về phƣơng pháp mở rộng bộ dữ liệu huấn luyện cho quá
trình xử lý nhập nhằng nghĩa của từ, nhận thấy đƣợc tầm quan trọng của việc xây dựng
một cơng cụ hỗ trợ con ngƣời trong quá trình tạo nên các bộ dữ liệu lớn với cơng sức và
thời gian bỏ ra là nhỏ nhất mà vẫn đạt đƣợc kết quả là một bộ dữ liệu tƣơng đối chính xác,
việc nghiên cứu và xây dựng một bộ cơng cụ mở rộng bộ dữ liệu nghĩa của từ đã đƣợc
tiến hành. Bộ cơng cụ tuy mới ở dạng sơ khai nhƣng đã chứng minh đƣợc rằng phƣơng
pháp mở rộng tự động một bộ dữ liệu là cĩ cơ sở lý luận và thực tiễn. Từ đĩ gĩp phần
thúc đẩy việc xây dựng một bộ cơng cụ hồn chỉnh trong tƣơng lai.
Với vai trị của một bộ cơng cụ dành cho những nghiên cứu, khảo sát về phƣơng
pháp mở rộng bộ dữ liệu. Bộ cơng cụ đã làm khá tốt nhiệm vụ của nĩ trong việc minh họa
và chứng minh các kết quả bƣớc đầu của phƣơng pháp. Bộ cơng cụ cũng đã giúp phát
hiện ra tiềm năng ứng dụng quá trình chuyển đổi về dạng từ nguyên thể vào bài tốn mở
rộng bộ dữ liệu cũng nhƣ trong các bài tốn xử lý nhập nhằng nghĩa của từ.
Tuy vậy, khơng thể phủ định rằng nghiên cứu về đề tài mở rộng bộ dữ liệu cho quá
trình xử lý nhập nhằng nghĩa của từ vẫn cĩ những hạn chế. Hạn chế đầu tiên là về việc
mới chỉ ứng dụng đƣợc bộ phân lớp Nạve Bayes vào trong phƣơng pháp mở rộng bộ dữ
liệu xử lý nhập nhằng. Nạve Bayes là một bộ phân lớp tốt nhƣng nĩ cĩ thể khơng mạnh
bằng một số bộ phân lớp khác ví dụ nhƣ Maximum Entropy, bằng chứng là trong nghiên
cứu một số trƣờng hợp tỉ lệ phân lớp chính xác của nĩ là khơng cao dù đã đƣợc hỗ trợ bởi
phƣơng pháp mở rộng bộ dữ liệu. Một yếu tố khác ảnh hƣởng tới độ chính xác của Naive
Bayes (và do đo của cả hệ thống mở rộng dữ liệu huấn luyện) đĩ là việc chọn lựa các
thuộc tính cịn ở mức đơn giản. Điều này dù là do khơng muốn tập trung quá vào vấn đề
chọn lựa thuộc tính, vốn khơng phải vấn đề trọng tâm của đề tài nhƣng đây cũng thực sự
là một hạn chế khơng thể bỏ qua. Chính những yếu tố này đã ảnh hƣởng tới độ chính xác
của bộ dữ liệu đầu ra.
Chƣơng 7: Kết luận
41
Một hạn chế nữa của khĩa luận này là chƣa nghiên cứu đƣợc phƣơng pháp cho phép
tự động chọn ngƣỡng xác suất của một văn bản cũng nhƣ của cả bộ dữ liệu văn bản. Một
quan sát thƣờng thấy trong thời gian đề tài khĩa luận này đƣợc nghiên cứu đĩ là tùy vào
từng từ khác nhau, nếu chọn ngƣỡng thích hợp thì xác suất phân lớp nghĩa lên rất cao và
ngƣợc lại. Tuy nhiên nếu chỉ thay đổi bằng cách nhập vào cố định từ đầu thì miền và số
lần khảo sát đƣợc khơng cao. Do đĩ trong thí nghiệm tơi chỉ cố định các ngƣỡng tại các
giá trị cho kết quả tƣơng đối cao với tất cả các từ thí nghiệm, cụ thể là: dừng vịng lặp khi
mức thay đổi về số lƣợng các trƣờng hợp trong bộ dữ liệu đầu ra nhỏ hơn 50; các xác suất
nhỏ hơn 0.7 lần xác suất lớn nhất của văn bản maxProbFile sẽ bị gán nghĩa bằng nghĩa
của trƣờng hợp cĩ xác suất lớn nhất; và ngƣỡng loại bỏ các trƣờng hợp là nhỏ hơn 0.7 lần
xác suất lớn nhất của tồn bộ bộ dữ liệu.
Kết quả của đề tài khĩa luận tuy cịn những hạn chế nhất định nhƣ đã trình bày ở
trên nhƣng nĩ cũng cĩ ý nghĩa nhƣ một bƣớc kiểm chứng đầu tiên trên con đƣờng xây
dựng một cơng cụ mở rộng dữ liệu huấn luyện cho quá trình xử lý nhập nhằng nghĩa của
từ hồn chỉnh. Hơn thế nữa, qua quá trình nghiên cứu đề tài khĩa luận này, tơi đã đƣợc va
chạm, nghiên cứu một vấn đề cụ thể trong thực tế và đã đúc rút đƣợc nhiều kinh nghiệm
quý báu, làm nền tảng cho tơi trong cơng tác và nghiên cứu sau này.
7.2. Các cơng việc trong tƣơng lai
Tơi dự định tiếp tục nghiên cứu sâu hơn và hồn thiện thêm đề tài khĩa luận này,
đặc biệt là trong việc khắc phục những hạn chế nhƣ đã nêu ở phần trên. Cụ thể tơi sẽ tiếp
tục nghiên cứu cách thức áp dụng các bộ phân lớp khác vào phƣơng pháp mở rộng bộ dữ
liệu cho xử lý nhập nhằng nghĩa của từ, và nghiên cứu sâu hơn về cách thức lựa chọn
thuộc tính cho các bài tốn xử lý nhập nhằng nghĩa của từ nĩi chung và của phƣơng pháp
mở rộng bộ dữ liệu xử lý nhập nhằng nghĩa nĩi riêng. Ngồi ra, tơi cũng muốn nghiên cứu
cụ thể về cách thức chọn ngƣỡng tự động một cách hiệu quả cho bài tốn này. Tơi hy
vọng trong một tƣơng lai khơng xa nữa tơi cĩ thể hồn thiện và đƣa vào sử dụng thực tế
một bộ cơng cụ mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ, gĩp
phần nhỏ thúc đẩy thêm sự phát triển của các vấn đề khác trong xử lý ngơn ngữ tự nhiên
mà đặc biệt là bài tốn dịch máy tự động và từ đĩ, đƣợc đĩng gĩp cơng sức nhỏ bé của
mình để xĩa bỏ một phần nào rào cản ngơn ngữ giữa ngƣời dân các nƣớc trên thế giới nĩi
chung và giữa ngƣời dân Việt Nam với thế giới nĩi riêng.
Chƣơng 7: Kết luận
42
Tài liệu tham khảo
[1] Agirre, Eneko; Edmonds, Philip; Word Sense Disambiguation: Algorithms and
Applications; Springer, 2006.
[2] Bird, Steven; Klein, Ewan; Loper, Edward; Natural Language Processing with Python;
O‟Reilly Media, 2009.
[3] Duda, Richar O; Hart, Peter E; Stork, David G; Pattern Classifiation Second Edition;
Wiley.
[4] Gale, William A; Church, Kenneth W; Yakowsky, David; One Sense Per Discourse;
AT&T Bell Laboratories, 1992.
[5] Jurafsy, Daniel; Martin, James H; Speech and Language Processing; Draft of June 25,
2007.
[6] Yakowsky, David; One Sense Per Collocation; Department of Computer and
Information Science, University of Pennsylvania, 1993.
[7] Yakowsky, David; Unsupervised Word Sense Disambiguation Rivaling Supervised
Methods; Department of Computer and Information Science, University of Pennsylvania.
[8] http://
[9]
_and_knowledge-based_methods
[10]
Các file đính kèm theo tài liệu này:
- LUẬN VĂN-MỞ RỘNG BỘ DỮ LIỆU HUẤN LUYỆN CHO QUÁ TRÌNH XỬ LÝ NHẬP NHẰNG NGHĨA CỦA TỪ.pdf