Áp dụng kỹ thuật phân cụm dữ liệu mờ trong khai phá dữ liệu Web

Các phương pháp phân tích dữ liệu truyền thống (dữ liệu rõ) tập trung phân tích

một tập dữ liệu ban đầu thành các cụm dữ liệu có tính tự nhiên và mỗi đối tượng dữ liệu

chỉ thuộc về một cụm dữ liệu, phương pháp này chỉ phù hợp với việc khám phá ra các

cụm có mật độ cao và rời nhau, với đường biên giữa các cụm được xác định tốt. Tuy

nhiên, trong thực tế, đường biên giữa các cụm có thể mờ, các cụm có thể chồng lên

nhau, nghĩa là một số các đối tượng dữ liệu thuộc về nhiều cụm khác nhau. Do đó, các

phương pháp phân cụm truyền thống không mô tả được dữ liệu thực. Vì vậy, người ta

đã áp dụng lý thuyết tập mờ trong phân cụm dữ liệu (PCDL) để giải quyết cho trường

hợp này. Cách thức kết hợp này được gọi là PCDL mờ (gọi tắt là phân cụm mờ).

Hơn nữa, World Wide Web (WWW) 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. Để đáp ứng phần nào nhu cầu tìm kiếm và sử dụng

nguồn tri thức này, người ta đã xây dựng các công cụ tìm kiếm và xử lý thông tin bằng

cách áp dụng các kỹ thuật khai phá dữ liệu (KPDL) trong khai phá tài nguyên Web.

Trong đó, PCDL Web là một bài toán điển hình trong khai phá tài nguyên Web.

Hiện tại đã có một số thuật toán PCDL được sử dụng trong phân cụm tài liệu như

các thuật toán phân cụm phân hoạch, các thuật toán phân cụm phân cấp, Tuy nhiên,

trong thực tế nội dung của một trang Web có thể thuộc vào nhiều nhóm chủ đề khác

nhau. Vì vậy, phân cụm theo nội dung trang Web với hướng tiếp cận truyền thống tỏ ra

còn nhiều hạn chế. Để giải quyết vấn đề này, một hướng đi mới đó là nghiên cứu và áp

dụng các kỹ thuật PCDL theo cách tiếp cận mờ trong KPDL Web.

pdf 14 trang kimcuc 6460
Bạn đang xem tài liệu "Áp dụng kỹ thuật phân cụm dữ liệu mờ trong khai phá dữ liệu Web", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Áp dụng kỹ thuật phân cụm dữ liệu mờ trong khai phá dữ liệu Web

