Tải bản đầy đủ

Hệ thống phân loại bài báo điện tử theo nội dung

i

LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả trình bày trong luận văn là trung thực và chƣa từng đƣợc ai
công bố trong bất kỳ công trình nào khác.
Tp. HCM, ngày 20 tháng 6 năm 2016
Học viên thực hiện luận văn

Hồ Đắc Hưng


ii

LỜI CẢM ƠN
Em xin gửi lời cảm ơn sâu sắc tới Thầy Tân Hạnh, cảm ơn Thầy đã tận tình
hƣớng dẫn, truyền đạt cho em những kiến thức và kinh nghiệm quý báu. Em cũng xin
gửi lời tri ân tới quý Thầy Cô Học Viện Công Nghệ Bƣu Chính Viễn Thông cơ sở tại
thành phố Hồ Chí Minh, cảm ơn Thầy Cô đã hết lòng dạy dỗ em.
Trong suốt quá trình làm đề tài em đã nhận đƣợc sự quan tâm giúp đỡ của quý
Thầy Cô, gia đình và bạn bè. Đó là nguồn động viên quý giá lớn lao tiếp thêm động

lực thêm sức mạnh cho em hoàn thành đồ án này.
Con xin cảm ơn Bố Mẹ đã luôn là nguồn động viên, tạo mọi điều kiện tốt nhất
cho con đƣợc sống và theo đuổi giấc mơ của mình.
Em xin chân thành cảm ơn!

Tp. HCM, ngày 20 tháng 6 năm 2016
Học viên thực hiện luận văn

Hồ Đắc Hưng


iii

MỤC LỤC
LỜI CAM ĐOAN .............................................................................................................i
LỜI CẢM ƠN ................................................................................................................. ii
MỤC LỤC ..................................................................................................................... iii
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT ....................................................v
DANH SÁCH BẢNG .....................................................................................................vi
DANH SÁCH HÌNH VẼ.............................................................................................. vii
MỞ ĐẦU .........................................................................................................................1
Chƣơng 1 - TỔNG QUAN ..............................................................................................2
1.1.

Giới thiệu tổng quan ..............................................................................................2

1.1.1.

Mục tiêu nghiên cứu ...........................................................................................4

1.1.2.

Đối tượng và phạm vi nghiên cứu ......................................................................4

1.1.3.

Ý nghĩa của luận văn..........................................................................................5

1.2.


Kết luận chƣơng 1 .................................................................................................5

Chƣơng 2 - CƠ SỞ LÝ THUYẾT ...................................................................................7
2.1.

Truy hồi thông tin ..................................................................................................7

2.1.1.

Tổng quan các hướng tiếp cận truy hồi thông tin ..............................................9

2.1.2.

Truy hồi thông tin theo hướng thống kê ...........................................................11

2.1.2.1.

Mô hình Boolean ..........................................................................................11

2.1.2.2.

Mô hình không gian vector ...........................................................................16

2.1.2.3.

Mô hình Latent Semantic Indexing (LSI)......................................................22

2.1.3.

Truy hồi thông tin theo hướng ngữ nghĩa ........................................................24

2.1.3.1.

Hướng tiếp cận xử lý ngôn ngữ tự nhiên ......................................................24

2.1.3.2.

Hướng tiếp cận Ontology .............................................................................28


iv

2.2.

Phân loại văn bản ................................................................................................31

2.2.2.

Thuật toán cây quyết định ................................................................................36

2.2.3.

Thuật toán k láng giềng gần nhất ....................................................................38

2.2.4.

Thuật toán Support Vector Machine (SVM) ....................................................39

2.3.

Kết luận chƣơng 2 ...............................................................................................41

Chƣơng 3 – CÀI ĐẶT ...................................................................................................42
3.1.

Cài đặt Web Crawler ...........................................................................................43

3.2.

Tiền xử lý văn bản ...............................................................................................45

3.2.1.

Mô hình sử dụng độ đo TF-IDF .......................................................................46

3.2.2.

Mô hình sử dụng độ đo TF-IDF .......................................................................47

3.2.3.

Mô hình sử dụng chuỗi phổ biến cực đại .........................................................47

