1. Trang chủ
  2. » Luận Văn - Báo Cáo

ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin

48 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng Dụng Machine Learning Để Phân Tích Luồng Dữ Liệu Không Tin Cậy Trong Lĩnh Vực An Toàn Thông Tin
Tác giả Phạm Tấn Phong
Người hướng dẫn TS. Lê Trọng Ngọc
Trường học Trường Đại Học Công Nghiệp Thành Phố Hồ Chí Minh
Chuyên ngành Khoa Học Máy Tính
Thể loại luận văn thạc sĩ
Năm xuất bản 2024
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 48
Dung lượng 1,98 MB

Cấu trúc

  • 1. Đặt vấn đề (13)
  • 2. Mục tiêu nghiên cứu (14)
  • 3. Đối tượng và phạm vi nghiên cứu (15)
  • 4. Cách tiếp cận và phương pháp nghiên cứu (15)
  • 5. Y nghĩa thực tiễn của đề tài (0)
  • CHƯƠNG 1 TỎNG QUAN cơ SỞ LÝ THUYẾT (0)
    • 1.1 Giới thiệu bài toán phân tích dữ liệu không tin cậy (0)
    • 1.2 Giới thiệu về kỹ thuật học máy (19)
    • 1.3 Các phương pháp chuẩn hóa dữ liệu (0)
    • 1.4 Hàm kích hoạt (23)
  • CHƯƠNG 2 ỨNG dụng machine learning trong phân tích LUỒNG Dữ LIỆU KHÔNG TIN CẬY (26)
    • 2.1 Phân tích các kỹ thuật học máy đã được đề xuất (26)
    • 2.2 Máy học cực trị (27)
    • 2.3 Xây đựng mô hình Extreme Learning Machine (0)
  • CHƯƠNG 3 THỰC NGHỆM VÀ ĐÁNH GIÁ (31)
    • 3.1 Phân tích bộ dữ liệu (31)
    • 3.2 Các phương pháp đánh giá hiệu suất mô hình (0)
    • 3.3 Công cụ và môi trường (38)
    • 3.4 Phương thức (38)
      • 3.4.1 Tiền dữ lý dữ liệu (0)
      • 3.4.2 Xử lý cân bằng mất cân bằng dữ liệu (0)
      • 3.4.3 Thực nghiệm và Đánh giá kết quả (39)
  • TÀI LIỆU THAM KHẢO (47)
  • PHỤ LỤC (0)

Nội dung

TÊN ĐÈ TÀI:MSHV:Nơi sinh: .Mã ngành: 8480101ứngDụng Machine Learning Đe Phân Tích Luồng Dữ Liệu KhôngTin Cậy Trong Lĩnh Vực An Toàn Thông Tin.NHIỆM VỤ VÀ NỘI DƯNG:Tìm hiểu về luồng dữ li

Mục tiêu nghiên cứu

Mụctiêu nghiên cứu của đề tài “ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin”, nhằm tìm hiểu về các vấn đề liên quan đến luồng dữ liệu không tin cậy, nghiên cứu ứng dụng các phương pháp học máy trong việc phát hiện sử dụng trái phép (misuse detection) và phát hiện bất thường (anomaly detection) cho luồng dữ liệu không tin cậy trong không gian mạng Đồng thời, đề xuất một phương pháp học nhanh mang lại hiệu quả cao(Extreme Learning Machine - ELM) góp phần cải thiện hiệu quảvề mặt dữ liệu và thời gian, phù hợp với tình hình thực tế.

Cách tiếp cận và phương pháp nghiên cứu

Phương pháp nghiên cứu dựa trên nguồn tài liệu: Thu thập, phân tích, xử lý thông tin thông qua các tài liệu như sách, báo, tạp chí, đã in ấn hoặc công bố trên internet liên quan đến đềtài.

Phương pháp nghiên cứu dựa trên thực nghiệm: Thông qua việc thử nghiệm xây đựng mô hình, đánh giákết quả.

Báo cáo định kỳ cho giảng viên hướng dẫn, sửa chữanghiên cứu theo hướng dẫn của giảng viên hướng dẫn.

5 Ý nghĩa thực tiễn của đề tài Đe tài luận văn mang lại nhiều ý nghĩa quan trọng trong lĩnh vực khoahọc, đặc biệt trong việc pháttriển các phương pháp mới để phân loại luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin Dựa trên nền tảng của các công trình nghiên cứu trước đây, luận văn không chỉ mở rộng hiểu biết về các thách thức và giải pháp liên quan đến việc xử lý luồng dữ liệu không tin cậy và tạo tiền đề cho việc nghiên cứu và dụng học máytrong việc xác định và phân loại luồng dữ liệu không tin cậy Bên cạnh luận văn cho thấy việc sử dụng mạng no rơn một lớp vẫn có nhiều ưu điểm vượt trội hơn mạng nơ-rơn học sâu (DNN) và manglại hiệu quả cao trong việc phân tíchdữ liệu trong lĩnh vực an toàn thông tin. về mặt ứng dụng thực tiễn, luận văn đề xuất một phương pháp học nhanh và hiệu quả dựa trên ý tưởng Extreme learning machine (ELM) Điều này giảm bớt sự phụ thuộc vào lượng lớn dữ và thời gian huấn luyện dài, một yếu tố rất quan trọng phù hợp với tình hình thực tế, nơi dữ liệu thay đổi liên tục và đòi hỏi sự linh hoạt trong việc phát hiện luồng dữ liệu không tin cậy, cũng như áp dụng vào ứng dụng thực tế yêu cầu thời gian thực.

CHƯƠNG 1 TỔNG QUAN cơ SỞ LÝ THUYẾT

1.1 Giới thiêu bài toán phân tích luồng dữ liệu không tin cậy

Phân tích luồng dữ liệu không tin cậy (untrusteddata) đang ngày càng trở nên quan trọng trong nhiều lĩnhvực và ứng dụng, đặc biệt trong lĩnh vực Antoàn Thông tin Luồng dữ liệu không tin cậy, thu thập được từ các cuộc tấn công mạng liên tục trong từng ngày và từng giờ hay các thông tin mã độc được truyền tải trong môi trườngmạng Trong ứng dụngwebsite, luồng dữ liệu không tin cậy thường thể hiện thông qua các yêu cầu HTTP/HTTPS, bao gồm tham số URL, trường dữ liệu của biểu mẫu, tiêu đề hoặc thông tin nhạy cảm khác Những dữ liệu này dễ bị kẻ tấn công canthiệp và thaotúng để chèn thêm cácthông tin mã độc, theo một cuộc khảo sát vào năm 2019 cho thấy 9trong 10 ứng dụng website dễ bịtấn công và 68% ứng dụng vi phạm thông tin nhạy cảm (data breaches) [4], dẫn tới các thách thức trong việc phát hiện sử dụng trái phép (misuse detection) và phát hiện bất thường (anomaly detection) trongmôi trường không gian mạng [5].

WSbSt Sỉ^na+ure ĩn+ruder Oe+eílíon

Example; if (src_ip == dst_ip &&?src_prt == dst_prt) then “landattack” w

Can't- de+ec+ neu ai+acks

Hình 1.1 Cấu trúccủa mô hình mạngnơ-ron [6]

Các phương pháp truyền thống trong việc phát hiện sử dụng trái phép thường tập trung vào việc phân loại và kiểm tra cấutrúc gói tin của dữ liệu không đáng tin cậy để xác định mức độ an toàn Một trong những phương pháp quan trọng là kiểm tra tính hợp lệ của dữ liệu không đángtin cậy thông qua việc áp dụng quy tắc kiểm tra (validation rules) hoặc so sánh dữ liệu với các mẫu dữ liệu không an toàn đã biết trước [6], Những quy tắc này được thiết lập để đánh giá sự hợp lệ hoặc không hợp lệ của dữliệu Tuy nhiên, phương pháp này thường không đủ linh hoạt để ứng phó với tất cả các tình huống, vì mỗi ứng dụng có thể sử dụng dữ liệu không đáng tin cậy theo nhiều cách khác nhau, với cáchình thức tấn công mới chưa được biết đến, kỹ thuật này sẽ dẫn đến việc báo động giả, và làm giảm đi sự ổn định của hệ thống [7].