Áp dụng kỹ thuật phân cụm dữ liệu mờ trong khai phá dữ liệu Web
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ 
TRONG KHAI PHÁ DỮ LIỆU WEB 
Đỗ Quang Khôi1 
Tóm tắt: World Wide Web là một kho dữ liệu khổng lồ, vì vậy việc khai phá Web 
để khám phá ra những thông tin, tri thức hữu ích mang một ý nghĩa hết sức quan trọng. 
Với mục đích đó, bài báo này trình bày tổng quan về khai phá dữ liệu Web, các hướng 
tiếp cận phân cụm tài liệu Web. Qua đó, bài báo giới thiệu mô hình tiếp cận phân cụm 
tài liệu Web bằng kỹ thuật phân cụm dữ liệu mờ và trình bày cụ thể quá trình tìm kiếm 
và phân cụm tài liệu Web bằng kỹ thuật phân cụm dữ liệu mờ với thuật toán Fuzzy 
C-Means. 
1. Giới thiệu 
Các phương pháp phân tích dữ liệu truyền thống (dữ liệu rõ) tập trung phân tích 
một tập dữ liệu ban đầu thành các cụm dữ liệu có tính tự nhiên và mỗi đối tượng dữ liệu 
chỉ thuộc về một cụm dữ liệu, phương pháp này chỉ phù hợp với việc khám phá ra các 
cụm có mật độ cao và rời nhau, với đường biên giữa các cụm được xác định tốt. Tuy 
nhiên, trong thực tế, đường biên giữa các cụm có thể mờ, các cụm có thể chồng lên 
nhau, nghĩa là một số các đối tượng dữ liệu thuộc về nhiều cụm khác nhau. Do đó, các 
phương pháp phân cụm truyền thống không mô tả được dữ liệu thực. Vì vậy, người ta 
đã áp dụng lý thuyết tập mờ trong phân cụm dữ liệu (PCDL) để giải quyết cho trường 
hợp này. Cách thức kết hợp này được gọi là PCDL mờ (gọi tắt là phân cụm mờ). 
Hơn nữa, World Wide Web (WWW) 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. Để đáp ứng phần nào nhu cầu tìm kiếm và sử dụng 
nguồn tri thức này, người ta đã xây dựng các công cụ tìm kiếm và xử lý thông tin bằng 
cách áp dụng các kỹ thuật khai phá dữ liệu (KPDL) trong khai phá tài nguyên Web. 
Trong đó, PCDL Web là một bài toán điển hình trong khai phá tài nguyên Web. 
Hiện tại đã có một số thuật toán PCDL được sử dụng trong phân cụm tài liệu như 
các thuật toán phân cụm phân hoạch, các thuật toán phân cụm phân cấp, Tuy nhiên, 
trong thực tế nội dung của một trang Web có thể thuộc vào nhiều nhóm chủ đề khác 
nhau. Vì vậy, phân cụm theo nội dung trang Web với hướng tiếp cận truyền thống tỏ ra 
còn nhiều hạn chế. Để giải quyết vấn đề này, một hướng đi mới đó là nghiên cứu và áp 
dụng các kỹ thuật PCDL theo cách tiếp cận mờ trong KPDL Web. 
Bài báo này xem xét khía cạnh sử dụng kỹ thuật phân cụm dữ liệu mờ trong 
KPDL Web và được thực nghiệm bằng chương trình ứng dụng thực hiện tìm kiếm trên 
Web và sau đó phân cụm kết quả tìm kiếm này bằng hai kỹ thuật phân cụm: phân cụm 
rõ với thuật toán k-means và phân cụm mờ với thuật toán Fuzzy C-Means (FCM). 
1 ThS, Trung tâm Học liệu, trường Đại học Quảng Nam 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 51 
2. Tổng quan về khai phá dữ liệu Web 
Với sự phát triển nhanh chóng của Internet, các thông tin trên WWW đã trở thành 
một kho dữ liệu khổng lồ trong hầu hết các lĩnh vực kinh tế, xã hội, chính trị, giáo dục, 
khoa học,... WWW chứa một bộ sưu tập các thông tin phong phú và đa dạng về nội 
dung trang web với cấu trúc siêu văn bản và đa phương tiện, thông tin siêu liên kết, truy 
cập và sử dụng thông tin, cung cấp một nguồn dữ liệu đồ sộ cho KPDL. 
Hình 1. Phân loại KPDL Web. 
Có nhiều khái niệm khác nhau về KPDL Web. Tuy nhiên, theo [6], [8], ta có khái 
niệm tổng quát nhất như sau: KPDL Web là việc sử dụng các kỹ thuật KPDL để khám 
phá ra những thông tin, tri thức hữu ích từ các cấu trúc siêu liên kết, nội dung trang web 
và dữ liệu sử dụng. Dựa trên các kiểu dữ liệu chính được sử dụng trong quá trình khai 
phá, KPDL Web có thể được phân thành ba loại: khai phá nội dung, khai phá cấu trúc và 
khai phá theo sử dụng [8]. 
• Khai phá nội dung Web: 
Khai phá nội dung Web nhằm trích lọc hoặc khai thác những thông tin hữu ích, tri 
thức từ nội dung trang. Khai phá nội dung Web có thể được phân biệt bởi hai cách tiếp 
cận: tiếp cận dựa trên hành động và tiếp cận dựa trên CSDL. Cách tiếp cận thứ nhất nhằm 
mục đích cải thiện việc tìm kiếm và trích lọc thông tin. Cách tiếp cận thứ hai nhằm mục 
đích mô hình hóa dữ liệu trên Web thành dạng có cấu trúc hơn để áp dụng vào truy vấn 
CSDL và các ứng dụng KPDL. 
• Khai phá cấu trúc Web: 
Khai phá cấu trúc Web nhằm phát hiện ra tri thức hữu ích từ các siêu liên kết, các 
siêu liên kết này chính là đặc trưng cho cấu trúc Web. Ví dụ, từ các liên kết, chúng ta có 
thể khám phá các trang web quan trọng, và chúng cũng chính là một kỹ thuật quan trọng 
được sử dụng trong các máy tìm kiếm. KPDL truyền thống không thực hiện được như 
vậy bởi vì nó thường là không có cấu trúc liên kết trong một bảng quan hệ. 
ĐỖ QUANG KHÔI 
 52 