3.3.

Vector hóa văn bản ..............................................................................................48

3.3.1.

Mô hình sử dụng độ đo TF-IDF .......................................................................48

3.3.2.

Mô hình sử dụng từ điển ngữ nghĩa .................................................................48

3.3.3.

Mô hình sử dụng chuỗi phổ biến cực đại .........................................................48

3.4.

Áp dụng thuật toán phân loại ..............................................................................51

3.4.1.

Mô hình sử dụng độ đo TF-IDF .......................................................................51

3.4.2.

Mô hình sử dụng từ điển ngữ nghĩa .................................................................52

3.4.3.

Mô hình sử dụng chuỗi phổ biến cực đại .........................................................52

3.5.

Đánh giá ..............................................................................................................52

3.6.

Kết luận chƣơng 3 ...............................................................................................54

KẾT LUẬN VÀ KHUYẾN NGHỊ................................................................................55
DANH MỤC TÀI LIỆU THAM KHẢO ......................................................................56


v

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
Viết tắt

Tiếng Anh

XML

Extensible Markup Language

HTML

HyperText Markup Language

IR

Information Retrieval

p

Precision

r

Recall

F

F-Measure


vi

DANH SÁCH BẢNG
Bảng 3.1: Bảng kết quả thực nghiệm mô hình sử dụng chuỗi phổ biến cực đại

52

Bảng 3.2: Bảng kết quả thực nghiệm mô hình sử dụng độ đo TF-IDF

52

Bảng 3.3: Bảng kết quả thực nghiệm mô hình sử dụng độ từ điển ngữ nghĩa

52


vii

DANH SÁCH HÌNH VẼ
Hình 3.1: Tổng quan mục tiêu của luận văn

52

Hình 3.2: Giải pháp tổng quan

52


1

MỞ ĐẦ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ử.


2

Chươ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


3

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.
Trong bài toá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 toán phân loại văn bản có thể đƣợc xem
nhƣ là bài toá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 khoáng dữ liệu đƣợc áp dụng
vào bài toá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 toán Naï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ƣ :


4

 “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].
 “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.


5

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,…
 Phạm vi nghiên cứu:
o Đầu vào: các bài báo mạng điện tử từ một tập các website hữu hạn,
định dạng HTML, là văn bản tiếng Việt có nội dung.
o Chủ đề: tập các chủ đề đƣợc định nghĩa trƣớc.
o Đầ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ƣ


6

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.


7

Chươ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.
Ngoài ra, một hệ thống truy hồi thông tin còn có thể xếp hạng các tài liệu. Tài
liệu D1 xếp hạng cao hơn trong câu truy vấn Q so với tài liệu D2 có thể đƣợc hiểu là tài
liệu D1 thỏa mãn câu truy vấn Q nhiều hơn tài liệu D2. Điều này cũng tƣơng đƣơng với
việc tài liệu D1 đúng với nhu cầu thông tin của ngƣời dùng nhiều hơn tài liệu D2.
Khái niệm “phù hợp” là một khái niệm mấu chốt trong hệ thống truy hồi thông
tin. “Phù hợp” là môt khái niệm mang tính chất chủ quan trong ngữ cảnh sự hài lòng
của ngƣời dùng về những tài liệu truy hồi đƣợc cho câu truy vấn của họ là mục tiêu tối


8

