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

áp dụng kỹ thuật phân cụm dữ liệu trong phân cụm kết quả tìm kiế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 (129.47 KB, 9 trang )



Áp dụng kỹ thuật phân cụm dữ liệu trong
phân cụm kết quả tìm kiếm

Abstract
Phần này chúng tôi giới thiệu hướng tiếp cận trong việc sử dụng kỹ thuật
phân cụm dữ liệu vào tìm kiếm và phân lại tài liệu Web, như xây dựng mô hình
tìm kiếm, tiền xử lý, biểu diễn văn bản bằng mô hình vector và phân cụm tài liệu
Web bằng thuật toán k-means.
I. Giới thiệu
Với sự gia tăng nhanh chóng số lượng trang và nội dung trên Web, sự cải
tiến không ngừng của các Search engine cả về chức năng tìm kiếm và giao diện
người dùng đã giúp cho người sử dụng dễ dàng hơn trong việc tìm kiếm thông
tin từ nguồn dữ liệu Web. Mặc dù các search engine đã tạo danh sách theo thứ tự
quan trọng của nó, nhưng người sử dụng thường vẫn phải duyệt qua hàng chục
thậm chí hàng ngàn các trang Web để tìm kiếm thứ họ cần. Theo tâm lý người
dùng, họ chỉ xem quan vài chục kết quả đầu tiên, thiếu kiên nhẫn và không đủ
thời gian để xem duyệt qua tất cả kết quả đó. Nhằm giải quyết vấn đề này, ta có
thể nhóm các trang Web này thành các nhóm theo các chủ đề, khi đó người sử
dụng có thể bỏ qua các nhóm mà họ không quan tâm để tìm đến nhóm chủ đề
quan tâm. Điều này sẽ giúp cho người dùng thực hiện truy vấn của họ một cách
hiệu quả hơn. Tuy nhiên vấn đề phân cụm trang Web và chọn chủ đề thích hợp
để nó có thể mô tả được nội dung của các trang là một vấn đề không đơn giản.
Trong phần này, ta sẽ xem lại khía cạnh sử dụng kỹ thuật phân cụm để phân
cụm tại liệu Web dựa trên kho dữ liệu đã được tìm kiếm và lưu trữ.
2. Hướng tiếp cận
Có nhiều phương pháp tìm kiếm khác nhau và nhiều cách xác định trọng số
trang (chỉ số quan trọng của trang trong tập kết quả) như PageRank, HITS,… Ta



thấy rằng các phương pháp này chủ yếu dựa vào liên kết trang để xác định trọng
số cho các trang đó.

Ta có thể tiếp cận theo một hướng khác đó là dựa vào nội dung của các tài
liệu để xác định trọng số, nếu các tài liệu "gần nhau" về nội dung thì sẽ quan
trọng tương đương và sẽ thuộc về cùng một nhóm, nhóm nào gần với câu truy
vấn hơn sẽ quan trọng hơn.

Giả sử cho một tập S gồm các trang web, tìm ra các trang thỏa mãn câu hỏi
truy vấn được tập tập R. Sử dụng thuật toán phân cụm dữ liệu để phân tập R
thành k cụm (k xác định) sao cho các phần tử trong cụm là tương tự nhau nhất,
các phần tử ở các cụm khác nhau thì phi tương tự với nhau.

Từ tập S-R, đưa các phần tử này vào một trong k cụm đã được thiết lập ở
trên. Những phần tử nào tương tự với trọng tâm của cụm (theo một ngưỡng xác
định nào đó) thì đưa vào cụm này, những phần tử không thỏa mãn xem như
không phù hợp với truy vấn và loại bỏ nó khỏi tập kết quả.
Kế tiếp ta đánh trọng số cho các cụm và các trang trong tập kết quả như sau:

- Đối với các cụm, dựa vào trọng tâm của cụm để xác định trọng số. Trọng
tâm nào tương tự với truy vấn hơn sẽ có trọng số lớn hơn.

- Xác định trọng số cho mỗi trang trong cụm. Trang nào gần trọng tâm hơn
sẽ có trọng số lớn hơn.

Như vậy, theo cách tiếp cận này sẽ giải quyết được các vấn đề sau:

+ Kết quả tìm kiếm sẽ được phân thành các cụm chủ đề khác nhau, tùy vào
yêu cầu cụ thể mà người dùng sẽ xác định chủ đề mà họ cần.


+ Quá trình tìm kiếm và xác định trọng số cho các trang chủ yếu tập trung
vào nội dung của trang hơn là dựa vào các liên kết trang.

+ Giải quyết được vấn đề từ/cụm từ đồng nghĩa trong câu truy vấn của
người dùng.

+ Có thể kết hợp phương pháp phân cụm trong lĩnh vực khai phá dữ liệu
với các phương pháp tìm kiếm đã có.



