Chương 1: TONG QUAN DE TÀI Trinh bày khái quát các vẫn dé nghiên cứu, các công trình liên quan và định hướng nghiên cứu của khóa luận. * Chương 2: CƠ SỞ LÝ THUYET Trình bày chỉ tiết các khái niệm, cơ sở lý thuyết nền tảng cần thiết để thực hiện khóa luận. * Chương 3: PHƯƠNG PHAP THỰC HIỆN Trình bày chỉ tiết giải pháp được nghiên cứu. * Chương 4: THUC NGHIỆM, DANH GIA VÀ THẢO LUẬN Trinh bày phương pháp thực nghiệm, đánh giá kết quả của mô hình dé xuất.
TỔNG QUAN ĐỀ TÀI Dong thời, hiện thực hoá hệ thông săn tìm mối đe doa được dé cập 6 Chương 3. * Chương 5: KẾT LUẬN VÀ HƯỚNG PHAT TRIỂN Dua ra kết luận về dé tai, dé xuất một số hướng phát triển mỏ rộng cho các nghiên cứu trong tương lai. 10 Chương 2 CƠ SỞ LY THUYET Tóm tắt chương Cơ sở lý thuyết cho khóa luận sẽ được chúng tôi trình bày trong chương này. Cụ thể như sau: Mô hình học máy, Các thuật toán học máy, Explainable Artificial Intelligence.
Cùng với đó là phần mềm độc hại, hệ điều hành Android. Cuối cùng là kiến thức về LIME Framework cũng sẽ được chúng tôi trình bay.1 Mô hình học máy 2.1 Tổng quan Học máy là một dạng trí tuệ nhân tạo (AI) cho phép phần mềm dự đoán kết quả mà không cần lập trình. Nói cách khác, học máy là quá trình tạo ra các thuật toán dự đoán cho những thứ chưa từng thấy trước đây (dữ liệu trong tương lai) bằng cách sử dụng đữ liệu thu được. Thuật toán học máy sử dụng đữ liệu lịch sử làm đầu vào để dự đoán kết quả mới.
Một thuật toán machine learning có: * Dit liệu đầu vào là tập dit liệu huấn luyện (training dataset) » Kết quả đầu ra là 1 mô hình (model). Trong đó model là một thuật toán nhận đầu vào là các dữ liệu mới có cùng định dạng với dữ liệu huấn luyện và đưa ra một dự đoán Một số ứng dụng phổ biến của học máy bao gồm: Hệ thông để xuất (Recommend System), Hệ thông phát hiện bat thường (Anomaly Detection), Hệ thông phát hiện xâm nhập (IDS), phần mềm lọc thư rác (spam email). CƠ SỞ LÝ THUYẾT Các phương pháp học máy cổ điển thường được phân loại dựa trên cách thức thuật toán học để cải thiện độ chính xác của các dự đoán. Có bốn cách tiếp cận chính: * Học có giám sát (Supervised Learning): Thuật toán hoc từ dữ liệu có nhãn để dự đoán các kết quả.
* Học không giám sát (Unsupervised Learning): Thuật toán tìm kiếm những mẫu ẩn trong dữ liệu không có nhãn. * Học bán giám sát (Semi-supervised Learning): Kết hợp học có giám sat và không giám sát để tận dụng cả dữ liệu có nhãn và không có nhãn. * Hoc tăng cường (Reinforcement Learning): Thuật toán học từ tương tác với môi trường, nhận phản hỏi và điều chỉnh hành vi. Lựa chọn phương pháp học máy phù hợp phụ thuộc vào loại dữ liệu mà các nhà khoa học muôn dự đoán và mục tiêu của ứng dung.2 Một số loại học may Học có giám sát (Supervised Machine Learning): Các nhà nghiên cứu cung cấp các thuật toán với dữ liệu huấn luyện được gan nhãn.
Các biến được xác định để tim môi tương quan. Đầu vào và dau ra của thuật toán được chỉ định. Việc gan nhãn và phân lớp giúp xác định thể loại của mỗi dit liệu, như nhị phân (2 lớp) hoặc đa lớp (nhiều lớp). Học bán giám sát (Semi-Supervised Learning): Kết hợp giữa học có giám sát và học không giám sát.
Các nhà khoa hoc dữ liệu cung cấp một thuật toán chủ yêu là dit liệu đào tạo được gan nhãn, nhưng mô hình có thể tự do khám phá dit liệu va phát triển sự hiểu biết của riêng mình. Học không giám sát (Unsupervised Machine Learning): Liên quan đến các thuật toán đào tạo trên dữ liệu không được gán nhãn. Thuật toán quét các tập dữ liệu để tìm kiếm các kết nối có ý nghĩa. Ví dụ về Clustering: Xác định các dữ liệu tương tự nhau, như phân tích lưu lượng truy cập vào một website để tìm các nhóm như Botnet hoặc người dùng thông thường.
Học tăng cường (Reinforcement Learning): Các nhà nghiên cứu sử dụng để dạy máy hoàn thành một quy trình gồm nhiều bước với các quy tắc rõ ràng. Thuật toán được lập trình để hoàn thành một nhiệm vụ, với những tín hiệu tích cực hoặc tiêu cực khi nó tìm ra cách hoàn thành. Thuật toán tự quyết định các bước cần thực hiện dựa trên thử và sai, nhằm hoàn thành tốt một nhiệm vụ thông qua tương tác với môi trường và nhận được phan thưởng.2 Cac thuật toán học máy Học máy (Machine Learning) là một tập con của Trí tuệ nhân tạo (AI), gồm các phương pháp và thuật toán cho phép máy tính tự động học bằng cách sử dụng với model toán học để trích xuất các thông tin hữu ích từ các tập dit liệu lớn. Các thuật toán phổ biến có thể nhắc đến như: Decision Tree (DT), K-Nearest Neigh- bor (KNN), Support Vector Machine (SVM), K-Means Clustering, Artificial Neural Network (ANN), Multilayer Perceptron (MLP), Random Forest (RF).1 Decision Tree Uu diém: Ẩ on x .Ã 22s x soe he z H Ẩ on * Dé hiểu và diễn giải: Dau ra của Decision Tree dưới dang các quy tac dé hiểu và diễn giải.
Không yêu cau quá nhiều tiền xử lý dữ liệu: Decision Tree có thể xử lý trực tiêp các thuộc tính phân loại và sô học. * Hiệu suất tính toán tốt: Thuật toán Decision Tree thường nhanh và hiệu quả. « Có thể xử lý các biến có phân phôi bat ky: Decision Tree không đòi hỏi các giả định về phân phối của biến. * Khả năng xử lý đa chiều: Decision Tree có thể xử lý nhiều biến đầu vào.
Nhược điểm: * Dễ bị quá khớp (overfitting): Decision Tree có thể tạo ra các mô hình rất phức tạp để phù hợp với tập dữ liệu huấn luyện. * Không ổn định: Sự thay đổi nhỏ trong dit liệu huấn luyện có thể dẫn đến thay đổi lớn trong cây quyết định. ° Không hoạt động tốt với các đặc trưng tuyến tinh: Decision Tree thường không hiệu quả với các đặc trưng có mối quan hệ tuyến tính. * Không xử lý tốt các biến liên tục: Decision Tree thường yêu câu các biến đầu vào phải là rời rac.2 Support Vector Machine SVM là thuật toán hoc có giám sát đơn giản có thé sử dụng cho cả việc phân loại và đệ quy, tuy nhiên nó được sử dụng chủ yêu cho mục đích phân loại.
Với ý tưởng siêu mặt phẳng phân chia có lề (margin) lớn nhất trong không gian thuộc tính n 13 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT chiều (n = 2: đường thẳng, n = 3: mặt phẳng), dùng làm giải pháp cho các van dé tuyến tính và phi tuyến tinh. Support Vectors hiểu một cách đơn giản là các đối tượng trên đồ thị tọa độ quan sát, Support Vector Machine là một biên giới để chia hai lớp tốt nhất.1: Support Vector Với các van dé phi tuyên tính, các ham kernel (kernel function) được sử dung: (1) ánh xa 1 vector đầu vào ít chiều vào không gian thuộc tinh nhiều chiều với hàm kernel. (2) sử dụng các support vectors để thu được một mặt phẳng phân chia có lễ lớn nhất, hoạt động như ranh giới để phân loại Margin (Lé) trong SVM là khoảng cách giữa siêu phẳng và hai đôi tượng gần nhất của đôi tượng.
Quan trọng nhất, phương pháp SVM này luôn cô gắng nhân giá trị cudi cùng để bạn có được siêu phẳng có khoảng cách dai nhất giữa hai điểm. Điều này cho phép SVM giảm sự khác biệt của dữ liệu mới được đưa vào. Ưu điểm của SVM » Hiệu suất tốt trong việc xử lý các bài toán phân loại hai lớp, đặc biệt là khi số lượng đặc trưng lớn và dit liệu phi tuyến tính. * Tinh tổng quát cao, có khả năng xử lý với các tập dữ liệu mới chưa từng gặp trước.
CƠ SỞ LÝ THUYẾT Maximum. ¬ //“margin `` éN Hình 2.2: Margin * St dụng một số vector hỗ trợ để xác định đường biên, dẫn đến việc tiêu thu ít bộ nhớ hơn so với các phương pháp khác. * Có khả năng xử lý dữ liệu nhiều chiều (high-dimensional data) và dữ liệu séi (sparse data). Hạn chế * Doi hỏi đặc trưng được chuẩn hoá và tỷ lệ đồng nhất.
¢ Khó khăn trong việc xử lý các tập dữ liệu lón với hiệu năng tính toán cao. * Doi hỏi lựa chọn đúng các tham số và hạt nhân (kernel) phù hợp để đạt được hiệu suât tôt.3 K-Nearest Neighbors K-Nearest Neighbors (KNN): Thuật toán học máy có giám sát don giản sử dung ý tưởng “thuộc tính giỗng nhau” để dự đoán lớp phân loại của dit liệu. * Xác định dữ liệu dựa trên các “hàng xóm” gần giống bằng cách tính toán khoảng cách từ các hàng xóm này * k = số “hàng xóm” cần xem xét * Tham số k ảnh hưởng đến hiệu suất của model * Quá nhỏ: model dé bị overfitting * Quá lón: phân loại sai dữ liệu 15 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Hình 2.3: Mô ta KNN 1ñ rR Uu diém * Có thể xử ly các dit liệu phức tạp: KNN khá hiệu quả với các dữ liệu có nhiều chiều và câu trúc phức tạp.
* Don giản và dé hiểu: KNN là một trong những thuật toán cơ bản và dé hiểu nhất trong học máy. * Không cần giả định về dữ liệu: KNN không đòi hỏi bat kỳ giả định nào về phân phối của dữ liệu. * Hiệu quả với các bài toán phân loại: KNN thường cho kết quả tốt trong các bài toán phân loại. Nhược điểm: * Hiệu suất tính toán thấp: KNN yêu câu tính khoảng cách giữa mẫu cần dự đoán và tat cả các điểm dit liệu, điều này có thể gây ra chỉ phí tính toán cao.
* Khó xử lý dit liệu lớn: Khi kích thước tập dữ liệu lón, KNN trỏ nên kém hiệu quả do phải tính toán khoảng cách với tat cả các điểm dit liệu. CƠ SỞ LÝ THUYẾT * Dễ bị ảnh hưởng bởi các đặc trưng không liên quan: Nếu có các đặc trưng không liên quan, KNN có thể bị ảnh hưởng đáng kể. * Khó xác định giá trị k tối ưu: Việc lựa chọn giá trị k phù hợp là rất quan trọng nhưng không phải lúc nào cũng dễ dàng.4 K-mean clustering K-mean clustering: Một thuật toán phan cum (clustering) phổ biến trong lĩnh vực học máy, học theo dạng không giám sát và xử lý dữ liệu. Nó được sử dụng để phân nhóm các điểm đữ liệu thành các cụm (clusters) dựa trên sự tương tự giữa chúng.