hậu. Do đó, sự phán xét của ngƣời dùng về việc các tài liệu truy hồi đƣợc có thỏa mãn
câu truy vấn của họ hay không trở thành tiêu chuẩn của khái niệm “phù hợp”. Ngoài
yếu tố câu truy vấn và tập tài liệu thì ngữ cảnh cũng đóng một vai trò quan trọng ảnh
hƣớng đến khái niệm “phù hợp”. Mỗi ngƣời dùng có thể sẽ có những nhu cầu cá nhân
khác nhau, sở thích khác nhau, kiến thức khác nhau, chuyên môn khác nhau, ngôn ngữ
khác nhau,… Do đó, một tài liệu đƣợc truy hồi cho một câu truy vấn có thể “phù hợp”
với ngƣời dùng A nhƣng có thể “không phù hợp” vời ngƣời dùng B. Một hƣớng tiếp
cận để giải quyết vấn đề này là tổ chức lƣu trữ những thông tin cá nhân của ngƣời
dùng ảnh hƣởng đến việc truy hồi thông tin nhƣ: sở thích, kiến thức, chuyên môn,
ngôn ngữ,… từ đó làm cơ sở để truy hồi những tài liệu “phù hợp” nhất đối với ngƣời
dùng.
Để đo đạc sự hiệu quả của hệ thống truy hồi thông tin, có 2 độ đo là độ chính
xác và độ phủ, cả 2 độ đo này đều dựa trên khái niệm “phù hợp”. Độ chính xác đƣợc
định nghĩa là tỉ lệ các tài liệu phù hơp đƣợc truy hồi trên tổng số tài liệu đƣợc truy hồi
hoặc xác suất một tài liệu đƣợc truy hồi là phù hợp. Độ phủ đƣợc định nghĩa là tỉ lệ
các tài liệu phù hợp đƣợc truy hồi trên tổng số các tài liệu phù hợp hoặc xác suất một
tài liệu phù hợp đƣợc truy hồi. Giữa 2 độ đo này tồn tại một sự đánh đổi. Nếu một hệ
thống truy hồi thông tin truy hồi tất cả tài liệu trong tập thì nó chắc chắn truy hồi tất cả
tài liệu phù hợp, lúc này độ phủ đạt giá trị tối đa nhƣng độ chính xác sẽ rất thấp và
ngƣợc lại. Giả định thông thƣờng là ngƣời dùng muốn hệ thống truy hồi thông tin đạt
đƣợc sự kết hợp tối ƣu giữa độ chính xác và độ phủ nghĩa là ngƣời dùng mong muốn
truy hồi tất cả những tài liệu phù hợp và không có bất kì tài liệu không phù hợp nào
đƣợc truy hồi. Nhƣng sự giả định này cũng dẫn tới một số điều bất cập. Có những
trƣờng hợp ngƣời dùng chỉ muốn một tập nhỏ trong tập khổng lồ các tài liệu phù hợp.
Tập các tài liệu phù hợp có thể chứa đựng sự dƣ thừa, một vài tài liệu trong tập tài liệu
phù hợp có thể cung cấp đầy đủ thông tin mà ngƣời dùng cần. Ngƣời dùng có thể cần
tìm kiếm các chứng cứ để hỗ trợ cho giả thuyết hoặc làm giảm độ bất định của giả
thuyết, trong trƣờng hợp này một vài tài liệu phù cũng có thể cung cấp cho ngƣời dùng
các chứng cứ. Ngƣời dùng cũng có thể chỉ cần những tài liệu đƣợc cập nhật gần đây


9

nhất chứ không cần các tài liệu cũ, ví dụ nhƣ luật sự cần tìm các tài liệu liên quan đến
luật đất đai hiện hành. Nhìn chung, thông thƣờng sẽ có nhiều tập con các tài liệu phù
hợp mà mỗi tập sẽ làm hài lòng yêu cầu của ngƣời dùng. Ngoài ra, 2 tài liệu phù hợp
có thể trình bày góc nhìn đối lập nhau về một số vấn đề quan tâm của ngƣời dùng, vì
vậy mà ngƣời dùng có thể nhầm lẫn nghiêm trọng nếu chỉ nhìn vào một vài tài liệu
phù hợp.
Trong thực tế, một số ngƣời dùng quan tâm hơn tới độ chính xác vì họ chỉ
muốn duyệt qua các tài liệu phù hợp mà không muốn phải duyệt qua quá nhiều tài liệu
không phù hợp. Một số ngƣời dùng khác thì quan tâm tới độ phủ hơn vì họ muốn
duyệt càng nhiều tài liệu liên quan càng tốt. Do đó, Van Rijsbergen đã đề xuất độ đo E
(Effectiveness), để biểu diễn sự quan hệ giữa độ chính xác và độ phủ:
E  1

1
1
P

1
R

 ( )  (1   )( )