Hình 1.2 Minh họa tấn công botnet Để phát hiện các vấn đề bất thường, ngoài phương pháp phân tích gói tin, cần kết hợp tận dụng các kỹ thuật phân tích tần suất, lưu lượng để đánh giá mức độ an toàn của dữ liệu [8] Ví dụ, trong trường hợp tấn công từchối dịch vụ (Ddos), việctheo dõi tần suất, lưu lượng các gói tin được gửi trong một khoảng thời gian ngắn có thể tiết lộ dấu hiệu của hệ thống đang bị tấn công từ chối địchvụ Tuy nhiên, các cuộc tấn công sẽ thay đổi theo thời gian, tạo ra nhiều biến thể mới và làm mờ đi các dấu hiệu của bất thường của hành vi, từ đó gây ra sai lệnh khi đánh giá luồng dữ liệu không tin cậy [7] Việc phân tích luồng dữ liệu không tin cậy bằng phương pháp truyền thống còn rấthạn chế, mất quá nhiều nhiều thời gian và tài nguyên, bên cạnh việc ứng dụng các phương pháp mói như kỹ thuật học máy còn chưa được nghiên cứu và tìm hiểu có hệ thống, dù đã đạt nhiều thành công trong nhiều lĩnhvực khác nhau [2].

1.2 Giới thiệu về kỹ thuật học máy

Trong lĩnh vực trí tuệ nhân tạo, học máy (machinelearning) là một lĩnh vực nghiên cứu và ứng dụng chủyếu tập trungvàoviệc xây dựng và phát triển các mô hình và thuật toán để giúp máy tính tự động học từ dữ liệuvà cải thiện hiệu suất của chúng theo thời gian Học máy đã đóng vai trò quan trọng trong nhiều lĩnh vực, từ nhận dạng giọng nói đến phântíchhình ảnhvà dựbáo tài chính.

Hỉnh 1.3 Cấutrúc của mô hình mạng nơ-ron [9]

Cấu trúc phổ biến của học máy là sử dụng mạng nơ-ron nhân tạo, được lấy cảm hứng từ hệ thần kinh của con người, để xử lý và phântích dữ liệu Các thành phần cơ bản của mạng nơ-ron trong học máy bao gồm các nơ-ron, các kết nối (còn được gọi là synapses), trọng số, độ chệch, hàm lan truyền và quy tắc học Các nơ-ronnày sẽ nhận đầu vào từ các nơ-ron khác, xử lý thông qua một hàm kích hoạt, và sau đó truyền đầu ra đến các nơ-ron tiếp theo Những nơ-ron này được tổ chức thành các lớp trongmạng nơ-ron, với baloại lớp chính: lớp đầu vào, lớp ẩn và lớp đầura Lớp đầu vào có nhiệmvụtiếpnhận dữ liệu và chuyển nó qua các phần cònlại của mạng.

Mô hình mạng nơ-ron sâu (Deep Neural Network - DNNs), có khả năng học sâuvà xử lý cácvấn đề không tuyến tínhthông qua việc tích hợp hàng loạt cáclớp ẩn Mỗi lớp ẩn trong kiến trúc đa lớp này đều có khả năng học và trích xuất các đạc trưng từ dữ liệu một cách tự động, từ đó giúp DNNs nắm bắt được cấu trúc vàmối quan hệ phức tạp giữa các phần tử dữ liệu Các thuật toán huấnluyện phổ biến thường dựa trên việc sử dụng kỹthuật giâm gradient, trong đó điểnhìnhlàthuật toán lan truyền ngược và các cải tiến Hạn che của các thuật toán này là chậm, tối ưu cục bộ, quá khớp dữ liệu (overfitting) dẫn đến không có khả năng tổng quáthóa, Thời gian huấnluyện lớnhơn khi số lớp ẩn nhiều hơn. input layer hidden layer 1 hidden layer 2

Hình 1.4 Sơ đồ mạng nơ-ron sâu, nhiều lớp [ 10]

Tuy nhiên, sự phức tạp không luôn đồng nghĩa với hiệu quả tối ưu Trong nhiều hoàn cảnh, mô hình một lớp, hoặc perceptron đơn lớp được giới thiệu bởi Frank Rosenblatt vào năm 1957 lại thể hiện được sức mạnh không ngờ, Frank Rosenblatt chứng minhmạng nơ-ron truyền thẳngmột lớp ẩn có thể xấp xỉ hàm bất kỳ nếuhàm kích hoạt được chọn phù hợp Được coi là hình thức nguyên thủy nhất của mạng nơ-ron, perceptrons đơn lớp chỉbao gồm một lớp đầuvào và mộtnút đầura, loại bỏ sự cần thiết của các lớp ẩn Sựgiản lược nàymang lại lợi ích không chỉvề mặt tính toán, mà còn trong việc giảnggiải các quyếtđịnh dựa trên mô hình, điều này là cực kỳ có giá trị trong các bài toánphân loại tuyến tính Thêm vào đó, perceptrons đơn lớp còn được đánh giá cao vì khả năng học tập nhanh chóng của chúng, cấu trúc thuần túy và ít tham số hóa của mô hình này cho phép nó hội tụ một cách nhanh chóng tới lời giải tối ưu, là một yếu tố đáng kể trong việc lựa chọn thuật toán cho các vấn đề cần giải quyết một cách mau lẹ Vì thế, mô hình đơn lóp vẫn duy trì một vị trí không thể thay thế trong lĩnhvực giáo dục, nghiên cứu cơ bản, và ứng dụng thựctiễn, nơi sự đơn giản và minhbạch được ưutiên hơn là sự phức tạp.

Hình1.5 Sơ đồ mạng nơ-ronmột lớp [11]

1.3 Các phương pháp chuân hóa dữ liệu

Chuẩn hóa dữ liệu là một phần quan trọng và không thể thiếu trong quá trình xử lý dữ liệu và huấn luyện mô hình trong lĩnh vực khoa học dữ liệu và học máy Việc hiểuvà áp dụng các phươngpháp chuẩn hóa có thể có ảnh hưởng đáng kể đến hiệu suất củamôhình và đảmbảo tính đáng tin cậy củakết quả phântích.

Hình 1.6 Minh họa chuẩnhóa dữ liệu [12]

Mục tiêu chính của chuẩnhóa dữ liệu làbiến đổi biến số ban đầu thành các biến số mới có thang đo cụ thể hoặc phân phối đặc biệt Việc này giúp cải thiện hiệu suất của các thuật toán học máy vàthống kê, đặc biệt là trong các trường hợp mà biến có thang đo khác nhau hoặc có phân phốikhông đồngnhất.

Một trong những phương pháp chuẩn hóa dữ liệu phổ biến nhất là Min-Max Scaling, cònđượcgọi là Normalization Với phươngpháp này, giá trị của biến được biếnđổi sao chochúng thuộc khoảng [0, 1], Công thức chuẩn hóaMin-Max là: y X ~Xmin /1 IX

- X là giá trị ban đầu của biến.

- Xnùn là giá trị nhỏ nhất của biến trong tập dữliệu.

- Xmax là giá trị lớn nhất của biến trong tập dữliệu.

Loại chuẩnhóa này thường được sử dụng khi bạn muốn giữ các giá trị ban đầu của biến và đảm bảorằng chúng nam trong khoảng cố định.

Standardization, hay còn gọi là Z-score Scaling, là một phương pháp khác, biến đổi giá trị của biến số sao cho chúng có giá trị trung bình là 0 và độ lệch chuẩn là 1. Standardization thường được sử dụng trong các thuật toán dựa trên khoảng cách nhưclustering (K-means)và phân tích thành phần chính (PCA).

- X làgiátrị ban đầu của biến. mean(X) là giá trị trung bình (mean) củabiến X, tức là trung bình của tất cả các giátrị của biến. std(X)là độ lệch chuẩn (standard deviation) của biến X, đo lường sự biến đổi trong dữ liệu.

Ngoài ra, Robust Scaling là một phương pháp khá bền với giá trị ngoại lai, bằng cách sử dụng median và khoảng giữa Điều này giúp giảm tác động của các giá trị ngoại lai lên quá trình chuẩn hóa.

- X làgiátrị ban đầu của biến. median(X) là giá trị trung vị (median) của biến X, tức làgiá trị nằm ở giữa khi dữ liệu được sắp xếp theo thứ tự.

IQR(X) là khoảng giữa phần tư thứ 75 và phần tư thứ 25 của dữ liệu, được gọi là Interquartile Range.

TỎNG QUAN cơ SỞ LÝ THUYẾT

Giới thiệu về kỹ thuật học máy

Trong lĩnh vực trí tuệ nhân tạo, học máy (machinelearning) là một lĩnh vực nghiên cứu và ứng dụng chủyếu tập trungvàoviệc xây dựng và phát triển các mô hình và thuật toán để giúp máy tính tự động học từ dữ liệuvà cải thiện hiệu suất của chúng theo thời gian Học máy đã đóng vai trò quan trọng trong nhiều lĩnh vực, từ nhận dạng giọng nói đến phântíchhình ảnhvà dựbáo tài chính.