Một số thuật toán phần cụm dữ liệu được sử dụng trong phân cụm văn bản
như thuật toán phân cụm phân hoạch (k-means, PAM, CLARA), thuật toán
phân cụm phân cấp (BIRCH, STC), Trong thực tế phân cụm theo nội dung tài
liệu Web, một tài liệu có thể thuộc vào nhiều nhóm chủ đề khác nhau, để giải
quyết việc này ta có thể sử dụng thuật toán phân cụm theo cách tiếp cận mờ như
FCM, ξFCM,
3. Quá trình tìm kiếm và phần cụm tài liệu
Quá trình phân cụm kết quả tìm kiếm gồm các bước như sau [19]:
- Tìm kiếm các trang Web từ các Website thỏa mãn nội dung truy vấn.
- Trích rút thông tin mô tả từ các trang và lưu trữ nó cùng với các URL
tương ứng.
- Sử dụng kỹ thuật phân cụm dữ liệu để phân cụm tự động các trang Web
thành các cụm, sao cho các trang trong cụm “tương tự” về nội dung với nhau
hơn các trang ngoài cụm.

Các bước phần cụm kết quả tìm kiếm trên Web

3.1. 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ập từ khóa tìm kiếmđể tìm

kiếm và trả về tập gồm toàn văn tài liệu, tiêu đề, mô tả tóm tắt tài liệu, URL,…
tương ứng với các trang đó.
Dữ liệu web
Tìm kiếm và
trích rút dữ liệu

Tiền xử lý
Biểu diễn
dữ liệu
Áp dụng thuật
toán phân cụm

Đánh giá và bi
ểu
diễn tri thức



Nhằm nâng cao tốc độ xử lý, ta tiến hành tìm kiếm và lưu trữ các tài liệu
này trong kho dữ liệu để sử dụng cho quá trình tìm kiếm lần sau (tương tự như
các Search Engine Yahoo, Google,…). Mỗi phần tử gồm toàn văn tài liệu, tiêu
đề, đoạn mô tả nội dung (snippets), URL,…
3.2. Tiền xử lý dữ liệu
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 thích hợp dữ liệu.
Giai đoạn này bao gồm các công việc như sau: Chuẩn hóa văn bản, xóa bỏ
các từ dừng, kết hợp các từ có cùng từ gốc, số hóa và biểu diễn văn bản,
3.2.1. Chuẩn hóa văn bản
Đây là giai đoạ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ý. Bao gồm:
+ Xóa các thẻ trong 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,
3.2.2. Xóa bỏ các từ dừng
Trong văn bản có những từ mang ít thông tin trong quá trình xử lý, những
từ có tần số xuất hiện thấp, những từ xuất hiện với tần số lớn nhưng không quan
trọng cho quá trình xử lý. Theo một số nghiên cứu gần đây [2] cho thấy việc loại
bỏ các từ dùng có thể giảm bởi được khoảng 20-30% tổng số từ trong văn bản.
Có rất nhiều từ xuất hiện với tần số lớn nhưng nó không hữu ích cho quá
trình KPDL. Ví dụ trong tiếng Anh các từ như a, an, the, of, and, to, on, by,
trong tiếng Việt như các từ “thì”, “mà”, “là”, “và”, “hoặc”, Những từ xuất hiện
với tần số quá lớn cũng sẽ được loại bỏ.
Để đơn giản trong ứng dụng thực tế, ta có thể tổ chức thành một danh sách
các từ dừng hoặc sử dụng định luật Zipf để xóa bỏ các từ có tần số xuất hiện
thấp hoặc quá cao.
3.2.3. Kết hợp các từ có cùng gốc


Hầu hết trong các ngôn ngữ đều có rất nhiều các từ có chung nguồn gốc với
nhau, chúng mang ý nghĩa tương tự nhau, do đó để giảm bởi số chiều trong biểu
diễn văn bản, ta sẽ kết hợp các từ có cùng gốc thành một từ. Theo một số nghiên
cứu [2] việc kết hợp này sẽ giảm được khoảng 40-50% kích thước chiều trong
biểu diễn văn bản.
Ví dụ trong tiếng Anh, từ user, users, used, using có cùng từ gốc sẽ được quy
về use; từ engineering, engineered, engineer có cùng từ gốc sẽ được quy về
engineer.
Ví dụ xử lý từ gốc trong tiếng Anh:
- Nêu một từ kết thúc bằng “ing” thì xóa “ing”, ngoại trừ trường hợp sau
khi xóa còn lại 1 ký tự hoặc còn lại “th”.