• Khai phá theo sử dụng Web: 
Khai phá theo sử dụng Web đề cập đến sự khám phá các mẫu truy cập của người 
dùng từ các bản ghi sử dụng Web (Web log records). Phân tích quá trình đăng nhập 
Web của người dùng cũng có thể giúp cho việc xây dựng các dịch vụ Web theo yêu cầu 
đối với từng người dùng riêng lẻ được tốt hơn. Một trong những vấn đề quan trọng 
trong khai phá theo sử dụng Web là tiền xử lý luồng dữ liệu nhấp chuột trong các bản 
ghi sử dụng nhằm đem lại dữ liệu đúng đắn để khai phá. 
3. Các hướng tiếp cận phân cụm tài liệu Web 
Có rất nhiều phương pháp tiếp cận phân cụm tài liệu Web đã được đề xuất. Mỗi 
hướng tiếp cận theo một cách khác nhau, như: kiểu dữ liệu của các thuộc tính; độ đo 
tương tự,... Dựa trên những đặc trưng hay thuộc tính của tài liệu, hướng tiếp cận của các 
thuật toán phân cụm tài liệu Web có thể chia làm các loại sau [9]: 
• Phân cụm dựa trên văn bản: 
Hướng tiếp cận phân cụm tài liệu Web dựa trên văn bản đặc tả mỗi tài liệu theo 
nội dung của nó, tức là các từ (hoặc đoạn văn bản) chứa trong nó. Ý tưởng chính của 
hướng tiếp cận này đó là nếu hai tài liệu có chứa nhiều từ chung với nhau thì có khả 
năng hai tài liệu này là rất giống nhau. 
Các kỹ thuật phân cụm tài liệu Web dựa trên văn bản như: phân cụm phân hoạch, 
phân cụm phân cấp, phân cụm mờ, phân cụm dựa vào mạng nơron, phân cụm dựa vào 
xác suất,... 
• Phân cụm dựa trên liên kết: 
Các phương pháp phân cụm dựa trên văn bản được phát triển để sử dụng đối với 
bộ tài liệu tĩnh, đồng nhất và nhỏ. Ngược lại, WWW là một tập khổng lồ các trang web 
đồng nhất và liên kết với nhau. Hơn nữa, các trang web lại có thêm những thông tin 
được đính kèm theo nhưng lại rất hữu ích cho quá trình phân cụm, như: siêu dữ liệu, các 
siêu liên kết. 
Ý tưởng của hướng tiếp cận này đó là khi hai tài liệu được kết nối thông qua một 
liên kết có mối quan hệ về mặt ngữ nghĩa giữa chúng thì đó có thể là cơ sở cho việc 
phân hoạch các tài liệu về các cụm. 
Hai thuật toán tiêu biểu được phát triển dựa theo hướng tiếp cận này đó là: thuật 
toán PageRank (S. Brin và đồng nghiệp, 1998) và thuật toán HITS (J. M. Kleinberg, 
1998). Trong đó, thuật toán PageRank lập chỉ mục cho các liên kết giữa các website và 
xác định giá trị liên kết của một trang web (gọi là PageRank). Dựa vào PageRank này, 
thuật toán xác định thứ tự sắp xếp của mỗi trang trong các kết quả tìm kiếm. Trong khi 
đó, thuật toán HITS xếp thứ hạng tài liệu dựa trên thông tin liên kết giữa tập các tài liệu. 
• Phân cụm lai ghép: 
Phương pháp phân cụm tài liệu Web dựa trên liên kết chỉ đặc tả các tài liệu bằng 
các thông tin được trích xuất từ cấu trúc liên kết của tập tài liệu. Còn các phương pháp 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 53 
phân cụm tài liệu Web dựa trên văn bản thì đặc tả tài liệu bởi các từ chứa trong nó. Mặc 
dù các liên kết có thể dẫn đến những trang khác nhau từ một trang nhưng nó không có 
mục đích chỉ ra sự giống nhau giữa các trang. Các thuật toán phân cụm này có thể cho 
kết quả có hiệu quả không cao vì mật độ cấu trúc liên kết thu được có thể là quá nhiều 
hoặc quá ít. Còn các thuật toán phân cụm dựa trên văn bản thì lại có vấn đề khi tiếp cận 
với các ngôn ngữ khác nhau hay với đặc thù của mỗi ngôn ngữ, ví dụ như: từ đồng 
nghĩa, từ trái nghĩa,... Mặt khác, các thông tin trên trang web không chỉ ở dưới dạng văn 
bản mà còn có thể là hình ảnh, âm thanh, hay đa phương tiện. 
Chính vì những lý do trên, một phương pháp phân cụm lai ghép giữa hai phương 
pháp trên được đề xuất để kết hợp những ưu điểm và hạn chế những nhược điểm cho 
nhau. Các thuật toán được phát triển theo hướng tiếp cận này như là: thuật toán Phân 
cụm nội dung-liên kết (Weiss và đồng nghiệp, 1996), Toric k-means (Modha & 
Spangler, 2000),... 
Tóm lại, việc lựa chọn phương pháp phân cụm tài liệu Web nào tốt nhất là một 
vấn đề không dễ dàng, bởi vì trước hết, mỗi phương pháp đều có ưu và nhược điểm 
riêng của nó. Thứ hai, hiệu quả của mỗi phương pháp phụ thuộc vào tập dữ liệu cụ thể 
và lĩnh vực ứng dụng. 
4. Kỹ thuật PCDL mờ trong phân cụm kết quả tìm kiếm trên Web 
4.1. Hướng tiếp cận 
Việc phân cụm tài liệu Web nhằm phân các trang Web có mức độ quan trọng 
tương đương về một cụm. Có nhiều phương pháp để đánh giá mức độ quan trọng của 
một trang Web, trong đó có phương pháp dựa vào các liên kết trang để xác định trọng 
số cho trang. Các thuật toán PageRank, HITS,... đều dựa trên phương pháp này. Một 
cách tiếp cận khác để đánh giá mức độ quan trọng đó là dựa vào nội dung của các trang 
Web để xác định trọng số, nếu các trang Web có nội dung tương tự nhau thì sẽ có mức 
độ quan trọng tương đương và sẽ cùng thuộc về một cụm. 
Hình 2. Mô hình tiếp cận phân cụm kết quả tìm kiếm 
bằng kỹ thuật PCDL mờ. 
ĐỖ QUANG KHÔI 
 54 