với P là độ chính xác, R là độ phủ và a là tham số biến thiên từ 0 đến 1:
 a = 0, ngƣời dùng không quan tâm đến độ chính xác.
 a = 0.5, ngƣời dùng quan tâm đến độ chính xác và độ phủ nhƣ nhau.
 a = 1, ngƣời dùng không quan tâm đến độ phủ.

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


10

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.
Cá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


11

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 diễ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
Trong mô hình Boolean, câu truy vấn đƣợc xây dựng nhƣ là sự kết hợp các giá
trị boolean của các term, nghĩa là xác định các điều kiện có term xuất hiện hoặc không
có term xuất hiện. Một câu truy vấn điển hình sử dụng các toán tử AND, OR và NOT.
Câu truy vấn “t1 AND t2” sẽ đƣợc thỏa mãn bởi tài liệu D1 nếu và chỉ nếu D1 chứa cả
term t1 và term t2. Tƣơng tự, câu truy vấn “t1 OR t2” sẽ đƣợc thỏa mãn bởi tài liệu D1
nếu và chỉ nếu D1 chứa term t1 hoặc chứa term t2 hoặc chứa cả 2. Câu truy vấn “t1
AND NOT t2” đƣợc thỏa mãn bởi tài liệu D1 nếu và chỉ nếu D1 chứa t1 và không chứa
t2. Các câu truy vấn phức tạp hơn có thể đƣợc xây dựng từ nhiều toán tử hơn và đƣợc
tính toán theo quy tắc của đại số Boolean. Khi xem xét một tài liệu D1 có phù hợp với
câu truy vấn q thì chỉ có 2 khả năng có thể xảy ra: D1 phù hợp với q hoặc D1 không
phù hợp với q. Do đó, không thể xếp hạng các tài liệu. Trong trƣờng hợp có stemming,


12

một câu truy vấn yêu cầu phải có từ “retrieve” sẽ đƣợc thỏa mãn bởi các tài liệu có các
từ “retrieval”, “retrieves”,…
Mô hình Boolean có thể đƣợc áp dụng vào các hệ thống truy hồi thông tin với
một số tinh chỉnh:
 Thứ nhất, truy vấn có thể đƣợc áp dụng cho một thành phần cú pháp đặc biệt
của mỗi tài liệu, ví dụ điều kiện boolean có thể đƣợc áp dụng cho tiêu đề hoặc
phần tóm tắt.
 Thứ hai, bổ sung thêm một toán tử boolean vào tập hợp ban đầu, ví dụ nhƣ toán
tử “proximity” dùng để xác định độ gần nhau giữa hai term trong đoạn văn bản.
Toán tử này có thể chỉ ra rằng hai term không chỉ cùng xuất hiện trong tài liệu
đang xét mà còn cách nhau trong phạm vi n từ (n = 0 nghĩa là hai từ đứng liền
kề nhau).
 Thứ ba, mô hình boolean cổ điển có thể đƣợc xem nhƣ là một cách thức thô sơ
để biểu diễn những cụm từ và những mối quan hệ đồng nghĩa (gần nghĩa). Ví
dụ, t1 AND t2 có thể biểu diễn cho một cụm từ gồm 2 term t1 và t2 liên kết với
nhau hay t1 OR t2 có thể biểu diễn cho quan hệ đồng nghĩa giữa 2 term. Thực tế,
đã có nhiều hệ thống sử dụng ý tƣởng này để xây dựng những điều kiện
boolean mở rộng một cách tự động, ví dụ, cho một tập hợp các term truy vấn
đƣợc cung cấp bởi ngƣời dùng, một biểu thức boolean đƣợc tạo lập bằng cách
dùng các toán tử AND, OR liên kết các term truy vấn với những từ đồng nghĩa
tƣơng ứng đã đƣợc lƣu trữ trƣớc.
Cách tiếp cận Boolean điển hình không sử dụng “term weights”, mà chỉ sử dụng
2 giá trị nhị phân là 0 và 1. Giá trị 0 nghĩa là term không xuất hiện và giá trị 1 nghĩa là
term có xuất hiện. Mô hình Boolean có thể đƣợc xem nhƣ là một cách đơn giản để
biểu diễn các cụm từ hoặc các mối quan hệ từ điển. Ví dụ, câu truy vấn “t1 AND t2”
mang ý nghĩa là cả t1 và t2 phải xuất hiện, một điều kiện có thể đƣợc áp dụng nếu 2
term hình thành một cụm từ. Nếu một toán tử “priximity” đƣợc triển khai, điều kiện
boolean có thể đƣợc thiết lập để biểu diện rằng t2 phải theo ngay sau t1, nghĩa là t1 và t2