- Nếu một từ kết thúc bằng “ies” nhưng không phải là “eies” hoặc “aies” thì
thay thế “ies” bằng “y”
- Nếu một từ kết thúc bằng “es” thì bỏ “s”.
- Nếu một từ mà kết thúc bởi một phụ âm khác “s” mà theo sau bởi “s” thì
xóa “s”.
- Nếu một từ kết thúc bằng “ed”, mà trước nó là một phụ âm thì xóa “ed”
ngoại trừ sau khi xóa từ chỉ còn lại một ký tự, nếu đứng trước là nguyên âm “i”
thì đổi “ied” thành “y”.
3.2.4. Xây dựng từ điển
Việc xây dựng từ điển là một công việc rất quan trọng trong quá trình
vector hóa văn bản, từ điển sẽ gồm các từ/cụm từ riêng biệt trong toàn bộ tập dữ
liệu. Từ điển sẽ gồm một bảng các từ, chỉ số của nó trong từ điển và được sắp
xếp theo thứ tự.
Một số bài báo đề xuất rằng [19] để nâng cao chất lượng phân cụm dữ liệu
cần xem xét đến việc xử lý các cụm từ trong các ngữ cảnh khác nhau. Theo đề
xuất của Zemir [12][19] xây dựng từ điển có 500 phần tử.



3.2.5. Tách từ, số hóa văn bản và biểu diễn tài liệu
Tách từ là công việc hết sức quan trọng trong biểu diễn văn bản, quá trình
tách từ và vector hóa tài liệu là quá trình tìm kiếm các từ và thay thế nó bởi chỉ
số của từ đó trong từ điển.
Ở đây ta có thể sử dụng một trong các mô hình toán học TF, IDF, TF-
IDF, để biểu diễn văn bản.
Ta sử dụng mảng W (trọng số) hai chiều có kích thước m x n, với n là số
các tài liệu, m là số các thuật ngữ trong từ điển (số chiều), hàng thứ j là một
vector biểu diễn tài liệu thứ j trong cơ sở dữ liệu, cột thứ i là thuật ngữ thứ i
trong từ điển. W
ij

là giá trị trọng số của thuật ngữ i đối với tài liệu j.
Giai đoạn này thực hiện thống kê tần số thuật ngữ t
i
xuất hiện trong tài liệu d
j

và số các tài liệu chứa t
i
. Từ đó xây dựng bảng trọng số của ma trận W theo công
thức sau:
Công thức tính trọng số IF-IDF:

Trong đó:
f
ij
là tần số xuất hiện của t
i
trong tài liệu d
j

idf
ij
là nghịch đảo tần số xuất hiện của t
i
trong tài liệu d
j
.
h
i
là số các tài liệu mà t