Hỉnh 1.3 Cấutrúc của mô hình mạng nơ-ron [9]

Cấu trúc phổ biến của học máy là sử dụng mạng nơ-ron nhân tạo, được lấy cảm hứng từ hệ thần kinh của con người, để xử lý và phântích dữ liệu Các thành phần cơ bản của mạng nơ-ron trong học máy bao gồm các nơ-ron, các kết nối (còn được gọi là synapses), trọng số, độ chệch, hàm lan truyền và quy tắc học Các nơ-ronnày sẽ nhận đầu vào từ các nơ-ron khác, xử lý thông qua một hàm kích hoạt, và sau đó truyền đầu ra đến các nơ-ron tiếp theo Những nơ-ron này được tổ chức thành các lớp trongmạng nơ-ron, với baloại lớp chính: lớp đầu vào, lớp ẩn và lớp đầura Lớp đầu vào có nhiệmvụtiếpnhận dữ liệu và chuyển nó qua các phần cònlại của mạng.

Mô hình mạng nơ-ron sâu (Deep Neural Network - DNNs), có khả năng học sâuvà xử lý cácvấn đề không tuyến tínhthông qua việc tích hợp hàng loạt cáclớp ẩn Mỗi lớp ẩn trong kiến trúc đa lớp này đều có khả năng học và trích xuất các đạc trưng từ dữ liệu một cách tự động, từ đó giúp DNNs nắm bắt được cấu trúc vàmối quan hệ phức tạp giữa các phần tử dữ liệu Các thuật toán huấnluyện phổ biến thường dựa trên việc sử dụng kỹthuật giâm gradient, trong đó điểnhìnhlàthuật toán lan truyền ngược và các cải tiến Hạn che của các thuật toán này là chậm, tối ưu cục bộ, quá khớp dữ liệu (overfitting) dẫn đến không có khả năng tổng quáthóa, Thời gian huấnluyện lớnhơn khi số lớp ẩn nhiều hơn. input layer hidden layer 1 hidden layer 2

Hình 1.4 Sơ đồ mạng nơ-ron sâu, nhiều lớp [ 10]

Tuy nhiên, sự phức tạp không luôn đồng nghĩa với hiệu quả tối ưu Trong nhiều hoàn cảnh, mô hình một lớp, hoặc perceptron đơn lớp được giới thiệu bởi Frank Rosenblatt vào năm 1957 lại thể hiện được sức mạnh không ngờ, Frank Rosenblatt chứng minhmạng nơ-ron truyền thẳngmột lớp ẩn có thể xấp xỉ hàm bất kỳ nếuhàm kích hoạt được chọn phù hợp Được coi là hình thức nguyên thủy nhất của mạng nơ-ron, perceptrons đơn lớp chỉbao gồm một lớp đầuvào và mộtnút đầura, loại bỏ sự cần thiết của các lớp ẩn Sựgiản lược nàymang lại lợi ích không chỉvề mặt tính toán, mà còn trong việc giảnggiải các quyếtđịnh dựa trên mô hình, điều này là cực kỳ có giá trị trong các bài toánphân loại tuyến tính Thêm vào đó, perceptrons đơn lớp còn được đánh giá cao vì khả năng học tập nhanh chóng của chúng, cấu trúc thuần túy và ít tham số hóa của mô hình này cho phép nó hội tụ một cách nhanh chóng tới lời giải tối ưu, là một yếu tố đáng kể trong việc lựa chọn thuật toán cho các vấn đề cần giải quyết một cách mau lẹ Vì thế, mô hình đơn lóp vẫn duy trì một vị trí không thể thay thế trong lĩnhvực giáo dục, nghiên cứu cơ bản, và ứng dụng thựctiễn, nơi sự đơn giản và minhbạch được ưutiên hơn là sự phức tạp.

Hình1.5 Sơ đồ mạng nơ-ronmột lớp [11]

1.3 Các phương pháp chuân hóa dữ liệu

Chuẩn hóa dữ liệu là một phần quan trọng và không thể thiếu trong quá trình xử lý dữ liệu và huấn luyện mô hình trong lĩnh vực khoa học dữ liệu và học máy Việc hiểuvà áp dụng các phươngpháp chuẩn hóa có thể có ảnh hưởng đáng kể đến hiệu suất củamôhình và đảmbảo tính đáng tin cậy củakết quả phântích.

Hình 1.6 Minh họa chuẩnhóa dữ liệu [12]

Mục tiêu chính của chuẩnhóa dữ liệu làbiến đổi biến số ban đầu thành các biến số mới có thang đo cụ thể hoặc phân phối đặc biệt Việc này giúp cải thiện hiệu suất của các thuật toán học máy vàthống kê, đặc biệt là trong các trường hợp mà biến có thang đo khác nhau hoặc có phân phốikhông đồngnhất.

Một trong những phương pháp chuẩn hóa dữ liệu phổ biến nhất là Min-Max Scaling, cònđượcgọi là Normalization Với phươngpháp này, giá trị của biến được biếnđổi sao chochúng thuộc khoảng [0, 1], Công thức chuẩn hóaMin-Max là: y X ~Xmin /1 IX

- X là giá trị ban đầu của biến.

- Xnùn là giá trị nhỏ nhất của biến trong tập dữliệu.

- Xmax là giá trị lớn nhất của biến trong tập dữliệu.

Loại chuẩnhóa này thường được sử dụng khi bạn muốn giữ các giá trị ban đầu của biến và đảm bảorằng chúng nam trong khoảng cố định.

Standardization, hay còn gọi là Z-score Scaling, là một phương pháp khác, biến đổi giá trị của biến số sao cho chúng có giá trị trung bình là 0 và độ lệch chuẩn là 1. Standardization thường được sử dụng trong các thuật toán dựa trên khoảng cách nhưclustering (K-means)và phân tích thành phần chính (PCA).

- X làgiátrị ban đầu của biến. mean(X) là giá trị trung bình (mean) củabiến X, tức là trung bình của tất cả các giátrị của biến. std(X)là độ lệch chuẩn (standard deviation) của biến X, đo lường sự biến đổi trong dữ liệu.

Ngoài ra, Robust Scaling là một phương pháp khá bền với giá trị ngoại lai, bằng cách sử dụng median và khoảng giữa Điều này giúp giảm tác động của các giá trị ngoại lai lên quá trình chuẩn hóa.

- X làgiátrị ban đầu của biến. median(X) là giá trị trung vị (median) của biến X, tức làgiá trị nằm ở giữa khi dữ liệu được sắp xếp theo thứ tự.

IQR(X) là khoảng giữa phần tư thứ 75 và phần tư thứ 25 của dữ liệu, được gọi là Interquartile Range.

Hàm kích hoạt (activation function) [13]trong mạng nơ-ron nhân tạo là một thành phần quan trọng, quyết định cách một nơ-ron nhân tạo xử lý đầu vào và tạo ra đầu ra, tạo ra một mô hình phi tuyến tính để có khả năng học và phân tích các dữ liệu phức tạp Có nhiều loại hàm kích hoạt, mỗi loại có đặc điểm và ứng dụng riêng.Trong luận văn này chúng tôi tập trung tìm hiểu cáchàm kích hoạt sau:

Hình 1.7 Minh họa hàm Sigmoid

Hàm Sigmoid nhận giá trị đầu vào là một số thực và biến đổi đầu vào thành giá trị trong khoảng (0,1), thường được sử dụng trong các mô hình phân loại nhị phân. ơ(x) = 1 l+e“x (1-4)

Hàm tanh(Hyperbolic Tangent) nhận giá trị đầu vào làmột số thực và biến đổi giá trị trong khoảng (-1,1), cung cấp phân phối đầu racân đối hơn so với hàm Sigmoid. tanh(x) = —^~ (1-5)

Hình 1.9 Minh họa hàm ReLu

Hàm ReLU (RectifiedLinear Unit) được sử dụng rất phổ biến trong nhữngnăm gần đây, đặc biệt trong các mạng nơ-ron sâu Giúp giảm vấn đề biến mất gradient và tínhtoánhiệu quả hơn. f(x) = max(0,x) (1-6)

Hình 1.10 Minh họa hàm Leaky Relu

Leaky ReLU là cải tiến của ReLU, cho phép một lượng nhỏ gradient khi đầu vào âm, giảmkhả năng "chết" củanơ-ron. f(x) = l(x < o)(ưx) + l(x > 0)(x), với a lả hằng sồ (1-7)

Hàm kích hoạt