13

hình thành một cụm từ. Tƣơng tự, câu truy vấn “t1 OR t2” mang ý nghĩa là t1 xuất hiện
hoặc t2 xuất hiện hoặc cả t1 và t2 xuất hiện. Điều này cũng tƣơng đƣơng với việc biểu
diễn t1 và t2 là tƣơng đƣợc nhau hoặc t1 và t2 là cùng một lớp trong từ điển.
Ƣu điểm của mô hình Boolean:
 Đơn giản, dễ hiểu, dễ cài đặt và sử dụng.
 Mô hình lý thuyết chặt chẽ, rõ ràng.
 Trả về những kết quả chứa chính xác các từ khóa tìm kiếm.
Hạn chế của mô hình Boolean:
 Đặc tính all – or – nothing, hệ thống chỉ xác định hai trạng thái là tài liệu có liên
quan hoặc không liên quan với câu truy vấn nên kết quả trả về hoặc là quá
nhiều hoặc không có gì cả. Do đó, hiệu quả truy tìm không cao.
 Mối quan hệ giữa các term hay thứ tự giữa chúng không đƣợc xét đến.
 Không xếp hạng, không xác định đƣợc mức độ liên quan giữa tài liệu và câu
truy vấn.
 Việc chuyển một câu truy vấn của ngƣời dùng sang dạng biểu thức Boolean
không đơn giản, ngƣời dùng sẽ gặp khó khăn trong việc xây dựng các biểu thức
truy vấn boolean.
Khi đã bổ sung thêm toán tử “proximity” thì điều kiện boolean vẫn là đúng hoặc
sai, hoặc nói cách khác là điều kiện boolean mang tính chất “tất cả hoặc không có gì”
(all – or – nothing ) dẫn tới trƣờng hợp là hệ thống có thể tìm thấy một số lƣợng lớn tài
liệu liên quan hoặc là không có tài liệu nào. Hơn nữa, trong trƣờng hợp câu truy vấn
bao gồm nhiều term liên kết với nhau bởi toán tử OR, một tài liệu có chứa tất cả (hay
nhiều) term truy vấn cũng không đƣợc xem là tốt hơn so với một tài liệu chỉ chứa một
term. Tƣơng tự, trong trƣờng hợp với toán tử AND, một tài liệu chứa đƣợc gần hết các
term vẫn đƣợc xem là không phù hợp giống nhƣ một tài liệu không chứa term nào. Từ
những hạn chế nêu trên, nhiều mô hình boolean mở rộng đã đƣợc nghiên cứu phát


14

triển nhằm sắp hạng kết quả trả về. Những mô hình này sử dụng nhiều toán tử boolean
mở rộng khác.
Các toán tử boolean mở rộng sử dụng việc gán các trọng số cho các term trong
mỗi tài liệu. Một toán tử boolean điển hình đánh giá các đối số và trả về giá trị true
hoặc false. Các giá trị này thƣờng đƣợc biểu diễn dƣới dạng số học là 0 hoặc 1, 1
tƣơng ứng với true, 0 tƣơng ứng với false. Một toán tử boolean mở rộng đánh giá các
đối số của nó bằng một giá trị nằm trong khoảng từ 0 đến 1, dựa trên độ phù hợp của
tài liệu đối với câu truy vấn.
Mô hình “p-norm” [14] là một trong những mô hình Boolean mở rộng điển
hình. Trong những điều kiện nhất định, thì độ hiệu quả của “p-norm” đạt cao hơn một
số mô hình Boolean mở rộng khác. Cho một câu truy vấn bao gồm n term t1,t2,…,tn
với các trọng số tƣơng ứng là wq1,wq2,…,wqn và một tài liệu D với các trọng số tƣơng
ứng là wd1,wd2,…,wdn cho n term. Mô hình “p-norm” định nghĩa công thức độ tƣơng
tự cho các toán tử AND mở rộng và các toán tử OR mở rộng. Công thức AND mở
rộng tính toán độ tƣơng tự của tài liệu cho trƣớc với một câu truy vấn đƣợc xây dựng
bằng cách AND các term lại với nhau. Tƣơng tự, công thức OR mở rộng tính toán độ
tƣơng tự của tài liệu cho trƣớc với một câu truy vấn đƣợc xây dựng bằng cách OR các
term lại với nhau. Mỗi độ tƣơng tự sẽ đƣợc tính toán và cho ra kết quả là một số thuộc
đoạn [0,1]. Các câu truy vấn phức tạp có thể đƣợc xây dựng từ các công thứ AND và
OR. Công thức Boolean mổ rộng cho mô hình “p-norm”:

