Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
Phương pháp khuyến khích cộng tác đào tạo mơ
hình học máy bằng Blockchain và học liên kết
Hoàng Tuấn Anh∗† , Ngân Văn Luyện∗† , Đỗ Hồng Hiển∗† , Phan Thế Duy∗†
∗
Phịng Thí Nghiệm An Tồn Thơng Tin, Trường Đại Học Cơng Nghệ Thơng Tin
† Đại Học Quốc Gia Tp. Hồ Chí Minh
Email: {18520446, 18521074}@gm.uit.edu.vn, {hiendh, duypt}@uit.edu.vn
Tóm tắt—Ngày nay, lượng dữ liệu được sinh ra từ các
thiết bị Vạn vật kết nối (Internet of Things - IoT) ngày càng
lớn, tạo tiền đề cho sự phát triển của các ứng dụng trí tuệ
nhân tạo. Tuy nhiên, với cách tiếp cận truyền thống, việc thu
thập dữ liệu người dùng một cách tập trung đang ngày càng
trở nên khó khăn. Đã có những báo cáo cho thấy tồn tại
những hành vi xâm hại đến quyền riêng tư trên dữ liệu của
người dùng. Hơn nữa, lợi ích nhận được từ việc đào tạo các
mơ hình học máy đa phần không được phân chia cho người
sở hữu dữ liệu. Do đó, người dùng thường khơng sẵn sàng
chia sẻ dữ liệu của họ với người khác. Trong bài báo này,
chúng tôi đề xuất một bộ khung giải pháp giúp tận dụng tối
đa nguồn tài nguyên dữ liệu của người dùng, mà vẫn đảm
bảo quyền riêng tư của họ. Chúng tôi áp dụng học liên kết
(Federated Learning - FL) vào việc huấn luyện các mơ hình
máy học. Người dùng chỉ chia sẻ mơ hình học máy được đào
tạo trên dữ liệu của họ thay vì chia sẽ dữ liệu thơ. Do đó
quyền riêng tư của người dùng được đảm bảo. Hơn nữa, các
hoạt động đóng góp của người dùng trong hệ thống được ghi
lại vào Blockchain. Điều này đảm bảo được sự minh bạch
trong quá trình vận hành hệ thống và khuyến khích người
dùng tham gia đóng góp đào tạo mơ hình học máy.
Từ khóa—Blockchain, federated learning, học máy.
I. GIỚI THIỆU
Hiện nay, nhiều quốc gia đã và đang đẩy mạnh chiến
lược xây dựng đơ thị thơng minh để đón đầu cuộc đua
về sáng tạo khoa học kỹ thuật trong bối cảnh Cách mạng
Cơng nghiệp lần thứ Tư (CMCN 4.0). Chìa khố để hiện
thực chiến lược này chính là trí tuệ nhân tạo (Artificial
Intelligence - AI), yếu tố đang định hình một hệ sinh thái
công nghệ xoay quanh việc phục vụ tối đa lợi ích của
người dân thơng qua việc thực hiện q trình chuyển đổi
số - số hóa dữ liệu. Trong đó, dữ liệu được người dùng
chia sẻ đóng vai trị quan trọng trong việc xây dựng hệ
sinh thái thông minh, mềm dẻo và bền vững trong từng
lĩnh vực của đời sống kinh tế - xã hội. Các mơ hình AI
hiện nay đang tận dụng những tiến bộ trong mơ hình học
máy (Machine Learning - ML) để nâng cao tính ưu việt
của hệ sinh thái thông minh. Điều này cần một khối lượng
dữ liệu lớn và đa dạng để đào tạo. Cách tiếp cận xây dựng
mơ hình ML hiện nay chủ yếu là thu thập dữ liệu cho
việc đào tạo tập trung tại một máy chủ, sau đó đào tạo
mơ hình trên dữ liệu đó. Tuy nhiên, cách tiếp cận này đang
dần trở nên khó khả thi vì những rủi ro về quyền riêng tư
của người dùng. Đồng thời, các chủ sở hữu dữ liệu cũng
ISBN 978-604-80-5958-3
152
không sẵn sàng chia sẻ dữ liệu vì khơng được hưởng lợi
từ việc đóng góp dữ liệu của mình cho q trình đào tạo
mơ hình máy học. Vì vậy, để xây dựng được một một hệ
sinh thái thơng minh, tồn diện, cần có một cách tiếp cận
máy học mới. Cách tiếp cận này cần phải giải quyết được
vấn đề liên quan đến quyền riêng tư của người dùng, và
đảm bảo được nguồn lợi cho chủ sở hữu dữ liệu.
Trong bối cảnh đó, phương pháp học cộng tác/học liên
kết (Federated Learning- FL) xuất hiện như một giải pháp
có thể đáp ứng được yêu cầu huấn luyện mơ hình ML hiệu
quả mà vẫn đảm bảo tính bảo mật và riêng tư của dữ liệu.
Sử dụng phương pháp FL, các thực thể (các tổ chức, cá
nhân, thiết bị IoT, ...) tham gia cộng tác được phân phối
mơ hình hiện tại từ máy chủ trung tâm và thực hiện huấn
luyện ngay tại chính thực thể đó bằng cách sử dụng bộ
dữ liệu cục bộ. Người dùng chia sẻ mô hình kết quả cho
trung tâm tổng hợp thay vì chia sẻ dữ liệu thơ của mình.
Điều này giúp giải quyết được phần lớn các vấn đề liên
quan đến quyền riêng tư dữ liệu người dùng. Tại máy chủ
tổng hợp, quy trình huấn luyện diễn ra nhiều chu kì cho
đến khi mơ hình tồn cục được tối ưu và đạt hiệu năng
như mong đợi.
Tuy nhiên, trong thực tế còn rất nhiều vấn đề xoay quanh
việc triển khai hệ thống học liên kết. Trong đó, điển hình là
việc thiếu kiểm sốt hoạt động sử dụng nguồn tài nguyên
mà người dùng cung cấp vào các mục đích xấu và vấn
đề làm sao để sự đóng góp của người dùng được trả cơng
xứng đáng. Việc chỉ gửi mơ hình cục bộ đã được huấn
luyện trên dữ liệu cá nhân lên hệ thống thay vì dữ liệu
thơ chưa hồn tồn giải quyết được các vấn đề về quyền
riêng tư. Nhiều nghiên cứu đã chỉ ra rằng, thơng qua các
mơ hình nhận được, kẻ tấn cơng có thể thực hiện cuộc tấn
cơng suy ngược [7]. Bên cạnh đó, vấn đề các nguồn lợi từ
việc huấn luyện mơ hình học máy khơng được phân chia
hợp lý cho các bên tham gia cũng khiến chủ sở hữu dữ
liệu do dự khi được mời tham gia đóng góp. Để giải quyết
các vấn đề trên, Blockchain được chúng tôi đề xuất như
một giải pháp hỗ trợ FL trong việc lưu trữ bằng chứng về
hoạt động của các thực thể trong hệ thống. Những bằng
chứng này phục vụ cho quá trình điều tra về hoạt động sử
dụng các đóng góp của người dùng bởi các tổ chức tổng
hợp mơ hình. Hơn nữa, những đóng góp của người dùng
được Blockchain ghi lại, đảm bảo sự chính xác và bất biến
Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
(không thể sửa đổi hoặc xóa), hỗ trợ việc trả thưởng cho
người dùng một cách chính xác và minh bạch.
II. NGHIÊN CỨU LIÊN QUAN
Học liên kết đã tạo điều kiện thuận lợi để giải quyết
các vấn đề về quyền riêng tư và bảo mật dữ liệu so với
cách đào tạo mơ hình máy học truyền thống, với khả năng
đào tạo mơ hình máy học phân tán mà không cần chủ
sở hữu dữ liệu phải chia sẻ dữ liệu riêng tư của họ. Một
số nghiên cứu trước đây [1], [2] đã nghiên cứu các ứng
dụng của FL trong nhiều ngữ cảnh của nền công nghiệp
IoT. Đặc biệt, Dinh C.Nguyen và cộng sự [1] đã thực hiện
một cuộc khảo sát và đánh giá toàn diện về ứng dụng của
FL trong mạng lưới IoT. Nhóm tác giả cũng thảo luận về
vai trò của FL trong một loạt các dịch vụ IoT như chia
sẻ dữ liệu, phát hiện tấn công, cảm biến đám đông trên
thiết bị di động cũng như quyền riêng tư và bảo mật IoT.
Bài báo cũng đã chứng minh tính linh hoạt của FL trong
một số lĩnh vực như chăm sóc sức khỏe, giao thông, máy
bay không người lái (UAV), ... Sau cùng, bài báo cũng chỉ
ra những thách thức và định hướng có thể nghiên cứu và
triển khai FL trong lĩnh vực này.
Về việc xây dựng khung học tập liên kết dựa trên
Blockchain cho các thiết bị IoT, cũng đã có một số nỗ
lực nghiên cứu tập trung vào vấn đề này [3], [4]. Cụ thể,
trong nghiên cứu của Rui Wang và cộng sự [3] là những
người đầu tiên đề xuất tích hợp Blockchain, MEC vào quy
trình học liên kết nhằm cải thiện quyền riêng tư, chất lượng
và chi phí giao tiếp hệ thống. Nhóm tác giả cũng đề xuất
thuật tốn ngăn chặn các bản cập nhật độc hại nhằm bảo
vệ FL và thiết kế cơ chế khuyến khích người dùng tham
gia đào tạo mơ hình. Trong nghiên cứu về đảm bảo quyền
riêng tư dữ liệu trong ngành công nghiệp IoT [4], Y. Lu
và cộng sự đã thiết kế một kiến trúc chia sẻ dữ liệu an
toàn sử dụng FL và Blockchain. Nhằm cải thiện các vấn
đề liên quan đến quyền riêng tư trong FL để tăng cường
đào tạo [5], nhóm tác giả đã triển khai một cơ chế bảo mật
nâng cao sử dụng Differential Privacy và Homomorphic
encryption. Trong cơng trình này nhóm tác giả cũng sử
dụng (IPFS) làm nơi lưu trữ dữ liệu để xây dựng một hệ
thống hoàn toàn phi tập trung. Họ cũng đề xuất một cơ
chế khuyến khích chủ sở hữu dữ liệu tham gia đào tạo mơ
hình bằng cách sử dụng hợp đồng thơng minh Ethereum.
Ngồi ra, cơng trình nghiên cứu về thiết kế cơ chế
khuyến khích cho việc học liên kết [6], Yufeng Zhan và
cộng sự đã trình bày và phân loại các cơ chế khuyến khích
hiện có đối với việc học liên kết, sau đó, thực hiện đánh
giá so sánh. Các tác giả đã chỉ ra các cơ chế khuyến
khích đã bị bỏ qua hoặc chưa được liên kết với các thuật
tốn trong các mơ hình hiện tại và đề nghị việc xây dựng
cơ chế khuyến khích cũng cần xây dựng một hệ thống
bảo mật hơn để người dùng an tâm tham gia đào tạo mơ
hình. Nhóm tác giả cũng đã nêu lên những ý tưởng về xây
dựng cơ chế khuyến khích. Nghiên cứu đã nêu một các
tổng quan về cơ chế khuyến khích trong học liên kết. Tuy
ISBN 978-604-80-5958-3
153
nhiên, đây chỉ là một khảo sát và đánh giá; dù mang lại
một cái nhìn tổng quan và nhiều cách để giải quyết khác
nhau, nhưng chưa được triển khai để đáp ứng đầy đủ các
yêu cầu của các hệ thống hiện tại.
III. KIẾN TRÚC ĐỀ XUẤT
A. Tổng quan kiến trúc
Để giải quyết các vấn đề đã nêu trên, một kiến trúc với
sự kết hợp giữa Federated learning và Blockchain được
chúng tôi đề xuất và thiết kế như mơ tả trong Hình 1. Hệ
thống với vai trị tạo ra mơi trường đáng tin cậy, có khả
năng khai thác nguồn tài nguyên dữ liệu của người dùng
mà vẫn đảm bảo được các vấn đề về quyền riêng tư cho
chủ sở hữu. Người đóng góp có thể yên tâm về những
nguồn lợi mà mình nhận được là hồn tồn xứng đáng với
những gì họ đóng góp. Người đưa ra lời kêu gọi đào tạo
tổng hợp mơ hình có thể n tâm rằng mọi người trong
mạng Fedchain đều thấy được yêu cầu của họ và cùng
nhau đóng góp cho mơ hình chung.
Hình 1. Kiến trúc của hệ thống FedChain
Một cá nhân hay tổ chức (task publisher) muốn xây
dựng một mơ hình máy học mới, điều họ cần làm là đăng
ký mở tác vụ huấn luyện với hệ thống. Bên cạnh các thơng
tin hỗ trợ cho việc tổng hợp mơ hình, một khoản phí cần
được thanh tốn nhằm trả cơng cho những người tham gia
đóng góp. Các cá nhân có bộ dữ liệu phù hợp sẽ xem xét
và quyết định đóng góp cho việc xây dựng mơ hình này.
Chủ sở hữu dữ liệu cần cung cấp thông tin về bộ dữ liệu,
thông tin phần cứng mà người đó sở hữu và bắt đầu huấn
luyện mơ hình. Kết quả sau khi huấn luyện được gửi lại
máy chủ tổng hợp. Hành vi đóng góp này được Blockchain
ghi lại và hệ thống sẽ tiến hành trả thưởng dựa trên những
Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
bằng chứng này. Khi có được số lượng đủ lớn các mơ hình
từ phía người dùng gửi lên, máy chủ tổng hợp sinh ra một
mơ hình trung tâm và trả về cho task publisher. Kết quả
sau cùng là task publisher có được mơ hình máy học mà
mình mong muốn. Các chủ sở hữu dữ liệu vừa bảo vệ
được quyền riêng tư, vừa được trả công một cách xứng
đáng.
Bên cạnh Federated learning và Blockchain, chúng tôi
sử dụng mạng sinh đối kháng (Generative Adversarial
Networks - GAN) như một giải pháp để giải quyết vấn
đề mất cân bằng dữ liệu giữa những người tham gia đóng
góp. IPFS được sử dụng để lưu trữ các mơ hình được
người dùng tải lên, với mục đích giảm tải cho hệ thống
Blockchain trong q trình lưu trữ. Đồng thời, nó cũng
giải quyết các vấn đề mà phương thức lưu trữ dữ liệu tập
trung gặp phải. Sự kết hợp trên giúp cho hệ thống của
chúng tơi hoạt động một cách chính xác và mềm dẻo hơn
trong quá trình vận hành. Chi tiết về các thành phần cũng
như cách chúng phối hợp với nhau sẽ được chúng tơi trình
bày cụ thể trong các phần tiếp theo.
B. Federated Learning
Mỗi người sở hữu một bộ dữ liệu khác nhau, do đó, với
cùng một thuật tốn máy học và các tham số truyền vào,
mơ hình được tạo ra sẽ có những đặc trưng riêng theo
từng bộ dữ liệu. Dựa vào điều này, Federated learning ra
đời như một cách tiếp cận mới trong lĩnh vực trí tuệ nhân
tạo, với ý tưởng là tổng hợp một mô hình trung tâm từ các
mơ hình biên được huấn luyện trên chính bộ dữ liệu của
người tham gia đóng góp. Bằng phương pháp này, người
sở hữu dữ liệu chỉ cần gửi đi mơ hình máy học đã được
huấn luyện thay vì gửi đi dữ liệu thơ. Từ đó, khắc phục
được phần lớn vấn đề liên quan đến quyền riêng tư cá
nhân. Bốn bước để xây dựng nên một mơ hình máy học
sử dụng Federated learning được chúng tơi trình bày cụ
thể trong Algorithm 1.
Để bắt đầu xây dựng một mô hình học máy, một bộ
trọng số của mơ hình tồn cục sẽ được cung cấp. Các
thông số như rounds, epochs, clients, ... cũng được cung
cấp ngay từ bước này. Những người dùng sau khi đăng
ký đóng góp sẽ nhận được các thông số trên, tương ứng
với loại tác vụ được đăng ký. Họ sẽ tiến hành sử dụng nó
để huấn luyện trên chính tập dữ liệu của họ sở hữu. Sau
khi trải qua quá trình đào tạo, những người tham gia đóng
góp gửi kết quả lên hệ thống để phục vụ cho bước tổng
hợp mơ hình tồn cục. Tất cả hoạt động của người tham
gia đều được ghi lại vào Blockchain. Từ những mơ hình
được người dùng đóng góp, có nhiều thuật tốn để có thể
tính tốn ra một mơ hình tồn cục với độ chính xác khác
nhau. Tuy nhiên, trong khuôn khổ bài báo này, chúng tôi
sử dụng FedAVG [10] làm thuật toán tổng hợp bởi sự đơn
giản trong triển khai và tính hiệu quả trong tổng hợp mơ
hình của nó. Cuối cùng, máy chủ sẽ phân phối lại mơ hình
đã được tổng hợp cho người tham gia huấn luyện để tiếp
tục cải tiến. Trên thực tế, mỗi bộ dữ liệu sẽ có sự thay đổi
ISBN 978-604-80-5958-3
154
theo thời gian, do đó, việc huấn luyện cần phải lặp đi lặp
lại nhiều lần để có được độ chính xác tốt nhất.
Algorithm 1 Quy trình huấn luyện mơ hình máy học dựa
trên Học liên kết
Input:
- Máy chủ tổng hợp AS;
- Người dùng C = {C0 , C1 , ...Cn }, muốn tham gia
đóng góp cho mơ hình
- Số vịng trao đổi R giữa server và thành viên tham
gia.
Output: Mơ hình máy học với chất lượng tốt.
1: 1. Khởi tạo:
2: - Tại máy chủ tổng hợp: Một mơ hình máy học M
được thiết lập với bộ trọng số w0 và các thiết lập ban
đầu.
3: - Tại thiết bị của người : Người dùng C nhận mơ hình
M với các trọng số w0 và các tham số liên quan.
4: Xây dựng mơ hình:
5: r ← 1
6: snod ← Số lượng dữ liệu được chỉ định
7: while r ≤ R do
8:
2. Huấn luyện local model
9:
k←1
10:
while k ≤ n do
11:
cd ← Client Ck datasets
12:
if cd < snod then
13:
while cd < snod do
14:
GAN tạo và cấp datasets.
15:
end while
16:
end if
17:
Client Ck huấn luyện mơ hình Mk sử dụng bộ
dữ liệu cá nhân.
18:
Gửi lại các trọng số wkr cho AS.
19:
k ←k+1
20:
end while
21:
3. Máy chủ tổng hợp
22:
- AS nhận tất cả wkr từ những người dùng.
23:
- AS sử dụng thuật tốn FedAVG tạo ra mơ hình
mới với bộ trọng số wr .
24:
4. Máy chủ tổng gợp gửi lại mơ hình mới cho
người dùng
25:
k←1
26:
while k ≤ n do
27:
Người dùng Ck cập nhật trọng số wr cho mơ
mình Mk .
28:
k ←k+1
29:
end while
30:
r ←r+1
31: end while
32: return Mơ hình máy học với bộ trọng số w R .
Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
C. Blockchain trong triển khai cơ chế khuyến khích và
giám sát hệ thống
Dựa vào tính minh bạch và bất biến của Blockchain,
chúng tơi triển khai nó một cách song song với Federated
learning, hỗ trợ việc ghi lại hành vi của thành viên trong hệ
thống. Chúng tôi xây dựng hệ thống Blockchain để giám
sát 5 hoạt động chính của hệ thống để đảm bảo thực hiện
cơ chế khuyến khích một cách chính xác và cơng bằng
nhất. Đồng thời, nó cho phép quản lý được việc sử dụng
dữ liệu của những người tổng hợp mô hình. Các hành vi
được giám sát bởi Blockchain bao gồm:
•
•
•
•
•
Đăng ký thành viên hệ thống
Để tham gia vào hệ sinh thái FedChain, người dùng
cần có một định danh để hệ thống quản lý các hành
vi của họ. Do đó người dùng cần đăng ký thành viên
trước khi thực hiện các chức năng khác. Trong phạm
vi bài báo này, chúng tôi sử dụng mã hoá bất đối
xứng làm cơ chế xác thực danh tính người dùng trog
hệ thống. Do đó, người dùng cần tạo ra một cặp khố
cho riêng mình, sau đó gửi một vài thơng tin cá nhân
cần thiết kèm theo khố cơng khai của mình. Mọi
u cầu khi gửi đi cần được mã hố bằng khố bí
mật của người gửi, hệ thống xác thực bằng cách sử
dụng khố cơng khai của họ.
Đăng ký mở một tác vụ huấn luyện
Khi đăng ký mở một tác vụ huấn luyện mới, task
publisher cần cung cấp thơng tin về loại tác vụ đó.
Những thông tin này sẽ được công bố cho tất cả các
thành viên trong mạng được biết. Người sở hữu bộ
dữ liệu phù hợp sẽ đăng ký vào tác vụ này. Ngồi
ra, task publisher cần cung cấp một khoản phí để trả
thưởng cho người dùng theo từng chu kỳ.
Đăng ký đóng góp cho một tác vụ cụ thể
Các tác vụ sau khi được đăng ký với hệ thống được
những thành viên khác tham gia đóng góp. Để tham
gia vào một tác vụ cụ thể, chủ sở hữu dữ liệu cần
cung cấp thông tin chi tiết về tài nguyên phần cứng
và đặc điểm bộ dữ liệu mà họ sở hữu. Sau khi đăng
ký thành cơng, một mơ hình sơ khai được gửi cho
người đăng ký để tiến hành huấn luyện mơ hình trên
chính bộ dữ liệu của mình.
Gửi kết quả huấn luyện lên máy chủ tổng hợp
Sau khi trải qua quá trình huấn luyện, kết quả sẽ
được gửi lên hệ thống. Mô hình sau khi được gửi lên
được lưu trữ trong hệ thống lưu trữ phân tán IPFS,
cùng với đó, hành vi đóng góp cũng được hệ thống
ghi vào Blockchain. Những thơng tin này sẽ phục vụ
trong việc truy xuất nguồn gốc các mơ hình và trả
thưởng cho người dùng.
Tổng hợp mơ hình tồn cục
Chức năng này thường được sử dụng bởi task publisher. Sau một thời gian kể từ khi đăng ký mở một
tác vụ huấn luyện mơ hình máy học với hệ thống,
người đăng ký tiến hành tổng hợp lại các đóng góp
ISBN 978-604-80-5958-3
155
của người dùng để xây dựng nên một mơ hình tồn
cục (global model).
Tất cả các hoạt động trên đều được ghi vào Blockchain.
Vì vậy, nếu có bất kỳ vấn đề nào liên quan đến hoạt động
phá hoại đều có thể dễ dàng truy xuất được kẻ tấn cơng.
Bên cạnh đó, hoạt động vận hành và trả thưởng cho người
dùng cũng trở nên đáng tin cậy khi không có bất cứ bên
thứ ba nào can thiệp vào hệ thống trong quá trình vận
hành.
D. Khắc phục vấn đề mất cân bằng dữ liệu
Tuy nhiên, các mơ hình được đào tạo bằng FL thường
có hiệu suất kém hơn so với các mơ hình được đào tạo
bằng phương pháp học tập trung, đặc biệt khi dữ liệu đào
tạo bị chênh lệnh về số lượng mẫu cũng như tỉ lệ theo
nhãn có sự chênh lệnh lớn giữa các tập dữ liệu của người
dùng (Non-IID) [8]. Chúng tôi sử dụng GAN như một giải
pháp giúp khắc phục vấn đề này trong ngữ cảnh dữ liệu
Non-IID. Việc triển khai GAN được thực hiện ngay trên
các thiết bị huấn luyện của người dùng. Với khả năng sinh
dữ liệu của mình, GAN có khả năng giải quyết tốt vấn đề
mất cân bằng dữ liệu giữa các thiết bị tham gia.
IV. THỰC NGHIỆM VÀ ĐÁNH GIÁ HIỆU NĂNG HỆ
THỐNG
Hệ thống FedChain được chúng tơi đề xuất có thể hỗ
trợ việc xây dựng các mơ hình AI trong nhiều lĩnh vực
khác nhau. Tuy nhiên, trong phạm vi bài báo này, chúng
tơi tiến hành xây dựng một mơ hình máy học có nhiệm
vụ phát hiện các cuộc tấn cơng mạng. Để chứng minh hệ
thống có khả năng vận hành tốt, chúng tơi đánh giá trên
hai khía cạnh khác nhau. Thứ nhất, chúng tơi đánh giá chất
lượng mơ hình được tạo ra bằng phương pháp Federated
learning và GAN. Thứ hai, chúng tôi kiểm tra hiệu năng
xử lý của hệ thống Blockchain về khía cạnh thời gian xử
lý và mức độ tiêu tốn tài ngun tính tốn trong ngữ cảnh
có nhiều thiết bị cùng tham gia.
A. Thiết lập môi trường thực nghiệm
Môi trường thực nghiệm FL và GAN
Tensorflow được sử dụng cho việc triển khai FL và
GAN. Cấu hình máy dùng cho đào tạo FL và GAN là
CPU: Intel® Xeon® E5-2660 v4 (16 cores - 2.0 Ghz),
RAM: 64 GB, OS: Ubuntu 16.04.
Môi trường thực nghiệm Blockchain
Hyperledger Sawtooth [11] được sử dụng làm nền tảng
triển khai Blockchain. Việc triển khai được thực hiện với 5
nodes đồng thuận dựa trên thuật toán đồng thuận Practical
Byzantine Fault Tolerance (PBFT) bởi khả năng chịu lỗi và
thời gian phản hồi tốt. Các node hoàn toàn được triển khai
bằng Docker. Máy được cấu hình để tham gia vào mạng
IPFS. Cấu hình máy sử dụng là CPU: Intel® Core™ i59300H (4 cores - 8 threads - 3.5 Ghz), RAM: 16 GB, OS:
Ubuntu 16.04.
Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
B. Dataset và tiền xử lý dữ liệu
•
•
Dataset
Chúng tơi sử dụng tập dữ liệu CICIDS-2017 [9] do
Viện An ninh mạng Canada cung cấp để đánh giá
chương trình FedChain. Chúng tơi chỉ sử dụng dữ liệu
từ 3 tệp (Tuesday, Wednesday, Thursday-Afternoon)
với tổng số hơn 1,3 triệu bản ghi mô tả các cuộc tấn
công mạng điển hình như DoS Hulk, DoS Golden
Eye, DoS slowloris, DoS Slowhttptest, Heart-bleed,
FTP-Patator, SSH-Patator, Infiltration.
Tiền xử lý dữ liệu
Theo một nghiên cứu được công bố trong bài báo [9],
Kurni-abudi và cộng sự đã cho thấy rằng, trong số 79
thuộc tính của 1 cuộc tấn cơng, chỉ có 16 thuộc tính
hàng đầu được cho là có thể dễ dàng trích xuất và
quan sát, cũng như có ảnh hưởng lớn đến việc phát
hiện một cuộc tấn cơng. Các thuộc tính được lựa chọn
này là Destination Port, FlowDuration, Packet Length
Std, Total Length of Bwd Packet, Subflow Bwd Bytes,
Packet Length Variance, Bwd PacketLength Mean,
Bwd Segment Size Avg, Bwd Packet LengthMax, Total
Length of Fwd Packets, Packet Length Mean, Max
Packet Length, Subflow Fwd Bytes, Average Packet
Size, InitWinbytesbackward, InitWinbytesforward.
C. Đánh giá hiệu năng hệ thống
• Hiệu suất GAN trong việc sinh dữ liệu đối kháng
để so sánh kết quả với ngữ cảnh huấn luyện trên dữ
liệu tập trung. Các mơ hình phía người dùng sử dụng
thuật tốn LSTM để huấn luyện. Thuật toán này cũng
được dùng để huấn luyện trong ngữ cảnh tập trung
tất cả dữ liệu. Kiến trúc mơ hình cấu tạo như sau:
Lớp LSTM với 64 internal units, lớp Dense với 16
internal units. Mơ hình có đầu vào với kích thước
(16,1) và đầu ra là kết quả sau khi qua lớp Dense với
hàm kích hoạt sigmoid. Riêng đối với FL, chúng tôi
tiến hành huấn luyện trong 3, 6, 9 và 12 vòng với 3
người dùng. Kết quả sau khi triển khai được chúng
tơi trình bày trong Bảng I và Bảng II.
Bảng I
KẾT QUẢ
Without
GAN
With
GAN
THỰC NGHIỆM TRONG NGỮ CẢNH DỮ LIỆU
Round
3
6
9
12
3
6
9
12
Precision
0.9035
0.9482
0.9725
0.9413
0.9457
0.9541
0.9129
0.959
Recall
0.6342
0.591
0.5778
0.5696
0.9021
0.9026
0.9645
0.9007
F1-score
0.7452
0.7281
0.7249
0.7097
0.9233
0.9276
0.9379
0.9289
NON-IID
Accuracy
0.9564
0.9557
0.9559
0.9532
0.9331
0.9371
0.9612
0.9581
Bảng II
KẾT
QUẢ THỬ NGHIỆM TRONG TRƯỜNG HỢP TẬP TRUNG DỮ LIỆU
Centralized learning
Federated learning
Precision
0.88
0.9129
Recall
0.9753
0.9645
F1-score
0.9251
0.9379
Accuracy
0.9705
0.9612
Bảng I so sánh hiệu suất của mơ hình trước và sau
khi sử dụng GAN. Kết quả cho thấy chất lượng mơ
hình máy học được cải thiện đáng kể, đặc biệt là
thông số Recall và F1-score. Bảng II so sánh phương
pháp huấn luyện tập trung dữ liệu với huấn luyện
theo phương pháp FL + GAN. Có thể thấy, với cùng
một bộ dữ liệu, phương pháp tiếp cận của chúng tơi
có khả năng tạo ra mơ hình máy học với độ chính
xác tương đương vơi phương pháp huấn luyện truyền
thống.
Hình 2. Sự tương đồng giữa dữ liệu gơc và dữ liệu được tạo ra
từ 4 thuộc tính (từ trái sang: FlowDuration, TotalLengthBwdPacket,
PacketLengthMean, PacketLengthStd)
•
Thử nghiệm này cho thấy khả năng của GAN trong
việc tự động tạo ra các lưu lượng mạng mới gần
giống với các lưu lượng đầu vào. Hình 2 cho thấy
sự tương đồng giữa bộ dữ liệu CICIDS2017Train
gốc và các luồng mạng được tạo trong bốn thuộc
tính gồm lowDuration, TotalLengthBwdPacket, PacketLengthMean, PacketLengthStd.
Đánh giá hiệu năng của Federated Learning
Trong phần này, chúng tơi huấn luyện mơ hình máy
học với FL trong trường hợp có và khơng có GAN
ISBN 978-604-80-5958-3
156
D. Hiệu năng Blockchain
Chúng tôi đánh giá hiệu suất của hệ thống Blockchain
thông qua mức tiêu thụ tài nguyên CPU và thời gian xử
lý trong một số ngữ cảnh cụ thể.
Để xác định mức tiêu thụ tài nguyên CPU của hệ thống
khi hoạt động, chúng tôi tiến hành thử nghiệm trong ngữ
cảnh 20 người dùng liên tục gửi yêu cầu đăng ký một tác
vụ và đo mức tiêu thụ trong mỗi khoảng thời gian 0,1
giây. Kết quả được trình bày trong biểu đồ kết quả tiêu
thụ CPU trong Hình 3. Với mức độ tiêu thụ tài nguyên
CPU này, có thể thấy rằng hệ thống của chúng tơi có thể
vận hành tốt trong ngữ cảnh có nhiều thiết bị cùng tham
gia vào hệ thống.
Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021)
khung giải pháp đảm bảo quyền riêng tư và bảo mật dữ
liệu, cùng với đó là một hệ sinh thái khuyến khích giúp
tận dụng được nguồn dữ liệu đào tạo từ cộng đồng. Giải
pháp tạo ra một môi trường chia sẻ dữ liệu đáng tin cậy,
liên kết những chủ sở hữu có bộ dữ liệu cùng loại để thực
hiện một nhiệm vụ huấn luyện cụ thể. Kết quả phân tích
và thử nghiệm của chúng tơi đã chứng minh rằng giải pháp
có thể cho phép chia sẻ dữ liệu an toàn và hiệu quả, đồng
thời tận dụng các nguồn dữ liệu đa dạng từ cộng đồng.
Bên cạnh đó, để triển khai giải pháp vào thực tế còn rất
nhiều vấn đề cần khắc phục. Trong tương lai,chúng tơi dự
định sẽ tích hợp điện tốn biên di động (MEC) vào mơ
hình FedChain giúp giảm chi phí liên lạc và truyền tải dữ
liệu của hệ thống. Ngoài ra, chúng tôi cũng mong muốn
triển khai giải pháp để bảo vệ hệ thống khỏi các cuộc tấn
công phá hoại mơ hình tồn cục.
Hình 3. Kết quả mức độ tiêu thụ CPU
Để đo lường hiệu suất thời gian xử lý của hệ thống,
chúng tôi lần lượt đo thời gian xử lý trong ngữ cảnh 10,
20, 50 người dùng liên tục gửi yêu cầu đăng ký tác vụ tới
hệ thống. Các phép đo được lặp lại 3 lần để đảm bảo độ
chính xác. Kết quả được trình bày trong Bảng III.
Bảng III
KẾT
QUẢ THỜI GIAN XỬ LÝ CỦA HỆ THỐNG ( GIÂY )
10 Người dùng
20 Người dùng
50 Người dùng
Lần đo 1
0.0602312
0.103943
0.336669
Lần đo 2
0.059109
0.101376
0.384335
Lần đo 3
0.059569
0.112528
0.297349
Với kịch bản trên, chúng tôi tiến hành đo hiệu suất xử
lý tác vụ gửi mơ hình kích thước 2MB lên máy chủ tổng
hợp. Kết quả thu được cho thấy hệ thống mất trung bình
25,19693 giây để xử lý một yêu cầu. Bước đầu tiên, hệ
thống lưu trữ mơ hình vào IPFS, sau đó tiến hành ghi dữ
liệu vào Blockchain. Chúng tơi đã tính tốn và nhận thấy
rằng, phần lớn thời gian dành cho việc tải mơ hình lên
IPFS (25,19693 s/request) trong khi hệ thống Blockchain
hoạt động rất tốt (0,018419 s/request). Tuy nhiên, việc tải
mơ hình lên IPFS hồn tồn phụ thuộc vào tốc độ kết nối.
Từ đó có thể kết luận rằng, hệ thống của chúng tơi vẫn có
khả năng đáp ứng tốt.
Từ kết quả thực nghiệm trên, có thể thấy, hệ thống của
chúng tơi có khả năng phối hợp các thành viên tham gia
vào mạng FedChain để tạo ra những mơ hình máy học với
chất lượng tốt mà vẫn đảm bảo được quyền riêng tư cá
nhân. Bên cạnh đó, hệ thống có tiềm năng trong việc triển
khai vào các lĩnh vực lớn như Smart city khi kết quả về
hiệu năng cho thấy với số lượng người dùng lớn hệ thống
vẫn có khả năng phản hồi tốt.
V. KẾT LUẬN
Cùng với sự phát triển của ngành công nghiệp trí tuệ
nhân tạo, dữ liệu mà người dùng chia sẻ đóng vai trị quan
trọng trong việc xây dựng các hệ sinh thái và chương trình
thơng minh. Trong bài báo này, chúng tôi đã đề xuất bộ
ISBN 978-604-80-5958-3
157
LỜI CẢM ƠN
Cảm ơn sự hỗ trợ của UIT InSecLab - Wanna.One
Hacking Community trong quá trình thực hiện đề tài.
TÀI LIỆU
THAM KHẢO
[1] Dinh C. Nguyen, Ming Ding, Pubudu N. Pathirana, Aruna Seneviratne, Jun Li, and H. Vincent Poor, "Federated Learning for Internet
of Things: A Comprehensive Survey," IEEE Communications Surveys & Tutorials, vol. 23, no. 3, p. 1622–1658, 2021.
[2] C. Nguyen, M. Ding, P. N. Pathirana, A. Seneviratne, J. Li, D.
Niyato and H. V. Poor, "Federated Learning for Industrial Internet
of Things in Future Industries," IEEE Wireless Communications
Magazine, vol. abs/2105.14659, 2021.
[3] Rui Wang, Heju Li, Erwu Liu, "Blockchain-Based Federated Learning in Mobile Edge Networks with Application in Internet of
Vehicles," ArXiv, vol. abs/2103.01116, 2021.
[4] Y. Lu, X. Huang, Y. Dai, S. Maharjan and Y. Zhang, "Blockchain
and Federated Learning for Privacy-Preserved Data Sharing in
Industrial IoT," in IEEE Transactions on Industrial Informatics, vol.
16, no. 6, pp. 4177-4186, 2020.
[5] S. Kumar, S. Dutta, S. Chatturvedi and M. Bhatia, "Strategies for
Enhancing Training and Privacy in Blockchain Enabled Federated
Learning," 2020 IEEE Sixth International Conference on Multimedia Big Data (BigMM), pp. 333-340 , 2020.
[6] Y. Zhan, J. Zhang, Z. Hong, L. Wu, P. Li and S. Guo, "A Survey
of Incentive Mechanism Design for Federated Learning," IEEE
Transactions on Emerging Topics in Computing, 2021.
[7] Viraaji Mothukuri, Reza M. Parizi, Seyedamin Pouriyeh, Yan
Huang, Ali Dehghantanha and Gautam Srivastava, "A survey on
security and privacy of federated learning," Future Generation
Computer Systems, vol. 115, pp. 619-640, 2021.
[8] Dinesh C. Verma, Graham White, Simon Julier, Stepehen Pasteris,
Supriyo Chakraborty, Greg Cirincione, “Approaches to address the
data skew problem in federated learning,” Artificial Intelligence
and Machine Learning for Multi-Domain Operations Applications,
vol. 11006. International Society for Optics and Photonics, 2019.
[9] Kurniabudi, Deris Stiawan, Darmawijoyo, Mohd Yazid Bin Idris,
Alwi M.Bamhdi, and Rahmat Budiarto, "CICIDS-2017 Dataset
Feature Analysis With Information Gain for Anomaly Detection,"
in IEEE Access,vol. 8, pp. 132911-132921, 2020.
[10] Andrew Hard, Kanishka Rao, Rajiv Mathews, Swaroop Ramaswamy, Franc¸oise Beaufays, Sean Augenstein, Hubert Eichner,
Chloé Kiddon, Daniel Ramage, "Federated Learning for Mobile
Keyboard Prediction," arXiv, vol. abs/1811.03604, 2019.
[11] Z. Shi, H. Zhou, Y. Hu, S. Jayachander, C. de Laat and Z. Zhao,
"Operating Permissioned Blockchain in Clouds: A Performance
Study of Hyperledger Sawtooth," 2019 18th International Symposium on Parallel and Distributed Computing (ISPDC), pp. 50-57,
2019.