TÌM HIỂU CÁC HƯỚNG TIẾP CẬN VÀ XÂY DỰNG HỆ THỐNG PHÂN LOẠI VĂN BẢN THEO CHỦ ĐỀ ITÊN ĐỀ TÀI: Tìm hiểu các hướng tiếp cận và xây dựng hệ thống phân loại văn bản theo chủ đề.IINHIỆM VỤ VÀ NỘI DUNG: Nghiên cứu các hướng tiếp cận việc phân lớp văn bản theo chủ đề. Đánh giá các phương pháp phân lớp,dựa vào cơ sở lý thuyết của một phương pháp để xây dựng hệ thống tự động phân lớp văn bản tiếng việt theo chủ đề .
BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG HỌC VIỆN KỸ THUẬT QN SỰ HỒNG THỊ HÀ TÌM HIỂU CÁC HƯỚNG TIẾP CẬN VÀ XÂY DỰNG HỆ THỐNG PHÂN LOẠI VĂN BẢN THEO CHỦ ĐỀ Chuyên ngành: Khoa Học Máy Tính Mã số: 640801 LUẬN VĂN THẠC SĨ KỸ THUẬT Hà Nội - Năm 2012 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI HỌC VIỆN KĨ THUẬT QUÂN SỰ Cán hướng dẫn chính: TS Hà Chí Trung Cán chấm phản biện 1: TS Nguyễn Hữu Quỳnh Cán chấm phản biện 2: TS Lê Đình Sơn Luận văn thạc sĩ bảo vệ tại: HỘI ĐỒNG CHẤM LUẬN VĂN THẠC SĨ HỌC VIỆN KĨ THUẬT QUÂN SỰ Ngày 22 tháng 06 năm 2012 HỌC VIỆN KỸ THUẬT QUÂN SỰ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM PHÒNG SAU ĐẠI HỌC Độc lập - Tự - Hạnh phúc Hà Nội, ngày 16 tháng 05 năm 2012 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Hoàng Thị Hà Giới tính: Nữ Ngày, tháng, năm sinh: 26/10/1986 Nơi sinh: Hải Phịng Chun ngành: Khoa Học Máy Tính Mã số: 10870135 I-TÊN ĐỀ TÀI: Tìm hiểu hướng tiếp cận xây dựng hệ thống phân loại văn theo chủ đề II-NHIỆM VỤ VÀ NỘI DUNG: Nghiên cứu hướng tiếp cận việc phân lớp văn theo chủ đề Đánh giá phương pháp phân lớp,dựa vào sở lý thuyết phương pháp để xây dựng hệ thống tự động phân lớp văn tiếng việt theo chủ đề III-NGÀY GIAO NHIỆM VỤ: tháng 12 năm 2011 IV- NGÀY HOÀN THÀNH NHIỆM VỤ: 16/5/2012 V- CÁN BỘ HƯỚNG DẪN: TS Hà Chí Trung CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN QL CHUYÊN NGÀNH Nội dung đề cương luận văn thạc sĩ Hội đồng chuyên ngành thông qua Ngày……tháng……năm 2012 TRƯỞNG PHÒNG SĐH TRƯỞNG KHOA QL NGÀNH MỤC LỤC Trang Trang phụ bìa………………………………………………………………… Nhiệm vụ luận văn…………………………………………………………… Danh mục ký hiệu chữ viết tắt……………………………………… Danh mục bảng…………………………………………………………… Danh mục hình vẽ………………………………………………………… MỞ ĐẦU…………………………………………………………………… Chương TỔNG QUAN VỀ BÀI TOÁN PHÂN LỚP VĂN BẢN 1.1 Bài toán phân lớp văn khái niệm liên quan……………… 1.2 Phân loại toán phân lớp văn bản………………………………… 1.3 Sơ đồ hoạt động hệ thống phân lớp văn bản…………………… 1.4 Đánh giá phương pháp phân lớp………………………………… 1.4.1 Đánh giá dựa vào độ triệu hồi độ xác…………… 1.4.2 Đánh giá dựa vào độ tương tự……………………………… 1.5 Các yếu tố quan trọng tác động đến phân lớp văn bản……………… 12 1.6 Một số phương pháp phân lớp văn bản……………………………… 13 1.7 1.6.1 Phương pháp phân lớp sử dụng máy vec tơ hỗ trợ(SVM)… 13 1.6.2 Phương pháp phân lớp K láng giềng gần nhất……………… 14 1.6.3 Phương pháp phân lớp Naïve Bayes……………………… 15 1.6.4 Phương pháp phân lớp sử dụng mạng nơ ron……………… 17 1.6.5 Phương pháp phân lớp Linear Least Square Fit(LLSF)…… 18 1.6.6 Phương pháp phân lớp dựa vec tơ trọng tâm………… 19 Kết luận chương 1…………………………………………………….21 Chương PHÂN LỚP VĂN BẢN SỬ DỤNG MÁY VECTOR HỖ TRỢ (SVM) 2.1 Cơ sở lý thuyết phương pháp phân lớp SVM………………… 22 2.1.1 Một số định nghĩa chính…………………………………… 23 2.1.2 Rủi ro phương pháp học máy có giám sát…………… 25 2.1.3 Nguyên tắc tối thiểu hóa rủi ro cấu trúc…………………… 27 2.1.4 Bổ đề Vapnik……………………………………………… 28 2.1.5 Nguyên lý nhận dạng mẫu (Pattern Recognition)………… 29 2.2 Bộ phân loại SVM ………………………………………………… 30 2.2.1 Phương pháp SVM với tập liệu khả tách tuyến tính… … 33 2.2.2 Phương pháp SVM với tập liệu khơng khả tách…… … 40 2.3 Tìm tham số α theo thuật toán 2v – SVM ……………………… 43 2.3.1 Tham số đầu vào………………………………………… 43 2.3.2 Thuật toán khởi tạo biến α0………………………… 2.4 46 Đặc điểm tiếng Việt…………………………………………… 48 2.4.1 Đơn vị tiếng Việt……………………………… 48 2.4.2 So sánh đặc điểm từ tiếng Việt tiếng Anh…………… 49 2.4.3 Nhận xét…………………………………………………… 49 2.5 Hệ thống phân lớp văn sử dụng phương pháp SVM………… 50 2.5.1 Giai đoạn huấn luyện……………………………………… 50 2.5.2 Giai đoạn phân lớp………………………………………… 53 2.6 Kết luận chương 2………………………………………………… 62 Chương HỆ THỐNG TỰ ĐỘNG PHÂN LỚP VĂN BẢN THEO CHỦ ĐỀ 3.1 Các chức chủ yếu hệ thống………………………… … 64 3.1.1 Chức tự động lấy từ trang web…………………… 65 3.1.2 Chức tiền xử lý văn bản……………………………… 65 3.1.3 Huấn luyện SVMs………………………………………… 67 3.1.4 Phân loại văn bản……………………………………………67 3.1.5 Kiểm tra hiệu suất phương pháp SVM…………………… 68 3.2 Một số sơ đồ luồng liệu chương trình…………………… 68 3.3 Cơ sở liệu chương trình………………………………… 70 3.4 Một số form giao diện chương trình……………………… 3.5 Đánh giá hiệu suất chương trình………………………………… 75 3.6 Kết mà luận văn đạt được………………………………… 76 3.7 Những vấn đề tồn tại………………………………………… 77 3.8 Hướng phát triển toán…………………………………… 77 73 TÀI LIỆU THAM KHẢO……………………………………………… 78 TÓM TẮT LUẬN VĂN Họ tên học viên: Hoàng Thị Hà Chuyên ngành: Khoa Học Máy Tính Khóa: 22 Cán hướng dẫn: TS Hà Chí Trung Tên đề tài: Tìm hiểu hướng tiếp cận xây dựng hệ thống phân loại văn theo chủ đề Tóm tắt: Luận văn tập trung tìm hiểu toán phân lớp văn vào chủ đề cho trước, nghiên cứu phương pháp phân lớp văn Đi sâu nghiên cứu, phân tích thuật tốn phân lớp văn sử dụng máy vector hỗ trợ (Support Vector Machine – SVM) Dựa phương pháp xây dựng hệ thống tự động phân lớp văn tiếng việt Cài đặt ứng dụng minh họa đánh giá thuật toán DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT SVM (Support Vector Machines): Phương pháp phân lớp văn sử dụng máy vector hỗ trợ kNN (K Nearest Neighbor): Phương pháp phân lớp văn k–láng giềng gần NNet (Neral Network): Phương pháp phân lớp sử dụng mạng nơ – ron LLSF (Linear Least Square Fit): Phương pháp phân lớp Linear Least Square Fit TC (Text Classification): Bài toán phân loại văn VC (Vapnik Chervonenkis Dimension): Chiều VC DANH MỤC CÁC BẢNG Bảng 1.1 Bảng ký hiệu độ đo đánh giá phương pháp phân lớp Bảng 2.1 Các điểm khác biệt tiếng Việt tiếng Anh…………48 Bảng 2.2 Danh sách số từ dừng tiếng Anh 53 Bảng 2.3 Danh sách số từ dừng tiếng Việt 54 Bảng 2.4 Danh sách dấu chấm câu 54 DANH MỤC CÁC HÌNH VẼ Hình 1.1 Sơ đồ khung hệ thống phân lớp văn Hình 1.2 Minh họa cách tính độ hồi tưởng độ xác Hình 1.3 Phương pháp phân loại SVM 13 Hình 1.4 Hình kiến trúc mô đun 18 Hình 2.1 Lớp nửa khơng gian phân cách siêu phẳng 24 Hình 2.2 Minh hoạ chiều VC khơng gian chiều với điểm liệu 25 Hình 2.3 Phân tách tuyến tính xác định mặt hình học H 29 Hình 2.4 Mặt siêu phẳng phân tách mẫu dương khỏi mẫu âm 31 Hình 2.5 Mối quan hệ siêu phẳng phân tách 32 Hình 2.6 Siêu phẳng phân tách tối ưu H trường hợp tuyến tính 33 Hình 2.7 Minh họa Support Vectors 37 Hình 2.8 Trường hợp liệu huấn luyện có nhiễu 38 Hình 2.9 Trường hợp tuyến tính có nhiễu 39 Hình 2.10 Thực ánh xạ sang khơng gian đặc trưng kích thước lớn 41 Hình 2.11 Phân lớp với nhân Gaussian 43 Hình 2.12 Mơ hình giai đoạn huấn luyện 50 Hình 2.13 Chi tiết giai đoạn huấn luyện 51 Hình 2.14 Mơ hình giai đoạn phân lớp 52 Hình 2.15 Mơ hình chi tiết giai đoạn phân lớp 52 Hình 2.16 Các hướng tiếp cận tách từ tiếng việt 56 Hình 2.17 Biểu diễn vector văn không gian hai chiều 58 Hình 2.18 Văn biểu diễn thành vector đặc trưng 58 Hình 3.1 Sơ đồ hoạt động hệ thống 64 Hình 3.2 Mơ hình xử lý tiền văn 67 Hình 3.3 Lược đồ tiền xử lý tập huấn luyện trích chọn tập đặc trưng 69 Hình 3.4 Lược đồ tiền xử lý liệu kiểm tra 70 66 - Loại bỏ ký tự cách trống hai đầu - Chuyển toàn văn chữ thường - Thay ký tự đặc biệt (như: \n xuống dòng, \t: tab…) - Loại bỏ hai ký tự đặc biệt liên tiếp giống (như: hai dấu space, hai dấu phẩy…) Tách văn thành mảng câu: - Định nghĩa mảng ký tự đặc biệt dùng để tách câu - Phân tách thành chuỗi chuẩn theo ký tự đặc biệt định nghĩa - Chuẩn hóa câu tách đưa vào mảng kết Tách từ chuỗi đưa vào mảng kết quả: - Chuỗi đầu vào có số lượng âm tiết lớn số lượng âm tiết tối đa từ ghép Sử dụng thuật toán đệ quy: B1: Từ chuỗi ban đầu lấy từ phải sang trái, ngắt lấy chuỗi có số lượng âm tiết lớn nhỏ số lượng âm tiết tối đa từ ghép Thực tách từ, tìm từ dài nằm cuối chuỗi vừa nhận B2: Loại bỏ từ vừa tìm bước khỏi chuỗi ban đầu Tiếp tục thực tách từ với chuỗi vừa nhận B3: Kết trả kết hợp kết bước với từ tìm bước Vector hóa văn bản: cần vector hóa loại văn văn cần phân loại văn huấn luyện - Văn tách từ Biểu diễn văn dạng danh sách cặp giá trị (từ/số lần xuất từ) - Tập văn huấn luyện tách từ Biểu diễn tập văn huấn luyện dạng danh sách cặp giá trị (từ/số lần xuất từ) 67 Trích chọn đặc trưng văn bản: - Sử dụng phương pháp TF để trích chọn đặc trưng văn - Sử dụng phương pháp IDF để trích chọn IDF từ - Kết hợp hai phương pháp tìm đặc trưng văn TFIDF Tồn nội dung thuật tốn thể sơ đồ sau: Văn Loại Tách thô nhiễu câu Tách từ ký tự Vec tơ biểu diễn văn Thống Loại bỏ theo tần suất kê từ từ dừng Hình 3.2 Mơ hình xử lý tiền văn 3.1.3 Huấn luyện SVMs - Đầu vào tập vector biểu diễn văn huấn luyện - Đầu tham số alpha b Nội dung thuật toán: B1: Xác định hàm phân loại văn B2: Đưa vào văn cần phân loại B3: Lấy giá trị hệ số alpha b tương ứng với chủ đề xét B4: Xác định mã số chủ đề Q trình huấn luyện tính toán tham số siêu phẳng phân tách phục vụ cho việc phân loại văn sau 3.1.4 Phân loại văn - Đầu vào: vector biểu diễn văn 68 - Đầu ra: gán nhãn cho văn Khi đưa vào văn chương trình tiến hành phép tính tốn xem văn thuộc chủ đề mà học trước 3.1.5 Kiểm tra hiệu suất phương pháp SVM - Đầu vào: thông tin tập văn gán nhãn sẵn sau cho tập qua chương trình phân loại thu nhãn - Đầu ra: Các đánh giá tính đắn SVM 3.2 Một số sơ đồ luồng liệu chương trình Khi liệu đưa vào chương trình, việc xử lý liệu bao gồm tiền xử lý cho liệu huấn luyện tiền xử lý cho liệu kiểm tra phân loại Đây hai trình khác nhau, việc tiền xử lý cho tập huấn luyện trình lựa chọn tập từ khố đặc trưng chung Sau đó, tập từ khoá đặc trưng dùng biểu diễn cho tập liệu kiểm tra Sau lược đồ tiền xử lý cho tập văn huấn luyện tập văn kiểm tra: 69 Hình 3.3 Lược đồ tiền xử lý tập huấn luyện trích chọn tập đặc trưng 70 Hình 3.4 Lược đồ tiền xử lý liệu kiểm tra Sau liệu xử lý, kết thu sở liệu cho trình 3.2 Cơ sở liệu chương trình Dữ liệu chương trình bao gồm bảng chính: 71 Bảng 3.1 Bảng topic chứa danh sách chủ đề - TopicID: trường chữa mã chủ đề Mỗi chủ đề có mã riêng biệt, khơng có chủ đề phép lặp lại Vì vậy, TopicID coi trường khóa - TopicName: tên chủ đề (ví dụ: văn hóa, giáo dục, thể thao, y tế, sức khỏe, giới tính…) Nội dung chi tiết bảng topic danh sách chủ đề: Bảng 3.2 Bảng chứa văn huấn luyện - TopicID: mã văn huấn luyện - Doccontent: nội dung văn huấn luyện 72 - URL: đường link liên kết tới văn huấn luyện Dữ liệu huấn luyện chương trình lấy tự động từ hai trang web tin tức Vnexpress.net dantri.com.vn Hai bảng sở liệu liên kết sau: Việc lựa chọn văn để kiểm thử thuật toán dựa vào giả thiết sau: - Các tài liệu phân lớp thành phân nhóm tách biệt Trên thực tế, tài liệu Vnexpress.net dantri.com.vn phân loại khơng xác Các phân lớp tài liệu có giao thoa tài liệu thuộc phân lớp có đặc trưng thuộc phân lớp khác - Sự phân bố tài liệu phân nhóm khơng ảnh hưởng tới phân bố tài liệu phân nhóm khác Giả thiết đặt để chuyển tốn phân loại nhiều phân lớp thành toán phân loại hai phân lớp 73 3.3 Một số form giao diện chương trình - Giao diện chương trình phân loại văn Hình 3.5 Giao diện chương trình phân loại văn - Giao diện cấu hình hệ thống Hình 3.6 Giao diện thiết lập cấu hình hệ thống phân loại văn - Giao diện tự động lấy viết từ website: 74 Hình 3.7 Giao diện tự động lấy - Giao diện tách từ tiếng việt: Hình 3.8 Giao diện tách từ 75 - Giao diện kết phân loại: Hình 3.9 Giao diện kết 3.5 Đánh giá hiệu suất chương trình Tên test Chính xác Vnexpress600 96,67%(=580/600) Dantri1200 86,7%=(1024/1200) Những kết thực nghiệm thí nghiệm phân loại văn tiếng Việt phân loại SVM có độ xác chưa cao (khoảng 86,72%) Điều q trình tiền xử lý văn liệu huấn luyện với liệu thử nghiệm phân loại chưa xác Thật liệu thu thập Vnexpress.net khơng phân loại chuẩn Một văn bản, ví dụ thuộc lĩnh vực “Cơng nghệ” hồn tồn thuộc lĩnh vực “Kinh doanh” Như phân lớp văn mẫu thực 76 tế khơng hồn tồn phân tách tuyến tính mà có vùng khơng gian mập mờ Điều ảnh hưởng mạnh đến trình huấn luyện phân loại 3.6 Kết mà luận văn đạt - Nắm kiến thức toán phân lớp văn - Tiếp cận hướng phân lớp văn - Nắm vững thuật toán phân lớp văn sử dụng máy vector hỗ trợ (SVM) Dựa phương pháp xây dựng nên hệ thống tự động phân lớp văn vào chủ đề - Cài đặt ứng dụng minh họa đánh giá thuật toán 3.7 Những vấn đề tồn Do thời gian thực trình độ hiểu biết cịn nhiều hạn chế nên luận văn em khơng tránh khỏi thiếu sót Một số vấn đề hạn chế luận văn sau: - Đối với việc phân tách từ khoá: chưa giải vấn đề phức tạp ngôn ngữ tiếng Việt như: chưa xử lý vấn đề đồng nghĩa, chưa xử lý danh từ riêng… - Bài toán xử lý gia tăng nối tiếp dựa SVM Vấn đề đặt là: “giả sử tập liệu huấn luyện tương đối lớn, có điểm liệu thêm vào tập huấn luyện, cần phải xử lý cho trình huấn luyện lại cần tận dụng kết tham số huấn luyện trước mà khơng phải huấn luyện lại từ đầu” Nếu giải tốt vấn đề mức độ ứng dụng chương trình có ý nghĩa lớn 3.8 Hướng phát triển toán - Phát triển phương pháp phân lớp sử dụng máy vector hỗ trợ (SVM) cách tối ưu hóa hàm nhân để tạo nhiều phân lớp khác 77 - Tích hợp hệ thống tự động phân lớp văn vào hệ thống quản lý lưu trữ liệu để rút ngắn thời gian tìm kiếm, tổ chức liệu hợp lý - Tiếp tục cải thiện module huấn luyện cho chi phí thời gian đạt cách tối ưu 78 TÀI LIỆU THAM KHẢO Tiếng Việt Nguyễn Ngọc Bình (2004), Dùng lý thuyết tập thơ kỹ thuật khác để phân loại, phân cụm văn tiếng Việt, Kỷ yếu hội thảo ICT.rda’04 Hà Nội Đỗ Bích Diệp (2004), Phân loại văn dựa mơ hình đồ thị, Luận văn http://www.db.dk/bh/Lifeboat_KO/CONCEPTS/semantic_relations.htm Nguyễn Linh Giang, Nguyễn Duy Hải (tháng 7-1999, trang 61-67 1999), “Mô hình thống kê hình vị tiếng Việt ứng dụng”, Chun san “Các cơng trình nghiên cứu, triển khai Cơng nghệ Thơng tin Viễn thơng, Tạp chí Bưu Viễn thông, số Huỳnh Quyết Thắng, Đinh Thị Phương Thu (2005), “Tiếp cận phương pháp học không giám sát học có giám sát với hai văn mơ hình vector”, Kỷ yếu Hội thảo ICT.rda’04, trang 251261, Hà Nội Đinh Thị Phương Thu, Hoàng Vĩnh Sơn, Huỳnh Quyết Thắng (2005), “Phương án xây dựng tập mẫu cho toán phân lớp văn tiếng Việt: nguyên lý, giải thuật, thử nghiệm đánh giá kết quả”, Bài báo gửi đăng Tạp chí khoa học cơng nghệ Nguyễn Thị Thu Hà (2010), “Phát triển số kỹ thuật tóm tắt văn tiếng Việt sử dụng phương pháp học bán giám sát”, Báo cáo tốt nghiệp Tiếng Anh Aixin Sun, Ee-Peng Lim(November,2001) Hierarchical Text Classification and Evaluation Proceedings of the 2001 IEEE International Conference on Data Mining (ICDM 2001) pages 521 – 528, California, USA, Girju R., Badulescu A., and Moldovan D (May-June 2003), Learning Semantic Constraints for the Automatic Discovery of Part-Whole 79 Relations In the Proceedings of the Human Language Technology Conference, Edmonton, Canada Girju R (4-15 August 2008), Semantic relation extraction and its applications, Course Material 20th European Summer School in Logic, Language and Information (ESSLLI 2008) Frete und Hansestadt Hamburg, Germany 10 Sebastini (2001) Machine Learning in Automated text Categorisation Technical report IEI-B4-31 Istitudo di Elaborazione dell’Informazione 11 Kim, S., Lewis, P., Martinez, K and Goodall, S (2004) Question Answering Towards Automatic Augmentations of Ontology, Instances In The Semantic Web 12 Hong-Woo Chun, Yoshimasa Tsuruoka, Jin-Dong Kim, Rie Shiba, Naoki Nagata, Teruyoshi Hishiki, Jun-ichi Tsujii (2006), Extraction of Gene-Disease Relations from Medline Using Domain Dictionaries and Machine Learning, Pacific Symposium on Biocomputing 13 Minlie Huang and Xiaoyan Zhu and Yu Hao and Donald G Payan and Kunbin Quand Ming Li (2004), Discovering patterns to extract protein-protein interactions from full texts, 20 pp 3604–3612 14 V Vapnik (2000), Nature of statistical learning theory, Springer-Verlag 15 V N Vapnik, A Ya Chervonenkis (1974), Teoria Raspoznavaniya Obrazov, Nauka 80 LÝ LỊCH TRÍCH NGANG Họ tên: Hoàng Thị Hà Ngày tháng năm sinh: 26/10/1986 Nơi sinh: Hải Phòng Địa liên lạc: Số nhà 07, dãy C4, đường Đỏ 3, phường Văn Đẩu, quận Kiến An, thành phố Hải Phòng Email: hoanghahp26@gmail.com Điện thoại: 0977 491 562 Q TRÌNH ĐÀO TẠO Trường Trình độ theo học Khóa học Đại Học Cơng Nghệ Thơng Tin Đại học 2006 – 2010 Học Viện Kỹ Thuật Quân Sự Sau đại học 2010 - 2012 ... mãn điều kiện trên, mức rủi ro thực nghiệm Remp Theo bổ đề Vapnik siêu phẳng f(x) lựa chọn theo cách có chiều VC nhỏ Do đó, siêu phẳng lựa chọn theo cách có khả đạt mức độ rủi ro thực nghiệm tối... 1.1 [Văn bản] - Văn bản: Theo nghĩa rộng văn hiểu vật mang tin ghi ký hiệu hay ngôn ngữ, nghĩa phương tiện dùng để ghi nhận truyền đạt thông tin từ chủ đề đến chủ đề khác Theo nghĩa hẹp, văn hiểu... 7 1.4 Đánh giá phương pháp phân lớp Đánh giá kết phương pháp phân loại văn tính tốn theo nhiều cách khác Theo khảo sát Sebastiani [7,10], độ đo phổ biến sử dụng để đánh giá phân loại độ triệu