Tải bản đầy đủ (.pdf) (60 trang)

một số thuật toán phân lớp tiêu biểu và đưa ra hướng thực nghiệm cho phương pháp biểu diễn văn bản dựa trên các khái niêm mờ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (673.71 KB, 60 trang )

Khóa luận tốt nghiệp Nguyễn Việt Cường

i
LỜI CẢM ƠN

Em xin bày tỏ lòng kính trọng và biết ơn sâu sắc tới thầy giáo, tiến sĩ HÀ
QUANG THỤY, Trường Đại học Công nghệ, ĐHQG Hà Nội và tiến sĩ ĐOÀN SƠN,
Đại học Tohoku, Nhật Bản đã hướng dẫn và động viên em rất nhiều trong quá trình
làm luận văn.
Em xin được gửi lời cảm ơn tới các Thầy, Cô trong Trường Đại học Công
Nghệ, Đại học Quốc Gia Hà Nội và nhóm Xeminar thuộ
c bộ môn Các Hệ thống
Thông tin, những người đã dạy dỗ, giúp đỡ và chỉ bảo cho em trong suốt quá trình học
tập.
Cuối cùng, con xin gửi lời biết ơn tới gia đình, nơi đã sinh thành, nuôi dưỡng
và động viên con rất nhiều trong thời gian qua.
Hà Nội ngày 20/05/2006
Sinh viên



Nguyễn Việt Cường
Khóa luận tốt nghiệp Nguyễn Việt Cường

ii
TÓM TẮT
Biểu diễn văn bản là một trong những công đoạn quan trọng nhất và được quan
tâm đầu tiên trong các vấn đề xử lý văn bản. Nó có ảnh hưởng rất lớn đến các bài toán tìm
kiếm văn bản, phân lớp, phân cụm hay tóm tắt văn bản… Khóa luận này trình bày và
nghiên cứu một phương pháp biểu diễn văn bản mới dựa trên cơ sở lý thuyết tập mờ và áp
dụng vào bài toán phân lớp văn b


ản. Nội dung của khóa luận tập trung vào các vấn đề
sau:
1. Trình bày một số phương pháp biểu diễn văn bản thông thường, trong đó, khóa
luận đi sâu vào cách biểu diễn theo mô hình vector, tức mỗi văn bản sẽ được biểu diễn
như một vector có các thành phần là các từ khóa có mặt hoặc không có mặt trong văn bản.
Sau đó, khóa luận tìm hiểu phương pháp biểu diễn văn bản trong máy tìm kiếm.
2. Trình bày về lý thuyế
t tập mờ, và đề cập một cách biểu diễn văn bản mới dựa
trên các khái niệm mờ. Từ đó đề xuất hướng giải quyết khi xuất hiện các từ đồng nghĩa
trong văn bản.
3. Tiến hành thử nghiệm cách biểu diễn mới này vào bài toán phân lớp văn bản.
Chỉ ra một số kết quả phân lớp và so sánh với phương pháp biểu diễn theo mô hình vector
thông thường. Từ
đó rút ra một số kết luận và hướng phát triển tiếp theo.
Khóa luận tốt nghiệp Nguyễn Việt Cường

iii

MỤC LỤC
LỜI CẢM ƠN i
TÓM TẮT ii
MỤC LỤC iii
MỞ ĐẦU 1
Chương 1. KHAI PHÁ DỮ LIỆU VĂN BẢN 3
1.1. Tổng quan về khai phá dữ liệu 3
1.1.1. Khái niệm 3
1.1.2. Các bước của quá trình khai phá dữ liệu 3
1.1.3. Ứng dụng của khai phá dữ liệu 5
1.2. Một số bài toán trong khai phá dữ liệu văn bản 6
1.2.1. Tìm kiếm văn bản 6

1.2.2. Phân lớp văn bản 7
Chương 2. CÁC PHƯƠNG PHÁP CƠ BẢN BIỂU DIỄN VĂN BẢN 10
2.1. Tiền xử lý văn bản 10
2.2. Mô hình Logic 12
2.3. Mô hình phân tích cú pháp 14
2.4. Mô hình không gian vector 15
2.4.1. Mô hình Boolean 17
2.4.2. Mô hình tần suất 17
2.5. Biểu diễn văn bản trong máy tìm kiếm 20
2.5.1. Giới thiệu về máy tìm kiếm 20
2.5.2. Mô hình biểu diễn văn bản trong máy tìm kiếm 21
Chương 3. BIỂU DIỄN VĂN BẢN SỬ DỤNG CÁC KHÁI NIỆM MỜ 23
Khóa luận tốt nghiệp Nguyễn Việt Cường

iv
3.1.
Lý thuyết mờ 23
3.1.1. Tập mờ 23
3.1.2. Các phép toán trên tập mờ 25
3.1.3. Quan hệ mờ 27
3.1.4. Các phép toán trên quan hệ mờ 27
3.2. Biểu diễn văn bản sử dụng các khái niệm mờ 29
3.2.1. Khái niệm mờ 30
3.2.2. Biểu diễn văn bản 32
3.2.3. Đề xuất giải pháp cho vấn đề đồng nghĩa 32
Chương 4. CÁC PHƯƠNG PHÁP PHÂN LỚP VĂN BẢN 35
4.1. Tổng quan về bài toán phân lớp 35
4.2. Các thuật toán phân lớp 36
4.2.1. Phân lớp dựa trên thuật toán Naive Bayes 36
4.2.2. Phân lớp dựa trên thuật toán K - Nearest Neighbor (KNN) 38

4.2.3. Phân lớp dựa vào thuật toán cây quyết định 39
4.2.4. Phân lớp sử dụng Support Vector Machines (SVM) 41
Chương 5. MỘT SỐ KẾT QUẢ THỰC NGHIỆM 43
5.1. Tập dữ liệu và tiền xử lý 43
5.2. Công cụ và phương pháp phân lớp 44
5.3. Kết quả thực nghiệm 45
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 53
TÀI LIỆU THAM KHẢO 55



Khóa luận tốt nghiệp Nguyễn Việt Cường

