3 Phương pháp tối ưu DC cho bài toán phân cụm
3.2 Kết quả thực nghiệm
Thuật toán DCA được thử nghiệm cùng các thuật toán SCAD [5] và FCM [6] trên các bộ dữ liệu về khai phá dữ liệu thực UCI [4]. Dữ liệu thử nghiệm gồm 5 bộ, bảng 3.1 chứa các thông tin chi tiết về dữ liệu thử nghiệm.
Ở đây người ta sử dụng chỉ số Rand và thời gian chạy để đánh giá sự hiệu quả của các thuật toán. Chỉ số Rand, đặt tên theo người đề xuất là William M. Rand, tính toán sự tương hợp giữa kết quả phân cụm thu được và lời giải phân cụm đã biết. Với một điểm dữ liệu xi, ký hiệu Iref(xi) là lời giải phân cụm của dữ liệu xi và Iclass(xi) là kết quả phân cụm đạt được từ thuật toán. Thuật toán tốt nếu chỉ số Rand lớn. Chỉ số Rand được tính toán theo công thức dưới đây:
Rand = a+d
a+b+c+d (3.10)
với:
a =| {i, j | Iref(xi) =Iref(xj)
& Iclass(xi) = Iclass(xj)} |, b =| {i, j | Iref(xi) =Iref(xj)
& Iclass(xi) =6 Iclass(xj)} |, c =| {i, j | Iref(xi) 6=Iref(xj)
& Iclass(xi) = Iclass(xj)} |, d =| {i, j | Iref(xi)6= Iref(xj)
& Iclass(xi) 6= Iclass(xj)} | .
Các giải thuật được cài đặt bởi ngôn ngữ Visual Express C++ 2012 và thực hiện trên máy tính Intel i5-322M CPU 2.6 GHz 4Gb RAM.
Thuật toán DCA thử nghiệm với các tham số µ, β trong khoảng
[2..4]; thuật toán SCAD thử nghiệm với tham số trong khoảng [1..4]; còn tham số µ của thuật toán FCM được thử nghiệm trong khoảng
[1..4].
Thực hiện phân cụm 10 lần với các điểm khởi tạo ngẫu nhiên khác nhau, sau đó tính toán giá trị trung bình và độ lệch chuẩn của các chỉ số qua 10 lần chạy.
Từ bảng kết quả thực nghiệm thu được (Bảng kết quả 3.2 và 3.3), chúng ta thấy rằng: thuật toán giải dựa trên tối ưu DC là tốt hơn cả
Bảng 3.1: BẢNG DỮ LIỆU Dữ liệu m n k Iris 150 4 3 Glass 214 9 6 Stalog 2000 36 6 Comp 3891 10 3 SVM 4000 4 2 Bảng 3.2: KẾT QUẢ CHỈ SỐ RAND
Dữ liệu DCA SCAD FCM
Rand-Index Rand-Index Rand-Index Iris 0,928 ± 0,006 0,897 ± 0,012 0,892 ± 0,000 Glass 0,733 ± 0,005 0,726 ± 0,001 0,706 ± 0,009 Stalog 0,861 ±0,0004 0,858 ± 0,005 0,825 ± 0,010 Comp 0,975 ±0,0003 0,907 ± 0,029 0,780 ± 0,001 SVM 0,790 ± 0,001 0,772 ± 0,007 0,656 ± 0,001
Bảng 3.3: KẾT QUẢ THỜI GIAN CHẠY
Dữ liệu DCA SCAD FCM
Time(s) Time(s) Time(s) Iris 0,130 ±0,008 0,056 ± 0,007 0,022 ± 0,007 Glass 0,799 ±0,083 0,388 ± 0,011 0,112 ± 0,006 Stalog 15,532 ± 0,957 12,985 ±0,054 3,250 ± 0,021 Comp 7,036 ±0,032 3,654 ± 0,015 0,831 ± 0,068 SVM 3,328 ±0,008 1,058 ± 0,007 0,458 ± 0,005
2 thuật toán SCAD và FCM về chỉ số Rand cho cả 5 bộ dữ liệu thử nghiệm. Các thuật toán DCA, SCAD có thêm thông tin trọng số của thuộc tính cho kết quả tốt hơn hẳn so với thuật toán cổ điển FCM. Độ lệch chỉ số Rand lớn nhất giữa 2 thuật toán DCA và FCM là 0.195 (tại bộ dữ liệu Comp).
Việc thử nghiệm với các bộ dữ liệu có số cụm khác nhau {2, 3, 6} và phổ phần tử đủ lớn {150, 214, 2000, 3891, 4000}. Điều này cho thấy tính ổn định cũng như hiệu quả của thuật toán.
Về thời gian tính toán, thuật toán FCM chạy nhanh nhất. Các thuật toán dựa vào trọng số của thuộc tính phải tính toán thêm biến số Λ
nên chạy chậm hơn thuật toán FCM cổ điển. Tuy nhiên, độ chênh lệch về thời gian giữa các thuật toán là không quá chênh lệch và chấp nhận được.
3.3 Kết luận
Trong chương cuối, luận văn đã trình bày một thuật toán phân cụm dựa trên trọng số của thuộc tính được giải bằng tối ưu DC và thuật toán DCA. Mô hình bài toán ban đầu được viết lại dưới dạng bài toán tối ưu DC, các tính toán trong thuật toán DC đều là những tính toán dưới dạng hiển, tại mỗi bước lặp, chúng ta tính trực tiếp phép chiếu của các điểm trên các hộp hay trên đoạn [0,1]. Từ kết quả tính toán thực nghiệm, chúng ta thấy rằng việc sử dụng thông tin trọng số của thuộc tính có thể cải thiện được hiệu năng phân cụm dữ liệu. Đồng thời kết quả cũng cho thấy tính hiệu quả của thuật toán dựa trên tối ưu DC và thuật toán DC so với các thuật toán cổ điển SCAD và FCM. Tuy nhiên, vì thời gian có hạn, tác giả cũng chưa tìm hiểu kỹ hết các đặc điểm của thuật toán DCA cho bài toán phân cụm trong lĩnh vực khai phá dữ liệu, cũng như về cách cải tiến hiệu năng của thuật toán thông qua các phương pháp điểm khởi tạo tốt hơn, để thu được điểm khởi tạo tốt, sẽ dẫn đến kết quả bài tối ưu tốt và nhanh chóng hội tụ.
Tác giả cũng chưa tìm tòi để có những phương pháp phân rã DC khác hiệu quả hơn. Bài toán phân cụm dữ liệu cũng có thể áp dụng cho nhiều bài toán trong thực tế như: bài toán phân đoạn ảnh, nhận dạng, đếm tế bào trong tin sinh học,..
Ngoài ra phương pháp DC và DCA có thể kết hợp với lý thuyết mờ để giải quyết bài toán phân cụm mờ có ngữ cảnh,... đấy là những hướng nghiên cứu có thể tìm hiểu sau này.
Kết luận
Luận văn được chia làm 3 chương. Chương 1 tác giả tìm hiểu những kiến thức cơ bản và có tính chất bổ trợ về giải tích hàm, về tối ưu, tối ưu DC và thuật toán DCA để giải bài toán tối ưu. Tối ưu DC và thuật toán DCA là một trong những hướng nghiên cứu để giải quyết các bài toán tối ưu không lồi. Khoảng 10 năm gần đây, phương pháp này đã thu được những kết quả đáng xem xét, đặc biệt trong lĩnh vực ứng dụng. Tối ưu DC và thuật toán DCA đã góp phần giải quyết nhiều bài toán ứng dụng có số chiều lớn và phức tạp như: trong xử lý ảnh, trong khai phá dữ liệu, bài toán giao thông, sắp xếp kho hàng, vận chuyển hay trong tin sinh học, mã hóa,. . .
Trong chương 2, tác giả trình bày những tìm hiểu của mình về bài toán phân cụm trong lĩnh vực khai phá dữ liệu. Trong phần này, tác giả tìm hiểu các phương pháp phân cụm phân hoạch, tập trung vào các phương pháp như k-Mean, FCM. Ở chương này, tác giả cũng tìm hiểu về phương pháp phân cụm có tính thêm trọng số của thuộc tính. Qua nghiên cứu của Frigui và Nasui, chúng ta nhận thấy các thuộc tính có ảnh hưởng đến hiệu năng của kết quả phân cụm. Một cụm có thể được thiết lập chỉ từ một số thuộc tính nào đó, những thuộc tính này lại không biết trước. Trong một cụm, những thuộc tính dữ liệu ảnh hưởng tới kết quả phân cụm sẽ có giá trị cao, và ngược lại: những thuộc tính ít ảnh hưởng sẽ có giá trị thấp.
Tác giả đã tìm hiểu một ứng dụng cụ thể của tối ưu DC trong bài toán phân cụm có tính đến trọng số của thuộc tính tại chương 3 của luận án. Trong phần này, tác giả trình bày thuật toán DC để giải cho bài toán tối ưu đã được viết lại dưới dạng bài toán DC và tìm hiểu về cách giải bài toán này. Thuật toán được thử nghiệm cùng với 2 thuật toán khác là FCM – một thuật toán phân cụm cổ điển dựa trên giá trị phụ thuộc mờ và thuật toán SCAD dựa trên trọng số của các thuộc
tính. Từ những kết quả thực nghiệm thu được, chúng ta thấy rằng nếu bài toán phân cụm xét thêm yếu tố ảnh hưởng của thuộc tính thì ta sẽ được kết quả phân cụm tốt hơn. Ngoài ra, khi áp dụng thuật toán DCA thì kết quả thu được là rất khả quan.
Có thể xem luận văn như bước tìm hiểu ban đầu của học viên về ứng dụng tối ưu DC vào bài toán phân cụm. Tác giả luận văn hy vọng sẽ có dịp được tìm hiểu sâu và rộng hơn về phương pháp này.
Trong những hướng nghiên cứu tương lai, tác giả cũng mong muốn được thực hiện so sánh với những thuật toán mới khác, các thuật toán cũng xuất phát từ tối ưu DC; cũng như thử nghiệm với các phương pháp điểm khởi tạo khác nhau. Những ứng dụng của tối ưu DC cũng như phân cụm vào các bài toán thực tế như: phân đoạn ảnh, đếm tế bào trên ảnh chụp, mã hóa,. . . cũng rất đáng được tìm hiểu và nghiên cứu.
Tài liệu tham khảo
Tiếng Việt
[1] Nguyễn Văn Hồng (2014), Thuật toán DCA và ứng dụng, Luận văn thạc sỹ chuyên ngành toán ứng dụng, Đại học Khoa học – Đại học Thái Nguyên.
[2] Nguyễn Thị Bích Thủy, Tạ Minh Thủy. Một cách tiếp cận tối ưu cho bài toán phân cụm. Hội thảo quốc gia một số vấn đề chọn lọc của công nghệ thông tin và truyền thông - Hội nghị @ XIX. Viện Công nghệ Thông tin - Trường Đại học Sư phạm Hà Nội, 1-2/10/2016, Hà Nội, trang 226 - 230 (2016).
[3] Lê Dũng Mưu (1998), Nhập môn các phương pháp tối ưu, Nhà xuất bản Khoa học và Kỹ thuật, Hà Nội.
Tiếng Anh
[4] C.L. Blake and C.J. Merz, UCI repository of machine learning databses, University of California, Irvine, Dept. of Information and Computer Sciences (1998), http://archive.ics.uci.edu/ml/datasets.html. Accessed on May 2013.
[5] Hichem Frigui and Olfa Nasraoui. Unsupervised learning of pro- totypes and attribute weights. Pattern Recognition, 37(3):567–581, 2004.
[6] James C. Bezdek. Pattern Recognition with Fuzzy Objective Func- tion Algorithms. Kluwer Academic Publishers, Norwell, MA, USA, 1981. ISBN 0306406713.
[7] Le Thi Hoai An (web site). Dc programming and dca. http://lita.sciences.univ-metz.fr/ lethi. Accessed on March 2014.
[8] Le Hoai Minh, Nguyen Thi Bich Thuy, Ta Minh Thuy, Le Thi Hoai An (2013), Image Segmentation via Feature Weighted Fuzzy Clustering by a DCA Based Algorithm, Adv. Comput. Methods for Knowl. Engine. Vol. 479, Springer, pp. 53-–63.
[9] Pham Dinh Tao and Le Thi Hoai An. Convex Analysis approach to DC programming theory, algorithms and applications. ACTA Mathematica Vietnamica 22, pp. 289-355, 1997.
[10] Stephen Boyd, Lieven Vandenberghe (2009),Convex Optimization, Cambrige Press. [11] http://www.askanalytics.in/2015/08/difference-between-k- means-and.html. [12] http://blog.minitab.com/blog/quality-data-analysis-and- statistics/cluster-analysis-tips [13] https://www.mathworks.com/matlabcentral/mlc- downloads/downloads/submissions/34412/versions/11/screenshot.png [14] https://sites.google.com/a/kingofat.com/wiki/data- mining/cluster-analysis