1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phân loại văn bản theo chủ đề bằng phương pháp support vector machines kết hợp với các kỹ thuật hỗ trợ

127 39 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phân loại văn bản theo chủ đề bằng phương pháp support vector machines kết hợp với các kỹ thuật hỗ trợ
Tác giả Nguyễn An Nhơn
Người hướng dẫn PGS. TS. Phan Thị Tươi
Trường học Đại Học Quốc Gia Tp. Hồ Chí Minh
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận văn thạc sĩ
Năm xuất bản 2005
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 127
Dung lượng 1,1 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngoài ra, để tăng độ chính xác của hệ thống, tác giả sử dụng thêm một số phương pháp hỗ trợ tiền xử lý như phương pháp chọn từ khóa giúp giảm kích thước không gian huấn luyện, phương phá

Trang 2

Trước tiên tôi xin bày tỏ lòng biết ơn sâu sắc đến PGS TS Phan Thị Tươi, người đã cho tôi cơ hội đến với chuyên ngành xử lý ngôn ngữ tự nhiên (Natural Language Processing) Cô cũng là người hướng dẫn tôi trong suốt quá trình thực hiện luận văn Luận văn này được hoàn thành dưới sự hướng dẫn tận tình của Cô cũng như các tài liệu được Cô cung cấp

Tôi xin chân thành cảm ơn các Thầy Cô trong Khoa Công Nghệ Thông Tin , Trường Đại Học Bách Khoa đã truyền đạt những kiến thức quý báu trong suốt khoá học Tôi xin cảm ơn Thầy Cao Hoàng Trụ đã truyền đạt những kiến thức về các kỹ thuật học máy nói chung và phương pháp Support Vector Machines nói riêng

Tôi xin cảm ơn các đồng nghiệp ở công ty PSV đã chia sẽ công việc và hỗ trợ về mặt kỹ thuật để tôi có thể hoàn thành luận văn này

Tôi xin cảm ơn các bạn học viên cao học CNTT K14 đã giúp đỡ và đóng góp ý kiến trong việc hoàn thành đề tài

Cuối cùng, tôi xin cảm ơn gia đình đã hỗ trợ về mặt tinh thần cho tôi trong suốt thời gian khoá học, đặc biệt trong giai đoạn thực hiện luận văn

Trang 3

Việc phân loại văn bản tự động đang trở thành một công việc quan trọng khi số lượng dữ liệu dạng văn bản bùng nổ Các văn bản này có thể tồn tại trực tuyến trên Internet, mail điện tử, cơ sở dữ liệu, các thư viện số Mục tiêu của việc phân loại văn bản là gán các văn bản cho trước vào một số chủ đề đã được định nghĩa trước

Các thực nghiệm cho thấy phương pháp Support Vector Machines (SVMs) rất thích hợp cho việc phân loại văn bản Hiệu suất của phương pháp này tốt hơn hẳn các phương pháp phân loại văn bản phổ biến khác như k-nearest neighbor (kNN), neural networks (NNet), và Naive Bayes (NB) Mục tiêu của phương pháp này là suy diễn ra một luật suy diễn từ các mẫu phân loại thuộc các khái niệm khác nhau bằng các tổng quát hoá các mẫu huấn luyện

Sử dụng giải thuật SMO, máy học Support Vector Machines đã thể hiện độ chính xác cao trên tập kiểm tra Số lượng mẫu huấn luyện tối thiểu cần thiết để có thể đạt được độ chính xác tốt (khoảng 90%) là khoảng 300 mẫu (150 mẫu dương và 150 mẫu âm) Trong luận văn này, giải thuật SMO đã được cải tiến về các điều kiện dừng và công thức tính hàm mục tiêu Điều này đã mang lại hiệu suất học cao và độ chính xác phân loại tốt

Trong khái niệm tiền xử lý văn bản, việc loại bỏ từ kết thúc không ảnh hưởng đến độ chính xác phân loại văn bản Ảnh hưởng của việc chọn lựa từ khóa đã được kiểm tra thông qua việc thay đổi ngưỡng độ lợi thông tin Loại các từ có giá trị phân loại thấp giúp giảm số chiều không gian từ khóa, điều này giúp tăng hiệu suất phân loại Một phương pháp khác để thu giảm không gian từ khoá là gom nhóm từ và văn bản Trong phương pháp này, các văn bản huấn luyện được gom nhóm đồng thời với việc gom nhóm các từ khoá Phương

Trang 4

trắng mà ta phải dựa vào nghĩa của chúng Để tăng hiệu suất phân loại của giải thuật Support Vector Machines đối với các văn bản tiếng Việt, giải thuật phân đoạn từ N-gram được sử dụng để phân đoạn các văn bản thành các từ theo ý nghĩa Giải thuật này cũng đã được kiểm tra với kết quả rất tốt

Trang 5

Text categorization is becoming increasingly important given the large volume of online text available through the Internet, electronic mail, corporate databases, medical patient records and digital libraries The goal of text categorization is to classify documents into a certain number of predefined categories

Evidence shows that Support Vector Machines (SVMs) are well suited for text categorization, outperforming other well-known text categorization methods such as k-nearest neighbor (kNN), neural networks (NNet), and Nạve Bayes (NB) Support vector learning attempts to induce a decision rule from which to categorize examples of different concepts by generalizing from a set

of training examples

Using the SMO algorithm, linear support vector machines showed very good overall categorization accuracy on the test collection The minimum number of training examples required to achieve good classification accuracy (around 90%) was found to be a training set size of around 300 examples (150 positive and 150 negative instances) In this thesis, the SMO was improved by changing the stop conditions and the formula used to calculate target function This lead to a very good performance and accuracy

In terms of document pre-processing, the exclusion of stemming, inclusion

of stop-words did not significantly affect the classifier’s accuracy The effect of variations in feature selection was also tested, using information gain (IG) threshold Removal of rare terms reduces the dimensionality of the feature space, and can lead to an increase in text categorization performance However, excessive term removal is not recommended Another method was

Trang 6

method, training texts are clustered, and at the same time, features are also clustered in order to tackle the data sparseness problem

For Vietnamese language, the words are not separated by blank space but we must base on their meanings To accommodate the Support Vector Machines algorithm to Vietnamese documents, the N-gram segmentation algorithm was used to parse the documents to full meaning words This algorithm also was tested with an accurate result

Trang 7

Phần 1 1

PHÁT BIỂU VẤN ĐỀ 1

1 - Giới thiệu 1

2 - Đề tài nghiên cứu 3

3 - Những kết quả nghiên cứu liên quan 4

3.1 - Những đề tài nghiên cứu trong nước 4

3.2 - Những đề tài nghiên cứu ngoài nước 5

4 - Kết quả đạt được và những đóng góp 6

Phần 2 8

CƠ SỞ LÝ THUYẾT PHÂN LOẠI VĂN BẢN 8

1 - Biểu diễn văn bản 8

1.1 - Phương pháp Boolean 9

1.2 - Phương pháp tần xuất từ (work frequency) 9

1.3 - Phương pháp tf x idf (term frequency x inverse document frequency) 10

1.4 - Phương pháp tfc (term frequency component) 10

1.5 - Phương pháp ltg (log term component) 10