Hàm kích hoạt (activation function) [13]trong mạng nơ-ron nhân tạo là một thành phần quan trọng, quyết định cách một nơ-ron nhân tạo xử lý đầu vào và tạo ra đầu ra, tạo ra một mô hình phi tuyến tính để có khả năng học và phân tích các dữ liệu phức tạp Có nhiều loại hàm kích hoạt, mỗi loại có đặc điểm và ứng dụng riêng.Trong luận văn này chúng tôi tập trung tìm hiểu cáchàm kích hoạt sau:

Hình 1.7 Minh họa hàm Sigmoid

Hàm Sigmoid nhận giá trị đầu vào là một số thực và biến đổi đầu vào thành giá trị trong khoảng (0,1), thường được sử dụng trong các mô hình phân loại nhị phân. ơ(x) = 1 l+e“x (1-4)

Hàm tanh(Hyperbolic Tangent) nhận giá trị đầu vào làmột số thực và biến đổi giá trị trong khoảng (-1,1), cung cấp phân phối đầu racân đối hơn so với hàm Sigmoid. tanh(x) = —^~ (1-5)

Hình 1.9 Minh họa hàm ReLu

Hàm ReLU (RectifiedLinear Unit) được sử dụng rất phổ biến trong nhữngnăm gần đây, đặc biệt trong các mạng nơ-ron sâu Giúp giảm vấn đề biến mất gradient và tínhtoánhiệu quả hơn. f(x) = max(0,x) (1-6)

Hình 1.10 Minh họa hàm Leaky Relu

Leaky ReLU là cải tiến của ReLU, cho phép một lượng nhỏ gradient khi đầu vào âm, giảmkhả năng "chết" củanơ-ron. f(x) = l(x < o)(ưx) + l(x > 0)(x), với a lả hằng sồ (1-7)

ỨNG dụng machine learning trong phân tích LUỒNG Dữ LIỆU KHÔNG TIN CẬY

Phân tích các kỹ thuật học máy đã được đề xuất

Gần đây, sự gia tăng trong việc ứng dụng các thuật toán machine learning vào lĩnh vực an toàn thông tin đã tạo ra một làn sóng nghiên cứu mới, với nhiều công trình đóng góp quan trọng Đáng chú ý, công trình của Alshammari và Aldribi [1], công bố vào năm 2021, đã khai thác sức mạnh của mạng Neural Networks để phân tích luồng dữ liệu không tin cậy Mặc dù kỹ thuật này cung cấp khả năng phát hiện chính xác cao, điểm yếu chính của nó nằm ở sự phụ thuộc vào dữ liệu huấn luyện cực kỳ đa dạng và lớn, một điều không luôn luôn khả thi trong môi trường an ninh thực tế [14]

Hình 2.1 Minh họahọc máy trong phân loại luồng dữ liệu không tin cậy [14]

Trong một nghiên cứu khác, Fernandez và Xu [2] đãtận dụng sức mạnh của học sâu để phát hiện các biến thể bất thường từ dữ liệu an ninh Công trình của họ nổi trội nhờ khả năng trích xuất đặc trưng một cách tự động, giảm thiểu nhu cầu về sự can thiệp của con người Tuy nhiên, nó cũng đòi hỏi tài nguyên tính toán lớn và thời gian huấn luyện dài, điều này gây khó khăn cho việc triển khai nhanh chóng trong Đối với công trình của Peng et al vào năm 2020 [3], đã tiếp cận vấn đề bằng cách áp dụng thuật toán cây quyết định cho hệ thống phát hiện xâm nhập Cách tiếp cận này cung cấp một sự minh bạch và khả năng giải thích cao cho các quyết định của môhình, đó là những yếu tố quan trọng trong việc xâydựng lồng tin và hiểu biết về các quy trình tự động Tuy nhiên, phưong pháp này gặp hạn chế trong việc thích nghi với các mô hình tấn công đang phát triển và dữ liệu thay đổi liên tục, yêu cầu sự cập nhật và điều chỉnh liên tục.

Các phưong pháp trên cho thấy đạt được nhiều kết quả cao, nhưng đòi hỏi có một bộ dữ lớn trong quá khứ và thời gian huấn luyện lâu Nhưng trong thực tế các cuộc tấn công diễn ra nhanh chóng, đòi hỏi mô hình đáp ứng đượcthời gian thực, xử lý bộ dữ không quá lớn, cũng như mang lại hiệu quảcao Ngoài ra vói việc phân loại luồng dữ liệu không tin cậy, bộ dữ liệu tưong đối phức tạp, nên sử dụng các phưong pháp phân loại co bản có nhiều hạn chế trong việc giải quyết các dữ liệu phi tuyến tính Việc sử dụng một mạngno-ron truyền thẳng một lóp ẩn để giải quyết và mang lại hiệu quả về mặt thời gian là một trong nhưng vấn đề cần quan tâm và nghiên cứu.

Máy học cực trị

Vào năm 2004, dựa trên mô hình nơ-ron truyền thẳng một lớp ẩn, Guang-Bin Huangcùngcộng sự đã đề xuấtthuật toán huấn luyện không lặp cho phép pha huấn luyện nhanh hon gọi là Extreme Learning Machine (máy học cực trị).

Máy học cực trị (Extreme Learning Machine - ELM) là một trong những phương pháp học máy tiên tiến trong lĩnh vực trí tuệ nhân tạo và học máy dựa trên mô hình nơ-ron [11] cụ thể là mô hình nơ-ron một lớp (perceptron) Nó ra đời nhằm giải quyết các thách thức về tốc độ huấn luyện và hiệu suất mô hình trong các ứng dụng thời gian thực và xử lý dữ liệu lớn ELM đã trở thành một chủ đề nghiên cứu quan trọng và có ứng dụng rộng rãi trong nhiều lĩnh vực, từ xử lý ảnh đến dự đoán tài chính và điều khiển tự động Trong luận văn này, sẽ giới thiệu vàtìm hiểu chi tiết về máy học cực trị (ELM) và ứng dụng trong việc phân loại luồng dữ liệu khôngtin cậy.

Extreme LearningMachine (ELM) là một phương pháphọc máy có sự đột pháđáng kể trong quá trinh huấn luyện mô hình Nó đã được giới thiệu bởi Guang-Bin Huang, Zhuangwei Zhu, vàChee-Kheong Siew vào năm 2004 [15], ELM đã nhanh chóng thu hút sự quan tâm của cộng đồng nghiên cứutrong lĩnh vực học máy và trí tuệ nhân tạo nhờvào hiệu suất cao vàtính hiệuquả trong quátrình huấn luyện.

Nguyên tắc cơ bản của ELM là sử dụng một số lượng lớn các nơ-ron ẩn (hidden neurons) trong mạng nơ-ron để biểu diễndữ liệu đầu rào Một điểm quan trọng là trọng số và ngưõng của các nơ-ron ẩn được khỏi tạo một cách ngẫu nhiênvà không cần được điều, chỉnh trong quátrìnhhuấn luyện, điều này giúpELM nhanh chóng và hiệu quả.

Một môhình ELM bao gồm hai phần chính: phần đầuvào (input layer) vàphần ẩn (hiddenlayer) Phần đầuvào sẽ nhận dữ liệu đầuvào và truyền chúng đếnphần ẩn đễ xử lý [16],

Hình 2.2 Cấu trúc cơ bảnExtreme LearningMachine (ELM)[16]

Phần ẩn trong mô hình ELM sử dụng một lượnglởn các nút (nodes) để tạo ra nhiều hàm phi tuyến tính được mô tảbỏi một ma trận trọng số w sinhngẫu nhiên có k hàngvà d cột, trong đó k là số lượng các nút trong phần ẩn Và b là một vector chứa giátrị bias có kích thướcbằng số số lượng nút ẩn.

Giátrị đầu ra của phần ẩn là H, một ma trận kích thước k X N, được tính bằng cách sử dụng hàm kích hoạtg(x) như sau:

Sau khi tính toán được phần ẩn H, mô hình tính toán giátrị đầu ra của trọng số P

Sử dụng nghiệm ẩn P để dự đoán y mới: y = Hp (2-3)

Máy học cực trị có tốc độ huấn luyện nhanh chóng hon so vói nhiều phưong pháp khác như mạng nơ-ron sâu (deep neural networks) chỉ đon giản là một bước: phát triển trọng số giữa các lớp ẩn và lóp đầu ra, không cần quá trình tinhchỉnh tham số như backpropagation trong các mạngnơ-ron sâu Khi đánh giávới cácphưong pháp khác, máy học cực trị có độ chính xác cao và tốc độ huấn luyện nhanh vói bộ dữ liệu phi tuyến tính, mà các thuật toán máy học co bản không thể đem lại ví dụ như thuật toán hồi quy tuyến tính, cây quyết định, SVM [15] Ngoài ra với môi trường các cuộc tấn công mạngthay đổi liên tục, đòi hỏi mô hình huấn luyện nhanh chóng, đáp ứng ngăn chặn các cuộc tấn công một cách nhanh chóng, trong khi các mô hình mạng học sâu khác thì lại đòi hỏi một lượng dữ liệu lớn trong quá khứ, điều này khiến cho mô hình sẽ không phù hợp trong việc phân loại luồng dữ liệu không tin cậy về mặt thời gian, trong khi máy học cựctrị cóthể manghiệu quả ổn định.