1

p
 n
p
p 
((1

w
)

w
)

di
qi


 , (1  p  )
SIM AND (d , (t1 , wq1 ) AND... AND(tn , wqn ))  1   i 1
n
p


wqi



i 1




15

1
p


p
p 
  ( wdi  wqi ) 
 , (1  p  )
SIM OR (d , (t1 , wq1 )OR...OR(tn , wqn ))  1   i 1 n
p


wqi



i 1


n

Mô hình “p-norm” có một tham số đƣợc dùng để tinh chỉnh mô hình là tham số
p. Tham số p có thể biến thiên từ 1 đến dƣơng vô cùng. Khi p nhận giá trị là dƣơng vô
cùng thì mô hình “p-norm” tƣơng đƣơng với mô hình Boolean điển hình. Khi p nhận
giá trị là 1 thì mô hình “p-norm” tƣơng đƣơng với mô hình không gian vector nguyên
thủy.
Các toán tử boolean điển hình AND và OR là nhị phân. Các toán tử này nối 2
term lại với nhau. Tuy nhiên, chúng cũng có tính chất kết hợp, ví dụ, t1 AND (t2 AND
t3) tƣơng đƣơng với (t1 AND t2) AND t3. Điều này không đúng trong mô hình “pnorm” và một số mô hình Boolean mở rộng khác vì mô hình “p-norm” và các mô hình
Boolean mở rộng khác định nghĩa các toán tử boolean mở rộng ví dụ nhƣ kết hợp n
term lại thay vì là nhị phân. Do đó biểu thức boolean trên trở thành AND (t1,t2,t3), biểu
thức này đúng nếu và chỉ nếu cả 3 term t1, t2, t3 đều xuất hiện. Mô hình p-norm hỗ trợ
việc gán các trọng số cho các term trong câu truy vấn cũng nhƣ các term trong tài liệu.
Các trọng số là tƣơng đối thay vì tuyệt đối, ví dụ, câu truy vấn (t 1, 1) AND (t2, 1) với
trọng số 1 đƣợc gán cho mỗi term thì hoàn toàn tƣơng đƣơng với câu truy vấn (t1, 0.1)
AND (t2, 0.1) với trọng số 0.1 đƣợc gán cho mỗi term. Điều này có đƣợc là do mô
hình “p-norm” chuẩn hóa các trọng số. Các trọng số tƣơng đối sẽ tạo ra sự dễ dàng và
gần gũi hơn đối với ngƣời dùng. Nó cũng cho phép ngƣời dùng dễ dàng hơn trong việc
định nghĩa các quan hệ.
Một mức độ linh động cao hơn có thể đạt đƣợc trong mô hình “p-norm” bằng
cách cho phép ngƣời dùng gán các giá trị tham số p khác nhau cho mỗi toán tử boolean
trong biểu thức boolean cho trƣớc.


16

2.1.2.2.

Mô hình không gian vector