1.6 - Phương pháp Entropy 11

2 - Chọn lựa từ khoá (feature selection) 11

2.1 - Phương pháp ngưỡng từ khóa văn bản 12

2.2 - Phương pháp độ lợi thông tin 12

2.3 - Phương pháp thông tin tương hỗ 13

2.4 - Phương pháp thống kê χ 2 14

2.5 - Phương pháp độ mạnh của từ 14

3 - Chọn tập văn bản dùng để phân loại 15

3.1 - Tập Reuters – 21578 15

3.2 - Tập 20-newsgroup 16

4 - Các phương pháp đánh giá việc phân loại văn bản 17

Trang 8

CÁC GIẢI THUẬT PHÂN LOẠI VĂN BẢN 20

1 - Giải thuật Naive Bayes (NB) 20

1.1 - Giải thuật 20

1.2 - Đánh giá: 22

2 - Giải thuật mạng Neural (Neural Network) 22

2.1 - Giải thuật 22

2.2 - Đánh giá: 25

3 - Giải thuật cây quyết định 26

3.1 - Giải thuật phân loại 26

3.2 - Giải thuật xây dựng cây quyết định 27

3.3 - Đánh giá: 29

4 - Giải thuật Support Vector Machines 29

4.1 - Mô hình học máy tuyến tính 30

4.2 - Khái niệm về Kernel 32

4.3 - Lý thuyết tổng quát hoá 36

4.4 - Lý thuyết về tối ưu 40

4.5 - Lý thuyết Support Vector Machines 44

4.6 - Các ứng dụng Support Vector Machines 55

Phần 4 59

THIẾT KẾ VÀ HIỆN THỰC 59

1 - Đặc tả hệ thống 59

2 - Giải thuật huấn luyện 61

2.1 - Biểu diễn văn bản 61

2.2 - Thiết kế giải thuật học máy SVMs 74

3 - Giải thuật phân loại 85

3.1 - Phân loại nhị phân 86

3.2 - Mở rộng hệ thống phân loại nhị phân thành đa chủ đề 87

4 - Hiện thực chương trình 88

Trang 9

Phần 5 96

ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN 96

1 - Đánh giá 96

2 - Hướng phát triển của đề tài 98

Phụ lục A 99

MÃ GIẢ GIẢI THUẬT SMO 99

Phụ lục B 102

GIẢI THUẬT SMO ĐÃ CẢI TIẾN 102

Phụ lục C 106

GIAO DIỆN CHƯƠNG TRÌNH 106

1 - Màn hình danh sách các mô hình phân loại 106

2 - Màn hình thêm mô hình mới 107

3 - Màn hình thêm chủ đề mới 108

4 - Màn hình thêm văn bản 109

5 - Màn hình phân loại mẫu 110

TÀI LIỆU THAM KHẢO 111

Trang 10

Hình 2.1 Mô hình vector 2 chiều 8

Hình 2.2 Thống kê một số chủ đề trong tập Reuters 16

Hình 2.3 Thống kê một số chủ đề trong tập 20-newsgroup 17

Hình 3.1 Mô hình một Perceptron 23

Hình 3.2 Mô hình mạng neural 24

Hình 3.4 Mô hình lan truyền dữ liệu 25

Hình 3.5 Cây quyết định cho chủ đề “earning” 27

Hình 3.6 Entropy của tập S 28

Hình 3.7 Đường phân cách (w,b) cho tập huấn luyện hai chiều 31

Hình 3.8 Ánh xạ sang không gian đặc trưng 33

Hình 3.9 Biên hình học của một điểm 38

Hình 3.10 Biên hình học của tập mẫu 38

Hình 3.11 Biến gia cố cho bài toán phân loại 39

Hình 3.12 Đường phân cách biên tối đại với các điểm suppor vector được tô đậm 46

Hình 3.13 Biên insensitive cho bài toán hồi qui một chiều 51

Hình 3.14 Biên insensitive cho bài toán hồi qui phi tuyến 51

Hình 3.15 Sai số ε-insensitive tuyến tính cho ε = 0 and ε != 0 53

Hình 3.16 Sai số ε-insensitive bậc hai cho ε = 0 and ε != 0 54

Hình 4.1 Mô hình huấn luyện 61

Hình 4.2 Sơ đồ giải thuật phân đoạn từ 63

Hình 4.3 Xét vị trí k có phải là điểm phân đoạn từ 65

Hình 4.4 Sơ đồ các điểm phân đoạn từ 66

Hình 4.5 Ba phương pháp huấn luyện SVMs: Chunking, Osuna và SMO 77

Hình 4.6 Ràng buộc giữa hai hệ số Lagrange 78

Hình 4.7 Mô hình phân loại 86

Trang 11

Hình 4.9 Quan hệ giữa tỉ lệ loại bỏ từ và tốc độ học 93

Hình 4.10 Quan hệ giữa hằng số C và thời gian học 95

Hình C.1 Danh sách các mô hình 106

Hình C.2 Thêm mô hình 107

Hình C.3 Thêm chủ đề phân loại 108

Bảng C.5 Danh sách các văn bản 108

Hình C.4 Chọn file để upload 109

Hình C.5 Gán chủ đề cho các mẫu 110

Trang 12

Bảng 2.1 Thống kê kết quả phân loại 18

Bảng 3.1 Hiệu suất của hệ thống nhận dạng mặt người SVM 58

Bảng 4.1 Độ chính xác của các hệ thống phân loại 89

Bảng 4.2 Tần xuất xuất hiện của các từ đôi và các tiếng 90

Bảng 4.3 Danh sách các nhóm từ, văn bản 94

Bảng C.1 Danh sách các mô hình 106

Bảng C.2 Thông tin mô hình 107

Bảng C.3 Danh sách các chủ đề 107

Bảng C.4 Thông tin chủ đề 108

Bảng C.6 Chọn văn bản cần upload 109

Bảng C.7 Danh sách các mô hình 110

Bảng C.8 Danh sách các mẫu 110

Trang 14

Phân loại văn bản tự động có lợi ích rất quan trọng trong cuộc sống hiện nay Thật vậy, sự phát triển vượt bậc của Internet đã dẫn đến sự bùng nổ các văn bản trực tuyến Khi đó các công cụ phân loại văn bản tự động rất hữu ích cho người đọc trong việc tổ chức dữ liệu Công việc phân loại văn bản cổ điển được tiến hành một cách thủ công bởi các chuyên gia lĩnh vực Điều này rất tốn kém và gây nhàm chán cho các chuyên gia này Việc phân loại tiến hành bằng máy có ưu điểm là hiệu suất cao, có thể hoạt động bất kỳ lúc nào Tuy nhiên vấn đề ta cần quan tâm là độ chính xác của hệ thống

Một số ứng dụng của việc phân loại văn bản theo chủ đề là:

Phân loại văn bản theo ngôn ngữ

Ở một số trung tâm kiểm duyệt văn bản, số lượng văn bản nhận được rất lớn Các văn bản này có thể được biểu diễn từ các ngôn ngữ khác nhau Ta có thể dùng các hệ thống phân loại văn bản theo ngôn ngữ để gán các văn bản này vào từng ngôn ngữ cụ thể Các chuyên gia ngôn ngữ sẽ kiểm duyệt các văn bản này theo ngôn ngữ chuyên môn của họ

