Uploaded by kienps.ai

Đỗ Minh Khá - Khóa luận

advertisement
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Đỗ Minh Khá
PHƯƠNG PHÁP SINH DỮ LIỆU ĐỐI KHÁNG
DỰA TRÊN AUTOENCODER ĐỂ KIỂM THỬ
TÍNH CHẮC CHẮN CỦA MÔ HÌNH HỌC SÂU
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2021
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Đỗ Minh Khá
PHƯƠNG PHÁP SINH DỮ LIỆU ĐỐI KHÁNG
DỰA TRÊN AUTOENCODER ĐỂ KIỂM THỬ
TÍNH CHẮC CHẮN CỦA MÔ HÌNH HỌC SÂU
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: PGS. TS. Phạm Ngọc Hùng
ThS. Nguyễn Đức Anh
HÀ NỘI - 2021
VIETNAM NATIONAL UNIVERSITY, HANOI
UNIVERSITY OF ENGINEERING AND TECHNOLOGY
Do Minh Kha
AN AUTOENCODER-BASED METHOD
TO GENERATE ADVERSARIAL EXAMPLE
FOR ROBUSTNESS TESTING OF
DEEP LEARNING MODELS
BACHELOR’S THESIS
Major: Information Technology
Supervisor: Assoc. Prof., Dr. Pham Ngoc Hung
MSc. Nguyen Duc Anh
Hanoi - 2021
LỜI CAM ĐOAN
Tôi tên là Đỗ Minh Khá, sinh viên lớp QH-2017-I/CQ-C-CLC, ngành Công
nghệ thông tin hệ chất lượng cao. Tôi xin cam đoan: Khóa luận tốt nghiệp với đề
tài “Phương pháp sinh dữ liệu đối kháng dựa trên Autoencoder để kiểm thử tính
chắc chắn của mô hình học sâu” là của tôi, chưa từng được nộp như một khóa
luận tốt nghiệp nào tại Trường Đại học Công Nghệ hoặc bất kỳ trường đại học nào
khác. Những gì tôi viết ra không có sự sao chép từ các tài liệu, không sử dụng kết
quả của người khác mà không trích dẫn cụ thể. Đây là công trình nghiên cứu cá
nhân tôi tự phát triển với sự hướng dẫn của PGS.TS Phạm Ngọc Hùng và ThS.
Nguyễn Đức Anh, không sao chép mã nguồn của người khác. Nếu vi phạm những
điều trên, tôi xin chấp nhận tất cả những truy cứu về trách nhiệm theo quy định
của Trường Đại học Công Nghệ.
Hà Nội, ngày 29 tháng 5 năm 2021
Sinh viên
Đỗ Minh Khá
i
LỜI CẢM ƠN
Lời đầu tiên, tôi xin gửi lời cảm ơn chân thành đến PGS.TS. Phạm Ngọc
Hùng. Thầy đã tận tình giảng dạy, truyền đạt những kiến thức quý báu cho tôi
trong suốt quá trình học tập vừa qua. Bên cạnh đó, thầy còn trang bị cho tôi
phương pháp tư duy và phương pháp nghiên cứu khoa học hiệu quả để hoàn thành
tốt khóa luận.
Tiếp theo, tôi xin gửi lời cảm ơn chân thành đến ThS. Nguyễn Đức Anh. Thầy
đã hướng dẫn tỉ mỉ và cho tôi những góp ý, nhận xét quý giá trong suốt quá trình
thực hiện khóa luận.
Ngoài ra, tôi xin gửi lời cảm ơn đến các thầy cô, cán bộ, anh chị và bạn bè tại
Trường Đại học Công nghệ đã tạo điều kiện thuận lợi cho tôi được học tập, nghiên
cứu và thực hiện khóa luận.
Cuối cùng, tôi xin được tỏ lòng biết ơn sâu sắc đến gia đình tôi. Họ đã nuôi
dưỡng, dạy dỗ tôi trưởng thành và luôn động viên, ủng hộ tôi trong suốt thời gian
học tập vừa qua.
Hà Nội, ngày 29 tháng 5 năm 2021
Sinh viên
Đỗ Minh Khá
ii
TÓM TẮT
Tóm tắt: Khóa luận trình bày phương pháp sinh dữ liệu đối kháng dựa trên mô hình
Autoencoder để kiểm thử tính chắc chắn của mô hình học sâu (Autoencoder For Deep
Neural Network - AE4DNN). Phương pháp AE4DNN được đề xuất nhằm cải thiện ba
vấn đề chính còn tồn tại trong các phương pháp sinh dữ liệu đối kháng phổ biến hiện
nay. Cụ thể là sự đánh đổi giữa chất lượng với chi phí sinh dữ liệu đối kháng còn lớn, khả
năng chuyển nhượng của tập dữ liệu đối kháng được sinh ra chưa cao, và khả năng khái
quát hóa còn thấp. Ý tưởng chính của AE4DNN là huấn luyện một mô hình Autoencoder
có khả năng sinh một tập dữ liệu đối kháng từ một phần của tập dữ liệu huấn luyện mô
hình học sâu cần kiểm thử. Đồng thời, AE4DNN đề xuất phương pháp chọn khoảng giá
trị của tham số huấn luyện phù hợp nhất để giảm chi phí kiểm thử cho kiểm thử viên.
Để chứng tỏ tính hiệu quả của AE4DNN trong kiểm thử tính chắc chắn của mô hình học
sâu, nghiên cứu đã tiến hành thực nghiệm trên tập dữ liệu MNIST và so sánh với các
phương pháp sinh dữ liệu đối kháng phổ biến hiện nay gồm FGSM, Box-constrained
L-BFGS, Carlini-Wagner ||L||2 , và AAE. Thực nghiệm cho thấy AE4DNN có khả năng
sinh dữ liệu đối kháng có chất lượng cao trong thời gian ngắn, tập dữ liệu này có khả
năng chuyển nhượng cao, và tính khái quát hóa cao hơn các phương pháp trước đó. Bên
cạnh đó, AE4DNN cũng cho thấy khả năng cải thiện tính chắc chắn của mô hình học sâu
được kiểm thử qua quá trình huấn luyện đối kháng.
Từ khóa: dữ liệu đối kháng, kiểm thử hộp trắng, khả năng chuyển nhượng, khả
năng khái quát hóa, huấn luyện đối kháng.
iii
ABSTRACT
Abstract: This thesis presents an autoencoder-based method to generate adversarial examples for deep learning model robustness testing (named Autoencoder For Deep Neural
Network - AE4DNN). The proposed method aims to improve three existing problems related to the trade-off between the quality of adversarial examples and the computational
cost, transferability, and generalization. The idea of AE4DNN is that an autoencoder
model is trained from a balanced subset of the training set. The trained autoencoder
model is then used to generate adversarial examples from the remaining subset of the
training set, produce adversarial examples from new samples, and test other DNN models. To demonstrate the effectiveness of AE4DNN, the compared methods are FGSM,
Box-constrained L-BFGS, Carlini-Wagner ||L||2 attack, and AAE. The comprehensive
experiment on MNIST has shown that AE4DNN can generate high quality of adversarial examples while requiring a low cost of computation, gain a better transferability,
improve generalization. In addition, AE4DNN is able to improve the robustness of the
DNN model through adversarial training procedure.
Keywords: adversarial example, white-box testing, transferability, generalization,
adversarial training.
iv
Mục lục
Lời cam đoan
i
Lời cảm ơn
ii
Tóm tắt
iii
Abstract
iv
Danh sách hình vẽ
vi
Danh sách bảng
viii
Thuật ngữ
ix
Chương 1
Giới thiệu
1
Chương 2
Kiến thức nền tảng
6
2.1
Mô hình học sâu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.2
Mô hình Autoencoder . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2.3
Dữ liệu đối kháng . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.4
Chất lượng dữ liệu đối kháng . . . . . . . . . . . . . . . . . . . . . . .
11
2.5
Tổng quan kiểm thử tính chắc chắn của mô hình học sâu . . . . . . . .
13
2.5.1
Định lượng tính chắc chắn . . . . . . . . . . . . . . . . . . . .
13
2.5.2
Các phương pháp sinh dữ liệu đối kháng phổ biến . . . . . . . .
14
v
Chương 3
Phương pháp sinh dữ liệu đối kháng dựa trên mô hình Autoen-
coder
18
3.1
Các nghiên cứu liên quan . . . . . . . . . . . . . . . . . . . . . . . . .
18
3.2
Tổng quan phương pháp đề xuất . . . . . . . . . . . . . . . . . . . . .
23
3.3
Quá trình sinh dữ liệu đối kháng của phương pháp đề xuất . . . . . . .
26
Chương 4
Thực nghiệm
30
4.1
Công cụ và thiết lập thực nghiệm . . . . . . . . . . . . . . . . . . . . .
31
4.2
Đánh giá kết quả thực nghiệm . . . . . . . . . . . . . . . . . . . . . .
33
Chương 5
Kết luận
43
Tài liệu tham khảo
45
vi
Danh sách hình vẽ
1.1
Sự thịnh hành của các kỹ thuật học máy trên công cụ tìm kiếm Google
từ năm 2010 đến năm 2019. . . . . . . . . . . . . . . . . . . . . . . . .
1.2
2
Ví dụ về hành vi dự đoán sai của mô hình học sâu trong hệ thống xe tự
lái Nvidia DAVE-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2.1
Kiến trúc cơ bản của một mô hình học sâu. . . . . . . . . . . . . . . . .
7
2.2
Kiến trúc cơ bản của một mô hình Autoencoder. . . . . . . . . . . . . .
9
3.1
Tổng quan phương pháp đề xuất. . . . . . . . . . . . . . . . . . . . . .
24
3.2
Ví dụ về ảnh được tái xây dựng qua mô hình Autoencoder . . . . . . . .
25
3.3
So sánh sự hiệu quả của hai hàm mục tiêu CCE và MAE trong bài toán
4.1
phân loại . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
Kết quả 5 ảnh đối kháng theo từng phương pháp . . . . . . . . . . . . .
36
vii
Danh sách bảng
4.1
Kiến trúc mô hình học sâu được kiểm thử . . . . . . . . . . . . . . . .
4.2
Kiến trúc của mô hình Autoencoder được sử dụng để kiểm thử tính chắc
chắn của mô hình học sâu . . . . . . . . . . . . . . . . . . . . . . . . .
4.3
34
So sánh chất lượng dữ liệu đối kháng và thời gian sinh của các phương
pháp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5
33
Giá trị trung bình khoảng cách ||L||2 của tập dữ liệu đối kháng và số
lượng dữ liệu đối kháng tương ứng với các giá trị khác nhau của β . . .
4.4
32
34
Giá trị trung bình khoảng cách ||L||2 của tập dữ liệu đối kháng và số
lượng dữ liệu đối kháng tương ứng với các giá trị khác nhau của φ . . .
37
4.6
Kết quả so sánh giữa AE4DNN và AAE về tính khái quát hóa . . . . . .
38
4.7
Kết quả so sánh giữa AE4DNN và AAE về khả năng chuyển nhượng của
4.8
tập dữ liệu đối kháng . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
Kết quả về khả năng cải thiện tính chắc chắn của AE4DNN. . . . . . . .
40
viii
Thuật ngữ
Từ viết tắt
AAE
AE4DNN
Từ đầy đủ
Adversarial Autoencoding
Autoencoder For Deep
Neural Network
Box-constrained L-BFGS Box-constrained L-BFGS
Ý nghĩa
Phương pháp sinh dữ liệu đối kháng
Autoencoder đối kháng
Phương pháp đề xuất
Phương pháp sinh dữ liệu đối kháng
ràng buộc L-BFGS
Phương pháp sinh dữ liệu đối kháng
Carlini-Wagner ||L||2
Carlini-Wagner ||L||2
CCE
Categorical Cross Entropy
CNN
Convolutional Neural Network Mạng nơ-ron tích chập
DNN
Deep Neural Network
FGSM
Fast Gradient Sign Descent
MAE
Mean Absolute Error
Sai số tuyệt đối trung bình
MSE
Mean Squared Error
Sai số toàn phương trung bình
ix
Carlini-Wagner ||L||2
Độ sai khác giữa hai phân phối
xác suất theo Entropy
Mạng nơ-ron học sâu
Phương pháp sinh dữ liệu đối kháng
nhanh theo độ dốc
Chương 1
Giới thiệu
Hiện nay, học máy được ứng dụng rộng rãi tại nhiều lĩnh vực quan trọng như kinh tế [2],
giáo dục [3], y học [37], v.v. Trong đó, học sâu là một phần quan trọng của học máy.
Kiến trúc của mô hình học sâu ban đầu được lấy ý tưởng từ kiến trúc của bộ não con
người [34]. Bên cạnh đó, hành vi của mô hình học sâu được tạo nên từ những quan sát
chi tiết trên một tập dữ liệu có sẵn [20]. Nhờ kiến trúc phù hợp và chiến thuật huấn luyện
hiệu quả từ tập dữ liệu sẵn có, các mô hình học sâu được cho là có hiệu năng vượt trội
so với các kỹ thuật khác học máy khác trong các bài toán phức tạp. Cụ thể như bài toán
nhận diện ảnh [38], nhận diện giọng nói [44], dịch máy [4], v.v. Theo khảo sát của tác
giả Merina Kulin và cộng sự [24] (Hình 1.1), học sâu đang dần trở nên thịnh hành hơn
so với các kỹ thuật học máy khác trong các năm gần đây. Đặc biệt, các mô hình học sâu
đang được triển khai phổ biến trong các hệ thống liên quan đến an toàn và an ninh như
các phương tiện tự động [7], phát hiện mã độc [16].
Bên cạnh sự ứng dụng phổ biến của các mô hình học sâu, tính an toàn trong các
mô hình này đang ngày càng được quan tâm nhiều trong nghiên cứu và phát triển [46].
Thực tế cho thấy nhiều hệ thống sử dụng mô hình học sâu có những hành vi không như
mong đợi khi gặp đầu vào có sự nhiễu loạn [45, 35]. Một ví dụ điển hình là phát hiện của
tác giả Kexin Pei và cộng sự [35] (Hình 1.2). Theo đó, nền tảng xe tự lái Nvidia Dave-2
đã có hành vi dự đoán đúng với một ảnh góc cua bình thường của một con đường. Tuy
nhiên, hệ thống đã dự đoán sai với phiên bản tối hơn của bức ảnh đó. Hành vi sự đoán
sai này có thể gây ra tai nạn của phương tiện với lan can đường. Do đó, kiểm thử chất
1
Hình 1.1: Sự thịnh hành của các kỹ thuật học máy trên công cụ tìm kiếm Google từ năm
2010 đến năm 2019 [24].
lượng của các mô hình học sâu là nhiệm vụ quan trọng trong thực tiễn. Tuy nhiên, khi
xây dựng một mô hình học sâu, các nhà phát triển thường quan tâm nhiều đến các tiêu
chí về tính đúng đắn (correctness) của mô hình như độ chuẩn xác (accuracy), độ chính
xác (precision), F1-score, v.v. Tính đúng đắn thể hiện mô hình học sâu không có lỗi với
dữ liệu không có sự nhiễu loạn hay hoạt động trong môi trường bình thường [46]. Trong
khi đó, nhiều nghiên cứu chỉ ra rằng các mô hình học sâu rất dễ bị đánh lừa ngay cả khi
các mô hình này có tính đúng đắn cao [14, 9, 35]. Nguyên nhân là do các nhà phát triển
thường ít quan tâm đến tính chắc chắn (robustness) của mô hình. Tính chắc chắn của
một mô hình học sâu thể hiện mức độ đảm bảo mô hình không có lỗi khi có sự xuất hiện
của đầu vào có nhiễu loạn hay môi trường hoạt động không bình thường [46]. Một trong
những phương pháp phổ biến để kiểm thử tính chắc chắn của các mô hình học sâu là
sinh dữ liệu đối kháng có định hướng. Theo đó, dữ liệu đối kháng là dữ liệu có sự nhiễu
loạn nhỏ và có khả năng đánh lừa một hoặc nhiều mô hình học sâu với một nhãn cụ thể.
Về lý thuyết, có hai hướng tiếp cận sinh dữ liệu đối kháng để kiểm thử tính chắc
chắn của mô hình học sâu là hướng tiếp cận hộp trắng [9] và hướng tiếp cận hộp đen
[32]. Theo hướng tiếp cận hộp đen, kiểm thử viên hoàn toàn không sử dụng các thông tin
liên quan đến mô hình học sâu như kiến trúc, các tham số, v.v. Kiểm thử viên chỉ có thể
2
Hình 1.2: Ví dụ về hành vi dự đoán sai của mô hình học sâu trong hệ thống xe tự lái
Nvidia DAVE-2 [35]. Mô hình học sâu dự đoán đúng (rẽ trái) với ảnh (a). Mô hình học
sâu sự đoán sai (rẽ phải) với ảnh (b) - một phiên bản tối hơn của ảnh (a).
kết nối đến đầu ra của mô hình và một số mẫu dữ liệu có sẵn. Theo hướng tiếp cận này,
kiểm thử viên gặp nhiều khó khăn khi đánh giá chi tiết tính chắc chắn của mô hình. Theo
hướng tiếp cận hộp trắng, kiểm thử viên có thể sử dụng toàn bộ thông tin của mô hình
học sâu. Từ đó, kiểm thử viên có thể sinh dữ liệu đối kháng một cách hiệu quả để đánh
giá chi tiết tính chắc chắn của mô hình học sâu. Do đó, khóa luận tập trung đến phương
pháp sinh dữ liệu đối kháng có định hướng (targeted adversarial attack) theo hướng tiếp
cận hộp trắng.
Hầu hết các phương pháp sinh dữ liệu đối kháng có định hướng theo hướng tiếp
cận hộp trắng hiện nay còn tồn tại ba vấn đề chính. Vấn đề đầu tiên là sự đánh đổi giữa
chất lượng của dữ liệu đối kháng và thời gian sinh dữ liệu đối kháng còn lớn. Một số
nghiên cứu đã đề xuất các phương pháp sinh dữ liệu đối kháng có chất lượng tốt nhưng
thời gian tính toán còn cao như phương pháp Carlini-Wagner ||L||2 [9], và phương pháp
ràng buộc L-BFGS (Box-constrained L-BFGS) [42]. Ngược lại, phương pháp sinh dữ
liệu đối kháng cần ít thời gian như phương pháp sinh nhanh theo độ dốc (Fast Gradient
Sign Method - FGSM) [14] sinh dữ liệu đối kháng có chất lượng chưa được tốt. Vấn
đề thứ hai còn tồn tại là khả năng chuyển nhượng (transferable ability) của dữ liệu đối
kháng. Khả năng chuyển nhượng là khả năng dữ liệu đối kháng được sinh ra từ mô hình
này nhưng có thể đánh đánh lừa một hoặc nhiều mô hình khác [31, 32]. Điều này giúp
giảm chi phí kiểm thử tính chắc chắn của các mô hình học sâu có cùng hành vi. Nhìn
3
chung, trong tập dữ liệu đối kháng được sinh ra từ các phương pháp hiện nay đều tồn
tại dữ liệu có khả năng chuyển nhượng. Tuy nhiên, tỷ lệ chuyển nhượng còn chưa cao.
Ngoài hai vấn đề được nêu trên, vấn đề cuối cùng trong các phương pháp sinh dữ liệu
đối kháng là khả năng khái quát hóa (generalization ability). Khả năng khái quát hóa thể
hiện khả năng sinh dữ liệu đối kháng khi có dữ liệu đầu vào mới mà không cần sử dụng
đến mô hình học sâu mục tiêu. Đồng thời, tiêu chí chất lượng của dữ liệu đối kháng vẫn
đảm bảo. Hầu hết các phương pháp sinh dữ liệu đối kháng hiện nay đều chưa có khả
năng này, ngoại trừ phương pháp Autoencoder đối kháng (Adversarial Autoencoding AAE) [5]. Tuy nhiên, khả năng khái quát hóa của AAE với tập dữ liệu mới còn thấp.
Để giảm thiểu ba vấn đề nêu trên, khóa luận đề xuất phương pháp sinh dữ liệu
đối kháng có định hướng (Autoencoder For Deep Neural Network - AE4DNN). Phương
pháp AE4DNN sử dụng tiêu chí ||L||2 để đánh giá chất lượng của dữ liệu đối kháng. Đây
là tiêu chí chất lượng được nhiều nghiên cứu sinh dữ liệu đối kháng sử dụng [42, 9]. Với
dữ liệu đầu vào bao gồm một tập dữ liệu gốc và nhãn mục tiêu, AE4DNN huấn luyện
một mô hình Autoencoder để sinh dữ liệu đối kháng cho mô hình được kiểm thử (hay
còn gọi là mô hình mục tiêu). Hàm mục tiêu của mô hình Autoencoder bao gồm hai
phần. Phần đầu tiên là khoảng cách ||L||2 giữa dữ liệu đối kháng với dữ liệu gốc tương
ứng. Phần thứ hai là khoảng cách theo hàm cross-entropy giữa véc-tơ dự đoán của dữ
liệu đối kháng theo mô hình mục tiêu và véc-tơ mục tiêu. Véc-tơ mục tiêu được tạo ra
từ nhãn mục tiêu theo phương pháp mã hóa one-hot encoding [36]. Hai phần của hàm
mục tiêu được gán với trọng số tương ứng và việc chọn trọng số là vấn đề quan trọng để
giảm thiểu ba vấn đề nêu trên. Do đó, AE4DNN đề xuất công thức chọn khoảng giá trị
phù hợp cho các trọng số để đảm bảo tính hiệu quả của phương pháp và giảm thiểu các
nỗ lực chọn trọng số. Qua thực nghiệm, AE4DNN đã giảm sự đánh đổi giữa thời gian
sinh dữ liệu đối kháng và chất lượng dữ liệu đối kháng so với các phương pháp trước
đây. Đồng thời, AE4DNN có thể sinh ra được tập dữ liệu có tỷ lệ chuyển nhượng cao từ
mô hình học sâu mục tiêu đến các mô hình học sâu khác có cùng hành vi. Bên cạnh đó,
bằng cách huấn luyện mô hình Autoencoder với hàm mục tiêu và chọn trọng số trong
khoảng phù hợp, AE4DNN cho thấy khả năng khái quát hóa cao khi có dữ liệu đầu vào
mới trong khi không cần sử dụng đến mô hình học sâu mục tiêu. Sau khi sinh dữ liệu
đối kháng, kiểm thử viên có thể huấn luyện lại mô hình học sâu mục tiêu với tập dữ liệu
đối kháng được gán lại nhãn để tăng tính chắc chắn của mô hình học sâu mục tiêu. Đồng
4
thời, phương pháp AE4DNN không có sự tác động lớn tính đúng đắn của mô hình.
Phần còn lại của khóa luận được tổ chức như sau. Chương 2 trình bày một số kiến
thức nền tảng liên quan đến khóa luận và cung cấp các định nghĩa, ký hiệu cụ thể được sử
dụng trong toàn bộ khóa luận. Chương 3 trình bày các nghiên cứu liên quan và phương
pháp sinh dữ liệu đối kháng được đề xuất. Chương 4 trình bày thực nghiệm sinh dữ liệu
đối kháng để kiểm thử tính chắc chắn của mô hình học sâu. Chương 5 là phần kết luận
của khóa luận.
5
Chương 2
Kiến thức nền tảng
Chương này của khóa luận giới thiệu một số kiến thức nền tảng liên quan đến kiểm thử
tính chắc chắn của mô hình học sâu. Các kiến thức nền tảng bao gồm: Mô hình học sâu,
mô hình Autoencoder, dữ liệu đối kháng, và tổng quan về kiểm thử tính chắc chắn của
mô hình học sâu. Bên cạnh đó, chương này cung cấp các định nghĩa, ký hiệu được sử
dụng trong toàn bộ khóa luận để đảm bảo tính nhất quán.
2.1
Mô hình học sâu
Mô hình học sâu được lấy cảm hứng dựa trên quan sát bộ não của con người [34]. Kiến
trúc cơ bản của một mô hình học sâu được thể hiện tại Hình 2.1. Về kiến trúc, các mô
hình học sâu gồm ba tầng là tầng đầu vào, tầng ẩn, và tầng đầu ra. Tầng đầu vào nhận dữ
liệu đầu vào sau khi đã được tiền xử lý. Tầng ẩn là tầng nằm giữa, nhận xử lý, trích xuất
các đặc trưng của đầu vào. Tầng đầu ra nằm ở cuối cùng, được sử dụng với mục đích trả
về véc-tơ dự đoán của mô hình. Sau khi được định nghĩa kiến trúc, các mô hình học sâu
được huấn luyện theo nhiều chiến lược khác nhau nhằm tối ưu hàm mục tiêu một cách
hiệu quả.
Các mô hình học sâu được khóa luận hướng đến là các mô hình học sâu được sử
dụng trong bài toán phân loại. Điều này là do bài toán phân loại được sử dụng rộng rãi
tại nhiều lĩnh vực trong thực tiễn. Các mô hình học sâu trong bài toán này được mô tả cụ
thể tại Định nghĩa 2.1.
6
Định nghĩa 2.1 Mô hình học sâu. Mô hình học sâu là mô hình M = (L, W, θ ), trong
đó L = [l0 , l1 , ..., ll−1 ] với li đại diện cho một tầng cụ thể, l là số số tầng của mô hình.
W = [w0,1 , w1,2 , ..., wl−2,l−1 ] là ma trận các trọng số, trong đó wi,i+1 đại diện cho trọng
số giữa tầng thứ ith và tầng thứ (i + 1)th . θ = [θθ 0 , θ 1 , ..., θ l−1 ] là tập hợp các hàm kích
hoạt cho mỗi tầng.
Ký hiệu nij (x) thể hiện giá trị của nơ-ron thứ j tại tầng thứ i với đầu vào x ∈ Xs×d ,
trong đó s là số lượng đầu vào, d là số lượng thuộc tính của dữ liệu đầu vào. Trong bài
toán phân loại, gọi k là số lượng nhãn cần phân loại, tầng cuối cùng của mô hình học
sâu là véc-tơ có k phần tử. Véc-tơ này còn được gọi là véc-tơ dự đoán, được ký hiệu là
T
yx = [n0l−1 , n1l−1 , .., nk−1
l−1 ] cho mỗi đầu vào x. Thông thường, nhãn cụ thể được gán bởi
mô hình học sâu cho x được thể hiện là argmax(yx ) (ký hiệu là cx , với cx = argmax(yx )).
Hàm kích hoạt tại tầng thứ i được ký hiệu là θ i , hàm này có thể tuyến tính hoặc phi
tuyến tính. Các hàm kích hoạt được sử dụng nhiều là hàm sigmoid, tanh, ReLU, hay
leaky ReLu [13].
Quá trình huấn luyện một mô hình học sâu là một quá trình lặp để tối ưu hàm mục
tiêu J(X, W, Ytrue ) với tập huấn luyện X và tập các véc-tơ nhãn tương ứng Ytrue . Các
trọng số wi, j,k ∈ W được cập nhật qua các epoch bằng các thuật toán tối ưu như Gradient
Descent, Adam, v.v. Tập dữ liệu ban đầu được chia thành ba tập con là tập huấn luyện
(training set), tập thẩm định (validation set), và tập kiểm tra (test set). Tập huấn luyện
được sử dụng để điều chỉnh các trọng số wi, j,k của mô hình. Tập thẩm định được dùng để
Hình 2.1: Kiến trúc cơ bản của một mô hình học sâu.
7
kiểm tra tính đúng đắn của mô hình trong quá trình huấn luyện. Nhờ đó, nhà phát triển
có thể điều chỉnh lại các cấu hình huấn luyện cho phù hợp. Tập kiểm tra được dùng để
kiểm tra tính đúng đắn của mô hình sau quá trình huấn luyện. Tùy vào đặc điểm của từng
bài toán, ba tập dữ liệu này có thể khác nhau về độ lớn và phân bố.
Một mô hình học sâu được coi là có tính đúng đắn cao khi mô hình này đảm bảo
hai tiêu chí là khả năng tối ưu và khả năng khái quát hóa. Khả năng tối ưu là đảm bảo mô
hình có thể học được tất cả các đặc trưng của tập dữ liệu huấn luyện. Nói theo cách khác,
điều này đảm bảo hàm mục tiêu của mô hình có thể đạt đến giá trị nhỏ nhất có thể. Khả
năng khái quát hóa là đảm bảo mô hình có độ chính xác cao với tập dữ liệu hợp lệ mới.
Tập dữ liệu này chưa được sử dụng trong quá trình huấn luyện. Trên thực tế, nhiệm vụ
đảm bảo hai tiêu chí là khó đối với nhiều mô hình. Nguyên nhân là có hai vấn đề chính
đối với một mô hình học sâu là bias và variance. Nếu độ chính xác của mô hình trên tập
huấn luyện cao nhưng trên tập thẩm định lại thấp và có cách biệt đáng kể thì mô hình
được cho là high variance hay overfitting. Nếu độ chính xác của mô hình trên tập huấn
luyện thấp thì mô hình được coi là high bias hay underfitting. Trường hợp độ chính xác
trên tập thẩm định hay tập kiểm tra cao hơn độ chính xác trên tập huấn luyện là vô nghĩa.
Một mô hình học sâu được coi là tính đúng đắn cao khi được nhận định là low bias và
low variance. Ngược lại, nếu mô hình được nhận định là high bias hay high variance thì
được coi là tính đúng đắn thấp. Mô hình này cần được cải thiện bằng cách điều chỉnh
thuật toán tối ưu, điều chỉnh cấu trúc mô hình hay thu thập thêm dữ liệu, v.v.
Tuy nhiên, một mô hình học sâu được cho là có tính đúng đắn cao thì cũng rất dễ
bị tấn công đối kháng do tính chắc chắn chưa được đảm bảo [14, 9, 35]. Do đó, nhiệm
vụ sinh dữ liệu đối kháng để kiểm thử tính chắc chắn của mô hình học sâu là nhiệm vụ
quan trọng. Qua đó, kiểm thử viên có thể kiểm thử và cải thiện tính chắc chắn của mô
hình học sâu trước khi triển khai mô hình này trong thực tế.
2.2
Mô hình Autoencoder
Mô hình Autoencoder là một loại mô hình học sâu. Kiến trúc cơ bản của mô hình Autoencoder được thể hiện tại Hình 2.2. Về kiến trúc, tương tự như các mô hình học sâu,
mô hình Autoencoder cũng có ba tầng chính là tầng đầu vào, tầng ẩn, và tầng đầu ra.
8
Hình 2.2: Kiến trúc cơ bản của một mô hình Autoencoder.
Mô hình Autoencoder được sử dụng để tái xây dựng dữ liệu. Do đó, đầu ra mục
tiêu của mô hình thông thường là chính đầu vào. Tầng ẩn gồm hai phần chính là encoder
và decoder. Phần encoder được sử dụng để giảm chiều dữ liệu, ánh xạ dữ liệu đầu vào
thành dạng code. Phần decoder dùng để tái xây dựng dữ liệu, ánh xạ code thành đầu ra.
Theo mô hình Autoencoder truyền thống, với mục đích tái xây dựng dữ liệu, hàm
mục tiêu của mô hình Autoencoder được mô tả tại Công thức 2.1.
lossg =
∑ ||x − g(x)|| p
(2.1)
x∈X
, trong đó g là mô hình Autoencoder; x là dữ liệu đầu vào thuộc tập dữ liệu X; g(x)
là dữ liệu đầu ra của mô hình Autoencoder với dữ liệu đầu vào x; ||.|| p là khoảng cách
||L|| p giữa dữ liệu đầu ra và đầu vào.
Bên cạnh mô hình Autoencoder truyền thống, có nhiều biến thể của mô hình Autoencoder như Sparse Autoencoder (SAE) [29], Denoising Autoencoder (DAE) [43],
Variational Autoencoder [22], v.v. Các mô hình Autoencoder được ứng dụng phổ biến
trong nhiều bài toán như giảm chiều dữ liệu [17], trích xuất đặc trưng [1], dịch máy [10],
v.v. Tùy vào từng bài toán, hàm mục tiêu và chiến lược huấn luyện của mô hình Autoencoder có thể khác nhau. Tuy nhiên, do mô hình Autoencoder là một loại mô hình học sâu
nên mô hình này cần đảm bảo hai yếu tố là khả năng tối ưu và khả năng khái quát hóa.
9
2.3
Dữ liệu đối kháng
Dữ liệu đối kháng là dữ liệu có sự nhiễu loạn và được sinh ra nhằm đánh lừa một hoặc
nhiều mô hình học sâu có cùng hành vi [42]. Như đã nêu tại Phần 2.1, nhiệm vụ sinh
dữ liệu đối kháng để kiểm thử tính chắc chắn của mô hình học sâu là nhiệm vụ quan
trọng trong thực tiễn. Theo hướng tiếp cận hộp trắng, có hai hướng con để sinh dữ liệu
đối kháng là sinh dữ liệu đối kháng không có định hướng và sinh dữ liệu đối kháng có
định hướng. Cho dù dữ liệu đối kháng được sinh theo nhiều hướng, nhưng dữ liệu này
cần được đảm bảo chất lượng để không làm mất quá nhiều thuộc tính của dữ liệu gốc.
Về hướng sinh dữ liệu đối kháng không có định hướng, với từng dữ liệu đầu vào
x được mô hình học sâu mục tiêu gán nhãn đúng với nhãn gốc ytrue
x . Các phương pháp
thêm một lượng nhiễu vào x để sinh ra dữ liệu đối kháng x0 . Dữ liệu đối kháng x0 làm
cho mô hình học sâu dự đoán theo bất kỳ một nhãn nào đó khác nhãn gốc ytrue
x . Bên cạnh
đó, các tiêu chí sinh dữ liệu đối kháng x0 không có định hướng được mô tả chi tiết tại
Định nghĩa 2.2.
Định nghĩa 2.2 Theo hướng sinh dữ liệu đối kháng không có định hướng. Với một
mô hình học sâu M = (L, W, θ ) đã được huấn luyện với tính đúng đắn cao qua các tiêu
chí như độ chính xác, độ chuẩn xác, v.v; tập dữ liệu huấn luyện X. Dữ liệu x0 được sinh
ra từ x ∈ X được coi là dữ liệu đối kháng cần thỏa mãn các tiêu chí sau:
(i) thỏa mãn bất đẳng thức ||x − x0 || p <= b, với b là số dương đủ nhỏ (điều này đảm bảo
sự sai khác giữa x và x là đủ nhỏ), và
0
0 true là nhãn
(ii) c0 6= ytrue
x , với c là nhãn được mô hình học sâu M dự đoán đối với x , yx
gốc của x.
Về hướng sinh dữ liệu đối kháng có định hướng, đầu vào của các phương pháp là
dữ liệu gốc x được dự đoán đúng với nhãn gốc ytrue
và nhãn mục tiêu được chỉ định sẵn
x
y∗ 6= ytrue
x . Đây là hướng sinh dữ liệu đối kháng phổ biến và tốn nhiều chi phí hơn các
phương pháp theo phương sinh dữ liệu đối kháng không có định hướng. Theo hướng sinh
dữ liệu đối kháng có định hướng, các phương pháp thêm một lượng nhiễu đủ nhỏ vào
dữ liệu gốc x để sinh ra dữ liệu đối kháng x0 . Dữ liệu đối kháng x0 làm cho mô hình học
sâu dự đoán theo nhãn mục tiêu y∗ . Các tiêu chí sinh dữ liệu đối kháng x0 có định hướng
được mô tả chi tiết tại Định nghĩa 2.3.
10
Định nghĩa 2.3 Theo hướng sinh dữ liệu đối kháng có định hướng. Với một mô hình
0
học sâu M = (L, W, θ ) đã được huấn luyện và một nhãn mục tiêu y∗ 6= cx (cx = ytrue
x ), x
được sinh ra từ x ∈ X được coi là dữ liệu đối kháng cần thỏa mãn các điều kiện sau:
(i) thỏa mãn bất đẳng thức ||x − x0 || p <= b, với b là số dương đủ nhỏ để đảm bảo sự sai
khác giữa x0 và x là đủ nhỏ, và
(ii) c0 = y∗ , với c0 là nhãn được mô hình học sâu M dự đoán đối với x0 .
Dữ liệu đối kháng được tạo ra là do việc học không hoàn thiện của các mô hình học
sâu (imperfect learning) [21]. Ngoài các nguyên nhân đến từ cấu trúc, thuật toán tối ưu
hay các siêu tham số chưa phù hợp khiến cho mô hình bị underfitting hoặc overfitting.
Nguyên nhân đến từ dữ liệu huấn luyện cũng là một yếu tố quan trọng dẫn đến việc học
không hoàn thiện của các mô hình học sâu. Các hành vi dự đoán của một mô hình học
sâu chủ yếu được dẫn dắt bởi dữ liệu huấn luyện. Do đó, nếu dữ liệu huấn luyện không
hoàn thiện thì mô hình học sâu cũng rất dễ bị đánh lừa. Dữ liệu không hoàn thiện có thể
là do nhiều nguyên nhân. Ví dụ như độ lớn của dữ liệu còn nhỏ, dữ liệu chưa có đủ các
thuộc tính đặc trưng cho từng nhãn, các hạn chế trong quá trình thu thập, v.v. Do đó, tồn
tại một tập dữ liệu mà những tính chất của chúng chưa được mô hình học sâu học. Điều
này giúp kiểm thử viên có thể sinh các tập dữ liệu đối kháng có định hướng theo từng
nhãn để kiểm thử tính chắc chắn của mô hình học sâu. Đồng thời, kiểm thử viên có thể
sử dụng các tập dữ liệu đối kháng này để huấn luyện lại mô hình học sâu để cải thiện
tính chắc chắn. Quá trình huấn luyện này được gọi là huấn luyện đối kháng (adversarial
training).
2.4
Chất lượng dữ liệu đối kháng
Để đảm bảo chất lượng của dữ liệu đối kháng, các nghiên cứu thường sử dụng độ đo
khoảng cách ||L|| p để đánh giá chất lượng. Khoảng cách ||L|| p giữa dữ liệu gốc x và dữ
liệu đối kháng x0 được mô tả tại Công thức 2.2. Cụ thể, khoảng cách ||L||0 , ||L||2 , và
||L||∞ thường được các phương pháp hiện nay hướng đến [9].
||x − x0 || p = (
1
∑
(xi − x0i ) p ) p
i∈[0,...,|x|−1]
11
(2.2)
Khoảng cách ||L||0 . Khoảng cách ||L||0 đo số lượng thuộc tính bị chỉnh sửa trên
dữ liệu gốc x để tạo ra dữ liệu đối kháng x0 . Cụ thể, ||L||0 được tính bằng số phần tử
khác không trong ma trận (x − x0 ). Ví dụ, với dữ liệu nhiều chiều như dữ liệu dạng ảnh,
khoảng cách ||L||0 được sử dụng để đếm số lượng điểm ảnh bị chỉnh sửa để tạo dữ liệu
ảnh đối kháng [9].
Khoảng cách ||L||2 . Khoảng cách ||L||2 là độ đo chuẩn Euclidean để đo khoảng
cách giữa dữ liệu gốc x và dữ liệu đối kháng x0 . Cụ thể, độ đo ||L||2 đo sự thay đổi trên
từng thuộc tính của dữ liệu gốc để tạo ra dữ liệu đối kháng. Đây là tiêu chí chất lượng
được sử dụng phổ biến hiện nay trong các phương pháp sinh dữ liệu đối kháng [42].
Khoảng cách ||L||2 càng nhỏ thì sự chỉnh trên mỗi thuộc tính của dữ liệu gốc càng nhỏ
và chất lượng dữ liệu đối kháng càng tốt. Độ đo khoảng cách ||L||2 được mô tả tại Công
thức 2.3.
0
||x − x ||2 =
s
∑
(xi − x0i )2
(2.3)
i∈[0,...,|x|−1]
Khoảng cách ||L||∞ . Độ đo ||L||∞ đo sự chỉnh sửa lớn nhất trong các thuộc tính bị
chỉnh sửa trên dữ liệu gốc x. Khoảng cách ||L||∞ được mô tả tại Công thức 2.4. Ví dụ,
với dữ liệu dạng ảnh, các phương pháp sinh dữ liệu theo khoảng cách ||L||∞ cho phép
mỗi giá trị điểm ảnh có thể bị chỉnh sửa tối đa theo giá trị dương nào đó. Tuy nhiên, dữ
liệu ảnh sẽ trở nên kém chất lượng nếu tất cả điểm ảnh bị chỉnh sửa với sự chỉnh sửa tối
đa. Do đó, khoảng cách ||L||∞ thường ít được sử dụng để đánh giá chất lượng dữ liệu đối
kháng.
||x − x0 ||∞ = max(|x0 − x00 |, |x1 − x01 |, ..., |x|x|−1 − x0|x|−1 |)
(2.4)
Thực tế, không có độ đo khoảng cách nào là hoàn hảo để đánh giá chất lượng dữ
liệu đối kháng [9]. Tuy nhiên, hầu hết các phương pháp hiện nay đều hướng đến tiêu chí
khoảng cách ||L||2 để đánh giá chất lượng dữ liệu đối kháng [42, 9, 5]. Nguyên nhân là
do độ đo khoảng cách này thể hiện rõ độ lớn chỉnh sửa trên tất cả các thuộc tính của dữ
liệu gốc. Vì vậy, khóa luận hướng đến tiêu chí này để đảm bảo chất lượng của dữ liệu đối
kháng được sinh ra và so sánh với các phương pháp sinh dữ liệu đối kháng hiện nay.
12
2.5
Tổng quan kiểm thử tính chắc chắn của mô hình học
sâu
Sự nhiễu loạn là sự chỉnh sửa trên một hay nhiều thuộc tính của dữ liệu gốc để tạo ra dữ
liệu mới. Thực tế, sự nhiễu loạn có thể xảy ra với nhiều loại dữ liệu như dữ liệu dạng
ảnh, dữ liệu ngôn ngữ tự nhiên, hay dữ liệu âm thanh, v.v. Dữ liệu có sự nhiễu loạn có
thể làm cho mô hình học sâu có hành vi dự đoán không như mong muốn. Trong đó, dữ
liệu đối kháng là một loại dữ liệu có sự nhiễu loạn. Ví dụ tại Hình 1.2 là một ví dụ về dữ
liệu đối kháng có khả năng đánh lừa mô hình học sâu có tính đúng đắn cao. Nhìn chung,
dữ liệu đối kháng cho thấy nhược điểm về tính chắc chắn của mô hình học sâu. Kiểm
thử viên cần một số tiêu chí để định lượng tính chắc chắn của mô hình học sâu với một
phương pháp sinh dữ liệu đối kháng nào đó.
2.5.1
Định lượng tính chắc chắn
Định lượng tính chắc chắn là yếu tố quan trọng để kiểm thử tính chắc chắn của mô hình
học sâu. Nhiệm vụ này giúp kiểm thử viên đánh giá hiệu quả hiệu năng của phương pháp
kiểm thử cũng như tính chắc chắn chắn của mô hình học sâu. Có hai hướng phổ biến để
định lượng tính chắc chắn của một mô hình học sâu là dựa theo tỷ lệ thành công (success
rate) và dựa theo độ phủ (coverage).
• Dựa theo tỷ lệ thành công. Tỷ lệ thành công trong nhiệm vụ sinh dữ liệu có định
hướng được thể hiện tại Định nghĩa 2.4. Nói chung, một phương pháp sinh dữ liệu
đối kháng có tỷ lệ thành công càng lớn thì mô hình học sâu có tính chắc chắn càng
yếu với phương pháp đó, và ngược lại. Đây là tiêu chí được sử dụng rộng rãi trong
nhiều nghiên cứu để đánh giá tính chắc chắn của mô hình học sâu. Một số nghiên
cứu theo hướng định lượng này có thể kể đến [14], [25], [5], [9], [30], v.v.
• Dựa theo độ phủ. Nhiều loại độ phủ đã được đề xuất trong các nghiên cứu khác
nhau như độ phủ sign-sign [41], độ phủ neuron [35], v.v. Dữ liệu gốc cần được
thêm nhiễu loạn sao cho mô hình học sâu có độ phủ cao theo một tiêu chí nào đó.
13
Định nghĩa 2.4 Tỷ lệ thành công sinh dữ liệu đối kháng có định hướng (success rate).
Gọi yx là véc-tơ dự đoán của mô hình học sâu M với đầu vào là x; ytrue
là nhãn gốc của
x
x; S là tập dữ liệu gốc được sử dụng để sinh dữ liệu đối kháng; P là một phương pháp
sinh dữ liệu đối kháng có định hướng; y∗ là nhãn mục tiêu của P. Khi đó, tỷ lệ thành
công của P được xác định như sau:
success_rate(y∗ , S) =
∗
|{xi ∈ S : argmax(yP(xi ) ) = y∗ ∧ ytrue
xi 6= y }|
|S|
(2.5)
Khóa luận hướng đến kiểm thử tính chắc chắn của mô hình học sâu dựa theo định hướng
thứ nhất, đó là tỷ lệ thành công. Ngoài ra, tỷ lệ chuyển nhượng cũng được khóa luận sử
dụng trong việc đánh giá khả năng chuyển nhượng của dữ liệu đối kháng giữa các mô
hình học sâu do một phương pháp sinh dữ liệu đối kháng sinh ra. Tỷ lệ chuyển nhượng
được mô tả tại Định nghĩa 2.5.
Định nghĩa 2.5 Tỷ lệ chuyển nhượng (transferable rate). Gọi tập X0M là tập dữ liệu đối
kháng được sinh ra từ phương pháp sinh dữ liệu đối kháng P; nhãn mục tiêu là y∗ ; yM
x
0
0
và yM
x lần lượt là véc-tơ dự đoán của mô hình M và M với đầu vào là x. Tỷ lệ chuyển
nhượng giữa mô hình M và mô hình M’ theo tập dữ liệu X0M được xác định như sau:
0
trans f erable_rate(M, M 0 ) =
2.5.2
∗
|{x0i ∈ X0M : argmax(yM
x0 ) = y }|
i
|X0M |
(2.6)
Các phương pháp sinh dữ liệu đối kháng phổ biến
Tính chắc chắn trong các mô hình học sâu là vấn đề quan trọng và thu hút nhiều sự quan
tâm trong nghiên cứu [6, 21, 46]. Phần này giới thiệu một số nghiên cứu về các phương
pháp sinh dữ liệu đối kháng phổ biến hiện nay bao gồm phương pháp sinh nhanh theo độ
dốc (Fast Gradient Sign Method - FGSM) [14], phương pháp ràng buộc L-BFGS (Boxconstrained L-BFGS) [42], phương pháp Carlini-Wagner ||L||2 [9], và phương pháp
Autoencoder đối kháng (Adversarial Autoencoding - AAE) [5]. Trong đó, phương pháp
FGSM hướng đến tiêu chí chất lượng ||L||∞ của dữ liệu đối kháng, các phương pháp còn
lại hướng đến tiêu chí chất lượng ||L||2 của dữ liệu đối kháng.
14
FGSM
Ian J.Goodfellow và cộng sự [14] đã đề xuất phương pháp sinh dữ liệu đối kháng theo
đạo hàm của mô hình học sâu với dữ liệu gốc đầu vào x - FGSM. Ý tưởng của phương
pháp này là sinh dữ liệu đối kháng x0 làm tăng xác suất dự đoán theo nhãn mục tiêu
y∗ ∈ {0, .., k − 1}. Đồng thời xác suất dự đoán theo các nhãn khác bị giảm theo mô hình
học sâu mục tiêu. Công thức tìm dữ liệu đối kháng x0 được mô tả tại Công thức 2.7.
x0 = x − ε · sign(∇x J(x, y∗ ))
(2.7)
, trong đó ∇x J(x, y∗ ) là đạo hàm của hàm mục tiêu của mô hình học sâu M với dữ
liệu đầu vào x, véc-tơ nhãn mục tiêu y∗ , hàm sign(.) trả về dấu của hàm ∇x J(x, y∗ )
(sign(.) ∈ {−1, 0, 1}), ε là một số dương thể hiện độ lớn của sự chỉnh sửa trên x. FGSM
thường có thời gian sinh dữ liệu đối kháng thấp hơn các phương pháp khác như CarliniWagner ||L||2 [9], và Box-constrained L-BFGS [42]. Tuy nhiên, chất lượng của dữ liệu
đối kháng và tỷ lệ thành công của phương pháp còn thấp.
Box-constrained L-BFGS
Szegedy và cộng sự [42] đã đề xuất phương pháp sinh dữ liệu đối kháng Box-constrained
L-BFGS. Với nhãn mục tiêu y∗ , Box-constrained L-BFGS sinh dữ liệu đối kháng x0 đảm
bảo khoảng cách ||L||2 so với dữ liệu gốc x là nhỏ nhất có thể. Do đó, hàm mục tiêu của
Box-constrained L-BFGS cùng với ràng buộc được mô tả tại Công thức 2.8.
Minimize ||x − x0 ||22 + c · J(x0 , y∗ )
sub ject
to x0 ∈ [0, 1]d
(2.8)
, trong đó c là trọng số giữa hai thành phần trong hàm mục tiêu; J(x0 , y∗ ) là hàm
mục tiêu của mô hình học sâu M với dữ liệu đối kháng x0 và nhãn mục tiêu y∗ . Boxconstrained L-BFGS cho thấy khả năng tấn công tốt và chất lượng dữ liệu đối kháng tốt.
Tuy nhiên, Box-constrained L-BFGS cần nhiều lần lặp để chỉnh sửa mỗi dữ liệu đầu vào
x giúp tìm ra dữ liệu đối kháng tương ứng. Do đó, với một tập dữ liệu đầu vào, Boxconstrained L-BFGS cho thấy kém hiệu quả về mặt thời gian tính toán. Đồng thời, với
15
Box-constrained L-BFGS, kiểm thử viên cần chọn giá trị trọng số c phù hợp một cách
thủ công. Điều này cũng làm tăng chi phí thời gian trong quá trình kiểm thử.
Carlini-Wagner ||L||2
Nicholas Carlini và David Wagner [9] đã công bố phương pháp Carlini-Wagner ||L||2 .
Mục tiêu của phương pháp là tăng khả năng sinh thành công so với Box-constrained
L-BFGS. Đồng thời, Carlini-Wagner ||L||2 giúp làm giảm thời gian tìm trọng số c một
cách thủ công. Carlini-Wagner ||L||2 đề xuất sử dụng thành phần đối kháng trong hàm
mục tiêu là hàm h(x0 ). Để sinh được dữ liệu đối kháng, Carlini-Wagner ||L||2 chỉnh sửa
dữ liệu gốc sao cho dữ liệu được sinh ra thỏa mãn h(x0 ) ≤ 0. Hàm h(x0 ) được mô tả tại
Công thức 2.9.
h(x0 ) = (max∗ (Z(x0 )i − Z(x0 )y∗ )+
i6=y
(2.9)
, trong đó hàm Z(x0 ) là đầu ra tại tầng ẩn cuối cùng (presoftmax) của mô hình học sâu
mục tiêu; y∗ là nhãn mục tiêu; và hàm (e)+ = max(e, 0). Từ hàm h(x0 ), hàm mục tiêu và
ràng buộc của Carlini-Wagner ||L||2 được mô tả tại Công thức 2.10.
≤0
z }| {
0
minimize ||x − x ||2 + c · h(x0 )
sub ject
0
(2.10)
d
to x ∈ [0, 1]
Nicholas Carlini và David Wagner đề xuất chọn trọng số c là một số dương nhỏ nhất sao
cho h(x0 ) ≤ 0. Điều này giúp sự chỉnh sửa trên dữ liệu gốc là nhỏ nhất để sinh dữ liệu
đối kháng. Do đó, Carlini-Wagner ||L||2 làm giảm công sức chọn trọng số c một cách
thủ công và tỷ lệ thành công cao hơn các phương pháp trước đó. Tuy nhiên, phương pháp
này cần nhiều thời gian để tự động tìm kiếm giá trị phù hợp cho trọng số c.
AAE
Baluja và cộng sự [5] lần đầu giới thiệu phương pháp tấn công một mô hình học sâu
dựa trên một mô hình học sâu khác - AAE. Một trong số loại mô hình học sâu được
16
sử dụng để tấn công là mô hình Autoencoder. Ý tưởng chính của phương pháp AAE là
huấn luyện mô hình Autoencoder (ký hiệu là g) để sinh dữ liệu đối kháng từ dữ liệu đầu
vào x với nhãn mục tiêu y∗ . Về lý thuyết, Autoencoder là một mô hình học sâu được
dùng để tái xây dựng dữ liệu. Mô hình này bao gồm hai thành phần encoder và decoder.
Thông thường, với mục tiêu tái xây dựng dữ liệu gốc, hàm mục mục tiêu của mô hình
Autoencoder được mô tả tại Công thức 2.1. Khi được áp dụng vào bài toán sinh dữ liệu
đối kháng, tác giả đề xuất sử dụng khoảng cách ||L||2 để đảm bảo chất lượng của dữ liệu
đối kháng. Đồng thời, tác giả đề xuất hàm mục tiêu với hai thành phần được mô tả tại
Công thức 2.11.
lossAAE =
∑ φ · ||x − g(x)||2 + ||y0 − rα (y, y∗)||2
(2.11)
x∈X
, trong đó φ là trọng số giữa hai thành phần của hàm mục tiêu; y0 là véc-tơ dự đoán bởi
mô hình học sâu với đầu vào là g(x). Thành phần đối kháng trong hàm mục tiêu để huấn
luyện mô hình Autoencoder là khoảng cách ||L||2 giữa véc-tơ y0 và hàm re-rank. Hàm
re-rank được mô tả tại Công thức 2.12.
(
rα (yx , y∗ ) = norm 
α · max(yx ) i f
yix
otherwise
i
= y∗
)


(2.12)
i∈{0..k−1}
, trong đó α thể hiện mức độ sai khác của xác suất dự đoán theo nhãn mục tiêu so với
xác suất dự đoán theo nhãn gốc (α > 0); yx là véc-tơ dự đoán của mô hình học sâu với
dữ liệu đầu vào x; hàm norm(.) là hàm chuẩn hóa các thành phần của véc-tơ về các giá
trị từ 0 đến 1.
Phương pháp AAE sử dụng hàm rα (.) nhằm sinh dữ liệu đối kháng có véc-tơ dự
đoán gần với véc-tơ y nhất có thể, ngoại trừ giá trị tại nhãn mục tiêu y∗ . Tuy nhiên, AAE
cho thấy khả năng khái quát hóa và tỷ lệ chuyển nhượng của tập dữ liệu đối kháng không
cao.
17
Chương 3
Phương pháp sinh dữ liệu đối
kháng dựa trên mô hình
Autoencoder
Chương này của khóa luận trình bày tổng quan và chi tiết quá trình sinh dữ liệu đối kháng
của phương pháp đề xuất - AE4DNN. Đồng thời, các nghiên cứu liên quan đến khóa luận
cũng được trình bày tại chương này. Cụ thể: Phần đầu tiên trình bày các nghiên cứu liên
quan; Phần thứ hai trình bày tổng quan phương pháp đề xuất; Phần thứ ba trình bày chi
tiết quá trình sinh dữ liệu đối kháng của phương pháp đề xuất.
3.1
Các nghiên cứu liên quan
Sự xuất hiện của dữ liệu đối kháng cho thấy các mô hình học sâu bộc lộ ra nhiều nhược
điểm về tính an toàn. Do đó, nhiệm vụ sinh dữ liệu đối kháng để kiểm thử tính chắc chắn
của mô hình học sâu được quan tâm nhiều trong nghiên cứu [42, 14, 46, 30]. Các phương
pháp kiểm thử tính chắc chắn được đề xuất có khả năng sinh dữ liệu đối kháng theo một
trong hai hướng tiếp cận là hướng tiếp cận hộp trắng và hướng tiếp cận hộp đen. Đồng
thời, nhiều nghiên cứu [14, 15, 12, 11] đã công bố các phương pháp cải thiện, đảm bảo
tính chắc chắn của mô hình học sâu.
18
Các nghiên cứu sinh dữ liệu đối kháng theo hướng tiếp cận hộp trắng. Dữ liệu
đối kháng trong các mô hình học sâu lần đầu được giới thiệu bởi tác giả Szegedy và
cộng sự. Các tác giả đề xuất phương pháp sinh dữ liệu đối kháng có ràng buộc LBFGS
(Box-constrained L-BFGS) [42]. Phương pháp này tìm dữ liệu đối kháng x0 bằng cách
tối ưu khoảng cách ||L||2 giữa x0 và dữ liệu gốc x. Quá trình tối ưu được đặt trong ràng
buộc mô hình học sâu dự đoán x0 theo nhãn mục tiêu y∗ và x0 thuộc miền hợp lệ. Sau
đó, phương pháp sinh dữ liệu đối kháng nhanh theo độ dốc (Fast Gradient Sign Method
- FGSM) [14] được đề xuất bởi Ian J.Goodfellow và cộng sự. Phương pháp FGSM chỉnh
sửa dữ liệu gốc bằng cách thêm nhiễu theo hướng đạo hàm của hàm mục tiêu. Sự chỉnh
sửa này tác động lên tất cả các thuộc tính của dữ liệu gốc và đảm bảo khoảng cách ||L||∞ .
Hai phương pháp Box-constrained L-BFGS và FGSM cho thấy được khả năng sinh dữ
liệu đối kháng. Tuy nhiên, tỷ lệ thành công của hai phương pháp này còn thấp và chất
lượng của dữ liệu đối kháng được sinh ra chưa cao. Để cải thiện tỷ lệ sinh dữ liệu đối
kháng thành công của các phương pháp trước đó, Nicholas Carnili và David Wagner đã
đề xuất phương pháp Carlini-Wagner ||L||2 [9]. Phương pháp Carlini-Wagner ||L||2 có
khả năng sinh dữ liệu đối kháng theo cả ba tiêu chí là ||L||0 , ||L||2 , và ||L||∞ . Ý tưởng
chính của Carlini-Wagner ||L||2 là tìm dữ liệu thỏa mãn một trong sáu hàm fi (.) [9]
nhỏ hơn 0 và thỏa mãn một số ràng buộc về chất lượng của dữ liệu. Các tác giả cho
thấy Carlini-Wagner ||L||2 có tỷ lệ sinh dữ liệu đối kháng thành công cao (xấp xỉ 100%)
với các mô hình học sâu được kiểm thử. Tuy nhiên thời gian sinh dữ liệu đối kháng của
phương pháp này còn lớn.
Để cải chất lượng của dữ liệu đối kháng, một số nghiên cứu [30, 40] đã đề xuất các
phương pháp sinh dữ liệu đối kháng theo tiêu chí ||L||0 và cho thấy sự hiệu quả trong
mục tiêu đảm bảo chất lượng của dữ liệu đối kháng. Tác giả Papernot và cộng sự đã
đề xuất phương pháp sinh dữ liệu đối kháng theo xếp hạng thuộc tính (Jacobian-based
Saliency Maps Attack - JSMA) [30]. Phương pháp JSMA tính toán sự tác động của mỗi
thuộc tính trong dữ liệu gốc x với hành vi đưa ra quyết định của mô hình học sâu mục
tiêu. Từ đó, qua mỗi lần lặp, JSMA chỉnh sửa một hoặc tập hợp một số thuộc tính có tác
động lớn nhất đến mô hình học sâu. Ưu điểm của phương pháp JSMA là chỉ chỉnh sửa
một số thuộc tính nhất định và không sinh ra nhiễu dư thừa. Tuy nhiên, JSMA cần thời
gian tính toán lớn để tìm ra các thuộc tính quan trọng cần chỉnh sửa qua mỗi lần lặp. Từ
ý tưởng của phương pháp JSMA, nhiều nghiên cứu đã đề xuất các phương pháp sinh dữ
19
liệu đối kháng theo tiêu chí ||L||0 . Điển hình là nghiên cứu của tác giả J.Su và cộng sự
[40]. Các tác giả đã đề xuất phương pháp sinh dữ liệu đối kháng dạng ảnh qua sự chỉnh
sửa của một điểm ảnh. Nhìn chung, các phương pháp sinh dữ liệu đối kháng theo tiêu chí
||L||0 sinh ra dữ liệu đối kháng có chất lượng cao và khó bị phát hiện bởi con người hơn
so các phương pháp sinh dữ liệu đối kháng theo tiêu chí ||L||2 . Tuy nhiên, các phương
pháp sử dụng tiêu chí ||L||0 có chi phí tính toán cao và tỷ lệ thành công thấp do quá trình
tìm thuộc tính cần chỉnh sửa của dữ liệu gốc phức tạp.
Các nghiên cứu sinh dữ liệu đối kháng theo hướng tiếp cận hộp đen. Tác giả
Szegedy cho rằng dữ liệu đối kháng có khả năng chuyển nhượng [42]. Do đó, một số
nghiên cứu [28, 32] đã đề xuất các phương pháp sinh dữ liệu đối kháng nhằm tăng khả
năng chuyển nhượng của tập dữ liệu đối kháng được sinh ra. Các phương này được đề
xuất với mục đích kiểm thử mô hình học sâu theo hướng tiếp cận hộp đen. Tác giả Yanpei
Liu và cộng sự đã đề xuất phương pháp sinh dữ liệu đối kháng dựa trên sự kết hợp của
nhiều mô hình học sâu (Ensemble-Based Approach - EBA) [28]. Ý tưởng chính của
phương pháp EBA là tối ưu hàm mục tiêu thể hiện sự kết hợp của m hàm mục tiêu theo
nhãn mục tiêu y∗ tương ứng với m mô hình học sâu. Đồng thời, quá trình tối ưu này được
đặt trong ràng buộc về chất lượng của dữ liệu đối kháng. Kết cho thấy, EBA sinh ra tập
dữ liệu đối kháng có tỷ lệ chuyển nhượng cao giữa các mô hình nổi tiếng hiện nay như
VGG-16, ResNet-152, v.v.
Tác giả Nicolas Papernot và cộng sự đã đề xuất phương pháp sinh dữ liệu đối kháng
cho một mô hình học sâu chỉ dựa theo thông tin đầu ra của mô hình và một số mẫu dữ
liệu (Substitute Model Training - SMT) [32]. Phương pháp SMT sinh dữ liệu cho mô
hình học sâu mục tiêu bằng cách huấn luyện một mô hình học sâu thay thế. Tập dữ
liệu huấn luyện cho mô hình học sâu thay thế được suy luận ra từ đầu ra của mô hình
học sâu mục tiêu bằng phương pháp gia tăng dữ liệu Jacobian (Jacobian-based Dataset
Augmentation) [32]. Sau đó, SMT sinh dữ liệu đối kháng cho mô hình học sâu thay thế
bằng một phương pháp sinh theo hướng tiếp cận hộp trắng. Tập dữ liệu đối kháng được
sinh ra từ mô hình học sâu thay thế có tỷ lệ chuyển nhượng cao đến mô hình học sâu
mục tiêu. Các tác giả đã thực nghiệm phương pháp SMT với một số nền tảng sử dụng
mô hình học sâu của MetaMind, Amazon, Google. Kết quả cho thấy, phương pháp SMT
đã sinh ra được tập dữ liệu đối kháng có tỷ lệ chuyển nhượng đến các mô hình học sâu
mục tiêu từ 84.24% đến 96.19%. Các tác giả chứng minh được sự nguy hiểm của dữ liệu
20
đối kháng với các hệ thống lớn được triển khai trong thực tế. Về tổng quan, các nghiên
cứu về phương pháp sinh dữ liệu đối kháng theo hướng tiếp cận hộp đen đã cho thấy một
mô hình học sâu có thể bị đánh lừa ngay cả khi người tấn công không có nhiều thông tin
về mô hình học sâu đó. Do đó, nhiệm vụ phát hiện và chống lại các tấn công đối kháng
là quan trọng với các hệ thống sử dụng mô hình học sâu.
Các nghiên cứu cải thiện tính chắc chắn của mô hình học sâu. Nhiều nghiên
cứu [14, 15, 12, 11] đã đề xuất các phương pháp cải thiện tính chắc chắn của mô hình
học sâu. Điều này giúp mô hình học sâu không gây ra lỗi khi gặp dữ liệu có sự nhiễu
loạn hoặc hoạt động trong môi trường không bình thường.
Tác giả Nicolas Papernot và cộng sự [9] đề xuất phương pháp phương pháp chắt
lọc mạng (defensive distillation) để huấn luyện mô hình học sâu có tính chắc chắn cao.
Ý tưởng chính của phương pháp chắt lọc mạng là ghép nhiều mô hình học sâu trong quá
trình huấn luyện. Tập nhãn huấn luyện của mô hình học sâu sau được gán bởi mô hình
học sâu trước đó. Với phương pháp huấn luyện này, mô hình học sâu sau cùng có khả
năng giảm sự nhạy cảm với dữ liệu có sự nhiễu loạn so với các mô hình trước đó. Thực
nghiệm của tác giả [33] cho thấy phương pháp chắt lọc mạng đã làm tăng chi phí sinh
dữ liệu đối kháng của nhiều phương pháp. Tuy nhiên, phương pháp này cần chi phí tính
toán cao trong quá trình huấn luyện.
Tác giả Ian J.Goodfellow và cộng sự đề xuất phương pháp huấn luyện đối kháng
(adversarial training) để tăng chính chắc chắn của mô hình học sâu [14]. Quá trình huấn
luyện đối kháng là quá trình huấn luyện lại mô hình học sâu mục tiêu với tập dữ liệu
huấn luyện kết hợp tập dữ liệu đối kháng. Phương pháp này giúp mô hình học sâu có thể
học được các đặc trưng của dữ liệu đối kháng. Điều này làm cho mô hình có tính chắc
chắn cao với đầu vào có sự nhiễu loạn. Tuy nhiên, phương pháp huấn luyện đối kháng
cần sử dụng tập dữ liệu đối kháng có chất lượng cao để không làm giảm tính đúng đắn
của mô hình học sâu. Bên cạnh chiến lược huấn luyện trên, tác giả Kathrin Grosse và
cộng sự [15] đề xuất phương pháp huấn luyện mô hình học sâu có khả năng phát hiện
dữ liệu đối kháng. Phương pháp này thêm một nhãn dự đoán mới vào mô hình học sâu.
Nhãn mới được sử dụng để phát hiện dữ liệu đối kháng. Phương pháp phát hiện này cho
thấy khả năng chống lại các tấn công đối kháng và làm tăng chi chi phí tấn công (lượng
nhiễu tăng lên hơn 150% [15]). Tuy nhiên, với hai phương pháp huấn luyện trên, dữ liệu
đối kháng cần được đảm bảo về chất lượng để không làm giảm tính đúng đắn của mô
21
hình học sâu sau quá trình huấn luyện đối kháng.
Để không làm ảnh hưởng đến tính đúng đắn của mô hình học sâu mục tiêu, tác giả
Zhitao Gong và cộng sự [12] đã đề xuất phương pháp huấn luyện một mô hình phân loại
nhị phân D để phát hiện dữ liệu đối kháng. Mô hình D được huấn luyện với dữ liệu gốc
ban đầu và dữ liệu đối kháng được sinh ra từ mô hình học sâu. Phương pháp này giúp
các nhà phát triển phát hiện sớm được dữ liệu đối kháng trước khi đưa vào mô hình học
sâu mục tiêu. Tuy nhiên, do phương pháp này sử dụng thêm mô hình phân loại nên sẽ
làm tăng chi phí tính toán với mỗi dữ liệu không có sự nhiễu loạn.
Với mục đích loại bỏ nhiễu xuất hiện trong dữ liệu đầu vào, tác giả Uiwon Hwang
và cộng sự đã đề xuất phương pháp lọc nhiễu PuVAE [19]. Ý tưởng chính của PuVAE là
sử dụng mô hình Variational Autoencoder để tái xây dựng lại dữ liệu đầu vào. Nhờ đó,
PuVAE có thể loại bỏ sự nhiễu loạn trong dữ liệu, giúp mô hình có tính chắc chắn cao
hơn. Tuy nhiên, do dữ liệu đầu vào phải đi qua nhiều mô hình học sâu nên chi phí tính
toán sẽ tăng theo độ phức tạp của các mô hình học sâu.
Tác giả Feinman và cộng sự [11] cho rằng dữ liệu đối kháng và dữ liệu gốc có phân
bố khác nhau. Do đó, các tác giả đề xuất phương pháp phát hiện dữ liệu đối kháng dựa
trên phân bố của dữ liệu (Kernel Density Estimation - KDE) [11]. Phương pháp KDE
phát hiện dữ liệu đối kháng bằng cách xác định dữ liệu mới đầu vào có thuộc phân bố
của dữ liệu tự nhiên hay không. Nếu dữ liệu mới không thuộc phân bố của dữ liệu tự
nhiên thì dữ liệu đó là dữ liệu đối kháng, và ngược lại. Phương pháp KDE cho thấy khả
năng phát hiện dữ liệu đối kháng nhanh. Tuy nhiên, phương pháp này rất dễ bị đánh lừa
bởi dữ liệu đối kháng thuộc vùng phân bố chưa biết. Nhìn chung, mỗi phương pháp cải
thiện tính chắc chắn có ưu và nhược điểm riêng và đã cải thiện phần lớn tính chắc chắn
của mô hình học sâu.
Tóm lại, nhiều nghiên cứu về phương pháp sinh dữ liệu đối kháng đã khơi dậy sự
lo ngại về tính chắc chắn trong mô hình học sâu. Các tác giả [42, 14, 46, 30] cho thấy dữ
liệu đối kháng dễ dàng được tạo ra từ mô hình học sâu có tính đúng đắn cao. Bên cạnh
đó, nhiều nghiên cứu [14, 15, 12, 11] đã đề xuất các phương pháp cải thiện và đảm bảo
tính chắc chắn của các mô hình. Tuy nhiên, tác giả Nicholas Carlini và David Wagner
cho rằng hầu hết các phương pháp phòng thủ không thể chống lại hoàn toàn được các tấn
công đối kháng [8]. Các tác giả đã chứng minh nhận định trên bằng cách sử dụng một
số phương pháp để vượt qua mười biện pháp phòng thủ phổ biến. Từ đó, các tác giả đặt
22
ra mối lo ngại về tính hiệu quả của các phương pháp phòng phủ trong nhiệm vụ chống
lại dữ liệu đối kháng. Về tổng quát, mặc dù các phương pháp phòng thủ không thể tránh
hoàn toàn được dữ liệu đối kháng nhưng các phương pháp này đều làm tăng chi phí tấn
công đối kháng đến mô hình học sâu mục tiêu.
3.2
Tổng quan phương pháp đề xuất
Khóa luận đề xuất phương pháp sinh dữ liệu đối kháng có định hướng - AE4DNN để
kiểm thử tính chắc chắn của mô hình học sâu mục tiêu. Đồng thời, dữ liệu đối kháng
được sinh ra bằng AE4DNN được sử dụng để tăng tính chắc chắn của mô hình. Phương
pháp AE4DNN được đề xuất nhằm giảm thiểu ba vấn đề còn tồn tại trong các phương
pháp sinh dữ liệu đối kháng có định hướng phổ biến. Cụ thể, AE4DNN giảm thiểu sự
đánh đổi giữa thời gian sinh và chất lượng của dữ liệu đối kháng. Bên cạnh đó, tập dữ
liệu đối kháng được sinh ra bởi AE4DNN có tỷ lệ chuyển nhượng cao giữa các mô hình
học sâu. Cuối cùng, AE4DNN cho thấy khả năng khái quát hóa cao với tập dữ liệu đầu
vào mới.
Tổng quan phương pháp đề xuất được thể hiện trên Hình 3.1. Phương pháp AE4DNN
nhận bốn đầu vào bao gồm: một mô hình học sâu mục tiêu đã được huấn luyện với tính
đúng đắn cao (ký hiệu là M), mô hình Autoencoder (ký hiệu là g), một tập dữ liệu gốc
cân bằng về nhãn (ký hiệu là S), và nhãn mục tiêu (ký hiệu là y∗ ). Quá trình sinh dữ liệu
đối kháng gồm bốn bước: huấn luyện mô hình Autoencoder, sinh dữ liệu đối kháng từ
dữ liệu gốc, xác định dữ liệu đối kháng hợp lệ, kiểm thử tính chắc chắn của các mô hình
học sâu khác có cùng hành vi với mô hình M theo hướng tiếp cận hộp đen.
Đầu vào thứ nhất của phương pháp AE4DNN là mô hình học sâu mục tiêu cần được
kiểm thử tính chắc chắn - M. Trước khi được kiểm thử tính chắc chắn, mô hình này cần
được huấn luyện để có tính đúng đắn cao qua các tiêu chí như độ chính xác, độ chuẩn
xác, F1-score, v.v. Điều kiện về tính đúng đắn của mô hình M được đặt ra bởi hầu hết
các phương pháp sinh dữ liệu đối kháng phổ biến [8]. Nếu một mô hình học sâu có tính
đúng đắn thấp thì mô hình này dễ dự đoán sai đầu vào không có sự nhiễu loạn. Điều
này cho thấy các mô hình có tính đúng đắn thấp thì tính chắc chắn cũng không cao. Vì
vậy, nhiệm vụ kiểm thử tính chắc chắn với các mô hình học sâu có tính đúng đắn thấp là
không có ý nghĩa.
23
Hình 3.1: Tổng quan phương pháp đề xuất.
Đầu vào thứ hai của phương pháp AE4DNN là mô hình Autoencoder g. Mô hình
Autoencoder g được huấn luyện để sinh dữ liệu đối kháng. Kiến trúc của mô hình g được
định nghĩa bởi kiểm thử viên. Để tìm ra mô hình Autoencoder tốt, mô hình này cần được
kiểm tra khả năng tái xây dựng dữ liệu tốt. Tức là, độ mất mát về khoảng cách ||L||2 hoặc
độ đo sai số toàn phương trung bình (Mean Square Error - MSE) đủ nhỏ. Điều này đảm
bảo chất lượng của dữ liệu đối kháng được sinh ra gần với dữ liệu gốc nhất có thể. Ví dụ
với tập dữ liệu ảnh chữ viết tay MNIST [27], theo quan sát, khoảng cách ||L||2 giữa dữ
liệu được tái xây dựng và dữ liệu gốc thường nhỏ hơn 7.0 để đảm bảo chất lượng. Hình
3.2 thể hiện dữ liệu được tái xây dựng có khoảng cách ||L||2 so với dữ liệu gốc lần lượt
là 4.25 và 7.18.
Đầu vào thứ ba của phương pháp AE4DNN là một tập dữ liệu huấn luyện mô hình
Autoencoder g. AE4DNN là phương pháp sinh dữ liệu đối kháng theo hướng tiếp cận
hộp trắng. Do đó, kiểm thử viên có thể sử dụng tập dữ liệu huấn luyện X của mô hình
học sâu mục tiêu M. Tập dữ liệu S là tập con của tập dữ liệu huấn luyện X (S ⊆ X).
Tập dữ liệu S này được sử dụng để huấn luyện mô hình Autoencoder và cân bằng về các
24
(a)
(b)
(c)
(d)
Hình 3.2: Ví dụ về ảnh được tái xây dựng qua mô hình Autoencoder. Hình (a), (b) lần
lượt thể hiện ảnh gốc và ảnh được tái xây dựng với khoảng cách ||L||2 = 4.25. Hình (c),
(d) lần lượt thể hiện ảnh gốc và ảnh được tái xây dựng với khoảng cách ||L||2 = 7.18
nhãn. Điều này giúp mô hình Autoencoder có thể học được tất các đặc trưng của dữ liệu
thuộc từng nhãn. Nhờ đó, mô hình Autoencoder có khả năng khái quát hóa cao với tập
liệu đầu vào mới sau khi được huấn luyện.
Đầu vào thứ tư của phương pháp AE4DNN là nhãn mục tiêu y∗ . Nhãn mục tiêu y∗
là một trong các nhãn được sử dụng để huấn luyện mô hình học sâu mục tiêu M. Với
phương pháp AE4DNN, kiểm thử viên có thể chọn ngẫu nhiên một nhãn bất kỳ làm nhãn
mục tiêu (y∗ ∈ {1, 2, ..., k}). Trong nhiệm vụ sinh dữ liệu đối kháng có định hướng để
kiểm thử tính chắc của mô hình học sâu, tất cả dữ liệu trong tập dữ liệu đối kháng X0
được mô hình M dự đoán theo nhãn mục tiêu y∗ . Bên cạnh đó, nhãn gốc của tất cả dữ
liệu trong tập X0 này đều khác y∗ .
25
3.3
Quá trình sinh dữ liệu đối kháng của phương pháp
đề xuất
Sau khi nhận bốn đầu vào, quá trình sinh dữ liệu đối kháng của AE4DNN cho mô hình
học sâu M gồm bốn bước, bao gồm: Bước đầu tiên là huấn luyện mô hình Autoencoder;
Bước thứ hai là sinh tập dữ liệu mới từ mô hình Autoencoder; Bước thứ ba là tìm tập dữ
liệu đối kháng; Bước thứ tư là kiểm thử tính chắc chắn của các mô hình học sâu khác có
cùng hành vi với mô hình học sâu M theo hướng tiếp cận hộp đen.
Bước 1. Phương pháp AE4DNN thực hiện huấn luyện mô hình Autoencoder g để
sinh dữ liệu đối kháng. Dữ liệu được sinh ra bởi mô hình Autoencoder cần được đảm
bảo về chất lượng theo tiêu chí ||L||2 và đảm bảo nhãn được mô hình M dự đoán là nhãn
y∗ . Do đó, hàm mục tiêu của mô hình Autoencoder g gồm hai thành phần được mô tả tại
Công thức 3.1.
lossg (S) =
||x − g(x))||22
1
(1 − β ) ·
+ β · ce(yg(x) , y∗ )
∑
|S| x∈S
d
(3.1)
, trong đó ce(yg(x) , y∗ ) là cross-entropy giữa hai véc-tơ yg(x) và y∗ ; g(x) là dữ liệu được
tái xây dựng bởi mô hình g từ dữ liệu gốc x; yg(x) là véc-tơ dự đoán g(x) theo mô hình học
sâu mục tiêu; d là số lượng thuộc tính của dữ liệu đầu vào x. Tham số β (β ∈ [0, 1]) thể
hiện trọng số giữa hai thành phần. Hàm mục tiêu lossg (S) gồm hai thành phần. Thành
phần đầu tiên là khoảng cách ||L||2 giữa dữ liệu được sinh ra và dữ liệu gốc. Thành phần
thứ hai là cross-entropy giữa hai véc-tơ yg(x) và y∗ . Một số nghiên cứu [18, 47] cho thấy
hàm cross-entropy có tốc độ hội tụ nhanh hơn các hàm mục tiêu phổ biến khác như hàm
sai số toàn phương trung bình (Mean Square Error - MSE) hay hàm sai số tuyệt đối trung
bình (Mean Absolute Error - MAE) đối với các phân phối xác suất. Ví dụ điển hình là
phát hiện của tác giả Zhilu Zhang và cộng sự [47] trong thực nghiệm so sánh sự hiệu quả
giữa hàm sai số theo Entropy (CCE - Categorical Cross Entropy) và hàm MAE (Hình
3.3). Bên cạnh đó, thực nghiệm giữa hàm CCE và hàm MSE trong các nhiệm vụ phân
loại của tác giả Like Hui và cộng sự [18] . Do đó, hàm cross-entropy làm cho AE4DNN
có tỷ lệ sinh dữ liệu đối kháng thành công cao hơn các hàm mục tiêu phổ biến khác.
Tóm lại, hai thành phần trong hàm mục tiêu để huấn luyện mô hình Autoencoder sẽ giúp
26
mô hình Autoencoder sinh ra tập dữ liệu đối kháng có chất lượng cao theo khoảng cách
||L||2 và độ lớn tập dữ liệu đối kháng cao. Sự đánh đổi giữa hai thành phần được thể hiện
bởi trọng số β .
Về vấn đề chọn trọng số β , kiểm thử viên cần chọn β để đảm bảo sự cân bằng giữa
chất lượng dữ liệu và khả năng sinh dữ liệu đối kháng thành công của phương pháp. Đây
là một nhiệm vụ làm tiêu tốn nhiều chi phí do ta khó có thể chọn chính xác giá trị này với
mọi đầu vào. Nếu β = 0 thì mô hình Autoencoder g sẽ đóng vai trò như là mô hình tái
cấu trúc dữ liệu thông thường, không có khả năng sinh dữ liệu đối kháng. Nếu β = 1 mô
hình Autoencoder g không có xu hướng tối ưu chất lượng của dữ liệu đối kháng. Đồng
thời, mô hình này sinh số lượng dữ liệu đối kháng tối đa nhất có thể. Điều này dẫn đến
AE4DNN sẽ không đảm bảo tiêu chí về chất lượng dữ liệu đối kháng. Hậu quả là dữ liệu
được sinh ra sẽ khác rất xa so với dữ liệu gốc. Thông thường, để chọn được giá trị β tốt,
kiểm thử viên cần thực nghiệm lại nhiều lần. Sau đó đánh giá kết quả với nhiều giá trị
β khác nhau. Vì vậy, quá trình này làm tiêu tốn nhiều chi phí trong kiểm thử tính chắc
chắn của mô hình học sâu. Do đó, AE4DNN đề xuất phương pháp xác định khoảng giá
Hình 3.3: Ví dụ về độ chính xác của mô hình phân loại theo epoch với hàm mục tiêu
CCE (categorical cross entropy) và MAE (mean absolute error) được thực hiện bởi Zhilu
Zhang và cộng sự [47]. Hình (a) thể hiện thực nghiệm trên tập dữ liệu CIFAR-10. Hình
(b) thể hiện thực nghiệm trên tập dữ liệu CIFAR-100.
27
trị phù hợp cho β để giảm thời gian và công sức chọn β . Qua đó, AE4DNN có thể đảm
bảo công bằng giữa chất lượng dữ liệu và khả năng tấn công của phương pháp. Điều này
giúp mô hình Autoencoder g sinh ra dữ liệu có chất lượng cao theo khoảng cách ||L||2
và đảm bảo khả năng sinh thành công cao. Sau khi nhận các dữ liệu đầu vào và khởi tạo
mô hình Autoencoder g, AE4DNN đề xuất chọn giá trị β trong khoảng được mô tả tại
Công thức 3.2.
∑x∈S d1 · ||x − g(x))||22
0 < β <=
∑x∈S ( d1 · ||x − g(x))||22 + ce(yg(x) , y∗ ))
(3.2)
Bước 2. Sau quá trình huấn luyện mô hình Autoencoder g với hàm mục tiêu lossg (S)
theo Công thức 3.1 và giá trị β nằm trong khoảng đề xuất theo Công thức 3.2. Phương
pháp AE4DNN đưa lần lượt dữ liệu trong tập S vào mô hình Autoencoder g để tìm dữ
liệu đối kháng. Mô hình Autoencoder g sinh ra một tập dữ liệu được gọi là tập dữ liệu đối
kháng đề xuất (candidate adversarial example) từ tập dữ liệu S. Do mô hình Autoencoder
g là một mô hình học sâu, nên mô hình này có khả năng khái quát hóa. Vì vậy, kiểm thử
viên có thể sử dụng tập dữ liệu khác ngoài tập dữ liệu S để sinh tập dữ liệu đối kháng đề
xuất.
Bước 3. Sau khi mô hình Autoencoder g sinh tập dữ liệu đối kháng đề xuất, phương
pháp AE4DNN tiến hành tìm tập dữ liệu đối kháng. AE4DNN tiến hành tìm tập dữ liệu
đối kháng bằng cách tìm các dữ liệu từ tập dữ liệu đối kháng đề xuất thỏa mãn các tiêu
chí trong Định nghĩa 2.3. Nếu tập dữ liệu đối kháng có độ lớn thấp thì AE4DNN có tỷ
lệ thành công thấp (low success rate). Điều này cho thấy mô hình học sâu mục tiêu M
có tính chắc chắn cao. Ngược lại, nếu tập dữ liệu đối kháng có độ lớn cao thì AE4DNN
có tỷ lệ thành công cao (high success rate). Điều này cho thấy mô hình học sâu mục tiêu
M có tính chắc chắn thấp và cần được cải thiện. Một trong những phương pháp cải thiện
tính chắc chắn của mô hình học sâu phổ biến là huấn luyện đối kháng. Tuy nhiên, dữ liệu
đối kháng được sử dụng để huấn luyện cần được đảm bảo chất lượng theo tiêu chí ||L||2
để không ảnh hưởng đến tính đúng đắn của mô hình học sâu M. Thực nghiệm trên tập
dữ liệu MNIST [27] cho thấy, tập dữ liệu đối kháng được AE4DNN không gây ra sự thay
đổi lớn đến tính đúng đắn của mô hình học sâu M.
28
Bước 4. Dữ liệu đối kháng có khả năng đánh lừa một hay nhiều mô hình học sâu có
cùng hành vi [42]. Do đó, tập dữ liệu đối kháng được sinh ra bởi AE4DNN từ mô hình
học sâu mục tiêu M cũng có thể được sử dụng để kiểm thử các mô hình học sâu có cùng
hành vi khác. Do đó, kiểm thử viên có thể kiểm thử tính chắc chắn của một mô hình
học sâu mục tiêu mà không cần sử dụng các thông tin liên quan đến mô hình đó. Theo
hướng tiếp cận này, kiểm thử viên cần một phương pháp sinh tập dữ liệu đối kháng có
khả năng chuyển nhượng cao giữa các mô hình. Đồng thời, chất lượng của dữ liệu đối
kháng cần được đảm bảo. Thực nghiệm trên tập dữ liệu MNIST [27] cho thấy AE4DNN
có khả năng sinh tập dữ liệu đối kháng có tỷ lệ chuyển nhượng cao giữa các mô hình có
tính đúng đắn cao.
29
Chương 4
Thực nghiệm
Khóa luận tiến hành thực nghiệm sinh tập dữ liệu đối kháng để kiểm thử tính chắc chắn
của mô hình học sâu trong bài toán phân loại bằng phương pháp đề xuất. Đồng thời,
kết quả sinh dữ liệu đối kháng của AE4DNN cũng được so sánh với các phương pháp
sinh dữ liệu đối kháng phổ biến hiện nay là FGSM [14], Box-constrained L-BFGS [42],
Carlini-Wagner ||L||2 [9], và AAE [5]. Để chứng tỏ sự hiệu quả của AE4DNN trong việc
giảm thiểu 3 vấn đề còn tồn tại đối với các phương pháp này và khả năng làm tăng tính
chắc chắn của mô hình học sâu, khóa luận đã đặt ra và trả lời năm câu hỏi nghiên cứu
sau:
• RQ1. Làm rõ tính hiệu quả của phương pháp chọn trọng số β (Công thức 3.2) được
đề xuất trong kiểm thử tính chắc chắn của mô hình học sâu mục tiêu.
• RQ2. Đánh giá về khả năng giảm sự đánh đổi giữa chất lượng và thời gian sinh
dữ liệu đối kháng của AE4DNN so với FGSM, Box-constrained L-BFGS, CarliniWagner ||L||2 , và AAE.
• RQ3. AAE và AE4DNN đều sử dụng mô hình Autoencoder để sinh tập dữ liệu đối
kháng. So sánh tính hiệu quả 2 phương pháp này với tập dữ liệu đầu vào mới mà
mô hình Autoencoder chưa được huấn luyện (khả năng khái quát hóa).
• RQ4. So sánh khả năng chuyển nhượng của tập dữ liệu đối kháng do AE4DNN và
AAE sinh ra.
30
• RQ5. Tính chắc chắn của mô hình học sâu mục tiêu được cải thiện như thế nào sau
khi được kiểm thử với AE4DNN.
4.1
Công cụ và thiết lập thực nghiệm
Khóa luận xây dựng công cụ sinh dữ liệu đối kháng cho mô hình học sâu, công cụ được
gọi là AdvGeneration1 . Công cụ AdvGeneration được xây dựng để sinh dữ liệu đối kháng
cho mô hình học sâu theo phương pháp AE4DNN và các phương pháp sinh dữ liệu đối
kháng phổ biến bao gồm FGSM, Box-constrained L-BFGS, và AAE. Với mỗi phương
pháp, kiểm thử viên cần thiết lập các cấu hình khác nhau phù hợp với mô hình học sâu
cần kiểm thử.
Khóa luận chọn tập dữ liệu chữ viết tay MNIST [27] để thực nghiệm với AE4DNN
và các phương pháp sinh dữ liệu đối kháng khác. Tập dữ liệu này được sử dụng rộng
rãi trong nhiều nghiên cứu và được cho là hiệu quả trong việc đánh giá hiệu năng của
các phương pháp liên quan đến học máy. Tập dữ liệu MNIST bao gồm 60 000 ảnh huấn
luyện, 10 000 ảnh kiểm tra, và 10 nhãn từ 0 đến 9 đại diện cho các chữ số. Kích thước của
mỗi ảnh là 28x28x1, các giá trị điểm ảnh dao động từ 0 đến 255 thể hiện cho mức sáng.
Tại thực nghiệm, giá trị của các điểm ảnh được chuẩn hóa về các giá trị trong khoảng từ
0 đến 1.
Tập dữ liệu gốc được dùng để sinh dữ liệu đối kháng là S1k . Tập S1k ⊂ X chứa 1000
ảnh đầu tiên trong tập dữ liệu huấn luyện X. Theo quan sát, tập S1k là tập gần cân bằng
về các nhãn. Do đó, mô hình Autoencoder được chọn có thể học được các đặc trưng cần
thiết để sinh dữ liệu đối kháng cho mô hình học sâu mục tiêu với bất kỳ nhãn y∗ nào.
Do không làm mất tính tổng quát của bài toán, khóa luận chọn ngẫu nhiên nhãn 7 làm
nhãn mục tiêu. Khi đó véc-tơ nhãn mục tiêu được tạo theo phương pháp mã hóa one-hot
encoding [36] là y∗ = [0, 0, 0, 0, 0, 0, 0, 1, 0, 0].
Về mô hình học sâu mục tiêu, đây là mô hình CNN được huấn luyện trên tập dữ
liệu huấn luyện MNIST có kiến trúc được mô tả tại Bảng 4.1. Kiến trúc này được chứng
minh là chắc chắn để chống lại các tấn công đối kháng [33]. Sau khi được huấn luyện,
mô hình CNN này có độ chính xác trên 99% đối với tập kiểm tra, đạt 100% trên tập S1k .
1 https://github.com/testingforAI-vnuuet/AdvGeneration
31
Về mô hình Autoencoder, mô hình Autoencoder được chọn cần có khả năng tái xây
dựng dữ liệu đủ tốt qua hàm mục tiêu. Khóa luận chọn mô hình Autoencoder có kiến
trúc được mô tả tại Bảng 4.2, sau khi thực nghiệm tái xây dựng dữ liệu không có nhiễu
loạn, hàm mục tiêu MSE của mô hình đạt 0.005. Do đó, mô hình này được đánh giá là
đủ tốt để sinh dữ liệu đối kháng và được dùng để trả lời các câu hỏi nghiên cứu được
đặt ra ở trên. Phương pháp AE4DNN và AAE đều sử dụng mô hình Autoencoder này để
sinh dữ liệu đối kháng.
Bảng 4.1: Kiến trúc mô hình học sâu được kiểm thử
Tên
Kiểu
Kích thước đầu vào
Kích thước đầu ra
conv2d_12
Conv2D
(28, 28, 1)
(26, 26, 32)
conv2d_13
Conv2D
(26, 26, 32)
(24, 24, 32)
max_pooling2d_6
MaxPooling2
(24, 24, 32)
(12, 12, 32)
conv2d_14
Conv2D
(12, 12, 32)
(10, 10, 64)
conv2d_15
Conv2D
(10, 10, 64)
(8, 8, 64)
max_pooling2d_7
MaxPooling2
(8, 8, 64)
(4, 4, 64)
flatten_3
Flatten
(4, 4, 64)
(1024, )
dense_9
Dense
(1024, )
(200, )
dropout_6
Dropout
(200, )
(200, )
dense_10
Dense
(200, )
(200, )
dropout_7
Dropout
(200, )
(200, )
dense_11
Dense
(200, )
(10, )
Để sinh dữ liệu đối kháng cho mô hình học sâu mục tiêu, mô hình Autoencoder
được huấn luyện tối đa 400 epoch, batch_size = 256. Chiến thuật dừng sớm (early stopping) được áp dụng để tìm các trọng số tốt nhất dành cho mô hình. Sau quá trình huấn
luyện, các dữ liệu trong tập S1k được đưa lại vào mô hình để sinh dữ liệu đối kháng
đề xuất. Sau đó, AE4DNN tìm ra tập dữ liệu đối kháng bằng cách tìm các dữ liệu thỏa
mãn các điều kiện trong Định nghĩa 2.3. Các phương pháp AE4DNN, FGSM, Boxconstrained L-BFGS, và AAE được thực nghiệm bằng công cụ AdvGeneration, phương
pháp Carlini-Wagner ||L||2 được thực nghiệm bằng mã nguồn2 của tác giả. Đồng thời,
để đảm bảo công bằng về thời gian thực thi, các phương pháp được thực nghiệm với cùng
2 https://github.com/carlini/nn_robust_attacks
32
cấu hình phần cứng tại Google Colab 3 với GPU.
Bảng 4.2: Kiến trúc của mô hình Autoencoder được sử dụng để kiểm thử tính chắc chắn
của mô hình học sâu
Tên
Kiểu
Kích thước đầu vào
Kích thước đầu ra
input_1
InputLayer
(28, 28, 1)
(28, 28, 1)
conv2d
Conv2D
(28, 28, 1)
(28, 28, 32)
max_pooling2d
MaxPooling2D
(28, 28, 32)
(14, 14, 32)
conv2d_1
Conv2D
(14, 14, 32)
(14, 14, 32)
max_pooling2d_1
MaxPooling2
(14, 14, 32)
(7, 7, 32)
conv2d_2
Conv2D
(7, 7, 32)
(7, 7, 32)
up_sampling2d
UpSampling2D
(7, 7, 32)
(14, 14, 32)
conv2d_3
Conv2D
(14, 14, 32)
(14, 14, 32)
up_sampling2d_1
UpSampling2
(14, 14, 32)
(28, 28, 32)
conv2d_4
Conv2D
(28, 28, 32)
(28, 28, 1)
4.2
Đánh giá kết quả thực nghiệm
Trả lời câu hỏi RQ1. Khóa luận đề xuất Công thức 3.2 giúp giảm chi phí chọn giá trị
β . Ban đầu, các giá trị trọng số của mô hình Autoencoder được khởi tạo theo phân phối
chuẩn và không làm thay đổi nhiều giá trị biên trên của β (xấp xỉ 10−3 ). Áp dụng Công
thức 3.2 theo hàm mục tiêu của AE4DNN, giá trị biên trên của β là 0.015. Do đó, giá trị
phù hợp của β nằm trong đoạn [0, 0.015].
Thực nghiệm thực thi AE4DNN với các giá trị β khác nhau trong đoạn [0, 0.015].
Do đoạn này không quá lớn nên ta có thể giảm được thời gian và công sức tìm giá trị
phù hợp của β . Giá trị phù hợp của β sẽ đảm bảo chất lượng và số lượng của dữ liệu đối
kháng cao. Theo quan sát, tập dữ liệu đối kháng được cho là có chất lượng tốt nếu giá trị
trung bình theo khoảng cách ||L||2 của tập dữ liệu này nhỏ hơn 6.5. Điều này đảm bảo
sự chỉnh sửa là đủ nhỏ và sự chỉnh sửa này không làm thay đổi nhiều các thuộc tính gốc
sẵn có.
Bảng 4.3 thể hiện kết quả thực nghiệm với các giá trị khác nhau của β trong đoạn
3 https://colab.research.google.com
33
Bảng 4.3: Giá trị trung bình khoảng cách ||L||2 của tập dữ liệu đối kháng với tập dữ liệu
gốc và số lượng dữ liệu đối kháng tương ứng với các giá trị khác nhau của β . Các giá trị
β phù hợp được in đậm
0.0005 0.001 0.002 0.003 0.004 0.005 0.006
β
Avg
||L||2
#adv
3.2
4.56
4.71
4.98
6.47
6.34
7.01
12
62
75
101
492
661
482
[0, 0.015]. Kết quả cho thấy, giá trị β = 0.0005 là không phù hợp do số lượng dữ liệu
đối kháng còn ít. Tức là khả năng tấn công của mô hình Autoencoder còn yếu. Bên cạnh
đó, giá trị β = 0.006 cũng được coi là không phù hợp, do giá trị của Avg ||L||2 lớn. Tức
là chất lượng của tập dữ liệu đối kháng chưa được tốt. Giá trị phù hợp nhất là 0.004
và 0.005. Kết quả kiểm thử với các giá trị này cho thấy, số lượng dữ liệu đối kháng do
AE4DNN sinh ra đạt xấp xỉ 50%. Do đó, tính chắc chắn của mô hình mục tiêu không
cao khi bị tấn công bởi AE4DNN.
Trả lời câu hỏi RQ2. Để thể hiện khả năng làm giảm sự đánh đổi giữa chất lượng
tập dữ liệu đối kháng theo khoảng cách ||L||2 và thời gian sinh tập dữ liệu đối kháng của
AE4DNN so với các phương pháp hiện nay. Cụ thể là FGSM [14], Box-constrained LBFGS [42], Carlini-Wagner ||L||2 [9], và AAE [5]. Thực nghiệm thiết lập chương trình
sinh tập dữ liệu đối kháng theo các tham số khác nhau thuộc một khoảng tương ứng với
mỗi phương pháp. Kết quả và cấu hình cho mỗi phương pháp được mô tả tại Bảng 4.4.
Bảng 4.4: So sánh chất lượng dữ liệu đối kháng và thời gian sinh của các phương pháp
AE4DNN, AAE, FGSM, Box-constrained L-BFGS, và Carlini-Wagner ||L||2
FGSM
Carlini-Wagner
L-BFGS
||L||2
AE4DNN
Cấu hình
β ∈ [0.001, 0.005] φ ∈ [0.005, 0.02] ε ∈ [0.1, 0.3]
Min ||L||2
3.85
3.19
8.98
2.34
13.43
Max ||L||2
6.81
7.1
17.9
7.4
15.08
∼1
∼1
∼3
∼30
Time (minute) ∼1
AAE
Box-constrained
Tiêu chí
34
c ∈ [0.001, 0.0035],
# iter = 20
# iter = 1000
Kết quả sinh dữ liệu đối kháng của các phương pháp theo tiêu chí khoảng cách
||L||2 nhỏ nhất (min ||L||2 ), khoảng cách ||L||2 lớn nhất (max ||L||2 ) và thời gian sinh
(time) được thể hiện tại Bảng 4.4. Về tổng quát, giá trị về khoảng cách ||L||2 so với dữ
liệu gốc của dữ liệu đối kháng trong tập dữ liệu được sinh bởi AE4DNN nhỏ hơn so
với các phương pháp FGSM, Box-constrained L-BFGS, và Carlini-Wagner ||L||2 . Đồng
thời, thời gian sinh dữ liệu của AE4DNN nhỏ hơn các phương pháp Box-constrained
L-BFGS, Carlini-Wagner ||L||2 trong khi tiêu chí về khoảng cách ||L||2 nhỏ hơn. So với
AAE, AE4DNN có kết quả tương đương khi xét về các tiêu chí min ||L||2 , max ||L||2 và
time. Tuy nhiên, các thực nghiệm khác cho thấy AE4DNN có khả năng khái quát hóa
(RQ3) và sinh tập dữ liệu đối kháng có khả năng chuyển nhượng (RQ4) tốt hơn AAE.
Hình 4.1 thể hiện kết quả 5 ảnh đối kháng tương ứng với từng phương pháp. Kết
quả cho thấy ảnh đối kháng do AE4DNN sinh ra có chất lượng tốt và xác suất dự đoán
theo nhãn mục tiêu của mô hình học sâu xấp xỉ 100%. Các phương pháp khác sinh ra
nhiều ảnh đối kháng có xác suất dự đoán theo nhãn mục tiêu không cao. Điều này cho
thấy AE4DNN có khả năng sinh dữ liệu đối kháng có chất lượng tốt và có khả năng đánh
lừa mô hình học sâu mục tiêu mức độ tự tin cao.
Trả lời câu hỏi RQ3. Để đánh giá khả năng khái quát hóa của AE4DNN và AAE,
khóa luận sử dụng tập dữ liệu mới chưa từng được dùng để huấn luyện mô hình Autoencoder. Các tập dữ liệu này có thể là tập dữ liệu con của tập dữ liệu X hoặc tập dữ liệu
không thuộc X. Kết quả cho thấy, AE4DNN có khả năng khái quát hóa tốt hơn AAE.
Các phương pháp FGSM, Box-constrained L-BFGS, Carlini-Wagner ||L||2 được
bỏ qua trong so sánh này. Nguyên nhân là do các phương pháp này không được thiết kế
cho nhiệm vụ sinh từ tập dữ liệu sang một tập dữ liệu đối kháng mới mà chỉ sinh từ một
dữ liệu gốc sang một dữ liệu đối kháng. Bên cạnh đó, các phương pháp này phải suy
luận từ mô hình học sâu mục tiêu mỗi khi có dữ liệu mới cần sinh dữ liệu đối kháng.
Tuy nhiên, kiểm thử viên sử dụng phương pháp AE4DNN hay AAE sẽ không cần phải
sử dụng đến mô hình học sâu mục tiêu để sinh tập dữ liệu đối kháng sau khi huấn luyện
xong mô hình Autoencoder được chọn. Để trả lời câu hỏi nghiên cứu RQ3, khóa luận cần
chọn giá trị phù hợp cho φ trong hàm mục tiêu của AAE. Do đó, nhiệm vụ thử nghiệm
các giá trị φ khác nhau là cần thiết. Bảng 4.5 thể hiện kết quả sinh tập dữ liệu đối kháng
của AAE về trung bình khoảng cách ||L||2 và số lượng dữ liệu đối kháng tương ứng với
35
(a) FGSM
(b) Carlini-Wagner ||L||2
(c) Box-constrained L-BFGS
(d) AE4DNN
(e) AAE
Hình 4.1: Kết quả 5 ảnh đối kháng tương ứng với từng phương pháp. Mỗi phần gồm hai
hàng, hàng trên thể hiện ảnh gốc cùng với nhãn gốc và xác suất dự đoán, hàng dưới là
ảnh đối kháng tương ứng cùng với nhãn mục tiêu và xác suất dự đoán. Các xác suất dự
đoán được làm tròn đến số nguyên gần nhất.
36
từng giá trị của φ . Các giá trị của φ thuộc ngoài đoạn [0.002, 0.02] được bỏ qua do các
giá trị này không làm cho phương pháp AAE sinh ra được tập dữ liệu đối kháng có chất
lượng tốt hoặc tỷ lệ thành công thấp.
Bảng 4.5: Giá trị trung bình khoảng cách ||L||2 của tập dữ liệu đối kháng và số lượng dữ
liệu đối kháng tương ứng với các giá trị khác nhau của φ . Các giá trị φ phù hợp được in
đậm
φ
0.02 0.01 0.005 0.003 0.002
avg ||L||2 4
4.81 6.2
6.8
8.8
#adv
66
522
696
47
340
Do AE4DNN và AAE sử dụng các tham số β , φ khác nhau nên việc đảm bảo
sự công bằng trong so sánh là điều quan trọng. Do đó, khóa luận chọn ra các cặp
giá trị (β , φ ) mà AE4DNN và AAE sinh tập dữ liệu đối kháng có khoảng cách ||L||2
trung bình với tập dữ liệu gốc gần như nhau. Khóa luận chọn 5 cặp giá trị (β , φ )
như sau: A = (0.001, 0.01), B = (0.002, 0.01), C = (0.003, 0.01), D = (0.004, 0.005)
và E = (0.005, 0.005). Đồng thời chọn ra ba tập dữ liệu trong tập huấn luyện mô hình
học sâu mục tiêu để tấn công. Mỗi tập có 10 000 ảnh (ký hiệu là S10k ), 20 000 ảnh (ký
hiệu là S20k ), và 40 000 ảnh (ký hiệu là S40k ) lần lượt thể hiện các tấn công: 10k-attack,
20k-attack, và 40k-attack.
Các tiêu chí về khoảng cách ||L||2 và tỷ lệ thành công (success rate) được sử dụng
để so sánh. Thực nghiệm cho thấy, kết quả về trung bình khoảng cách ||L||2 và tỷ lệ thành
công cho 10k-attack, 20k-attack, và 40k-attack là gần như nhau trong cả hai phương pháp.
Do đó, để đơn giản khi so sánh, khóa luận lấy trung bình các tiêu chí ứng với từng cặp giá
trị của (β , φ ). Ví dụ, nếu AE4DNN sinh tập dữ liệu đối kháng cho 10k-attack, 20k-attack,
và 40k-attack có các giá trị trung bình khoảng cách ||L||2 lần lượt là 1, 1.5, 2 ứng với
β = 0.5 thì để ngắn gọn, giá trị trung bình về khoảng cách ||L||2 cho các tấn công trên
là
1+1.5+2
3
= 1.5. Cách áp dụng tương tự đối với tỷ lệ thành công. Tỷ tỷ lệ thành công
trung bình là trung bình tỷ lệ thành công của 10k-attack, 20k-attack, và 40k-attack ứng
với từng cặp (β , φ ). Kết quả được tổng hợp tại Bảng 4.6.
37
Bảng 4.6: Kết quả so sánh giữa AE4DNN và AAE về tính khái quát hóa. Nhãn mục tiêu
là 7. Các giá trị tốt hơn được in đậm. Thời gian dành cho các tấn công 10k-attack, 20kattack và 40k-attack lần lượt là 1.6 giây, 3.1 giây, và 6.3 giây. Các tấn công này không
cần sử dụng đến mô hình học sâu mục tiêu trong quá trình tấn công
Config
Average |||L||2
Average success rate (%)
AE4DNN
AAE AE4DNN
AAE
A
4.65
4.76
7.5
7.1
B
4.69
4.76
8.5
7.1
C
4.99
4.76
11.7
7.1
D
6.49
6.28
53.5
39
E
6.38
6.28
67.7
39
Theo Bảng 4.6, AE4DNN sinh tập dữ liệu đối kháng có khoảng cách ||L||2 cao hơn
tập dữ liệu đối kháng do AAE sinh ra trong đa số cấu hình. Điều này được lý giải là do
AAE sử dụng hàm re-rank làm cho mô hình Autoencoder sinh ra dữ liệu đối kháng có
khoảng cách ||L||2 thấp hơn so với dữ liệu gốc. Tuy nhiên, sự khác biệt này không đáng
kể (nhỏ hơn 0.5) và tỷ lệ thành công của AE4DNN cao hơn trong tất cả các cấu hình.
Điều này cho thấy việc sử dụng hàm cross-entropy trong hàm mục tiêu của AE4DNN
chứng tỏ được khả năng khái quát hóa tốt hơn hàm re-rank được sử dụng trong hàm mục
tiêu của AAE.
Trả lời câu hỏi RQ4. Câu hỏi RQ4 đặt vấn đề so sánh về khả năng chuyển nhượng
của AE4DNN và AAE. Để trả lời câu hỏi RQ4, thực nghiệm tiến hành huấn luyện 4 mô
hình học sâu: VGG-13 [39], VGG-16 [39], LeNet-5 [26], và AlexNet [23] với cùng tập
dữ liệu huấn luyện MNIST. Bốn mô hình học sâu này được cho là có tính đúng đắn cao
và được sử dụng rộng rãi trong nghiên cứu và phát triển. Để cho ngắn gọn, bốn mô hình
này được gọi là bốn mô hình ẩn. Sau quá trình huấn luyện, bốn mô hình ẩn có độ chính
xác cao trên tập huấn luyện, tập kiểm tra (xấp xỉ 98%). Tập dữ liệu đối kháng được sinh
ra bởi AE4DNN và AAE từ mô hình học sâu mục tiêu ban đầu được dùng để kiểm thử
bốn mô hình ẩn sau khi được huấn luyện.
38
Bảng 4.7: Tỷ lệ chuyển nhượng của các tập dữ liệu đối kháng giữa mô hình học sâu mục
tiêu và các mô hình ẩn tương ứng với phương pháp AE4DNN và AAE
Config
VGG-13 (%)
VGG-16 (%)
LeNet-5 (%)
AAE AE4DNN
AlexNet (%)
AE4DNN
AAE AE4DNN
AAE AE4DNN
AAE
A
6.3
4.9
3.7
3.6
1.2
0.9
7.3
6.1
B
7.4
4.9
6
3.6
1.2
0.9
8
6.1
C
31.8
4.9
27.7
3.6
10
0.9
20.4
6.1
D
46.4
38.5
47.1
39.1
18.1
6.4
39.4
31.1
E
46.4
38.5
47.1
39.1
18.1
6.4
39.1
31.1
Kết quả thực nghiệm về tỷ lệ chuyển nhượng của các tập dữ liệu đối kháng được
thể hiện tại Bảng 4.7. Tại tất cả các cặp cấu hình, AE4DNN cho thấy khả năng chuyển
nhượng đều cao hơn AAE. Lý do là việc sử dụng hàm re-rank của AAE. Hàm re-rank
làm cho mô hình học sâu mục tiêu có véc-tơ dự đoán của dữ liệu đối kháng gần với véc-tơ
dự đoán dữ liệu gốc nhất có thể . Nói theo cách khác, hành vi dự đoán của mô hình học
sâu với dữ liệu gốc và dữ liệu đối kháng sẽ gần giống nhau tại các nhãn. Điều này giúp
sự chỉnh sửa trên dữ liệu gốc và dữ liệu đối kháng nhỏ nhất có thể. Tuy nhiên, khi áp
dụng vào khả năng chuyển nhượng, các mô hình ẩn có cách đối xử với một dữ liệu gần
như khác với mô hình học sâu mục tiêu, cho dù chúng có cùng hành vi phân loại. Do đó,
sự chỉnh sửa của AAE có thể không đủ lớn để đánh lừa các mô hình ẩn. Ngược lại, hàm
cross-entropy làm cho mô hình học sâu dự đoán xác suất dữ liệu đối kháng thuộc nhãn
mục tiêu lớn nhất có thể và xác suất thuộc các nhãn khác nhỏ nhất có thể. Điều này có
thể làm sự chỉnh sửa trên dữ liệu gốc lớn hơn nhưng đủ để có thể đánh lừa các mô hình
ẩn hiệu quả qua khả năng chuyển nhượng.
Trả lời câu hỏi RQ5. Mục tiêu của nhiệm vụ kiểm thử tính chắc chắn của mô hình
học sâu qua AE4DNN là tăng sự chắc chắn của các mô hình này khi bị tấn công. Do đó,
nhiệm vụ kiểm tra khả năng chống lại các tấn công của AE4DNN đối với các phương
pháp khác là cần thiết. Để cải thiện tính chắc chắn của mô hình học sâu mục tiêu khi
đầu vào là dữ liệu nhiễu loạn, mô hình học sâu này được huấn luyện lại với tập dữ liệu
39
huấn luyện ban đầu và tập dữ liệu đối kháng được sinh ra bởi AE4DNN. Tập dữ liệu đối
kháng này được gán nhãn lại với nhãn của dữ liệu gốc tương ứng. Quá trình huấn luyện
này được gọi là huấn luyện đối kháng (adversarial training). Để đơn giản, mô hình học
sâu mục tiêu ban đầu được ký hiệu là M. Ký hiệu mô hình học sâu Msecure là thể hiện
của mô hình M sau khi được huấn luyện đối kháng với tập dữ liệu đối kháng được sinh
ra bằng phương pháp AE4DNN.
Bảng 4.8: Tỷ lệ thành công của các phương pháp FGSM, L-BFGS, Carlini-Wagner ||L||2
, và AAE đối với mô hình hai học sâu M và Msecure . Nhãn mục tiêu là 7. Reduction rate
thể hiện phần trăm tỷ lệ thành công giảm của Msecure so với M với từng phương pháp.
AE4DNN cũng được thực thi trong thực nghiệm này
Phương pháp
Tỷ lệ thành công Tỷ lệ thành công
trên M
trên Msecure
Reduction rate
Box-constrained L-BFGS
28.3%
14.1%
50.2%
FGSM
8.2%
2.8%
65.8%
Carlini-Wagner ||L||2
88.9%
63.9%
28.1%
34%
15.2%
55.3%
49.2%
10%
79.7%
AAE
AE4DNN
Dữ liệu đối kháng được sử dụng để thực hiện huấn luyện đối kháng cho mô hình
M là tập dữ liệu đối kháng được sinh ra từ AE4DNN. Phương pháp AE4DNN sinh tập dữ
liệu này với β = 0.004 và tập dữ liệu gốc ban đầu là S10k . Sau khi huấn luyện đối kháng
trên mô hình M, ta được mô hình mới là Msecure . Mô hình Msecure đạt độ chính xác trên
tập kiểm tra xấp xỉ với mô hình M (sai lệch 0.05%). Điều này cho thấy dữ liệu đối kháng
được sinh ra bởi AE4DNN có chất lượng cao và không gây tác động quá lớn đến tính
đúng đắn của mô hình học sâu mục tiêu. Do đó, AE4DNN đảm bảo dữ liệu đối kháng
không làm giảm tính đúng đắn của mô hình học sâu mục tiêu với tập dữ liệu kiểm tra.
Đồng thời, qua tập dữ liệu đối kháng được sinh ra, mô hình học sâu M có khả năng trích
xuất thêm được nhiều thuộc tính quan trọng của dữ liệu để đảm bảo tính chắc chắn với
đầu vào có sự nhiễu loạn.
Quá trình thiết lập sinh dữ liệu đối kháng của các phương pháp FGSM, L-BFGS,
Carlini-Wagner ||L||2 , AAE, và AE4DNN trên mô hình Msecure tương tự như quá trình
40
thiết lập sinh dữ liệu đối kháng của từng phương pháp trên mô hình M. Các tham số của
các phương pháp này sẽ không được mô tả chi tiết. Tập dữ liệu gốc được dùng để sinh
dữ liệu đối kháng vẫn là S1k , nhãn mục tiêu là 7. Khóa luận so sánh tỷ lệ thành công trên
mô hình M và mô hình Msecure ứng với từng phương pháp. Theo Bảng 4.8, tỷ lệ thành
công của các phương pháp trên mô hình Msecure đều nhỏ hơn tỷ lệ thành công trên mô
hình M. Do đó, khóa luận sử dụng thông số tỷ lệ giảm (reduction rate) để thể hiện tỷ lệ
thành công giảm trên mô hình Msecure so với mô hình M. Ví dụ, một phương pháp sinh
dữ liệu đối kháng P có tỷ lệ thành công trên mô hình M là a%, tỷ lệ thành công trên
mô hình Msecure là b% (b < a). Khi đó, tỷ lệ giảm của P trên mô hình Msecure so với mô
hình M là
a−b
a
∗ 100(%). Bảng 4.8 cho thấy các phương pháp tấn công FGSM, L-BFGS,
và AAE đều có tỷ lệ giảm trên 50%. AE4DNN có tỷ lệ giảm cao nhất (79.7%). Nguyên
nhân là do Msecure được tạo ra bởi quá trình huấn luyện M với tập dữ liệu đối kháng
do chính AE4DNN sinh ra nên Msecure có khả năng chống lại tấn công từ AE4DNN cao
nhất. Tỷ lệ thành công của Carlini-Wagner ||L||2 trên cả hai mô hình M và Msecure là
cao nhất, đồng thời tỷ lệ giảm là nhỏ nhất. Tuy nhiên, phương pháp AE4DNN cũng cho
thấy khả năng cải thiện tính chắc chắn mô hình học sâu khi bị tấn công bởi phương pháp
Carlini-Wagner ||L||2 một cách rõ rệt.
Với phương pháp Carlini-Wagner ||L||2 , phương pháp này sử dụng hàm mục tiêu
với thành phần đối kháng là hàm h(.) được mô tả tại Công thức 2.9. Phương pháp CarliniWagner ||L||2 lặp lại quá trình cập nhật dữ liệu gốc để tìm dữ liệu đối kháng. Nếu tồn tại
dữ liệu (không thuộc nhãn mục tiêu) làm cho hàm h(.) ≤ 0 thì dữ liệu đó là dữ liệu đối
kháng. Số lần lặp càng cao thì chất lượng dữ liệu đối kháng được sinh ra càng kém. Do
đó, thực nghiệm đã giới hạn số lần lặp tối đa là 1000 lần lặp để đảm bảo chất lượng của
dữ liệu đối kháng. Carlini-Wagner ||L||2 được cho là một phương pháp tấn công mạnh,
tỷ lệ thành công cao [9]. Thật vậy, với mô hình M, tỷ lệ thành công của Carlini-Wagner
||L||2 trên tập này là tối đa (đạt 88.9% và 11.1% dữ liệu còn lại là các dữ liệu có nhãn
gốc trùng với nhãn mục tiêu nên không được tính là dữ liệu đối kháng). Thời gian thực
hiện tấn công này là 30 phút. Tuy nhiên, Carlini-Wagner ||L||2 cần tới 3 giờ để thực hiện
tấn công mô hình Msecure với tỷ lệ thành công là 63.9%. Điều này cho thấy có một tập
dữ liệu đã được chỉnh sửa đến 1000 lần nhưng không tìm ra được dữ liệu đối kháng.
Qua đó, ta thấy được khả năng chống lại tấn công đối kháng hiệu quả của AE4DNN đối
với một phương pháp tấn công mạnh như Carlini-Wagner ||L||2 . Tóm lại, phương pháp
41
AE4DNN có khả năng cải thiện tính chắc chắn của mô hình học sâu mục tiêu một cách
hiệu quả qua khả năng làm giảm một lượng đáng kể tỷ lệ thành công hay làm tăng thời
gian tấn công của các phương pháp phổ biến hiện nay như FGSM, L-BFGS, AAE, và
Carlini-Wagner ||L||2 .
Sau quá trình thực nghiệm, phương pháp AE4DNN đã cho thấy khả năng đạt được
hai kết quả quan trọng. Kết quả thứ nhất là giảm thiểu ba vấn đề còn tồn tại trong các
phương pháp sinh dữ liệu đối kháng phổ biến bao gồm: giảm thiểu sự đánh đổi giữa thời
gian sinh và chất lượng của dữ liệu đối kháng, tăng khả năng chuyển nhượng của tập dữ
liệu đối kháng được sinh ra, tăng khả năng khái quát hóa. Kết quả thứ hai là có khả năng
làm tăng tính chắc chắn của mô hình học sâu và không có sự tác động lớn đến tính đúng
đắn của mô hình học sâu mục tiêu M.
42
Chương 5
Kết luận
Khóa luận đề xuất phương pháp sinh dữ liệu đối kháng để kiểm thử tính chắc chắn của
mô hình học sâu - AE4DNN. Phương pháp AE4DNN được đề xuất nhằm giảm thiểu ba
vấn đề còn tồn tại trong các phương pháp sinh dữ liệu đối kháng phổ biến. Vấn đề đầu
tiên là sự đánh đổi giữa chất lượng và thời gian sinh dữ liệu đối kháng còn lớn. Vấn đề
thứ hai là tỷ lệ chuyển nhượng của tập dữ liệu đối kháng giữa các mô hình học sâu chưa
cao. Vấn đề cuối cùng là không có khả năng khái quát hóa, hoặc khả năng khái quát hóa
chưa cao. Đồng thời, AE4DNN có khả năng làm tăng tính chắc chắn của mô hình học
sâu mục tiêu qua quá trình huấn luyện đối kháng. Kết quả của khóa luận đã được chấp
nhận trình bày tại hội nghị quốc tế IEEE-RIVF 20211 .
Với mục tiêu chính là kiểm thử tính chắc chắn của mô hình học sâu. Phương pháp
AE4DNN nhận bốn đầu vào là mô hình học sâu mục tiêu, tập dữ liệu huấn luyện, nhãn
mục tiêu và mô hình Autoencoder được định nghĩa sẵn kiến trúc. Phương pháp AE4DNN
huấn luyện mô hình Autoencoder có khả năng sinh dữ liệu đối kháng từ một tập dữ gốc
ban đầu. Hàm mục tiêu để huấn luyện mô hình Autoencoder bao gồm hai thành phần.
Thành phần đầu tiên là khoảng cách ||L||2 giữa dữ liệu được sinh ra và dữ liệu gốc. Thành
phần thứ hai là khoảng cách theo hàm cross-entropy giữa véc-tơ dự đoán của mô hình
học sâu với dữ liệu được sinh ra và véc-tơ nhãn mục tiêu. Phương pháp AE4DNN đề xuất
phương pháp chọn khoảng giá trị phù hợp của trọng số giữa hai thành phần. Điều này
1 Duc-Anh
Nguyen, Do Minh Kha, Pham Thi To Nga, Pham Ngoc Hung. An Autoencoder-based
Method for Targeted Attack on Deep Neural Network Models. The 15th IEEE-RIVF International Conference on Computing and Communication Technologies, RIVF 2021.IEEE, 2021 (accepted).
43
giúp giảm chi phí tìm trọng số trong quá trình kiểm thử. Phương pháp AE4DNN kiểm
thử tính chắc chắn của mô hình học sâu theo tiêu chí tỷ lệ sinh dữ liệu đối kháng thành
công. Sau quá trình kiểm thử, dữ liệu đối kháng được sử dụng để huấn luyện lại mô hình
học sâu mục tiêu nhằm tăng chính chắc chắn của mô hình.
Thực nghiệm trên tập dữ liệu MNIST cho thấy, phương pháp AE4DNN có khả năng
giảm thiểu ba vấn đề chính còn tồn tại trong các phương pháp sinh dữ liệu đối kháng phổ
biến. Bên cạnh đó, dữ liệu đối kháng được sinh ra bởi AE4DNN có khả năng làm tăng
tính chắc chắn của mô hình học sâu mục tiêu. Sau khi được huấn luyện đối kháng, mô
hình học sâu đã làm giảm tỷ lệ thành công và tăng chi phí kiểm thử của các phương pháp
sinh dữ liệu đối kháng phổ biến như FGSM, Box-constrained L-BFGS, Carlini-Wagner
||L||2 , và AAE. Đồng thời, tính đúng đắn của mô hình học sâu không thay đổi sau khi
được cải thiện tính chắc chắn. Với kết quả hiện tại, phương pháp AE4DNN được kỳ vọng
sẽ mở rộng thêm các nghiên cứu làm tăng tính chắc chắn của các mô hình học sâu. Điều
này làm giảm sự lo ngại về sự an toàn trong các hệ thống sử dụng mô hình học sâu và
giúp các hệ thống hoạt động bình thường trong môi trường có sự nhiễu loạn.
Bên cạnh những ưu điểm, phương pháp AE4DNN cho thấy hai nhược điểm chính.
Nhược điểm đầu tiên là sự phụ thuộc vào kiến trúc của mô hình Autoencoder. Kiểm thử
viên cần chọn kiến trúc mô hình Autoencoder phù hợp với tính chất của bài toán. Nhược
điểm thứ hai là còn tồn tại một lượng dữ liệu đối kháng có chất lượng còn thấp theo tiêu
chí ||L||2 (khoảng cách ||L||2 > 7.0).
Trong tương lai, phương pháp AE4DNN cần được cải thiện hai nhược điểm chính
còn tồn tại. Để hạn chế phụ thuộc vào mô hình Autoencoder, khóa luận đề xuất chiến
lược huấn luyện mới cho mô hình Autoencoder. Khi đó, mô hình Autoencoder chỉ tái
xây dựng lại một số thuộc tính cụ thể của dữ liệu đầu vào. Ví dụ như những thuộc tính có
sự ảnh hưởng lớn đầu ra của mô hình học sâu theo nhãn mục tiêu, hay vùng có sự biến
đổi lớn trong dữ liệu ảnh, v.v. Kết quả ban đầu trên tập dữ liệu ảnh chữ viết tay MNIST
cho thấy, mô hình Autoencoder có thể sinh một tập dữ liệu ảnh đối kháng với sự chỉnh
sửa trên một vài điểm ảnh của tập dữ liệu gốc. Đồng thời, phương pháp vẫn duy trì tỷ
lệ thành công ở mức cao. Hơn nữa, nhiệm vụ thực nghiệm AE4DNN với các tập dữ liệu
phức tạp trong thực tế như dữ liệu dạng âm thanh, dữ liệu ngôn ngữ tự nhiên là cần thiết.
Nhiệm vụ này giúp AE4DNN có khả năng mở rộng để kiểm thử và cải thiện tính chắc
chắn của nhiều mô hình học sâu đang được triển khai trong thực tế tại nhiều lĩnh vực.
44
Tài liệu tham khảo
[1] Semantic hashing. International Journal of Approximate Reasoning, 50(7):969–
978, 2009. Special Section on Graphical Models and Information Retrieval.
[2] Chid Apté. The role of machine learning in business optimization. pages 1–2, 01
2010.
[3] Pallavi Asthana and Bramah Hazela. Applications of Machine Learning in Improving Learning Environment, pages 417–433. 01 2020.
[4] Dzmitry Bahdanau, Kyunghyun Cho, and Y. Bengio. Neural machine translation
by jointly learning to align and translate. ArXiv, 1409, 09 2014.
[5] Shumeet Baluja and Ian Fischer. Adversarial transformation networks: Learning to
generate adversarial examples. 03 2017.
[6] Marco Barreno, Blaine Nelson, Russell Sears, Anthony Joseph, and J. Tygar. Can
machine learning be secure? volume 2006, pages 16–25, 01 2006.
[7] Mariusz Bojarski, Davide Testa, Daniel Dworakowski, Bernhard Firner, Beat
Flepp, Prasoon Goyal, Larry Jackel, Mathew Monfort, Urs Muller, Jiakai Zhang,
Xin Zhang, Jake Zhao, and Karol Zieba. End to end learning for self-driving cars.
04 2016.
[8] Nicholas Carlini and David Wagner. Adversarial examples are not easily detected:
Bypassing ten detection methods. pages 3–14, 11 2017.
[9] Nicholas Carlini and David Wagner. Towards evaluating the robustness of neural
networks. pages 39–57, 05 2017.
45
[10] Kyunghyun Cho, Bart van Merriënboer, Dzmitry Bahdanau, and Y. Bengio. On the
properties of neural machine translation: Encoder-decoder approaches. 09 2014.
[11] Reuben Feinman, Ryan Curtin, Saurabh Shintre, and Andrew Gardner. Detecting
adversarial samples from artifacts. 03 2017.
[12] Zhitao Gong, Wenlu Wang, and Wei-Shinn Ku. Adversarial and clean data are not
twins. 04 2017.
[13] Ian Goodfellow, Yoshua Bengio, and Aaron Courville. Deep Learning. The MIT
Press, 2016.
[14] Ian Goodfellow, Jonathon Shlens, and Christian Szegedy. Explaining and harnessing adversarial examples. In International Conference on Learning Representations, 2015.
[15] Kathrin Grosse, Praveen Manoharan, Nicolas Papernot, Michael Backes, and
Patrick McDaniel. On the (statistical) detection of adversarial examples. 02 2017.
[16] Kathrin Grosse, Nicolas Papernot, Praveen Manoharan, Michael Backes, and
Patrick McDaniel. Adversarial perturbations against deep neural networks for malware classification. 06 2016.
[17] G.E. Hinton and R.R. Salakhutdinov. Reducing the dimensionality of data with
neural networks. Science (New York, N.Y.), 313:504–7, 08 2006.
[18] Like Hui and Mikhail Belkin. Evaluation of neural architectures trained with square
loss vs cross-entropy in classification tasks, 06 2020.
[19] Uiwon Hwang, Jaewoo Park, Hyemi Jang, Sungroh Yoon, and Nam Ik Cho. Puvae:
A variational autoencoder to purify adversarial examples. IEEE Access, 7:126582–
126593, 2019.
[20] Guy Katz, Clark Barrett, David Dill, Kyle Julian, and Mykel Kochenderfer. Towards proving the adversarial robustness of deep neural networks. Electronic Proceedings in Theoretical Computer Science, 257, 09 2017.
[21] F. Khalid, M. A. Hanif, S. Rehman, and M. Shafique. Security for machine
learning-based systems: Attacks and challenges during training and inference.
46
In 2018 International Conference on Frontiers of Information Technology (FIT),
pages 327–332, 2018.
[22] Diederik P. Kingma and Max Welling. 2019.
[23] Alex Krizhevsky, Ilya Sutskever, and Geoffrey Hinton. Imagenet classification with
deep convolutional neural networks. Neural Information Processing Systems, 25,
01 2012.
[24] Merima Kulin, Tarik Kazaz, Ingrid Moerman, and Eli De Poorter. A survey on
machine learning-based performance improvement of wireless networks: Phy, mac
and network layer, 01 2020.
[25] Alexey Kurakin, Ian J. Goodfellow, and Samy Bengio. Adversarial examples in the
physical world. CoRR, abs/1607.02533, 2016.
[26] Y. Lecun, L. Bottou, Y. Bengio, and P. Haffner. Gradient-based learning applied
to document recognition. Proceedings of the IEEE, 86(11):2278–2324, 1998.
[27] Yann Lecun, Léon Bottou, Yoshua Bengio, and Patrick Haffner. Gradient-based
learning applied to document recognition. In Proceedings of the IEEE, pages 2278–
2324, 1998.
[28] Y. Liu, X. Chen, Chang Liu, and D. Song. Delving into transferable adversarial
examples and black-box attacks. ArXiv, abs/1611.02770, 2017.
[29] Alireza Makhzani and Brendan Frey. k-sparse autoencoders. 12 2013.
[30] N. Papernot, P. McDaniel, S. Jha, M. Fredrikson, Z. B. Celik, and A. Swami. The
limitations of deep learning in adversarial settings. In 2016 IEEE European Symposium on Security and Privacy (EuroS P), pages 372–387, 2016.
[31] Nicolas Papernot, Patrick McDaniel, and Ian Goodfellow. Transferability in machine learning: from phenomena to black-box attacks using adversarial samples. 05
2016.
[32] Nicolas Papernot, Patrick McDaniel, Ian Goodfellow, Somesh Jha, Z. Berkay Celik,
and Ananthram Swami. Practical black-box attacks against machine learning. pages
506–519, 04 2017.
47
[33] Nicolas Papernot, Patrick D. McDaniel, Xi Wu, Somesh Jha, and Ananthram
Swami. Distillation as a defense to adversarial perturbations against deep neural
networks. CoRR, abs/1511.04508, 2015.
[34] K. K. Parhi and N. K. Unnikrishnan. Brain-inspired computing: Models and architectures. IEEE Open Journal of Circuits and Systems, 1:185–204, 2020.
[35] Kexin Pei, Yinzhi Cao, Junfeng Yang, and Suman Jana. Deepxplore: Automated
whitebox testing of deep learning systems. CoRR, abs/1705.06640, 2017.
[36] Kedar Potdar, Taher Pardawala, and Chinmay Pai. A comparative study of categorical variable encoding techniques for neural network classifiers. International
Journal of Computer Applications, 175:7–9, 10 2017.
[37] K. Shailaja, B. Seetharamulu, and M. A. Jabbar. Machine learning in healthcare: A
review. In 2018 Second International Conference on Electronics, Communication
and Aerospace Technology (ICECA), pages 910–914, 2018.
[38] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for
large-scale image recognition. arXiv 1409.1556, 09 2014.
[39] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for
large-scale image recognition. arXiv 1409.1556, 09 2014.
[40] J. Su, D. V. Vargas, and K. Sakurai. One pixel attack for fooling deep neural networks. IEEE Transactions on Evolutionary Computation, 23(5):828–841, 2019.
[41] Youcheng Sun, Xiaowei Huang, and Daniel Kroening. Testing deep neural networks. CoRR, abs/1803.04792, 2018.
[42] Christian Szegedy, Wojciech Zaremba, Ilya Sutskever, Joan Bruna, Dumitru Erhan,
Ian Goodfellow, and Rob Fergus. Intriguing properties of neural networks. 2014.
[43] Pascal Vincent, Hugo Larochelle, Isabelle Lajoie, Yoshua Bengio, and PierreAntoine Manzagol. Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion. Journal of Machine
Learning Research, 11(110):3371–3408, 2010.
48
[44] Wayne Xiong, Jasha Droppo, Xuedong Huang, Frank Seide, Michael Seltzer, Andreas Stolcke, Dong Yu, and Geoffrey Zweig. Achieving human parity in conversational speech recognition. IEEE/ACM Transactions on Audio, Speech, and
Language Processing, PP, 10 2016.
[45] Weilin Xu, Y. Qi, and David Evans. Automatically evading classifiers: A case study
on pdf malware classifiers. In NDSS, 2016.
[46] J. M. Zhang, M. Harman, L. Ma, and Y. Liu. Machine learning testing: Survey,
landscapes and horizons. IEEE Transactions on Software Engineering, pages 1–1,
2020.
[47] Zhilu Zhang and Mert Sabuncu. Generalized cross entropy loss for training deep
neural networks with noisy labels, 05 2018.
49
Download