Một cách tiếp cận phổ biến để biểu diễn tài liệu và đánh chỉ mục cho mục đích
thống kê là biểu diễn mỗi tài liệu nhƣ là một tập các term. Các term thƣờng là các từ
đƣợc trích tự động từ các tài liệu, có thể là các cụm từ, n-grams. Thông thƣờng, nếu
các term là các từ đƣợc trích từ các tài liệu, các stop word đƣợc loại trừ và các từ còn
lại đã đƣợc xử lý stemmed do đó chỉ có một dạng ngữ pháp duy nhất của một từ hoặc
một cụm từ đƣợc giữ lại. Có thể áp dụng kỹ thuật này cho mỗi tài liệu trong kho , sinh
ra tập các term đại diện cho tài liệu. Nếu kết hợp các tập này lại sẽ thu đƣợc tập các
term đại diện cho toàn bộ các tài liệu trong kho. Tập các term này đƣợc định nghĩa là
không gian trong đó mỗi term đại diện 1 chiều trong không gian.
Mỗi term trong tài liệu có thể đƣợc gán một trọng số, đại diện cho sự hiệu quả
của term trong việc mô tả tài liệu, ví dụ, độ hiệu quả của term trong việc phân biệt tài
liệu này với các tài liệu khác trong kho. Một term nhƣng xuất hiện trong các tài liệu
khác nhau có thể có các trọng số khác nhau. Một term không xuất hiện trong một tài
liệu thì trọng số là 0 trong tài liệu đó. Trọng số đƣợc gán cho các term trong một tài
liệu D1 có thể đƣợc xem nhƣ là tọa độc của D1 trong không gian tài liệu; nói cách
khác, D1 đƣợc biểu diễn nhƣ là một điểm trong không gian tài liệu. Tƣơng tự, D 1 cũng
có thể đƣợc biểu diễn nhƣ là một vector từ góc tọa độ của không gian tài liệu đến điểm
xác định bởi tọa độ của D1.
Trong không gian tài liệu, mỗi tài liệu D1 đƣợc định nghĩa bởi trọng số của các
term đại diện cho nó. Đôi khi, ngƣời ta định nghĩa một không gian term cho một tập
cho trƣớc. Trong không gian term, mỗi tài liệu là một chiều. Mội điểm (hoặc vector)
trong không gian term là một term trong tập cho trƣớc. Tọa độ của một term cho trƣớc
là trọng số đƣợc gán cho term trong mỗi tài liệu mà nó xuất hiện. Tƣơng tự nhƣ trong
không gian vector, một term nhận giá trị trọng số 0 nếu nó không xuất hiện trong tài
liệu.


17

Chúng ta có thể kết hợp không gian tài liệu và không gian term bằng một ma
trận “document-by-term”. Mỗi dòng của ma trận là một tài liệu. Mỗi cột của ma trận là
một term. Phần tử tại dòng i, cột j là trọng số của term j trong tài liệu i.
Một câu truy vấn có thể đƣợc tạo ra bởi ngƣời dùng dƣới dạng một tập các term
với các trọng số. Hoặc một câu truy vấn cũng có thể đƣợc tạo ra dƣới dạng ngôn ngữ
tự nhiên. Trong trƣờng hợp này, câu truy vấn có thể đƣợc xử lý chính xác nhƣ một tài
liệu; thực ra, câu truy vấn có thể đƣợc xem nhƣ là một tài liệu. Do đó, câu truy vấn có
thể đƣợc chuyển đổi nhƣ là một tài liệu trong không gian tài liệu. Nếu câu truy vấn
chƣa các term không tồn tại trong tập thì các term này sẽ là các chiều bổ sung thêm
vào tập.
Một câu hỏi quan trọng là làm thế nào trọng số đƣợc gán cho các term trong các
tài liệu hoặc trong các câu truy vấn. Nhiều cơ chế đánh trọng số đƣợc sử dụng. Cho
một tập lớn các tài liệu, việc đánh trọng số bằng tay đòi hỏi chi phí rất cao. Cơ chế
thành công nhất và đƣợc sử dụng rộng rãi cho việc phát sinh trọng số tự động là cơ chế
“term frequency * inverse document frequency”, hay còn đƣợc gọi là “tf*idf”. Độ đo tf
là tần số xuất hiện của term trong tài liệu nhất định do đó tf mang tính chất thống kê
trong cục bộ trong tài liệu đó, giá trị tf của cùng một term có thể khác nhau trong các
tài liệu khác nhau, thể hiện độ quan trọng của term đối với từng tài liệu cụ thể. Ngƣợc
lại, độ đo idf mang tính chất thống kê toàn cục, idf đặc trƣng cho term trong toàn bộ
tập các tài liệu. Nó cho biết sự phổ biến của term trong tập các tài liệu và xác xuất mà
term đó xuất hiện trong một tài liệu. Độ đo idf đƣợc định nghĩa là ln(N/n) với N là số
tài liệu trong tập và n là số tài liệu có chứa term đó. Do đó, nếu có càng ít tài liệu chứa
term A thì giá trị idf của term A càng cao. Nếu tất cả các tài liệu đều chứa term A thì
giá trị idf của term A là 0. Điều này mang ý nghĩa là khi một term xuất hiện trong hầu
hết các tài liệu thì nó sẽ càng mang ít ý nghĩa trong việc phân biệt các tài liệu với nhau.
Ví dụ, trong một tập các tài liệu về khoa học máy tính hoặc về công nghệ phần mềm.
term “computer” hầu nhƣ sẽ xuất hiện trong tất cả các tài liệu do đó sẽ không có hiệu
quả nếu dùng term “computer” cho một câu query để xác định xem tài liệu nào là phù