Phân loại thông tin theo chủ đề

Trang 15

Cũng giống như việc phân loại văn bản theo ngôn ngữ, việc phân loại thông tin theo chủ đề sẽ phân chia các thông tin nhận được vào các chủ đề khác nhau Nếu việc phân loại này được thực hiện thủ công, nghĩa là thông qua con người, thì số lượng chuyên gia tham gia vào việc phân loại là rất lớn và thời gian phân loại cũng lớn hơn Việc phân loại thủ công cũng không tránh khỏi ý kiến chủ quan của những chuyên gia, vì vậy độ chính xác cũng không cao Trong khi đó, nếu thực hiện theo cách tự động sẽ tận dụng được khả năng quét các văn bản và khả năng xử lý nhanh của máy tính Do đó hiệu suất sẽ lớn hơn và độ chính xác sẽ cao hơn nếu như máy tính được huấn luyện tốt

Tìm kiếm thông tin

Việc phân loại văn bản có thể áp dụng trong các hệ thống tìm kiếm thông tin nhằm tăng hiệu suất cũng như tăng độ chính xác của việc tìm kiếm Do sự phát triển của Internet, số lượng thông tin trực tuyến ngày càng tăng Một thao tác phổ biến trên Internet là tìm kiếm Tuy nhiên, do khối lượng thông tin rất lớn nên các máy tìm kiếm (search engine) thường tổ chức dữ liệu vào các chủ đề giúp không gian tìm kiếm giảm đi, qua đó tăng hiệu suất của hệ thống Ngoài ra việc tìm kiếm theo từ khoá thường không đạt được độ chính xác cao nên các search engine thường kết hợp với tìm kiếm theo chủ đề nhằm cải thiện độ chính xác của việc tìm kiếm

Phân loại email

Chức năng của một hệ thống phân loại email tự động là:

− Từ chối mail theo luật

− Phân phối mail vào các folder định trước

− Chuyển mail đến địa chỉ khác (forward)

Trang 16

2 - Đề tài nghiên cứu

Trong nội dung của luận án, tác giả xây dựng một hệ thống dùng để phân loại văn bản theo chủ đề Nhân của hệ thống phân loại này là một máy học theo mô hình Support Vector Machines Ngoài ra, để tăng độ chính xác của hệ thống, tác giả sử dụng thêm một số phương pháp hỗ trợ tiền xử lý như phương pháp chọn từ khóa giúp giảm kích thước không gian huấn luyện, phương pháp Clustering nhằm giải quyết vấn đề dữ liệu thưa, phương pháp phân đoạn từ để tách các từ đôi, từ ba

Phương pháp Support Vector Machines được hiện thực theo cách tiếp cận học máy Mục tiêu của phương pháp này là tìm kiếm một đường biên tối ưu để phân chia các văn bản mẫu vào hai tập rời nhau Phương pháp Support Vector Machines được các nhà khoa học trong ngành xử lý ngôn ngữ tự nhiên đánh giá là có hiệu suất và độ chính xác cao Tuy nhiên phương pháp này thuộc vào họ phân loại nhị phân, nghĩa là các văn bản được gán vào một trong hai chủ đề cho trước Vì vậy, trong luận án này tác giả mở rộng phương pháp Support Vector Machines thành phân loại đa chủ đề với số chủ đề do người sử dụng định nghĩa

Vì phương pháp Support Vector Machines dựa trên cơ sở xác suất thống kê nên cũng gặp phải một số nhược điểm giống như các phương pháp dựa xác suất trước đó Nhược điểm thứ nhất là do các phương pháp này giả định các văn bản trong cùng một loại được tạo ra bởi các từ với phân bố giống nhau, điều này làm giảm độ chính xác của hệ thống phân loại Nhược điểm thứ hai là vấn đề dữ liệu thưa do xác suất xuất hiện của các từ khoá trong các văn bản quá nhỏ, do đó kết quả việc phân loại cũng bị giảm độ chính xác Vì vậy tác giả dùng kỹ thuật Clustering như là một phương pháp hỗ trợ khắc phục các nhược điểm trên

Trang 17

Ngoài ra, việc phân đoạn từ của các văn bản tiếng Việt nói riêng và các văn bản tiếng châu Á nói chung hoàn toàn khác với các ngôn ngữ Âu – Mỳ Nếu như các từ trong ngôn ngữ Âu - Mỹ cách nhau bằng khoảng trắng (từ đơn) thì một từ tiếng Việt có thể bao gồm nhiều âm tiết Do đó tác giả sử dụng phương pháp N-gram để tách các từ đôi, từ ba trong các văn bản Điều này giúp cải thiện độ chính xác của hệ thống

Như đã đề cập trong phần trên, hệ thống được xây dựng theo mô hình phân loại đa chủ đề Tuy nhiên, không mất tính tổng quát, trong phần hiện thực, tác giả chỉ dùng tập văn bản thuộc ba chủ đề là “xã hội”, “khoa học” và “thể thao” Cả ba chủ đề trên đều là các chủ đề mang tính xã hội, được thu thập từ các báo trực tuyến, vì vậy các khía cạnh trong các bài báo rất đa dạng, số lượng từ khoá rất lớn Do đó ta có thể đánh giá một cách chính xác hiệu suất của hệ thống Bên cạnh đó, để kiểm tra khả năng phân loại các văn bản trong các chủ đề gần nhau, tác giả xây dựng thêm mô hình phân loại cho tập văn bản gồm hai chủ đề “bóng đá” và “quần vợt” Đây là hai chủ đề con rất gần nhau và cùng thuộc về chủ đề thể thao, do đó biên để phân loại các văn bản trong hai chủ đề này có khoảng cách rất nhỏ

3 - Những kết quả nghiên cứu liên quan

Trong phần này tác giả trình bày một số kết quả nghiên cứu trong nước và ngoài nước liên quan đến đề tài nghiên cứu của luận án

3.1 - Những đề tài nghiên cứu trong nước

Ngọc Tuấn, Đại Học Quốc Gia Thành phố Hồ Chí Minh

Trong đề tài này, tác giả giới thiệu về các phương pháp phân đoạn từ được dùng cho ngôn ngữ tiếng Việt Trong đó N-gram là phương pháp được giới

Trang 18

thiệu và sử dụng chủ yếu Tác giả cũng giới thiệu mô hình Markov ẩn Đây là mô hình xác suất được dùng phổ biến trong lĩnh vực xử lý ngôn ngữ tự nhiên Tác giả đã xây dựng một chương trình demo phân đoạn văn bản trên tập corpus là tập “Bách Khoa toàn thư mạng”

Quang, Đại Học Quốc Gia Thành phố Hồ Chí Minh

Tác giả Trần Minh Quang đã giới thiệu các lý thuyết cơ bản trong lĩnh vực phân loại văn bản Tác giả cũng giới thiệu một số phương pháp phân loại văn bản phổ biến:

Phương pháp Naive Bayes

Phương pháp k – Nearest Neighbour

Phương pháp Rocchio

Phương pháp Perceptron

Phương pháp cây quyết định

