Khai phá dữ liệu
Báo cáo thử nghiệm 9 thuật toán phân lớp với các siêu tham số khác nhau (21 mơ hình): - DecisionTreeClassifier - RandomForestClassifier - GradientBoosting - AdaBoost - MLP - LogisticRegression - GNB - SVM - KNeighborsClassifier 3.2. Cài đặt thử nghiệm
3.2.1. Môi trường cài đặt
Công cụ được cài đặt trên môi trường hệ điều hành Windows 10 máy có cấu hình như sau (bảng 3.1):
Bảng 3.1 Bảng yêu cầu chức năng
Phần cứng Phần mềm và môi trường phát triển
CPU Core(TM) i5- HĐH: Windows 10
1135G7 @ 2.40GHz IDE: Spyder Anacoda
RAM 8GB Môi trường: Python 3
SSD 256 GB Thư viện hỗ trợ: Sklearn, Pickle, Pefile
Yêu cầu các phần mềm hỗ trợ (minh họa bảng 3.2)
Bảng 3.2 Bảng các phần mềm hỗ trợ STT Tên Giấy phép Địa chỉ tải về 1 Python 3.8 GPL https://www.python.org /
2 Anacoda Anaconda Inc
https://repo.anaconda.com/archive/Anacond a3-2021.05-Windows-x86_64.exe
3.2.2. Thử nghiệm
Các bước thực hiện
Bước 1: Chạy file Get_benign_file.py. Bước 2: Chạy file Feature_extraction.py. Bước 3: Chạy file Training.py.
Bước 4: Chạy file Savedmodel.py. Bước 5: Chạy Using_model.py.
Phương pháp huấn luyện và mẫu thử nghiệm.
Phương pháp đánh giá: Hold-out method (80% cho Training và 20% cho Testing).
Báo cáo thử nghiệm và đánh giá kết quả sử dụng kết hợp các mơ hình và thuật tốn sau (Hình 3.4):
Hình 3.4 Phương pháp chuẩn hóa, lựa chọn thuộc tính và mơ hình học máy
3.3. Đánh giá kết quả
3.3.1. Đánh giá kết quả sau thực nghiệm
Đánh giá Confusions Matrix.
Cách đơn giản và hay được sử dụng nhất là Accuracy (độ chính xác). Cách đánh giá này đơn giản tính tỉ lệ giữa số điểm được dự đoán đúng và tổng số điểm trong tập dữ liệu kiểm thử.
Accuracy = ��+��
��+��+��+��
Đánh giá Precision và Recall
Trong thực nghiệm đã thực hiện, số lượng các lớp khơng đồng đều, có chút chênh lệch. Với những trường hợp như vậy phép đo khá hiệu quả được sử dụng là Precision - Recall.
Precision = ��
��+��
Recall = ��
��+��
Precision và Recall đều là các số không âm nhỏ hơn hoặc bẳng một.
Precision cao đồng nghĩa với việc độ chính xác của các điểm tìm được là cao. Recall cao đồng đồng nghĩa với việc True Positive Rate cao, tức tỉ lệ bỏ
sót các điểm thực sự positive là thấp. Từ hai đại lượng tính được ta có thể thấy mơ hình phân lớp triển khai được là rất tốt.
Đánh giá F1-score
$F_1$ hay F1-score là harmonic mean của precision và recall. F1 – score có giá trị nằm trong nửa khoảng (0,1]. F1 càng cao, bộ phân lớp càng tốt. Khi cả recall và precision đều bằng 1 (tốt nhất có thể), F1 = 1. 2 1 � = ��������1 � + ������1 hay F1 = 2 1 ��������� +������1 = 2 ���������+��������������� .������
F1-score cao cho thấy chất lượng của mơ hình cao.
Kết quả thử nghiệm với lựa chọn “Không biến đổi dữ liệu và không giảm chiều dữ liệu”