1
MỞ ĐẦU
Ngày nay, sự phát triển mạnh mẽ của Internet đã dẫn đến sự bùng nổ thông tin về
nhiều mặt kể cả về nội dung lẫn số lượng. Chỉ bằng một thao tác tìm kiếm đơn giản, ta có
thể nhận về một khối lượng khổng lồ các trang web có chứa thông tin liên quan tới nội
dung ta tìm kiếm. Tuy nhiên, chính sự dễ dàng này cũng mang đến cho con người rất
nhiều khó khăn trong việc chắt l
ọc ra các thông tin có ích để thu được các tri thức mới.
Phát hiện tri thức và khai phá dữ liệu là câu trả lời mới nhất cho vấn đề này nhằm phát
hiện ra các tri thức mới từ khối dữ liệu khổng lồ mà con người có được.
Trong các loại dữ liệu thì văn bản là loại dữ liệu phổ biến mà con người thường
gặp phải nhất. Mô hình biểu diễn văn bản phổ biến hiệ
n nay là mô hình không gian
vector, trong đó mỗi văn bản được biểu diễn bằng một vector của các từ khóa. Tuy nhiên
bài toán khai phá dữ liệu văn bản thường gặp phải một số khó khăn như tính nhiều chiều
của văn bản, tính nhập nhằng của ngôn ngữ… Trong khóa luận này, chúng tôi xin đề cập
đến một cách biểu diễn văn bản mới: biểu diễn dựa trên các khái niệm mờ. Trong đó, mỗi

khái ni
ệm sẽ được xác định bởi một tập các từ khóa liên quan. Và mức độ liên quan của
khái niệm đến văn bản sẽ được xác định bằng hàm tích hợp mờ các từ khóa đó. Sau khi đã
có một tập các khái niệm liên quan đến một hay nhiều chủ đề cần phần lớp, mỗi văn bản
sẽ được xem như là một vector có các thành phần là các khái niệm mờ đó.
Với lượng thông tin dạ
ng văn bản đồ sộ của Internet, một yêu cầu lớn đặt ra đối
với chúng ta là làm sao tổ chức và tìm kiếm thông tin có hiệu quả nhất. Phân lớp (phân
loại) thông tin là một trong những giải pháp hợp lý cho yêu cầu trên. Khóa luận sẽ trình
bày một số thuật toán phân lớp tiêu biểu và đưa ra hướng thực nghiệm cho phương pháp
biểu diễn văn bản dựa trên các khái niêm mờ.
Chúng tôi áp dụng thuật toán KNN (k – người láng giềng gần nhấ
t) và phần mềm
WEKA (K-người láng giếng gần nhất) để tiến hành phân lớp. Phần thực nghiệm cho thấy
rằng phương pháp biểu diễn văn bản dựa khái niệm mờ có kết quả phân lớp tốt hơn so với
phương pháp biểu diễn văn bản theo vector từ khóa.
Ngoài phần mở đầu và kết luận, nội dung của luận văn được trình bày trong 5
chương:
Khóa luận tốt nghiệp Nguyễn Việt Cường

2
Chương 1, giới thiệu tổng quan về khai phá dữ liệu văn bản, một số định nghĩa và
một số bài toán điển hình.
Chương 2, trình bày một số phương pháp biểu diễn văn bản truyền thống: mô
hình tần suất, mô hình phân tích cú pháp, mô hình không gian vector Đồng thời nêu ra
cách biểu diễn văn bản thường dùng trong máy tìm kiếm.
Chương 3, giới thiệu tổng quan về lý thuyết tập mờ [9][14] và m
ột số phép toán
trên tập mờ. Nội dung chính của chương là đề cập một cách biểu diễn văn bản mới dựa
trên các khái niệm mờ.

Chương 4, trình bày bài toán phân lớp văn bản và một số thuật toán phân lớp tiêu
biểu.
Chương 5, chỉ ra các kết quả thực nghiệm có được khi áp dụng mô hình biểu diễn
mới trong bài toán phân lớp văn bản. Đánh giá và so sánh với mô hình biểu diễn thông
thường.














Khóa luận tốt nghiệp Nguyễn Việt Cường

3
Chương 1. KHAI PHÁ DỮ LIỆU VĂN BẢN
1.1. Tổng quan về khai phá dữ liệu
1.1.1. Khái niệm
Khai phá dữ liệu[1][7][13] là một khái niệm ra đời vào những năm cuối của thập
kỷ 80 của thế kỷ 20. Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thông tin có
giá trị tiềm ẩn trong các tập dữ liệu lớn như các kho dữ liệu, các cơ sở dữ liệu (CSDL) có
dung lượng rất lớn. Về bản chất, khai phá dữ liệu liên quan đến việc phân tích các dữ liệu
và sử dụng các k

ỹ thuật để tìm ra các mẫu có tính hệ thống trong tập dữ liệu.
 Một số định nghĩa tiêu biểu về Data mining:
Khái niệm data mining được định nghĩa như sau: “The nontrivial extraction
of implicit, previously unknown, and potentially useful information from data” [13], tạm
dịch: “là việc trích rút một cách phức tạp các thông tin - ẩn, không biết trước và có khả
năng hữu ích - từ dữ liệu”.
“The science of extracting useful information from large data sets or databases”
[1], tạm dịch là: “Nghành khoa học chuyên trích chọn những thông tin có giá trị từ những
t
ập dữ liệu lớn hoặc các CSDL”.
Năm 1989, Fayyad, Piatestky-Shapiro và Smyth đã đưa ra khái niệm “Phát hiện
tri thức trong cơ sở dữ liệu” (Knowledge Discovery in Databases - KDD) để chỉ toàn bộ
quá trình phát hiện các tri thức có ích từ các tập dữ liệu lớn [6]. Trong đó, khai phá dữ
liệu là một bước đặc biệt quan trọng trong toàn bộ quá trình, sử dụng các thuật toán
chuyên dụng để chiết xuất ra các mẫu (pattern) từ dữ liệu.
1.1.2. Các bước của quá trình khai phá dữ liệu
Các thuật toán khai phá dữ liệu thường được miêu tả như những chương trình
hoạt động trực tiếp trên tệp dữ liệu. Với các phương pháp học máy và thống kê trước đây,
thường thì bước đầu tiên của các thuật toán là nạp toàn bộ dữ liệu vào trong bộ nhớ trong
để xử lý. Khi chuyển sang các ứng dụng công nghiệp liên quan đến việc khai phá các kho
dữ liệu lớn, mô hình này không thể đáp ứng được. Không chỉ
bởi vì không thể nạp hết dữ
liệu vào trong bộ nhớ mà còn vì không thể chiết suất dữ liệu ra các tệp đơn giản để phân
tích được.
Khóa luận tốt nghiệp Nguyễn Việt Cường

4
Quá trình khai phá dữ liệu bắt đầu bằng cách xác định chính xác vấn đề cần giải
quyết. Sau đó sẽ xác định các dữ liệu liên quan dùng để xây dựng giải pháp. Bước tiếp
theo là thu thập các dữ liệu có liên quan và xử lý chúng thành định dạng sao cho các thuật