Sử dụng kỹ thuật phân cụm mờ để phân một tập các trang Web với dữ liệu đã 
chuẩn hóa được truy vấn từ dữ liệu Web thành c cụm sao cho mỗi trang Web trong cùng 
một cụm là tương tự nhau về nội dung, các trang Web ở các cụm khác nhau thì không 
tương tự nhau. Dựa vào đặc trưng của mỗi trang Web, kỹ thuật phân cụm mờ xác định 
độ thuộc của trang Web vào một cụm và trọng tâm của cụm đó để thực hiện quá trình 
phân cụm kết quả tìm kiếm. Mô hình tiếp cận ở Hình 2 cũng như quá trình tìm kiếm và 
phân cụm kết quả sẽ được trình bày cụ thể trong mục dưới dây. 
4.2. Kỹ thuật phân cụm kết quả tìm kiếm 
4.2.1. Mô hình biểu diễn tài liệu Web 
Hầu hết các thuật toán phân cụm đều yêu cầu tập dữ liệu cần được phân cụm ở 
dạng một tập các véctơ xj = {xj1, xj2, , xjm} trong không gian m chiều. Mỗi tài liệu j 
được mô tả bởi một véctơ xj – gọi là véctơ đặc trưng (feature vector) và mỗi phần tử của 
véctơ đặc trưng tương ứng với một từ của tập tài liệu. Việc tách lọc các đặc trưng cần 
thiết thông qua véctơ đặc trưng phụ thuộc nhiều vào từng lĩnh vực. Số chiều của véctơ 
đặc trưng là nhân tố chủ chốt trong thời gian chạy của thuật toán cũng như độ lớn của 
nó. 
Trong phân cụm tài liệu Web, hầu hết các kỹ thuật phân cụm thường sử dụng mô 
hình không gian véctơ (vector space) để biểu diễn các đối tượng dữ liệu. Mỗi trang Web 
được biểu diễn bằng một véctơ pj = {tfj1, tfj2, , tfjn} trong đó tfjk (k = 1, , n) là tần 
suất xuất hiện (TF-Term Frequency) của từ tk trong trang Web pj. Để biểu diễn tất cả 
các trang Web cùng với một tập từ thì cần tách tất cả các từ tìm được trên tổng các trang 
Web và sử dụng chúng như véctơ đặc trưng. Theo mô hình TF này thì trọng số wjk của 
từ tk trong trang Web pj được xác định theo một trong các công thức sau [10]: wjk = tf jk 
hoặc wjk = 1 + log(tfjk). 
Ngoài mô hình TF, các đối tượng dữ liệu có thể được biểu diễn dựa trên mô hình 
nghịch đảo tần suất xuất hiện (IDF-Inverse Document Frequency). Theo [10], nghịch 
đảo tần suất xuất hiện của từ tk trong trang trang Web pj được định nghĩa là idfjk = 
log(n/hk). Trong đó, n là tổng số trang Web và hk là số lượng trang Web có chứa từ tk. 
Một mô hình biểu diễn dữ liệu khác cũng thường được sử dụng trong phân cụm 
tài liệu Web đó là mô hình kết hợp TF-IDF. Với mô hình này, trọng số wjk của từ tk 
trong trang Web pj được định nghĩa như sau [10]: 
xjk jk jkw tf idf= (4.1) 
Trong đó: 
tfjk: là tần suất xuất hiện của từ tk trong trang Web pj; 
idfjk = log(n/hk) là nghịch đảo tần suất xuất hiện của từ tk trong trang Web pj; 
n: tổng số trang Web trong tập trang Web C; 
hk: số lượng trang Web có chứa từ tk. 
4.2.2. Quá trình tìm kiếm và xử lý kết quả 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 55 
Về cơ bản, quá trình tìm kiếm và phân cụm kết quả tìm kiếm bằng kỹ thuật phân 
cụm mờ sẽ diễn ra theo các bước như sau [9]: 
i. Tìm kiếm dữ liệu trên Web: 
Nhiệm vụ chủ yếu của giai đoạn này là dựa vào từ khóa tìm kiếm để tìm kiếm và 
trả về một tập các trang Web bao gồm nội dung, tiêu đề, mô tả tóm tắt, URL, tương 
ứng với mỗi trang. 
ii. Tiền xử lý dữ liệu: 
Đây là giai đoạn vô cùng quan trọng, nó ảnh hưởng rất lớn đến quá trình thực hiện 
phân cụm. Nhiệm vụ của giai đoạn này là làm giảm số từ trong mỗi tài liệu, do vậy nó 
có tác dụng làm giảm độ phức tạp tính toán của các giai đoạn sau và nâng cao hiệu quả 
cho giai đoạn kế tiếp. Đây là quá trình làm sạch dữ liệu và chuyển dịch các tài liệu 
thành các dạng biểu diễn dữ liệu thích hợp. 
Giai đoạn này bao gồm các công việc như sau: 
Chuẩn hóa văn bản: chuyển văn bản thô về dạng văn bản sao cho việc xử lý sau 
này được dễ dàng, đơn giản, thuật tiện, chính xác so với việc xử lý trực tiếp trên văn bản 
thô mà ảnh hưởng ít đến kết quả xử lý, như: xóa các thẻ HTML và các loại thẻ khác để 
trích ra các từ/cụm từ; Chuyển các ký tự hoa thành các ký tự thường; Xóa bỏ các dấu 
câu, xoá các ký tự trắng dư thừa,... 
Loại bỏ stop-words: stop-words là những từ mà xuất hiện quá nhiều trong kết quả 
nhưng 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ụ: Trong 
tiếng Việt các từ như “thì”, “mà”, “và”, “hoặc”,...; trong tiếng Anh các từ như “a”, “an”, 
“the”, “of”, “to”, “on”, “by”,...; Vì đặc điểm của stop-words nên chúng được loại bỏ mà 
không ảnh hưởng đến các giai đoạn sau. 
Chuyển đổi về từ gố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”. 
iii. Xây dựng từ điển: 
Từ điển bao gồm các từ riêng biệt trong tập các trang Web từ kết quả truy vấn. Từ 
điển là một bảng bao gồm các từ, chỉ số của nó trong từ điển và được sắp xếp theo thứ 
tự. Theo [5], [7], [10] từ điển được xây dựng với 500 phần tử sau khi được chuẩn hóa là 
phù hợp. 
iv. Tạo ma trận tài liệu: 
Ma trận tài liệu T được tạo bằng cách đếm số lần xuất hiện của mỗi từ từ ti trong 
mỗi trang Web pj. 
v. Véctơ hóa tài liệu: 
Giai đoạn này tính tf và idf, xác định trọng số W theo công thức (4.1) cho tất cả các 
từ của mỗi trang Web và véc tơ hóa tất cả các trang Web. 
vi. Phân cụm kết quả tìm kiếm bằng thuật toán FCM: 
ĐỖ QUANG KHÔI 
 56 