2.3 Xây đụng mô hình Extreme LearningMachine

Trong nghiên cứu này chúng tôi tập trung vào việc sử dụng bộ dữ liệu CID-IDS-

2017 cho việc xây đựng mô hình để phân loại luồng dữ liệu không tin cậy,Trong đó bộ dữ liệu CID-IDS-2017 được phân tách thành 2 phần theo tỉ lệ chobộ dữ liệu đào tạo (trainning dataset) và bộ dữ liệu kiểm thử (testing dataset), sử dụng cho việc huấn luyện mô hình, cũngnhư đánh giá, thông qua nhiều thí nghiệm đượcthực hiện ở chưong 3.

Quá trình huấn luyện mô hình bắt đầu bằng việc áp dụng nhiều kỹ thuậttiền xử lý đối với tập dữ liệu đàotạo, nhằm cải thiện chất lượng và tính khả dụng của dữ liệu. Điều chỉnh cách thức học máy để nhanh chóng đạt được hiệu suất tối ưu cũng là một phần quan trọng của quá trình này Tiếp theo, tập dữ liệu kiểm thử được sử dụng để kiểm định và đanh giá hiệu suất của mô hình Mục đích là phát triển một mô hình huấn luyện dựa trên co sở củaExtreme LearningMachine (ELM), như mô tả trong Hình 2.3 Mô hình được kỳ vọng có thể mang lại hiệu quảtrong việc phân tích luồng dữ liệu không tin cậy, đảm bảo tốc độ xử lý nhanh và phù hợp với các tình huốngthực tế, tận dụng lợi thế của Extreme Learning Machine (ELM).

Hình 2.3 Khung môhình ELM sử dụng bộ dữ liệu CID-IDS-2017

Xây đựng mô hình Extreme Learning Machine

3.1 Phân tích bộ dữ liệu

Bộ dữ liệu CIC-IDS-2017 [17] là bộ dữ liệu cho nghiên cứu về pháthiện xâm nhập (intrusion detection) trong mạng máy tính, bộ dữ liệu này được tạo ra bởi Canada Institute for Cybersecurity (CIC) và chứa các gói tin mạng thu thập được từ môi trường thực tế Bộ dữ liệu gồm 5 nhóm xâm nhập, được mô phỏng dựatrên các hành vi của kẻ tấn công.

Bảng3.1 Phân loạixâmnhập của bộ dữ liệu CID-IDS-2017

STT Nhóm xâm nhập Loại xâm nhập

2 Denial of Service:Dos Botnet, DDoS, DosGoldenEye

3 Passwordattacks FTP-Patator, Webattack brute force

5 Vulnerability Heartbleed Attack, Web attack sql injection,

Quá trình thu thập dữ liệu khởi tạo từ lúc 9 giờ sáng thứ hai ngày 3 tháng 7 năm

2017 và kết thúc lúc 5 giờ chiều thứ sáu ngày 7 tháng 7 năm 2017, với tổng thời gian thu thập kéo dài 5 ngày liên tục Ngày đầutiên, thứ Hai,được đánh dấu làngày hoạt độngbình thường, với các gói tinđược xác định là an toàn Từthứ Ba đến thứ Sáu, các cuộc tấn công mạng đãđược mô phỏng và thực hiện, diễn ra trong cảhai buổi sángvà chiều, nhưđược minh họa trong Hình 3.1.

Qi Friday-WorkingHours-Afternoon-DDos.pcap_ISCX.csv Microsoft Excel c 75,317 KB

Q Friday-WorkingHours-Afternoon-PortScan.pcap_ISCX.csv Microsoft Excel c 75,104 KB Ũ Friday-WorkingHours-Morning.pcap_ISCX.csv Microsoft Excel c 56,950 KB Ũ Monday-WorkingHours.pcap_ISCX.csv Microsoft Excel c 172,782 KB

Q Thursday-WorkingHours-Afternoon-lnfilteration.pcap_ISCX.csv Microsoft Excel c 81,155 KB

Q Thursday-WorkingHours-Morning-WebAttacks.pcap_ISCX.csv Microsoft Excel c 50,804 KB

Q Tuesday-WorkingHours.pcap_ISCX.csv Microsoft Excel c 131,914 KB

Q Wednesday-workingHours.pcap_ISCX.csv Microsoft Excel c 219,890 KB

Hình 3.1 Tập dữ liệu củabộ dữ liệu CID-IDS-2017

THỰC NGHỆM VÀ ĐÁNH GIÁ

Phân tích bộ dữ liệu

Bộ dữ liệu CIC-IDS-2017 [17] là bộ dữ liệu cho nghiên cứu về pháthiện xâm nhập (intrusion detection) trong mạng máy tính, bộ dữ liệu này được tạo ra bởi Canada Institute for Cybersecurity (CIC) và chứa các gói tin mạng thu thập được từ môi trường thực tế Bộ dữ liệu gồm 5 nhóm xâm nhập, được mô phỏng dựatrên các hành vi của kẻ tấn công.

Bảng3.1 Phân loạixâmnhập của bộ dữ liệu CID-IDS-2017

STT Nhóm xâm nhập Loại xâm nhập

2 Denial of Service:Dos Botnet, DDoS, DosGoldenEye

3 Passwordattacks FTP-Patator, Webattack brute force

5 Vulnerability Heartbleed Attack, Web attack sql injection,

Quá trình thu thập dữ liệu khởi tạo từ lúc 9 giờ sáng thứ hai ngày 3 tháng 7 năm

2017 và kết thúc lúc 5 giờ chiều thứ sáu ngày 7 tháng 7 năm 2017, với tổng thời gian thu thập kéo dài 5 ngày liên tục Ngày đầutiên, thứ Hai,được đánh dấu làngày hoạt độngbình thường, với các gói tinđược xác định là an toàn Từthứ Ba đến thứ Sáu, các cuộc tấn công mạng đãđược mô phỏng và thực hiện, diễn ra trong cảhai buổi sángvà chiều, nhưđược minh họa trong Hình 3.1.

Qi Friday-WorkingHours-Afternoon-DDos.pcap_ISCX.csv Microsoft Excel c 75,317 KB

Q Friday-WorkingHours-Afternoon-PortScan.pcap_ISCX.csv Microsoft Excel c 75,104 KB Ũ Friday-WorkingHours-Morning.pcap_ISCX.csv Microsoft Excel c 56,950 KB Ũ Monday-WorkingHours.pcap_ISCX.csv Microsoft Excel c 172,782 KB

Q Thursday-WorkingHours-Afternoon-lnfilteration.pcap_ISCX.csv Microsoft Excel c 81,155 KB

Q Thursday-WorkingHours-Morning-WebAttacks.pcap_ISCX.csv Microsoft Excel c 50,804 KB

Q Tuesday-WorkingHours.pcap_ISCX.csv Microsoft Excel c 131,914 KB

Q Wednesday-workingHours.pcap_ISCX.csv Microsoft Excel c 219,890 KB

Hình 3.1 Tập dữ liệu củabộ dữ liệu CID-IDS-2017

Trong luận văn này, chúng tôi sử dụng 2 tập dữ liệu “Thursday Working Hours Morning Web Attacks” củabộ dữ liệu CIC-IDS-2017 để thực nghiệm và đánh giá kết quả Kích thước bản ghi là 458968, trong đó456752 dữ liệu ởtrạng thái an toàn,

2216 đang có đấu hiệu không an toàn, với 5 loại nhãn khác nhau infiltration, vveb attack brute force, web attackxss, web attack sql injection vàbenign.

Destination Port, Flow Duration, Total Fwd Packets, Total Backward Packets,Total Length of Fwd Packets, Total Length of Bwd Packets, Fwd Packet Length Max, Fwd Packet Length Min, Fwd Packet Length Mean, Fwd Packet Length Std,Bwd Packet

Length Max, Bwd Packet Length Min, Bwd Packet Length Mean, Bwd Packet Length std,Flow Bytes/s, Flow Packets/s, Flow

IAT Mean, Flow IAT std, Flow IAT Max, Flow IAT Min,Fwd IAT Total, Fwd IAT Mean, Fwd IAT std, Fwd IAT Max, Fwd IAT