toán khai phá dữ liệu có thể hiểu được. Về lý thuyết thì có vẻ rất đơn giản nhưng khi thực
hiện thì đây thực sự là một quá trình rất khó khă
n, gặp phải nhiều vướng mắc như dữ liệu
phải được sao ra nhiều bản (nếu được chiết suất vào các tệp), quản lý tập các tệp dữ liệu,
phải lặp đi lặp lại nhiều lần toàn bộ quá trình (nếu mô hình dữ liệu thay đổi)
Sẽ là quá cồng kềnh với một thuật toán khai phá dữ liệu nếu phải truy nhập vào
toàn bộ nội dung của CSDL và làm nh
ững việc như trên. Vả lại, điều này cũng không cần
thiết. Có rất nhiều thuật toán khai phá dữ liệu thực hiện trên những thống kê tóm tắt khá
đơn giản của CSDL, khi mà toàn bộ thông tin trong CSDL là quá dư thừa đối với mục
đích của việc khai phá dữ liệu.
Bước tiếp theo là chọn thuật toán khai phá dữ liệu thích hợp và thực hiện việc
khai phá để tìm được các mẫu có ý nghĩa dưới d
ạng biểu diễn tương ứng với các ý nghĩa
đó. Thông thường các mẫu được biểu diễn dưới dạng luật phân loại, cây quyết định, luật
sản xuất, biểu thức hồi quy,

Hình 1: Quá trình khai phá dữ liệu
Đặc điểm của các mẫu là phải mới, ít nhất là đối với hệ thống đó. Độ mới có thể
được đo tương ứng với độ thay đổi trong dữ liệu (bằng cách so sánh các giá trị hiện tại với
các giá trị trước đó hoặc các giá trị mong muốn), hoặc bằng tri thức (mối liên hệ giữa các
Khóa luận tốt nghiệp Nguyễn Việt Cường

5
phương pháp tìm mới và phương pháp cũ như thế nào). Thường thì độ mới của mẫu được
đánh giá bằng các hàm logic hoặc hàm đo độ mới, độ bất ngờ của mẫu. Ngoài ra, mẫu
phải có khả năng sử dụng tiềm tàng. Các mẫu này sau khi được xử lý và diễn giải phải
dẫn đến những hành động có ích nào đó được đánh giá bởi một hàm lợi ích. Ví dụ như
trong d
ữ liệu các khoản vay, hàm lợi ích đánh giá khả năng tăng lợi nhuận từ các khoản

vay. Mẫu khai thác được phải có giá trị đối với các dữ liệu mới với độ chính xác nào đó.
Vì khi thi hành các thuật toán và các nhiệm vụ của khai phá dữ liệu là rất khác
nhau cho nên dạng của các mẫu chiết xuất được cũng rất đa dạng. Theo cách đơn giản
nhất, sự phân tích cho ra kết quả chiết xuấ
t là một báo cáo về một số loại, có thể bao gồm
các phép đo mang tính thống kê về độ phù hợp của mô hình, các dữ liệu lạ Trong thực
tế thì đầu ra phức tạp hơn nhiều. Mẫu chiết suất được có thể là một mô tả xu hướng, có
thể dưới dạng văn bản, một đồ thị mô tả các mối quan hệ trong mô hình, cũng có thể là
một hành động, ví dụ như yêu c
ầu của người dùng làm gì với những gì khai thác được
trong CSDL.
Như vậy có thể nhận thấy rằng kỹ thuật khai phá dữ liệu thực chất là sự kế thừa,
kết hợp và mở rộng của các kỹ thuật cơ bản đã được nghiên cứu từ trước như học máy,
nhận dạng, thống kê (hồi quy, xếp loại, phân nhóm), các mô hình đồ thị, mạng Bayes, trí
tuệ nhân tạo, thu th
ập tri thức hệ chuyên gia Tuy nhiên, với sự kết hợp hướng mục tiêu
của khai phá dữ liệu, kỹ thuật này có ưu thế hơn hẳn các phương pháp trước đó, đem lại
nhiều triển vọng trong việc ứng dụng phát triển nghiên cứu khoa học cũng như làm tăng
mức lợi nhuận trong các hoạt động kinh doanh.
1.1.3. Ứng dụng của khai phá dữ liệu
Tuy là một hướng tiếp cận mới nhưng khai phá dữ liệu đã thu hút được rất nhiều
sự quan tâm của các nhà nghiên cứu và phát triển nhờ vào những ứng dụng thực tiễn của
nó [xx]. Chúng ta có thể liệt kê ra đây một số ứng dụng điển hình:
 Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis & decision support)
 Điều trị y học (medical treatment)
 Text mining & Web mining
 Tin-sinh học (bio-informatics)

Tài chính và thị trường chứng khoán (finance & stock market)
Khóa luận tốt nghiệp Nguyễn Việt Cường


6
Phần tiếp theo, chúng tôi xin trình bày khái quát về Text Mining (gọi theo tiếng
Việt là Khai phá dữ liệu văn bản), một trong những ứng dụng điển hình nêu trên của khai
phá dữ liệu.
1.2. Một số bài toán trong khai phá dữ liệu văn bản
1.2.1. Tìm kiếm văn bản
 Nội dung:
Tìm kiếm văn bản[2][10] là quá trình tìm kiếm văn bản theo yêu cầu của người
dùng. Các yêu cầu được thể hiện dưới dạng các câu hỏi (query), dạng câu hỏi đơn giản
nhất là các từ khóa. Có thể hình dung hệ tìm kiếm văn bản sắp xếp tập văn bản trong miền
tìm kiếm thành hai lớp: Một lớp được hiển thị bao gồm các văn bản thỏa mãn với câu hỏi
người dùng và một lớp không được hiển thị bao gồm các văn bản không thỏa mãn yêu
cầu. Thực tế, các hệ thống tìm kiếm điển hình hiện nay, chẳng hạn như các máy tìm kiếm
như Google, Altavista…, không hoạt động như vậy mà đưa ra danh sách các văn bản theo
độ liên quan của văn bản với câu hỏi người dùng
 Quá trình tìm kiếm
Quá trình tìm kiếm được chia thành bốn quá trình thành phần chính :
Đánh chỉ số (indexing): Các văn b
ản ở dạng thô cần được chuyển sang một dạng
biểu diễn nào đó để xử lý. Quá trình này còn được gọi là quá trình biểu diễn văn bản,
dạng biểu diễn phải có cấu trúc và dễ dàng khi xử lý. Một nội dung quan trọng của khóa
luận này là nghiên cứu cách thức biểu diễn văn bản sử dụng lý thuyết tập mờ nhằm có
được biểu diễn văn bản mang nhiều ng
ữ nghĩa hơn.
Định dạng câu hỏi: Người dùng phải mô tả những yêu cầu về lấy thông tin cần
thiết dưới dạng câu hỏi. Các câu hỏi này phải được biểu diễn dưới dạng phổ biến cho các
hệ tìm kiếm như nhập vào các từ khóa cần tìm. Ngoài ra còn có các phương pháp định
dạng câu hỏi dưới dạng ngôn ngữ tự nhiên hoặc dưới dạng các ví dụ, đối với các dạng này
thì cầ