1
1
( )
; 1
( )
n
m
ik k
k
i n
m
ik
k
u x
v i c
u
=
=
= ≤ ≤
∑
∑
2
1
1
1 ; 1 ;1ik
mc
ik
j jk
u k n i c
d
d
−
=
= ≤ ≤ ≤ ≤
⎛ ⎞⎜ ⎟⎜ ⎟⎝ ⎠∑
™ Tư tưởng thuật toán: 
Thuật toán FCM thực hiện phân cụm bằng một chuỗi các phép lặp các công thức [4]: 
 (4.2), và: 
 (4.3) 
để tối ưu các phân hoạch mờ của tập dữ liệu dựa trên việc tính toán độ tương tự có trọng 
số giữa đối tượng xk và trọng tâm của cụm i. Sau mỗi vòng lặp, thuật toán tính toán và 
cập nhật lại phần tử ujk trong ma trận phân hoạch U. Thuật toán sẽ dừng lại khi 
( 1)k k
ij iju u ξ+ − < , trong đó ξ ∈ [0, 1] là ngưỡng kết thúc cho trước. 
™ Phát biểu bài toán: 
Input: số cụm c; tham số mờ m ∈ [1, ∞), số vòng lặp tối đa Kmax và ngưỡng kết 
thúc ξ ∈ [0, 1]. 
Output: c cụm dữ liệu sao cho hàm tiêu chuẩn [4]: 
 2