Min,Bwd IAT Total, Bwd IAT Mean, Bwd IAT Std, Bwd IAT Max, Bwd IAT Min,Fwd PSH Flags, Bwd PSH Flags, Fwd ƯRG Flags,

Bwd URG Flags, Fwd Header Length, Bwd Header Length,Fwd Packets/s, Bwd Packets/s, Min Packet Length, Max Packet

Length, Packet Length Mean, Packet Length std, Packet Length Variance,FIN Flag Count, SYN Flag Count, RST Flag Count,

PSH Flag Count, ACK Flag Count, URG Flag Count, CWE Flag Count, ECE Flag Count, Down/Up Ratio, Average Packet size,

Avg Fwd Segment Size, Avg Bwd Segment size, Fwd Header Length,Fwd Avg Bytes/Bulk, Fwd Avg Packets/Bulk, Fwd Avg Bulk

Rate, Bwd Avg Bytes/Bulk, Bwd Avg Packets/Bulk,Bwd Avg Bulk Rate,Subflow Fwd Packets, Subflow Fwd Bytes, Subflow Bwd

Packets, Subflow Bwd Bytes,Init_Win_bytes_forward, Init_Win_bytes_backward, act_data_pkt_fwd, min_seg_size_forward,Active Mean, Active std, Active Max, Active Min,Idle Mean, Idle std, Idle Max, Idle Min, Label

Hình 3.2 Dữ liệu mẫu của bộ dữ liệu CID-IDS-2017

Total Length of Fwd Packets

Total Length of Bwd Packets

Fwd Packet Length Min Label

Hình 3.3 CID-IDS-2017 data frametrích xuấttừ pandas

Bộ dữ liệu bao gồm 79 thuộc tính, một số thuộc tính đặc trưng như địa chỉ nguồn (Source IP), công dịch vụ nguồn (Source Port), giao thức vận chuyển (Protocol), số lượng gói tin gởi lại (Total Backward Packets), tổng kích thước dữ liệu truyền đi(Total Length of Fwd Packets), tổng kích thước dữ liệu truyền đến (Total Length ofBwd Packets), các đặc trưng thống kê của kích thước dữ liệu(Fwd Packet LengthMax, Fwd Packet Length Min, Fwd PacketLength Mean, Fwd Packet Length Std

), tốc độ truyền dữ liệu (Flow Bytes/s), tốc độ truyền gói tin (Flow Packets/s), nhãn phân loại dữ liệu (label).

Bảng 3.2 Tóm tắt các thuộc tính trong bộ dữ liệuCID-IDS-2017

STT Tên thuộctính Mô Tả

1 Destination Port (Port đích) Đây là so cống đích mà giao dịch mạng được gửi tới Nó xác định cổng mà máy chủ hoặcdịch vụ đang lắngnghe.

2 Protocol (Giao thức) Giao thức mạng được sử dụng trong giao dịch, ví dụ: TCP, ƯDP, ICMP.

3 Flow Duration (Thời gian luồng)

Thời gian (tính bằng giây) từ khi bắt đầu giao dịch cho đến khi kết thúc.

4 Total Fwd Packets (Tổng số gói tin chuyển tiếp)

Số lượng gói tin được chuyển tiếpnguồn đến đích.

5 Total Backward Packets (Tổng số gói tin gởi lại)

Số lượng gói tin được gửi từ đích đến nguồn.

6 Total Length of Fwd Packets Tổng độ dài gói tin chuyển tiếp

7 Total Length of BwdPackets Tổng độ dài của tấtcả các gói tin gởi lại

8 Fwd Packet Length Max Độ dài tối đa của gói tin chuyển tiếp

9 Bwd Packet Length Max Độ dài tối đa của gói tin gởi lại

10 Flow Bytes/s Tốc độ truyền dữ liệu trong luồng, được tính bằng cách chia tổng độ dài của gói tin cho thời gian luồng.

11 Fwd IAT Total Tổng thời gian giữa các gói tin chuyển tiếp.

12 Bwd I AT Total Tổng thời gian giữa cácgói tin gởi lại.

13 Label Thông tin nhãn, Các giá trị thường gặp là " Benign" (Bình thường) hoặc tên của các loại tấn công mạng như infiltration, web attack brute force, web attack xss, web attacksql injection

Sự liên quan dữ liệu được thể hiện thông qua biểu đồ nhiệt ởHình 3.4, cho thấymột số thuộc tính của bộ dữ liệu CID-IDS-2017 có mối quan hệ rấtmạnh vói nhau, ví dụ như "Total Length of Fwd Packets" và "Total Fwd Packets" có moi quan hệ gần như hoàn hảo với giátrị tưong quan 0.99 Điều này có thể chỉ ra rằng hai đặc trưng này mang thông tin tương tự nhau hoặc rấttương quan mật thiết, điều này có thể ảnh hưởng đến mô hình học máy nếu cảhai đặc trưng đượcsử dụng, vì nó có thể gây ra hiện tượng đa cộng tuyến (Multicollinearity).

■fetal Length of Fwd Packets

Total Length of Bwd Packets

Hình 3.4 Biểuđồ tương quan các thuộc tính trong CID-IDS-2017

Ngược lại, các đặc trưng như "Flow Duration" và"Destination Port" có mối quan hệ rất yếu với nhau, chỉ ra rằng chúng có thể đại diện cho các thông tin độc lập trong dữ liệu Việc sửdụng các thông tin độc lập có thể mang lại mộtsố hiệu quả hữu ích cho việc huấn luyện mô hình và mang độ tính xác hơn.

Xem xét biểu đồ trực quan boxplot ở Hình 3.5 thể hiện sự khác nhau về mặt thời gian luồng (flow duration) của 2 phằn lớp dữ liệu, cho thấy rằng với luồng dữ liệu bìnhthường (normal), thời gian luồng (flow duration) có xu hướng ngắn hớn vàcó ít biến động hơn so với dữ liệu không an toàn (malicious) Chứng mình rằng việc sử dụng thời gian luồng là mộtthông tin độc lập có thể hữu ích trong việc huấn luyện họcmáy.

Hình 3.5 Môhình thể hiện flow duration cho normal và malicious

3.2 Các phươngpháp đánh giá hiậi suất môhình Để đánh giá hiệu suất của môhình học máy, chúng tôi thường sử dụng một loạt các chỉ số đánh giáquan trọngnhư độ chínhxác (accuracy), độ phủ (recall),và độ chính xác dư ong tính (precision) [18] Các chỉ số này giúp chúng tôi đo lưòng khả năng của mô hình trong việc phân loại dữ liệu. Độ chínhxác (Accuracy): đây là một chỉ số quan trọng để đo lưòng tỷ lệ phần trăm của các dự đoán đúng trên tổng số dự đoán Độ chínhxác được tính bằng cách chia số lưọng mẫu được phân loại chính xác cho tổng số mẫu Nó cung cấp một cái nhìn tổng quan về khảnăng phân loại của mô hình. accuracy = ^Y^ (3-1)

(a) Precision = 0.6, Recall = 0.5 partial overlap at back-end of R,

I two real anomaly ranges R2 and R3 overlapping with one predicted anomaly range P2

Hình 3.6 Minh họa độ chính xác dương tính và độ phủ [19] Độ phủ (Recall): độ phủ đo lường khả năng của mô hình trong việc bắt kịp tất cả các trường hợp dương thực sự (thường là các trường hợp quan trọng mà bạn muốn phát hiện) Nó được tính bằng cách chia số lượng trường hợp dương thực sự được phân loại đúngcho tổng số trường hợp dương thực sự.

TP+FN 1 y Độ chính xác dương tính (Precision): độ chính xác dương tính đo lường khả năng của mô hình trong việc đưa ra các dự đoán dương tính đúng Nó được tính bằng cách chia số lượng trường hợp dương thực sự được phân loại đúng cho tổng số trường hợp được phân loại dương tính.

Precision = ——— (3-3) ĐỘ do Fl-score làtrung bình điều hòa giữa độ chính xác dương tính và độ phủ, nó đo lường sự cân nhắc giữa độ chính xác và độ nhạy của mô hình trong việc dự đoán đúng các trường hợp dương tính Giá trị Fl-score cao chỉ ra rằng mô hình có hiệu suất cao trong việc đảm bảo cả độ chính xác và độ nhạy Được tính bằng công thức.

Fl - score = 2 (3-4) pre cision+re call

Ngoài ra chúng tôi còn lập ma trận tương quan (Confusion matrix), đây là mộtcông cụ quan trọng trong việc đánh giá kết quả của các bài toán phân loại, Nó cung cấp một cái nhìn tổng quan về độ chính xác và độ bao phủ của từng lớp phân loại, đồng thời giúp tính toán các chỉ số đánh giá khác nhau dựa trên sự kết hợp củacác giátrị dự đoán vàthực tế.Nó được thể hiện theo bảng dưới