18

hợp. Nhƣng term “computer” lại có thể rất hiệu quả trong câu query để phân biệt giữa
các tài liệu thuộc về lĩnh vực khoa học máy tính với các tài liệu thuộc lĩnh vực không
liên quan ví dụ nhƣ y học, sử học, văn học, v.v…
Tính toán trọng số của một term trong một tài liệu cho trƣớc bằng độ đo tf*idf
mang ý nghĩa chọn tập term đặc trƣng cho tài liệu là những term xuất hiện nhiều trong
tài liệu này và ít xuất hiện trong các tài liệu khác. Tƣơng tự, một term xuất hiện với tần
suất trung bình trong các tài liệu cũng sẽ là một term đặc trƣng tốt. Do đó, các term tốt
nhất để đại diện cho tài liệu sẽ là các term xuất hiện với tần số trung bình trong tập các
tài liệu.
Để giải quyết vấn đề kích thƣớc khác nhau của các tài liệu, trọng số thƣờng
đƣợc chuẩn hóa. Loại chuẩn hóa thứ nhất là chuẩn hóa tf, tf đƣợc chia cho tfmax với
tdmax là tần số của term xuất hiện nhiều nhất trong tài liệu đó. Hiệu quả của việc
chuẩn hóa này là biến đổi giá trị tf nằm trong khoảng [0,1]. Kiểu chuẩn hóa này đƣợc
gọi là “maximum normalization”. Một biến thể khác là 0.5 + (0.5/(tf/tfmax)), trong
biến thể này thì tf biến thiên trong đoạn [0.5,1], kiểu chuẩn hóa này đƣợc gọi là
“augmented normalized”. Mục đích của loại chuẩn hóa này là trọng số của một term
trong một tài liệu nên phụ thuộc vào số lần xuất hiện của nó trong tài liệu và số lần
xuất hiện của các term khác trong cùng tài liệu đó.
Tuy nhiên, có một lỗ hỏng tiềm năng trong “maximum normalization”. Yếu tố
chuẩn hóa cho một tài liệu chỉ phụ thuộc vào tần số của các term có tần suất cao nhất
trong tài liệu. Xem xét tài liệu D1, trong đó có các term đặc trƣng dùng cho việc phân
loại chủ đề xuất hiện với xác suất cân bằng nhau, một term khác xuất hiện với xác suất
không cân bằng. Ví dụ, tài liệu D1 đƣợc đặc trƣng bởi 4 term t1, t2, t3, t4; t1, t2, t3 xuất
hiện 2 lần; t4 xuất hiện 6 lần. Từ đó, chúng ta thấy rằng t4 sẽ làm giảm trọng số của t1,
t2 và t3. Vấn đề tƣơng tự cũng xảy ra với “augmented normalized” nhƣng mức độ biến
thiên ít hơn.


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×