1 1
( , ) ( ) ( , )
n c
m
m ik k i
k i
J U V u d x v
= =
=∑∑ đạt giá trị cực tiểu. 
™ Thuật toán [4]: 
1. Khởi tạo ma trận U = [uij], chọn ma trận ban đầu U(0)  Mfc; 
Tại bước k, k = 0, 1, ..., Kmax: 
2. Cập nhật trọng tâm của cụm ( )kiv , i = 1, 2, ..., c theo công thức (4.2); 
3. Cập nhật ma trận thành viên (độ thuộc) ( 1) ( 1)[ ]k kikU u
+ += theo công thức 
(4.3); 
4. Nếu ( 1) ( )k kU U ξ+ − < thì thực hiện bước 5; ngược lại, đặt U(k) = U(k+1), quay 
lại bước 2; 
5. Đưa ra các cụm kết quả. 
™ Thuật toán FCM trong phân cụm kết quả tìm kiếm trang Web: 
1. Khởi tạo ngẫu nhiên ma trận độ thuộc ban đầu U(0) = [uij], với uij là độ thuộc 
của trang Web pj đối với cụm ci; 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 57 
Tại bước k, k = 0, 1,..., Kmax: 
2. Cập nhật trọng tâm của các cụm ( )kiv , i = 1, 2,..., c theo công thức (4.2); 
3. Dựa vào ma trận trọng số của các từ trong mỗi trang Web pj (công thức 4.1), 
xác định độ đo tương tự dựa trên khoảng cách giữa nó với cụm ci. Cập nhật lại ma trận 
độ thuộc ( 1) ( 1)[ ]k kikU u
+ += theo công thức (4.3); 
4. Nếu ( 1) ( )k kU U ξ+ − < thì thực hiện bước 5; ngược lại, đặt U(k) = 
U(k+1), quay lại bước 2; 
5. Đưa ra các cụm kết quả. 
Trong đó: 
X = {x1, x2, ..., xn}  Rn, là tập dữ liệu ban đầu; 
c: là số cụm dữ liệu trong X; 
m: là trọng số mũ, hay được gọi là tham số mờ, 1 ≤ m < ∞; 
U = [uik], là ma trận phân hoạch mờ của X trong C cụm, U  Mfc; 
uik  [0, 1]: độ thuộc của đối tượng xk đối với cụm i; 
V = [vji] = (v1, v2, ..., vc), là ma trận biểu diễn các đối tượng trọng tâm của cụm; 
vi = (vi1, vi2, ..., vin), là trọng tâm của cụm i; 
2 ( , )k id x v : là khoảng cách Euclide từ đối tượng xk đến trọng tâm của cụm thứ i. 
5. Kết quả thực nghiệm 
Áp dụng kỹ thuật phân cụm dữ liệu mờ trong KPDL Web được chúng tôi thực 
nghiệm thông qua một chương trình ứng dụng thực hiện tìm kiếm trên Web và sau đó 
phân cụm kết quả tìm kiếm này bằng cả hai kỹ thuật phân cụm: phân cụm rõ với thuật 
toán k-means và phân cụm mờ với thuật toán FCM nhằm có sự so sánh kết quả phân 
cụm của hai kỹ thuật phân cụm rõ và phân cụm mờ. 
5.1. Cài đặt hệ thống 
5.1.1. Kiến trúc hệ thống 
ĐỖ QUANG KHÔI 
 58 