Tác giả đã hiện thực chương trình demo dùng phương pháp cây quyết định để phân loại các văn bản thuộc chủ đề “Vi Tính” và chủ đề “Viễn Thông” Đây là các chủ đề tiếng Việt, do đó tác giả đã sử dụng thêm phương pháp phân đoạn từ để tăng độ chính xác của hệ thống

3.2 - Những đề tài nghiên cứu ngoài nước

Nara Institute of Science and Technology

Tác giả Takamura đã giới thiệu lý thuyết về phương pháp Support Vector Machines, giới thiệu một số Kernel thông dụng

Tác giả cũng đưa ra cách tiếp cận kết hợp giữa phương pháp Clustering và việc phân loại văn bản

Trang 19

3.2.2 Support Vector Machines: Training and Applications, Edga E

Osuna, Federico Girosi, Massachusetts Institute of Technology

Các tác giả đã trình bày lý thuyết Support Vector Machines và xây dựng một ứng dụng nhận dạng mặt người theo phương pháp này

S.K Shevade, C.Bhattacharyya, K.R.K Murthy, National University

4 - Kết quả đạt được và những đóng góp

− Xây dựng được một hệ thống phân loại văn bản theo phương pháp Support Vector Machines với độ chính xác khá tốt Tác giả chọn giải thuật SMO (Sequential Minimal Optimization) để hiện thực phương pháp trên Hiệu suất của hệ thống được đánh giá qua hai tập dữ liệu là: “khoa học – xã hội – thể thao” và “bóng đá – quần vợt”

− Mở rộng phương pháp Support Vector Machines thành hệ thống phân loại

đa chủ đề với số chủ đề được người sử dụng thêm vào tuỳ ý Việc này mang lại ý nghĩa thực tế rất lớn nhưng chưa được các tác giả trước đó quan tâm do các giải thuật mở rộng chưa được pháp triển

− Tối ưu giải thuật SMO nguyên thuỷ bằng cách cache dữ liệu và thay đổi cách chọn giá trị ngưỡng β Việc cache các giá trị giúp tốc độ học tăng lên rất

Trang 20

được tính trước đó Giá trị ngưỡng β được chọn dựa vào hai thông số là và giúp giảm số bước lặp và tăng độ chính xác của giải thuật

low b

up

b

− Hiện thực việc phân đoạn từ bằng giải thuật N-gram giúp tăng độ chính xác của hệ thống đối với các văn bản tiếng Việt nói riêng và tiếng châu Á nói chung Qua đó tác giả đã xây dựng một từ điển tiếng Việt bao gồm các từ khóa trong các lĩnh vực khoa học, xã hội, thể thao và trong hai lĩnh vực hẹp hơn là bóng đá và quần vợt

− Hiện thực các giải thuật thu giảm số lượng từ khoá kết hợp với việc gom nhóm từ / văn bản Việc thu giảm số lượng từ khóa dựa vào information gain giúp giảm kích thước không gian nhập cho hệ thống phân loại văn bản nhưng lại làm mất thông tin Trong khi đó, phương pháp clustering thực thi công việc gom nhóm các từ khoá và các văn bản tương tự nhau Việc gom nhóm này giúp giảm bớt kích thước của không gian nhập Đồng thời nó cũng giúp tăng trọng số của các từ, điều này giúp tăng độ chính xác cho hệ thống phân loại

Trang 21

Phần 2

CƠ SỞ LÝ THUYẾT PHÂN LOẠI VĂN BẢN

1 - Biểu diễn văn bản

Hầu hết các phương pháp phân loại văn bản dựa theo xác suất đều sử dụng phương pháp biểu diễn văn bản theo mô hình không gian vector Trong mô hình này, mỗi văn bản được xem là một tập các từ khoá (feature) với phân bố xuất hiện của các từ khoá này Vì việc phân loại văn bản theo xác suất chỉ dựa vào tần xuất xuất hiện của từ khoá mà không quan tâm đến thứ tự, cú pháp xuất hiện của chúng Do đó việc biểu diễn văn bản theo mô hình không gian vector là phù hợp [3]

Trong mô hình này, tập văn bản mẫu được biểu diễn là một ma trận V[M x L] với:

jbảnvăntrongnxuất hiệ

i khóatừnếu0j]

[i,

0]

M còn được gọi là số chiều của tập văn bản Hình 2.1 biểu diễn một tập văn bản có L = 2, M = 2, văn bản d1 chứa 2 từ khoá F1 và 4 từ khoá F2

d2

d1F2

Trang 22

Giá trị của M rất lớn do các văn bản chứa một số lượng lớn các từ khác nhau Tuy nhiên, trong mỗi văn bản chỉ chứa một số từ khoá, do đó phần lớn các giá trị của ma trận V đều có giá trị là 0 Ta có thể nói ma trận V là một ma trận thưa, điều này thường dẫn đến kết quả không chính xác cho việc phân loại

Như đã giới thiệu, giá trị v ij ≠0nếu từ khoá i xuất hiện trong văn bản thứ j Tuy nhiên giá trị của rất khác nhau tuỳ theo giải thuật Sau đây là một số giải thuật tính toán giá trị Trong đó:

ij v

ij v

f ij là số lần từ khoá i xuất hiệ n trong văn bản j

• L là tổng số các văn bản

• M là tổng số các từ khoá

m ilà số văn bản có từ i xuất hiện

1.1 - Phương pháp Boolean

Đây là phương pháp đơn giản nhất để biểu diễn văn bản Trong phương pháp này, giá trị bằng 1 nếu từ khoá i xuất hiện trong văn bản j và bằng 0 trong trường hợp còn lại

ij v

j bảnvăntrongnxuất hiệ i

khóatừnếu

1.2 - Phương pháp tần xuất từ (work frequency)

Đây cũng là một phương pháp đơn giản để biểu diễn văn bản Giá trị của bằng số lần từ khóa i xuất hiện trong văn bản j

ij

v

ij

v = f ij

Trang 23

1.3 - Phương pháp tf x idf (term frequency x inverse document

frequency)

Nhược điểm của hai phương pháp trên là chỉ quan tâm đến sự xuất hiện của từ khoá trong từng văn bản mà không quan tâm đến sự xuất hiện của từ khóa đó trong các văn bản còn lại Ý tưởng của phương pháp này là một từ khóa mang ý nghĩa càng lớn nếu từ đó có phân bố xuất hiện trong văn bản lớn đồng thời xuất hiện ít trong các văn bản còn lại Giá trị tỉ lệ thuận với số văn bản M, tỉ lệ nghịch với số văn bản có chứa từ khóa i

ij v

)log(

*

i ij

ij

m

M f

v =

1.4 - Phương pháp tfc (term frequency component)

Ý tưởng của phương pháp này tương tự như phương pháp trên, tuy nhiên độ mạnh của từ khóa càng lớn nếu nó xuất hiện trong một văn bản gồm ít từ khoá, có nghĩa là độ dài của văn bản là ngắn

ij

m

M f

m

M f

v

1

2)]

log(

*[

)log(

*

1.5 - Phương pháp ltg (log term component)

Nhược điểm của hai phương pháp trên là giá trị phụ thuộc quá lớn vào Trong khi đó, giá trị có giá trị biến thiên rất lớn kéo theo sự biến thiên lớn của Để giảm bớt sự biến thiên này, ta thay đại lượng bằng giá trị log( +1)

ij

M f

m

M f

v

2)]

