MỞ ĐẦU 1. Cơ sở khoa học và tính thực tiễn của đề tài. Từ khi Internet ra đời, chúng ta đã chứng kiến sự phát triển không ngừng về số lƣợng thông tin trực tuyến trên Internet. Nếu chúng ta xem World Wide Web nhƣ một Cơ sở dữ liệu-CSDL, thì CSDL này là khổng lồ, rất hỗn tạp và đa phƣơng tiện, tuy nhiên trong số đó có hơn 80% lƣợng thông tin là dƣới dạng văn bản.
Với CSDL lớn nhƣ thế, việc tìm kiếm thông tin nào đó của chúng ta có thể không đạt kết quả nhƣ mong muốn, mặc dù thông tin này là tồn tại ở đâu đó. Phân loại văn bản là một trong những công cụ hữu hiệu nhất để làm giảm bớt nhƣng khó khăn trong tìm kiếm thông tin, và là công cụ hết sức quan trọng trong việc quản lý, tổ chức và sắp xếp thông tin. Phân loại văn bản tự động là tác vụ tự động xác định một tài liệu (dạng văn bản ở dạng ngôn ngữ tự nhiên) thuộc một hoặc một số hạng mục đã đƣợc định trƣớc. Phân loại văn bản là rất quan trọng và đƣợc sử dụng trong rất nhiều ứng dụng nhƣ lọc văn bản (text filtering), tổ chức tài liệu, chống spam mail.
Trong nhƣng năm cuối của thập niên 90, thế kỷ trƣớc và những năm đầu thế kỷ 21, nhiều phƣơng pháp cũng nhƣ thuật toán đã đƣợc giới thiệu để giải quyết bài toán này đặc biệt cho tiếng Anh (hay một số ngôn ngữ Âu Ấn gần với tiếng Anh là tiếng Đức, Pháp…). Đối với một số ngôn ngữ châu Á nhƣ tiếng Việt, tiếng Trung, tiếng Nhật và tiếng Hàn, bài toán này trở nên khó khăn hơn do các tính chất đặc thù của các ngôn ngữ này. Ở Việt Nam, bài toán xử lý ngôn ngữ tự nhiên, dịch tự động, tìm kiếm, tóm tắt, và phân loại văn bản cũng đã đƣợc nhà nƣớc, các viện nghiên cứu, các trƣờng đại học và các công ty công nghệ thông tin quan tâm, đầu tƣ nghiên cứu và đã có nhƣng thành quả nhất định và rõ rệt. Trong luận văn của mình, tôi xin chọn hƣớng nghiên cứu cải tiến một số phƣơng pháp phân loại văn bản tự động và áp dụng trong xử lý văn bản tiếng Việt, có thừa kế các kết quả đang có trên thế giới và ở Việt Nam, để nâng cao độ chính xác và hiệu năng với khía cạch đặc thù của tiếng Việt với mong muốn góp một phần sức lực của mình cho vấn đề nêu trên ở nƣớc nhà.
TIEU LUAN MOI download : skknchat@gmail. Phạm vi và mục đính nghiên cứu của để tài Luận văn tập trung chủ yếu tập trung vào các vấn đề sau: - Tìm hiểu bài toán phân loại văn bản tự động và một số thuật toán tiêu biểu và đã đƣợc đánh giá là hiệu quả trên thế giới nhƣ SVM (Support Vector Machine), kNN (k- Nearest Neighbor), Naïve Bayes… - Tìm hiểu về bài toán phân loại văn bản tiếng Việt, với các vấn đề sau: + Thuận lợi và khó khăn. + Đặc điểm của tiếng Việt, cấu trúc từ trong tiếng Việt. + Vấn đề phân đoạn từ trong tiếng Việt, Vietnamese word segmentation, vấn đề tập ngữ liệu tiếng Việt (Vietnamese corpus) … + Áp dụng một số thuật toán vào bài toán phân loại văn bản tiếng Việt.
+ Cài đặt các công cụ và thuật toán liên quan. + Thực nghiệm và kết quả thực nghiệm phân loại văn bản tiếng Việt sử dụng một số thuật toán tiêu biểu. - Nghiên cứu một số hƣớng cải tiến của phân loại văn bản phù hợp với bối cảnh Việt Nam và tiếng Việt. + Sử dụng phân cụm trong phân loại văn bản.
+ Sử dụng thuộc tính nhóm xâu con chính trong phân loại văn bản. + Cài đặt các công cụ và thuật toán liên quan. + Thực nghiệm và kết quả thực nghiệm. Bố cục và cấu trúc của luận văn Luận văn đƣợc cấu trúc nhƣ sau.
- Chƣơng 1: Trình bày tổng quan về phân loại văn bản. - Chƣơng 2: Trình bày vấn đề biểu diễn văn bản trong phân loại văn bản dƣới dạng vector thuộc tính, và một số phƣơng pháp giảm kích thƣớc của không gian thuộc tính nhƣ sử dụng danh sách từ dừng, tìm gốc của từ, vấn đề trọng số và các phƣơng pháp lựa chọn thuộc tính. - Chƣơng 3: Trình bày các phƣơng pháp phân loại văn bản truyền thống. - Chƣơng 4: Áp dụng trong phân loại văn bản tiếng Việt, đặc điểm của tiếng Việt, so sánh với các ngôn ngữ khác, thực nghiệm và kết quả thực nghiệm cho bài toán phân loại tiếng Việt.
TIEU LUAN MOI download : skknchat@gmail.com 10 - Chƣơng 5: Trình bày việc ứng dụng phân cụm vào phân loại văn bản để nâng cao độ chính xác với tập dữ liệu có nhãn nhỏ, các thuật toán tiêu biểu của phƣơng pháp này, thực nghiệm và kết quả thực nghiệm. - Chƣơng 6: Trình bày việc sử dụng thuộc tính là các nhóm xâu con chính vào phân loại văn bản để tránh việc phân đoạn từ trong phân loại văn bản, một bài toán vẫn còn mở, và nâng cao độ chính xác, cấu trúc dữ liệu cây hậu tố, thuật toán, thực nghiệm và kết quả thực nghiệm. - Chƣơng 7: Cài đặt các chƣơng trình và cộng cụ hỗ trợ. - Cuối cùng là kết luận và các hƣớng phát triển cho luận văn.
- Ba phụ A, B, C lần lƣợt bao gồm phân tích thiết kế chƣơng trình phân loại văn bản tự động sử dụng thuộc tính nhóm xâu con chính, cấu trúc CD đính kèm và giới thiệu website chia sẻ tập ngữ liệu và chƣơng trình. TIEU LUAN MOI download : skknchat@gmail.com 11 CHƢƠNG 1 - TỔNG QUAN VỀ BÀI TOÁN PHÂN LOẠI VĂN BẢN 1. Tổng quan Ngày nay với lƣợng thông tin lớn trên Internet cũng nhƣ trong Intranet của các tổ chức, doanh nghiệp. Nhu cầu có một công cụ trợ giúp để tìm, lọc và quản lý tài nguyên trở nên quan trọng và cần thiết.
Đây cũng là các lý do để phân loại văn bản ra đời. Phân loại văn bản là tác vụ gán các văn bản dạng ngôn ngữ tự nhiên vào một hoặc một số hạng mục đã định trƣớc. Về mặt toán học có thể định nghĩa phân loại văn bản nhƣ sau: Cho C là tập các nhóm: C={c1,c2,…, cm} D là tập các văn bản: D={d1,d2,…, dn} Phân loại văn bản là một hàm fTC đƣợc định nghĩa trong (1-1): fTC : C D {0,1} (1-1) Với: fTC (ci , d j ) 0 , nếu dj không thuộc nhóm ci. fTC (ci , d j ) 1 , nếu dj thuộc nhóm ci.
Phân loại văn bản tự động là một công cụ hết sức quan trọng trong việc quản lý và tổ chức thông tin nhƣ là việc sắp xếp thời gian thực các email hay các tệp vào các tổ chức thƣ mục, xác định chủ đề để hỗ trợ thao tác xử lý chủ để chỉ định, hay tìm các tài liệu phụ hợp với một sở thích nào đó. Phân loại văn bản tự động bắt đầu xuất hiện từ nhƣng năm 60 và phát triển mạnh mẽ trong thập kỷ trƣớc. Có hai hƣớng tiếp cận chính để xây dựng các hệ thống phân loại văn bản. Một số hệ thống sử dụng phƣơng pháp dựa trên heuristic, tƣơng tự nhƣ trong hệ chuyên gia để phân loại và chẩn đoán.
Các kỹ sƣ trí thức sẽ định nghĩa các luật giữa dữ liệu đầu vào (các từ, hay các thuộc tính) và đầu ra là các nhóm. Việc phân loại sẽ thực hiện bằng cách thực hiện quá trình suy diễn dựa trên các đầu vào và tri thức chuyên gia để suy ra kết quả phân loại. Cách tiếp cận thứ hai là sử dụng học máy và có sử dung tập văn bản đƣợc phân loại bằng tay trƣớc. Phƣơng pháp này đƣợc đánh giá là ít TIEU LUAN MOI download : skknchat@gmail.com 12 tốn kém, xây dựng nhanh hơn và cho độ chính xác cao hơn.
Tuy nhiên, phân loại văn bản đƣa ra rất nhiều các thách thức cho học máy. Kích thƣớc không gian thuộc tính lớn, lên tới hàng chục nghìn khi các từ đƣợc sử dụng, thậm chí là hơn trong một số trƣờng hợp sử dụng các cụm từ, câu, hay xâu con, các đặc điểm của ngôn ngữ tự nhiên nhƣ đồng nghĩa, trái nghĩa, phân phối không cân bằng của từ vựng, chất lƣợng và số lƣợng của tập văn bản huấn luyện đều gây ảnh hƣởng kết việc phân loại, hiệu năng và kết quả của nó. Thông thƣờng phân loại văn bản thƣờng đƣợc sử dụng dƣới hai hình thức là phân loại văn bản theo chủ đề và phân loại văn bản theo ngữ nghĩa. - Phân loại văn bản theo chủ đề: đây là cách phân loại dựa vào chủ đề mà văn bản có thể thuộc vào.
Tập văn bản đƣợc phân thành các chủ đề khác nhau. Ví dụ: Giáo dục, Thể thao, Du lịch - Phân loại văn bản theo ngữ nghĩa: đây là cách phân loại dựa vào ngữ nghĩa trong văn bản đề phân loại chúng. Ví dụ: Spam hay không spam, đƣợc đề nghị hay không đƣợc đề nghị Nhận dạng mẫu và học máy đƣợc áp dụng vào phân loại văn bản, một số phƣơng pháp đã đƣợc giới thiệu và sử dụng nhƣ Mạng Neutral, Cây quyết định, kNN, Naïve Bayes, LLFS, SVM… các phƣơng pháp thu đƣợc các kết quả khả quan. Gần đây, hƣớng nghiên cứu tập trung vào tăng độ chính xác và hiệu năng của phân loại nhƣ giảm kích thƣớc không gian thuộc tính, sử dụng tập dữ liệu gán nhãn nhỏ hay kết hợp học không giám sát.
Hầu hết các phƣơng pháp phân loại ban đầu đƣợc xây dựng và thí nghiêm cho văn bản tiếng Anh sau đó dƣợc áp dụng cho văn bản trên các ngôn ngữ khác. Tuy nhiên trong nhiều trƣờng hợp các ngôn ngữ khác nhau có những đặc điểm khác nhau, nên các bƣớc trong phân loại cho các ngôn ngữ khác nhau có thể sẽ có các biến đổi và mực độ chính xác do đó cũng khó đồng nhất cho mọi ngôn ngữ. TIEU LUAN MOI download : skknchat@gmail. Các bƣớc chính trong bài toán phân loại văn bản Mô hình phân loại văn bản tổng quát gồm các bƣớc, mô tả trong hình 1-1: - Tiền xử lý.
- Tạo chỉ mục. - Chọn thuộc tính. - Áp dụng thuật toán phân loại. Tập văn bản Tiền xử lý Tạo chỉ mục Chọn thuộc tính Áp dụng Thuật toán Đánh giá kết quả Hình 1-1: Các bƣớc chính trong phân loại văn bản Tiền xử lý là việc biểu diễn văn bản ở dạng thích hợp cho phân loại nhƣ xóa bỏ các định dạng văn bản nếu văn bản ở dạng khác nhƣ .html…Tiến hành việc tách từ, bỏ đi các từ dừng và chọn gốc của từ.
TIEU LUAN MOI download : skknchat@gmail.