Mặt khác, con người luôn muốn nâng cao hiệu quả cũng như độ chính xác của máy học trong các ứng dụng thực tế, điều này đòi hỏi cần huấn luyện mô hình với một lượng dữ liệu lớn và đa dạng
Mô hình học máy phântấn
Nhu cầu về trí tuệ nhân tạo đã tăng lên đáng kể trong thập kỉ qua đồng thời mang lại nhiều thách thức về khả năng tính toán và tính riêng tư dữ liệu Mặt khác, con người luôn muốn nâng cao hiệu quả cũng như độ chính xác của máy học trong các ứng dụng thực tế, điều này đòi hỏi cần huấn luyện mô hình với một lượng dữ liệu lớn và đa dạng.
Hơn nữa, các mô hình học máy quy mô nhỏ có thể được đào tạo với lượng đữ liệu vừa đủ nhưng đối với các mô hình lớn hơn như mạng học sâu (mạng nơ-ron) sẽ luôn phát triển theo cấp số nhân với số lượng tham số do đó nhu cầu xử lý dữ liệu huấn luyện đã vượt mức sự gia tăng khả năng tính toán của máy tính Vì vậy, học máy phân tán đã ra đời như một giải pháp hiệu quả bằng cách phân phối khối lượng công việc học tập trên nhiều máy và biến học máy tập trung thành một hệ thống phân tán, từ đó khối lượng công việc lớn sẽ được phân chia thực hiện trên nhiều máy một cách dễ dàng Hơn thế nữa, học máy phân tán còn là một giải pháp tăng cường tính riêng tư của dữ liệu người dùng trong học máy hiện nay [14] Ý tưởng của học máy phân tán (distributed learning) là sử dụng nhiều nút cùng đảm nhiệm việc thực hiện các thuật toán ML hoặc DL để cải thiện hiệu suất, đảm bảo tính riêng tư, tăng lượng dữ liệu huấn luyện và có thể phát triển những mô hình phức tạp hơn Ví dụ, Hình 2.2 mô tả một hệ thống học phân tán bao gồm ba nút tính toán và
Data Shard 1 eee Data Shard 2| "Tata Shard 3
Hinh 2.1: M6 hinh hoc may phan tan [1] một máy chủ tổng hợp, để giảm bớt tính toán cho các nút, dữ liệu huấn luyện được chia thành ba phần cho ba nút và các nút này thực hiện huấn luyện tại cục bộ Sau đó các nút này gửi các kết quả cập nhật mô hình về phía máy chủ tổng hợp nơi các cập nhật từ các nút được tính trung bình và cho ra cập nhật cuối cùng Với giải pháp này, học máy phân tán có thể phân chia công việc huấn luyện cho các nút và đảm bảo riêng tư của dữ liệu.
Từ định nghĩa trên, học máy phân tán có thé được phân thành hai loại: scalability- motivated (thúc đẩy khả năng mở rộng) và privacy-motivated (đảm bảo quyền riêng tư) Scalability-motivated là mô hình được thiết kế để giải quyết nhu cầu mở rộng và tập trung tối ưu khả năng tính toán của các nút trong hệ thống học máy Ngược lại, Scalability-motivated tập trung giải quyết các nhu cầu về đảm bảo tính riêng tư của người dùng bởi vì tính riêng tư dữ liệu của người dùng hiện đang là mối quan tâm toàn cầu.
Mô hình học máy hợptấác
Giớithiệu Ặ Q Ặ QQ QQ Q hỦ 6
Mô hình học máy hợp tác (Federated Learning - FL) lần đầu tiên được giới thiệu bởi nhóm nghiên cứu từ Google vào năm 2016 nhằm giải quyết những vấn đề mà mô hình học máy phân tán đang đối mặt Federated Learning là cách thiết lập mô hình học máy mà trong đó nhiều thiết bị (clients) cùng hợp tác để giải quyết vấn đề liên quan đến học máy, dưới sự điều phối của một máy chủ trung tâm hoặc nhà cung cấp dịch vụ.
FL là một cách tiếp cận học máy phân tán trong đó nhiều người dùng cùng huấn luyện một mô hình chung trong khi vẫn đảm bảo quyên riêng tư cho dữ liệu của người dùng vì không phải chuyển đến một máy chủ hoặc trung tâm dữ liệu trung gian nào khác [15] [2] Ban dau, FL được đề xuất để xử lý dữ liệu I/D của các đặc trưng giống nhau trong thiết bị di động - trong FL gọi là Cross-Device Sau đó, khái niệm FL được mở rộng sang dữ liệu phân tán của các công ty, tổ chức hay nhiều vùng địa lý khác nhau - trong FL gọi là Cross-Silo Tóm lại, hệ thống FL là một hệ thống phân tán để quản ly quá trình huấn luyện ở nhiều nơi khác nhau với các tài nguyên phân tán [15] mà vẫn đảm bảo được tính riêng tư của dữ liệu.
Mô hình FL giải quyết những vấn đề liên quan đến quyền riêng tư của dữ liệu và giúp giảm chỉ phí trong quá trình huấn luyện mô hình học máy Trong quá trình tham gia vào hệ thống FL, dữ liệu của mỗi nút tham gia được lưu trữ cục bộ và sẽ không chia sẻ hay chuyển đi với bat kì thực thể nào Với cách tiếp cận đó, mô hình FL đã giải quyết những van dé liên quan đến quyên riêng tư của dữ liệu Sau khi hoàn thành quá trình huấn luyện mô hình cục bộ, các nút sẽ thực hiện gửi những cập nhật của mô hình cục bộ cho máy chủ trung tâm hoặc nhà cung cấp dịch vụ Việc chỉ gửi những cập nhật của mô hình thay vì khối lượng lớn dữ liệu gốc đã giúp giảm chỉ phí truyền thông giữa các nút và máy chủ trung tâm một cách đáng kể.
Phânloạ Ặ Q 0.0.02 0 00008 6 2.2.3 Vòng đời mô hình học máy hợptác
Cross-devices: là mô hình FL với lượng thiết bị tham gia rất lớn có thể là các thiết bị di động hoặc thiết bị Internet of Things có thể lên đến hàng tỉ thiết bị Tuy nhiên trong mô hình này các thiết bị đạt độ tin cậy thấp, do chúng không dùng bắt kỳ thông tin gì để định danh và số lượng thiết rất lớn, đa dạng Các thiết bị trong quá trình huấn ° admin cượn model testing e ia engineers
& analysts Ề federated bo:[mì the wor1d š model k learning deployment
Hình 2.2: Mô hình học máy FL [2] luyện có thể gặp các van đề về tiêu thụ điện năng hay về kết nối mạng dẫn đến mit kết nối trong quá trình huấn luyện Cross-device được Google sử dụng trong ứng dụng ban phím Gboard [2], và một số tính năng khác trong điện thoại Pixel và trong Android
Cross-silo: là mô hình FL trong đó có số lượng nút ít hơn Cross-devices, với số lượng khoảng từ 2 đến 100 thiết bị tham gia đến từ nhiều tổ chức thuộc nhiều lĩnh vực khác nhau (như y tế và tài chính) hoặc từ các trung tâm dữ liệu ở các vị trí khác nhau cùng chia sẻ dữ liệu để huấn luyện một mô hình nhưng không thể chia sẻ các dữ liệu đó một cách trực tiếp Cross-silo đạt độ tin cậy cao, do chúng déu được định danh rõ ràng Các thiết bị hầu như luôn khả dụng nên việc huấn luyện mô hình hầu như ít gặp sự cố [2].
2.2.3 Vòng đời mô hình hoc máy hợp tác
Vong đời của mô hình FL có thể được tóm tắt thành 4 giai đoạn sau [2]:
1 Giai đoạn khởi tạo: khởi tạo một mô hình FL, được sử dụng để giải quyết một vấn dé học máy cụ thể, ví dụ như bài toán phân loại với một số yêu cầu nhất định, ví dụ: yêu cầu về độ chính xác Sau đó, mô hình học máy được thiết lập cho phù hợp với các kịch bản FL Ví dụ: nếu dữ liệu được phân phối có nhiều loại khác nhau, thì mô hình học máy sẽ được phân vùng để xử lý dữ liệu phân tán. i) Giai doan huấn luyện: trong giai đoạn này, một chiến lược huấn luyện, bao gồm các quá trình huấn luyện song song và tổng hợp, được sử dụng để cập nhật các tham số mô hình và thậm chí cả cấu trúc của mạng giao tiếp giữa các nút, để cải thiện độ chính xác và khả năng tổng quát hóa của mô hình FL.
3 Giai đoạn đánh giá: phân tích hiệu suất của các mô hình FL đã được dao tạo sau khi được áp dụng Sau đó, các mô hình FL có hiệu suất tốt nhất sẽ được chọn. Nếu các mô hình FL không đáp ứng các yêu cầu, mô hình FL nên được sửa đổi, hoặc giai đoạn huấn luyện nên được thực hiện lại.
4 Giai đoạn triển khai: dưa mô hình FL được chọn sau khi đánh giá vào một kịch bản thực tế để xử lý dữ liệu, nếu như mô hình đạt được kết quả tối ưu và bảo mật hơn giải pháp sử dụng học máy với dữ liệu tập trung, đồng thời giải quyết được vấn dé bài toán (phân loại) đặt ra.
Quá trình huấn luyện
Máy chủ trung tâm điều phối quá trình huấn luyện, bằng cách lặp lại những bước dưới đây cho đến khi quá trình kết thúc [2]:
1 Lua chọn người tham gia: Máy chủ trung tâm sé lựa chọn tập hợp các nút đáp ứng đủ các điều kiện để tham gia vào quá trình FL Ví dụ: các thiết bị điện thoại đi động chỉ có thể tham gia vào khi đang sạc pin, có kết nối wifi
2 Quảng bá mô hình toàn cục: Những nút được lựa chọn ở bước 1 sẽ thực hiện tải xuống các trọng số của mô hình toàn cục hiện tại và chương trình huấn luyện từ máy chủ trung tâm.
3 Huấn luyện ở các nút: Mỗi thiết bị được lựa chọn sẽ thực hiện huấn luyện mô hình và tính toán cập nhật của mô hình.
4 Máy chủ tổng hợp kết quả từ các nút: Máy chủ trung tâm thu thập cập nhật của những nút được chọn, sau đó sử dụng thuật toán tổng hợp để cải thiện mô hình toàn cục.
5 Máy chủ cập nhật mô hình toàn cục: Máy chủ trung tâm cập nhật mô hình toàn cục dựa trên tính toán tổng hợp ở bước 4 Trở lại bước 1.
2.2.5 Các mối đe doa và rủi ro
Mặc dù mô hình FL có thể giải quyết được tính riêng tư dữ liệu của người dùng so với phương pháp học tập trung truyền thống nhưng FL vẫn thừa hưởng các mối đe dọa và rủi ro của các cuộc tấn công trong học máy Bang 2.1, tác giả đưa ra một số cuộc tan công phổ biến trong mô hình FL như sau:
Threats Severity Source of Vulnerability Poisoning High Client Data Manipulations, Compromised Central Server
Inference High Client Data Manipulations, Compromised Central Server Backdoor Attacks High Client Data Manipulations
GANs High Client Data Manipulations, Compromised Central Server Malicious Server High Compromised Central Server
Communication bottlenecks High Weaker Communication bandwidth
Free-riding Medium Clients in FL Unavailability Medium Clients in FL
Eavesdropping Medium Weaker Communication Protocol
System disruption IT downtime Low Clients and Centralized Server in FL
Bảng 2.1: Các mối de dọa trong mô hình FL [3]
* Poisoning attack: Tan công dau độc là cuộc tan phổ biến và nghiêm trọng bởi vì i nhiễm độc từ nhiều nguồn như các kết qui mô hình toàn cục có thể cập nhật của mô hình cục bộ, máy chủ độc hại và nhiều nguồn khác.
* Inference attack: Tương tự như mối đe dọa đầu độc, các mối đe doa của tấn công suy luận cũng có rất nhiều nguồn gây nên lỗ hổng.
* Backdoor attack: Mối đe dọa của các cuộc tấn công cửa hậu rất khó phát hiện và có thể vượt mặt các cơ chế xác thực của mô hình toàn cục.
* GAN: Mạng đối nghịch tạo sinh (GAN) cũng là một trong những lí do khiến cho
FL mắc lỗ hỗng do không thể đoán trước và có khả năng ảnh hưởng đến bảo mật và quyền riêng tư của dữ liệu người dùng.
* Malicious server: Máy chủ độc hại thừa hưởng những lỗ hổng mở của các máy chủ vật lý hoặc điện toán đám mây, do đó trong FL cũng có những lỗ hổng này.
* Communication bottlenecks: Mỗi lần cập nhật mô hình toàn cục, các nút phải gửi các kết quả huấn luyện từ mô hình cục bộ về máy chủ sau nhiều lần lặp có thể gây ra tắc nghẽn trong quá trình giao tiếp Do đó ảnh hưởng đến thời gian huấn luyện và độ ổn định của hệ thống.
* Free-riding: Tác động của mối đe dọa này là không nhiều vì một nút cục bộ mat kết nối với máy chủ toàn cục, cũng không ảnh hưởng đến những nút khác và quá trình vẫn tiếp tục được diễn ra.
* Unavailability: khi một nút cục bộ được chọn và bị mat kết nối khi đang trong quá trình huấn luyện, dẫn đến quá trình học tập của nút đó sẽ bị gián đoạn Tuy nhiên, mối đe dọa có thể được khắc phục bằng các thuật toán được thiết kế để xử lý các nút bị gián đoạn. s Eavesdropping: Trong mô hình FL, nghe lén có mức độ nghiêm trọng tương đối Lý do là những người tắn công có thể nghe trộm thông qua một kênh liên lạc trong gian sẽ khó có thể lấy cắp thông tin về dữ liệu người dùng do quá trình giao tiếp dữ liệu chỉ là các kết quả cập nhật mô hình của các nút cục bộ chứ không phải dữ liệu thô của người dùng.
* Interplay with data protection laws: Sự can thiệp với các luật bảo vệ dữ liệu có thể là một lỗ hổng khởi tạo có thể được tạo ra bởi những người triển khai môi trường FL do biết hoặc vô tình, và tác động là thấp vì khả năng xảy ra ít hon và có thể khắc phục được.
* System disruption IT downtime: Sự gián đoạn của hệ thống cũng được đánh giá với mức độ nghiêm trọng thấp vì tác động của mỗi nút cục bộ không ảnh hưởng nhiều đến kết quả tổng hợp của mô hình toàn cục.
“Trong khóa luận tốt nghiệp này, tác giả chỉ tập trung phân tích tấn công đầu độc dữ liệu trong mô hình học máy hợp tác.
2.3 Tân công đầu độc trong mô hình học máy hợp tác
Trong tấn công đầu độc mô hình hoc FL, người tin công có thể là một trong những.người tham gia huấn luyện của mô hình FL, nên có thể biết được và sửa đổi các cài đặt thông số mô hình Do đó có thể gọi là một cuộc tan công white-box [2], để phân loại các cuộc tấn công có thể dựa vào mục tiêu của người tấn công và có thể chia làm
+ Tan công không có mục tiêu: là kiểu tấn công chỉ nhằm mục đích giảm độ chính xác của mô hình học FL.
5 Tan công có mục tiêu: ngược lại, tin công có mục tiêu làm cho cho mô hình học FL cho ra các kết quả đúng theo ý muốn của người tấn công.
Một cách tổng quan, tấn công có mục tiêu sẽ khó khăn hơn bởi vì người tan công phải cố gắng đạt được một mục tiêu nào đó.
Tan công đầu độc trong suốt quá trình huấn luyện có thể được thực hiện trên dữ liệu hoặc trên mô hình Hình 2.3 cho thấy các kết quả cập nhật mô hình có thể bắt nguồn từ hai loại tan công đầu độc: (1) tan công đầu độc dữ liệu trong suốt quá trình thu thập dữ liệu; và (2) tấn công đầu độc mô hình trong suốt quá trình huấn luận Nhìn chung, cả hai loại tấn công này đều nhằm cô gắng thay đổi cách hoạt động của mô hình mục tiêu theo nhiều cách khác nhau Nếu người tấn công có thể chiếm quyền điều khiển máy chủ FL, chúng có thể dé dàng thực hiện cả hai loại tấn công có mục tiêu và không có mục tiêu trên mô hình đã được huấn luyện.
8 Local data Local model w'=w+aggregate(Aw, + + Aw,) eB collection training process Aw, ® | „ Central server
Hình 2.3: Tan công đầu độc dữ liệu và mô hình trong FL
2.3.1 Tan công đầu độc dữ liệu
Trong tấn công đầu độc dữ liệu (data poisoning attacks) cũng chia làm hai loại:(1) Giữ nguyên nhãn [16] và (2) Thay đổi nhãn (label-flipping) [17].
Tan công đầu độc trong mô hình học máy hợp tác
Tancong đầu độc môhình
Tan công đầu độc mô hình hiệu quả hơn nhiều so với tấn công đầu độc dữ liệu trong ngữ cảnh FL bằng cách phân tích một cuộc tấn công đầu độc mô hình có mục tiêu, trong đó một người tham gia độc hại đơn lẻ, không thông đồng với bất kì người tham gia nào khác nhằm mục đích khiến mô hình bỏ sót phân loại một tập hợp các đầu vào đã chọn với độ lệch cao [19].
Thực tế, tắn công đầu độc mô hình cũng có thể xảy ra trong cuộc tấn công đầu độc dữ liệu trong FL, bởi vì tan công đầu độc dữ liệu cũng có thể làm thay đổi kết quả cập nhật mô hình được gửi lên phía máy chủ FL tại một thời điểm Tan công đầu độc mô hình yêu cầu khả năng kỹ thuật phức tap và cần tài nguyên tính toán lớn [18].
Mô hình mạng đối nghịch tạosinh
Auxiliary ClassifierGANs(ACGAN)
ACGAN là một mô hình GAN tạo ra dữ liệu có điều kiện và hoạt động tương tự như CGAN [26] Đầu vào của bộ phân biệt là dữ liệu thật hoặc dữ liệu giả được tạo ra từ bô sinh dữ liệu và nhãn của dữ liệu đó Khác với CGAN, kết quả của bộ phân biệt bao gồm xác suất phân loại thật giả và kết quả phân loại nhãn của dữ liệu đầu vào mô tả trong Hình 2.4.
Trong đề tài Khóa luận tốt nghiệp này, tác giả sẽ sử dụng mô hình ACGAN để sinh ra dữ liệu để tấn công đầu độc mô hình FL Lí do chính tác giả sử dụng ACGAN là vì cầu trúc của mô hình ACGAN phù hợp với môi trường FL, khi mà có thể sử dụng Discriminator để làm mô hình toàn cục chung Kẻ tan công có thể dé dàng xây dựng và huấn luyện mô hình ACGAN cục bộ để sinh dữ liệu tan công đầu độc.
PyTorch 2 2 Q Q TQ TQ 15
PySyft 16 2.5.3 PyGrid 16
PySyft được dé xuất bởi đầu tiên bởi Ryffel và cộng sự [28] , là một thư viện Python cung cấp các hàm có sẵn cho nhà phát triển để triển khai thuật toán huấn luyện của họ. PySyft có thể hoạt động tốt với cả PyTorch và TensorFlow - một thư viện mã nguồn mở được phát triển bởi Google Mặc dù PySyft chỉ hỗ trợ thuật toán FedAvg (một thuật toán tổng hợp được ứng dụng trong học FL) [29], nó cung cấp nhiều cơ chế bảo mật bao gồm việc đảm bảo an toàn tính toán của các bên và quyền riêng tư Ngoài ra, nó có thể được triển khai trên một máy hoặc nhiều máy, các máy khách khác nhau giao tiếp thông qua API websocket [30]. © Code Issues 224 Pullvequests 26 Œ) Actions © Security Insights
2) rasswanth-s modified config to use share specific (#57 v' c157a45 Sdaysago @9,457 commits questions using data you cannot see
Be sithub/workflows Forcing pillow Global model Gị,; h ' ' Normal Update Poisoned Update Normal Update h
| Normal Participant Attacker Normal Participant!h
Hình 3.2: Tan công đầu độc dữ liệu trong mô hình Federated Learning
Mô hình tấn công được đề xuất trong [7] chỉ dừng lại ở mức độ mô phỏng mô hình
FL một cách cơ bản nhất Để đánh giá và có cái nhìn đúng trong phân tích tấn công đầu độc chống lại mô hình FL, tác giả đề xuất xây dựng mô hình có thể triển khai trên các máy tính có cùng chung mạng Cụ thể, bằng việc sử dụng các frameworks và thư viện hỗ trợ xây dựng Federated Learning đang nhận được sự quan tâm lớn của cộng đồng như PyTorch, PySyft, và PyGrid Tác giả đã xây dựng thành công mô hình FL gần giống với thực tế nhất để hỗ trợ cho quá trình thực nghiệm (được mô tả ở Hình3.1) Dựa trên mô hình đã xây dựng được, tác giả đề xuất mô hình tan công đầu độc dữ liệu sử dụng phương pháp /abel-ƒlipping để thực nghiệm và đánh giá phương pháp tan công này, mô hình tan công được xây dựng ở Hình 3.2.
Input: Training data D;,ain; Source class Cs;¢; Target class Ctarget
Initialize D poisoned’ for sample in Djrain do if sample’s label sịap¿¡ belongs to source class Csre then
Append sample into D poisoned else
| Append sample into D poisoned end end return D poisoned
True Change sample's label to target class csv Processing Data
Hình 3.3: Quy trình thay đổi nhãn dữ liệu của kẻ tấn cong
Trong phương pháp /abel-flipping attacks, giai đoạn xử lí dữ liệu của kẻ tấn cong nhằm mục đích tạo dữ liệu đầu độc đóng vai trò quan trọng và không thể thiếu Đối với trường hợp attacker đã có đầy đủ các nhãn dữ liệu thì nhiệm vụ chính là chọn ra lớp nhãn dữ công Cụ thể, với mỗi mẫu dữ liệu trong dữ liệu huấn luyện, attacker thực hiện thay lệu nguồn Csye và lớp nhãn đích c,„;„„ để tiến hành xây dựng dữ liệu tan đổi nhãn cy„ —> Ctarget nhằm mục đích làm cho global model phân loại sai lớp nhãn csy¢ thành Crarger Tác giả dé xuất thuật toán LabelFlipping để thực hiện quá trình thay đổi nhãn dữ liệu huấn luyện Trong đó, với mỗi mẫu dữ liệu s € Dyrain, nếu nhãn của dữ liệu s/z;„¡ = c„ thì thực hiện thay đổi s;zpz¡ = Crarget> cuối cùng sé được thêm vào tập dữ liệu tấn công Dpoisoned- Tổng quan quá trình xử lí dữ liệu và thay đổi nhãn dữ liệu được mô tả lại ở hình 3.3.
Input: Global model Œ,; Training data Dj,ain; Loss function £; Local epoch
E; Batch size b; Learning rate rỊ
Output: Poisoned local updates AL?
Receives updates from participants: AL}, ¡
Replace the local model: L; + G; if the user type is Attacker A then
Generate poison data Dpoisoned // by using LabelFlipping algorithm for each epoch e € (1, ,E) do for each batch bp € D poisoned do
| Ti = Hổ ¡— NaavVE(L? bp) end end
// by running local training algorithm
Calculate benign update: AL?, ¡ = L?, , end
Pp +1 to the central server S
Trong mô hình FL, mỗi người tham gia vào quá trình FL sẽ thực hiện huấn luyện local model và gửi những cập nhật mới cho central server central server không thể tính toán lại được những cập nhật mà người tham gia đã đóng gop, thay vào đó, Aggregator có nhiệm vụ tổng hợp những cập nhật đó mà không quan tâm đến sự nguy hại của nó Qua đó, attacker có thể tham gia vào quá trình FL như một người tham gia bình thường và thực hiện tấn công mô hình FL trong mỗi vòng mà nó tham gia vào Để mô tả quy trình và phương pháp /abel-flipping attacks, tác giả đề xuất thuật toán
LabelFlippingAttacks dựa trên phương pháp và ý tưởng đã được nghiên cứu trong [7]. Để làm rõ hơn cho Thuật toán 2, tác giả sẽ bàn luận về phương pháp tổng hợp của central server sử dụng để tổng hợp các cập nhật của mô hình cục bộ được gửi từ người tham gia vào quá trình FL trong phan Phụ lục A.
"Thuật toán 2 được tác giả đề xuất sử dụng cho phương pháp tan công đầu độc bằng. dữ liệu huấn luyện có sẵn Với chỉ tiết quy trình thực hiện gồm 2 phần như sau:
Phân tích mô hình tắncông
Mục tiêu của kẻtấncông
Trong Khóa luận tốt nghiệp này, mục đích chính của attacker là làm tổn hại đến mô hình toàn cục (global model) bằng cách gửi lại tham số của mô hình cục bộ (local model) đã bị đầu độc A17) ¡ cho central server Attacker sẽ thực hiện tấn công có chủ đích (targeted attack) để làm cho global model đạt độ chính xác thấp ở lớp nhãn dữ liệu bị tấn công, trong khi đó độ chính xác các lớp nhãn còn lại sẽ không bị ảnh hưởng nhằm tránh bị phát hiện.
Khảnăng của kẻtấncông
Attacker tham gia vào quá trình FL giống như một người tham gia bình thường và biết được cầu trúc của mô hình, thuật toán huấn luyện mô hình cục bộ cùng với sự thay đổi của mô hình toàn cục G qua mỗi vòng ¿, gọi là G; (t € 7) Cách tiếp cận ở trên được phân loại là tan công white-box đã được tác giả đề cập ở Chương 2 Trong Khóa luận tốt nghiệp này, tác giả sẽ xem xét 2 phương pháp tấn công đầu độc dữ liệu chồng lại mô hình học máy FL như sau: (1) Attacker chiêm được một người tham gia vào quá trình
FL và có sẵn dữ liệu để thực hiện tấn công đầu độc ; và (2) Attacker sinh dữ liệu tấn công bằng cách sử dụng Mạng đối nghịch tạo sinh (GAN) triển khai trong môi trường
FL Với mỗi phương pháp tấn công, tác giả sẽ đặt ra những giả thiết khác nhau để tiền hành thực nghiệm, phân tích nhiều khả năng của attacker và các tình huống tan công từ đơn giản đến phức tạp để đánh giá về tấn công đầu độc mô hình FL một cách toàn diện hơn (nội dung chỉ tiết sẽ được trình bày tại Chương 4).
Đầu độc mô hình Federated Learning từ dữ liệu tấn céngcé san
Tiêu chí đánh giá hiệu quảtấncông
Tác giả sẽ đánh giá mô hình toàn cục Gr sau khi kêt thúc 7 vòng quá trình FL Sử dụng dữ liệu kiểm tra ?,¿„ để đánh giá mô hình Gr, với điều kiện D;z„ f1 D;z„¡~ = 0 với D;rain là dữ liệu huấn luyện của mỗi người tham gia vào quá trình FL Dé đánh giá được kết quả thực nghiệm trong phần sau, tác giả dựa trên các tiêu chí đánh giá trong nghiên cứu [7], cụ thể như sau:
Global Model Accuracy (G“°°): Độ chính xác của mô hình toàn cục được tính toán bằng tỉ lệ phan trăm của mỗi mẫu dữ liệu x € Dyes; mà mô hình toàn cục sau T vòng
Gr phân loại Gr(x) = c; và c; là lớp nhãn đúng của dữ liệu x.
Class Recall (cfecall ): Với mỗi lớp c¡ € C, class recall của nó được tính toán bằng putty, x 100%; trong đó 77, là số lượng mẫu dữ liệu x € Dress với Gr (x) = cj và c¡ là lớp nhãn đúng của dữ liệu x; và FN; là số lượng mẫu dữ liệu x € Dyes với công thức
Gr(x) # c¡ và lớp dữ liệu đúng của x là c¡.
Baseline Misclassification Count (m_cnt'): Goi Gwp là mô hình toàn cục sau R vòng mà không bị tấn công Với mỗi lớp c¡ # cj, số lượng baseline misclassification từ c¡ thành e; gọi là m_cnt', được định nghĩa bằng số lượng mẫu dữ liệu x € Dyes) mà
Gyp(x) = c; và lớp nhãn đúng của x là cj.
Cải tiến phương pháp tấn công đầu độc sử dụng mô hình Mạng đối nghịch tạo sinh (GAN) eee 26
Sinh dữ liệu đầu độc sửdụngGAN
Từ các phân tích và giả thiết đối với phương pháp tan công thay đổi nhãn dữ liệu huấn luyện sử dung dữ liệu có sẵn, vấn đề chính để thực hiện phương pháp /abel- flipping attacks là attacker A phải có được dit liệu bao gồm một số lớp nhãn Tuy nhiên, trong mô hình FL, dữ liệu của người tham gia được huấn luyện cục bộ va attacker không biết được những dữ liệu này Do đó việc triển khai tấn công đầu độc dữ liệu trở nên khó khăn hơn trong trường hợp kẻ tấn công không sở hữu đầy đủ lớp nhãn dữ liệu huấn luyện hoặc có ít số lượng mẫu dữ liệu để thực hiện tan công Để giải quyết những vấn đề trên, tác giả xây dựng mô hình Mạng đối nghịch tạo sinh (GAN), cụ thể là Auxiliary Classifier GAN (ACGAN) trong môi trường FL Với những đặc điểm của mô hình ACGAN đã được giải thích ở Chương 2, tác giả nhận thấy với cầu trúc mô hình ACGAN thì có thể sẽ triển khai thực nghiệm được trong môi trường FL mà vẫn đảm bảo được chức năng của global model.
Tác giả tiền hành dé xuất thuật toán TrainGAN_FL được triển khai trong môi trường
Input: Global model G;; Training data Dy,ain
Initialize generator G and discriminator D for ¢ € (1,2, ,7) do for local epoch e, € E do for data d € Djrain do
// Use local D to classify real or fake // Use G; to classify label of data
// Train generator G Generate fake samples sake Calculate loss for G
Update G // Train discriminator D Send fake x fae into D for calculate loss Send real d into D for calculate loss
Set loss = (loss fake + 108Syeqi) + 2
FL dùng để sinh dữ liệu tan công dựa trên những phan tích đánh giá trong [11] voi mục đích huấn luyện mô hình ACGAN Trong môi trường FL, attacker không có đủ dữ liệu để huấn luyện mô hình ACGAN để đạt được mức độ hiệu quả nhất định Tuy nhiên, trong suốt quá trình FL, global model được chia sẻ giữa central server và người tham gia, đo đó kẻ tấn công có thé sử dụng Œ, để cập nhật cho bộ phân loại (Discriminator
- D) Nói cách khác, sử dụng Œ, để huấn luyện và cập nhật D dựa trên dữ liệu huấn luyện của tat cả người tham gia vào quá trình FL Bằng cách đó, kẻ tin công có thể sử dụng bộ sinh (Generator - G) để sinh dữ liệu giống với dữ liệu của các người tham gia Tại mỗi vòng của quá trình FL, kẻ tan công thực hiện tải xuống mô hình toàn cục
G, tại round ứ, sau đó thực hiện cập nhật cho mô hình D Với quá trình FL kéo dài,
Global model dần đạt đến điểm hội tụ, điều đó làm cho mô hình D càng được cải thiện và chính xác hơn Từ đó, attacker có thể sinh dữ liệu tấn công bằng cách sử dụng G.
Khi mô hình ACGAN đạt được mức độ hiệu quả nhất định, attacker sử dụng G để sinh ra dữ liệu giả gần giống với dit liệu huấn luyện của các người tham gia khác cho mục đích đầu độc mô hình toàn cục Tác giả đề xuất thuật toán Data_Gen cho việc sinh
Input: Global model G;; Generator G, Label space Y; Number of samples N
Initilize no_samples =0 while no_samples # N do
Use G to generate sample x sake Send Xx fake to G; if xfake belongs to targeted class ym then
Set xm — Xyake Increase no_samples Append x„ to poisoned data D poisoned end end return D poisoned ra dữ liệu khi ma G và D dat được mức độ hoàn thiện nhất định, cụ thể điều kiện sinh dữ liệu tác giả sẽ đề cập ở Chương 4 Mục đích chính của thuật toán Data_Gen là sinh ra dữ liệu giả để thực hiện phương pháp tan công thay đổi nhãn dữ liệu huấn luyện Kẻ tan công sinh ra dữ liệu thuộc lớp nhãn y„ đã được chọn để thực hiện tin công bằng G.
Cu thể, sử dụng Ở sinh ra dữ liệu x/„¿, sau đó sử dụng G, để phân loại kết qua x sake thuộc lớp nhãn dữ liệu nào, nều Xfake thuộc lớp nhãn y„ mà kẻ tan công chọn trước đó thì sẽ thêm vào tập dữ liệu đầu độc D poisoned: Li do chính tác giả sử dụng mô hình toàn cục G, để phân loại cho Xfake là tăng mức độ chính xác hơn so với dùng D Sau khi sinh ra đủ dữ liệu đầu độc, kẻ tan công sử dụng Thuật toán | để thay đổi nhãn dữ liệu huấn luyện để thực hiện tấn công đầu độc.
Xây dựng thuật toántấncông
Tác giả tiến hành xây dựng các thuật toán và mô hình tấn công sử dụng ACGAN trong môi trường FL Dựa trên những nghiên cứu và đánh giá trong [11], tác giả phân tích và đánh giá lại các thuật toán, mô hình được đề xuất để đưa ra những điều chưa được làm rõ Từ đó, tác giả tiền hành cải tiền và làm rõ mô hình tấn công được sử dụng trong Khóa luận tốt nghiệp này.
Tác giả giả định rằng kẻ tan công A tham gia vào quá trình FL như một người tham gia bình thường và biết được các thông số liên quan Tiến hành thực hiện phương pháp train 1+ Local mode! poison fake samples
Hình 3.4: Tan công đầu độc dữ liệu sử dụng mô hình GAN tấn công thay đổi nhãn dữ liệu được mô tả ở Hình 3.4 bằng cách huấn luyện mô hình ACGAN cục bộ sử dụng mô hình toàn cục G; dựa trên Thuật toán 3 Dé làm được điều đó, Attacker ban đầu sẽ khởi tạo G và D theo cầu trúc của mô hình toàn cục Ở những vòng tiếp theo của quá trình FL, kẻ tin công sử dụng đồng thời D và G; để huấn luyện và cải thiện G Đồng thời, sử dụng mô hình toàn cục G, để cập nhật cho D đạt được độ chính xác cao hơn Sau khi độ chính xác của mô hình ACGAN đạt đến mức độ nhất định, kẻ tan công sử dụng thuật toán Data_Gen để sinh ra dữ liệu đầu độc bằng cách sử dụng G sinh dữ liệu nhiều lần để có tập dữ liệu đầu độc chính xác.
Lí do tác giả đồng thời sử dụng mô hình toàn cục G; để cập nhật cho D và cải thiện cho G bằng cả G; và D như đã trình bày ở TrainGAN_FL là để cho phù hợp với môi trường FL Khi sử dụng mô hình ACGAN, D sẽ cho đầu ra 2 kết quả là dif liệu đưa vào là thật hay giả và nó thuộc lớp dữ liệu nào Để huấn luyện được D trong trường hợp này, tác giả sử dung mô hình toàn cục G; để phân biệt dữ liệu thuộc lớp nhãn nào và sử dụng bộ phân biệt D cục bộ để cho ra kết quả dữ liệu đưa vào that hay giả Cụ thé, giá trị thật hay giả validity của dữ liệu x sẽ được tính bằng cách D(x) và nhãn auxiliary của nó sẽ là kết quả của G,(x) Bộ phân loại D sẽ được cập nhật và cải thiện bằng cách tính gia trị mất mát (loss) của 2 giá tri validity va auxiliary Giống như D, G cũng sẽ được tính 2 giá trị trên theo cả D và G, Chi tiết mô tả thuật toán huấn luyện mô hình
GAN sẽ được tác giả trình bày rõ ở Phụ lục A.
Dựa theo thuật toán Data_Gen đã được dé xuất, thông thường cách xây dựng phương pháp tấn công đầu độc là kẻ tấn công huấn luyện mô hình cục bộ bằng dữ
29 liệu đã bị đầu độc Dpoisoned Va sau đó gửi tham số đã bị đầu độc cho central server. Tuy nhiên, trong quá trình Federated Learning, mỗi cập nhật của người tham gia gửi đến central server sẽ bị giảm tùy theo thuật toán của Aggregator phía central server. Để làm tăng sự ảnh hưởng của kẻ tấn công, tác giả đề xuất hệ số khuếch dai scale factor - Ÿ mục đích làm khuếch đại sự thay đổi của mô hình cục bộ mà kẻ tấn công huấn luyện Scale factor đảm bảo rằng hiệu quả và mức độ duy trì của cuộc tan công được bảo toàn trong quá trình tổng hợp của Aggregator Bằng cách đó, cập nhật mô hình cục bộ của kẻ tan công được mô tả theo Công thức 3.2.
LP, =S(LP,¡— MadvVE(LP bp), (3.2) trong đó, Nady và bp là learning rate va batch size của attacker Cơ ché khuéch dai được dé xuất ở trên có thể đạt hiệu quả trong ngữ cảnh Federated Learning vi 1) máy chủ trung tâm không thể biết được quá trình huấn luyện mô hình của người tham gia, điều đó làm cho việc xác thực những cập nhật được gửi đi từ người tham gia trở nên khó khăn hơn; 2) dữ liệu huấn luyện là non-//D dẫn đến cập nhật của mỗi người tham gia vào quá trình FL là khác nhau; 3) giao thức tổng hợp an toàn được sử dụng trong quá trình truyền tham số tránh cho máy chủ trung tâm kiểm duyệt từng cập nhật của người tham gia gửi đến mô hình toàn cục [11] Tuy nhiên, việc lạm dung scale factor sẽ khiến cho kẻ tan công dễ bi phát hiện, cho nên việc sử dụng giá trị này hợp lí sẽ cho cuộc tấn công đạt được hiệu quả hơn Tác giả sẽ trình bày chỉ tiết về chỉ sốscale factor Š rõ ràng hon ở 4. Ở phần này, tác giả mô tả ngắn gọn tấn công đầu độc dữ liệu sử dụng mô hình ACGAN trong ngữ cảnh FL Hình 3.4 trình bày cấu trúc của thuật toán PoisonGAN được tác giả cải tiến dựa trên dé xuất trong [11] Tại mỗi round của quá trình FL, attacker sử dụng mô hình toàn cục G, để huấn luyện cho mô hình ACGAN bằng thuật toán TrainGAN_FL Sau khi mô hình ACGAN đạt được đến độ chính xác nhất định, attacker sinh ra dit liệu đầu độc bằng cách thực hiện phương pháp sinh dữ liệu
Data_Gen Sau đó, attacker gan lớp nhãn sai (được chọn bởi attacker A) đến tập dữ liệu được sinh ra Xpake và huấn luyện mô hình cục bộ bự bằng dữ liệu đầu độc D poisoned:
Cuối cùng, attacker làm tăng mức độ anh hưởng của mình bằng cách khuếch đại giá trị AI dựa vào 3.2 và gửi kết quả AL? cho central server S Mức độ hiệu quả của phương pháp tấn công được đảm bảo kể cả khi mà mô hình toàn cục G, ngày càng được
Input: Global model G;; Training data Dj,ain; Loss function £; Local epoch
Output: Poisoned local updates AL? :
Initialize generator G and discriminator G; for t € (I,2, ,7') do
// Server execution Send Œ; to the participants
Receives updates from participants: AL}, ¡
Update the global model: Ớ,+ ¡ // Participants execution
Replace the local model: Li — G; if the user type is Attacker A then
Train GAN // By using TrainGAN_FL algorithm if GAN is stable then
// By using Data_Gen algorithm for each epoch ein(1,2, ,E) do for each batch by € D poisoned do
| đến SLE — Naa VE (iEsbp) end end end
Calculate poisoned update: AL? , = LP ¡
Scale up the update: ANU = SAL?
// by running local training algorithm Calculate benign update: AH/,¡ = Ly, ; end
Upload the local update Lin (bao gồm cả ATP to the central server S. end cải thiện qua từng vòng f.
Lưu ý rằng, cập nhật mô hình cục bộ của attacker được khuếch dai nhiều lần trong
?? để đạt được sự suy trì của lớp nhãn bị đầu độc trên mô hình toàn cục Theo những phân tích trong [11], cơ chế scaling factor không dé dàng bị phát hiện trong ngữ cảnh
FL bởi 3 lí do: 1) phương pháp tổng hợp an toàn được sử dụng trong giao thức FL tránh cho mô hình toàn cục làm rò rỉ những cập nhật của người tham gia gửi đến; 2) cách thiết kế của FL đã giúp cho dữ liệu non-IID rất đa dạng, trong đó bao gồm cả những dữ liệu không cần thiết và chất lượng thấp; 3) các cơ chế phát hiện tấn công được đề xuất trước đó không phù hợp với đề xuất của tác giả khi mà những phương pháp tấn công trước đó phải thực hiện tắn công trong nhiều vòng, trong khi đó PoisonGAN là phương pháp tan công trong một vòng (single-round attack).
Tiêu chí và thông số đánhgiá
Để đánh giá được phương pháp tấn công đầu độc dữ liệu sử dụng mô hình GAN, tác giả đưa ra 2 tiêu chí đánh giá dựa trên [11] như sau:
Poison data generation: nghĩa là mức độ hiệu quả của 2 thuật toán đã được đề xuất là TrainGAN_FL và Data_Gen trong ngữ cảnh Federated Learning Cụ thể là dữ liệu sinh ra từ mô hình ACGAN đảm bao được độ chính xác nhất định khi sử dụng để đầu độc mô hình FL.
Attack success rate: Để đánh giá tỉ lệ tan công thành công của global model được huấn luyện với thuật toán PoisonGAN Tác giả đưa ra 2 tiêu chí đánh giá:
* Poison task accuracy: mô tả tỉ lệ phân loại sai của lớp nhãn mà kẻ tan công chọn để tấn công sang lớp nhãn đích mà kẻ tan công muốn phân loại sai.
* Main task accuracy: mô tả tỉ lệ phân loại đúng của các lớp nhãn còn lại ngoài lớp nhãn mà kẻ tắn công chọn.
THỰC NGHIEM VÀ ĐÁNH GIÁ
Môi trường thựcnghệm
Tác giả xây dựng môi trường thực nghiệm cho cả hai phương pháp tấn công đầu độc dữ liệu được thực nghiệm trong Khóa luận này, được mô tả chỉ tiết như sau:
Phương phỏp tan cụng đầu độc sử dung dữ liệu cú sẵn: ệ phương phỏp tấn cụng này, tác giả xây dựng mô hình mô phỏng FL gần giống với lý thuyết, được triển khai cục bộ giữa các máy tính cùng mạng với nhau Cụ thể chỉ tiết cấu hình như sau:
* May ao | (Server): Ubuntu Server 18.04 - 8GB RAM - 8 CPUS.
* Máy ao 2 (Client): Ubuntu Server 18.04 - 32GB RAM - 24 CPUS.
Sử dung PySyft va PyGrid để tiến hành xây dựng mô hình thực nghiệm.
Phương pháp tan công dau độc sử dụng mô hình GAN: Tác giả xây dựng mô hình mô phỏng FL một cách đơn giản nhất dựa vào thư viện PyTorch Thực nghiệm chỉ tiền hành trên một máy duy nhất, có cầu hình như sau:
* Ubuntu Server 18.04 - 32GB RAM - 16 CPUS. w oO
4.1.2 Tập dữ liệu thực nghiệm Để đánh giá 2 phương pháp tan công được dé xuất trong Khóa luận này, tác giả tiền hành các nhiệm vụ phân loại khác nhau dựa trên 2 tập dữ liệu khác nhau là MNIST,
Fashion-MNIST Thông tin về các tập dữ liệu được mô tả tại Bảng 4.1
Datasets | Labels Inputsize Training samples Testing samples
Bảng 4.1: Thông tin các tập dữ liệu thực nghiệm
MNIST!: Tập dữ liệu này có 10 lớp nhãn bao gồm các chữ số viết tay từ 0 đến 9, trong đó có 70.000 hình ảnh được chia thành tập dữ liệu huấn luyện (60.000 hình ảnh) và tập dữ liệu kiểm tra (10.000 hình ảnh) Các ảnh đầu vào được chuẩn hoá bằng cách chuyển thành ảnh mức xám (grayscale) và có kích thước mỗi ảnh là 28x28 điểm ảnh
Fashion-MNIST? (F-MNIST): Tập dữ liệu này giống như MNIST, có 10 lớp nhãn bao gồm ảnh của các loại áo quần như coat, shirt, dress -:- Số lượng mẫu dữ liệu là 60.000 được chia thành 2 tập dữ liệu, 50.000 mẫu cho tập dữ liệu huấn luyện và số còn lại được chia cho tập dữ liệu kiểm tra Các ảnh đầu vào được chuẩn hoá bằng cách chuyển thành ảnh grayscale và có kích thước mỗi ảnh là 28x28 pixels.
4.2 Các phương pháp tấn công đầu độc dữ liệu Để đánh gi
FL khi thực hiện tan công đầu độc mô hình, tác giả đưa ra 2 phương pháp tấn công đầu tổng quan các trường hợp và khả năng của Attacker trong môi trường độc nhằm mục đích thực nghiệm và đánh giá trong Khóa luận tốt nghiệp này Cụ thể với các phương pháp tan công sau:
* Phương pháp tắn công đầu độc sử dụng dữ liệu có sẵn (gọi là phương pháp A): đặt trường hợp kẻ tan công với khả năng đã có trước day đủ dữ liệu để tiến hành đầu độc hệ thống.
!https://www.kaggle.com/c/digit-recognizer/data
?https:/www.kaggle.com/zalando-research/fashionmnist
* Phương pháp tắn công đầu độc bằng kĩ thuật sinh dữ liệu tắn công sử dụng mô hình ACGAN (gọi là phương pháp B): kẻ tấn công với khả năng có thể xây dựng mô hình ACGAN cục bộ và sử dụng nó để sinh ra dữ liệu tấn công hệ thống FL.
Kết quả thực nghiệm và đánh giá về 2 phương pháp tấn công sẽ được tác giả trình bày cụ thể ở Chương 4.3 và 4.4
4.3 Thực nghiệm tấn công đầu độc sử dung dif liệu có sản
Thiết lập mô hình (Model settings): Tác giả sử dụng mô hình Convolution neutral network (CNN) để xây dựng mô hình phân loại anh cho cả 2 tập dữ liệu MNIST và F- MNIST Bảng mô tả ngắn gon cấu trúc của Global model được sử dung trong phương pháp tan công này.
Bảng 4.2: Cấu trúc Global model trong tấn công đầu độc sử dung dữ liệu có sẵn
Cấu hình quá trình huấn luyện (Training configurations): Tác giả tiến hành lựa chọn và cầu hình các thông số liên quan đến việc tan công và quá trình huấn luyện mô hình Cụ thể như sau:
* Tổng số người tham gia (Participants): Tổng số người tham gia vào quá trình FL trong phương pháp tấn công này sẽ được chọn là 50.
* S6 người tham gia trong một vòng (Participants per round): Số người tham gia trong một vòng được lựa chọn từ Participants, mặc định là 5. w n
* Dữ liệu của người tham gia: Dữ liệu huân luyện của người tham gia vào quá trình
FL sẽ bằng số lượng mẫu dữ liệu của từng tập dữ liệu MNIST và F-MNIST chia đều cho số người tham gia, cụ thể là 1200 mẫu dữ liệu cho mỗi người tham gia.
* Thông số của quá trình huắn luyện: Attacker sẽ thực hiện huấn luyện local model với các thông số giống với người tham gia bình thường.
Tác giả tiến hành thực nghiệm quá trình FL trong 200 vòng cho tập dữ liệu F-MNIST và 100 vòng đối với tập dữ liệu MNIST Việc lựa chọn số vòng cho mỗi tập dữ liệu sẽ được tác giả làm rõ ở phần tiếp theo.
Cấu hình tấn công (Attack configurations): Tác giả tiến hành thực nghiệm tấn công đầu độc với số lượng kẻ tấn công tăng dần Với các cách thiết lập thay đổi nhãn của từng tập dữ liệu được tác giá mô tả và giải thích cụ thể ở Chương 4.3.4
Với mỗi quá trình FL, đều có các bước cơ bản như sau:
2 Chọn người tham gia vào quá trình Federated Learning.
3 Người tham gia được chọn thực hiện huấn luyện mô hình cục bộ.
4 Central server thu thập những cập nhật và thực hiện tổng hợp.
Mô hình triển khai thực nghiệm của Phương pháp A được xây dựng trên Python kết hợp sử dụng thư viện PyTorch, PySyft và nền tảng PyGrid được đề cập trong Phần 2.5. Đầu tiên, thực hiệ khởi tạo mô hình central server bằng cách sử dụng docker- compose (được mô tả ở Hình
Các phương pháp tấn công đầu độc dữ liệu
FL khi thực hiện tan công đầu độc mô hình, tác giả đưa ra 2 phương pháp tấn công đầu tổng quan các trường hợp và khả năng của Attacker trong môi trường độc nhằm mục đích thực nghiệm và đánh giá trong Khóa luận tốt nghiệp này Cụ thể với các phương pháp tan công sau:
* Phương pháp tắn công đầu độc sử dụng dữ liệu có sẵn (gọi là phương pháp A): đặt trường hợp kẻ tan công với khả năng đã có trước day đủ dữ liệu để tiến hành đầu độc hệ thống.
!https://www.kaggle.com/c/digit-recognizer/data
?https:/www.kaggle.com/zalando-research/fashionmnist
Thực nghiệm tan công đầu độc sử dụng dữ liệu cósẵn
Cấuhìnhthựcnghệm
Thiết lập mô hình (Model settings): Tác giả sử dụng mô hình Convolution neutral network (CNN) để xây dựng mô hình phân loại anh cho cả 2 tập dữ liệu MNIST và F- MNIST Bảng mô tả ngắn gon cấu trúc của Global model được sử dung trong phương pháp tan công này.
Bảng 4.2: Cấu trúc Global model trong tấn công đầu độc sử dung dữ liệu có sẵn
Cấu hình quá trình huấn luyện (Training configurations): Tác giả tiến hành lựa chọn và cầu hình các thông số liên quan đến việc tan công và quá trình huấn luyện mô hình Cụ thể như sau:
* Tổng số người tham gia (Participants): Tổng số người tham gia vào quá trình FL trong phương pháp tấn công này sẽ được chọn là 50.
* S6 người tham gia trong một vòng (Participants per round): Số người tham gia trong một vòng được lựa chọn từ Participants, mặc định là 5. w n
* Dữ liệu của người tham gia: Dữ liệu huân luyện của người tham gia vào quá trình
FL sẽ bằng số lượng mẫu dữ liệu của từng tập dữ liệu MNIST và F-MNIST chia đều cho số người tham gia, cụ thể là 1200 mẫu dữ liệu cho mỗi người tham gia.
* Thông số của quá trình huắn luyện: Attacker sẽ thực hiện huấn luyện local model với các thông số giống với người tham gia bình thường.
Tác giả tiến hành thực nghiệm quá trình FL trong 200 vòng cho tập dữ liệu F-MNIST và 100 vòng đối với tập dữ liệu MNIST Việc lựa chọn số vòng cho mỗi tập dữ liệu sẽ được tác giả làm rõ ở phần tiếp theo.
Cấu hình tấn công (Attack configurations): Tác giả tiến hành thực nghiệm tấn công đầu độc với số lượng kẻ tấn công tăng dần Với các cách thiết lập thay đổi nhãn của từng tập dữ liệu được tác giá mô tả và giải thích cụ thể ở Chương 4.3.4
Triển khai thựcnghệm
Với mỗi quá trình FL, đều có các bước cơ bản như sau:
2 Chọn người tham gia vào quá trình Federated Learning.
3 Người tham gia được chọn thực hiện huấn luyện mô hình cục bộ.
4 Central server thu thập những cập nhật và thực hiện tổng hợp.
Mô hình triển khai thực nghiệm của Phương pháp A được xây dựng trên Python kết hợp sử dụng thư viện PyTorch, PySyft và nền tảng PyGrid được đề cập trong Phần 2.5. Đầu tiên, thực hiệ khởi tạo mô hình central server bằng cách sử dụng docker- compose (được mô tả ở Hình
Central server sẽ thực hiện chờ đợi đủ số lượng người tham gia cần thiết (tự cấu hình), khi đã đủ số lượng người tham gia thì sẽ thực hiện chọn ra một số lượng người tham gia trong một vòng, mô tả tại Hình và Hình
Cuối cùng khi kết thúc quá trình, central server sẽ thực hiện tính toán và kiểm tra độ chính xác của global model Sau đó, thực hiện lưu dữ liệu xuống máy để phân tích và đánh giá cho mỗi thực nghiệm.
4.3.3 Thực nghiệm A1: Xác định số vòng phù hợp của quá trình
FL cho mỗi tập dữ liệu
Tác giả tiến hành thực nghiệm để đưa ra được sô lượng round cần thiết của quá trình FL cho cả 2 tập dữ liệu F-MNIST và MNIST, từ đó có thể thu thập được các thông số cần thiết của quá trình FL để hỗ trợ cho việc đánh giá của các thực nghiệm sau này.
Tác giả tiến hành thực nghiệm trên cả 2 tập dữ liệu F-MNIST và MNIST với các thông số huấn luyện cho cả 2 tập dữ liệu như sau:
* F-MNIST: có epoch = | và lr = 0.05.
Hình 4.4 và 4.5 mô tả kết quả thực nghiệm về độ chính xác của global model khi không có tan công đầu độc của 2 tập dữ liệu F-MNIST va MNIST được tính toán trung bình qua 5 lần chạy Kết quả thực nghiệm trên tập dữ liệu F-MNIST (được mô tả ở Hình 4.4) cho thấy độ chính xác của global model có chiều hướng tăng dần qua các vòng của quá trình FL, đến round thứ 100 thì mô hình bắt đầu đạt đến mức độ chính xác nhất định và dần đạt đến điểm hội tụ cho tới round 200 Trong khi đó, đối với tập dữ liệu MNIST (Hình 4.5), mô hình toàn cục đạt đến độ chính xác cao rất som khi so với mô hình trong tập dữ liệu F-MNIST, kết quả cũng cho thấy rằng từ round 50 thì mô hình đã bắt đầu hội tụ và có độ chính xác trung bình là 95%.
Việc lựa chọn số vòng của quá trình FL để cho global model được huấn luyện đạt éo dai quá trình FL nhưng khi thu thập kết quả thực nghiệm, tác giả nhận thấy rằng số vòng 200 cho tập dữ liệu F-MNIST và 100 cho MNIST là giá trị phù hợp cho thực nghiệm trong Khóa luận này Từ kết quả được độ chính xác cao rất quan trọng, tác giả có thể trên, tác giả tiền hành thu thập những giá trị cần thiết làm giá trị cơ sở (baseline) để dễ dang so sánh khi thực nghiệm tấn công đầu độc, ví dụ các giá trị như accuracy, class recall, baseline misclassification. s5
Hình 4.4: Độ chính xác của mô hình toàn cục qua các vòng của quá trình FL không bị tấn công đầu độc trên tập dữ liệu F-MNIST Hình ở trên mô tả kết quả 5 lần chạy thực nghiệm và hình phía dưới mô tả độ chính xác của mô hình toàn cục dựa trên giá trị trung bình của 5 lần chạy.
4.3.4 Thực nghiệm A2: Đánh giá ảnh hưởng của việc chon cặp nhãn dif liệu tấn công Để đánh giá ảnh hưởng của việc chọn cặp nhãn dữ liệu để thực hiện tấn công đầu độc, tác giả tiền hành thực nghiệm với mỗi tập dữ liệu trên 3 cặp thiết lập với tỉ lệ nhằm lẫn tăng dần (khi không có tan công đầu độc) ở 3 mức độ gồm: thấp nhất (L), trung
Hình 4.5: Độ chính xác của mô hình toàn cục qua các vòng của quá trình FL không bị tấn công đầu độc trên tập dữ liệu MNIST Hình ở trên mô tả kết quả 5 lần chạy thực nghiệm và hình phía dưới mô tả độ chính xác của mô hình toàn cục dựa trên giá trị trung bình của 5 lần chạy. bình (M), và cao (H) Cùng với đó, tác giả đánh giá độ chính xác của global model khi xảy ra tấn công trong nhiều vòng với từng thiết lập của mỗi tập dữ liệu.
Dựa trên giá tri baseline misclassification (m_cnt) của mỗi thiết lập khi không có tan công đầu độc, tác giả lựa chọn các cặp nhãn dữ liệu tương ứng với từng mức độ dựa vào nghiên cứu trong [7] như sau: m_cnt = 137). s® MNIST: (1) 3 > 9 (L, m_cnt = 3); (2) 6 — 0 (M, m_ent = 8); (3) 7 > 2 (H, m_cnt = 17).
Sau đó, tác giả tiến hành tan công với tỉ lệ kẻ tan công (m%) tăng dan từ 2% đến 50% trên tổng số người tham gia vào quá trình FL để đánh giá kết quả và mức độ ảnh hưởng của từng mốc tỉ lệ Độ chính xác của global model được theo dõi qua từng vòng cho đến khi kết thúc quá trình FL Để tính sự chênh lệch của sourceclassrecall của từng thiết lập đối với baseline misclassification, tac giả sử dụng Công thức 4.1
Asource_class_recall = source_class_recallyp — source_class_recall„(%) (4.1) trong đó, source_class_recallyp là tỉ lệ của c„„„ khi không có tấn công đầu độc và
$ource_class_recall„ tương ứng với tỉ lệ của cs, với từng trường hợp có m% attacker trong quá trình FL Công thức 4.1 sẽ được áp dụng để tính kết quả trong Bảng 4.3. a Ti lệ kẻ tân công tham gia (m%) sre > Crarget | M_CMparget 2 4 1Ô 20 30 40 50
Bang 4.3: Sự chênh lệch về tỉ lệ của source class recall với các thiết lập source > target đối với tỉ lệ baseline misclassification khi không có tan công của 2 tập dữ liệu F-MNIST và MNIST.
Bảng 4.3 mô tả kết quả về sự chênh lệch tỉ lệ của source class recall với các thiết lập khác nhau cho mỗi tập dữ liệu Xem xét kết quả đối với mỗi tập dữ liệu như sau:
- Đối với tập dữ liệu F-MNIST, khi tỉ lệ attacker thấp (m < 20%), tin công trên cặp dữ liệu H (6 — 0) sẽ đạt hiệu quả tốt nhất, cụ thể là tăng 17.62% khi
4 m = 20% Tuy nhiên, khi tăng tỉ lệ artacker từ 30% đến 50%, tan công trên các cặp dữ liệu M và L đạt hiệu quả cao hơn, cụ thể khi tỉ lệ attacker m = 50% thì tỉ lệ chênh lệch này đạt 74.44% với thiết lập L, trong khi đó ở thiết lập H chi đạt