n có các kỹ thuật xử lý phức tạp hơn. Đại đa số hệ tìm kiếm hiện nay dùng câu hỏi
dưới dạng các từ khóa.
So sánh: Hệ thống phải thực hiện việc so sánh tường minh và toàn vẹn câu hỏi
của người dùng với các văn bản được lưu trữ trong CSDL. Cuối cùng hệ thống đưa ra một
Khóa luận tốt nghiệp Nguyễn Việt Cường

7
quyết định phân loại các văn bản theo độ liên quan gần với câu hỏi người dùng và sắp xếp
theo thứ tự giảm dần của độ liên quan. Hệ thống hoặc hiển thị toàn bộ văn bản hoặc chỉ
một phần văn bản.
Phản hồi: Trong nhiều trường hợp, kết quả được trả về lúc đầu chưa phải đã thỏa
mãn yêu cầ
u của người dùng, do đó cần phải có quá trình phản hồi để người dùng có thể
thay đổi lại hoặc nhập mới các yêu cầu của mình. Mặt khác, người dùng có thể tương tác
với các hệ về các văn bản thỏa mãn yêu cầu của mình và hệ có chức năng cập nhậu các
văn bản đó. Quá trình này được gọi là quá trình phản hồi liên quan (Relevance feeback).
Các công cụ tìm kiếm hiện nay chủ yếu tập trung nhiều vào ba quá trình con
đầu
tiên, còn phần lớn chưa có quá trình phản hồi hay xử lý tương tác người dùng và máy.
Quá trình phản hồi hiện nay đang được nghiên cứu rộng rãi và riêng trong quá trình tương
tác giao diện người máy đã xuất hiện hướng nghiên cứu được gọi là tác tử giao diện
(interface agent).
1.2.2. Phân lớp văn bản
 Nội dung
Phân lớp văn bản [3][5][8][11][12] được xem như là quá trình gán các văn bản
vào một hay nhiều lớp văn bản đã được xác định từ trước. Người ta có thể phân lớp các
văn bản một cách thủ công, tức là đọc nội dung từng văn bản một và gán nó vào một lớp
nào đó. Hệ thống quản lý tập gồm rất nhiều văn bản cho nên cách này sẽ tốn rất nhi
ều thời
gian, công sức và do đó là không khả thi. Do vậy mà phải có các phương pháp phân lớp

tự động. Để phân lớp tự động người ta sử dụng các phương pháp học máy trong trí tuệ
nhân tạo như Cây quyết định, Bayes, k người láng giềng gần nhất
Một trong những ứng dụng quan trọng nhất của phân lớp văn bản tự động là ứng
dụng trong các hệ thống tìm kiếm văn bản. T
ừ một tập con văn bản đã phân lớp sẵn, tất cả
các văn bản trong miền tìm kiếm sẽ được gán chỉ số lớp tương ứng. Trong câu hỏi của
mình, người dùng có thể xác định chủ đề hoặc lớp văn bản mà mình mong muốn tìm kiếm
để hệ thống cung cấp đúng yêu cầu của mình.
Một ứng dụng khác của phân lớp văn bản là trong lĩnh v
ực hiểu văn bản. Phân
lớp văn bản có thể được sử dụng để lọc các văn bản hoặc một phần các văn bản chứa dữ
liệu cần tìm mà không làm mất đi tính phức tạp của ngôn ngữ tự nhiên.
Khóa luận tốt nghiệp Nguyễn Việt Cường

8
Trong phân lớp văn bản, sự tương ứng giữa một văn bản với một lớp hoặc thông
qua việc gán giá trị đúng sai (True - văn bản thuộc lớp, hay False -văn bản không thuộc
lớp) hoặc thông qua một độ phụ thuộc (đo độ phụ thuộc của văn bản vào lớp). Trong
trường hợp có nhiều lớp thì phân loại đúng sai sẽ là việc xem một văn b
ản có thuộc vào
một lớp duy nhất nào đó hay không.
 Quá trình phân lớp
Quá trình phân lớp văn bản tuân theo các bước sau:
Đánh chỉ số: Quá trình đánh chỉ số văn bản cũng giống như trong quá trình đánh
chỉ số của tìm kiếm văn bản. Trong quá trình này thì tốc độ đánh chỉ số đóng vai trò quan
trọng vì xuất hiện lượng đáng kể văn bản mới có thể cần được
đánh chỉ số trong thời gian
thực.
Xác định độ phân lớp: Cũng giống như trong tìm kiếm văn bản, phân lớp văn bản
yêu cầu quá trình diễn tả việc xác định văn bản đó thuộc lớp nào đó ra sao (mô hình phân

lớp) dựa trên cấu trúc biểu diễn của nó. Đối với hệ phân lớp văn bản, chúng ta gọi quá
trình này là bộ phân lớp (Categorizator hoặc classifier). Nó đóng vai trò như các câu hỏi
trong h
ệ tìm kiếm. Tuy nhiên, trong khi những câu hỏi mang tính nhất thời, thì bộ phân
lớp được sử dụng một cách ổn định và lâu dài cho quá trình phân lớp.
So sánh: Trong hầu hết các bộ phân lớp, mỗi văn bản đều được yêu cầu gán đúng
sai vào một lớp nào đó. Sự khác nhau lớn nhất đối với quá trình so sánh trong hệ tìm kiếm
văn bản là mỗi văn bản chỉ được so sánh với một số lượng các lớp m
ột lần và việc chọn
quyết định phù hợp còn phụ thuộc vào mối quan hệ giữa các lớp văn bản.
Phản hồi (Hay thích nghi): Quá trình phản hồi đóng vai trò quan trọng trong hệ
phân lớp văn bản. Thứ nhất, khi phân lớp thì phải có môt số lượng lớn các văn bản đã
được xếp loại bằng tay trước đó, các văn bản này được sử dụng làm mẫu huấn luyệ
n để
hỗ trợ xây dựng bộ phân lớp. Thứ hai, đối với việc phân lớp văn bản thì không dễ dàng
thay đổi các yêu cầu như trong quá trình phản hồi của tìm kiếm văn bản bởi vì người dùng
chỉ có thể thông tin cho người bảo trì hệ thống về việc xóa bỏ, thêm vào hoặc thay đổi các
phân lớp văn bản nào đó mà mình yêu cầu.
 Ngoài hai bài toán thường gặp trên, còn có các bài toán khác sau:
