Hệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dungHệ thống phân loại bài báo điện tử theo nội dung
Trang 2MỞ ĐẦU
Báo điện tử là một trong các phương tiện truyền thông đại chúng hiện đại Hiện nay,
sự phát triển của nền tảng mạng Internet cũng như các thiết bị di động đã tạo điều kiện cho báo điện tử ngày càng phát triển mạnh mẽ
Báo điện tử có lợi thế hơn các phương tiện truyền thông đại chúng khác ở khả năng tương tác, khả năng đa phương tiện, tính thời sự Nhưng bên cạnh những lợi thế đó, báo điện tử còn đem lại một số bài toán cần phải giải quyết như: đảm bảo an toàn thông tin, sự chính xác của thông tin
Để đảm bảo tính đúng đắn về nội dung cũng như tính hợp pháp của các bài báo điện
tử Các cơ quan chức năng phải thường xuyên theo dõi và kiểm duyệt nội dung của các bài báo điện tử
Sự phát triển quá nhanh về số lượng các trang báo điện tử cũng như số lượng bài báo điện tử khiến cho việc quản lý gặp nhiều khó khăn Năm 2015, cả nước ta có 105 báo, tạp chí điện tử [1] và nhiều trang thông tin điện tử tổng hợp Điều này đòi hỏi một nguồn nhân lực và chi phí khổng lồ trong việc theo dõi và kiểm duyệt
Do đó, việc xây dựng một hệ thống thu thập và phân loại các bài báo mạng điện tử là một bài toán cần thiết để hỗ trợ cho việc quản lý, theo dõi cũng như kiểm tra nội dung các bài báo điện tử
Trang 3Chương 1 - TỔNG QUAN
Chương này sẽ tập trung vào việc khảo sát một số công trình nghiên cứu về phân loại văn bản, truy hồi thông tin Trên cơ sở đó chỉ ra những vấn đề mà luận văn cần giải quyết
1.1 Giới thiệu tổng quan
Truy hồi thông tin (Information Retrieval) có thể được định nghĩa như là một ứng dụng của khoa học máy tính có các chức năng thu thập, tổ chức, lưu trữ, truy hồi và phân bố thông tin Các nghiên cứu liên quan đến lĩnh vực truy hồi thông tin thường nhắm đến nền tảng lý thuyết và cải thiện công nghệ tìm kiếm, bao gồm cả cấu trúc và sự duy trì các kho dữ liệu lớn
Hiện nay, hầu hết các hệ thống truy hồi thông tin thực chất chỉ là hệ thống truy hồi tài liệu, nghĩa là hệ thống sẽ truy tìm những tài liệu trong số các tài liệu có trong cơ sở dữ liệu lưu trữ có nội dung liên quan, phù hợp, đáp ứng với nhu cầu thông tin của người dùng, sau đó người dùng sẽ tìm kiếm thông tin họ cần trong các tài liệu liên quan đó
Một số công trình nghiên cứu:
“Cơ sở tài liệu văn bản có ngữ nghĩa kỹ thuật tổ chức lưu trữ và tìm kiếm” (Trương Châu Long) [2]
“Xây dựng hệ thống tìm kiếm thông tin theo hướng tiếp cận ngữ nghĩa” (Lê Thúy Ngọc) [3]
A Survey of Concept-based Information Retrieval Tools on the Web (Haav, H.-M., T.-L Lubi) [4]
Ontology-based Information Retrieval (Henrik Bulskov Styltsvig) [5]
Yahoo Mail, Gmail chắc hẳn là những ứng dụng mail quen thuộc với rất nhiều người Một trong những tính năng cơ bản nhưng rất quan trọng trong các hệ thống mail này là khả năng tự động xác định các thư rác Đây là một ví dụ điển hình của bài toán phân loại văn bản tự động
Trang 4Trong bài tốn phân loại văn bản, các nhà nghiên cứu phân biệt rạch rịi giữa 2 thuật ngữ “text categorization” và “text classification” Thuật ngữ “text categorization” thường được dùng để diễn tả việc sắp xếp các văn bản theo nội dung, trong khi “text classification” được dùng với một ý nghĩa rộng hơn, đĩ là việc gán các tài liệu văn bản vào các tập cụ thể khơng nhất thiết phải dựa trên nội dung mà cĩ thể là dựa trên tác giả, nhà xuất bản, ngơn ngữ,…
Trong ngữ cảnh hẹp của luận văn, bài tốn phân loại văn bản cĩ thể được xem như là bài tốn phân lớp Cơng việc phân loại văn bản tự động là gán nhãn phân loại lên một văn bản mới Nhiều kỹ thuật máy học và khai khống dữ liệu được áp dụng vào bài tốn phân loại văn bản Ví dụ như:
Cây quyết định (Decision tree)
Phương pháp phân loại dựa vào thuật tốn Nạve bayes
K- láng giềng gần nhất (KNN)
Mạng neuron nhân tạo (Artificial Neural Network)
Support Vector Machine (SVM)
Vấn đề phân loại văn bản thu hút sự quan tâm của nhiều nhà nghiên cứu trên thế giới, tiêu biểu cĩ thể kế đến các cơng trình nghiên cứu như:
“Text classification using machine learning” (Mohammed.Andul.Wajeed) [6]
“Machine Learning in Automated Text Categorization” (Fabrizio Sebastiani (2002)) [7]
Trong nước, cũng cĩ khá nhiều tác giả quan tâm nghiên cứu và cơng bố các cơng trình nghiên cứu như :
“Phân loại văn bản tiếng việt với bộ phân loại véctơ hỗ trợ SVM” (Nguyễn Mạnh
Hiển) [8]
“Dùng lý thuyết tập thơ và các kỹ thuật khác để phân loại, phân cụm văn bản tiếng Việt” (Nguyễn Ngọc Bình) [9]
Trang 5 “Mô hình thống kê hình vị tiếng Việt và ứng dụng” (Nguyễn Linh Giang, Nguyễn Duy Hải) [10]
“Tiếp cận phương pháp học không giám sát trong học có giám sát với bài toán phân lớp văn bản tiếng Việt và đề xuất cải tiến công thức tính độ liên quan giữa hai văn bản trong mô hình vectơ” (Huỳnh Quyết Thắng, Đinh Thị Thu Phương) [11]
“Nghiên cứu ứng dụng tập phổ biến và luật kết hợp vào bài toán phân loại văn bản tiếng Việt có xem xét ngữ nghĩa” (Đỗ Phúc) [12]
1.1.1 Mục tiêu nghiên cứu
Trên cơ sở nghiên cứu xử lý ngôn ngữ tự nhiên, tập trung vào bái toán phân loại văn bản, bài toán truy hồi thông tin và tìm hiểu về một số trang báo điện tử; đề tài sẽ xây dựng
hệ thống phân loại các bài báo điện tử đáp ứng các yêu cầu sau:
Tự động thu thập các bài báo điện tử dựa vào các tập tin cấu hình đã được thiết lập
Tiền xử lý các bài báo điện tử và chọn ra các đặc trưng cho mỗi bài báo điện tử
Phân loại các bài báo theo các chủ đề được định nghĩa trước
1.1.2 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu:
o Nghiên cứu kỹ thuật web crawler
o Nghiên cứu các thuật toán phân loại văn bản
o Nghiên cứu các chức năng cơ bản của một hệ thống truy hồi thông tin
o Khảo sát một số trang báo điện tử: vnexpress.net, vietnamnet.vn, tuoitre.vn,…
Trang 6o Đầu ra: các bài báo mạng điện tử được phân vào các chủ đề tương ứng
Những vấn đề luận văn quan tâm
o Truy hồi thông tin sử dụng từ làm đặc trưng cho văn bản
o Truy hồi thông tin sử dụng các chuỗi phổ biến cực đại làm đặc trưng cho văn bản
o Phân loại văn bản dựa vào thống kê
o Phân loại văn bản dựa vào ngữ nghĩa
1.1.3 Ý nghĩa của luận văn
Luận văn đưa ra cách thức và triển khai ứng dụng phân loại bài báo điện tử hỗ trợ công tác quản lý của các cơ quan chức năng
1.2 Kết luận chương 1
Chương này đã khảo sát một số các công trình nghiên cứu trong lĩnh vực truy hồi thông tin, phân loại văn bản Dù đã xuất hiện từ khá lâu nhưng hai bài toán trên vẫn luôn thu hút được nhiều sự quan tâm, đặc biệt trong thời đại bùng nổ thông tin như hiện nay Các chương tiếp theo của luận văn sẽ trình bày chi tiết hơn các hướng tiếp cận trong hai lĩnh vực này
Trang 7Chương 2 - CƠ SỞ LÝ THUYẾT
Chương này trình bày về các mô hình truy hồi thông tin và bài toán phân loại văn bản Tìm hiểu quá trình thực hiện phân loại văn bản đồng thời khảo sát một số thuật toán trong lĩnh vực này
2.1 Truy hồi thông tin
Hệ thống truy hồi thông tin tập trung vào việc truy hồi các tài liệu dựa trên nội dung của các thành phần không có cấu trúc Một câu truy vấn của người dùng sẽ mô tả các tính chất của các thành phần có cấu trúc và không có cấu trúc của tài liệu được truy hồi Ví dụ:
“Này máy tính, hãy tìm những tài liệu về truy hồi thông tin” Câu truy vấn này yêu cầu hệ thống truy hồi thông tin truy hồi các tài liệu mà có phần nội dung nói về một chủ đề cụ thể
là “truy hồi thông tin”
Hệ thống truy hồi thông tin tìm kiếm các tài liệu trong một tập cho trước về một chủ
đề nào đó hoặc thỏa mãn một nhu cầu thông tin nào đó Chủ đề hoặc nhu cầu thông tin được biểu diễn bởi một câu truy vấn, được phát sinh bởi người dùng Các tài liệu thỏa mãn câu truy vấn được xác định bởi người dùng thì được xem là phù hợp Các tài liệu không nói về chủ đề được cho trước được xem là không phù hợp Một hệ thống truy hồi thông tin có thể
sử dụng câu truy vấn để phân loại các tài liệu, trả về cho người dùng một tập con các tài liệu thỏa mãn các tiêu chuẩn phân loại Tỉ lệ các tài liệu trả về cho người dùng được người dùng kết luận là phù hợp càng cao thì nghĩa là các tiêu chuẩn phân loại càng tốt
2.1.1 Tổng quan các hướng tiếp cận truy hồi thông tin
Nhìn chung, có 2 hướng tiếp cận truy hồi thông tin chính là ngữ nghĩa và thống kê Các cách tiếp cận ngữ nghĩa cố gắng thực hiện một số mức độ phân tích cú pháp và ngữ nghĩa Trong các cách tiếp cận thống kê, các tài liệu được truy hồi là các tài liệu được xếp hạng cao nghĩa là có mức độ phù hợp với câu truy vấn cao dựa trên độ đo thống kê nào đó
Các hướng tiếp cận thống kê rơi vào một trong các mô hình sau: boolean, boolean
mở rộng, vector space và xác suất Các hướng tiếp cận thống kê chia các tài liệu và các câu truy vấn thành các “term” Các “term” có tính chất phổ biến, được đếm và đo đạc dựa vào thống kê Các “term” là các từ xuất hiện trong một câu truy vấn cho trước hoặc tập các tài liệu
Trang 8Các từ thường xuất hiện dưới dạng chưa được xử lý, các từ phải qua bước xử lý
“stemmed” để nhận được từ gốc Mục đích của quá trình này là loại trừ các biến thể xuất hiện do các thể văn phạm khác nhau của một từ Ví dụ: “retrieve”, “retrieved”, “retrieves” Các từ trong ví dụ trên cần được nhận diện là các thể của cùng một từ Vì vậy, người dùng đưa ra câu truy vấn cần phải xác định các thể có thể có của một từ mà họ cho rằng có thể xuất hiện trong tài liệu mà họ đang tìm kiếm Trong tiếng Việt, các từ không có
“stemming”, do đó không cần quá trình “stemmed” để tiền xử lý văn bản
Một quá trình khác trong khâu tiền xử lý văn bản là loại bỏ các từ dùng chung không
có nghĩa, các từ này gọi là “stop word” Các IR engine thường cung cấp một “stop list” để loại bỏ khi tiền xử lý văn bản Trong tiếng Việt, có nhiều “stop word”, ví dụ như: “bị”,
“bởi”, “càng”, “ôi”, “than ôi”, “trời ơi”,…
“Stemming” và “stop word” phụ thuộc vào ngôn ngữ, từng ngôn ngữ khác nhau sẽ có các dạng “stemming” và các “stop word” khác nhau
Một số công cụ tinh vi có thể trích các “cụm từ” như là các “term” Một cụm từ là sự kết hợp của các từ đứng liền kề và có thể được xác định thông qua tần số của việc đồng thời xuất hiện trong tập cho trước hoặc được xác định bằng cách dùng từ điển Trong xử lý Việt,
công cụ vnTokenizer của TS Lê Hồng Phương [13] có thể tự động tách các đoạn văn bản
tiếng Việt thành các đơn vị ngữ pháp
Các trọng số thường được gán cho các “term” trong tài liệu và trong câu truy vấn Một trọng số được gán cho một “term” trong một tài liệu có thể khác với trọng số được gán cho chính “term” đó nhưng trong tài liệu khác Trọng số thường là độ đo về sự hiệu quả của
“term” thường được dùng trong việc phân biệt các tài liệu trong tập cho trước Trọng số thường được chuẩn hóa để nằm trong đoạn [0 1] Trọng số cũng có thể được gán cho
“term” trong câu truy vấn Trọng số của “term” trong câu truy vấn thường là độ đo về tầm quan trọng của “term” trong việc tính toán độ phù hợp giữa câu truy vấn và tài liệu Cũng như với các tài liệu, một “term” cũng có thể có các trọng số khác nhau trong các câu truy vấn khác nhau Trọng số của các “term” trong câu truy vấn cũng thường được chuẩn hóa nằm trong đoạn [0 1]
Theo hướng tiếp cận thống kê thì một tài liệu thường được biểu diễn dưới dạng một tập hợp các từ khóa độc lập nhau Hướng tiếp cận thống kê thường được dùng cho việc biểu
Trang 9diễn các tài liệu mà không xét đến hình thái của từ, thứ tự của các từ hay vị trí xuất hiện của
từ trong tài liệu cũng như các mối quan hệ ngữ nghĩa giữa chúng, do đó cách biểu diễn này mang mức độ thông tin thấp và nếu nhìn dưới góc nhìn của ngôn ngữ học thì đã không xử lý các biến thể về mặt ngôn ngữ học của các từ như biến thể về hình thái học, biến thể về từ vựng học, biến thể về ngữ nghĩa học và biến thể về cú pháp học Hướng tiếp cận ngữ nghĩa
có thể giải quyết các vấn đề trên Một số hướng tiếp cận theo ngữ nghĩa như: hướng tiếp cận
xử lý ngôn ngữ tự nhiên, hướng tiếp cận ontology
2.1.2 Truy hồi thông tin theo hướng thống kê
2.1.2.1 Mô hình Boolean
2.1.2.2 Mô hình không gian vector
2.1.2.3 Mô hình Latent Semantic Indexing (LSI)
2.1.3 Truy hồi thông tin theo hướng ngữ nghĩa
2.1.3.1 Hướng tiếp cận xử lý ngôn ngữ tự nhiên
2.1.3.2 Hướng tiếp cận Ontology
2.2 Phân loại văn bản
Phân loại (phân lớp) văn bản là quá trình phân tích nội dung của một văn bản, dự đoán văn bản này thuộc nhóm văn bản nào trong các nhóm văn bản cho trước Một văn bản
có thể thuộc một hoặc nhiều nhóm văn bản hoặc không thuộc bất kỳ nhóm văn bản nào mà
ta đã định nghĩa
Bài toán phân lớp văn bản có thể được phát biểu như sau: cho trước tập văn bản D={d1,d2,…,di} và tập chủ đề được định nghĩa C={c1,c2,…,cj}(Fabrizio Sebastiani (2002)) Ta phải tìm hàm với mọi , tức là phải tìm di thuộc lớp cj đã được định nghĩa trước
Trang 102.2.1 Nạve Bayes
Giả sử ta cĩ một nguồn tài liệu đầu vào và nhiệm vụ của hệ thống là gán mỗi tài liệu đầu vào vào một thể loại nhất định Với mỗi thể loại, ta cĩ sẵn một số lượng nhất định các tài liệu đã được phân loại trong quá khứ
Một cách tiếp cận tự động hoặc bán tự động là xây dựng mơ hình thống kê cho các thể loại mà ta đang quan tâm, tận dụng các tài liệu đã được phân loại Cách tiếp cận này giả định rằng ta cĩ thể tính tốn hoặc ước lượng được sự phân bố các term trong các tài liệu thuộc chủ đề Ý tưởng là dùng sự phân bố này để dự đốn xem tài liệu mới sẽ thuộc thể loại nào
Đầu tiên, ta cần chuyển đổi xác suất xuất hiện của một term đối với một thể loại sang xác suất của thể loại đối với một term Sau đĩ, ta cần một phương thức đề kết nối các dữ kiện của mỗi term trong một tài liệu lại Nĩi cách khác, ta cĩ thể dễ dàng tính được ( | )P t C i
cho mỗi term t trong thể loại Ci, nhưng ta cần quan tâm đến ( | )P C t i hoặc tốt hơn là ( i| D)
P C T với TD là tập các term xuất hiện trong tài liệu D
Nạve Bayes là cách tiếp cận thống kê cho mơ hình ngơn ngữ sử dụng Bayes’s Rule nhưng giả định là các đặc trưng độc lập nhau Do đĩ, ta tính xác suất mà tài liệu D thuộc về thể loại Ci bằng cơng thức:
( | ) ( )( | )
( )
i i i
Trang 11Khi kích thước của tập huấn luyện nhỏ, ( | ) sẽ khơng hợp lý; nếu một từ khơng xuất hiện trong tập dữ liệu, ( | ) sẽ bằng 0 Vì thế cơng thức tính đã làm trơn Laplace được sử dụng:
( | )
Trong đĩ:
nij: tổng số từ xuất hiện của văn bản Dk đối với thể loại Ci
ni: tổng số từ trong thể loại Ci;
ki: kích thước từ vựng trong thể loại Ci
2.2.2 Thuật tốn cây quyết định
Một cách tiếp cận khác là xây dựng một cấu trúc cây từ sự kết hợp các đặc trưng cần thiết để phân biệt các tài liệu thuộc các chủ đề khác nhau Nút gốc của cây được xem là đại diện cho tất cả các tài liệu cần được phân loại Một nút khơng phải là nút lá sẽ kiểm tra một đặc trưng tương ứng và chọn một nhánh tương ứng với kết quả kiểm tra được
Quá trình phân loại một tài liệu là một chuỗi các bước kiểm tra tại các nút và cuối cùng dẫn đến một nút lá Nút lá tượng trưng cho một chủ đề tương ứng Cĩ thể cĩ nhiều nút
lá cùng được gán nhãn một chủ đề với nhiều đường đi riêng biệt dẫn đến chúng Từ đĩ, ta nhận thấy rằng cấu trúc cây cĩ thể được xây dựng bằng cách học quy nạp dựa trên tập các tài liệu huấn luyện và các đặc trưng của chúng
2.2.3 Thuật tốn k láng giềng gần nhất
Phân loại dựa trên Nạve Bayes và cây quyết định là hướng học theo quy nạp, các phương pháp trên xây dựng mơ hình cụ thể cho lớp bằng cách thực nghiệm trên dữ liệu huấn luyện Tuy nhiên, cịn một cách thức khác để xây dựng bộ phân loại khơng dựa trên học quy nạp
Phương pháp kNN là phương pháp truyền thống nổi tiếng về hướng tiếp cận dựa trên thống kê đã được nghiên cứu từ năm 1991 bởi Dasarathy Phương pháp kNN dựa trên học vẹt Vào thời điểm huấn luyện, bộ phân loại ghi nhớ tất cả tài liệu trong tập huấn luyện và các đặc trưng của chúng Khi phân loại một tài liệu mới D, bộ phân loại chọn ra k tài liệu
Trang 12trong tập huấn luyện gần D nhất, sau đó chọn ra một hoặc nhiều thể loại gán cho D dựa vào các thể loại gán cho k tài liệu
2.2.4 Thuật toán Support Vector Machine (SVM)
Phương pháp SVM được coi là công cụ mạnh cho những bài toán phân lớp phi tuyến tính được các tác giả Vapnik và Chervonenkis phát triển mạnh mẽ năm 1995 Phương pháp này thực hiện phân lớp dựa trên nguyên lý Cực tiểu hóa Rủi ro có Cấu trúc SRM (Structural Risk Minimization), được xem là một trong các phương pháp phân lớp giám sát không tham
số tinh vi nhất cho đến nay Các hàm công cụ đa dạng của SVM cho phép tạo không gian chuyên đổi để xây dựng mặt phẳng phân lớp
Cho trước một tập huấn luyện, được biểu diễn trong không gian vector, trong đó mỗi tài liệu là một điểm, phương pháp này tìm ra một siêu phẳng quyết định tốt nhất có thể chia các điểm trên không gian này thành hai lớp riêng biệt tương ứng là lớp “+” và lớp “-“ Chất lượng của siêu phẳng này được quyết định bởi khoảng cách (gọi là biên) của điểm dữ liệu gần nhất của mỗi lớp đến mặt phẳng này Khi đó, khoảng cách biên càng lớn thì mặt phẳng quyết định càng tốt, đồng thời việc phân loại càng chính xác
Tiến hành xét một bài toán đơn giản là tách hai lớp với tập dữ liệu mẫu đã được huấn luyện Và sau đó ta có thể mở rộng phương pháp cho nhiều trường hợp tổng quát mà dữ liệu thậm chí không thể tách được phân lớp
Với xi, i = 1, 2 , , N là tập các vector đặc trưng của bộ huấn luyện X Và nó sẽ thuộc
về một trong hai lớp w1,w2 và được giả sử rằng tập dữ liệu sẽ được phân lớp tuyến tính Với mục tiêu là sẽ xây dựng mặt siêu phẳng(hyperplane) để tách chính xác các phân lớp mẫu được huấn luyện được cho bởi phương trình sau:
g(x) = wTx + w0 =0 Trong đó w là vector trọng số, w0 là độ dịch
Phương pháp máy học SVM là tập các mặt siêu phẳng phụ thuộc vào các tham số w
và w0 Mục tiêu của phương pháp SVM là ước lượng hai giá trị này để có thể cực đại hóa lề(margin) Với giá trị của lề càng lớn thì mặt siêu phẳng phân lớp càng tốt
Nếu tập dữ liệu huấn luyện là khả tách tuyến tính ta có các ràng buộc sau:
Trang 13wTxi + w0 ≥ +1 nếu yi = +1
wTxi + w0 ≤ -1 nếu yi = -1 Hai mặt siêu phẳng có phương trình wTxi + w0 = ± 1 được gọi là mặt siêu phẳng hỗ
trợ
2.3 Kết luận chương 2
Chương này đã trình bày về các mô hình truy hồi thông tin và bài toán phân loại văn bản