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ừ

  • Số trang: 51 |
  • Loại file: PDF |
  • Lượt xem: 11 |
  • Lượt tải: 0
nganguyen

Đã đăng 34173 tài liệu

Mô 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ừ 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à hoà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 i Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ 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 toá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 toá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. ii Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ 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 toán trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng....... 10 3.1. Thuật toán học máy có giám sát Naive Bayes ......................................................... 10 3.1.1. Giới thiệu về Naïve Bayes ................................................................................. 10 3.1.2. Ƣớc lƣợng xác suất ............................................................................................ 11 3.2. Thuật toá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 toá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 iii Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ 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 iv Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ 7.2. Các công việc trong tƣơng lai .................................................................................. 41 Tài liệu tham khảo .............................................................................................................. 42 v Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ 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 vi Mở rộng bộ dữ liệu cho quá trình xử lý nhập nhằng nghĩa của từ 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 vii Chƣơng 1: Mở đầu 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 toá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 toá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]. Ngoà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à hoàn toà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 toá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 toá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 toá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 1 Chƣơng 1: Mở đầu 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 toá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 toá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 toá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 2 Chƣơng 1: Mở đầu 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 ngoài tiếng Anh. 3 Chƣơng 1: Mở đầu Dữ liệu chuẩn chƣa định dạng Huấn luyện bộ phân lớp Naive Bayes Bộ dữ liệu văn bản nltk.classify.naivebayes Chuẩn bị dữ liệu (định dạng) Công cụ tự xd Dữ liệu gán nghĩa ban đầu của từ đang xét Dữ liệu gán nghĩa của từ đang xét (mở rộng sau vòng lặp đầu tiên) Phân lớp nghĩa nltk.classify.naivebayes Chuẩn bị dữ liệu (liệt kê, định dạng) Công cụ tự xd Dữ liệu chƣa gán nghĩa của từ đang xét 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 Đ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 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 Chƣơng 1: Mở đầu 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 toá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 toá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 toá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 5 Chƣơng 1: Mở đầu 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. Ngoà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ừ. 6 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 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 ngoà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ừ 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ừ đồ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 toà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 8 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ầ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 toán (chƣơng 3) của khóa luận. 9 Chƣơng 3: Các thuật toán trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng Chƣơng 3: Các thuật toán trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng 3.1. Thuật toán học máy có giám sát Naive Bayes 3.1.1. Giới thiệu về Naïve Bayes Naive Bayes là một thuật toá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 , … 𝑓𝑛 ) |𝑐) (2) 𝑝(𝑓1 , 𝑓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 toá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) 10 Chƣơng 3: Các thuật toán trong phƣơng pháp mở rộng bộ dữ liệu xử lý nhập nhằng 𝑝 𝐹 = 𝑝 𝑓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 toá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, ngoà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ệ hoàn toà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 hoàn toàn có thể xảy ra vì việc thu thập mẫu trong thực tế không thể hoàn toà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 𝑁 11
- Xem thêm -