World Wide Web là một kho thông tin khổng lồ với tiềm năng được coi là không có giới hạn. Khai phá Web là vấn đề nghiên cứu thời sự trong thời gian gần đây, đã thu hút nhiều nhóm nhà khoa học trên thế giới tiến hành nghiên cứu, đề xuất các mô hình, phương pháp mới nhằm tạo ra các công cụ hiệu quả hỗ trợ người dùng trong việc tổng hợp thông tin và tìm kiếm tri thức từ tập hợp các trang Web khổng lồ trên Internet.
                
              
                                            
                                
            
 
            
                 74 trang
74 trang | 
Chia sẻ: vietpd | Lượt xem: 1513 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang tài liệu Luận văn Phương pháp phân cụm tài liệu web và áp dụng vào máy tìm kiếm, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI 
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ 
Nguyễn Thị Thu Hằng 
PHƯƠNG PHÁP PHÂN CỤM TÀI LIỆU WEB 
VÀ ÁP DỤNG VÀO MÁY TÌM KIẾM 
LUẬN VĂN THẠC SỸ 
Hà Nội – 2007 
ĐẠI HỌC QUỐC GIA HÀ NỘI 
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ 
Nguyễn Thị Thu Hằng 
PHƯƠNG PHÁP PHÂN CỤM TÀI LIỆU WEB 
VÀ ÁP DỤNG VÀO MÁY TÌM KIẾM 
Ngành: Công nghệ thông tin. 
Mã số: 1.01.10 
LUẬN VĂN THẠC SỸ 
 NGƯỜI HƯỚNG DẪN KHOA HỌC: 
 PGS.TS HÀ QUANG THỤY 
Hà Nội - 2007
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 1 - 
Những lời đầu tiên 
Với những dòng chữ đầu tiên này, tôi xin dành để gửi lời cảm ơn chân 
thành và sâu sắc nhất tới thầy giáo, tiến sỹ Hà Quang Thụy - người đã tận 
tình hướng dẫn, chỉ bảo và tạo cho tôi những điều kiện tốt nhất từ khi bắt 
đầu cho tới khi hoàn thành công việc của mình. 
Đồng thời xin cảm ơn tất cả những người thân yêu trong gia đình tôi 
cùng toàn thể bạn bè, những người đã luôn giúp đỡ và động viên tôi mỗi 
khi vấp phải những khó khăn, bế tắc. 
Cuối cùng, xin chân thành cảm ơn đồng nghiệp của tôi tại Trung tâm 
CNTT, NHNo&PTNT VN những người đã đem đến cho tôi những lời 
khuyên vô cùng bổ ích để giúp tháo gỡ những khó khăn, vướng mắc trong 
quá trình làm luận văn. 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 2 - 
LỜI CAM ĐOAN 
Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của 
riêng cá nhân, không sao chép lại của người khác. Trong toàn bộ nội dung 
của luận văn, những điều được trình bày hoặc là của cá nhân hoặc là được 
tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất 
xứ rõ ràng và được trích dẫn hợp pháp. 
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo 
quy định cho lời cam đoan của mình. 
 Hà Nội, ngày 01 tháng 11 năm 2007 
 Nguyễn Thị Thu Hằng 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 3 - 