Khóa luận tốt nghiệp Nguyễn Việt Cường

9
 Phân cụm văn bản: Đưa các văn bản có nội dung giống nhau vào thành từng
nhóm
 Tóm tắt văn bản: Tóm tắt nội dung một văn bản cho trước
 Dẫn đường văn bản: Đưa một văn bản cho trước vào một chủ đề hoặc một
nơi lưu trữ nhất định theo yêu cầu người dùng
Trong các bài toán nêu trên, văn bản thường được biểu diễn thành một tập các
thuộc tính đặc trưng cho văn bản đó. Các quá trình xử lý và làm việc tiếp theo đều thực
hiện trên các thuộc tính này. Có nhiều tiêu chuẩn chọn lựa các thuộc tính để biểu diễn, tuy

nhiên đều dựa trên việc xử lý từ khóa một cách tự động.
Trong chương tiếp theo, khóa luận trình bày một số phương pháp biểu diễn văn
bản truyền thống.
Khóa luận tốt nghiệp Nguyễn Việt Cường

10
Chương 2. CÁC PHƯƠNG PHÁP CƠ BẢN BIỂU DIỄN
VĂN BẢN
2.1. Tiền xử lý văn bản
Trước khi bắt đầu quá trình biểu diễn văn bản, người ta tiến hành bước tiền xử lý
văn bản. Đây là bước hết sức quan trọng vì nó có nhiệm vụ làm giảm số từ có trong biểu
diễn văn bản và qua đó sẽ làm giảm kích thước dữ liệu trong biểu diễn văn bản.
Nội dung tiền xử lý văn bản:
Phân tích từ vựng
Bước phân tích từ vự
ng nhằm xác định các từ có trong văn bản. Kết quả của công
việc này là cho ra một tập các từ riêng biệt. Tuy nhiên trong nhiều trường hợp cần có cách
đối xử riêng biệt đối với một số từ đặc biệt, chẳng hạn như số, dấu ngoặc, dấu chấm câu
và trường hợp chữ hoa, chữ thường. Ví dụ về cách ứng xử đặc biệt, số thường bị lo
ại ra
trong khi phân tích vì một mình nó không mang lại một ý nghĩa nào cho tài liệu (ngoại trừ
một vài trường hợp đặc biệt, ví dụ trong thu thập thông tin về lĩnh vực lịch sử). Dấu chấm
câu, ví dụ như “.”, “!”, “?”, “-“, v.v… cũng thường được loại ra mà không có ảnh hưởng
gì đến nội dung của tài liệu. Tuy nhiên cần phải chú ý trong một vài trường hợp, chẳng
hạn đối với những từ ghép nối (state-of-the-art) là không được phép bỏ d
ấu “-“, vì sẽ làm
thay đổi nghĩa của từ.
 Loại bỏ từ dừng
Từ dừng ( stop-words) dùng để chỉ các từ mà xuất hiện quá nhiều trong các văn
bản của toàn tập kết quả, thường thì không giúp ích gì trong việc phân biệt nội dung của

các tài liệu. Ví dụ, những từ “web”, “site”, “link”, “www”, v.v…[??] thường xuất hiện
hầu hết trong các văn bản thì được gọi là stop-words. Ngoài ra, trong tiếng Anh, có nhiều
từ
chỉ dùng để phục vụ cho biểu diễn cấu trúc chứ không biểu đạt nội dung của nó như là
“a”, “the” (mạo từ), “in” (giới từ) , “but” (liên từ), động từ phổ biến có dạng “to”, “be”, và
một số trạng từ và tính từ đặc biệt cũng được xem là những từ dừng (stop-words).
Vì đặc điểm của từ dừng nên chúng được loại bỏ mà không ảnh hưởng đến các
công việc bi
ểu diễn văn bản tiếp theo.
Bảng danh sách một số từ dừng trong tiếng Anh:
Khóa luận tốt nghiệp Nguyễn Việt Cường

11


Danh sách một số từ dừng trong tiếng Việt: và; hoặc; cũng; là; mỗi; bởi…
 Loại bỏ từ có tần số thấp
Khi quan sát văn bản, người ta để ý thấy rằng: Có nhiều từ trong tập văn bản gốc
xuất hiện rất ít lần và chúng sẽ có ảnh hưởng rất ít trong văn bản. Vì vậy vấn đề đặt ra là
cần loại bỏ những từ
có tần xuất nhỏ. Người ta áp dụng phương pháp được đưa ra bởi
Zipf năm 1949: quan sát tần xuất xuất hiện của các từ trong tập văn bản.
Gọi tần số xuất hiện của từ khóa t trong tập hợp X là f
t
. Xắp xếp tất cả các
từ khóa trong tập hợp theo chiều giảm dần của tần số f, và gọi thứ hạng của mỗi từ khóa t
là r
t
. Đinh luật Zipf được phát biểu dưới dạng công thức sau:
f

t
.r
t
≈ K
Trong đó: K là một hằng số. Nếu N là tổng số từ trong tập văn bản, thì người ta
thấy rằng
10
N
K ≈ .
Như vậy, tần số xuất hiện và thứ hạng của một từ khóa là hai đại lượng nghịch
đảo của nhau. Để thấy rõ hơn điều này, người ta đã biểu diễn lại công thức định luật Zipf
theo công thức sau:
Khóa luận tốt nghiệp Nguyễn Việt Cường

12

t
t
f
K
r ≈

Và biểu diễn theo lược đồ:



 Loại bỏ tiền tố và hậu tố
Loại bỏ tiền tố và hậu tố (tiếng Anh là Stemming) tiến hành việc loại bỏ tiền tố và
hậu tố của từ để biến đổi nó thành từ gốc. Vì trong thực tế một từ gốc có thể có nhiều hình
thái biến đổi, chẳng hạn như động từ, danh từ, tính từ, trạng từ; và giữ

