4.2.7. Hàm hợp nhất (FC)
Để cĩ thể kết hợp các kết quả dự đốn của các bộ phân lớp học máy (MLC) khác nhau, cần phải cĩ hàm hợp nhất kết quả dự đốn. Trong học máy, các hàm hợp nhất (Fusion function) phở biến được sử dụng như voting, stacking, bagging và boosting. Nghiên cứu sinh sử dụng Voting cho vấn đề của mình, vì đây là một trong những cách đơn giản nhất để
khơng phải là bộ phân loại học máy thơng thường, mà là bộ phân loại bao bọc cho một tập hợp các bộ phân loại học máy khác nhau được đào tạo và đánh giá song song để khai thác các đặc điểm khác nhau của thuật tốn học máy đĩ. Do đĩ, cĩ thể đào tạo các bộ dữ liệu khác nhau bằng cách sử dụng các thuật tốn học máy và bộ phân loại khác nhau thay vì chỉ sử dụng một thuật tốn học máy duy nhất để dự đốn kết quả cuối cùng. Kết quả cuối cùng của một dự đốn được thực hiện bởi đa số “phiếu bầu” theo hai chiến lược khác nhau là biểu quyết cứng (strategies voting) và biểu quyết mềm (soft voting). Với đặc điểm của biểu quyết mềm là kết hợp giữa nhãn dự đốn và xác suất của nhãn đĩ sẽ đem lại kết quả chính xác hơn so với chỉ sử dụng nhãn trong biểu quyết cứng. Vì vậy, trong chương này nghiên cứu sinh sử dụng biểu quyết mềm với cơng thức:
𝑦̂ = 𝑎𝑟𝑔 max
𝑖 ∑ 𝑤𝑗𝑝𝑖𝑗 𝑚
𝑗=1
(3.5)
Với wj là trọng số của kết quả dự đốn (giá trị p) thuộc bộ phân lớp thứ j.
4.3. Thực nghiệm và đánh giá
4.3.1. Tập mẫu thực nghiệm
Để đánh giá kết quả hoạt động của mơ hình đề xuất, tập dữ liệu chứa 8911 mẫu bao gồm 5023 IoT Botnet và 3888 mẫu lành tính đã được thu thập và sử dụng cho thực nghiệm. Mơ tả về các mẫu trong tập dữ liệu được mơ tả trong Bảng 4.2.
Bảng 4.2 Mơ tả chi tiết về Dataset
Kiến trúc CPU Số lượng Mã độc Bashlite Mã độc Mirai Mã độc khác Lành tính ARM 2279 2786 1510 727 3888 MIPS 2811 Intel 80386 2058 PowerPC 918 x86-64 845
4.3.2. Triển khai thử nghiệm
Thử nghiệm được tiến hành trên máy chủ với cấu hình CPU Intel Xeon E5-2689 2.6 GHz, RAM 32 GB. Mơi trường ảo hĩa V-Sandbox được cài đặt theo mã nguồn được nghiên cứu sinh chia sẻ tại Github [100]. Các thuật tốn học máy đơn lẻ được thử nghiệm như SVM, KNN, Decision Tree, Random Forest,… được cài đặt thơng qua ngơn ngữ
Python với thư viện Scikit-learn (Sklearn) [113]. Các tham số cụ thể của các thuật tốn học máy được sử dụng trong quá trình thực nghiệm được mơ tả như trong Bảng 4.3.
Bảng 4.3 Các tham số thuật tốn học máy được sử dụng
Thuật tốn Tham số Các giá trị tham số sử dụng
KNN
n_neighbors 10; 100; 1000
weights “uniform”; “distance”
n_jobs -1
Decision Tree
randoom_state 42
criterion “gini”; “entropy”
splitter “best”; “random”
Random Forest n_estimators 10; 100; 1000 random_state 42 n_jobs -1 SVM random_state 42 probability True C np.logspace(-1, 1, 3) gama np.logspace(-1, 1, 3)
4.3.3. Kết quả thử nghiệm
Nghiên cứu sinh đã sử dụng các thuật tốn học máy phở biến như SVM, KNN, Decision Tree, Random Forest và hàm hợp nhất Voting, Logistic Regression để đánh giá hiệu quả của mơ hình học máy cộng tác đề xuất. Kết quả huấn luyện và đánh giá các thuật tốn học máy đơn lẻ với các đặc trưng đầu vào được mơ tả trong Bảng 4.4. Kết quả dự đốn của các mơ hình học máy đơn lẻ này được kết hợp thơng qua hàm hợp nhất “Voting” (và sử dụng thêm hàm “Logistic Regression” để so sánh). Tởng cộng cĩ 64 cách kết hợp 4 thuật tốn học máy phở biến nêu trên. Cĩ 128 kết quả thử nghiệm đánh giá độ chính xác của việc phát hiện mã độc IoT Botnet cho mơ hình đề xuất được mơ tả trong Hình 4.12.
Từ kết quả thử nghiệm này, hàm kết hợp “Voting” cho thấy hiệu quả vượt trội so với hàm “Logistic Regression” và bộ ba thuật tốn học máy đơn lẻ KNN (đối với dữ liệu luồng mạng) + Random Forest (đối với dữ liệu sử dụng tài nguyên thiết bị) + KNN (đối với dữ liệu lời gọi hệ thống) cho kết quả tốt nhất với độ chính xác ACC = 99.37% và
FPR = 1,94%. So sánh với kết quả phát hiện mã độc IoT Botnet khi sử dụng các thuật tốn học máy đơn lẻ kể trên với các đặc trưng dữ liệu hành vi riêng rẽ của mã độc đã cho thấy sự phù hợp khi kết hợp các thuật tốn này với nhau trong mơ hình cộng tác. Sự kết hợp này đem lại hiệu quả phát hiện mã độc với độ chính xác cao thể hiện ở các độ đo ACC = 99.37%, ROC AUC =0.9896, FPR = 1,94% vượt trội hơn các mơ hình đơn lẻ mặc dù chỉ sử dụng một phần dữ liệu hành vi cần quan sát, chưa cần mã độc thực hiện đầy đủ các hành vi. Bên cạnh đĩ, việc kết hợp các thuật tốn học máy với các nguồn dữ liệu hành vi khác nhau của tệp đầu vào đã hỗ trợ, bở khuyết cho cho các thuật tốn trong việc đưa ra đánh giá xem tệp đầu vào cĩ thực sự là mã độc hay khơng. Minh chứng cho điều này là tỉ lệ FPR rất thấp với giá trị là 1.94%.
Tập giá trị trọng số của hàm biểu quyết mềm “Voting” là (0.33; 0.32; 0.35) tương ứng với các đầu ra dự đốn của mơ hình phát hiện dựa trên luồng mạng, thơng tin sử dụng tài nguyên thiết bị và lời gọi hệ thống. Với các giá trị trọng số kể trên cho thấy, các dữ liệu đặc trưng đầu vào mà NCS lựa chọn đều đĩng vai trò quan trọng trong quá trình xác định một tập tin cĩ phải là mã độc hay khơng. Nếu một trong các dữ liệu đặc trưng mà NCS đã lựa chọn là khơng quan trọng, gây nhiễu trong việc đánh giá tập tin mã độc thì trọng số của dữ liệu đặc trưng đĩ sẽ thấp hơn hẳn so với các trọng số cịn lại. Giá trị các trọng số trong trường hợp này khơng sai khác nhau quá nhiều cũng chỉ ra rằng cả 3 đặc trưng đầu vào này là cần thiết, khơng thể thiếu đối với mơ hình đề xuất. Với ba mơ hình học máy đơn lẻ đã chọn, nghiên cứu sinh đã điều chỉnh các thơng số của mơ hình và thử nghiệm trên tồn bộ Dataset, đánh giá mơ hình dựa trên các giá trị đo được. Kết quả đánh giá mơ hình đề xuất trên Dataset được trình bày trong Bảng 4.5. Ngồi ra, tác giả cũng đánh giá hiệu quả phát hiện của phương pháp đề xuất thơng qua các mẫu khơng cĩ sẵn trong Dataset. Kết quả phát hiện các mẫu khơng cĩ trong Dataset được mơ tả trong Bảng 4.6.