Không có một thuật toán nào là ưu việt hơn so với thuật toán khác trong tất cả các lĩnh vực. Một số hoạt động tốt trong các lĩnh vực này, trong khi một số khác thực hiện tốt hơn ở lĩnh vực khác. Trong luận văn này, các thuật toán học được áp dụng trên dữ liệu huấn luyện để xây dựng các lớp. Hiệu năng của các lớp sẽ được so sánh hay nói cách khác, các hiệu năng của các thuật toán khác nhau trên dữ liệu sẽ được so sánh. Vậy, chỉ số "tốt" của một lớp là gì? Các tính chất mong muốn là chính xác, tổng quát và mức độ tin cậy của dự báo. Ma trận nhầm lẫn đưa ra bốn kết quả khi một lớp được áp dụng trên một tập các trường hợp.
Bảng 1 - Ma trận nhầm lẫn[3] Trong đó:
- : Số lượng các ví dụ thuộc lớp được phân loại chính xác vào lớp . - : Số lượng các ví dụ không thuộc lớp bị phân loại nhầm vào lớp . - 𝑁: Số lượng các ví dụ không thuộc lớp được phân loại chính xác. - 𝑁: Số lượng các ví dụ thuộc lớp bị phân loại nhầm vào các lớp khác . Khi đó độ chính xác Precision đối với lớp :
Chƣơng 4. THỰC NGHIỆM VÀ ĐÁNH GIÁ
Chương này thực hiện xây dựng mô hình dự đoán thuê bao rời mạng với các thuật toán: Cây quyết định C4.5, Naïve Bayes, SVM và Neural Networks. Sau khi lần lượt thực nghiệm xây dựng mô hình với các thuật toán tiến hành đánh giá các thuật toán. Các thực nghiệm được tiến hành với công cụ Weka Explore để lựa chọn thuộc tính và phân lớp dữ liệu thuê bao rời mạng.
4.1.Dữ liệu thực nghiệm
Thuê bao rời mạng là lớp cần quan tâm nhưng nó là lớp thiểu số trong tập dữ liệu. Bởi vậy, phân lớp sẽ đưa ra dự đoán tất cả các trường như các lớp lớn nhất để tối đa hóa độ chính xác phân loại dẫn đến hệ thống dự báo không có giá trị. Để khắc phục vấn đề này, hoặc là tăng lấy mẫu hoặc là giảm lấy mẫu có thể được áp dụng. Áp dụng cách nào phụ thuộc vào bản chất của dữ liệu. Ở đây, trường hợp thuộc về lớp thiểu số được nhân rộng, điều chỉnh sự phân bố lớp với một tỷ lệ mong muốn. Khi thực hiện lấy mẫu, các trường hợp thuộc về lớp lớn bị loại bỏ nhằm giảm bớt sự thiên vị phân phối.
Việc giảm lấy mẫu được sử dụng bởi hai lý do. Đầu tiên là bởi vì WEKA có giới hạn tính toán và chỉ cho phép một số lượng hạn chế của dữ liệu huấn luyện. Thứ hai, tăng lấy mẫu có nghĩa là làm tăng bản sao của các trường do đó nó không cung cấp bất kỳ thông tin mới và nó có thể dẫn đến quá phù hợp.[21]
Trong thực nghiệm này, ban đầu tỉ lệ “churn” so với tổng số các trường hợp trong một tháng khoảng 1%, tức là tỉ lệ “non-churn” chiếm 99%. Thực hiện giảm lấy mẫu trên giữ liệu “non-churn” một cách ngẫu nhiên lần lượt với tỷ lệ (churn /non-churn) lần lượt là 1/10, 1/2 và 1/1.
Để việc thực nghiệm có tính chính xác cao, việc lấy mẫu được tiến hành trên 3 tháng, các trường hợp này được trộn với nhau thành tập dữ liệu huấn luyện. Dữ liệu huấn luyện được chia làm k phần bằng nhau. Sau đó tiến hành đào tạo với k giai đoạn, ở mỗi giai đoạn 1 phần sẽ được lấy ra xác nhận và còn k-1 phần còn lại được sử dụng để đào tạo. Từ mô hình phân lớp đã xây dựng, thực hiện xác nhận trên tập dữ liệu test – là một tập dữ liệu khác mà không giảm lấy mẫu trên tập này.
Hình 16 - Dữ liệu thực nghiệm
Như đã nêu lên trong chương 3(3.2.2) từ các thuộc tính thu thập được ban đầu thực hiện lựa chọn và đánh giá từng thộc tính, thực hiện loại bỏ các thuộc tính có độ chính xác thấp và các thuộc tính có tỉ lệ lỗi cao. Việc thực nghiệm lựa chọn các thuộc tính được thực hiện với công cụ WEKA thu được 17 thuộc tính có tỉ lệ lựa chọn nhiều nhất. Danh sách các thuộc tính được lựa chọn được trình bày tại phụ lục 2 của luận văn.
Sau khi có tập dữ liệu và các thuộc tính, thực hiện rời rạc hóa dữ liệu để thực nghiệm với các thuật toán. Việc rời rạc hóa được tiến hành trên các thuộc tính liên tục. Trong 17 thuộc tính được lựa chọn để phân lớp dữ liệu có 14 thuộc tính tỉ lệ cần rời rạc hóa. Các thuộc tính tỉ lệ này được rời rạc thành 5 phần: 0->19%; 20% ->39%; 40%->59%; 60->79; 80% ->100%. Hình 17 - Dữ liệu rời rạc 0 20000 40000 60000 80000 100000120000140000160000 Training 1/1 Training 1/2 Training 1/10 Testing data
Training 1/1 Training 1/2 Training 1/10 Testing data
Churn 3873 3873 3873 1226
Non-Churn 3873 7746 38730 137101
4.2.Thực nghiệm