a chúng có mối
quan hệ ngữ nghĩa. Ví dụ như những từ: “clusters”, “clustering”, “clustered” là có cùng
mối quan hệ với từ “cluster”. Do vậy cần phải Stemming để làm giảm được số lượng từ
mà vẫn không làm ảnh hưởng đến nội dung tài liệu.
Tuy nhiên tồn tại một vấn đề thiếu sót xảy ra khi stemming, vì thuật toán
stemming sử dụng một tập các quy tắc đơn giản để loại bỏ tiền tố/hậ
u tố. Do vậy nó có
thể sinh ra các từ không chính xác. Ví dụ như “computing”, “computation” sau khi
stemming sẽ còn là “comput” trong khi đó từ đúng phải là “compute’.
2.2. Mô hình Logic
Theo mô hình này các từ có nghĩa trong văn bản sẽ được đánh chỉ số và nội dung
văn bản được quản lý theo các chỉ số Index đó. Mỗi văn bản được đánh chỉ số theo quy
tắc liệt kê các từ có nghĩa trong các văn bản với vị trí xuất hiện của nó trong văn bản. Từ
có nghĩa là từ mang thông tin chính về các văn bản lưu trữ, khi nhìn vào nó người ta có
thể biết ch
ủ đề của văn bản cần biểu diễn.
Hình 2. L
ư
ợc đồ các từ theo đinh luật
Khóa luận tốt nghiệp Nguyễn Việt Cường

13
Tiến hành Index các văn bản đưa vào theo danh sách các từ khoá nói trên. Với
mỗi từ khóa người ta sẽ đánh số thứ tự vị trí xuất hiện của nó và lưu lại chỉ số đó cùng với
mã văn bản chứa nó. Cách biểu diễn này cũng được các máy tìm kiếm ưa dùng.
Ví dụ, có hai văn bản với mã tương ứng là VB1,VB2.
“Cộng hòa xã hội chủ nghĩa Việt Nam” (VB1)
“ Việt Nam dân chủ cộng hòa” (VB2)
Khi đó ta có cách biểu diễn như sau:





Khi biểu diễn văn bản theo phương pháp này người ta đưa ra cách tìm kiếm như sau:
Câu hỏi tìm kiếm được đưa ra dưới dạng Logic, tức là gồm một tập hợp các phép
toán (AND, OR,…) được thực hiện trên các từ hoặc cụm từ. Việc tìm kiếm sẽ dựa vào
bảng Index đã tạo ra và kết quả trả lại là các văn bản thoả mãn toàn bộ các điều kiện trên
 Mộ
t số ưu điểm, nhược điểm:
Ưu điểm
Việc tìm kiếm trở nên nhanh và đơn giản.
Thực vậy, giả sử cần tìm kiếm từ “computer”. Hệ thống sẽ duyệt trên bảng Index
để trỏ đến chỉ số Index tương ứng nếu từ “computer” tồn tại trong hệ thống. Việc tìm
kiếm này là khá nhanh và đơn giản khi trước đó ta đã sắ
p xếp bảng Index theo vần chữ
Khóa luận tốt nghiệp Nguyễn Việt Cường

14
cái. Phép tìm kiếm trên có độ phức tạp cấp θ(nlog
2
n), với n là số từ trong bảng Index.
Tương ứng với chỉ số index trên sẽ cho ta biết các tài liệu chứa từ khóa tìm kiếm. Như
vậy việc tìm kiếm liên quan đến k từ thì các phép toán cần thực hiện là k*n*log
2
n (n là số
từ trong bảng Index)

Câu hỏi tìm kiếm linh hoạt
Người dùng có thể sử dụng các kí tự đặc biệt trong câu hỏi tìm kiếm mà không
làm ảnh hưởng đến độ phức tạp của phép tìm kiếm. Ví dụ muốn tìm từ “ta” thì kết quả sẽ

trả lại các văn bản có chứa các từ “ta”, “tao”, “tay”,…là các từ bắt đầu bằng từ “ta”
Kí tự % được gọi là kí tự đại diện (wildcard character).
Ngoài ra, b
ằng các phép toán Logic các từ cần tìm có thể tổ chức thành các câu
hỏi một cách linh hoạt. Ví dụ: Cần tìm từ [tôi, ta, tao], dấu “[]” sẽ thay cho nghĩa của từ
“hoặc” - thể hiện việc tìm kiếm trên một trong số nhiều từ trong nhóm. Đây thực ra là một
cách thể hiện linh hoạt phép toán OR trong đại số Logic thay vì phải viết là: Tìm các tài
liệu có chứa từ “tôi” hoặc từ “ta” hoặc “tao”.
Nhược điểm
Đòi hỏi người tìm ki
ếm phải có kinh nghiệm và chuyên môn trong lĩnh vực tìm
kiếm vì câu hỏi đưa vào dưới dạng Logic nên kết quả trả lại cũng có giá trị Logic
(Boolean). Một số tài liệu sẽ được trả lại khi thoả mãn mọi điều kiện đưa vào. Như vậy
muốn tìm được tài liệu theo nội dung thì phải biết đích xác về tài liệu.
Việc Index các tài liệu rất phức tạp và làm tốn nhiều thời gian, đồ
ng thời cũng tốn
không gian để lưu trữ các bảng Index.
Các tài liệu tìm được không được xắp xếp theo độ chính xác của chúng. Các bảng
Index không linh hoạt vì khi các từ vựng thay đổi (thêm, xóa,…) thì dẫn tới chỉ số Index
cũng phải thay đổi theo.
2.3. Mô hình phân tích cú pháp
Trong mô hình này, mỗi văn bản đều phải được phân tích cú pháp và trả lại thông
tin chi tiết về chủ đề của văn bản đó. Sau đó, người ta tiến hành Index các chủ đề của từng
Khóa luận tốt nghiệp Nguyễn Việt Cường

15
văn bản. Cách Index trên chủ đề cũng giống như khi Index trên văn bản nhưng chỉ Index
trên các từ xuất hiện trong chủ đề.
Các văn bản được quản lý thông qua các chủ đề này để có thể tìm kiếm được khi
có yêu cầu, câu hỏi tìm kiếm sẽ dựa trên các chủ đề trên.

 Cách tìm kiếm:
Tiến hành tìm kiếm bằng cách dựa vào các chủ đề đã được Index ở trên. Câu hỏi
đưa vào có thể
được phân tích cú pháp để trả lại một chủ đề và tìm kiếm trên chủ đề đó.
Như vậy bộ phận xử lý chính đối với một hệ CSDL xây dựng theo mô hình này
chính là hệ thống phân tích cú pháp và đoán nhận nội dung văn bản.
Một số ưu điểm, nhược điểm của phương pháp này
Ưu điểm
Tìm kiếm theo phương pháp này lại khá hiệu quả và đơn giả
n, do tìm kiếm nhanh
và chính xác.
Đối với những ngôn ngữ đơn giản về mặt ngữ pháp thì việc phân tích trên có thể
đạt được mức độ chính xác cao và chấp nhận được.
Nhược điểm
Chất lượng của hệ thống theo phương pháp này hoàn toàn phụ thuộc vào chất
lượng của hệ thống phân tích cú pháp và đoán nhận nội dung tài liệu. Trên thực tế, việc
xây dựng hệ thống này là rất phức tạ
p, phụ thuộc vào đặc điểm của từng ngôn ngữ và đa
số vẫn chưa đạt đến độ chính xác cao.
2.4. Mô hình không gian vector
Cách biểu diễn văn bản thông dụng nhất là thông qua vector biểu diễn theo mô
hình không gian vector (Vector Space Model). Đây là một cách biểu diễn tương đối đơn
giản và hiệu quả.
Theo mô hình này, mỗi văn bản được biểu diễn thành một vector. Mỗi thành phần
của vector là một từ khóa riêng biệt trong tập văn bản gốc và được gán một giá trị là hàm
f chỉ mật độ xuất hiện của từ khóa trong văn bản.
Khóa luận tốt nghiệp Nguyễn Việt Cường