i
xuất hiện.
n là tổng số tài liệu.
3.2.6. Phân cụm tài liệu
Sau khi đã tìm kiếm, trích rút dữ liệu và tiền xử lý, sử dụng kỹ thuật phân
cụm để phân cụm tài liệu bằng thuật toán k-means.
Đầu vào: Tập gồm n tài liệu và k cụm.
Đầu ra: Các cụm C
i
(i=1, ,k) sao cho hàm tiêu chuẩn đạt giá trị cực tiểu.
Bước 1. Khởi tạo ngẫu nhiên k vector làm đối tượng trọng tâm của k cụm.
Bước 2. Với mỗi tài liệu d
j
xác định độ tương tự của nó đối với trọng tâm của mỗi cụm
W
ij
=
)]log(1[
ijijij
fidff

+=⋅
)]
log(
i
h
n
+
nếu t
i

∈ d
j

0 nếu ngược lại (t
i
∉ d
j
)


theo một trong các độ đo đã trình bày ở chương trước (Dice, Jaccard, Cosine, Overlap,
Euclidean, Manhattan). Xác định trọng tâm tương tự nhất cho mỗi tài liệu và đưa tài
liệu vào cụm đó.
Bước 3. Cập nhận lại các đối tượng trọng tâm. Đối với mỗi cụm ta xác định lại trọng
tâm bằng cách xác định trung bình cộng của các vector tài liệu trong cụm đó.
Bước 4. Lặp lại bước 2 và 3 cho đến khi trong tâm không thay đổi.
Thuật toán k-means trong phân cụm nội dung tài liệu Web
Trong thuật toán k-means, chất lượng phân cụm được đánh giá thông quan
hàm tiêu chuẩn
∑∑
=

−=
k
i
x
i
C
mxE
i

D
1
2
)(
, trong đó x là các vector biểu diễn tài
liệu, m
i
là các trọng tâm của các cụm, k là số cụm, C
i
là cụm thứ i.
Sau khi phân cụm xong tài liệu, trả về kết quả là các cụm dữ liệu và các
trọng tâm tương ứng.
4. Kết quả thực nghiệm
+ Dữ liệu thực nghiệm là các trang Web lấy từ 2 nguồn chính sau:
- Các trang được lấy tự động từ các Website trên Internet, việc tìm kiếm
được thực hiện bằng cách sử dụng Yahoo để tìm kiếm, 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 sau này (hơn 4000 bài, về các chủ đề “data mining”, “web mining”,
“Cluster algorithm”, “Sport”).
- Tìm kiếm có chọn lọc, phần này được tiến hành lấy thủ công, nguồn dữ
liệu chủ yếu được lấy từ các Web site:




Gồm hơn 250 bài báo chủ đề “bóng đá”.


- Xây dựng từ điển, áp dụng định luật Zipf, sau khi thống kê tần số xuất
hiện của các từ trong tập tài liệu, ta loại bỏ những từ có tần số xuất hiện quá cao

và loại bỏ những từ có tần số quá thấp, ta thu được bộ từ điển gồm 500 từ.

Thời gian trung bình (giây)
Số tài liệu Số cụm
Tiền xử lý và biểu
diễn văn bản
Phân cụm
tài liệu
50 10
0,206 0,957
50
15
0,206 1,156
100
10
0,353 2,518
100
15
0,353 3,709
150
10
0,515 4,553
150
15
0,515 5,834
250
10
0,824 9,756
250
15

0,824 13,375
Bảng đo thời gian thực hiện thuật toán phân cụm
- Độ phức tạp của thuật toán k-means là O((n.k.d).r).
Trong đó: n là số đối tượng dữ liệu, k là số cụm dữ liệu, d là số chiều, r là
số vòng lặp.
Ta thấy rằng thời gian thực hiện thuật toán phụ vào độ lớn dữ liệu và số
cụm cần phân cụm. Ngoài ra với thuật toán k-means, nó còn phụ thuộc vào k
trọng tâm khởi tạo ban đầu. Nếu k trọng tâm được xác định tốt thì chất lượng và
thời gian thực hiện được cải thiện rất nhiều.
TÀI LIỆU THAM KHẢO
[1] Athena Vakali, Web data clustering Current research status & trends, Aristotle
University,Greece, 2004.
[2] Bing Liu, Web mining, Springer, 2007.
[3] Filippo Geraci, Marco Pellegrini, Paolo Pisati, and Fabrizio Sebastiani, A
scalable algorithm for high-quality clustering of Web Snippets, Italy, ACM, 2006.


[4] Hiroyuki Kawano, Applications of Web mining- from Web search engine to P2P
filtering, IEEE, 2004.
[5] Ho Tu Bao, Knowledge Discovery and Data Mining, 2000.
[6] Hua-Jun Zeng, Qi-Cai He, Zheng Chen, Wei-Ying Ma, Jinwen Ma, Learning to
Cluster Web Search Results, ACM, 2004.
[7] Jitian Xiao, Yanchun Zhang, Xiaohua Jia, Tianzhu Li, Measuring Similarity of
Interests for Clustering Web-Users, IEEE, 2001.
[8] Jiawei Han, Micheline Kamber, Data Mining: Concepts and Techniques,
University of Illinois at Urbana-Champaign, 1999.
[9] Lizhen Liu, Junjie Chen, Hantao Song, The research of Web Mining, IEEE, 2002
[10] Maria Rigou, Spiros Sirmakessis, and Giannis Tzimas, A Method for
Personalized Clustering in Data Intensive Web Applications, 2006.
[11] Miguel Gomes da Costa Júnior, Zhiguo Gong, Web Structure Mining: An

Introduction, IEEE, 2005.
[12] Oren Zamir and Oren Etzioni, Web document Clustering: A Feasibility
Demonstration, University of Washington, USA, ACM, 1998.
[13] Periklis Andritsos, Data Clusting Techniques, University Toronto,2002.
[14] R. Cooley, B. Mobasher, and J. Srivastava, Web mining: Information and Pattern
Discovery on the World Wide Web, University of Minnesota, USA, 1998.
[15] Raghu Krishnapuram, Anupam Joshi, and Liyu Yi, A Fuzzy Relative of the K -
Medoids Algorithm with Application toWeb Document and Snippet Clustering, 2001
[16] Raghu Krishnapuram,Anupam Joshi, Olfa Nasraoui, and Liyu Yi, Low-
Complexity Fuzzy Relational Clustering Algorithms for Web Mining, IEEE, 2001.
[17] Raymond and Hendrik, Web Mining Research: A Survey, ACM, 2000
[18] Wang Jicheng, Huang Yuan, Wu Gangshan, and Zhang Fuyan, Web Mining:
Knowledge Discovery on the Web, IEEE, 1999.
[19] Wenyi Ni, A Survey of Web Document Clustering, Southern Methodist
University, 2004.
[20] Yitong Wang, Masaru Kitsuregawa, Evaluating Contents-Link Coupled Web
Page Clustering for Web Search Results, ACM, 2002.
[21] Zifeng Cui, Baowen Xu , Weifeng Zhang, Junling Xu, Web Documents
Clustering with Interest Links, IEEE, 2005.

×