Chương 4. HƯỚNG TIẾP CẬN ĐỀ TÀI VÀ GIẢI PHÁP
4.2 Giải pháp thực hiện
4.2.2 Thực hiện phân lớp bằng các giải thuật phân lớp phổ biến
Các bảng dữ liệu vừa chuyển đổi được ở trên (thuộc tính lớp có 5 giá trị) được chúng tôi chuyển sang dạng file .ARFF rồi dùng công cụ WEKA (www.cs.waikato.ac.nz/ml/weka) để chạy các giải thuật J48 (C4.5) và Nạve Bayes trên tập dữ liệu rời rạc (tên là DiscDS), và giải thuật MultilayerPerceptron (Neural Network) trên tập dữ liệu liên tục chuẩn hóa (tên là NormDS). Kiểu đánh giá được chọn trong các thí nghiệm này, cũng như tất cả các thí nghiệm bên dưới, là 10-fold cross-validation. Kết quả được trình bày trong Chương 5.
4.2.2.2 Phân lớp trên các tập dữ liệu rút gọn còn 3 lớp
Từ kết quả chạy các giải thuật với các tập dữ liệu 5 lớp đã nói ở mục trên, chúng tôi nhận thấy các giải thuật có độ chính xác phân lớp rất kém đối với các lớp CC1 và CC2. Các bản ghi thuộc lớp này thường bị phân nhầm sang các lớp khác, đặc biệt là nhầm sang lớp CTN. Mặt khác, về nguyên tắc, các sinh viên bị Cảnh cáo 1 và Cảnh cáo 2 vẫn là những sinh viên còn đang học, chưa phải đã tốt nghiệp nhưng cũng chưa phải đã bị buộc thôi học, do đó lẽ ra nên xếp họ chung vào nhóm CTN.
Do đó, chúng tôi tiến hành một bước thu gọn giá trị thuộc tính lớp, biến các tập dữ liệu 5 lớp thành các tập dữ liệu chỉ còn 3 lớp, trong đó lớp CTN bao gồm luôn các
bản ghi mà lúc trước thuộc về lớp CC1 và CC2. Sau đó, các tập dữ liệu 3 lớp kết quả (được đặt tên là Disc3cDS đối với tập rời rạc, và Norm3cDS đối với tập liên tục chuẩn hĩa) lại được mang ra để phân lớp bằng các giải thuật J48, Nạve Bayes và MultilayerPerceptron giống như trên (cũng với kiểu đánh giá 10-fold cross-validation).
Kết quả rõ ràng tốt hơn khi chạy các giải thuật này trên tập dữ liệu 5 lớp, và cũng được trình bày trong Chương 5.
4.2.2.3 Phân lớp trên các tập dữ liệu đã được tái cân đối
Khi được tổ chức thành 5 lớp, các tập dữ liệu của chúng ta rất mất cân đối (200 TN, 171 BTH, 924 CTN, nhưng chỉ có 25 CC1 và 23 CC2). Ngay cả khi đã được gom lại còn 3 lớp, các tập dữ liệu của chúng ta vẫn còn khá mất cân đối. Lớp CTN càng chiếm đa số hơn (972), trong khi TN và BTH vẫn giữ nguyên 200 và 171.
Một trong những cách đơn giản nhất để tái cân đối dữ liệu ở mức dữ liệu là lấy
mẫu lại (resampling) dữ liệu, sao cho số lượng các bản ghi thuộc các lớp trở thành
tương đương nhau, như đã trình bày trong Chương 2.
Lấy mẫu lại bao gồm lấy mẫu dư (oversampling) và lấy mẫu thiếu
(undersampling). Lấy mẫu dư sẽ tăng số lượng bản ghi lớp thiểu số lên, bằng cách tạo các bản sao ngẫu nhiên của một số chúng, cho đến khi tương đương với số lượng bản
ghi lớp đa số. Lấy mẫu thiếu thì ngược lại, giảm số lượng các bản ghi lớp đa số xuống bằng cách loại bỏ ngẫu nhiên một số bản ghi lớp đa số cho đến khi số lượng bản ghi đa số tương đương số lượng bản ghi thiểu số. Trong luận văn này chúng tôi kết hợp cả hai phương pháp, giảm số bản ghi của lớp đa số và tăng số bản ghi của các lớp thiểu số, sao cho cuối cùng số bản ghi của mỗi lớp xấp xỉ với trung bình cộng số bản ghi tất cả các lớp của tập dữ liệu ban đầu. Việc lấy mẫu lại này sử dụng các bộ tiền xử lý
Resample và SpreadSubsample có sẵn trong WEKA.
Resample sinh ra một tập con gồm những mẫu ngẫu nhiên của tập dữ liệu bằng
cách dùng phương pháp lấy mẫu có đặt lại chỗ cũ (mặc định) hoặc không đặt lại chỗ cũ. Ta có thể chỉ định số lượng bản ghi của tập con mẫu được sinh ra. Tập con mẫu này theo mặc định vẫn duy trì phân bố lớp của tập dữ liệu gốc, tuy nhiên ta có thể sửa cấu
hình giải thuật để chỉnh lại phân bố lớp của nó thành phân bố đều (như vậy giống như đã lấy mẫu thiếu lớp đa số và lấy mẫu dư lớp thiểu số).
SpreadSubsample cũng sinh ra một tập con gồm những mẫu ngẫu nhiên của tập
dữ liệu, nhưng ta có thể kiểm soát sự khác biệt tần suất giữa lớp ít nhất và lớp nhiều nhất bằng cách chỉ định tham số độ trải (spread): khi độ trải này bằng 1, tập con sẽ có phân bố đều (tức là cũng giống như đã lấy mẫu dư lớp thiểu số và lấy mẫu thiếu lớp đa số).
Sau khi tái cân đối, ta được bốn tập dữ liệu cân đối 3 lớp:
Tập rời rạc 1, tên là Disc3cIM1 (dùng phương pháp tiền xử lý
SpreadSubsample), có đặc điểm như sau:
Bảng 4.7: Tập dữ liệu Disc3cIM1.
Dữ liệu chưa cân đối Dữ liệu đã tái cân đối
TN: 200
BTH: 171
CTN: 972
TN: 448
BTH: 448
CTN: 448
Tổng cộng: 1343 Tổng cộng: 1344
Tập rời rạc 2, tên là Disc3cIM2 (dùng phương pháp tiền xử lý Resample), có đặc điểm như sau:
Bảng 4.8: Tập dữ liệu Disc3cIM2.
Dữ liệu chưa cân đối Dữ liệu đã tái cân đối
TN: 200
BTH: 171
CTN: 972
TN: 439
BTH: 438
CTN: 465
Tổng cộng: 1343 Tổng cộng: 1342
Tập liên tục chuẩn hóa 1, tên là Norm3cIM1 (dùng phương pháp tiền xử lý
SpreadSubsample), có đặc điểm như sau:
Bảng 4.9: Tập dữ liệu Norm3cIM1.
Dữ liệu chưa cân đối Dữ liệu đã tái cân đối
TN: 200
BTH: 171
CTN: 972
TN: 448
BTH: 448
CTN: 448
Tổng cộng: 1343 Tổng cộng: 1344
Tập liên tục chuẩn hóa 2, tên là Norm3cIM2 (dùng phương pháp tiền xử lý
Resample), có đặc điểm như sau:
Bảng 4.10: Tập dữ liệu Norm3cIM2.
Dữ liệu chưa cân đối Dữ liệu đã tái cân đối
TN: 200
BTH: 171
CTN: 924
TN: 454
BTH: 427
CTN: 462
Tổng cộng: 1343 Tổng cộng: 1343
Sau đĩ chúng tơi chạy ba giải thuật phân lớp J48, Nạve Bayes và MultilayerPerceptron trên các tập dữ liệu đã tái cân đối này (cũng theo cách đánh giá
10-fold cross-validation) rồi so sánh với các kết quả thu được trong mục 4.2.2.2 bên trên để đánh giá tác dụng của việc tái cân đối vừa thực hiện đối với các giải thuật đó.
Kết quả cũng được trình bày trong Chương 5.