16



Hình 3: Biểu diễn các vector văn bản trong không gian 2 chiều

Giả sử ta có một văn bản và nó được biểu diễn bởi vector V(v
1
,v
2
, …, v
n
). Trong
đó, v
i
là số lần xuất hiện của từ khóa thứ i trong văn bản. Ta xét 2 văn bản sau:
VB1: Life is not only life
VB2: To life is to fight
Sau khi qua bước tiền xử lý văn bản, ta biểu diễn chúng như sau:


Trong các cơ sở dữ liệu văn bản, mô hình vector là mô hình biểu diễn văn bản
được sử dụng phổ biến nhất hiện nay. Mối quan hệ giữa các trang văn bản được thực hiện
thông qua việc tính toán trên các vector biểu diễn vì vậy được thi hành khá hiệu quả. Đặc
biệt, nhiều công trình nghiên cứu về mối quan hệ "tương tự nhau" giữa các trang web
(một trong những quan hệ điển hình nhất gi
ữa các trang web) dựa trên mô hình biểu diễn
vector .
Khóa luận tốt nghiệp Nguyễn Việt Cường

17
2.4.1. Mô hình Boolean
Một mô hình biểu diễn vector với hàm f cho ra giá trị rời rạc với duy nhất hai giá

trị đúng và sai (true và false, hoặc 0 và 1) gọi là mô hình Boolean. Hàm f tương ứng với
từ khóa ti sẽ cho ra giá trị đúng nếu và chỉ nếu từ khóa ti xuất hiện trong văn bản đó.
Mô hình Boolean được xác định như sau:
Giả sử có một cơ sở dữ liệu gồm m văn bản, D = {d
1
, d
2
,… d
m
}. Mỗi văn bản
được biểu diễn dưới dạng một vector gồm n từ khóa T = {t
1
, t
2
,…t
n
}. Gọi W = {w
ij
} là ma
trận trọng số, trong đó w
ij
là giá trị trọng số của từ khóa t
i
trong văn bản d
j
.





=
lai nguoc neu
trongmat co neu
0
dt1
w
ji
ij

Trở lại với 2 văn bản trên, áp dụng mô hình Boolean ta có biểu diễn sau:



2.4.2. Mô hình tần suất
Trong mô hình tần suất, ma trận W = {wij} được xác định dựa trên tần số xuất
hiện của từ khóa ti trong văn bản dj hoặc tần số xuất hiện của từ khóa ti trong toàn bộ cơ
sở dữ liệu. Sau đây là một số phương pháp phổ biến:
a. Phương pháp dựa trên tần số từ khóa (TF – Term Frequency)
Các giá trị wij được tính dựa trên tần số (hay số lần) xuất hiện của từ khóa trong
văn bản. Gọi fij là số lần xuất hiện của từ khóa ti trong văn bản dj, khi đó wij được tính
bởi một trong ba công thức:
w
ij
= f
ij

w
ij
= 1 + log(f
ij

)
Khóa luận tốt nghiệp Nguyễn Việt Cường

18
w
ij
=
ij
f
Trong phương pháp này, trọng số wij

tỷ lệ thuận với số lần xuất hiện của từ khóa
ti trong văn bản dj. Khi số lần xuất hiện từ khóa ti trong văn bản dj

càng lớn thì điều đó có
nghĩa là văn bản dj càng phụ thuộc vào từ khóa ti, hay nói cách khác từ khóa ti mang
nhiều thông tin trong văn bản dj.
Ví dụ, khi văn bản xuất hiện nhiều từ khóa máy tính, điều đó có nghĩa là văn bản
đang xét chủ yếu liên quan đến lĩnh vực tin học.
Nhưng suy luận trên không phải lúc nào cũng đúng. Một ví dụ điển hình là từ
“và” xuất hiện nhiều trong hầ
u hết các văn bản, nhưng trên thực tế từ này lại không mang
nhiều ý nghĩa như tần suất xuất hiện của nó. Hoặc có những từ không xuất hiện trong văn
bản này nhưng lại xuất hiện trong văn bản khác, khi đó ta sẽ không tính được giá trị của
log(f
ij
). Một phương pháp khác ra đời khắc phục được nhược điểm của phương pháp TF,
đó là phương pháp IDF.
b. Phương pháp dựa trên nghịch đảo tần số văn bản (IDF – Inverse Document
Frequency)

Trong phương pháp này, giá trị wij

được tính theo công thức sau:





