Chương 2. RÚT GỌN THUỘC TÍNH TRONG BẢNG QUYẾT ĐỊNH SỬ DỤNG ĐỘ PHỤ THUỘC MỜ VÀ KHOẢNG CÁCH MỜ
2.2. Rút gọn thuộc tính sử dụng độ phụ thuộc mờ
2.2.4. Thực nghiệm các thuật toán
2.2.4.1. Bộ dữ liệu thử nghiệm và môi trường thử nghiệm
Chúng tôi chọn 8 bộ dữ liệu mẫu từ lấy từ kho dữ liệu UCI [103] cho ở Bảng 2.2 để tiến hành thử nghiệm. Môi trường thử nghiệm là máy tính PC với cấu hình Intel(R) Core(TM) i7-3770CPU @3.40 GHz, sử dụng hệ điều hành Windows 7, 32 bit. Công cụ lập trình thực hiện các thuật toán là ngôn ngữ C# và công cụ phân tích dữ liệu R.
Bảng 2.2. Bộ dữ liệu thử nghiệm thuật toán F_FRSAR, FW_FRSAR
STT Bộ dữ liệu Mô tả Số đối tượng
Số thuộc tính điều kiện
Số lớp quyết định Tất
cả
Thuộc tính định
danh (nominal)
Thuộc tính thực (Real- valued) 1 Ecoli Protein Localization
Sites
336 7 0 7 8
2 Ionosphere Johns Hopkins University
Ionosphere database
351 34 0 34 2
3 WDBC Wisconsin
diagnostic breast cancer
569 30 0 30 2
4 Wpbc Wisconsin
Prognostic Breast Cancer
198 33 0 33 2
5 Wine Wine recognition data
178 13 0 13 3
6 Glass Glass Identification Database
214 9 0 9 7
7 Magic04 MAGIC gamma
telescope data 2004
19020 10 0 10 2
8 Page- blocks
Blocks Classification
5473 10 0 10 5
2.2.4.2. Đánh giá độ chính xác phân lớp của thuật toán F_FRSAR với các thuật toán khác theo tiếp cận tập thô mờ và thuật toán RSAR theo tiếp cận tập thô truyền thống
1) Đánh giá độ chính xác phân lớp của thuật toán F_FRSAR theo tiếp cận tập thô mờ với thuật toán RSAR theo tiếp cận tập thô truyền thống
Trước hết, chúng tôi tiến hành thử nghiệm nhằm đánh giá độ chính xác phân lớp của thuật toán F_FRSAR với thuật toán RSAR theo tiếp cận tập thô truyền thống. Với thuật toán filter theo tiếp cận tập thô mờ F_FRSAR, chúng tôi dùng
quan hệ tương đương mờ R trên miền giá trị của thuộc tính ckC như sau [54, 68, 76]
1 4 * , 0.25
( , ) max( ) min( ) max( ) min( )
0,
k
k i k j k i k j
c i j k k k k
c u c u c u c u
R u u c c c c
otherwise
Với max ck , min ck tương ứng là giá trị lớn nhất và giá trị nhỏ nhất của miền giá trị thuộc tính ck. Trên thuộc tính quyết định d chúng tôi sử dụng quan hệ tương đương R d . Phân hoạch U R/ d x d xU với
x d yU R d ( , )x y 1 là một lớp tương đương. Khi đó, lớp tương đương x d
được xem là lớp đương đương mờ, ký hiệu là x d, với hàm thuộc 1
xd y
nếu
d
y x và 0
xd y
nếu y x d.
Để tiến hành thử nghiệm, chúng tôi thực hiện các công việc sau:
- Cài đặt, thực hiện thuật toán rời rạc hóa dữ liệu equal-width [64] và thuật toán RSAR để tìm tập rút gọn theo tiếp cận tập thô.
- Cài đặt, thực hiện thuật toán F_FRSAR để tìm tập rút gọn trực tiếp từ bảng quyết định ban đầu theo tiếp cận tập thô mờ.
- Chúng tôi sử dụng bộ phân lớp SVM và C4.5 trong công cụ R để tính độ chính xác phân lớp trên tập rút gọn thu được bởi hai thuật toán . Chúng tôi sử dụng phương pháp kiểm tra chéo 10-fold, nghĩa là bộ dữ liệu được chia thành 10 phần xấp xỉ bằng nhau, lấy ngẫu nhiên 1 phần làm bộ dữ liệu kiểm tra, 9 phần còn lại làm dữ liệu huấn luyện. Quá trình được lặp lại 10 lần.
Bảng 2.3 là kết quả thử nghiệm trên 8 bộ số liệu được chọn với U là số đối tượng, C là số thuộc tính điều kiện, R là số thuộc tính của tập rút gọn.
Bảng 2.3. Độ chính xác phân lớp của F_FRSAR và RSAR
ST T
Bộ số
liệu U C
Rút gọn thuộc tính theo tiếp cận tập thô (RSAR)
Rút gọn thuộc tính theo tiếp cận tập thô mờ (F_FRSAR)
R Độ chính xác phân lớp SVM
Độ chính xác phân lớp C4.5
R Độ chính xác phân lớp SVM
Độ chính xác phân lớp C4.5
1 Ecoli 336 7 5 0.851 0.819 7 0.865 0.855
2 Ionospher e
351 34 10 0.814 0.802 15 0.937 0.915
3 Wdbc 569 30 8 0.795 0.784 19 0.980 0.975
4 Wpbc 198 33 7 0.718 0.704 19 0.825 0.818
5 Wine 178 13 4 0.814 0.802 10 0.955 0.920
6 Glass 214 9 5 0.815 0.795 7 0.891 0.882
7 Magic04 1902
0
10 4 0.745 0.715 6 0.782 0.765
8 Page- blocks
5473 10 5 0.758 0.725 7 0.865 0.855
Hình 2.1. Độ chính xác phân lớp của F_FRSAR và RSAR
Từ Bảng 2.3 và Hình 2.1 ta thấy, trên tất cả các tập dữ liệu, tập rút gọn của F_FRSAR nhiều thuộc tính hơn RSAR. Độ chính xác phân lớp trên tập rút gọn của F_FRSAR cao hơn độ chính xác phân lớp trên tập rút gọn của RSAR.
2) Đánh giá độ chính xác phân lớp của thuật toán F_FRSAR với các thuật toán khác theo tiếp cận tập thô mờ
Tiếp theo, chúng tôi tiến hành thử nghiệm để đánh giá thuật toán filter đề xuất F_FRSAR với thuật toán filter tìm tập rút gọn theo tiếp cận tập thô mờ sử dụng lượng thông tin tăng thêm (information gain) mờ dựa trên entropy Shannon mờ, gọi là thuật toán GAIN_RATIO_AS_FRS trong công trình [45]. Sở dĩ chọn thuật toán GAIN_RATIO_AS_FRS để so sánh với thuật toán đề xuất vì thuật toán GAIN_RATIO_AS_FRS được chứng minh là hiệu quả hơn các thuật toán sử dụng ma trận phân biệt mờ (công trình số 1, phần danh mục các công trình của tác giả).
Để tiến hành thử nghiệm, chúng tôi cài đặt thuật toán GAIN_RATIO_AS_FRS trong [45] sử dụng cùng quan hệ tương đương mờ với thuật toán F_FRSAR. Chúng tôi cũng sử dụng phương pháp 10-fold như mô tả ở trên (mục 2.2.4.2) để đánh giá độ chính xác phân lớp với bộ phân lớp SVM và C4.5 trong công cụ R, vì bộ phân lớp SVM và C4.5 cũng được chọn trong thử nghiệm của công bố số [45]. Kết quả thực hiện hai thuật toán được mô tả ở Bảng 2.4 như sau:
Bảng 2.4. Độ chính xác phân lớp của GAIN_RATIO_AS_FRS và F_FRSAR
STT Bộ số
liệu U C
Thuật toán
GAIN_RATIO_AS_FRS [45]
Thuật toán F_FRSAR
R Độ chính xác phân lớp SVM
Độ chính xác phân lớp C4.5
R Độ chính xác phân lớp SVM
Độ chính xác phân lớp C4.5
1 Ecoli 336 7 6 0.814 0.802 7 0.865 0.855
2 Ionos
phere
351 34 13 0.916 0.904 15 0.937 0.915
3 Wdbc 569 30 17 0.925 0.917 19 0.980 0.975
4 Wpbc 198 33 17 0.815 0.804 19 0.825 0.818
5 Wine 178 13 9 0.910 0.902 10 0.955 0.920
6 Glass 214 9 7 0.891 0.882 7 0.891 0.882
7 Magic
04
1902
0 10 6 0.782 0.765 6 0.782 0.765
8 Page-
blocks 5473 10 6 0.852 0.848 7 0.865 0.855
Hình 2.2. Độ chính xác phân lớp của GAIN_RATIO_AS_FRS và F_FRSAR Từ Bảng 2.4 và Hình 2.2 ta thấy, trên cùng một quan hệ tương đương mờ được sử dụng, độ chính xác phân lớp sau khi thực hiện thuật toán đề xuất F_FRSAR cao hơn độ chính xác phân lớp sau khi thực hiện thuật toán GAIN_RATIO_AS_FRS trong [45]. Tập rút gọn của thuật toán đề xuất F_FRSAR bảo toàn miền dương mờ và nhiều thuộc tính hơn so với thuật toán GAIN_RATIO_AS_FRS trong [45].
2.2.4.3. Đánh giá độ chính xác phân lớp của thuật toán filter-wrapper FW_FRSAR với thuật toán filter F_FRSAR và các thuật toán filter khác theo tiếp cận tập thô mờ
Trong mục này, chúng tôi tiến hành thử nghiệm đánh giá thuật toán filter- wrapper FW_FRSAR với thuật toán filter F_FRSAR và thuật toán filter GAIN_RATIO_AS_FRS trong [45]. Việc đánh giá dựa trên hai tiêu chuẩn: độ chính xác phân lớp và thời gian thực hiện của các thuật toán. Cả 3 thuật toán đề sử dụng quan hệ tương đương mờ ở mục 2.2.4.2. Chúng tôi cũng sử dụng phương pháp 10-fold như mô tả ở mục 2.2.4.2 để đánh giá độ chính xác phân lớp với bộ phân lớp C4.5 trong công cụ R.
1) So sánh độ chính xác phân lớp của FW_FRSAR, F_FRSAR và GAIN_RATIO_AS_FRS
Kết quả so sánh độ chính xác phân lớp của 3 thuật toán được mô tả ở Bảng 2.5.
Trong đó, U là số đối tượng, C là số thuộc tính điều kiện, R là số thuộc tính của tập rút gọn.
Bảng 2.5. Độ chính xác phân lớp FW_FRSAR, F_FRSAR, GAIN_RATIO_AS_FRS
STT Tập dữ liệu
Tập dữ liệu
ban đầu Thuật toán FW_FRSAR
Thuật toán F_FRSAR
Thuật toán GAIN_RATIO
_AS_FRS [45]
U C R Độ chính
xác phân lớp C4.5
R Độ chính xác phân lớp C4.5
R Độ chính
xác phân lớp C4.5
1 Ecoli 336 7 5 0.901 7 0.855 6 0.802
2 Ionosphere 351 34 8 0.946 15 0.915 13 0.904
3 Wdbc 569 30 6 0.975 19 0.975 17 0.917
4 Wpbc 198 33 12 0.867 19 0.818 17 0.804
5 Wine 178 13 5 0.920 10 0.920 9 0.902
6 Glass 214 9 4 0.924 7 0.882 7 0.882
7 Magic04 19020 10 4 0.886 6 0.765 6 0.765
8 Page-
blocks 5473 10 5 0.906 7 0.855 6 0.848
Kết quả ở Bảng 2.5 cho thấy, số thuộc tính tập rút gọn của thuật toán filter- wrapper FW_FRSAR nhỏ hơn nhiều, đặc biệt là đối với các bộ dữ liệu Wdbc, Ionosphere. Hơn nữa, độ chính xác của FW_FRSAR cao hơn F_ FRSAR và GAIN_RATIO_AS_FR, độ chính xác FW_FRSAR bằng F_FRSAR trên 2 bộ dữ liệu Wdbc và Wine. Nguyên nhân là giai đoạn wrapper, thuật toán FW_FRSAR tính độ chính xác phân lớp trên tất cả các ứng cử viên tập rút gọn sinh bởi F_FRSAR và tìm ứng cử viên có độ chính xác phân lớp tốt nhất.
Như vậy, thuật toán đề xuất filter-wrapper FW_FRSAR đáp ứng mục tiêu đặt ra là giảm thiểu số thuộc tính tập rút gọn, từ đó giảm thiểu độ phức tạp của mô hình mà vẫn cố gắng bảo toàn độ chính xác phân lớp (độ chính xác phân lớp còn cao hơn các phương pháp filter).
2) So sánh thời gian thực hiện của FW_FRSAR, F_FRSAR và GAIN_RATIO_AS_FRS
Kết quả so sánh thời gian thực hiện của 3 thuật toán được mô tả ở Bảng 2.6.
Thời gian tính bằng giây (s), trong đó thời gian thực hiện thuật toán filter-wrapper
FW_FRSAR được tách thành hai giai đoạn: thời gian thực hiện thủ tục filter và wrapper.
Bảng 2.6. Thời gian thực hiện FW_FRSAR, F_FRSAR, GAIN_RATIO_AS_FRS
STT Bộ dữ liệu U C
Thuật toán FW_FRSAR Thuật toán F_FRSAR
Thuật toán GAIN_RATIO
_AS_FRS [45]
Thủ tục Filer
Thủ tục Wrapper
Tổng cộng
1 Ecoli 336 7 2.38 1.24 3.62 2.86 2.95
2 Ionosphere 351 34 12.64 6.92 19.56 14.87 15.04
3 Wdbc 569 30 22.15 8.74 30.89 24.12 26.08
4 Wpbc 198 33 8.56 6.28 14.84 9.12 9.88
5 Wine 178 13 0.58 1.22 1.80 0.62 0.74
6 Glass 214 9 0.82 0.66 1.48 0.88 1.02
7 Magic04 19020 10 894.26 124.49 1018.75 914.86 948.16 8 Page-
blocks 5473 10 98.64 22.16 120.80 112.76 126.28
Kết quả ở Bảng 2.6 cho thấy, thời gian thực hiện thuật toán FW_FRSAR cao hơn hai thuật toán filter F_FRSAR và GAIN_RATIO_AS_FRS vì phải thực hiện các bộ phân lớp trong giai đoạn wrapper. Chú ý rằng thời gian thực hiện thủ tục filter trong thuật toán FW_FRSAR nhỏ hơn F_FRSAR và GAIN_RATIO_AS_FRS vì thủ tục filter không phải kiểm tra lại tập rút gọn tìm được. Với 2 thuật toán filter, thời gian thực hiện thuật toán đề xuất F_FRSAR nhỏ hơn một chút so với thuật toán GAIN_RATIO_AS_FRS vì không phải tính toán các công thức entropy Shannon.