Hình 2.9: Các chuẩn khoảng cách khác nhau sử dụng trong phân cụm mờ.
2.3.2. Thuật toán Gustafson – Kessel
Nhược điểm của việc sử dụng duy nhất một ma trận A trong công thức tính chuẩn khoảng cách là tất các các cụm sẽ có các giới hạn cụm với hình dạng và hướng giống nhau. Khi có nhiều cụm khác nhau về hình dạng thì đó sẽ là điều không mong muốn.
Thuật toán Gustafson – Kessel (viết tắt là GK) [12,23] được Gustafson và Kessel (1979) mở rộng từ thuật toán FCM bởi sử dụng một chuẩn khoảng cách thích nghi, nhằm phát hiện ra các cụm có các dạng hình học khác nhau trong một tập dữ liệu.
𝑑𝑖𝑗 𝐴2 𝑖 = 𝑥𝑗 − 𝑣𝑖 𝐴𝑖 2
= 𝑥𝑗 − 𝑣𝑖 𝑇𝐴𝑖 𝑥𝑗 − 𝑣𝑖 , 1 ≤ i ≤ c; 1 ≤ j ≤ n (2.17)
Với mỗi cụm có một ma trận chuẩn cảm sinh (norm-inducing matrix) 𝐴𝑖 riêng. 𝐴𝑖 được sử dụng trong hàm khoảng cách 𝑑𝑖𝑗 𝐴𝑖 để tính toán khoảng cách tiêu chuẩn cho từng cụm theo cấu trúc topo địa phương của dữ liệu.
Thuật toán GK nhằm tối thiểu hóa hàm mục tiêu sau:
𝐽𝑚(𝑈, 𝑉, 𝐴) = 𝑐𝑖=1 𝑛𝑗 =1𝑢𝑖𝑗𝑚𝑑𝑖𝑗 𝐴2 𝑖 (2.18) Ma trận 𝐴𝑖 được sử dụng như là biến tối ưu trong hàm mục tiêu, cho phép mỗi cụm cập nhật chuẩn khoảng cách từ cấu trúc topo địa phương của dữ liệu. Hàm mục tiêu không thể tối thiểu hóa một cách trực tiếp theo 𝐴𝑖, do là tuyến tính theo 𝐴𝑖. Để giải quyết, cần ràng buộc 𝐴𝑖 theo một số cách. Phương pháp thường dùng là ràng buộc định thức của 𝐴𝑖.
𝐷𝑒𝑡 𝐴𝑖 = 𝜌𝑖, 𝜌𝑖 > 0, 1≤i≤c (2.19) Ở đây, 𝜌𝑖 (cluster volumes) là một tham số cố định cho mỗi cụm. Tuy nhiên, việc chọn 𝜌𝑖 phụ thuộc vào kinh nghiệm và yêu cầu những thông tin biết trước về các cụm. Nếu không biết trước thông tin thì 𝜌𝑖 thường chọn bằng 1 cho mỗi cụm.
Dùng phương pháp nhân tử Lagrange, ma trận 𝐴𝑖, trung tâm cụm và hàm liên thuộc được xác định như sau:
𝐴𝑖 = 𝜌𝑖𝑑𝑒𝑡 𝐹𝑖 1 𝑛𝐹𝑖−1 (2.20) Trong đó: 𝐹𝑖 là ma trận hiệp phương sai mờ (fuzzy covariance matrix) của cụm thứ i được cho bởi:
𝐹𝑖 = 𝑢𝑖𝑗 𝑚 𝑥𝑗−𝑣𝑖 𝑇 𝑥𝑗−𝑣𝑖 𝑛 𝑗 =1 𝑢𝑖𝑗 𝑚 𝑛 𝑗 =1 , (1≤i≤c) (2.21)
Các trung tâm cụm và hàm liên thuộc được tính bởi công thức:
𝑣𝑖 = 𝑢𝑖𝑗 𝑚 𝑥𝑗 𝑛 𝑗 =1 𝑢𝑖𝑗 𝑚 𝑛 𝑗 =1 , (1≤i≤c) (2.22) 𝑢𝑖𝑗 = 1 𝑑 𝑖𝑗 𝐴𝑖 𝑑 𝑘𝑗 𝐴𝑘 2/(𝑚 −1) 𝑐 𝑘=1 , (1≤j≤n, 1≤i≤c) (2.23) Thuật toán GK:
Thuật toán GK gần tương tự thuật toán FCM.
Input: Số cụm c và tham số mờ m, tiêu chuẩn dừng 𝜀, 𝜌𝑖
Output: c cụm dữ liệu sao cho hàm mục tiêu (2.18) đạt giá trị tối thiểu Begin
1. Nhập giá trị cho các tham số c (2≤c<n), m ∈ (1,∞), 𝜀, 𝜌𝑖(thường chọn 𝜌𝑖=1); t = 0; khởi tạo ma trận phân hoạch 𝑈(0)= [𝑢𝑖𝑗] thỏa mãn (2.11a), (2.11b), (2.11c)
2. Repeat 2.1. t = t+1
2.2. Tính vector trung tâm cụm 𝑣𝑖 𝑡 (i=1, 2, ..., c) theo công thức (2.22) 2.3. Cập nhật ma trận phân hoạch 𝑈(𝑡) theo công thức (2.23)
3. Until 𝑈(𝑡)− 𝑈(𝑡−1) ≤ 𝜀
End.
Hình 2.10 mô tả kết quả phân cụm tập dữ liệu các cụm khác nhau về hình dáng bởi hai thuật toán FCM (sử dụng chuẩn khoảng cách Euclidean) và GK.
(a) Thuật toán FCM (b) Thuật toán GK
Hình 2.10: Kết quả phân cụm tập dữ liệu các cụm khác nhau về hình dáng bởi thuật toán FCM và GK.[23]
CHƢƠNG III
SỐ CỤM VÀ CHỈ SỐ ĐÁNH GIÁ
Trong các thuật toán phân cụm mờ như C-means mờ (FCM), Fuzzy Possibilistic C-Means (FPCM), Gustafson-Kessel (GK), Gath-Geva (GG), 𝜀-Insensitive Fuzzy C- means (𝜀FCM),... (xem [11,12,23,25]) thường yêu cầu người dùng xác định trước số cụm. Số cụm là một tham số đầu vào quan trọng và ảnh hưởng nhiều tới kết quả của quá trình phân cụm, ứng với số lượng cụm khác nhau sẽ cho ra các kết quả phân cụm khác nhau, thật khó khăn để quyết định kết quả phân cụm nào là tốt nhất. Do đó, cần phải có một phương pháp để đánh giá mỗi kết quả phân cụm. Hay có thể phát biểu vấn đề một cách khác, đối với một tập dữ liệu số lượng cụm bằng bao nhiêu để cho ra kết quả phân cụm tối ưu? Hiện nay, người ta thường dùng các hàm chỉ số để đánh giá chất lượng phân hoạch được tạo ra bởi các thuật toán phân cụm, nhờ đó xác định số cụm tối ưu cho tập dữ liệu được xét [9,17]. Trong chương này tác giả giới thiệu một số chỉ số đánh giá điển hình cho phân cụm mờ.
3.1. Vấn đề ƣớc lƣợng số cụm
Quá trình phân cụm dữ liệu nhằm xác định các nhóm đối tượng dữ liệu tương tự, từ đó khảo sát các cụm sẽ giúp khái quát, nhanh chóng rút ra các đặc điểm của khối dữ liệu lớn. Tuy nhiên, trong hầu hết các thuật toán phân cụm, tham số số cụm không được biết trước và thuật toán thường yêu cầu người dùng phải xác định trước số lượng các cụm, ứng với mỗi số lượng cụm khác nhau sẽ cho ra các kết quả phân cụm khác nhau (xem hình 3.1, 3.2).