−=
=
l¹i ng−îc nÕu
liÖu tµi trong xuÊt hiÖn khãa tõ nÕu
0
dt)hlog()mlog(
h
m
log
w
jii
i
ij

trong đó m là số lượng văn bản và hi là số lượng văn bản mà từ khóa ti xuất hiện.
Trọng số wij trong công thức này được tính dựa trên độ quan trọng của từ khóa ti
trong văn bản dj. Nếu ti xuất hiện trong càng ít văn bản, điều đó có nghĩa là khi nó xuất
hiện trong dj thì trọng số của nó đối với văn bản dj càng lớn hay nó là điểm quan trọng để
phân biệt vă
n bản dj với các văn bản khác và hàm lượng thông tin trong nó càng lớn.
c. Phương pháp TF × IDF
Phương pháp này là tổng hợp của hai phương pháp TF và IDF, giá trị của ma trận

trọng số được tính như sau:
Khóa luận tốt nghiệp Nguyễn Việt Cường

19















+
=
l¹i ng−îc nÕu
f nÕu1
0
1
h
m
log)]flog([
w
ij

i
ij
ij

Đây là phương pháp kết hợp được ưu điểm của cả hai phương pháp trên. Trọng số
wij

được tính bằng tần số xuất hiện của từ khóa ti trong văn bản dj và độ hiếm của từ khóa
ti trong toàn bộ cơ sở dữ liệu.

Cách tìm kiếm:
Các câu hỏi đưa vào sẽ được ánh xạ vector Q(q
1
,q
2,…,
q
m
)

theo hệ số của các từ
vựng trong nó là khác nhau. Tức là: Khi từ vựng càng có ý nghĩa với nội dung cần tìm thì
nó có hệ số càng lớn.
q
i
= 0 khi từ vựng đó không thuộc danh sách những từ cần tìm.
q
i
<> 0 khi từ vựng đó thuộc danh sách các từ cần tìm.
Khi đó, cho một hệ thống các từ vựng ta sẽ xác định được các vector tương ứng
với từng tài liệu và ứng với mỗi câu hỏi đưa vào ta sẽ có một vector tương với nó cùng

những hệ số đã được xác định từ trước. Việc tìm kiếm và quản lý sẽ được thực hiện trên
tài liệu này.

 Một s
ố ưu, nhược điểm của phương pháp biểu diễn này:
 Ưu điểm:

Các tài liệu trả lại có thể được sắp xếp theo mức độ liên quan đến nội dung yêu
cầu do trong phép thử mỗi tài liệu đều trả lại chỉ số đánh giá độ liên quan của nó đến nội
dung.
Việc đưa ra các câu hỏi tìm kiếm là dễ dàng và không yêu cầu người tìm kiếm có
trình độ chuyên môn cao về vấn đề đó.
Tiến hành lưu trữ và tìm kiếm đơn giản hơn phương pháp Logic.


Nhược điểm
Khóa luận tốt nghiệp Nguyễn Việt Cường

20
Việc tìm kiếm tiến hành chậm khi hệ thống các từ vựng là lớn do phải tính toán
trên toàn bộ các vector của tài liệu.
Khi biểu diễn các vector với các hệ số là số tự nhiên sẽ làm tăng mức độ chính
xác của việc tìm kiếm nhưng làm tốc độ tính toán giảm đi rẩt nhiều do các phép nhân
vector phải tiến hành trên các số tự nhiên hoặc số thực, hơn nữa việc lưu trữ các vector sẽ
t
ốn kém và phức tạp.
Hệ thống không linh hoạt khi lưu trữ các từ khóa. Chỉ cần một thay đổi rất nhỏ
trong bảng từ vựng sẽ kéo theo hoặc là vector hoá lại toàn bộ các tài liệu lưu trữ, hoặc là
sẽ bỏ qua các từ có nghĩa bổ sung trong các tài liệu được mã hóa trước đó.
Một nhược điểm nữa, chiều của mỗi Vector theo cách biểu diễn này là rất lớn, bởi

vì chi
ều của nó được xác định bằng số lượng các từ khác nhau trong tập hợp văn bản. Ví
dụ số lượng các từ có thể có từ 10
3
đến 10
5
trong tập hợp các văn bản nhỏ, còn trong tập
hợp các văn bản lớn thì số lượng sẽ nhiều hơn, đặc biệt trong môi trường Web.
2.5. Biểu diễn văn bản trong máy tìm kiếm
2.5.1. Giới thiệu về máy tìm kiếm
Thông tin trên các trang Web đa dạng về mặt nội dung cũng như hình thức. Tuy
nhiên cùng với sự đa dạng và số lượng lớn thông tin như vậy đã nảy sinh vấn đề quá tải
thông tin. Đối với mỗi người dùng chỉ một phần rất nhỏ thông tin là có ích, chẳng hạn có
người chỉ quan tâm đến trang Thể thao, Văn hóa mà không mấy khi quan tâm đến Kinh
tế. Người ta không thể tìm tự kiếm địa chỉ trang Web chứa thông tin mà mình c
ần, do vậy
đòi hỏi cần phải có một trình tiện ích quản lý nội dung của các trang Web và cho phép tìm
thấy các địa chỉ trang Web có nội dung giống với yêu cầu của người tìm kiếm. Hiện nay
chúng ta đã làm quen với một số các tiện ích như vậy đó là: Yahoo, Google, Alvista,
Máy tìm kiếm là các hệ thống được xây dựng có khả năng tiếp nhận các yêu cầu
tìm kiếm của người dùng (thường là một tập các từ khóa), sau đó phân tích và tìm ki
ếm
trong cơ sở dữ liệu đã có sẵn và đưa ra các kết quả là các trang web cho người sử dụng.
Cụ thể, người dùng gửi một truy vấn, dạng đơn giản nhất là một danh sách các từ khóa, và
máy tìm kiếm sẽ làm việc để trả lại một danh sách các trang Web có liên quan hoặc có
chứa các từ khóa đó. Phức tạp hơn, thì truy vấn là cả một văn bản hoặc một đoạ
n văn bản
hoặc nội dung tóm tắt của văn bản.
Khóa luận tốt nghiệp Nguyễn Việt Cường


21
2.5.2. Mô hình biểu diễn văn bản trong máy tìm kiếm
Như đã được giới thiệu, mô hình vector là mô hình biểu diễn phổ biến nhất trong
các CSDL văn bản. Tuy nhiên, còn có một các biểu diễn khác cũng thường được sử dụng,
đặc biệt trong các máy tìm kiếm, đó biểu diễn theo mô hình index ngược (inverted index).
Với một từ khoá trong câu hỏi của người dùng, thông qua mô hình index ngược hệ thống
cơ sở dữ liệu văn bản sẽ nhanh chóng xác định được tập hợp các văn bả
n chứa từ khóa đó
và các vị trí xuất hiện của từ khóa đó trong các văn bản kết quả.
Ở dạng đơn giản nhất, mô hình index ngược có dạng như được mô tả như hình
sau:

Hình 4. Mô hình index ngược
Trong mô hình này, tồn tại tập hợp V (được gọi là từ điển) gồm tất cả các từ khóa
trong hệ thống; các từ khóa trong V được lưu trữ theo danh sách Inverted Index. Mỗi một
từ khóa v
i
trong V liên kết với một con trỏ b(v
i
) chỉ dẫn tới một cấu trúc dữ liệu, được gọi
là brucket, là một danh sách chứa tất cả các bản ghi mô tả văn bản chứa từ khóa v
i
và vị
trí xuất hiện của từ khóa v
i
trong văn bản đó (hình 2). Tồn tại một số giải pháp tổ chức từ
điển V hiệu quả nhằm cho phép lưu trữ V ở bộ nhớ trong, chẳng hạn V thường được tổ
chức theo dạng bảng băm để tăng hiệu quả truy cập. Nếu như brucket được lưu ngay
trong bộ nhớ trong thì việc thay đổi chỉnh sửa các brucket được thực hiện rất d
ễ dàng.

×