Bên cạnh đó, các kỹ thuật học máy machine learning ngày càng được sử dụng nhiều hơn trong nhiệm vụ phát hiện lưu lượng mạng độc hại nhằm nâng cao đáng kẻ khả năng của hệ thống phát hiện
Bài toán và các nghiên cứu liên quan
Mô hình học máy cho hệ thống phát hiện xâm nhập
Hiện nay đã có rất nhiều công trình, nghiên cứu, dé xuất các mô hình học máy cho IDS và đã có một số thành tự cũng như kết quả nhất định điển hình như trong nghiên cứu [28], nhóm tác sử dụng Stacked Sparse Autoencoder(SSAE) chạy trên tập NSL KDD với độ chính xác lên tới 99.35% Một nghiên cứu khác của nhóm tác giả Dan Li [17], kết hợp mạng nơ-ron hồi quy(RNN) và bộ nhớ ngắn dài hạn (LSTM) để xử lý các dữ liệu phức tạp, đa biến cũng đạt được kết quả rất khả quan với độ chính xác 98% và điểm F1 là 0.77 Qua đó ta thay được sự hiệu quả, độ chính xác ngày càng cải thiện và tiềm năng phát triển của các mô hình máy học cho IDS cho mạng SDN.
Tuy nhiên, các công trình đó còn tồn tại nhiều nhược điểm như chỉ chạy trên một số tập dữ liệu nhất định và yêu cầu nhiều dữ liệu được gán nhãn [5] Tuy nhiên việc thu thập các nhãn cho các thuật toán machine learning rất tốn thời gian, khó khăn và thậm chí là không thể vì ngày càng có nhiều cuộc tấn công không biết trước được thực hiện Vì thế, sử dụng kỹ thuật học không giám sát hoặc bán giám sát có thể phát hiện được các cyber-attacks với số lượng nhãn không quá nhiều được xem là giải pháp tốt nhất Công trình [5] giải quyết điều đó bằng việc kết hợp GAN và Autoencoder tuy nhiên báo cáo chỉ đưa ra kết quả AUC nên chưa thuyết phục độ hiệu quả của mô hình, khi chúng tôi thực nghiệm lại thì các thông số khác như F1, Recall, Precision rat thấp Một vài công trình khác như
[21] dùng phương pháp học không giám sát đạt được độ chính xác cao ở ngưỡng thích hợp nhưng recall chỉ khoảng 30%, bỏ sót rất nhiều cuộc tấn công Hầu hết các nghiên cứu chỉ tập trung vào một tình huống đào tạo máy học trước khi triển khai (pre-train), tuy nhiên các phương thức tấn công mạng ngày càng nhiều và tỉnh vi hơn, chúng ta cần một mô hình có thể tự học, tự phát triển khi đã được triển khai trong thực tế Trong một nghiên cứu gan đây, Javaid dé xuất một khái niệm về tự học (self-learning) [12], tuy nhiên mô hình lại khá đơn giản (đơn thuần
Chương 1 Tổng quan chỉ là khái niệm) và không xét đến sự mắt cân bằng của dữ liệu trong khi đó cũng là một yếu tố quyết định đến khả năng chính xác của IDS.
Học cộng tác trong mạng khả lập trình
Một vấn đề cũng rất đáng chú ý đó là sự phân tán của mạng Với các mô hình học máy tập trung, dữ liệu sẽ được đưa về một trung tâm lưu trữ sau đó sử dụng để đào tạo máy học Tuy nhiên đó không phải là lựa chọn tốt vì sẽ vi phạm quy tắc về dữ liệu cá nhân, đặc biệt là với các dữ liệu có giá trị, quan trọng của doanh nghiệp Hơn nữa trong mạng SDN hoặc một số kiến trúc như Fog/Edge [15], dữ liệu được chuyển về rất lớn làm chậm đường truyền điều đó khiến chi phí cho các kết nói tăng cao Vì thế giải pháp học liên kết cần được áp dụng để giải quyết vân đề này.
Học liên kết là một sự phát là một sự phát triển gần trong lĩnh vực học máy dựa trên khái niệm dữ liệu phi tập trung Phương pháp này cho phép các thiết bị khác nhau có thể học cộng tác với nhau mà không cần chia sẻ dữ liệu tập trung Học liên kết có tiém năng giải quyết các lo ngại về quyền riêng tư, độ trễ và khả năng mở rộng do thực tế các tác vụ tính toán, học tập được phân phối rộng rãi trên nhiều thiết bị trong mạng, còn máy chủ học tập được trang bị điện toán biên, chỉ đơn thuần chịu trách nhiệm tổng hợp và truyền lại các tham sé [4]
Vì các khả năng đó, học liên kết có tiềm năng được sử dụng vào rất nhiều lĩnh vực trong đời sống khi đảm bảo quyền riêng tư dữ liệu khi xây dựng các mô hình học máy thông minh trong ngữ cảnh các mạng xã hội chứa thông tin người dùng, chăm sóc sức khỏe, y tế, An ninh mạng cũng là một lĩnh vực nhiều tiềm năng để áp dụng phương pháp này [28] Các hệ thống IDS dựa trên phương pháp học cộng tác đã được dé xuất nhằm giải quyết van dé thiếu dữ liệu và quyền riêng tư dữ liệu mạng nhạy cảm như trong các nghiên cứu của [22] [16] [2] Đặc biệt, trong ngữ cảnh các hệ thống mạng IoT, điện toán đám mây với số lượng các thiết bị đầu cuối lớn sẽ có rất nhiều vùng mạng phân tán được quản lý bởi nhiều bộ điều khiển SDN khác nhau Vì thế, việc áp dụng phương pháp học liên kết là giải pháp hợp lý để giải quyết các van đề về sự riêng tư, đường truyền, chỉ phí cho các giải pháp xây dựng các mô hình thông minh trong nhận diện các tác nhân gây hại cho hệ thống mạng SDN.
Nghiên cứu của chúng tôi có thể áp dụng cho mạng khả lập trình hay nhiều ngữ cảnh khác nhau với nhiệm vụ phát hiện xâm nhập Tạo ra hệ thống phát hiện xâm nhập bằng phương pháp hoc máy với ưu điểm cần ít dữ liệu hoặc lượng dữ liệu được gắn nhãn thấp và hệ thống có khả năng tự cải tiến.
Việc hiện thực lý thuyết của hệ thống phát hiện xâm nhập bằng phương pháp học máy dựa trên các cơ sở lý thuyết là khó khăn lớn nhất nhóm gặp phải khi phải thử nghiệm trên nhiều thư viện và framework khác nhau để viết được một hệ thống tối ưu và có thể tái sử dụng.
1.5 Mục tiêu, phạm vi nghiên cứu
Nghiên cứu tập trung vào xây dựng hệ thống phát hiện xâm nhập (IDS) học máy sử dụng Adversarial Autoencoder để phân loại với ưu điểm cần ít dữ liệu từ đó có thể chuyển sang hướng học không giám sát hoặc bán giám sát.
Chúng tôi sử dụng Autoencoder va GAN để sinh dữ liệu để đảm bảo có đủ lượng dữ liệu để đào tạo mô hình phân loại và mô hình học cộng tác Ngoài ra phương pháp nay còn giúp mô hình tự động cập nhật dữ liệu về các cuộc tắn công mới rồi tạo ra dir liệu tương tự để tự động tăng su đa dang của bộ dữ liệu theo thời gian, từ đó tăng hiệu quả cho bộ mô hình phân loại Triển khai mô hình IDS trên theo phương pháp học liên kết trong mạng SDN để đánh giá độ hiệu quả của phương pháp đã thiết kế.
Hệ thống IDS kết hợp mạng sinh đối kháng và học cộng tác, được triển khai trong môi trường mạng SDN có khả năng tự cải tiến để phát hiệu các tấn công, xâm nhập với độ chính xác cao và giảm thiểu độ trễ.
1.6 Cấu trúc Khóa luận tốt nghiệp
Qua những gì đã giới thiệu về tổng quan của dé tài thực hiện trong khoá luận tốt nghiệp, tôi xin đưa ra nội dung của Khoá luận tốt nghiệp sẽ được tổ chức như sau: ® Chương 1: Tổng quan: Giới thiệu tổng quan về khóa luận và các nghiên cứu liên quan đến đề tài. © Chương 2: Cơ sở lý thuyết: Trình bày cơ sở lý thuyết và kiến thức nền tang liên quan đến dé tai. s Chương 3: Phương pháp dé xuất Dua ra phương pháp, giải pháp dé xuắt. s Chương 4: Thực nghiệm và đánh giá: Trình bày môi trường thực nghiệm, tập dữ liệu, phương pháp đánh giá và kết quả thực nghiệm. © Chương 5: Tổng kết: Kết luận và hướng phát triển của khóa luận.
Trong chương này nhóm sẽ trình bày vẻ các định nghĩa và cơ sở lý thuyết của các thành phần mà nhóm sử dụng trong nghiên cứu Bao gồm mạng khả lập trình, phương pháp học cộng tác, mạng sinh đối kháng và các bộ mã hoá tự động.
2.1.1 Dinh nghĩa mạng kha lập trình
Theo ONF (Open Networking Foundation - một tổ chức phi lợi nhuận đang hỗ trợ việc phát triển SDN thông qua việc nghiên cứu các tiêu chuẩn mở phù hợp) thì Software Defined Network (SDN) là một kiểu kiến trúc mạng mới, năng động, dé quản lý, chi p' í hiệu qua, dé thích nghỉ va rat phù hợp với nhu cầu mạng ngày càng tăng hiện nay Kiến trúc này phân tách phần điều khiển mạng (Control Plane) và chức năng vận chuyển dit liệu (Forwarding Plane hay Data Plane), điều này cho phép việc điều khiển mạng trở nên có thể lập trình được dé dang và cơ sở hạ tầng mạng độc lập với các ứng dụng và dịch vụ mạng.
2.1.2 Kiến trúc mạng kha lập trình
Kiến trúc mạng k hả lập trình cho phép các kỹ sư, người quản trị nền tảng điện toán đám mây và mạng nhanh chóng đáp ứng các yêu cầu quản trị thay đổi thông qua controller Trong mạng khả lập trình, kỹ sư hoặc quản trị viên mạng có thể
Chương 2 Cơsở lý thuyết điều khiển, điều hướng lưu lượng truy cập từ controller mà không phải thiết lập trên từng thiết bị riêng lẻ trong mạng Bộ điều khiển tập trung quản lý các thiết bị cung cấp các dich vụ mang bat cứ khi nào chúng cần, bat kể các loại kết nói nào giữa server và thiết bị Quá trình này là một cải tiền từ kiến trúc mạng truyền thống Trong mạng truyền thống các thiết bị mạng đóng cả vai trò logic trong định tuyến, điều khiển hoạt động của mạng lẫn chuyển tiếp các gói tin, dữ liệu.
Do đó, khi cầu hình một hệ thống mạng nhiều thành phần, quản trị viên phải cầu hình thủ công từng thiết bị bằng tay và các thiết bị không hé có sự liên hệ với nhau về mặt quản trị Do đó việc cầu hình, vận hành trở lên đặc biệt khó khăn, các thiết bị hoàn toàn độc lập do đó chỉ có thể thay đổi cu hình trên từng thiết bi thủ công một cách tuân tự [24].
Ngoài ra, mạng khả lập trình đem lại nhiều lợi ích khi triển khai cho trung tâm dir liệu Mạng khả lập trình có thể giúp quản lý hiệu quả hơn thông lượng và kết nối, từ đó có thể xử lý các dữ liệu lớn Thêm vào đó, điện toán đám mây là một trong những xu hướng của ngành Công nghệ Thông tin và viễn thông Nền tảng điện toán đám mây được xây dựng dựa trên ý tưởng về dung lượng theo yêu cầu và khả năng tự phục vụ, trong khi mạng khả lập trình có thể phân phối động dựa trên nhu cầu và sự sẵn có của tài nguyên trong trung tâm đữ liệu Khi triển khai cho trung tâm dir liệu, các thiết bị có thể được thêm vào mạng dé dàng hơn, giảm nguy cơ gián đoạn dịch vụ Đồng thời, mạng khả lập trình phù hợp hơn với việc xử lý song song và thiết kế tổng thể của các mạng ảo hóa Cuối cùng, mạng khả lập trình có thể được sử dụng để thiết lập hiệu quả hơn các chính sách bảo mật trên toàn mạng, bao gồm các thiết bị tường lửa hay các yếu tố thiết yêu khác [13]. Trong bối cảnh van vật kết nói, vô số thiết bị cần giao tiếp, truyền và nhận dữ liệu, vì vậy kết nối giữa các phần tử mạng đóng vai trò rất quan trọng Tính linh hoạt trong việc tổ chức các nút, quản lý tập trung, kiểm soát luồng lưu lượng, v.v., là một thách thức khi áp dụng nguyên tắc quản lý của mạng truyền thống Nhưng trong mạng khả lập trình, vấn đề này được giải quyết bằng cách tách mặt phẳng điều khiển và mặt phẳng dữ liệu trong mỗi phan tử mạng Mạng khả lập trình trở thành một cơ ché quản lý linh hoạt hơn, có thể lập trình, có thể mở rộng và dễ đàng duy trì trong môi trường IoT [3].
Cơ sở lý thuyết 7
Kiến trúc mạng kha lập trình
Kiến trúc mạng k hả lập trình cho phép các kỹ sư, người quản trị nền tảng điện toán đám mây và mạng nhanh chóng đáp ứng các yêu cầu quản trị thay đổi thông qua controller Trong mạng khả lập trình, kỹ sư hoặc quản trị viên mạng có thể
Chương 2 Cơsở lý thuyết điều khiển, điều hướng lưu lượng truy cập từ controller mà không phải thiết lập trên từng thiết bị riêng lẻ trong mạng Bộ điều khiển tập trung quản lý các thiết bị cung cấp các dich vụ mang bat cứ khi nào chúng cần, bat kể các loại kết nói nào giữa server và thiết bị Quá trình này là một cải tiền từ kiến trúc mạng truyền thống Trong mạng truyền thống các thiết bị mạng đóng cả vai trò logic trong định tuyến, điều khiển hoạt động của mạng lẫn chuyển tiếp các gói tin, dữ liệu.
Do đó, khi cầu hình một hệ thống mạng nhiều thành phần, quản trị viên phải cầu hình thủ công từng thiết bị bằng tay và các thiết bị không hé có sự liên hệ với nhau về mặt quản trị Do đó việc cầu hình, vận hành trở lên đặc biệt khó khăn, các thiết bị hoàn toàn độc lập do đó chỉ có thể thay đổi cu hình trên từng thiết bi thủ công một cách tuân tự [24].
Ngoài ra, mạng khả lập trình đem lại nhiều lợi ích khi triển khai cho trung tâm dir liệu Mạng khả lập trình có thể giúp quản lý hiệu quả hơn thông lượng và kết nối, từ đó có thể xử lý các dữ liệu lớn Thêm vào đó, điện toán đám mây là một trong những xu hướng của ngành Công nghệ Thông tin và viễn thông Nền tảng điện toán đám mây được xây dựng dựa trên ý tưởng về dung lượng theo yêu cầu và khả năng tự phục vụ, trong khi mạng khả lập trình có thể phân phối động dựa trên nhu cầu và sự sẵn có của tài nguyên trong trung tâm đữ liệu Khi triển khai cho trung tâm dir liệu, các thiết bị có thể được thêm vào mạng dé dàng hơn, giảm nguy cơ gián đoạn dịch vụ Đồng thời, mạng khả lập trình phù hợp hơn với việc xử lý song song và thiết kế tổng thể của các mạng ảo hóa Cuối cùng, mạng khả lập trình có thể được sử dụng để thiết lập hiệu quả hơn các chính sách bảo mật trên toàn mạng, bao gồm các thiết bị tường lửa hay các yếu tố thiết yêu khác [13]. Trong bối cảnh van vật kết nói, vô số thiết bị cần giao tiếp, truyền và nhận dữ liệu, vì vậy kết nối giữa các phần tử mạng đóng vai trò rất quan trọng Tính linh hoạt trong việc tổ chức các nút, quản lý tập trung, kiểm soát luồng lưu lượng, v.v., là một thách thức khi áp dụng nguyên tắc quản lý của mạng truyền thống Nhưng trong mạng khả lập trình, vấn đề này được giải quyết bằng cách tách mặt phẳng điều khiển và mặt phẳng dữ liệu trong mỗi phan tử mạng Mạng khả lập trình trở thành một cơ ché quản lý linh hoạt hơn, có thể lập trình, có thể mở rộng và dễ đàng duy trì trong môi trường IoT [3].
Với những lợi ích vượt trội, mạng khả lập trình ngày càng được sử dụng rộng rãi hon trong các trung tâm dữ liệu, mạng doanh nghiệp, IoT và các nhà cung cấp
Chương 2 Cơsở lý thuyết dich vụ không day Quản trị viên mạng có thể khắc phục sự có một cách thuận tiện các mạng hiện đại như điện toán đám mây và điện toán biên bằng cách tận dụng khả năng lập trình của bộ điều khiển Ngoài ra, quản trị viên cũng có thể thiết lập các chính sách bảo mật thích ứng để giám sát và thiết kế lưu lượng mạng, phát hiện và ngăn chặn các cuộc tấn công cho môi trường IoT [26].
Trên thực tế, các mạng khả lập trình dé bị tan công bởi các kiểu tan công khác nhau ở nhiều cấp độ: mặt phẳng ứng dung, mặt phẳng dw liệu và trên hết là mặt phẳng điều khiển Từ quan điểm bảo mật, khả năng bảo vệ bộ điều khiển tập trung được coi là rủi ro chính đối với mạng khả lập trình Do đó cần phải tăng cường các hệ thống bảo mật để đảm bảo bộ điều khiển tập trung cũng như toàn mạng không bị tan công [18] Như đã nói ở trên, nghiên cứu sẽ tập trung vào việc xây dựng hệ thống phát hiện xâm nhập dựa trên học máy để tăng cường khả năng bảo vệ cho mạng khả lập trình.
Như Hình 2.1, mạng khả lập trình thường có một Root Controller và các Do- main Controller Các Domain Controller này sẽ quản lý các OpenFlow Switch
Chương 2 Cơsở lý thuyết trong SDN Domain của nó Do đó ta có thể áp dụng mô hình học cộng tác cho mạng khả lập trình để tăng cường khả năng huấn luyện cho mô hình học máy.Phần tiếp theo nhóm sẽ đưa ra các cơ sở lý thuyết của mô hình học cộng tác.
Dinh nghĩa phương pháp học cộng tác
trong SDN Domain của nó Do đó ta có thể áp dụng mô hình học cộng tác cho mạng khả lập trình để tăng cường khả năng huấn luyện cho mô hình học máy. Phần tiếp theo nhóm sẽ đưa ra các cơ sở lý thuyết của mô hình học cộng tác.
2.2 Phương pháp học cộng tác
2.2.1 Định nghĩa phương pháp học cộng tac
Học cộng tác là một sự phát triển gần đây trong lĩnh vực học máy dựa trên khái niệm dữ liệu phi tập trung Phương pháp này cho phép các thiết bị khác nhau có thể học cộng tác với nhau mà không cần chia sẻ dữ liệu tập trung Học cộng tác có tiềm năng giải quyết các lo ngại về quyền riêng tư, độ trễ và khả năng mở rộng do thực tế các tác vụ tính toán, học tập được phân phối rộng rãi trên nhiều thiết bị trong mạng, còn máy chủ học tập được trang bị điện toán biên, chỉ đơn thuần chịu trách nhiệm tổng hợp và truyền lại các tham số [4]
2.2.2 Cách hoạt động mô hình học cộng tác
Step1 Step 2 [ Step 3 Step 4 Step 5 £ |
Server | Server Server model | model model
Edge Edge | Edge Edge Edge Edge Edge Edge a “ device! device 3 |device1 device3 | device1 devices | devicel devices | device device 3 dens? device deve tin 37 dave?
HINH 2.2: Cách hoạt động của mô hình học cộng tác
Cách hoạt động của phương pháp học cộng tác được mô tả trong Hình 2.2, cụ thể là:
Bước 1: Một model học máy được khởi tạo ở máy chủ trung tâm.
Bước 3: Mỗi máy khách hoặc máy chủ cục bộ đào tạo model tại chỗ bằng cách sử dụng đữ liệu cục bộ của nó.
Bước 4: Sau khi đào tạo xong, các máy khách và máy chủ cục bộ sẽ gửi trọng số của model đến máy chủ trung tâm thông qua các kênh được mã hoá Các trọng số này được máy chủ trung tâm tổng hợp thành một mô hình duy nhất và cải thiện độ chính xác của mô hình.
Bước 5: Model tiếp tục được phân phối tới các máy khách và máy chủ cục bộ để co thể tiếp tục huấn luyện.
2.2.3 Phân loại học cộng tac
Horizontal Federated Learning Vertical Federated Learning Federated Transfer Learning
HINH 2.3: Phân loại phương pháp học cộng tác
Phương pháp học cộng tác được chia làm 3 loại như Hình 2.3 [6]
Horizontal Federated Learning: được định nghĩa là các trường hợp mà tập dữ liệu trên các thiết bị chia sẻ các tính năng giống nhau với các phiên bản khác nhau. Trong loại học cộng tác này, các client có các tính năng tương tự về miễn, cách sử dụng thông tin thống kê thu được hoặc bat kỳ kết quả nào khác từ học cộng tác.
Vertical Federated Learning: là một cách tiếp cận học cộng tác mà dữ liệu chung giữa các miền không liên quan được sử dụng để đào tạo mô hình học máy toàn cầu Có thể sử dụng cách tiếp cận này nếu có một tổ chức / tài nguyên bên thứ ba trung gian cung cấp logic mã hóa để đảm bảo rằng thống kê dữ liệu chung duy nhất được chia sẻ.
Federated Transfer Learning: là một cách triển khai mô hình học cộng tác khi chuyển giao mô hình học máy cổ điển hiện có, đây là một cách để đào tạo một yêu cầu mới trên một mô hình được đào tạo trước đã được đào tạo trên một tập đữ liệu tương tự để giải quyết một van dé hoàn toàn khác ào tạo trên mô hình được đào tạo trước cho kết quả tốt hơn nhiều so với đào tạo được thực hiện trên mô hình mới được xây dựng từ dau.
Thuật toán tổnghợp
Thuật toán tổng hợp đóng một vai trò quan trọng trong bắt kỳ kiến trúc liên kết tập trung và HFL nào Đó là logic kết hợp các cập nhật mô hình cục bộ từ tất cả các máy khách đã tham gia vào vòng đào tạo Nhiều thuật toán được dé xuất đang nhắm mục tiêu để đạt được sự riêng tư nâng cao của các bản cập nhật mô hình cục bộ hoặc để bảo toàn băng thông liên lạc hoặc để tạo điều kiện cho các bản cập nhật không đồng bộ từ các máy khách Tính trung bình liên kết khác nhau trong mỗi lần triển khai học cộng tác dựa trên các tham số câu hình trước. Các thuật toán hiện tại bao gồm: s FedAvg: Google đã giới thiệu thuật toán Federated Averaging (gọi là Fe- đAvg) dựa trên thuật toán tối ưu hóa SGD Là một phần của logic thuật toán FedAvg, máy chủ trung tâm hoạt động như một người điều phối hoặc người điều phối bắt đầu quá trình đào tạo FL bằng cách chia sẻ toàn cầu tham số và mô hình toàn cục cho một nhóm khách hàng được chọn được gọi là mini-batch, người này huấn luyện mô hình học máy với dữ liệu huấn luyện cục bộ và các tham số mô hình toàn cầu và chia sẻ trọng số mô hình đã huấn luyện với máy chủ tập trung Mô hình toàn cục được tạo ra bằng cách sử dụng logic trung bình để tính tổng trọng số của tất cả các bản cập nhật mô hình cục bộ đã nhận tại máy chủ tập trung Các tiêu chí có thể cấu hình, số vòng huấn luyện là điều kiện dừng để điều phối viên dừng các vong, huấn luyện và tính trung bình các cập nhật mô hình cục bộ. ¢ SMC-Avg: thuật toán tổng hợp an toàn dựa trên khái niệm của thuật toán Secure Multiparty Computation (SMC), thuật toán này tổng hợp các giá trị riêng tư của các bên không đáng tin cậy lẫn nhau mà không tiết lộ thông tin về các giá trị riêng tư của họ Được thiết kế để giải quyết các thách thức của
Chương 2 Cơsở lý thuyết môi trường FL dựa trên thiết bị di động Thuật toán này có giới hạn chịu lỗi, có nghĩa là nó hoạt động tốt ngay cả khi người dùng thứ r không tham gia vào giao thức được thiết kế.
* FedProx: Một phiên bản sửa đổi của thuật toán FedAvg được đề xuất để giải quyết tính không đồng nhất trong FL Kết quả thử nghiệm của bài báo này chỉ ra kết quả tích cực đối với FedProx trong các mạng không đồng nhất.
Tuy nhiên, nghiên cứu thực nghiệm [23] được thực hiện trên FedAvg và
FedProx đã chứng minh rằng FedAvg đạt được độ chính xác cao nhất trong số các thuật toán tính trung bình liên hợp FedProx xem xét sự thay đổi của sức mạnh tính toán và các yếu tố khác nhau trong các thiết bị tham gia vòng đào tạo FL FedProx cũng giới thiệu một điều khoản gần để giải quyết sự không đồng nhất trong các bản cập nhật cục bộ. ¢ FedMA: Thuật toán được dé xuất để xây dựng một mô hình chia sẻ cho
CNN và cập nhật mô hình học máy dựa trên LSTM trong môi trường FL.
FedMA thực hiện trung bình của các mô hình tại máy chủ trung tâm bằng cách đối sánh theo layer-wise và tính trung bình các phân tử ẩn như nơ-ron và kênh trong mạng nơ-ron Cách tiếp cận này hoạt động trên cùng một khái niệm kết hợp các nơ-ron và chỉ hiệu quả trên các mạng nơ-ron đơn giản như mạng fully-connected. ® Scaffold: Trung bình có kiểm soát ngẫu nhiên cho học cộng tác (Scaffold) giải quyết vấn đề chênh lệch gradient dissimilarity /client-drift gặp phải trong thuật toán FedAvg cho các phương pháp tiếp cận FL trong đó máy khách trạng thái mà thuật toán có thể duy trì / kiểm soát các biến thể tại máy khách và phía máy chủ để đảm bảo rằng các bản cập nhật máy khách đang hướng tới sự hội tụ toàn cầu.
* Tensor Factorization: thuật toán với mục tiêu để bảo vệ quyền riêng tư bảo toàn kiểu hình tính toán (TRIP) cho các ứng dụng sử dung tensor factoriza- tion TRIP chia sẻ dữ liệu tóm tat và kiểu hình giúp bảo vệ quyền riêng tư của dữ liệu người dùng. ® Personalization-based algorithms: tách các lớp mạng nơ-ron thành các lớp cơ sở và các lớp được cá nhân hóa tại mỗi nút máy khách Trong cách tiếp
Chương 2 Cơsở lý thuyết cận này, tính trung bình liên kết chỉ được áp dụng cho các cập nhật lớp cơ sở từ các máy khách FL, giúp loại bỏ tính không đồng nhất của các máy khách
FL và tập trung vào nhiệm vụ học tập thực tế APFL (Học liên kết được cá nhân hóa thích ứng) được dé xuất trong [8] dé xuất học từ sự kết hợp giữa mô hình toàn cầu và mô hình cục bộ để đạt được phiên bản cá nhân hóa của mô hình ML tại mỗi khách hang FL Khác với cách tiếp cận FL cổ điển là chia sẻ một mô hình cục bộ, cách tiếp cận này dé xuất ba mô hình tại mỗi máy khách FL, một mô hình cục bộ được đào tạo trên dữ liệu cục bộ, mô hình thứ hai là bản sao cục bộ của mô hình toàn cầu và thứ ba là mô hình
ML được cá nhân hóa được xây dựng bằng cách sử dụng tham số trộn Dựa trên sự phân phối trung bình của di liệu trên các máy khách FL, một tham số trộn được tính toán tại mỗi nút máy khách, thông số này liên tục thay đổi dựa trên khoảng cách giữa ba mô hình (cục bộ, toàn cầu và cá nhân hóa). Kết quả thử nghiệm của APFL hoạt động tốt hơn so với thuật toán trung bình liên kết (tức là FedAvg) trong việc đạt được mô hình được cá nhân hóa cho từng máy khách FL.
2.3 Hệ thong phát hiện xâm nhập
Ngày nay cùng với sự phát triển của Internet, các cuộc tấn công mang cũng gia tăng theo không chỉ về số lượng mà cả về cách thức: sự trỗi dậy của mã độc tống tiền ransomware, khai thác lỗ hổng zero-day, Các chương trình anti-virus và tường lửa dần trở nên không đủ hiệu quả để đảm bảo tính an toàn cho hệ thống mang của một công ty - vốn nên được xây dựng dựa trên nhiều tang bảo mật Và một trong những tầng quan trọng, được thiết kế để bảo vệ mục tiêu của nó khỏi các cuộc tan công tiềm ẩn thông qua một hệ thống theo dõi liên tục, được cung cấp bởi hệ thống phát hiện xâm nhập (IDS).
Các IDS được chia làm 2 loại chính: phát hiện dựa vào dấu hiệu (signature-based) hoặc dựa vào phát hiện di thường (anomaly-based) Trong các hệ thống phát hiện xâm nhập dựa vào dau hiệu thì dữ liệu sẽ được theo dõi và so sánh với các khuôn mẫu tan công có sẵn, nhờ đó phát hiện được các cuộc tân công tiềm ẩn Phương pháp này hiệu quả và đáng tin cậy, được sử dụng rộng rãi bởi các ứng dụng như
Snort [25] hay Suricata [1], tuy nhiên nó lại chỉ có thể xác định được các cuộc tấn
Chương 2 Cơsở lý thuyết công đã được mô tả trong cơ sở dữ liệu Hay nói cách khác, phương pháp này không thể xác định được những cuộc tấn công mới ngày càng tỉnh vi và phức tạp Chính vì vậy trong những năm qua đã có nhiều hướng nghiên cứu tập trung vào loại IDS còn lại - phát hiện xâm nhập dựa trên phát hiện di thường.
Mặc dù học máy đã và đang được coi là một trong những phương pháp hiệu quả nhất trong việc bài toán phát hiện dị thường Gần đây các thuật toán Machine Learning (ML) được áp dụng trong IDS để xác định và phân loại các mối đe dọa bảo mật ML IDS dùng phương pháp thống kê lưu lượng mạng trong các khoảng thời gian khác nhau để tạo nên một đường cơ sở (baseline) và dựa vào đó để phát hiện ra những hành vi đáng ngờ Dạng IDS này sử dụng các kỹ thuật học máy để tạo ra một mô hình mô phỏng việc truy cập thông thường của người dùng mạng.
Do đó nếu có một truy cập bắt thường, ML IDS sẽ đưa ra cảnh báo Hình 2.4 thể hiện qui trình trích xuất thuộc tính lưu lượng mạng để thực hiện quá trình huấn luyện và kiểm tra các mô hình học máy giúp nhận diện tan công mạng
HINH 2.4: Mô hình hệ thống phát hiện xâm nhập sử dung ky thuật học máy dựa trên dữ liệu luồng mạng
2.4 Mạng sinh đối kháng - GAN
HÌNH 2.5: Cách hoạt động của mô hình học cộng tác
Theo như [7], GAN là một kỹ thuật cho cả học tập bán giám sát và không giám sát.
GAN đạt được điều này thông qua mô hình hóa ngầm định các phân phối dữ liệu theo chiều cao GAN được đề xuất vào năm 2014, có thể hiểu mau chốt của GAN là đào tạo một cặp mạng cạnh tranh với nhau Bao gồm trình tạo (Generator), mathcalG, với mục đích tạo ra những hình giả mạo giống nhất với dix liệu thực.
Kiến trúc mạng sinh đối kháng
Generator lay một đầu vào ngẫu nhiên và có gắng sinh ra được dữ liệu giả mao. Đầu vào của Generator được sinh ngẫu nhiên từ không gian tiềm ẩn (latent space), sau đó gán thêm nhiễu (noise) Dữ liệu được sinh ra từ Generator được nạp vào Discriminator network
Công việc của Discriminator là lấy đầu vào từ tập train (dữ liệu thật) và dữ liệu được sinh ra từ Generator (dữ liệu giả) và xác định xem dữ liệu nào mới là thật.
Discriminator thực chất xử lý bài toán phân loại nhị phân bằng cách sử dụng hàm sigmoid, trả về kết quả khoảng từ 0 đến 1, với xác suất đầu ra càng cao thì khả năng dữ liệu đó là thật (dữ liệu lay từ tap data) càng lớn, và ngược lại.
Discriminator được huấn luyện để tối đa xác suất gán đúng nhãn cho dữ liệu, đồng thời Generator lại được huấn luyện để tối thiểu khả năng phát hiện của Dis- cirminator, tương đương tối thiểu log(1 - D(G(z)) Việc huấn luyện Discriminator và Generator là trò chơi minimax theo hàm số: mịn max V(D, G) = Ex~p„„„(x)[log D(x)] + Ez~pz(z)|Iog(1— D(G(z)))}-
Ex~p¿„„(x) [log D(x)] : giá trị kỳ vọng khả năng dit liệu từ phân phối training được Discriminator đánh giá dtr liệu thật Giá trị này càng cao thì khả năng đánh giá dữ liệu training của Discriminator càng chính xác.
Ez~p;(z)|loửg(1— D(G(x)))] : giỏ trị kỳ vọng khả năng dữ liệu từ Generator được Discriminator đánh giá là dữ liệu giả Giá trị càng cao khả năng đánh giá dữ liệu sinh của Discriminator càng chính xác.
Tổng thể, Discriminator có gang maximize V(D, G) trong khi Generator thì ngược lại Quá trình huấn luyện sẽ hội tụ khi pg = Paata = D(X) = 5 © Discriminator không thể phan biệt được 1 đữ liệu là thật hay giả (xác suất đều là 0.5).
Kiến trúc của bộ mã hoá tự động
HINH 2.6: Hình ảnh kiến trúc của bộ ma hoá tu động
Kiến trúc của bộ mã hoá tự động được đưa ra như trong Hình 2.6 Bộ mã hoá tự động bao gồm 3 thành phần chính:
Bộ mã hoá (Encoder): Mô-đun nén dữ liệu đầu vào tạo thành một tập hợp các đặc tính quan trọng và thường nhỏ hơn một số bậc độ lớn so với dữ liệu đầu vào. Bottleneck:Mô-đun chứa các đặc điểm quan trọng của dữ liệun (chính là output của Encoder), đây là phần quan trọng nhất của mạng bới nó mang đặc trưng của đầu vào.
Bộ giải ma (Decoder): Mé-dun giúp mạng giải nén các biểu diễn tri thức và tái cấu trúc lại dữ liệu từ dạng mã hóa của nó, mô hình học dựa trên việc so sánh đầu ra của Decoder với đầu vào ban đầu (Input của Encoder)
2.5.1 Mối liên hệ giữa các thành phan
Bộ mã hoá: Là một tập hợp các khối tích hợp theo sau là các mô-đun gộp để nén đầu vào của mô hình thành một phần nhỏ gọn được gọi là nút cổ chai(bottleneck). Tiếp theo nút thắt cổ chai là bộ giải mã bao gồm một loạt các mô-đun upsampling để đưa các đặc diểm đã được nén nén trở lại dữ liệu ban đầu.Trong trường hợp bộ tự động mã hoá đơn giản, đầu ra được mong đợi giống với đầu vào nhưng đã được khử nhiễu Tuy nhiên, đối với các b mã hoá tự động biến thể, nó là một hình ảnh hoàn toàn mới, được hình thành với thông tin mà mô hình đã được cung cấp làm đầu vào.
Bottleneck: Đây là phần quan trọng nhất trong mạng nơ-ron và cũng là phần nhỏ nhất Nó giúp hạn chế luồng thông tin đến bộ giải mã từ bộ mã hóa, vì thé, bottleneck chỉ cho phép thông tin quan trọng nhất đi qua Bottle neck càng nhỏ, tủi ro overfitting càng thấp, tuy nhiên nếu kích thước Bottleneck quá nhỏ sẽ hạn chế khả năng lưu trữ thông tin của ảnh đầu vào, gây khó khăn cho việc giải mã ở khối Decoder
Bộ giải mã: Là một tập hợp bao gồm các khối lay mẫu và tích chop để tái tạo lại đầu ra của bottleneck Do đầu vào cho bộ giải mã là các đặc tính quan trọng đã được nén nên bộ giải mã đóng vai trò như một "bộ giải nén" và thiết lập lại dữ liệu từ các thuộc tính tiềm ẩn của nó.
Bộ mã hoá tự động có thể dan dần chuyển đổi các vectơ đặc trưng cụ thể thành các vectơ đặc trưng trừu tượng, có thể thực hiện tốt việc chuyển đổi phi tuyến tính từ không gian dữ liệu chiều cao sang không gian dữ liệu chiều thấp Quá trình làm việc của bộ mã hóa tự động có thể được chia thành hai giai đoạn: mã hóa và giải mã và hai bước này có thể được định nghĩa như sau[29]:
Quá trình mã hóa từ lớp đầu vào đến lớp ẩn(bottleneck):
Quá trình giải mã từ lớp ẩn sang lớp tái tạo:
Chương 2 Cơsở lý thuyết Ở công thức trên, X = (X1,Xa, ,Xn) là các vec-tơ dữ liệu đầu vào, Y =
(V1,V2, „ n) là các vec-tơ tái tạo của dữ liệu đầu vào và H = (h1, ha, , hm)là các vec-tơ đầu ra có chiều ít hơn từ lớp ẩn,X € R",Y eR",HeR"'(nlà số chiều của vec-to đầu vào và m là số đơn vị ẩn) Wy € RTM*" là ma trận kết nồi trọng số giữa lớp đầu vào và lớp ẩn Wj € R"*”" là ma trận kết nối trọng số giữa lớp ẩn và lớp đầu ra Để tái tạo lại đữ liệu đầu vào chính xác nhất có thể đồng thời giảm tiêu thụ tài nguyên trong quá trình dao tạo mô hình, Wjy = Wi thường có mặt trong cỏc thực nghiệm ỉ+ € R"*† và g2 e RTM*? lần lượt là cỏc vectơ biểu thị độ lệch của lớp đầu vào và lớp ẩn ge, (+) and ỉ; (-) lần lượt là hàm kớch hoạt của các lớp ẩn và đầu ra của mạng nơ-ron, với vai trò là ánh xạ kết quả tổng hợp của mạng về [0, 1].
Bang cách điều chỉnh các thông số của bộ mã hóa và bộ giải mã, lỗi giữa dữ liệu tái tao đầu ra và dit liệu gốc có thể được giảm thiểu, điều này có nghĩa là
AE xây dựng lại dữ liệu ban đầu thông qua đào tạo Chúng tôi tin rằng dau ra dữ liệu bởi các đơn vị lớp ẩn tại thời điểm này là chiều thấp tối ưu đại điện cho dữ liệu gốc và bao gồm tat cả thông tin tổn tại trong dữ liệu gốc Hàm lỗi tái tạo Je(W, @) giữa H và Y sử dụng hàm lỗi bình phương trung bình như được hiển thi trong công thức dưới , ở đây N 1a số lượng của các mẫu đầu vào.
Bộ mã hoá tự động đối kháng - Adversarial autoencoder
Sample from arbitrary Discriminate distribution p(z): p(z) from q(z) Autoencoder |“ ~~ ~~ 777 TTT TTT o es =1
HINH 2.7: Hình ảnh kiến trúc của bộ mã hoá tự động đối kháng
Bộ mã hoá tự động đối kháng sử dụng bộ mã hoá tự động(AE) và mạng sinh đối kháng(GAN) như là một khối chính[10] Bộ mã hoá tự động giảm chiều của dữ liệu đầu vào bằng cách trích xuất và duy trì các đặc tính quan trọng như một vec-tơ biến tiém ẩn Z trái lai mạng sinh đối kháng triển khai bộ sinh và bộ phân biệt theo cách sao cho vec-tơ biên tiềm ẩn Z của bộ mã hoá tự động tuân theo một phân phối chính quy Vec-tơ tiềm ẩn z của bộ mã hoá tự động được chính quy hoá bởi bộ phân biệt của mạng sinh đối khác với mục đích để hợp với mẫu tuỳ ý chọn trước p(Z) với phân phối sau được tổng hợp q(Z) của vec-tơ tiềm ẩn Z Gọi x là đầu vào và Z là biến tiềm ẩn của bộ mã hoá tự động Gọi p(Z) là phân phối chọn trước mà chúng ta muốn áp đặt vào cho biến tiềm ẩn, q(Z | x) là phân phối mã hoá và p(x | Z) là phân phối giải mã Hàm mã hoá của bộ mã hoá tự động q(z | xX) định nghĩa một phân phối sau tổng hợp của q(Z) trên biến tiềm ẩn AE như sau: q(Z) -| q(Z |x)Pa(x)dx
Bộ mã hoá tự động đối kháng là bộ mã hoá tự động được quy định bằng cách ánh xạ phân phối sau tổng hợp, q(Z), với mẫu tuỳ ý chọn trước, p(Z) [20] Để làm được điều đó, một mạng đối kháng được đính kèm trên đầu của vector tiềm ẩn
Chương 2 Cơsở lý thuyết của bộ mã hoá tự động như được minh hoạ ở Hình 2.7 Cùng lúc đó, bộ mã hoá tự động có gắng để để giảm tối đa lỗi của quá trình tái tạo dữ liệu.Bộ sinh của mạng đối kháng cũng là bộ mã hoá của bộ mã hoá tự động q(z | x) Bộ mã hoá chắc chắn rằng phân phối sau được tổng hợp có thể đánh lừa bộ phân biệt của mạng đối kháng để nó nghĩ rằng các biến tiềm ẩn q(z) đến từ phân phối trước p(2).
Cả mạng đối kháng và bộ mã hoá tự đồng đều được dạy với SGD thành 2 giai đoạn: giai đoạn tái tạo dữ liệu và giai đoạn điều chỉnh(quy chuẩn) thực thi trên mỗi lô dữ liệu Ở giai đoạn tái tạo, bộ mã hoá tự động cập nhật bộ mã hoá và giải mã để giảm thiểu lỗi tái tạo(reconstruction error) của dữ liệu đầu vào Ở giai đoạn điều chinh,mang déi khang cập nhật bộ phân biệt đầu tiên để phân biệtcác mẫu thực (được tạo bằng cách sử dụng trước đó) với các mẫu đã tạo (các mã ẩn được tính toán bởi bộ mã hoá tự động) Sau đó, mạng đối kháng cập nhật bộ sinh (cũng là bộ mã hoá) để làm rồi mạng phân biệt Sau khi quy trình đào tạo được thực hiện, bộ giải mã sẽ định nghĩa một mô hình sinh để ánh xạ p(Z) đến phân phối đữ liệu.
Có một số lựa chọn cho bộ mã hoá, q(Z | x), of của bộ mã hoá tự động đối kháng: Deterministic: Ở đây chúng ta giả sử rangq(z | x)là một hàm xác định của x Ở trường hợp này, bộ mã hoá sẽ giếng với bộ mã hoá của một bộ mã hoá tự động tiêu chuẩn và nguồn ngẫu nhiên duy nhất trong q(z) là phân phối dữ liệu pg(x) Gaussian posterior: Ta giả sử rằng q(Z | x) là một phân phối Gaussian có giá trị trung bỡnh và phương sai được dự đoỏn bởi bộ mó húa: ZĂ ~ 4 (Hi(X), ỉi(X)).
Trong trường hợp này, tính ngẫu nhiên trong q(Z) đến từ cả phân phối dữ liệu và phân phối ngẫu nhiên Gaussian tại đầu ra của bộ mã hoá.Chúng ta có thể sử dụng thủ thuật tái tham số tương tự của [14] để truyền ngược thông qua mạng bộ mã hóa.
Universal approximator posterior: Bộ mã hoá đối kháng có thể sử dugn để luyện tập q(z | x) như là đại lượng xấp xỉ phổ quát của phân phối sau Giả sử mạng mã hóa của bộ mã hoá tự động đối kháng là hàm f(x, 7) nó lay đầu vào x và một vector nhiễu 1 với một phân phối có định (ví dụ: Gaussian).Chúng tôi có thể lay mẫu từ phân phối sau tùy ý q(Z | x), bằng cách đánh giá f (x, 7) ở các mẫu khác nhau của 1) Núi cỏch khỏc, Chỳng ta giả sử q(Z | X, 1) = ử(Z— ƒ(X, n)) và phõn phối sau q(Z | x) và phân phối sau tổng hợp q(Z) được định nghĩa như dưới
Chương 2 Cơsở lý thuyết đây:
4(zIx) = | atz|x.nJpa(nlán = 4z) = | [ a(zlx,n)palxipn(a)dndx n xw⁄n
Trong trường hợp này, tính ngẫu nhiên trong q(Z) đến từ cả phân phối dữ liệu và nhiễu ngẫu nhiên 1 ở đầu vào của bộ mã hóa.Lưu ý rằng trong trường hợp này, phần sau q(Z | x) không còn bị ràng buộc là Gaussian và bộ mã hóa có thể học bat kỳ phân phối sau tùy ý nào cho một đầu vào nhất định x Vì có một phương pháp lấy mẫu hiệu quả từ phần sau tổng hợp q(Z), quy trình đào tạo đối kháng có thể phù hợp q(Z) to p(z) bằng cách truyền ngược trực tiếp thông qua mạng ộ mã hóa f(x, 1).
Chọn các loại q(Z | x) sẽ dẫn đến các loại mô hình khác nhau với các động lực đào tạo khác nhau Ví dụ, trong trường hợp xác định củaf q(Z | X), mạng phải ánh xạ q(Z) tới p(Z) bằng cách chỉ khai thác tính ngẫu nhiên của phân phối dữ liệu, nhưng vì phân phối thực nghiệm của dữ liệu được cố định bởi tập huấn luyện và ánh xa là xác định, điều này có thể tạo ra một q(Z) không suôn sẻ lắm.
Tuy nhiên, trong trường hop Gaussian hoặc công cụ xap xỉ phổ quát, mạng có quyền truy cập vào các nguồn ngẫu nhiên bổ sung có thể giúp nó trong giai đoạn chính quy đối nghịch bằng cách làm mịn q(z) Tuy nhiên, sau khi tìm kiếm siêu tham số rộng rãi, Kết quả đã thu được khả năng thử nghiệm tương tự với từng loại q(Z | x).
2.7 Bộ mã hoá tự động đối kháng theo phương pháp bán giám sát - Semi Adversarial autoencoder (SAAE)
2.7.1 Phương pháp học không giám sát
Học tập có giám sát yêu cầu dữ liệu lớn để xây dựng một bộ phân loại tốt.Càng đào tạo nhiều thì càng có hiệu suất tốt cho phương pháp học tập giám sát Thật không may, để có được một lượng lớn dữ liệu đào tạo là một quá trình tốn kém, đòi hỏi nhiều công sức, nhân công và chi phi Học bán giám sát chỉ yêu cầu một tập hợp nhỏ dir liệu được gắn nhãn trong tập dir liệu đào tạo Nếu chúng tôi chỉ sử dụng một tập hợp nhỏ dữ liệu được gắn nhãn, ta có thể nhận được hiệu suất
Chương 2 Cơsở lý thuyết kém đối với bộ phân loại học có giám sát Để cải thiện hiệu suất, chúng tôi cân nhắc sử dụng dữ liệu không được gắn nhãn trong tập dữ liệu đào tạo trong học tập bán giám sát Dữ liệu không được gắn nhãn không yêu cầu các tác vụ tốn kém về nhân công Từ đó có thể cải thiện hiệu suất của trình phân loại để hỗ trợ dtr liệu không được gắn nhãn trong tập dữ liệu đào tạo Đây là động lực cơ bản của việc chúng tôi sử dụng phương pháp học bán giám sát.
Hình 2.8 minh họa một ví dụ so sánh giữa học bán giám sát và học có giám sát khi có một lượng nhỏ dir liệu được gắn nhãn Chúng tôi đang cố gắng giải quyết một nhiệm vụ phân loại hai lớp, trong đó mỗi dữ liệu được đại điện bởi một tập hợp hai tính năng Chúng ta có một tập dữ liệu được gắn nhãn trong tập du liệu huấn luyện như trong Hình 2.8 Vì dữ liệu liên kết với nhãn bị phân tán, chúng ta có thể muốn vẽ đường thẳng (màu đỏ) Sau đó, vì chúng ta có lượng lớn của "dữ liệu không được gắn nhãn" trong tập dir liệu đào tạo như được hiển thị, chúng tôi sẽ vẽ một đường cong (màu xanh lá cây) phân tách độc đáo toàn bộ quá trình đào tạo được định nghĩa như sau: tập dữ liệu thành hai cum Lưu ý rằng học bán giám sát không KHÔNG yêu cầu dữ liệu có nhãn lớn đòi hỏi các tác vụ tốn kém về nhân công. ® Labeled data (Class 1) © Labeled data (Class 2)
- Supervised learning - Semi-supervised learning
HINH 2.8: Hình ảnh Mô tả hành vi của các phương pháp học tập bán giám sát
2.7.2 Bộ mã hoá tự động đối kháng theo phương pháp bán giám sát
Bộ mã hoá tự động đối kháng(AAE) được sử dụng theo hướng bán giám sát. Hình 2.9 hiển thị kiến trúc của một AAE theo hướng học tập bán giám sát Bộ mã hoá q (Z1, Z2 | X) tạo ra hai vectơ biến tiềm ẩn Z1 and Z2 để nắm giữ các đặc trưng của dữ liệu đầu vào; vectơ biến tiềm ẩn Z1 giữ các đặc trưng đại diện cho thông tin phân loại ("bình thường" hoặc "tấn công" trong phương pháp SAAE)trong khi vecto biến tiềm ẩn Z2 giữ các đặc trưng khác.Như vậy, một phân phối phân loại cat (Z1) được sử dung để vẽ vectơ biến tiềm ẩn Z1 để tách biệt và chỉ tim hiểu thông tin lớp trong khi phân phối Gaussian N (zz | 0,1) được sử dụng dé vẽ vectơ bién tiềm ẩn Z2 Phân phối phân loại là một phân phối nhận cùng một số giá trị one-hot với số lượng các lớp; hai trong phương pháp của chúng tôi là
"bình thường" hoặc "tấn công” Biến tiềm ẩn (z1) được bộ phân biệt học để giữ một one-hot vec-tơ (nều nó không hoàn hảo, một giá trị gần bằng 1 và các giá trị khác gần bằng 0).Bién tiém ẩn (Z1) nắm thông tin phân loại Do đó, việc phân loại có thể được thực hiện bằng cách tham chiều đến giá trị của Z1 được ước tính bởi bộ mã hóa Vectơ biến tiềm ẩn (Z2) áp đặt một phân phối Gaussian Chúng tôi giả định rằng cần có những biểu hiện tiềm ẩn phức tạp đằng sau các giao tiếp bình thường và bat thường Ví dụ, Bộ dữ liệu NSL-KDD bao gồm bốn kiểu tấn công là giao tiếp bat thường: Probe, Dos, U2R, và R2L Chúng được phân thành
Phuong phap dé xuat 28
Tổng quan mô hình FG-SAAE
Chúng tôi để xuất phương pháp xây dựng một hệ thống phát hiện xâm nhập cộng tác có khả năng tự phát triển dua trên GANs va Encoder trong mạng kha lập trình - Federated Generation and Semi-supervised Adversarial Auto Encoder (FG-SAAE) Mô hình FG-SA AE được mô tả trong Hình 3.1.
Chương 3 Phương pháp đề xuất
| Domain Gontraller i pe a 3 - : a ee Clustered)
Domain Controller ir H i Đảo ` ' ca 2 tri T Cluster-
SDN Hệ thống phát hiện xâm nhập
HINH 3.1: Hình ảnh mô hình FG-SAAE
Một hệ thống hoàn chỉnh gồm rất nhiều thành phần như Hình 3.1 Các thành phần đều có các chức năng và nhiệm vụ nhất định Cụ thể như sau:
1 Mạng SDN: Gồm các SDN controller, switch Là các thành phần của một mang SDN có nhiệm vụ quản lý, liên kết và kết nồi ra internet.
2 Extractor: Bộ trích xuất dữ liệu, chuyển từ gói tin trong mạng SDN thành dữ liệu phù hợp có thể sử dụng được bởi IDS.
3 Labeler: Hệ thống gan nhán dữ liệu Nơi nhận dw liệu chưa gan nhãn từ extractor và gửi dir liệu được gan nhãn đến nơi lưu trữ.
4 Training data storage: Noi chứa dt liệu dùng cho việc luyện tập bộ mã hóa tự động.
5 Module sinh dữ liệu: Thành phần chính là một mô hình sinh đối kháng, sử dụng cho việc tăng cường dữ liệu.
6 Module phát hiện tấn công: Thành phần chính là Bộ mã hóa tự động đối kháng bán giám sát Đây là thành phần quan trọng nhất của hệ thống đóng vai trò phân loại dữ liệu.
Chương 3 Phương pháp đề xuất
7 Malicious feature storage: Nơi chứa các dữ liệu bị coi là tan công sau khi được tính toán.
Luong hoạt động: Dữ liệu mạng được thu thập từ SDN Controller sau khi di qua bộ trích xuất dữ liệu và được chuyển thành dạng dữ liệu có thể sử dụng cho IDS Một phan dir liệu sẽ được gắn nhãn và lưu trữ Dữ liệu này được đưa vào module sinh dit liệu để tạo thêm dir liệu được gắn nhãn Sau đó cả dữ liệu được gắn nhãn, dit liệu tăng cường và dit liệu chưa được gắn nhãn đều được sử dụng để huấn luyện module phát hiện tan công Những dữ liệu được module phát hiện tấn công là dữ liệu tan công sẽ được tính toán và lưu trữ lại, sau đó được chuyển đến module sinh dữ liệu để tạo ra thêm lượng dữ liệu tan công phục vu cho việc huấn luyện module phát hiện tấn công Ngoài ra module phát hiện tấn công sẽ được huấn luyện theo phương pháp học cộng tác, nên nó sẽ thực hiện gửi và cập nhật các trọng số đến Root Controller.
Tiếp theo chúng tôi sẽ trình bày các phương pháp để xây dựng các thành phần phát hiện tấn công, học cộng tác và sinh dữ liệu của hệ thống FG-SA AE.
Phương pháp phát hiện tắn công
Trong mô hình dùng để phát hiện tấn công, chúng tôi sử dụng Bộ mã hoá tự động đối kháng bán giám sát (SA AE) như là 1 hệ thống phát hiện xâm nhập dựa trên học máy Hình 2.9 mô tả kiến trúc hoạt động của SAAE Đầu vào của mô hình này là đặc trưng được trích xuất thì packet đến từ mạng thông của extractor Các thông tin đặc trưng được trích xuất dựa trên lưu lượng, được tính toán bởi bộ tạo và phân tích luồng mạng được phát triển bởi CIC - CICFlowMeter Đầu ra của mô hình này là 2 nhãn 0, 1 đại diện cho nhãn bình thường và tấn công Và các vector tiềm ẩn đại diện cho các đặc tính quan trọng của packet dùng cho việc phân cụm và tính toán ở các bước tiếp theo Quá trình huấn luyện cho SA AE dựa trên Thuật toán 1.
Chương 3 Phương pháp đề xuất
Thuật toán 1 SA AE training process
Input: {X„¡} : Unlabaled dataset, {X(, Y¡} : Labeled dataset. batch_size: : Batch size. n_epochs: Number of epochs.
Output: ỉzn - Encoder’s weights for epoch := 1 to n_epochs do
Sample minibatch for {X\, Yi}, {Xu}
Draw samples for P(Z1) ~ Cat(2), P(z2) ~ N(0,In).
Reconstruction phase Update ỉzn and Ope by minimizing
Regularization phase Update ỉp,„¿ by minimizing
Supervised learning phase Using {X1, Yi} to update @en by minimizing
Trong quá trình huấn luyện, Các giá trị Z1, Z2 va P là các vector tiém ẩn được tạo ra từ encoder ỉp,„;, ỉp„„„; lần lượt là trọng số của bộ phõn biệt lớp Z1, bộ
Chương 3 Phương pháp đề xuất phân biệt Gaussian Z2 0£n, Ope là trong số của bộ mã hoá và giải mã Với Lp là giá trị mat mát ở quá trình tái tạo, giữa mẫu được đưa vào bộ mã hoá và mẫu được tái tao lại do bộ giải mã Lcat, Lgauss, Lgen là giá trị mat mất của bộ phân biệt lớp, bộ phân biệt gaussian và bộ sinh Leup là giá trị mat mát giữa dữ liệu có nhãn được dùng và nhãn được dự đoán do encoder, được tối ưu theo hàm
Chi tiết về cầu tao của các thành phần SAAE được thé hiện trong Hình 3.2 Dau vào của SAAE là số đặc trưng của từng loại dữ liệu được trích xuất từ extractor.
Sau đó các đặc trưng được nén lại thành 22( +2) đặc trưng quan trọng, trong đó 2 cho Z1 để phân loại dữ liệu và 20 cho Z2 sử dụng để phân cum và tính toán khoảng cách Bộ giải mã nhận 22 đặc trưng đầu vào từ lớp giữa ẩn có các vectơ biến tiềm ẩn (z1 và z2) và cho ra số đặc trưng giống ban đầu Cả bộ mã hóa, bộ giải mã và bộ phân biệt đều có lớp kết nói day đủ ở giữa với kích thước 1000 x 1000 Giữa các lớp đều được sử dụng hàm Dropout để tránh trường hợp overfiting.
Chương 3 Phương pháp đề xuất
HINH 3.2: Chi tiết về mang nơ-ron va các layer được triển khai trong
Phương pháp học cộng tác
Để giúp dam bảo tính riêng tư của dữ liệu khi sử dụng training và tăng khả nang mở rộng của mạng, chúng tôi sử dụng phương pháp học cộng tác giữa các vùng mạng Khi phương pháp học cộng tác được áp dụng, các bộ điều khiển cục bộ là thành phần chính trong việc thu thập đữ liệu và đào tạo cục bộ Mô hình SAAE sẽ được triển khai trên tất cả các bộ điều khiển này Sau khi được đào tạo, các bộ điều khiển sẽ gửi trọng số về cho bộ điều khiển chính để tính toán và cập nhật các trọng số phù hợp tuỳ theo thuật toán được lựa chọn Trong dé tài này, chúng tôi sử dụng thuật toán FedAvg [23] Thuật toán bắt đầu bằng cách khởi tạo ngẫu
Chương 3 Phương pháp đề xuất nhiên mô hình toàn cục Wo Sau đó, một vòng giao tiếp của FedAvg bao gồm: Máy chủ chọn một tập hợp con các client S¢, |S¿| = C-K = 1, va phân phối mô hình toàn cầu hiện tại Wcho tat cả client trong S:.Sau khi cập nhật các mô hình cục bộ wk để chia sẻ mô hình, wk