Hình 3. Kiến trúc hệ thống của chương trình thử nghiệm. 
Chương trình thử nghiệm được chạy trên môi trường .NET Framework 4.0 với 
ngôn ngữ lập trình Visual Basic 2005 và CDSL được quản lý và lưu trữ bằng SQL 
Server 2005. Hệ thống được thiết kế như Hình 3 ở trên. 
Chương trình được kết nối với máy tìm kiếm Google bằng cách sử dụng một số 
hàm trong API của Google để lấy dữ liệu là kết quả truy vấn tìm kiếm từ Google để lưu 
vào CSDL của hệ thống phục vụ cho quá trình phân cụm. 
Việc tìm kiếm được thực hiện bằng cách sử dụng máy tìm kiếm Google để tìm 
kiếm tự động, chương trình sẽ dựa vào URL để lấy toàn văn của tài liệu đó và lưu trữ lại 
phục vụ cho quá trình tìm kiếm và phân cụm sau này. 
5.1.2. Thiết kế CSDL 
CSDL của chương trình bao gồm các bảng chính sau đây: 
¾ Bảng 1: đây là bảng lưu trữ từ điển. 
Tên trường Kiểu dữ liệu Mô tả 
PhraseID Int Khóa chính, chỉ số của mỗi từ 
Phrase Nvarchar Từ cần lưu trữ 
¾ Bảng 2: đây là bảng lưu trữ nội dung của trang Web được lấy về từ kết quả 
tìm kiếm của Yahoo. 
API 
Kết quả
phân cụm
Người dùng 
 Máy 
tìm kiếm 
Google 
Truy vấn 
đến Google
Kết quả 
truy vấn
Kết quả
truy vấn
Từ khóa 
tìm kiếm 
CSDL 
Quá trình 
phân cụm 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 59 
Tên trường Kiểu dữ liệu Mô tả 
PageID Int Khóa chính 
URL Nvarchar URL của trang Web 
Snipet Nvarchar Trích đoạn của nội dung trang Web 
Content Nvarchar Nội dung của trang Web 
IsTokenozed Bit Cho biết trang Web này đã được tách từ hay chưa 
IsClustered Bit Cho biết trang Web này đã được phân cụm hay chưa 
ClusterID Int Khóa ngoài, liên kết đến bảng Clusters, cho biết trang Web thuộc cụm nào sau khi được phân cụm 
¾ Bảng 3: đây là bảng liên kết giữa các trang Web và từ điển 
Tên trường Kiểu dữ liệu Mô tả 
DicPageID Int Khóa chính 
PageID Int Khóa ngoài, liên kết đến bảng Pages 
PhraseID Int Khóa ngoài, liên kết đến bảng Dictionary 
Score Float Cho biết tần suất xuất hiện của các từ trong trang Web 
¾ Bảng 4: đây là bảng lưu trữ các cụm đã tìm được 
Tên trường Kiểu dữ liệu Mô tả 
ClusterID Int Khóa chính, chỉ số của cụm 
Lable Nvarchar Nhãn của cụm 
5.1.3. Quá trình tìm kiếm và phân cụm được tóm tắt lại như sau: 
Input: 
+ Một tập các trang Web P tìm được theo truy vấn; 
+ Tham số mờ hóa m. 
Output: 
+ Các trang Web được phân cụm theo thuật toán k-means hoặc FCM. 
Các bước thực hiện: 
Bước 1: Tiền xử lý; 
Bước 2: Xây dựng từ điển; 
Bước 3: Tạo ma trận tài liệu; 
Bước 4: Véctơ hóa tài liệu; 
ĐỖ QUANG KHÔI 
 60 
Bước 5: Xử lý phân cụm; 
Bước 6: Hiển thị kết quả phân cụm. 
5.1.4. Một số giao diện chính của chương trình: 
Hình 4. Giao diện nhập từ khóa cần tìm. 
Hình 5. Giao diện hiển thị kết quả tiền xử lý và véctơ hóa trang Web 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 61 
Hình 6. Giao diện kết quả phân cụm bằng FCM. 
5.2. Kết quả 
Với từ khóa “cluster”, khi thực hiện tiền xử lý và phân cụm với hai thuật toán k-
means và FCM (với tham số mờ hóa m = 2.0; ngưỡng kết thúc ξ = 0.05) trên tập dữ liệu 
với hơn 4000 trang web, chương trình cho kết quả như sau: 
Bảng 6. Bảng so sánh thời gian thực hiện hai thuật toán FCM và k-means. 
Thời gian trung bình (giây) 
Phân cụm Số trang Số cụm 
Tiền xử lý 
k-mean FCM (m=2.0) 
100 10 0.85 1.319 7.167 
100 20 0.85 1.926 11.408 
200 10 0.95 2.452 25.731 
200 20 0.95 4.524 37.268 
300 10 0.102 4.588 39.902 
300 20 0.102 7.469 54.118 
400 10 0.131 8.171 62.996 
ĐỖ QUANG KHÔI 
 62 
