Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 77 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
77
Dung lượng
1,78 MB
Nội dung
TRƢỜNG ĐẠI HỌC LẠC HỒNG KHOA CÔNG NGHỆ THÔNG TIN ---------- BÁOCÁONGHIÊNCỨUKHOAHỌC ĐỀ TÀI: XÂYDỰNGHỆTHỐNGPHÂNLOẠITÀILIỆUTIẾNGVIỆT TRẦN THỊ THU THẢO VŨ THỊ CHINH BIÊN HÒA, THÁNG 11/2012 TRƢỜNG ĐẠI HỌC LẠC HỒNG KHOA CÔNG NGHỆ THÔNG TIN ---------- ĐỀ TÀI: XÂYDỰNGHỆTHỐNGPHÂNLOẠITÀILIỆUTIẾNGVIỆT SVTH: TRẦN THỊ THU THẢO VŨ THỊ CHINH GVHD:ThS. TẠ NGUYỄN BIÊN HÒA, THÁNG 11/2012 LỜI NÓI ĐẦU Trong những năm gần đây, với sự phát triển mạnh mẽ của công nghệ thông tin và nhu cầu sử dụng Internet của con ngƣời đã làm tăng vọt lƣợng thông tin giao dịch trên Internet. Vì vậy mà số lƣợng văn bản điện tử tăng nhanh chóng mặt về số lƣợng và chủ đề đặc biệt là thƣ viện điện tử, tin tức điện tử trên mạng toàn cầu…. Với lƣợng thông tin đồ sộ nhƣ vậy, một yêu cầu lớn đặt ra là làm sao tổ chức và tìm kiếm thông tin một cách chính xác, có hiệu quả nhất. Phânloạithông tin là một trong những giải pháp hợp lý cho yêu cầu trên. Nhƣng một thực tế cho thấy là khối lƣợng thông tin quá lớn, việc phânloại dữ liệu thủ công là điều vô cùng khó khăn. Hƣớng giải quyết cho việc này là xâydựng một chƣơng trình phânloạithông tin tự động bằng máy tính. Phânloại văn bản là một vấn đề quan trọng trong lĩnh vực xử lý ngôn ngữ. Nhiệm vụ của bài toán này là gán các tàiliệu văn bản vào nhóm các chủ đề cho trƣớc. Đây là một bài toán rất thƣờng gặp trong thực tế điển hình nhƣ việc phân nhóm tin tức, phân nhóm các văn bản theo từng thể loại khác nhau. Tuy nhiên, chúng ta không thể cùng lúc đọc tất cả các tin tức, bài viết, bài báo hay các tàiliệu để rồi phânloại chúng theo đúng mục đích của mình bởi vì số tàiliệu lớn, nếu để đọc hết đƣợc tất cả thì sẽ mất rất nhiều thời gian. Đó là lý do cần có một hệthốngphânloạitàiliệutiếng Việt. Chúng em đã chọn thực hiện đề tài “Xây dựnghệthốngphânloạitàiliệutiếng Việt” nhằm tìm hiểu và thử nghiệm các phƣơng pháp phânloại văn bản áp dụng trên tiếng Việt. Trong luận văn này, chúng em cũng tìm hiểu một số cách phânloạitàiliệu và thử nghiệm một phƣơng pháp phânloại áp dụng thuật toán Naïve Bayes để xâydựng chƣơng trình dựa trên tập dữ liệu huấn luyện từ đó hƣớng đến việc phânloại các bài báokhoahọc trong lĩnh vực Công nghệ thông tin nhằm tiết kiệm thời gian và công sức cho các nhà tổ chức trong các hội thảo chuyên đề. Việc thực hiện đề tàiphânloạitàiliệutiếngViệt của chúng em hy vọng sẽ đem đến một cách phânloại mới, nhanh chóng và hiệu quả hơn việc phânloại bằng thủ công nhƣ hiện nay. LỜI CẢM ƠN Chúng em xin bày tỏ lòng biết ơn sâu sắc nhất tới Thầy Tạ Nguyễn đã tận tụy hƣớng dẫn, động viên, giúp đỡ em trong suốt thời gian thực hiện đề tài. Chúng em xin chân thành cảm ơn quý Thầy Cô trong khoa Công nghệ thông tin đã truyền đạt những kiến thức quý báu và những kinh nghiệm quý báu cho chúng em trong những năm học vừa qua. Chúng con xin nói lên lòng biết ơn đối với Ông Bà, Cha Mẹ luôn là nguồn động viên, chăm sóc trên bƣớc đƣờng học vấn của chúng con. Xin chân thành cảm ơn các anh chị và bạn bè đã ủng hộ, giúp đỡ và động viên chúng em trong thời gian học tập và nghiên cứu. Mặc dù chúng em đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép nhƣng chắc chắn chúng em sẽ không tránh khỏi những thiếu sót trong quá trình thực hiện đề tài. Chúng em kính mong nhận đƣợc sự cảm thông và các ý kiến đóng góp của quý Thầy Cô và các bạn. Một lần nữa, xin chân thành cảm ơn. Sinhviên thực hiện, Trần Thị Thu Thảo & Vũ Thị Chinh 11/2012 Mục lục CHƢƠNG 1: TỔNG QUAN . 1 1.1 Đặt vấn đề 1 1.2 Tổng quan tình hình nghiêncứu trong và ngoài nƣớc . 1 1.2.1 Tổng quan thế giới 1 1.2.2 Tổng quan trong nƣớc . 2 1.3 Mục tiêu của luận văn 4 1.4 Nội dung thực hiện 4 CHƢƠNG 2: CÁC PHƢƠNG PHÁP PHÂNLOẠI VĂN BẢN 6 2.1 Tổng quát về các phƣơng pháp phânloại văn bản 6 2.2 Mô tả bài toán phânloại văn bản . 6 2.3 Các phƣơng pháp phânloại văn bản tiếng Anh . 7 2.3.1 Support vector Machine (SVM) 7 2.3.2 Naïve Bayes (NB) . 9 2.3.3 Biểu diễn văn bản 10 2.3.4 K–Nearest Neighbor (kNN) 12 2.3.5 Linear Least Square Fit (LLSF) 13 2.3.6 Neural Network (NNet) 14 2.3.7 Centroid- based vector 15 2.4 Kết luận chung về các phƣơng pháp phânloại văn bản tiếng Anh . 16 2.5 Tách từ trong bài toán phânloại văn bản 17 2.5.1 Khó khăn vƣớng mắc 18 2.5.2 Các phƣơng pháp tách từ 19 CHƢƠNG 3: ỨNG DỤNGPHÂNLOẠI BÀI BÁOKHOAHỌC TRONG LĨNH VỰC CÔNG NGHỆ THÔNG TIN . 24 3.1 Hiện trạng 24 3.2 Quy trình xử lý phânloại bài báo 25 3.2.1 Tách từ trong văn bản . 26 3.2.2 Loại bỏ các từ tầm thƣờng 28 3.3 Trích chọn đặc trƣng văn bản 28 3.3.1 Các ý tƣởng cơ bản . 28 3.3.2 Phƣơng pháp rút trích đặc trƣng . 29 3.3.3 Phƣơng pháp đặc trƣng đề nghị sử dụng . 30 3.4 Sử dụng thuật toán Naïve Bayes để phânloại văn bản . 32 3.4.1 Lý do chọn Naïve Bayes . 32 3.4.2 Ý tƣởng và công thức Naïve Bayes 32 3.4.3 Ƣớc lƣợng P(X|Y) . 33 3.4.4 Ƣớc lƣợng P(Y) . 34 3.4.5 Ƣớc lƣợng P(Y|X) . 34 3.5 Ứng dụng Naïve Bayes vào bài toán phânloại . 34 3.5.1 Ý tƣởng . 34 3.5.1 Hƣớng dẫn cài đặt . 35 CHƢƠNG 4: XÂYDỰNG CHƢƠNG TRÌNH 39 4.1 Xâydựng cơ sở dữ liệu 39 4.1.1 Từ điển tiếngviệt 39 4.1.2 Mô tả thực thể . 40 4.1 Xâydựng giao diện phânloại văn bản 47 4.1.1 Lƣu đồ phânloại văn bản 47 4.1.2 Thiết kế giao diện . 48 4.1.3 Xâydựng các chức năng . 49 CHƢƠNG 5: THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ . 54 5.1 Ví dụ về chƣơng trình phânloại văn bản 54 5.2 Đánh giá kết quả 58 5.2.1 Dữ liệu đầu vào . 58 5.2.2 Kết quả thực nghiệm 59 5.2.3 Đánh giá kết quả . 60 KẾT LUẬN . 62 TÀILIỆU THAM KHẢO Mục lục hình Hình 2.1 Phân chia dữ liệu huấn huyện . 8 Hình 2.2 Biểu diễn văn bản . 11 Hình 2.3 Hình Kiến trúc mô đun (Modular Architecture) . 15 Hình 2.4 Xâydựng ôtômát âm tiết 19 Hình 2.5 Xâydựng ôtômát từ vựng . 20 Hình 2.6 Một tình huống nhập nhằng trong phân tách từ . 21 Hình 3.1 Mô hình phânloạitàiliệu tự động . 25 Hình 3.2 Chi tiết giai đoạn huấn luyện 31 Hình 3.3 Mô tả bƣớc xâydựng bộ phân lớp 35 Hình 4.1 Mô hình cơ sở dữ liệu . 45 Hình 4.2 Lƣu đồ phânloại văn bản . 47 Hình 4.3 Giao diện chính chƣơng trình . 48 Hình 4.4 Huấn luyện văn bản 49 Hình 4.5 Phânloại văn bản 50 Hình 4.6 Thông tin chủ đề 51 Hình 4.7 Thông tin bài báo 52 Hình 5.1 Giao diện phânloại văn bản . 54 Hình 5.2 Kết quả phân tách văn bản 55 Hình 5.3 Kết quả dựa vào công thức tính trọng số Tf*idf . 56 Hình 5.4 Thống kê kết quả phânloại từ máy 57 Mục lục bảng Bảng 3.1 Bảng phân lớp 38 Bảng 4.1 Thuộc tính thực thể 39 Bảng 4.2 Bảng Chuyên ngành . 40 Bảng 4.3 Bảng tài khoản 41 Bảng 4.4 Bảng từ điển . 41 Bảng 4.5 Bảng từ phổ thông 42 Bảng 4.6 Bảng từ đƣợc tách 42 Bảng 4.7 Bảng từ chuyên ngành 43 Bảng 4.8 Bảng bài báo . 43 Bảng 4.9 Bảng bài báo sau khi phânloại 44 Bảng 4.10 Bảng biến tạm 44 Bảng 4.11 Bảng mối quan hệ thực thể . 46 Bảng 4.12 Bảng mối kết hợp của thực thể . 46 Bảng 5.1 Bảng số liệu xử lý theo con ngƣời . 58 Bảng 5.2 Bảng kết quả chƣơng trình phânloại văn bản tiếngViệt . 59 Bảng 5.3 Tỷ lệ(%) phânloại văn bản 60 1 CHƢƠNG 1: TỔNG QUAN 1.1 Đặt vấn đề Trong thời đại bùng nổ công nghệ thông tin hiện nay, phƣơng thức sử dụng giấy tờ trong giao dịch đã dần đƣợc số hoá chuyển sang các dạng văn bản lƣu trữ trên máy tính hoặc truyền tải trên mạng. Bởi nhiều tính năng ƣu việt của tàiliệu số nhƣ: cách lƣu trữ gọn nhẹ, thời gian lƣu trữ lâu dài, tiện dụng trong trao đổi đặc biệt là qua Internet, dễ dàng sửa đổi… nên ngày nay, số lƣợng văn bản số tăng lên một cách chóng mặt đặc biệt là trên world-wide-web. Cùng với sự gia tăng về số lƣợng văn bản, nhu cầu tìm kiếm văn bản cũng tăng theo. Với số lƣợng văn bản đồ sộ thì việc phânloại văn bản tự động là một nhu cầu bức thiết. Tại sao phải phânloại văn bản tự động? Việc phânloại văn bản sẽ giúp chúng ta tìm kiếm thông tin dễ dàng và nhanh chóng hơn rất nhiều so với việc phải bới tung mọi thứ trong ổ đĩa lƣu trữ để tìm kiếm thông tin. Mặt khác, lƣợng thông tin ngày một tăng lên đáng kể, việc phânloại văn bản tự động sẽ giúp con ngƣời tiết kiệm đƣợc rất nhiều thời gian và công sức. Do vậy, các phƣơng pháp phânloại văn bản tự động đã ra đời để phục vụ cho nhu cầu chính đáng đó. 1.2 Tổng quan tình hình nghiêncứu trong và ngoài nƣớc Công tác phânloại luôn đƣợc các thƣ viện và cơ quan thông tin trên thế giới hết sức quan tâm. Phânloạitàiliệu là một khâu công tác quan trọng giúp cho việc kiểm soát thƣ mục, góp phần thúc đẩy việc khai thác, trao đổi thông tin trong phạm vi quốc gia và quốc tế. Trên thế giới và một số thƣ viện lớn ở Việt Nam, phânloại đƣợc áp dụng sâu rộng trong việc tổ chức kho mở và tra cứuthông tin. 1.2.1 Tổng quan thế giới Theo Yang & Xiu, 1999, “việc phânloại văn bản tự động là việc gán các nhãn phânloại lên một văn bản mới dựa trên mức độ tƣơng tự của văn bản đó so với các văn 2 bản đã đƣợc gán nhãn trong tập huấn luyện”. Từ trƣớc đến nay, phânloại văn bản tự động trong tiếng Anh đã có rất nhiều công trình nghiêncứu và đạt đƣợc kết quả đáng khích lệ. Dựa trên các thống kê của Yang & Xiu (1999)[6] và nghiêncứu của chúng em, một số phƣơng pháp phânloạithôngdụng hiện nay là: Support Vector Machine -Joachims, 1998[4], k-Nearest Neighbor -Yang, 1994, Linear Least Squares Fit -Yang and Chute, 1994[7] Neural Network -Wiener et al, 1995, Naïve Bayes -Baker and Mccallum, 2000, Centroid- based -Shankar and Karypis, 1998. Các phƣơng pháp trên đều dựa vào xác suất thống kê hoặc thông tin về trọng số của từ trong văn bản. Chi tiết về ý tƣởng và công thức tính toán của mỗi phƣơng pháp sẽ đƣợc chúng em trình bày ở chƣơng 2, mục 2.3. Mỗi phƣơng pháp phânloại văn bản đều có cách tính toán, áp dụng công thức khác nhau, tuy nhiên, nhìn một cách tổng quan thì các phƣơng pháp đó đều phải thực hiện một số bƣớc chung nhƣ sau: đầu tiên, mỗi phƣơng pháp sẽ dựa trên các thông tin về sự xuất hiện của từ trong văn bản (ví dụ tần số, số văn bản chứa từ…) để biểu diễn văn bản thành dạng vector. Sau đó, tuỳ từng phƣơng pháp mà ta sẽ áp dụng công thức và cách thức tính toán khác nhau để thực hiện việc phân loại. Đối với tiếng Anh, các kết quả trong lĩnh vực này rất khả quan, còn đối với tiếng Việt, các công trình nghiêncứu về phânloại văn bản gần đây đã có một số kết quả ban đầu nhƣng vẫn còn nhiều hạn chế. Nguyên nhân là ngay ở bƣớc đầu tiên, chúng ta đã gặp khó khăn trong việc xử lý văn bản để rút ra tần số xuất hiện của từ. Trong khi đó, để phânloại văn bản thì có thể nói bƣớc đầu tiên là quan trọng nhất bởi vì nếu ở bƣớc tách từ đã sai thì việc phânloại hầu nhƣ không thể thành công đƣợc. Phần trình bày tiếp theo sẽ cho chúng ta biết những thách thức đặt ra trong việc tách từ tiếng Việt, cũng nhƣ những ứng dụng thú vị của nó. 1.2.2 Tổng quan trong nƣớc Vấn đề phânloại văn bản tiếngViệt đƣợc nhiều cơ sở nghiêncứu trong cả nƣớc quan tâm trong những năm gần đây. Một số công trình nghiêncứu cũng đạt đƣợc những kết quả khả quan. Các hƣớng tiếp cận bài toán phânloại văn bản đã đƣợc nghiêncứubao gồm: hƣớng tiếp cận bài toán phânloại bằng lý thuyết đồ thị[10], cách tiếp cận sử dụng . TRƢỜNG ĐẠI HỌC LẠC HỒNG KHOA CÔNG NGHỆ THÔNG TIN ---------- BÁO CÁO NGHIÊN CỨU KHOA HỌC ĐỀ TÀI: XÂY DỰNG HỆ THỐNG PHÂN LOẠI TÀI LIỆU TIẾNG VIỆT TRẦN. hiện đề tài Xây dựng hệ thống phân loại tài liệu tiếng Việt nhằm tìm hiểu và thử nghiệm các phƣơng pháp phân loại văn bản áp dụng trên tiếng Việt. Trong