log(

*)1[log(

)log(

*)1log(

Trang 24

1.6 - Phương pháp Entropy

Phương pháp này dựa trên lý thuyết về entropy Giá trị tỉ lệ với tần xuất xuất hiện của từ i và entropy của từ này trong tập mẫu:

ij

v

)) ( 1 (

* ) 1 log(f E i

trong đó E(i) là entropy của từ khoá i trong tập văn bản, E(i) được tính như sau:

)log(

)log(

1)

(

ij M

ij n

f n

f M i

=

=

với là tổng số lần văn bản i xuất hiện trong tập văn bản n i

Entropy của từ khóa i sẽ bằng -1 nếu từ i phân bố đều trong tất cả các văn bản, đồng thời sẽ bằng 0 nếu từ i chỉ xuất hiện trong một văn bản

2 - Chọn lựa từ khoá (feature selection)

Một đặc trưng quan trọng và cũng là vấn đề khó khăn nhất của bài toán phân loại văn bản theo chủ đề là số từ khoá của tập văn bản là quá lớn Điều này dẫn đến kích thước của mô hình phân loại cũng sẽ lớn vì số lượng thông số cho việc phân loại chính là tổng số từ khoá Ngoài ra, khi số lượng từ khóa lớn, tần xuất xuất hiện của chúng trong các văn bản sẽ giảm đi dẫn đến sai số trong việc tính toán Trong các phương pháp phân loại, chỉ có phương pháp Neural Network có khả năng xử lý cho trường hợp này

Do nhược điểm trên, các phương pháp phân loại thường dùng kết hợp với phương pháp chọn lựa từ khóa Mục tiêu của việc chọn lựa từ khóa là loại bỏ những từ kết thúc (stop word) Đây là những từ không có ý nghĩa cho việc phân loại Kết quả của thao tác này là số lượng từ khóa sẽ giảm đi, đồng nghĩa với số chiều của mô hình phân loại cũng giảm theo

Theo [11], có 5 phương pháp chọn lựa từ khoá thường được dùng là: ngưỡng tần xuất văn bản (Document Frequency thresholding - DF), độ lợi

Trang 25

thông tin (Information Gain – IG), thông tin tương hỗ (Mutual Information – MI), phương pháp thống kê χ2 (CHI), độ mạnh của từ (Term Strength)

2.1 - Phương pháp ngưỡng từ khóa văn bản

Tần xuất văn bản là số văn bản mà từ khoá xuất hiện Ý tưởng của phương pháp này là ta tính tần xuất văn bản của từng từ khoá và loại khỏi không gian vector những từ khoá có tần xuất văn bản nhỏ hơn một ngưỡng cho trước Giả định cơ bản của phương pháp này là các từ có tần xuất văn bản thấp mang ít thông tin để phân loại và thường là nhiễu

Đây là kỹ thuật đơn giản nhất để thu giảm từ điển từ khoá Nó dễ dàng được hiệu chỉnh đối với tập văn bản lớn

2.2 - Phương pháp độ lợi thông tin

Thông tin tương hỗ thường được dùng như là tiêu chuẩn về độ tốt trong lĩnh vực học máy Đại lượng này đo số lượng thông tin được tiên đoán đạt được khi biết một từ khóa có xuất hiện trong văn bản hay không

Gọi ký hiệu các chủ đề của tập văn bản Độ lợi thông tin của từ khoá w được định nghĩa như sau:

m i i

= m

i

m i

i i

m i

i i

i

c P w

G

)

|(log)

|()()

|(log)

|()()(log)()

(

Trong đó :

P(c i) là xác suất một văn bản thuộc chủ đề c i

P (w) là xác suất của một văn bản có từ w xuất hiện

P (w) là xác suất của một văn bản không có từ w xuất hiện

P(c i |w) là xác suất một văn bản thuộc chủ đề có từ w xuất hiện c i

P(c i |w) là xác suất một văn bản thuộc chủ đề không có từ w xuất hiện

i c

Trang 26

Ta sẽ tính toán độ lợi thông tin cho tất cả các từ khoá và loại bỏ khỏi vector đặc trưng những từ có độ lợi thông tin nhỏ hơn một ngưỡng đã định trước

2.3 - Phương pháp thông tin tương hỗ

Thông tin tương hỗ là một tiêu chuẩn thường được sử dụng trong các mô hình tính toán ngôn ngữ theo thống kê Xét khả năng xuất hiện của từ khoá w và chủ đề c, gọi A là số văn bản thuộc chủ đề c và có chứa từ w, B là số văn bản không thuộc chủ đề c và có chứa từ w, C là số văn bản thuộc chủ đề c và không chứa từ w, N là tổng số văn bản Khi đó, lượng thông tin tương hỗ giữa

w và c được định nghĩa bởi:

)(

*)(

)(log),(

c P w P

c w P c

w

và được tính xấp xỉ la:ø

)(

*)(

*log

),(

B A C A

N A c

w I

++

=I(w,c) có giá trị là 0 nếu w và c là độc lập Để đánh giá độ tốt của một từ trong việc chọn lựa từ khoá, ta kết hợp cả hai tiêu chí sau:

I

1

),()()

(

)}

, ( { max ) (

1

m i

c w I w

I

=

=Điểm yếu của thông tin tương hỗ là nó phụ thuộc nhiều vào xác suất xuất hiện của từ khoá Xét đẳng thức sau:

)()

|(log),(w c P w c P w

Ta nhận xét các từ khoá ít xuất hiện sẽ có độ mạnh cao hơn các từ khoá phổ biến do giá trị của P(w)

Trang 27

2.4 - Phương pháp thống kê χ 2

Phương pháp thống kê χ2 đo lường mức độ phụ thuộc giữa một từ khoá w và chủ đề c Gọi A, B, C, N là các giá trị tương tự phương pháp thông tin tương hỗ và D là số văn bản không thuộc chủ đề c và cũng không chứa từ w Thông số đo độ tốt được định nghĩa là:

) (

* ) (

* ) (

* ) (

) (

) ,

2

D C B A D B C A

CB AD N c

w

+ +

+ +

Đại lượng thống kê χ2 có giá trị là 0 nếu w và c độc lập Ta sẽ tính toán giá trị χ2 cho mỗi từ khoá trong chủ đề và kết hợp các điểm này lại theo một trong hai cách sau:

),()()

P w

m

i i

1 max

2

i

c w w

m i

χχ

=

=Điểm khác biệt quan trọng giữa phương pháp thống kê χ2 và MI là đại lượng χ2 ở dạng chuẩn hoá, và vì vậy giá trị χ2 có thể so sánh được giữa các từ khoá trong cùng một chủ đề Tuy nhiên, sự chuẩn hoá này có thể không đúng đối với các từ khoá có xác suất xuất hiện thấp

2.5 - Phương pháp độ mạnh của từ

Phương pháp này tính toán độ mạnh của từ dựa trên việc xuất hiện đồng thời của từ khoá trong các văn bản liên quan

Gọi x và y là hai văn bản rời nhau nhưng có liên quan với nhau, độ mạnh của từ khoá w là:

)