Thời gian trung bình (giây) 
Phân cụm Số trang Số cụm 
Tiền xử lý 
k-mean FCM (m=2.0) 
400 20 0.131 11.182 79.701 
500 10 0.142 12.526 92.631 
500 20 0.142 16.986 149.390 
1000 10 0.189 22.124 306.447 
1000 20 0.189 43.935 496.282 
Qua kết quả trên, ta thấy rằng thời gian thực hiện thuật toán phụ thuộc vào độ lớn 
của tập dữ liệu và số cụm cần phân cụm. Riêng với thuật toán FCM còn phụ thuộc vào 
tham số mờ hóa m và ngưỡng kết thúc ξ. Nếu tham số mờ hóa m và ngưỡng kết thúc ξ 
được xác định tốt thì chất lượng và thời gian thực hiện phân cụm được cải thiện rất 
nhiều. Không có quy tắc nào để lựa chọn một tham số mờ hóa m tối ưu. Cho đến nay, có 
lẽ chiến lược tốt nhất để chọn được giá trị tối ưu cho m đó là thử nghiệm với các giá trị 
khác nhau của m, từ đó chọn m cho kết quả phân cụm tốt nhất. Đối với hầu hết dữ liệu, 
m  [1.5, 3.0] thường cho kết quả tốt [4]. Với đánh giá này, chương trình thực nghiệm 
đã cho kết quả tương tự. 
Chính vì vậy, thuật toán FCM cho kết quả thời gian thực hiện phân cụm lâu hơn 
thuật toán k-means. Tuy nhiên, qua khảo sát kết quả các cụm thì chất lượng của các 
cụm khi thực hiện với thuật toán FCM cho hiệu quả cao hơn thuật toán k-means bởi vì 
các trang Web trong cùng một cụm có nội dung tương tự với nhau hơn và FCM có khả 
năng phân cụm đối với những trang Web cùng thuộc về những chủ đề khác nhau, 
nghĩa là các cụm có thể chồng chéo lên nhau. 
TÀI LIỆU THAM KHẢO 
Tiếng Việt: 
[1] Đoàn Văn Ban (2003), Bài giảng Khai thác kho dữ liệu, Viện Công nghệ 
thông tin Việt Nam, Hà Nội. 
[2] Hồ Thuần và Đặng Thanh Hà (2007), Lôgic mờ và ứng dụng, NXB Đại học 
Quốc gia Hà Nội, Hà Nội. 
Tiếng Anh: 
[3] Periklis Andritsos (2002), Data Clusting Techniques, University of Toronto, 
Toronto. 
ÁP DỤNG KỸ THUẬT PHÂN CỤM DỮ LIỆU MỜ TRONG KHAI PHÁ  
 63 
[4] James C. Bezdek (1984), “FCM: The fuzzy c-means clustering algorithm”, 
Computer and Geosciences, vol. 10 (2-3), pp. 191-203. 
[5] Christian Borgelt and Andreas Nurnberger (2004), Fast Fuzzy Clustering of 
Web Page Collections, PKDD Workshop on Statistical Approaches for Web 
Mining SAWM, Pisa. 
[6] Jiawei Han, Micheline Kamber and Jian Pei (2011), Data Mining: Concepts 
and Techniques, 3rd Edition, Morgan Kaufmann Publishers, Waltham. 
[7] Raghu Krishnapuram, Anupam Joshi, and Liyu Yi (1999), “A Fuzzy Relative 
of the k-Medoids Algorithm with Application to Web Document and Snippet 
Clustering”, IEEE International Fuzzy Systems Conference Proceedings, vol. 
3, pp. 1281-1286. 
[8] Bing Liu (2007), Web Data Mining, Springer, New York. 
[9] Maofu Liu, Yanxiang He and Huijun Hu (2004), Web Fuzzy Clustering and 
Its Applications in Web Usage Mining, Proceedings of 8th International 
Symposium on Feature Software Technology (ISFST-2004). 
[10] Wenyi Ni (2004), A Survey of Web Document Clustering, Southern 
Methodist University, Dallas. 
Title: THE APPLICATION OF FUZZY DATA CLUSTERING TECHNIQUE IN 
WEB DATAMINING 
DO QUANG KHOI 
Quang Nam University 
Abstract: World Wide Web is a huge data warehouse. Therefore, using Web 
mining to discover useful information and knowledge is of important meaning. For 
that purpose, this article provides an overview of the Web data mining and Web 
document clustering approaches. Thus, this article introduces the Web fuzzy clustering 
processing model and also presents specifically the process of Web document searching 
and clustering by fuzzy data clustering technique with Fuzzy C-Means algorithm. 

File đính kèm:

  • pdfap_dung_ky_thuat_phan_cum_du_lieu_mo_trong_khai_pha_du_lieu.pdf