MỤC LỤC 
DANH MỤC CHỮ VIẾT TẮT ........................................................................................ 5 
DANH MỤC HÌNH VẼ, BẢNG BIỂU ............................................................................ 6 
MỞ ĐẦU .......................................................................................................................... 7 
CHƯƠNG 1 - KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU WEB ................................... 9 
1.1. Khai phá dữ liệu Web ....................................................................................... 9 
1.1.1. Giới thiệu về Khai phá dữ liệu .................................................................. 9 
1.1.2. Dữ liệu Web và nhu cầu khai thác thông tin ........................................... 11 
1.1.3. Đặc điểm của dữ liệu Web ...................................................................... 12 
1.1.4. Các hướng tiếp cận khai phá dữ liệu Web .............................................. 13 
1.1.5. Nhu cầu Phân cụm tài liệu Web .............................................................. 14 
1.2. Mô hình tìm kiếm thông tin ............................................................................ 15 
1.2.1. Giới thiệu ................................................................................................ 15 
1.2.2. Quy trình tìm kiếm thông tin trong hệ thống .......................................... 15 
1.2.3. Ứng dụng phân cụm vào hệ thống tìm kiếm ........................................... 18 
1.3. Kết luận chương 1 ........................................................................................... 19 
CHƯƠNG 2 - THUẬT TOÁN PHÂN CỤM WEB ................................................... 20 
2.1. Một số nội dung cơ bản về thuật toán phân cụm tài liệu ................................ 20 
2.2. Tiêu chuẩn đánh giá thuật toán phân cụm ...................................................... 22 
2.3. Các đặc tính của các thuật toán phân cụm web .............................................. 24 
2.3.1. Mô hình dữ liệu ....................................................................................... 24 
2.3.2. Độ đo về sự tương tự .............................................................................. 27 
2.3.3. Mô hình phân cụm .................................................................................. 29 
2.4. Một số kỹ thuật Phân cụm Web điển hình ...................................................... 30 
2.4.1. Phân cụm theo thứ bậc ............................................................................ 30 
2.4.2. Phân cụm bằng cách phân mảnh ............................................................. 33 
2.5. Các yêu cầu đối với các thuật toán phân cụm Web ........................................ 35 
2.5.1. Tách các thông tin đặc trưng ................................................................... 35 
2.5.2. Phân cụm chồng lặp ................................................................................ 36 
2.5.3. Hiệu suất ................................................................................................. 36 
2.5.4. Khả năng khử nhiễu ................................................................................ 36 
2.5.5. Tính tăng ................................................................................................. 37 
2.5.6. Việc biểu diễn kết quả ............................................................................ 37 
2.6. Bài toán tách từ tự động tiếng Việt ................................................................. 37 
2.6.1. Một số khó khăn trong phân cụm trang Web tiếng Việt ......................... 37 
2.6.2. Tiếng và Từ trong tiếng Việt .................................................................. 39 
2.6.3. Phương pháp tách từ tự động tiếng Việt fnTBL ..................................... 39 
2.6.4. Phương pháp Longest Matching ............................................................. 43 
2.6.5. Kết hợp giữa fnTBL và Longest Matching ............................................. 44 
2.7. Kết luận chương 2 ........................................................................................... 44 
CHƯƠNG 3 - THUẬT TOÁN PHÂN CỤM CÂY HẬU TỐ VÀ THUẬT TOÁN 
CÂY PHÂN CỤM TÀI LIỆU ........................................................................................ 45 
3.1. Giới thiệu về thuật toán phân cụm trang Web có tính tăng ............................ 45 
3.2. Thuật toán phân cụm cây hậu tố ..................................................................... 46 
3.2.1. Mô tả ....................................................................................................... 46 
3.2.2. Thuật toán STC ....................................................................................... 47 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 4 - 
3.3. Thuật toán phân cụm sử dụng cây phân cụm tài liệu ...................................... 51 
3.3.1. Giới thiệu ................................................................................................ 51 
3.3.2. Trích chọn đặc trưng và phân cụm tài liệu ............................................. 51 
3.3.3. Cây phân cụm tài liệu –DC Tree ............................................................ 55 
3.4. Kết luận chương 3 ........................................................................................... 60 
CHƯƠNG 4 - PHẦN MỀM THỬ NGHIỆM VÀ KẾT QUẢ THỰC NGHIỆM ...... 61 
4.1. Giới thiệu ........................................................................................................ 61 
4.2. Thiết kế cơ sở dữ liệu ..................................................................................... 62 
4.3. Chương trình thử nghiệm ................................................................................ 65 
4.4. Kết quả thực nghiệm ....................................................................................... 66 
4.5. Kết luận chương 4 ........................................................................................... 69 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 5 - 
DANH MỤC CHỮ VIẾT TẮT 
 AHC: Phân cụm tích tụ theo thứ bậc (Agglomerative Hierarchical 
Clustering) 
CSDL: Cơ sở dữ liệu 
DF: tần suất xuất hiện tài liệu (Document Frequency) 
DC-tree: Cây phân cụm tài liệu (Document Clustering Tree) 
fnTBL: Học dựa trên sự biến đổi (Fast Transformation-based learning) 
FCM: Fuzzy C-means 
FCMdd: Fuzzy C-Medoids 
IR: Mô hình tìm kiếm thông tin (Information Retrieval) 
IDF: tần suất nghịch đảo tài liệu (inverse document frequency) 
KDD: Khai phá tri thức (Knowledge Discovery in Databases) 
STC: Phân cụm cây hậu tố (Suffix tree clustering) 
TF: tần suất xuất hiện (term frequency) 
UPGMA: (Unweighter Pair-Group Method using Arithmetic averages)
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 6 - 
DANH MỤC HÌNH VẼ, BẢNG BIỂU
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 7 - 
MỞ ĐẦU 
World Wide Web là một kho thông tin khổng lồ với tiềm năng được coi 
là không có giới hạn. Khai phá Web là vấn đề nghiên cứu thời sự trong thời gian 
gần đây, đã thu hút nhiều nhóm nhà khoa học trên thế giới tiến hành nghiên cứu, 
đề xuất các mô hình, phương pháp mới nhằm tạo ra các công cụ hiệu quả hỗ trợ 
người dùng trong việc tổng hợp thông tin và tìm kiếm tri thức từ tập hợp các 
trang Web khổng lồ trên Internet. 
Phân cụm tài liệu Web là một bài toán điển hình trong khai phá Web, 
nhằm phân hoạch tập văn bản thành các tập con có tính chất chung, trong đó bài 
toán phân cụm các trang Web là kết quả trả về từ máy tìm kiếm là rất hữu dụng 
[4-6, 8-15, 18, 19, 22, 24]. Như đã biết, tập hợp các trang Web đáp ứng một câu 
hỏi trả về từ máy tìm kiếm nói chung là rất lớn, vì vậy, thuật toán phân cụm văn 
bản ở đây cần có được một tính chất rất quan trọng là tính "tăng" theo nghĩa thuật 
toán phân cụm không phải thực hiện chỉ trên toàn bộ tập dữ liệu mà có thể được 
thực hiện theo cách từ bộ phận dữ liệu tới toàn bộ dữ liệu [4, 6, 11, 14, 15, 24]. 
Điều đó cho phép thuật toán tiến hành ngay trong giai đoạn máy tìm kiếm đưa 
các trang web kết quả về. 
Luận văn tập trung khảo sát các phương pháp phân cụm trong Web có tính 
chất tăng và thực hiện một số thử nghiệm tích hợp các kết quả nghiên cứu nói trên 
vào một phần mềm tải trang Web theo dạng máy tìm kiếm. Đồng thời, luận văn 
triển khai một số bước đầu tiên trong việc áp dụng phân cụm cho các trang Web 
tiếng Việt. Luận văn xây dựng một phần mềm thử nghiệm và tiến hành các thử 
nghiệm phân cụm Web tiếng Việt. 
Ngoài Phần Mở đầu, Phần Kết luận và các Phụ lục, nội dung luận văn 
được chia thành 4 chương chính: 
Chương 1 – Khái quát về khai phá dữ liệu Web. Chương này giới 
thiệu những nội dung cơ bản nhất, cung cấp một cái nhìn khái quát về Khai phá 
dữ liệu Web. Đồng thời, luận văn cũng mô tả sơ bộ một hệ thống thông tin tìm 
kiếm và nhu cầu phân cụm áp dụng cho hệ thống này. 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 8 - 
Chương 2 – Thuật toán phân cụm Web. Chương này trình bày một 
cách khái quát về các thuật toán phân cụm Web, những đặc trưng và yêu cầu đối 
với các thuật toán phân cụm Web. Những yêu cầu và độ đo áp dụng cho các thuật 
toán phân cụm Web cũng được trình bày trong chương này. Một số kiến thức cơ 
bản về tiếng Việt cũng được giới thiệu ở đây. 
Chương 3 – Thuật toán phân cụm cây hậu tố và thuật toán cây phân 
cụm tài liệu. Chương này đi sâu vào phân tích các thuật toán phân cụm Web có 
tính chất tăng. Luận văn tập trung vào hai thuật toán phân cụm Web có tính 
“tăng” là thuật toán STC và thuật toán phân cụm có sử dụng cấu trúc cây DC 
(DC-tree). 
Chương 4 – Phần mềm thử nghiệm và kết quả thực nghiệm. Chương 
này trình bày kết quả thực nghiệm phân cụm Web theo phần mềm thử nghiệm 
trên cơ sở thuật toán phân cụm DC-tree. Chương trình cài đặt thử nghiệm được 
viết trên ngôn ngữ lập trình C# trên nền tảng .Net Framework của Microsoft sử 
dụng SQL Server 2000 để lưu trữ cơ sở dữ liệu. Phần mềm đã hoạt động, cho kết 
quả phân cụm, tuy nhiên, do thời gian hạn chế nên luận văn chưa tiến hành đánh 
giá kết quả phân cụm một cách chính thống. 
Phần Kết luận trình bày tổng hợp các kết quả thực hiện luận văn và 
phương hướng nghiên cứu tiếp theo về các nội dung của luận văn. 
Luận văn đã đạt một số kết quả khả quan bước đầu trong việc nghiên cứu 
và triển khai các thuật toán phân cụm Web có tính chất tăng, tuy nhiên, luận văn 
không tránh khỏi những sai sót. Rất mong được sự đóng góp ý kiến, nhận xét để 
tác giả có thể hoàn thiện được kết quả nghiên cứu.
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 9 - 
CHƯƠNG 1 - KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU WEB 
1.1. Khai phá dữ liệu Web 
1.1.1. Giới thiệu về Khai phá dữ liệu 
Khái niệm Khai phá dữ liệu (Data Mining) 
 Khai phá dữ liệu được định nghĩa như một quá trình chắt lọc hay khám 