Bảng 3.3 Bảng tínhtoán ma trận tư ong quan (Confusion Matrix)

Predicted asPositive Predicted as Negative Actual: Positive True Positive (TP) False Negative (FN)

Actual: Negative False Positive (FP) TrueNegative (TN) Ýnghĩa các giátrị:

TP (True positive) là số lượng các trường hợp dự đoán đúng là dưong tính hoặc dự đoán đúng vói sự thật là dương tính.

TN (True negative) là số lượng các trường hợp dự đoán đúng là âm tính hoặc dự đoán đúng với sự thật làâm tính.

FP (False positive) là số lượng các trường hợp dự đoán sai là dương tính hoặc dự đoán sai với sự thật làâm tính.

FN (False negative) là số lượng các trường hợp dự đoán sai là âm tính hoặc dự đoán sai với sự thật là dương tính.

Công cụ và môi trường

Môi trường sử dụng để huấn luyện môhình bao gồm một máytính với cấu hình như sau:

- Bộ vi xử lý (CPU): Intel 17- 10750HCPU @ 2.6GHz

- Card đồ họa (GPU): NVIDIA GTX 1650. Ổ cứng: SSDdung lượng 512GB.

Hệ điều hành: Windows 10 pro-64-bit.

Ngôn ngữ lập trình Python 3.7.8, dựa trên nền tảng Anaconda, sử dụngjupyter để quản lý và chạythử nghiệm.

Phương thức

3.4.1 Tiền dữ lỷ dữ liệu

Tiền xử lý dữ liệu đóng một vai trò quan trọng trong lĩnh vực khoa học dữ liệu và học máy, đặc biệt khi xem xét bộ dữ liệu Intrusion Detection Evaluation Dataset (CIC-IDS-2017) Bộ dữ liệu này liên quan đến vấn đề dữ liệu mạng và có những đặc thù riêng, yêu cầu quá trình tiền xử lý tập trung vào nhiều khíacạnh quan trọng như sau:

- Xử lý dữ liệu nhiễu, dữ liệu dư thừa, và mất thông tin: dữ liệu mạngthường bị nhiễu vì nhiều nguyên nhân như sự cố kỹ thuật, sai sót trong quá trình ghi dữ liệu, hoặc các tình huống không mong muốn Quá trình tiền xử lý dữ liệu cần tập trung vào xác định và loại bỏ cáctín hiệu nhiễu này để đảm bảo tính chính xác và đáng tin cậy của dữ liệu Chúng tôi thấy rằng có khoảng 45761 trường hợp dữ liệu bị trùng lặp và 38 giá trị bị thiếu data nằm ở thuộc tính Flow Bytes/s, trong trường hợp này chúng tôi xóa các cặp trùng lặp, và các dữ liệu thiếu data.

Mãhóa nhãn dữ liệu: bộ dữ liệu CIC-IDS-2017 bao gồm cả dữ liệu về các sự kiện tấn công mạng và dữ liệu bình thường Chúng tôi sử dụng cơ chế mã hóa dữ liệu thành 2 lớp làdữ liệu an toàn (normal) và dữ liệu không an toàn (malicious) lần lượtvới giátrị 0 và 1.

Chuẩn hóa dữ liệu: Để đảm bảo tính thống nhất và đồng nhấttrong dữ liệu, quá trình tiền xử lý bao gồm việc chuẩn hóadữ liệu, tránh việc sai lệch của dữ liệu, trong nghiên cứu này chúng tôi tập trung vào chuẩn hóa standardization, ngoài ra chúng tôi còn thực nghiệm các chuẩn hóa khác để đánh giá sự ảnh hưởng của việc chuẩn hóatrong phần thựcnghiệm bên dưới.

Quá trình tiền xử lý dữ liệu trong trường hợp này đóng vai trò then chốt trong việc chuẩn bị dữ liệu trước khi áp dụng các thuật toán học máy, và nó đóng góp đáng kể vào việc tối ưu hóa và cải thiện độ chính xác của quá trình huấn luyện và đánh giá mô hình.

3.4.2 Xử lỷ cân bằng mất cân bằng dữ liệu

Kích thước bộ dữ liệu là 170366, trong đó 162036 dữliệu ở trạngthái an toàn, 2143 ở trạng thái khôngan toàn Tỉ lệ kích thước của dữ liệu an toàn so với dữ liệu không an toàn có một sự chênh lệch quá cao gây ra vấn đề mất bằng dữ liệu trong việc huấn luyện mô hình, điều này gây ảnh hưởng kết quả huấn luyện Để giải quyết vấn đề mất cân bằng sử dụng kỹ thuật tái mẫu và tăng cường mẫu dữ liệu không an toàn thông qua việcsử dụng thư viện Imbalanced-learn viết bằng ngôn ngữ python.

Sau khi xử lý chúng tôi ghi nhận đượckích thước bộ dữ liệu là324072 trong đó dữ liệuan toàn là 162036, và 162036 ở trạng thái không an toàn.

3.4.3 Thực nghiệm và Đánh giá kết quả Đe đảm bảo tính chính xác trong việc đánh giá và đo lường hiệu quả của máy học cực trị trong quá trình huấn luyện bộ dữ liệu, chúng tôi đã tiến hành nhiều thí nghiệm khác nhau thông quacác độ đo khác nhau để đánh giá mức độ hiệu quả máy học cựctrị ELM.

Trong khuôn khổ thí nghiệm đầu tiên, chúng tôi đã triển khai thuật toán ELM với số lượng ẩn và hàm kích hoạt khác nhau theo thứ tự như Hình 3.7 và Bảng 3.4, phân chia dữ liệu thành 80% cho dữ liệu huấn luyện và 20% cho dữ liệu thử nghiệm, áp dụng bộ chuẩn hóa dữ liệu tiêu chuẩn, hàm kích hoạt tanh và sigmoid cho thấy độ chính xác chiếmưuthế hơn, hàm reluvà leak-relu thì không có quá nhiều thayđổi.

Hình 3.7 Biểu đồ so sánhkết quả theosố lượng ẩnvới hàm kích hoạtkhác nhau về độ chínhxác tương ứng với từng số lượngẩn khác nhaucủa từnghàm kích hoạt cho thấy có sự thay đổi không quá chênh lệch, hàm sigmoid có xu hướng độ chính tác tăng khi số lượng ẩn tăng Tươngtự với hàm relu và leaky relu cho thấy có sự biến thiên về độ chính xác không ổn định Điều này cho thấy hàm sigmoid là lựa chọn tốt nhất để huấn luyệnmô hình.

Bảng 3.4 Kết quả huấn luyện theo số lượng ẩn với hàmkích hoạt khác nhau

Trong thí nghiệm thứ 2, chúng tôi duy trì cùng một bộ quy tắc chuẩn hóatiêu chuẩn và số lượng ẩn cố định là 50 với hàm kích hoạt sigmoid, với các phương pháp khác sử dụng theo cấu hình mặc định, chúng tôi muốn đánh giá tốc độ và độ chính xác của máy học cực trị so với các phương pháp học máy khác như hồi quy tuyến tính(Logistic Regression), phân loại rừng ngẫunhiên (Random Forest Classifier - RFC)

Bảng 3.5 Kết quảso sánh tốc độ và chính xác của các phương pháp

Thí nghiệm cho thấy về tốc độ huấn luyện máy học cực trị (ELM) thể hiện tốc độ huấn luyện nhanh với kết quả đạt0.08 giây, hồi quy tuyến tính đạt 3.81 giây và cây rừng ngẫu đạt 25.75 giây, nhưng độ chính thì ELM chỉ đạt 0.92 Điều này thể hiện, ELM mang lại hiệu quả cao về mặt thời gian huấn luyện.

Trongthí nghiệm thứ 3, chúng tôi duy trì cùng một bộ quy tắcchuẩn hóa tiêu chuẩn và số lượng ẩn cố định là 250, chúng tôi thực hiện đánh giá mô hình qua 2 phương pháp là cross-validation được minh họa trong Bảng 3.6, và split-validation trong Bảng 3.7, hai phương pháp được áp dụng qua bốn hàm kích hoạt khác nhau: sigmoid, tanh, relu và leaky_relu nhằm đưa ra sự so sánh giữa chúng về sự ảnh hưởng đến khả năng dự đoán của mô hình.

Bảng 3.6 Kết quả độ đo chophương pháp cross validation với sốẩn 250

