ĐẠ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