phá tri thức từ một lượng lớn dữ liệu. Thuật ngữ Data Mining ám chỉ việc tìm 
một tập nhỏ có giá trị từ một lượng lớn các dữ liệu thô. Có sự phân biệt giữa khái 
niệm "Khai phá dữ liệu" với khái niệm "Phát hiện tri thức" (Knowledge 
Discovery in Databases - KDD) mà theo đó, khai phá dữ liệu chỉ là một bước 
trong quá trình KDD. Quá trình KDD gồm một số bước sau: 
• Làm sạch dữ liệu: Loại bỏ nhiễu và các dữ liệu không cần thiết 
• Tích hợp dữ liệu: Các nguồn dữ liệu khác nhau tích hợp lại 
• Lựa chọn dữ liệu: Các dữ liệu có liên quan đến quá trình phân tích 
được lựa chọn từ cơ sở dữ liệu 
• Chuyển đổi dữ liệu: Các dữ liệu được chuyển đổi sang các dạng 
phù hợp cho quá trình xử lý 
• Khai phá dữ liệu: Là một trong những bước quan trọng nhất, trong 
đó sử dụng những phương pháp thông minh để lựa chọn ra những mẫu 
dữ liệu. 
• Ước lượng mẫu: Quá trình đánh giá kết quả thông qua một độ đo 
nào đó 
• Biểu diễn tri thức: Biểu diễn các kết quả một cách trực quan cho 
người dùng. 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 10 - 
Hình 1. Các bước trong KDD 
Các hướng tiếp cận và các kỹ thuật trong khai phá dữ liệu 
Khai phá dữ liệu được chia nhỏ thành một số hướng chính như sau: 
• Mô tả khái niệm (concept description): thiên về mô tả, tổng hợp và 
tóm tắt khái niệm. Ví dụ: tóm tắt văn bản. 
• Luật kết hợp (association rules): là dạng luật biểu diễn tri thứ ở 
dạng khá đơn giản. Ví dụ: “50% những người mua máy tính thì cũng 
mua máy in”. Luật kết hợp được ứng dụng nhiều trong lĩnh vực kính 
doanh, y học, tin-sinh, tài chính & thị trường chứng khoán, .v.v. 
• Phân lớp và dự đoán (classification & prediction): xếp một đối 
tượng vào một trong những lớp đã biết trước. Ví dụ: phân lớp vùng địa lý 
theo dữ liệu thời tiết. Hướng tiếp cận này thường sử dụng một số kỹ 
thuật của machine learning như cây quyết định (decision tree), mạng nơ 
ron nhân tạo (neural network), .v.v. Người ta còn gọi phân lớp là học có 
giám sát (học có thầy). 
• Phân cụm (clustering): xếp các đối tượng theo từng cụm (số lượng 
cũng như tên của cụm chưa được biết trước. Người ta còn gọi phân cụm 
là học không giám sát (học không thầy). 
• Khai phá chuỗi (sequential/temporal patterns): tương tự như khai 
phá luật kết hợp nhưng có thêm tính thứ tự và tính thời gian. Hướng tiếp 
cận này được ứng dụng nhiều trong lĩnh vực tài chính và thị trường 
chứng khoán vì nó có tính dự báo cao. 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 11 - 
Ứng dụng của khai phá dữ liệu 
Khai phá dữ liệu tuy là một hướng tiếp cận mới nhưng thu hút được sự 
quan tâm của rất nhiều 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ó. Chúng ta có thể liệt kê ra đây một số ứng dụng điển hình [7,16]: 
• 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 (bio-informatics) 
• Tài chính và thị trường chứng khoán (finance & stock market) 
• Bảo hiểm (insurance) 
• Nhận dạng (pattern recognition) 
• .v.v. 
1.1.2. Dữ liệu Web và nhu cầu khai thác thông tin 
Sự phát triển nhanh chóng của mạng Internet và Intranet đã sinh ra một 
khối lượng khổng lồ các dữ liệu dạng siêu văn bản (dữ liệu Web). Cùng với sự 
thay đổi và phát triển hàng ngày hàng giờ về nội dung cũng như số lượng của các 
trang Web trên Internet thì vấn đề tìm kiếm thông tin đối với người sử dụng lại 
ngày càng khó khăn. Có thể nói nhu cầu tìm kiếm thông tin trên môt cơ sở dữ 
liệu phi cấu trúc (bao gồm dữ liệu văn bản) đã được phát triển chủ yếu cùng với 
sự phát triển của Internet. Thực vậy với Internet, con người đã làm quen với các 
trang Web cùng với vô vàn các thông tin. Trong những năm gần đây, Intrnet đã 
trở thành một trong những kênh về khoa học, thông tin kinh tế, thương mại và 
quảng cáo. Một trong những lý do cho sự phát triển này là giá cả thấp cần tiêu 
tốn khi công khai một trang Web trên Internet. So sánh với những dịch vụ khác 
như mua bản hay quảng cáo trên một tờ báo hay tạp chí, thì một trang Web "đòi" 
chi phí rẻ hơn rất nhiều mà lại được cập nhật nhanh chóng hơn tới hàng triệu 
người dùng khắp mọi nơi trên thế giới. Có thể nói không gian Web như là cuốn 
từ điển Bách khoa toàn thư. 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. Có thể nói Internet như một xã hội ảo, nó bao gồm các 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 12 - 
thông tin về mọi mặt của đời sống kinh tế, xã hội được trình bày dưới dạng văn 
bản, hình ảnh, âm thanh,... 
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. 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. Các tiện ích này quản lý dữ liệu 
trang Web như các đối tượng phi cấu trúc. 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ặt khác, giả sử chúng ta có các trang Web về các vấn đề Tin học, Thể 
thao, Kinh tể-Xã hội và Xây dựng...Căn cứ vào nội dung của các tài liệu mà 
khách hàng xem hoặc download về, sau khi phân lớp các yêu cầu như thế của 
khách hàng, chúng ta sẽ biết được khách hàng hay tập trung vào nội dung gì trên 
trang Web của chúng ta, mà từ đó chúng ta sẽ bổ sung thêm nhiều các tài liệu về 
các nội dung mà khách hàng quan tâm. Ngược lai, về phía khách hàng, sau khi 
được phục vụ phù hợp yêu cầu, khách hàng sẽ hướng sự quan tâm tới hệ thống 
của chúng ta hơn. Từ những nhu cầu thực tế trên, phân lớp và tìm kiếm trang 
Web vẫn là bài toán thời sự và cần được phát triển nghiên cứu. 
Như vậy, chúng ta có thể hiểu rằng khai phá Web như là việc trích chọn 
ra các thành phần được quan tâm hay được đánh giá là có ích cùng các thông tin 
tiềm năng từ các tài nguyên hoặc các hoạt động liên quan tới World-Wide Web 
[25, 26]. 
Một cách trực quan có thể quan niệm khai phá Web là sự kết hợp giữa 
Khai phá dữ liệu, Xử lý ngôn ngữ tự nhiên và Công nghệ Web: 
Khai phá web = Khai phá dữ liệu + Xử lý ngôn ngữ tự nhiên + World 
Wide Web. 
1.1.3. Đặc điểm của dữ liệu Web 
* Web dường như quá lớn để tổ chức thành một kho dữ liệu phục vụ 
Khai phá dữ liệu. 
* Độ phức tạp của trang Web lớn hơn rất nhiều so với những tài liệu văn 
bản truyền thống khác. 
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. 
 - 13 - 
* Web là một nguồn tài nguyên thông tin có độ thay đổi cao 
* Web phục vụ một cộng đồng người dùng rộng lớn và đa dạng 
* Chỉ một phần rất nhỏ của thông tin trên Web là thực sự hữu ích 
1.1.4. Các hướng tiếp cận khai phá dữ liệu Web 
Như đã phân tích về đặc điểm và nội dung các siêu văn bản ở trên, từ đó 
khai phá dữ liệu Web cũng sẽ tập trung vào các thành phần có trong trang Web. 
Đó chính là: 
1. Khai phá nội dun