|()(w P w y w x

Phương pháp này giả thiết rằng các từ càng có trong nhiều văn bản liên quan với nhau thì các từ này càng có ý nghĩa thông tin

Trang 28

3 - Chọn tập văn bản dùng để phân loại

Các tập văn bản dùng trong phân loại văn bản thường gồm ba phần: tập huấn luyện (training) , hiệu chỉnh (validation) và tập kiểm tra (testing)

Tập huấn luyện chứa các văn bản đã được gán vào các chủ đề cho trước

Tập này được dùng trong quá trình xây dựng hệ thống Vì hệ thống được xây dựng theo mô hình học máy nên tập dữ liệu này rất quan trọng Máy học sẽ thu thập các từ khoá, các nhóm (cluster) trong tập văn bản này vào cơ sở tri thức Việc phân loại văn bản sau này sẽ dựa vào cơ sở tri thức có sẵn

Tập hiệu chỉnh được dùng để điều chỉnh lại giải thuật sau khi hệ thống đã

được học từ tập huấn luyện

Tập kiểm tra được dùng để đánh giá hiệu suất và độ chính xác của hệ

thống sau khi được xây dựng hoàn chỉnh

Các tập dữ liệu dùng trong phân loại văn bản đã được xây dựng rất nhiều Tuy nhiên có hai tập được dùng rộng rãi trên thế giới, đó là tập Reuters và tập 20-newsgroup

3.1 - Tập Reuters – 21578

Tập dữ liệu này được dùng phổ biến nhất [16] Tất cả các văn bản này đều

do nhóm Reuter xây dựng vào năm 1987 và được cập nhật nhiều lần thành nhiều phiên bản Mặc dù tập dữ liệu này bao gồm 21.578 văn bản nhưng trong đó có một số văn bản không có ý nghĩa cho việc phân loại văn bản Ví dụ có văn bản chỉ chứa “blah blah blah” Các văn bản này cần được bỏ đi vì nó ảnh hưởng đến độ chính xác của giải thuật Hình 2.2 thể hiện một số chủ đề trong tập Reuters

Trang 29

Hình 2.2 Thống kê một số chủ đề trong tập Reuters

3.2 - Tập 20-newsgroup

Tập 20-newsgroup cũng là một tập dữ liệu được dùng phổ biến trong lĩnh vực phân loại văn bản [17] Mặc dù tập này ít phổ biến hơn tập Reuters nhưng nó vẫn được sử dụng bởi nhiều nhà nghiên cứu Khác với tập Reuters, tập 20-newsgroup được tạo ra bởi nhiều nguồn khác nhau Điểm khác biệt rõ nét nhất giữa hai tập dữ liệu này là tập 20-newsgroup không hỗ trợ đa chủ đề Tuy nhiên tập dữ liệu này lại hỗ trợ phân loại đa cấp Ví dụ: các chủ đề sci.crypt, sci.space đều là các chủ đề con của sci (science) Hình 2.3 thống kê một số chủ đề thuộc tập 20-newsgroup

Trang 30

Hình 2.3 Thống kê một số chủ đề trong tập 20-newsgroup

4 - Các phương pháp đánh giá việc phân loại văn bản

Có rất nhiều phương pháp để đánh giá việc phân loại văn bản Trong phần này ta tìm hiểu phương pháp thông số F (F-measure) và phương pháp F-measure trung bình [19]

4.1 - Phương pháp F-measure

Trước tiên chúng ta đánh giá hiệu suất của việc phân loại văn bản nhị phân cho một chủ đề Trong vấn đề phân loại văn bản nhị phân, chúng ta cần xác định một văn bản có thuộc một chủ đề cho trước hay không Các văn bản thuộc vào chủ đề thì ta nói nó có giá trị dương (positive), còn các văn bản không thuộc vào chủ đề thì ta nói nó mang giá trị âm (negative)

Giả sử chúng ta đã thực nghiệm và kết quả được tổng kết trong bảng 2.1

Trang 31

Bảng 2.1 Thống kê kết quả phân loại

Gọi I ký hiệu cho tập văn bản thực sự mang giá trị dương, J ký hiệu cho tập văn bản tiên đoán mang giá trị dương bởi một hệ thống phân loại Các giá trị trong bảng trên có nghĩa a là kích thước của tập IJ, b là kích thước của tập

J

I∩ , c là kích thước của tập IJ và d là kích thước của tập IJ

Một công thức đơn giản để đánh giá độ chính xác của hệ thống là:

d c b a

d a F

+++

+

=Tuy nhiên công thức trên chưa đánh giá chính xác hiệu suất của một hệ thống phân loại Điều này là do trong hầu hết các tập dữ liệu, số văn bản dương thường nhiều hơn số văn bản âm rất nhiều Do đó ta định nghĩa thêm thông số precision và recall như sau:

• Thông số precision P = a / (a + c) với ý nghĩa là số văn bản dương được tiên đoán dương thực sự là văn bản dương

• Thông số recall R = a / (a + b) với ý nghĩa là số văn bản thực sự dương được đoán đúng

Hai giá trị precision và recall trên vẫn chưa đủ để đánh giá độ chính xác của hệ thống mà ta phải dùng kết hợp chúng theo công thức sau:

)/1)(

1()/1(

1

R P

F

ββ

β = + −Thông thường giá trị của β là 0.5 Khi đó thông số F-measure được rút gọn lại thành:

R P

PR F

+

= 2

5 0

Trang 32

4.2 - Phương pháp F-measure trung bình

Thông số F-measure chỉ tính toán cho mỗi chủ đề Để ước lượng độ chính xác của nhiều chủ đề ta dùng phương pháp F-measure trung bình Có hai loại chính để tính giá trị trung bình, đó là trung bình micro và trung bình macro Trong phương pháp trung bình micro, các giá trị a, b, c, d được tính tổng trên tất cả các chủ đề Sau đó kết quả sẽ được tính theo công thức của F-measure

Ngược lại, trong phương pháp trung bình macro, độ chính xác được tính trên từng chủ đề theo công thức của F-measure Sau đó độ chính xác trung bình được tính là trung bình của tất cả các chủ đề

Giá trị độ chính xác của trung bình micro sẽ khác với trung bình marcro Ý nghĩa của chúng cũng khác nhau Trong giá trị trung bình micro, tất cả các văn bản đều có cùng trọng số Trong giá trị trung bình macro, các chủ đề được đánh cùng trọng số Trung bình micro thường được dùng trong các hệ thống phân loại gồm nhiều chủ đề Trong khi đó, trung bình macro thường được dùng trong các hệ thống gồm ít chủ đề hơn

Trang 33

Phần 3

CÁC GIẢI THUẬT PHÂN LOẠI VĂN BẢN

Ngày nay các hệ thống phân loại văn bản tự động đã được phát triển rất nhiều Các giải thuật phân loại văn bản cũng được nghiên cứu và phát triển ngày càng tốt hơn với độ chính xác cao và tốc độ huấn luyện, phân loại nhanh Sau đây tác giả sẽ giới thiệu một số giải thuật thông dụng như Naive Bayes, mạng Neural, cây quyết định và phương pháp Support Vector Machines

1 - Giải thuật Naive Bayes (NB)

1.1 - Giải thuật

Hệ thống phân loại NB là hệ thống phân loại dựa trên xác suất [21] Các hệ thống NB dựa trên công thức về xác suất của Bayes sau:

)(

)()

|()

|(

D P

h P h D P D h

Trong đó:

P(h) là tiền xác suất của giả thiết h

P(D) là tiền xác suất của tập mẫu D

P(h | D) là xác suất đạt được h khi đã biết D

P(D | h) là xác suất đạt được D khi đã biết h

Đối với các hệ thống phân loại văn bản dựa theo giải thuật NB, xác suất một mẫu x (x = (x1, x2, …, xn), một vector từ khoá) được gán vào chủ đề c được tính như sau:

)(

)

|()()

|(

x p

c x p c P x c

Giá trị P(c) được tính theo công thức:

Trang 34

thống hệcủa bảnvănsốtổng

cđềchủtrongmẫubảnvănSố

=)

(c P

Ta không cần tính giá trị P(x) vì thông số này hoàn toàn không phụ thuộc vào các chủ đề Như vậy việc quan trọng trong việc tính hậu xác suất P(c | x) là tính giá trị của p(x | c) Bayes đưa ra công thức tính p(x | c) dựa trên giả thuyết cơ bản là các vector mẫu được thống kê hoàn toàn độc lập với các mẫu còn lại như sau:

=

i

i c x p c

x

p( | ) ( | )

Giá trị p(x i|c) theo công thức Maximum Likehood:

)(

),()

|(

c N

c x N c x

Với là số lần từ khoá xuất hiện trong chủ đề c và Tuy nhiên với công thức này, nếu trong một mẫu có từ khoá không xuất hiện trong chủ đề c thì xác suất p(x | c) = 0 với mọi phân bố của các từ khoá khác Để khắc phục điều này, thông số được tính theo công thức tiền xác suất Laplacian như sau:

),(x c

p i

|

|)(

),()

|(

V c

N

c x N c x

λ

λ+

+

= Trong đó λ là một hằng số dương và |V| là số các từ khoá Thông thường

λ được chọn giá trị là 1 hoặc 0.5

Sau khi tính được giá trị của các hậu xác suất , việc phân loại một văn bản đơn giản chỉ là gán văn bản vào chủ đề có giá trị là lớn nhất:

)

|

( x c P

)

|

( x c P

)

|()(maxarg

)

|(maxarg

max

c x p c P

x c P c

c

c

=

=

Trang 35

1.2 - Đánh giá:

Giải thuật phân loại văn bản NB đơn giản, dễ thực hiện, độ chính xác chấp nhận được Tuy nhiên ưu điểm nổi bật của giải thuật này là tốc độ huấn luyện và phân loại văn bản rất nhanh:

)

|(|

|),

||

|

|(|

t classify

d training

L C O T

V C L D O T

2 - Giải thuật mạng Neural (Neural Network)

2.1 - Giải thuật

Giải thuật mạng Neural là giải thuật phân loại dựa trên sự mô phỏng khả năng suy luận của con người [21] Bộ não con người gồm khoảng 1011 neurons được kết nối với nhau Việc suy luận diễn ra trên các neural và sự chuyển kết nối (switching) giữa các neural này

Trang 36

Thành phần cơ bản của mạng neural là các perceptron Mỗi perceptron gồm n + 1 ngõ nhập, trong đó các ngõ nhập x1, x2, …, xn tương ứng với n dữ liệu nhập của hệ thống và x0 là ngõ nhập mặc định

Hình 3.1 Mô hình một Perceptron

Mỗi ngõ nhập của perceptron kết hợp với một trọng số w1, w2, …, wn vàø w0

= 1 Việc huấn luyện perceptron chính là cập nhật các giá trị cho các thông số này Giải thuật huấn luyện cho perceptron như sau:

Cho | D| là số mẫu

repeat

for all samples

if (mẫu x(x1, x2, …, xn) phân loại sai) then

i i

w = +η( − )end if

end for

until không còn lỗi xảy ra trong vòng lặp for

Trong giải thuật trên, các giá trị t , và o η lần lượt được ký hiệu như sau:

t: giá trị thực của mẫu hiện tại

o: giá trị xuất của mẫu thông qua perceptron

η: tốc độ học của hệ thống

Ta nhận xét rằng t -o chính là sai số giữa giá trị thực của mẫu và giá trị sinh ra bởi perceptron Mục tiêu của giải thuật trên là cố gắng thu giảm giá trị

i i

i ixwnếu

1

-

xw

nếu

o

xn

Trang 37

sai biệt này Nếu hằng số học η nhỏ, giải thuật chậm hội tụ Nếu η lớn, giải thuật sẽ hội tụ nhanh hơn, tuy nhiên kết quả sẽ giảm độ chính xác do ta có thể bỏ sót một số điểm tối ưu

Một nhận xét khác về perceptron là giải thuật này chỉ sử dụng được trong trường hợp các mẫu khả phân loại tuyến tính Trong trường hợp này, giải thuật sẽ hội tụ ở điểm tối ưu sao cho có thể phân loại đúng các mẫu nhập Tuy nhiên đây chỉ là điểm tối ưu cục bộ, giải thuật sẽ không đảm bảo sẽ đạt được tối ưu toàn cục

Để xây dựng hệ thống sao cho có khả năng phân loại tập mẫu không tuyến tính Ta phải sử dụng mô hình mạng neural Mạng neural gồm nhiều perceptron tượng trưng cho các neural và các kết nối giữa các neural này Các neural được chia thành nhiều lớp bao gồm một lớp nhập, một lớp xuất và một hoặc nhiều lớp ẩn

Dữ liệu xuất

Tầng xuất

Tầng ẩn

Tầng nhậpDữ liệu nhập

Hình 3.2 Mô hình mạng neural

Việc huấn luyện cho một mạng neural cũng bao gồm công việc cập nhật các trọng số cho các perceptron Tuy nhiên giải thuật phức tạp hơn nhiều do ta

Trang 38

chỉ biết dữ liệu nhập, dữ liệu xuất cho từng mẫu và phải cập nhật các trọng số cho tất cả perceptron ở các lớp

Việc cập nhật này được thực hiện theo hai chiều là lan truyền thuận và lan truyền ngược

Hình 3.4 Mô hình lan truyền dữ liệu

Lan truyền theo chiều thuận: dữ liệu xuất của tầng i sẽ được sử dụng như dữ liệu nhập của tầng i + 1 Quá trình này được lan truyền từ tầng nhập để tính giá trị xuất cho tầng xuất

Lan truyền theo chiều ngược: độ chênh lệch giữa giá trị thực và giá trị xuất bởi mạng ở tầng i sẽ được dùng để điều chỉnh trọng số cho tầng i – 1 Công thức điều chỉnh trọng số như sau:

ji j ji

ji

k

k kh h

h h

k k k k k

x w

w

w o

o

o t o o

ηδ

δδ

))(

1(

Trang 39

3 - Giải thuật cây quyết định

3.1 - Giải thuật phân loại

Cây quyết định là một giải thuật thường được dùng trong các hệ thống học máy [21] Cây quyết định là cây m phân (m >= 2)

Trong lĩnh vực phân loại văn bản, mỗi nút của cây tương ứng với một từ khóa trong hệ thống Ở mỗi nút trong, từ khóa sẽ được kết hợp với giá trị ngưỡng Nếu từ khóa xuất hiện trong một văn bản thấp hơn giá trị ngưỡng, văn bản sẽ được tìm kiếm trong nhánh bên trái Ngược lại văn bản sẽ được tìm kiếm trong nhánh bên phải Việc tìm kiếm sẽ kết thúc khi văn bản được tìm đến nút lá Nút lá này chứa chủ đề mà văn bản được gán

Trong hình vẽ 3.5, các giá trị được lưu ở mỗi nút gồm có:

- Số lượng văn bản có chứa từ khóa

- P(c | ni) là xác suất của tập văn bản tại nút ni thuộc về chủ đề

“earning”

- Từ khóa dùng để phân loại

- Giá trị ngưỡng quyết định

Để kiểm tra một văn bản có thuộc chủ đề earning hay không, ta dùng cây quyết định đã được xây dựng bên trên Trước tiên, văn bản sẽ được xét ở nút gốc Nếu số từ “company” xuất hiện trong văn bản này ít hơn 2 lần, văn bản sẽ được gán cho cây bên trái Ngược lại văn bản sẽ được tìm trong cây bên phải Quá trình này được tiếp tục cho đến khi văn bản cần phân loại được tìm đến nút gốc Tại nút gốc, nếu P(c | ni) = 1 thì văn bản được gán cho chủ đề

“earning” nếu P(c | ni) = 0 thì văn bản không được gán cho chủ đề “earning”

Trang 40

- Ngưỡng: 2

Hình 3.5 Cây quyết định cho chủ đề “earning”

3.2 - Giải thuật xây dựng cây quyết định

Việc xây dựng cây quyết định thực chất là chọn từ khóa để xây dựng nút tiếp theo cho cây quyết định Các khái niệm cơ bản được dùng để xây dựng cây quyết định là Entropy và độ lợi thông tin (Information gain)

Entropy được dùng để đo độ đồng nhất của một tập hợp cho trước Giả sử các văn bản S thuộc vào C chủ đề Khi đó entropy của tập S được định nghĩa như sau:

Ngày đăng: 16/04/2021, 04:17

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nello Cristianini and John Shawe-Taylor, Support Vector Machines and other kernel-based learning methods, Cambridge University Press, 2000 Sách, tạp chí
Tiêu đề: Support Vector Machines and other kernel-based learning methods
[2] Hiroya Takamura, Clustering Approaches to Text Categorization, Nara Institute of Science and Technology, 2003 Sách, tạp chí
Tiêu đề: Clustering Approaches to Text Categorization
[3] Trần Minh Quang, Phân loại văn bản bằng phương pháp cây quyết định, Luận văn cao học trường Đại học Bách Khoa, 2004 Sách, tạp chí
Tiêu đề: Phân loại văn bản bằng phương pháp cây quyết định
[4] Trần Ngọc Tuấn, Phân đoạn từ tiếng Việt dùng corpus và các mô hình thống kê, Luận văn cao học trường Đại học Bách Khoa, 2004 Sách, tạp chí
Tiêu đề: Phân đoạn từ tiếng Việt dùng corpus và các mô hình thống kê
[5] Kaibo Duan and Sathiya Keerthi, Multi-Category Classification by Soft- Max Combination of Binary Classifiers, Deparment of Machanical Engineering National University of Singapore, 2003 Sách, tạp chí
Tiêu đề: Multi-Category Classification by Soft-Max Combination of Binary Classifiers
[6] Edgar E. Osuna, Robert Freund and Federico Girosi, Support Vector Machines: Training and Application, Massachusetts Institute of Technolory, 1996 Sách, tạp chí
Tiêu đề: Support Vector Machines: Training and Application
[7] John C. Platt, Fast Training of Suport Vector Machines using Sequential Minimal Optimization, Microsoft research, 1998 Sách, tạp chí
Tiêu đề: Fast Training of Suport Vector Machines using Sequential Minimal Optimization
[8] Sathiya Keerthi and Chong Jin Ong, Two Efficient Methods for Computing Leave-One-Out Error in SVM Algorithms, Deparment of Machanical Engineering National University of Singapore, 2000 Sách, tạp chí
Tiêu đề: Two Efficient Methods for Computing Leave-One-Out Error in SVM Algorithms
[9] Doulas Baker and Andrew Kachittes McCallum, Distributional Clustering of Words for Text Classification, Mellon University, 1999 Sách, tạp chí
Tiêu đề: Distributional Clustering of Words for Text Classification
[10] Noam Slonin and Naftali Tishby, Document Clustering using Word Clusters via the Information Bottleneck Method, Hebrew University, 2001 Sách, tạp chí
Tiêu đề: Document Clustering using Word Clusters via the Information Bottleneck Method
[11] Yming Yang, Using Corpus Statistics to Remove Redundant Words in Text Categorization, National Center for Biotechnology Information National Library of Medicine Bethesda, 1995 Sách, tạp chí
Tiêu đề: Using Corpus Statistics to Remove Redundant Words in Text Categorization
[12] Ralf Klinkenberg, Text Categorisation Using Support Vector Machines, University of Dortmund, 2003 Sách, tạp chí
Tiêu đề: Text Categorisation Using Support Vector Machines
[13] Fabrizio Sebastiani, Machine Learning in Automated Text Categorisation, Consiglio Nazionale delle Ricerche, Italy, 2001 Sách, tạp chí
Tiêu đề: Machine Learning in Automated Text Categorisation
[14] George Siolas, Florence de Alche-Buc, Support Vector Machines based on a Semantic Kernel for Text Categorization, Marie Curie University, 2000 Sách, tạp chí
Tiêu đề: Support Vector Machines based on a Semantic Kernel for Text Categorization
[15] Jason D. M. Rennie, Ryan Rifkin, Improving Multiclass Text Classi_cation with the Support Vector Machines, Massachusetts Institute of Technology, 2001 Sách, tạp chí
Tiêu đề: Improving Multiclass Text Classi_cation with the Support Vector Machines
[16] David D. Lewis, Reuters-21578 text categorization test collection, Reuters group, 2004 Sách, tạp chí
Tiêu đề: Reuters-21578 text categorization test collection
[18] Christopher J.C. Burges, A Tutorial on Support Vector Machines for Paterns Reconigtion, 1998 Sách, tạp chí
Tiêu đề: A Tutorial on Support Vector Machines for Paterns Reconigtion
[19] C. J. van RIJSBERGEN, Information Retrieval, University of Glasgow, 2001 Sách, tạp chí
Tiêu đề: Information Retrieval
[20] Kamal Nigam, A comparison of Event Models for Nạve Bayes Text Categorization, Carnegie Mellon University, 1998 Sách, tạp chí
Tiêu đề: A comparison of Event Models for Nạve Bayes Text Categorization
[21] D. Michie, D.J. Spiegelhalter, C. Taylor, Machine Learning, Neural and Statistical Classification, University of Strathclyde, MRC Biostatistics Unit, Cambridge_ and University of Leeds, 1994 Sách, tạp chí
Tiêu đề: Machine Learning, Neural and Statistical Classification

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w