Leakyrelu 0.53 0.53 0.53 Đối với Bảng 3.6, chúng tôi đã thực hiện các thí nghiệm với kích thước k của k-fold cross-validation là 5, 10 và 15 Kết quả cho thấy độ chính xác của các folds của từng hàm kích hoạt không có sự thay đổi, hàm sigmoid và tanh vẫn chothấy chiếm ưu chế cao đạt độ chính xác từ 0.94 trở lên, hàm kích hoạt relu và hàm kích hoạt leaky relu chỉ đạt khoảng 0.53 Mặt khác trong Bảng 3.7 và Hình 3.8, phương pháp split-validation cho thấy hàm kích hoạt sigmoid và tanh vẫn mang lại độ chính xác ổn định hơn so với các hàm khác, khi thay đổi tỷ lệ phần trăm của tập dữ liệu đào tạo của các hàm kích hoạt không có sự khác biệt quá lớn.

Hình 3.8 Biểu đồ thể hiện sựthay đổi theo phương pháp splitvalidation

Bảng 3.7 Kết quả độ đo cho phương pháp split validation với số ẩn 150

Leakyrelu 0.529 0.531 0.534 0.534 Để có một cái đánh giá tốt hơn về hiệu quả của các mô hình, chúng ta cần xem xét thêm các độ đo khác nhau như độ phủ (recall), trung bình điều hòa giữa độ chính xác dươngtính và độ phủ (fl-score).

Bảng 3.7 và Bảng 3.8, mình họa huấn luyện mô hình với kích thước 80% dữ liệu cho tập đào tạo, cấu hình với số lượng ẩn là 150 Kết quả cho thấy, khi áp dụng hàm kích hoạt sigmoid và hàm kích hoạt tanh mô hình đạt độ chính xác dương tính tương đối cao, với độ chính xác dương tính khi sử dụng hàm sigmoid cho dữ liệu độc hại là 0.96 và độ phủ là 0.94 với 30,245 trường hợp được dự đoán chính xác trong tổng số 30,249 Bên cạnh đó hàm kích hoạt relu và hàm kích hoạt leaky relu có độ chính xác dương tính cao khi phằn loại luồng dữ liệu độc hại, nhưng độ phủ chỉ đạt dưới 0.08 Điều nàychứng tỏ mô hình máy học cực trị hoạt động tốt khi sử dụng hàm kích hoạt sigmoid và hàm kích hoạt tanh với tỉ lệ bỏ sót không đángkể. Bảng 3.8 Độ tư ong quan độ đo giữahàm kích hoạt khác nhau với sô ằn 250

Label Precision Recall Fl-score

Bảng 3.9 Độ tưong quan dữ liệu hàm kích hoạt khác nhau với số ẩn 250

Predicted normal Predicted malicious o re

Ngày đăng: 07/05/2024, 19:02

HÌNH ẢNH LIÊN QUAN

Hình 1.1  Cấu trúc của  mô  hình  mạng nơ-ron [6] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 1.1 Cấu trúc của mô hình mạng nơ-ron [6] (Trang 17)
Hình 1.2  Minh  họa  tấn công  botnet - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 1.2 Minh họa tấn công botnet (Trang 18)
Hình  1.4 Sơ  đồ mạng  nơ-ron sâu, nhiều  lớp [  10] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 1.4 Sơ đồ mạng nơ-ron sâu, nhiều lớp [ 10] (Trang 20)
Hình 1.5  Sơ  đồ  mạng  nơ-ron một  lớp  [11] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 1.5 Sơ đồ mạng nơ-ron một lớp [11] (Trang 21)
Hình  1.6  Minh  họa  chuẩn hóa dữ  liệu  [12] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 1.6 Minh họa chuẩn hóa dữ liệu [12] (Trang 22)
Hình  1.7  Minh  họa  hàm  Sigmoid - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 1.7 Minh họa hàm Sigmoid (Trang 24)
Hình 1.8 Minh họa hàm tanh - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 1.8 Minh họa hàm tanh (Trang 24)
Hình  1.9  Minh  họa  hàm  ReLu - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 1.9 Minh họa hàm ReLu (Trang 25)
Hình  1.10 Minh  họa  hàm  Leaky Relu - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 1.10 Minh họa hàm Leaky Relu (Trang 25)
Hình 2.1 Minh họa học máy  trong  phân  loại luồng  dữ liệu  không tin cậy  [14] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 2.1 Minh họa học máy trong phân loại luồng dữ liệu không tin cậy [14] (Trang 26)
Hình  2.2  Cấu trúc  cơ  bản Extreme Learning Machine (ELM) [16] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 2.2 Cấu trúc cơ bản Extreme Learning Machine (ELM) [16] (Trang 28)
Hình  2.3  Khung mô hình  ELM sử  dụng bộ  dữ liệu CID-IDS-2017 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 2.3 Khung mô hình ELM sử dụng bộ dữ liệu CID-IDS-2017 (Trang 30)
Hình 3.1 Tập  dữ liệu  của bộ  dữ liệu CID-IDS-2017 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 3.1 Tập dữ liệu của bộ dữ liệu CID-IDS-2017 (Trang 31)
Bảng 3.1 Phân  loại xâm nhập của  bộ  dữ liệu  CID-IDS-2017 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Bảng 3.1 Phân loại xâm nhập của bộ dữ liệu CID-IDS-2017 (Trang 31)
Hình  3.3 CID-IDS-2017  data frame trích xuất từ  pandas - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 3.3 CID-IDS-2017 data frame trích xuất từ pandas (Trang 32)
Hình  3.2  Dữ  liệu mẫu của bộ  dữ liệu  CID-IDS-2017 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 3.2 Dữ liệu mẫu của bộ dữ liệu CID-IDS-2017 (Trang 32)
Bảng 3.2  Tóm tắt  các  thuộc  tính  trong  bộ dữ liệu CID-IDS-2017 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Bảng 3.2 Tóm tắt các thuộc tính trong bộ dữ liệu CID-IDS-2017 (Trang 33)
Hình 3.4 Biểu đồ  tương  quan  các  thuộc tính trong  CID-IDS-2017 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 3.4 Biểu đồ tương quan các thuộc tính trong CID-IDS-2017 (Trang 34)
Hình  3.5  Mô hình  thể  hiện  flow duration cho normal  và  malicious - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 3.5 Mô hình thể hiện flow duration cho normal và malicious (Trang 35)
Hình  3.6  Minh họa độ  chính  xác  dương tính và  độ phủ [19] - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 3.6 Minh họa độ chính xác dương tính và độ phủ [19] (Trang 36)
Hình  3.7 Biểu  đồ so sánh kết  quả  theo số lượng  ẩn với hàm kích  hoạt khác nhau - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
nh 3.7 Biểu đồ so sánh kết quả theo số lượng ẩn với hàm kích hoạt khác nhau (Trang 40)
Bảng  3.4 Kết  quả huấn luyện  theo  số  lượng  ẩn  với  hàm kích hoạt khác  nhau - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
ng 3.4 Kết quả huấn luyện theo số lượng ẩn với hàm kích hoạt khác nhau (Trang 40)
Bảng 3.5 Kết quả so  sánh tốc độ  và chính  xác  của các  phương  pháp - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Bảng 3.5 Kết quả so sánh tốc độ và chính xác của các phương pháp (Trang 42)
Hình 3.8  Biểu  đồ  thể hiện sự thay  đổi  theo phương pháp split validation Bảng 3.7  Kết  quả độ  đo  cho phương pháp split  validation với  số ẩn 150 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Hình 3.8 Biểu đồ thể hiện sự thay đổi theo phương pháp split validation Bảng 3.7 Kết quả độ đo cho phương pháp split validation với số ẩn 150 (Trang 43)
Bảng  3.7  và Bảng 3.8,  mình họa  huấn luyện mô hình với kích thước  80%  dữ liệu  cho tập đào  tạo,  cấu hình với số lượng ẩn là 150 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
ng 3.7 và Bảng 3.8, mình họa huấn luyện mô hình với kích thước 80% dữ liệu cho tập đào tạo, cấu hình với số lượng ẩn là 150 (Trang 43)
Bảng 3.9 Độ tưong quan  dữ liệu  hàm kích  hoạt  khác  nhau  với số  ẩn  250 - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Bảng 3.9 Độ tưong quan dữ liệu hàm kích hoạt khác nhau với số ẩn 250 (Trang 44)
Bảng 3.10 Bảng  tương  quan  độ đo  với số quy  tắc chuẩn hóa  khác nhau - ứng dụng machine learning để phân tích luồng dữ liệu không tin cậy trong lĩnh vực an toàn thông tin
Bảng 3.10 Bảng tương quan độ đo với số quy tắc chuẩn hóa khác nhau (Trang 45)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w