Bên cạnh đó việc sử dụng học cộng tác giúp có một môhình máy học mạnh mẽ mà không cần phải chia sẻ dữ liệu, do đó có thé đảm bảo quyền riêng tư và bảo mật của dữ liệu cũng như quyền được
Trang 1ĐẠI HỌC QUOC GIA TP HO CHÍ MINH
TRUONG DAI HOC CONG NGHE THONG TIN
KHOA MANG MAY TINH VA TRUYEN THONG
PHAM KHOI NGUYEN
TRONG PHAT HIỆN MA ĐỘC ANDROID
A study on Android malware detection by using federated
learning and permission
KY SU NGANH AN TOAN THONG TIN
TP HO CHÍ MINH, 2022
Trang 2ĐẠI HỌC QUÓC GIA TP HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MAY TÍNH VÀ TRUYEN THONG
PHAM KHOI NGUYEN - 18520114
KHOA LUAN TOT NGHIEP
TÌM HIẾU HỌC CONG TAC VA CAP QUYEN TRUY CAP
TRONG PHAT HIEN MA ĐỘC ANDROID
A study on Android malware detection by using federated
learning and permission
KY SU NGANH AN TOAN THONG TIN
GIANG VIEN HUONG DAN
TS NGUYEN TAN CAM
TP HO CHÍ MINH, 2022
Trang 3DANH SÁCH HỘI ĐÒNG BẢO VỆ KHÓA LUẬN
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số
Hiệu trưởng Trường Đại học Công nghệ Thông tin.
1.TS Nguyễn Ngọc Tu-Cht tịch.
2.Phan Thế Duy-Ủy viên
3.Đỗ Hoàng Hién-Uy viên.
Trang 4ĐẠI HỌC QUOC GIA TP HO CHÍ MINH CONG HÒA XÃ HOI CHỦ NGHĨA
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VIỆT NAM
THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc
TP HCM, ngày tháng năm
NHẬN XÉT KHÓA LUẬN TÓT NGHIỆP
(CUA CAN BO HƯỚNG DAN)
Tên khóa luận:
TÌM HIẾU HỌC CONG TÁC VA CAP QUYEN TRUY CẬP TRONG PHAT HIỆN
MÃ ĐỘC ANDROID
Nhóm SV thực hiện: Cán bô hướng dẫn:
Phạm Khôi Nguyên 18520114 Nguyễn Tan Cam
Danh gia Khoa luan
1 Vécuon báo cáo:
Sé trang Sé chuong
Số bảng số liệu Số hình vẽ
Số tài liệu tham khảo Sản phẩm
Một số nhận xét về hình thức cuốn báo cáo:
<nhận xét về định dạng, cách thức viết báo cáo, phân bố nội dung, chương mục có hợp lý
không >
Trang 52 Về nội dung nghiên cứu:
<nhận xét về kiên thức, phương pháp mà sinh viên đã tìm hiệu, nghiên cứu nhận xét wu điêm va
hạn ché>
3 Về chương trình ứng dụng:
<nhận xét về việc xây dung ung dung demo, nhận xét wu điểm và hạn ché>
4 Về thái độ làm việc của sinh viên:
<nhận xét về thái độ, ưu khuyết điểm của từng sinh viên tham gia>
Đánh gia chung: Khóa luận đạt/không đạt yêu cầu của một khóa luận tốt nghiệp kỹ sư/
cử nhân, xếp loại Gidi/ Khá/ Trung bình
Điểm từng sinh viên:
<Tên sinh viên l>: 190
Người nhận xét
(Ký tên và ghi rõ họ tên)
Nguyễn Tan Cam
Trang 6ĐẠI HỌC QUOC GIA TP HO CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VIỆT NAM
THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc
TP HCM, ngày tháng năm
NHẬN XÉT KHÓA LUẬN TÓT NGHIỆP
(CUA CÁN BO PHAN BIEN)
Tên khóa luận:
TÌM HIỂU HỌC CONG TÁC VÀ CAP QUYEN TRUY CẬP TRONG PHÁT HIỆN MÃ
ĐỘC ANDROID
Nhóm SY thực hiên: Cán bô phản biên:
Phạm Khôi Nguyên 18520114 Trần Tuấn Dũng
Đánh giá Khóa luận
5 Về cuốn báo cáo:
Số trang Số chương
Số bảng số liệu Số hình vẽ
Số tài liệu tham khảo Sản phẩm
Một sô nhận xét vê hình thức cuôn báo cáo:
<nhận xét về định dạng, cách thức việt báo cáo, phân bồ nội dung, chương mục có hợp
lý không >
Trang 76 Về nội dung nghiên cứu:
<nhận xét về kiên thức, phương pháp mà sinh viên đã tim hiệu, nghiên cứu nhận xét wu điêm va
hạn chê>
7 Về chương trình ứng dụng:
<nhận xét về việc xây dựng ứng dung demo, nhận xét ưu điểm và hạn ché>
8 Về thái độ làm việc của sinh viên:
<nhận xét về thái độ, wu khuyết điểm của từng sinh viên tham gia>
Đánh giá chung: Khóa luận đạt/không đạt yêu cầu của một khóa luận tốt nghiệp kỹ sư/cử
nhân, xếp loại Giỏi/ Khá/ Trung bình
Điểm từng sinh viên:
<Tên sinh viên l>: /10
Người nhận xét (Ký tên và ghi rõ họ tên)
Trần Tuấn Dũng
Trang 8LOI CAM ON
Đề hoàn thành được khóa luận này, lời đầu tiên, chúng tôi xin chân thành gửi lời cảm on sâu sắcđến thầy TS Nguyễn Tan Cằm- giảng viên hướng dẫn của chúng tôi trong khóa luận Thay đã luônquan tâm, lo lắng, nhắc nhở cũng như hỗ trợ chúng tôi trong suốt quá trình thực hiện khóa luận.Thay cũng là người đã tạo cơ hội và động lực cho chúng tôi trên con đường học tập và nghiên cứu
hỗ trợ nhiệt tình và tạo điều kiện trong suốt quá trình học tập tại trường
Ngoài ra chúng tôi cũng xin cảm ơn thầy Trần Tuan Dũng — có van học tập của chúng tôi Thay đãgiúp tôi có những hướng đi đúng đắn nhất trong 4 năm vừa qua dé tôi có thé tiến đến thực hiện và
hoàn thành khóa luận như ngày hôm nay.
Cuối cùng, chúng tôi muốn gửi lời cảm ơn chân thành nhất đến gia đình— những người đã luônđộng viên, giúp đỡ và là niềm cảm hứng của tôi trong mọi chặng đường
Trong quá trình thực hiện khóa luận, mặc dù chúng tôi đã cố gắng hoàn thành một cách chỉnh chunhất nhưng sẽ không tránh khỏi những sai sót, hạn chế trong đề tài Chính vì vậy, chúng tôi rấtmong nhận được sự góp ý của quý thay và các bạn dé hoàn thiện kiến thức, lấy đó làm hành trang
quý báu trong công việc sau này.
Một lân nữa, chúng tôi xin chân thành cảm ơn!
Sinh viên thực hiện
Phạm Khôi Nguyên
Trang 9ĐẠI HỌC QUỐC GIA TP HO CHI MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VIỆT NAM
THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc
ĐÈ CƯƠNG CHI TIẾT
TÊN ĐÈ TÀI:
Tên tiêng Việt: Tìm hiệu học cộng tác va cap quyên truy cập trong phát hiện mã độc Android
Tên tiêng Anh: A study on Android malware detection by using federated learning and permission
Cán bộ hướng dẫn: TS Nguyễn Tan Cam
Thời gian thực hiện: Từ ngày 22/02 đến ngày 25/06
Sinh viên thực hiện:
Phạm Khôi Nguyên — 18520114 - 0949787259
Nội dung đề tài:(Mô ta chỉ tiết mục tiêu, phạm vi, đối tượng, phương pháp thực hiện, kết quả mong)đợi của dé tai)
Mục tiêu đề tài: Các thiết bị smartphone ngày càng được sử dụng rộng rãi Bởi vì khả năng truy cập
thông tin bí mật và riêng tư quan trọng của chúng đã dẫn đến việc các thiết bị này trở thành mục tiêu
của các phần mềm độc hại Điều này còn trở nên tồi tệ hơn bởi các kỹ thuật tránh bị phát hiện ngày|
càng tinh vi Do đó, việc xây dựng một hệ thống phát hiện phần mềm độc hại là một van dé cấp thiết,
cần được quan tâm, đặc biệt là trên nền tang di động Android do tính phổ biến và khả năng tiếp cận nhiều ứng dụng của bên thứ ba.
Pham vi: Sử dụng mô hình học cộng tác và các phương pháp trích xuất permission trên nền tang di
động Android từ dataset Contagio community, thời gian thực hiện đê tai từ 22/02/2022 dén
25/06/2022.
Đối tượng: ứng dụng Android, lay danh sách quyền han làm đặc trưng
Phuong pháp thực hiện: Tìm hiểu phương pháp trích xuất permission trong các ứng dụng Android
Tìm hiéu các mô hình học máy SVM, Random Forest, RNN (Recurrent Neural Networks, K-Means
Clustering Algorithm Sử dung các độ do thông dung trong việc đánh gia mô hình.
Kết quả mong đợi của dé tài: Tìm được ra mô hình phát hiện mã độc Android
Trang 10Dong thời triên khai một hệ thong phát hiện mã độc sử dụng học cộng tác Trong tương lai, ta sẽ
tiễn hành với dit liệu có quy mô lớn hơn ngay sau khi chúng ta có đủ mẫu ứng dụng độc hai và sẽtrích xuất nhiều tính năng hơn từ mẫu các ứng dụng Thậm chí phân loại các loại phần mềm độc
hại ứng dụng phức tap (Trojan, Infosteal, v.v.)
Kế hoạch thực hiện:(Mô ta kế hoạch làm việc, thời gian biểu và phân công công việc cho từng
sinh viên tham gia)
[Thời gian Công việc
22/02/2022- Tim hiểu vê Federated learning, xây các
29/03/2022 mô hình học cộng tác
trên ứng dụng Android, tính toán hiệu
suat của từng mô hình
trong việc phát hiện mã độc.
30/03/2022- (Tim hiệu về trích xuất permission, xây
Dermission trên ứng dụng Android, tính
toán hiệu suât của từng
Imô hình trong việc phát hiện mã độc
19/04/2022- Xây các mô hình học cộng tác kết hợp
15/05/2022 trích xuất permission trên
ứng dụng Android, tính toán hiệu suất
của từng mô hình trong
việc phát hiện mã độc
16/05/2022- Viet báo cáo kết quả cuối kỳ và bảo vệ
11/06/2022 KLTN
Trang 11Tài liệu tham khảo:
lhttps://github.com/divija96/Malware-Detection https://github.com/H Detection-2 https://github.com/SanjayNITK/Permission-based-Android-Malware- Detection
Trang 121.2.1 Tính khoa học ‹ . c cece 020000020200 2 20 1 0 vn ng kg ng kh ng vn chư và 3
1.3 Phạm vi của vấn đỀ c c1 11c n ng nh ST TH TT TT TT TT nhi 31.4 Thach thite an 4
CHƯƠNG 2: CƠ SỞ LÝ THUYET VÀ CÁC NGHIÊN CỨU LIÊN QUAN 6
2.1 Tổng quan về cấp quyên truy cập và top quyền truy cập ‹‹ . c ¿c2 sees 62.2 Bản đồ quyền truy cập cc c2 2 1122211112211 112211 n ng nnkkk nn nành 8
2.3 Tổng quan về học cộng tác - - -ccc c2 222211111 11222211 1255551111115 5 1111111 xxe 11
2.3.1 Cac loại học cộng fắcC -.- c2 Q2 n2 SH SE nh en Eee nh va 11
2.3.1.1 Học cộng tac tap trung ch ee kh key 11
2.3.1.2 Hoc tập cộng tac phi tap trung 0 cece cece ence ence nh nh nà 12
2.3.1.3 Học cộng tác không đồng nhất ¿2c 2 S122 2211225552222 se 12
2.3.2 Các đặc tTưng con SH TH nh nh nh nh nh non nh nà non ng 12
2.3.2.1 Học lặp đi lặp lại - c2 ene S ng ng ng ene tant neta re 12 2.3.2.2 Dữ liệu non-1d - c2 eee teense SE nh nh vn sen 13
2.3.3 Ưu và nhược điểm của học (O10) oa SH SH SH TH Tnhh nh hy 13
2.4 Mô hình Safe SSL occ cece cece nent eben nent nee ne ne tent HT TK kh nà tự 14
2.5 Mô hình hoc cộng tác bán giám sat an toàn c2 16
2.6 Một cau trúc cộng tác kết hợp PermMaps + 222122 2311111255551 xa 18
2.7 AndOI 2020202020000 000 0n ng HH HH HH kh Đ n Đn n nh ng cà 18
Trang 132.7.1 Tập tin manifest của AndrOId -. .‹-c c2 222313 nhờn 19
2.8 Giới thiệu về Convolutional Neural NetWOrk c c2 2222212221122 12 51115111211 sx2 21
2.8.1 Khái niệm ee eee eee e eee een ene e nena eases ee TH TT nh TT nà ki kế 21 2.8.2 Convolutional là Bi? oo ec cecccescessecesceeeneeeeseecaeceeeeceeeeeseeeeaeecsaecesaeceeeeeeaeeseaeeesaeeeeees 21 2.8.3 Neural Network là gì? - - cv HH TH HT TH nh 22
2.9 Giới thiệu về Support Vector Machine ‹ccc 2522222222 2222222 2211111111111 1%2 23
2.9.2 TOMg quan ‹- c2 2012222111122 1 1111 5111115111111 551111 55x nu 232.10 Giới thiệu về Random FOFeSE 2c 111v Tnhh kệ 24
2.10.1 Khái niệm c2 2S Snn S S TH HT TT TK KT kh tt KT 24
2.10.2 U thế ee et te eee ccf L.222000222 0011 n2H nh he 24CHƯƠNG 3: PHƯƠNG PHAP THUC HIEN.0 000ccccccccccc ce 2222222211 E222222EE 1111112222 26
3.1.1 Information Gain trong lựa chon tính năng - - 26
3.1.2 Tổng hop và chuyền nhị phân : - c c7 2122222221 11122 111111125511 e, 263.2 Các phương pháp xây dựng mô hình sử dụng quyền truy cập -‹: <5 29
SN N 9)‹xiiiaaaaIAAẠIiiiiiiaiaiaaadDẶ ĂšY 29
3.2.1.3 Random EOT€S SH HH nh TK tk nh hy 31
3.3 Các phương pháp xây dung mô hình học cộng tac 0 cece cence eee nent ene enes 32
3.3.1 Mô hình Less is More 0 cece cee cc eee e cent eee eee SH SH ST ng nh nen 32
3.3.2 Mô hình học cộng tác trên thiết bị Android -¿¿ccc 2222222222222 34
CHƯƠNG 4: THỰC NGHIEM VÀ DANH GIA KET QUẢ cc ¿c7 S c2 36
4.1 Thực nghiệm quyên truy cập với thuật toán SVM c c2 222 ce, 36
4.2 Thực nghiệm quyên truy cập với thuật toán Random FOrest +2 + + +22: 374.3 Thực nghiệm quyên truy cập với thuật toán CNN c 22c 384.4 Cách thức lựa chọn quyền truy cẬp -cc ¿c1 112211122111 1122 1111118111111 2x ey 40
Trang 144.5 Thực nghiệm mô hình học liên kết với thiết bị di động c con se 44
4.5.1 Cat 505621 ằ na 341 44 4.5.2 Xây dựng GUI cho Server 0 ce cece ccc c cece een e eee e nn ng nh nh va 45
4.5.3 Xử lý các hành động cho ứng dung server GUI -.<- 47
4.5.4 Lắng nghe các kết nối trong một luồng c ¿27-2222 E E222 x2 50
4.5.6 Xử lý các hành động cho ứng dung GUI cua máy khách 53
4.5.7 Gửi và nhận dữ liệu trong một luồng cece eee ¿+ ¿+ + 2222222222222 564.6 Các công cụ dung dé đánh giá hiệu suất cccc c2 22221 2211111 3211 ens 61
4.6.2 Precision and RecalÌ c c2 teens SH SH TT TH nh nh vn 61 n8 đcđđHẬdÂ1]1 62
4.7 Đánh giá hiệu suất của mô hình cấp quyền truy cập -‹ - ¿c2 c2: 62
4.7.1 Đối với bộ dữ liệu AndMal2017 cv SE tê 704.7.2 Đối với bộ dữ liệu MalDroid-2020 - 2222222111112 sseg 714.8 Đánh giá hiệu suất của mô hình học cộng tác theo cấu trúc LiM - -: 724.9 So sánh với hệ thống khác + c 2111222111122 1 111 1211111 55111 551kg 73CHƯƠNG 5: KET LUẬN VÀ HƯỚNG PHAT TRIẾN - 2c cc S222 s2 75TÀI LIEU THAM KHẢO 2222222222222 0022 0002112011111 1111 1115111111511 ty xu 77
Trang 15DANH MỤC HÌNH VE
Hình 1.1: Tổng số phát hiện phần mềm độc hại trên thiết bị di động theo quý trong
Hình 2.1: Game lợi dụng người dùng dé lay quyền truy cập - ‹¿c c2 2c s22: 7Hình 2.2: Trích xuất permission từ app cc c2 2222111222 111111 1111111 5111111 2 1kg 10Hình 2.3: Một ví dụ về mô hình học CỘNG ẦÁC cQQQ TH ng SH TH TT nh nh nh nen 11Hình 2.4: Quy trình chung học tập cộng tac trong thiết lập các liên kêt trung tâm 13Hình 2.5: Minh hoạ về học bàn SIAM Sat ccc ccc cence eee nee eee SH HE ng nh nhe 15
Hình 2.6: Ham dự đoán người học CO $0.0 0 cece cece cee eee een 2n ng SH ng ene nen key 16 Hình 2.7: Ham dự đoán foo c cece ccc eeeeeeeeeeseeeeeeeeeseeeeceseeeseeeeeueuanees 16
Hình 2.8: Sliding WindOWS c0 00000 enn EEE EEE EEE EEE EE ke 21 Hình 2.9: Một ma trận được gọi là Convoled feature - -. -<ccccccs ae ee nee 22 Hình 2.10: Mang nơ-ron đơn g1ản c c2 2222 2n ng ng nh kh nh nha 22 Hình 3.1: Công thức tinh A từ tap Š HH HT KT Km nh nh ened 26
Hình 3.2: Trích xuất permission từ app -c ¿c1 122 2211111211111 1111111 111k xu 27Hình 3.3: Ví dụ về permission sau trích XUẤT -‹‹- 5 2222111111211 11111551111 212 27
Hình 3.4: Xóa các permission lỖi + + S S2 St S2 2E2E212191919192111 1121 21211121212111 111122111 2 kg 28
Hinh 3.5: Lựa chọn các permisison xuất hiện nhiều nhất - - + + St £t£E+E£E+EeE xxx sa 28Hình 3.6: Tổng hợp các permission được sử dụng nhiều nhất -¿ 252252 c+++++++* s2 28Hình 3.7: Hàm chuyền dataset sang dang binary -‹ c2 2211112222111 26 29
Hinh 3.8 M6 hinh 0) HDIIIIIIỔIa:.£c - 30
Hình 3.9: Siêu phang tối ưu có lề cực đại C2 2111111111 122221555555151 111111111111 xe 30Hình 3.10: Siêu phăng có lề cực đại trong không gian 3 chiêu - 5552 31
Hình 3.11: Bộ di liệu ra output là decision tree ‹ : : -<<<<c-<s-exee +2
Hình 3.12: Cloud và client đều đào tạo mô hình SAFEW của riêng họ và trọng số được tông hợphai lần dé phân phối thông tin của bộ dữ liệu thử nghiệm của người
C0 NHHÁẠ ai aIiiiiiiiiiiiiiẳiaiẳẳẳ ¬——— eeee enone 33
Hình 4.1: Thuật toán SVM - Poly kernel 0 0.000 cece cece ence ee eee 2c 2c 2221222121111 12 bates 36
Hinh 4.2: Thuật toán SVM - Rbf kernel . cccc eee esas eeeeenee ene eneeans 37 Hinh 4.3: Thuật toán Random FOorest - -cc c7 c2 n2 Sa 37
Hình 4.4: Chuyển dataset từ binary sang ảnh c ¿c1 112211111221 12181 2111111 5111k xxg 38
Trang 16Hình 4.6: CNN - 4 hidden Ïay€T - - c c1 2t 1121111111111 111 11111111111 1118111111118 1E ke nh nà 39
Hình 4.7: Thống kê số lượng permission của AdWare -‹c ¿c2 2722211112222 25x ssse2 41Hình 4.8: Thống kê số lượng permission của Benign 06 00cccccccccceceeeeeceeeeesteseeeeeeeees 4Hình 4.9: Thống kê số lượng permission của SMSmalware ccc ¿222222 ss2 42Hình 4.10: Thống kê số lượng permission của Ransomeware ‹‹ -ccc 22c css: 42Hình 4.11: Thống kế số lượng permission của ŠcareWare -‹¿ ¿c2 S222 xe 43Hình 4.12: So sánh số lượng permission của các loại app ‹ccc c2 2222222222222 cccsscsss 44
Hình 4.20: Socket đã đóng c0 Q2 nen TT nh nh ng 47
Hình 4.34: Phương thức gọi lại của hành động nhấn nút recv train model_btn 55
Hình 4.35: Mã hoàn chỉnh cho lớp ClientApp -‹ c c2 222233 *y 55 Hình 4.36: Mã hoàn chỉnh cho lớp ClientApp -. -c c2 2222 xa 56 Hình 4.37: Mã hoàn chỉnh cho lớp ClientApp -c c2 nh xa 56
Hình 4.38: Mã hoàn chỉnh cho lớp ClientApp -‹ c2 2222 eee ene ea ene een ees 56
Hình 4.39: Tạo một lớp mới có tên RecvTlread ‹ ‹ cccc c2 223v ees 57 Hình 4.40: Tạo một lớp mới có tên RecvTÌlread -. - eee 2s 2s se 57 Hình 4.41: Tao một lớp mới có tên RecvTread -‹ -cccc c2 si 58 Hình 4.42: Tạo một lớp mới có tên RecvTread -‹ -cc 2c eee eee ene si 58
Hình 4.44: Giao diện của may khach 00 cece cece cence cence ee eae caee nena nh kh hà hy 59 Hình 4.45: Máy chu dang trong quá trình học cộng tác cc c2 60 Hình 4.46: Máy khách trong qua trình học cộng tắc -‹- cv set 60 Hinh 20000003000: 8) /Lìi6 tttIỤadidđdadđaaiiiiiiaãiẳiẳáắáẳảẳáiẳiảẳ4Ả 61 Hình 4.48: PreCISIOn cà KH nà nh nh bà 61 Hình 4.49: Recall 0 cece cece cece eee eee eee eee ng TH ng TH k vn kế 62 Hinh 4.50: Cong thutc nặaaiiiiiiiiiiiiiiẳiẳẳiẳồaỤ eE 62
Trang 17Hình 4.51: Công thức F ee nee nnn nnn EEE EEE nh nh hen hy nh 62
Hình 4.52: So sánh độ chính xác của top 20, 50 và 100 quyền truy cập - - ‹‹-: 69Hình 4.53: So sánh thời gian thực thi của top 20, 50 và 100 quyền truy cập 69Hình 4.54: Kết quả đương tính giả của 200 máy khách với 500 tính năng, sử dụng KNN
(n =3) làm bộ phân loại đường cơ sở LiM giảm số lượng dương tính giả còn 3, trong khi
cả SAFEW (tức là không có FL) và đường cơ sở đều có 5 và 7 tương ứng -: 73
Hình 4.55: F1 score của 200 khách hàng với 500 tính năng, sử dụng KNN (n = 3) làm bộ
phân loại đường cơ sở SAFEW (tức là không có FL) được cải thiện hơn đường cơ sở và
Hình 4.56: Hiệu suất hệ thống dựa trên lựa chọn tính năng và do trọng sỐ -: 74
Trang 18DANH MỤC BANG
Bang 4.1: Top 20 quyền truy cập AndMal 2017 c2 1112221111221 155111112 àg 63
Bảng 4.2: Top 50 quyền truy cập AndMal 2017 - c2 2222 1111122222111 111 5551k ceg 64
Bảng 4.3: Top 100 quyền truy cập AndMal 2017 2 2 2111111111122 1111111111 xe 65Bang 4.4: Top 20 quyền truy cập AndMal 2017 c2 1111221111122 2 1112511112 nàg 66Bang 4.5: Top 50 quyền truy cập AndMal 2017 c2 2111222111122 2 1115511111 2à: 67
Bang 4.6: Top 100 quyền truy cập AndMal 2017 2 1111222211111 55111111 se 68
Bảng 4.7: Kết quả khi sử dụng top 50 permission của AndMal2017 - +52 71Bảng 4.8: Kết qua khi sử dụng top 50 permission của MalDroid-2022 000cccee s3: 72
Trang 19DANH MỤC TU VIET TAT
Từ viết tắt Nội dung đầy đủ
TBDĐ Thiết bị di động
TB Thiết bị
ML Machine learning, máy học
DL Deep learning, học sâu
CNN Convolutional Neural Network, mạng nơ ron tích chập
DNN Deep Neural Network, mạng nơ ron sâu
FL Federated learning, học cộng tác
KNN K-nearest neighbor, K-lân cận
RF Random Forest, rừng ngau nhiên
SVM Support Vector Machine, ay hỗ trợ véc tơ
SSL Semi supervised Learning, hoc ban giam sat
OEM Original equipment manufacturer, nha san xuất thiết bị gốc
API Application Programming Interface, giao diện lập trình ứng dụng
AI Artificial intelligence, trí tuệ nhân tao
LSTM Long short-term memory, bộ nhớ dài-ngắn
SAE Sparse Autoencoder, mã tự động thưa thớt.
Trang 20TÓM TẮT KHOÁ LUẬN
Trong những năm vừa qua, các ứng dụng dựa trên TBDĐ ngày càng phổ biến, được sử dụng rộng
rãi trên nhiều lĩnh vực liên quan đến một số lượng lớn hoạt động của con người Bởi vì khả năngtruy cập thông tin bí mật và riêng tư quan trọng của chúng đã dẫn đến việc các TB này trở thànhmục tiêu của các phần mềm độc hại
Tuy nhiên, mặc dù những tiến bộ trong khoa học Trí tuệ nhân tạo đã cho phép giải quyết nhiều khíacạnh của vấn đề này, nhiệm vụ phân loại phần mềm độc hại vẫn còn nhiều thách thức bởi các kỹthuật tránh bị phát hiện ngày càng tinh vi Do đó, việc xây dựng một hệ thống phát hiện phần mềmđộc hại là một vấn đề cấp thiết, cần được quan tâm, đặc biệt là trên nên tảng di động Android dotính phổ biến và khả năng tiếp cận nhiều ứng dụng của bên thứ ba Vì mục tiêu này, những điềutrong khoá luận nhăm mục đích đề xuất các tính năng đặc biệt mới, đó là trích xuất các quyền truycập tạo thành các top, tuỳ theo mức độ phổ biến của các quyên truy cập trên Android, và hoạt độngcủa mô hình học cộng tác Các tính năng như vậy đã được chứng minh là rất hiệu quả trong pháthiện các họ phần mềm độc hại khác nhau thông qua việc sử dụng mạng nơ-ron phức hợp Ngoài ra,những ưu điểm được giới thiệu bởi top quyền truy cập đã được nâng cao nhờ một quá trình đào tạodựa trên logic liên kết Kết quả thực nghiệm cho thấy rằng phương pháp được đề xuất đạt được sựcải thiện lớn về độ chính xác trung bình và đối với bộ phân loại perceptron nhiều lớp Hơn nữa,việc sử dụng kết hợp top quyền truy cập và logic liên kết cho phép xử lý các tập dit liệu huấn luyệnkhông cân bằng với nỗ lực tính toán thấp Bên cạnh đó việc sử dụng học cộng tác giúp có một môhình máy học mạnh mẽ mà không cần phải chia sẻ dữ liệu, do đó có thé đảm bảo quyền riêng tư và
bảo mật của dữ liệu cũng như quyền được truy cập dữ liệu, quyền được truy cập dữ liệu không
đồng nhất
Trang 21CHƯƠNG 1: TONG QUAN
Ở chương này giới thiệu chung về khóa luận, động lực nghiên cứu, xác định phạm vi tương ứng,
từ đó nêu lên các đóng góp chính của khóa luận Phần tóm tắt từng chương trong khóa luận được
trình bày ở cuối chương này
1.1 Giới thiệu chung
Các TB dựa trên Android được sử dụng bởi hàng triệu người dùng mỗi năm, dẫn đến ngày càng
có nhiều ứng dụng độc hại liên tục được phát triển bởi bọn tội phạm mạng để ăn cắp thông tin nhạycảm và tiến hành các hoạt động bất hợp pháp Theo báo cáo về mối đe doạ của di động từ
McAfee(McAfee Mobile Threat Report), vào năm 2022, tội phạm mạng đã tăng cường hiệu quả
của các cuộc tan công trên TBDĐ với sự hỗ trợ của nhiều loại phương pháp và cách tiếp cận mới
như phương pháp kết hợp email giả và SMS giả(Smishing) và các cách tiếp cận: các loại game mới,
tiền điện tử, vac xin COVID-19, các ứng dụng thanh toán trực tuyến, " băng cách làm cho chúng
khó được xác định và khó có thể loại bof 1] Ngoài ra, các chuyên gia ở G DATA CyberDefense va
McAfee ước tính them hơn 2.5 triệu mã độc mới trên TB Android vào năm 2020 với McAfee[2]
và 2021 đối với G DATA[3] và BankMyCell đã ước tính khoảng 6,64 tỷ người dùng điện thoạithông minh trên toàn thé giới vào năm 20224]
Total Mobile Malware
Hình 1.1: Tổng số phát hiện phần mềm độc hại trên TBDD theo quý trong năm 2019 và 2020
Do đó, dé bat kịp với các xu hướng bảo mật mới và hỗ trợ các nhà nghiên cứu giải quyết việcphát hiện phần mềm độc hại, một số phương pháp tiếp cận dựa trên máy học (ML) và học sâu (DL)
đã được chứng minh là có hiệu quả trong việc đối mặt với nhiều khía cạnh liên quan đến các mối
đe dọa Android, đặc biệt là khi chúng được kết hợp với các tính năng tĩnh và động được trích xuấttrực tiếp từ các ứng dụng dành cho TBDĐ[S,6,7] Tuy nhiên, do phần mềm độc hại dựa trên Androidliên tục phát hành mới dẫn đến các nhiệm vụ phát hiện liên quan vẫn còn nhiều thách thức dẫn đến
2
Trang 22nhiều phương pháp tiếp cận hiện đại mắc phải các vấn đề liên quan đến việc đảo tạo lại các tính
năng động, cũng như cập nhật bộ dir liệu dao tạo.
Dé giải quyết van đề trên, khoá luận này ra đời với mục tiêu xây đựng một hệ thống phát hiện
mã độc Android mạnh mẽ có sự phối hợp giữa cấp quyền truy cập và học cộng tác
1.2 Động lực nghiên cứu
1.2.1 Tính khoa học
Van đề xây dựng hệ thống phát hiện mã độc Android đang nhận được sự quan tâm của giới
nghiên cứu khoa học, bằng chứng là nhiều cuộc thi đã được tổ chức như ASE [25] và hàng trămngàn bài báo được xuất bản trên các tổ chức uy tín như IEEE, ISI [22,23,24], tạo ra nhiều bộ dữ
liệu đa dạng như AndMal, MalDroid, AndroZoo, MaMaDroid [26,27] dẫn tới hàng loạt các công
cụ, giải pháp như sử dụng APKiD, Dagda, cấp quyền truy cập, học cộng tác, các thuật toán ML,
DL [6,8,21,28,29] nhằm nâng cao tính chính xác, cũng như sự nhanh chóng va tiện lợi trong van
đề xây dựng hệ thống phat hiện mã độc Android
1.2.2 Tính ứng dụng
Hệ thống phát hiện mã độc Android sẽ được áp dụng vào các tác vụ liên quan tới các lĩnh
vực kinh tế, tải chính, giáo dục, nói chung và các tác vu trong thiết bị sử dụng hệ điều hanh
Android nói riêng, nhằm phát hiện, từ đó ngăn chặn mã độc Android, mang lại hiệu quả cao trongcông việc cho các nhân viên bảo mật di động Đây cũng là tiền đề cho các thiết bị sử dụng hệ điều
hành khác.
1.3 Phạm vi của vấn đề
Trong phạm vi khóa luận này, chúng tôi tập trung tìm hiểu và thực nghiệm các phương pháp đãđược công bé (cấp quyền truy cập-permission, học cộng tác-federated learning kết hợp sử dụngnhiều thuật toán thông dụng dé tiễn hành huấn luyện như CNN, SVM, RandomForrest, ) và thu
thập bộ dữ liệu bố sung nhằm giúp đa dạng dữ liệu và cải thiện các kết quả đạt được
1.4 Thách thức của vấn đề
Cấp quyền truy cập ton tại một thiếu sót khá lớn, điều đó xảy ra khi một ứng dụng độc hại chegiấu nó bang cách thêm một số lượng đáng kể các quyền truy cập của các ứng dụng thông thường,thì khi đó phương pháp này có thé không phát hiện được mã độc
Dữ liệu nhiều và phức tap do được tông hợp từ nhiều nguồn nhiều chủng loại Ngoài những yếu
tố trên, sự đa dang về bố cục (vi trí), đa dạng cách thê hiện (các từ ngữ, ngôn ngữ được sử dụng),
đa dạng kiểu dit liệu, cũng là thách thức không hề nhỏ
3
Trang 23Về phương pháp, hiện nay có rất nhiều công bố sử dụng các mạng dựa trên kiến trúc mạng CNNhoặc các mạng được tùy chỉnh, tính chính xác trên mỗi mạng là khác nhau và cần phải nghiên cứu,tùy chỉnh dé đạt được kết quả cao nhất Điều này đòi hỏi cần nghiên cứu sâu và kỹ dé tìm ra phươngpháp mang lại kết quả cao nhất.
1.5 Đóng góp của khoá luận
Tìm hiểu tổng quan về phương pháp cấp quyền truy cập, học cộng tác và các kỹ thuật DeepLearning và Machine Learning cho vấn đề xây dựng hệ thống phát hiện mã độc Android
Tìm hiểu tình trạng của dữ liệu hiện có để ứng dụng vào công việc giải quyết vấn đề, thực hiện
tăng cường dit liệu, tăng cường trích xuất việc cấp quyền truy cập theo nhiều top
Tăng cường chạy thêm nhiều thuật toán đồng thời bổ sung trên nhiều bộ dữ liệu khác nhau
Đề xuất được phương pháp cải tiến cho vấn đề xây dựng hệ thống mã độc băng cách sử dụngthêm nhiều công cụ mã nguồn mở
1.6 Cau trúc của khoá luận
Khóa luận này được trình bày trong 5 chương, nội dung chính được tóm tắt như dưới đây:
Chương 1: Tổng quan về khóa luận
Chương 2: Cơ sở lý thuyết, các nghiên cứu liên quan và xu hướng nghiên cứu mới
Chương 3: Trinh bày các phương pháp thực hiện dé giải quyết van dé
Chương 4: Trình bày kết quả thực nghiệm và đánh giá các phương pháp được chọn đề khảo sát
Chương 5: Nêu kết luận, định hướng nghiên cứu trong tương lai
Trang 24CHƯƠNG 2: CƠ SỞ LÝ THUYÉT VÀ CÁC NGHIÊN CỨU LIÊN QUAN
Tại chương này trình bày các cơ sở lý thuyết, nghiên cứu liên quan, xu hướng nghiên cứu mới đốivới van đề xây dựng hệ thống phát hiện mã độc Andoid bằng cách cấp quyền truy cập và học cộngtác được đề cập trong khóa luận
2.1 Tổng quan về cấp quyền truy cập và top quyền truy cập
Khi một ứng dụng nào đó cần truy cập đến một tính năng đặc biệt trên thiết bị Android của bạn,
nó dang hỏi hệ điều hành có cho phép sử dụng hay không, và quyên truy cập đó chính là Permission
Ví dụ, khi ứng dụng camera của bạn muốn đính kèm di liệu GPS vào ảnh, nó phải hỏi Android
xem nó có được vào GPS dé định vị hay không Tương tự, khi một ứng dụng tin nhắn muốn gửi
SMS, nó phải liên hệ với Android dé xem có được quyên làm chuyện này không
Permission không chỉ xuất hiện ở Android, nó cũng có mặt ở iOS và Windows 10 Mobile với
lý do tương tự, cách hoạt động cũng tương tự.
Mục dich của quyền truy cập là dé đảm bảo sự an toàn và quyền riêng tư cho người dùng Điệnthoại của chúng ta giờ là một "kho tàng" đữ liệu cá nhân trong đó nên việc bảo vệ như thế này làcần thiết Trong điện thoại có đủ hết mọi loại dữ liệu nhạy cảm, từ tin nhắn, hình ảnh, video chođến dữ liệu duyệt web hay tài khoản ngân hàng Thậm chí bộ định vị GPS, dữ liệu di động camerahay micro của smartphone cũng là thứ nhạy cảm vì nó có thé ghi lại hình ảnh của ban hay những
gì bạn nói, cho người khác biết bạn đang ở đâu, bạn đang nói chuyện với ai, nội dung bạn nói là
`
gì
Năm 2011 và 2013, đã từng có một sỐ ứng dụng và game xuất hiện ngay ở Việt Nam, chúng lợidụng việc người dùng không chú ý đến quyền truy cập dé lay quyền gửi nhận SMS và liên tục nhắn
tin đến một tổng đài nào đó dé thu lợi Dang chú ý, việc gửi SMS này diễn ra hoàn toàn im lặng và
bạn không hề hay biết, chỉ khi kiểm tra lại tài khoản mới thay bị thâm hụt đáng kể Những ứngdụng dạng này đôi khi vẫn còn bị bắt gặp trên Play Store
Trang 2517:04 : al F 17:04
#9 CuocChienThayMa &$ Doraemon và thần thú
Do you want to install this application? Do you want to install this application?
Allow this application to Allow this application to
Hide Network communication
Network communication Hardware controls
we work nection
Cancel Install Cancel
Hình 2.1: Game lợi dung người dùng dé lấy quyền truy cập
Các quyên truy cập của Android có thê được phân loại thành ba quyên truy cập chính: quyên
truy cập trong thời gian cài đặt, quyền truy cập trong thời gian chạy, và quyên truy cập đặc biệt.Quyên truy cập trong thời gian cài đặt cấp cho một ứng dụng quyên truy cập bị giới hạn vào dữliệu bị hạn chế và do đó, chúng cho phép ứng dụng thực hiện các hành động bị hạn chế đến hệ
thống hoặc những ứng dụng khác một cách ít ảnh hưởng nhất Khi một nhà phát triển tuyên bố các
quyền truy cập trong thời gian cài đặt, hệ thống sẽ tự động cấp quyền mà không cần thông báo chongười dùng cuối Có hai loại quyền truy cập trong thời gian cài đặt tương ứng được gọi là quyềntruy cập bình thường và quyền truy cập chữ ký:
-Quyén truy cập bình thường cho phép truy cập vào dữ liệu và hành động gây rủi ro tối thiểu cho
hệ thống hoặc sự riêng tư của người dùng cuối Chúng có thé được sử dụng hoặc xác định thông
qua một giá tri của mức bảo vệ được cai đặt thành mức bình thường.
-Quyền truy cập chữ ký xảy ra từ khi chúng được định nghĩa trong một ứng dụng Android khác,quyền truy cập chữ ký chỉ được cấp nếu ứng dụng yêu cau và khai báo được ky thông qua cùngmột chứng chỉ Ngoài ra, chúng có thể sử dụng hoặc xác định thông qua bộ giá tri của mức bảo vệ
dé ký
Quyên truy cập thời gian chạy, còn được gọi là quyền truy cập nguy hiểm, cấp cho ứng dung
6
Trang 26quyền truy cập bổ sung vào dữ liệu bằng cách cho phép nó thực hiện các hành động về cơ bản ảnh
hưởng đến hệ thống và các ứng dụng khác Khi một ứng dung Android yêu cầu quyền truy cậptrong thời gian chạy, hệ thống đưa ra lời nhắc và chờ đợi được cấp hay không bởi người dùng cuối
Quyền truy cập thời gian chạy có thể được sử dụng hoặc xác định thông qua giá trị mức bảo vệđược cài đặt thành mức nguy hiểm
Cuối cùng, các quyền truy cập đặc biệt chỉ có thể được xác định bởi các nhà sản xuất thiết bị
gốc (OEM) dé cung cấp kiểm soát truy cập liên quan đến một số hành động tiêu tốn nhiều năng
lượng, chăng hạn như quyền truy cập vào các ứng dụng khác Chính xác hơn, chúng được liên kết
chặt chẽ với một hoạt động ứng dung (app op) liên quan đến kiểm soát truy cập và chúng có thé
được sử dụng hoặc xác định thông qua gia tri mức bảo vệ được đặt thành mức appop.
Top quyền truy cập hiểu đơn giản là các tập hợp con được chọn từ nhóm lớn quyền truy cập trênthiết bi Android Dựa theo mức độ phô biến, mức độ hiệu quả về an toàn thông tin của quyền truy
cập đó mà người ta đưa nó vào cùng nhóm.
Tiếp theo chúng tôi sẽ tiếp cận các tính năng đặc biệt, được gọi là bản đồ quyền truy cập Maps), kết hợp thông tin liên quan đến các quyền truy cập của Android và mức độ nghiêm trọng
(Perm-tương ứng của chúng.
2.2 Bản đồ quyền truy cập
Mặc dù hau hết các kỹ thuật được sử dụng trong tài liệu bao gồm cả phương pháp tiếp cận tĩnh
và động, thì phương pháp tĩnh vẫn được mong muốn nhất vì nó có thé phân tích các ứng dụng mà
không cần bắt buộc phải thực thi chúng Theo đó, chúng tôi đề xuất các tính năng mới, được gọi là
Perm-Maps, có nguồn góc từ phân tích tĩnh phần mềm độc hại Chính xác hơn, Perm-Maps là một
ma trận thưa thớt nơi chứa các quyên truy cập của Android và các cấp độ mức độ nghiêm trọngtương ứng của chúng, được biéu diễn liên quan dưới dang các điểm cố định và được biéu diễn theo
toạ độ x — y Như được mô tả trong phần sau, Perm-Maps được đề xuất có thể giải quyết ba vấn đề
chính:
(i) Các nhà phát triển Android độc hại có thé xác định các quyền truy cập tùy chỉnh để thực
hiện một số hoạt động bất hợp pháp, chăng hạn như đánh cắp dữ liệu hoặc khởi động các cuộc tấn
Trang 27nghiêm trọng [9, 10] Do đó, một nhà phát triển mã độc có thể xác định một số quyền ở mức độnghiêm trọng thấp dé thực hiện một số hành động bat hợp pháp mà không thông báo cho ngườidùng cuối;
(iii) Vi PermMaps đại diện cho các tinh năng tinh chỉ được trích xuất từ tệp kê khai, chúng
không thé bị ảnh hưởng bởi các công cụ obfuscator nồi tiếng, như DexGuard [11], ProGuard [12]
và Obfuscapk [13].
2.2.1 Quy trình tạo Perm-Maps
Việc tạo Perm-Map chủ yếu bao gồm bốn bước sau:
Bước 1 Trích xuất các quyền của Android và mức độ bảo vệ tương ứng
Bước 2 Gán số nhận dạng (IDp) cho bất kỳ quyền truy cập Android
Bước 3 Chỉ định một số nhận dang (ID) cho bat kỳ mức độ nghiêm trọng nao
Bước 4 Tạo Perm-Maps bằng cách sử dụng các cặp ID (IDp; ID) dưới dạng tọa độ của các điểm
tiếng nhất trong các công cụ kỹ thuật, như Androguard [32] Chính xác hơn là đối với mỗi quyền
truy cập được khai báo trong tệp Android Manifest, nó có thể có được mức bảo vệ tương ứng bằngcách kiểm tra xem quyên truy cập được xem xét có được biết đến hay không; nếu không thì nó chỉđịnh một mức độ bảo vệ nguy hiểm khác
Tiếp theo, bước thứ hai và thứ ba được thực hiện bằng cách tạo hai từ điển để chuyên đôi
từng quyền truy cập của Android và từng mức độ nghiêm trọng tương ứng thành một số ID duy
nhất Cuối cùng, đối với mỗi ứng dụng được phân tích, bước thứ tư được tiễn hành bang cach xemxét mỗi cặp số ID (IDp; ID) dưới dạng tọa độ của một điểm cé định va do đó, lưu trữ thông tin đãchuyền đổi trong một ma trận thưa thớt Ví dụ, để p1 và p2 là hai quyền truy cập Android và cho
phép s3 và s2 tương ứng với mức độ bảo mật của chúng Chúng tôi có thé coi hai cặp tọa độ C1=
(p1, s3) và C2= (p2, s2) và vẽ hai điểm theo mặt phang toa độ x — y trong đó trục x và y báo cáoquyền va mức độ nghiêm trọng tương ứng Tuy nhiên, vì mức độ bảo mật giữa chúng có thé khác
8
Trang 28nhau, cho nên chúng tôi có thé sử dụng thang màu (như RGB hoặc thang xám) dé nhận xét những
sự khác biệt Hình 2 cho thấy toàn bộ quy trình làm việc dé có được một Perm-Map
Textual Information
['android.permission.RNRITE SETTINGS', "dangerous", "android.permission.SEND SMS', 'dangerous', "¿
d.permission.CALL_PHONE*, 'dangercus", ‘android.permission.EXPAND_STATUS_BAR’, d.permission.WRITE_SETTINGS', "dangerous", "android.permission.SEND SMS", 'dangerous', 'e
['android.permi3sion.SET_NALLPAPER', 'normal', ‘android.permission.READ_PHONE_STATE", "dàangerou3s"
Tiép theo chúng tôi sẽ tìm hiéu vê khái niệm học cộng tác và các khái niệm, van dé liên quan.
2.3 Tổng quan về học cộng tác
Học cộng tác là một kỹ thuật máy học đào tạo một thuật toán trên nhiều thiết bị biên hoặc máy
chủ phi tập trung giữ các mau dif liệu cục bộ mà không cần trao đổi chúng Cách tiếp cận này trai
ngược với các kỹ thuật máy học tập trung truyền thống trong đó tat cả các bộ dữ liệu cục bộ được
tải lên một máy chủ, cũng như các cách tiếp cận phi tập trung cô điển hơn thường giả định răng các
mẫu đữ liệu cục bộ được phân phối giống hệt nhau [14].
Học cộng tác cho phép nhiều tác nhân xây dựng một mô hình học máy mạnh mẽ, chung mà
không cần chia sé dit liệu, do đó cho phép giải quyết các van dé quan trọng như quyền riêng tư của
dữ liệu, bảo mật dữ liệu, quyền truy cập dit liệu và quyền truy cập vào dir liệu không đồng nhất
9
Trang 29Học cộng tác huấn luyện một thuật toán máy học ví dụ như DNN trên nhiều bộ dữ liệu cục bộ,được chứa trong các node cục bộ Nguyên tắc chung là huấn luyện các mô hình cục bộ trên cácmẫu đữ liệu cục bộ và trao đổi các tham số giữa các node tạo nên một mô hình toàn cục được chia
Trong cài đặt học tập cộng tác tập trung, một máy chủ trung tâm được sử dụng dé sắp xếp
các bước khác nhau của thuật toán và điều phối tất cả các node tham gia trong quá trình học tập
Máy chủ chịu trách nhiệm về việc lựa chọn các node khi bắt đầu quá trình dao tạo va tổng hợp cácbản cập nhật mô hình đã nhận Vì tất cả các node được chọn phải gửi cập nhật cho một thực thé duynhất, máy chủ có thé trở thành nút cô chai của hệ thống [33,14]
2.3.1.2 Học tập cộng tác phi tập trung
Trong cài đặt học tập cộng tác phi tập trung, các node có thể tự điều phối để có được mô
hình toàn cục Thiết lập này ngăn chặn các lỗi đơn lẻ vì các bản cập nhật mô hình chỉ được trao đôi
giữa các node được kêt nôi với nhau mà không có sự điêu phôi của máy chủ trung tâm Tuy nhiên,
10
Trang 30cấu trúc liên kết mạng cụ thé có thé anh hưởng đến hiệu suất của quá trình học tập [33, 14]
2.3.1.3 Học cộng tác không đồng nhất
Ngày càng có nhiều miền ứng dụng liên quan đến một tập hợp lớn các máy khách khôngđồng nhất, ví dụ: điện thoại di động và thiết bị IoT [32] Hầu hết các chiến lược học tập cộng táchiện có đều giả định rằng các mô hình cục bộ chia sẻ cùng một kiến trúc mô hình toàn cục Gần đây,một khung học tập cộng tác mới có tên HeteroFL đã được phát triển dé giải quyết các máy kháchkhông đồng nhất được trang bị các khả năng tính toán và giao tiếp rất khác nhau [33] Kỹ thuật
HeteroFL có thé cho phép đảo tạo các mô hình cục bộ không đồng nhất với độ phức tạp tính toán
thay đôi động va dữ liệu không iid trong khi vẫn tạo ra một mô hình suy luận toàn cục chính xác
[33].
2.3.2 Cac dac trung
Các đặc trưng chính của học cộng tác chính là học lặp đi lặp lai và dữ liệu non-iid [14].
2.3.2.1 Học lặp đi lặp lại
Đề đảm bảo thực hiện tốt nhiệm vụ của mô hình học máy trung tâm, cuối cùng, học cộng
tác dựa trên một quy trình lặp đi lặp lại được chia thành một tập hợp nguyên tử của các tương tác
máy khách-máy chủ được gọi là vòng học cộng tác Mỗi vòng của quá trình này bao gồm truyền
trạng thái mô hình toàn cục hiện tại tới các node tham gia, đào tạo mô hình cục bộ trên các node
cục bộ này dé tạo ra một tập hợp các bản cập nhật mô hình tiềm năng tại mỗi node, sau đó tonghợp và xử ly các bản cập nhật cục bộ này thành một ban cập nhật toàn cục duy nhất và áp dụng nó
vào mô hình toàn cục [14].
Trang 31Step 1 Step 2 Sten 3 Step 4
Gentral server
chooses a statistical model to be trained
Central server
transmits the initial model to several
nodes
Nodes train the
model locally with
their own data
Central server pools
model results and
generate one global
mode without
accessing any data
Hình 2.4: Quy trình chung học tập cộng tác trong thiết lập các lên kết trung tam
2.3.3 Ưu và nhược điểm của học cộng tác
Ưu điểm chính của việc sử dụng các phương pháp tiếp cận cộng tác để học máy là đảm bảo
tính riêng tư của dữ liệu hoặc tính bí mật của dữ liệu Thật vậy, không có dữ liệu cục bộ nào được
tải lên bên ngoài Vì toàn bộ cơ sở dữ liệu được phân đoạn thành các bịt cục bộ, điều này khiến
việc xâm nhập vào nó trở nên khó khăn hơn.
Mô hình được tạo cung cấp thông tin chỉ tiết dựa trên các mô hình chung của các node Tuynhiên, nếu một node tham gia muốn học hỏi từ các mẫu chung nhưng cũng điều chỉnh kết quả chophù hợp với tình trạng đặc biệt của nó, thì phương pháp học cộng tác có thé được điều chỉnh dé tạo
ra hai mô hình cùng một lúc trong một khuôn khổ học tập đa tác vụ Ngoài ra, kỹ thuật phân cụm
có thê được áp dụng cho các node tông hợp có chung một số điểm tương đồng sau khi quá trình
học hoàn thành Điều này cho phép tổng quát hóa các mô hình được học bởi các node cũng theo
dữ liệu cục bộ của chúng.
Bên cạnh những ưu điểm vô cùng lớn trên, vẫn còn tồn tại một số vấn đề trong học cộng tác
truyền thống Mục tiêu của học cộng tác đó chính là huấn luyện mô hình chia sẻ nhằm mục đích
cung cấp dữ liệu cục bộ cho người dùng nhưng vẫn học hỏi từ sự cộng tác của tất cả chúng Ngườidùng huấn luyện mô hình cục bộ của họ trên một thiết bị riêng, sử dụng dữ liệu cục bộ, sau đó họ
không chia sẻ dit liệu đó mà chia sẻ các thông số của mô hình với một đám mây hoặc nhà cung cấp
nao đó, những cái này sẽ tong hợp thành các thông số của người dùng, và tạo ra mô hình cộng tác
Mô hình này và tham số của chúng sẽ được chia sẻ cho khách hàng, giúp chúng hưởng lợi từ quátrình học tập của những khách hàng khác Giả định rằng người dùng có thê thật sự cung cấp dữ liệu
toàn cục với thực địa cho quá trình huấn luyện Mặt khác học cộng tác truyền thống được chứng
12
Trang 32minh là dé bị tan công sự riêng tư và toàn vẹn Khi chúng tôi cố gắng trao đổi gap hai lần, trướctiên phải loại bỏ vị trí mà người dùng cần cung cấp với thực địa, điều này quan trọng đối với các
ứng dung trong việc phát hiện mã độc Ung dụng là nơi người dùng thực sự không thé cung cấp bởi
vì đặc điểm của trình phân loại là chi thông báo với người dùng rằng ứng dụng có được quản lýhay không Dẫn tới các cuộc tan công băng chất độc hai và tan công suy luận thành viên (poisoning
attack và membership inference attack).
Do đó chúng tôi cần phải thiết kế một hệ thống có khả năng chống lai các cuộc tắn công bangchất độc hai và tan công suy luận thành viên (poisoning attack va membership inference attack).Giải pháp của sử dụng mô hình ML là semi-supervised ML(SSL); giảm mạnh các thông số, thôngqua mỗi lần cập nhật mô hình Tức là sử dụng mô hình Safe SSL
2.4 Mô hình Safe SSL
SSL hay học bán giám sát, là một lớp của kỹ thuật máy học, sử dụng cả dtr liệu đã gan nhãn va
chưa gan nhãn dé huấn luyện - điển hình là một lượng nhỏ dữ liệu có gan nhãn cùng với lượng lớn
dữ liệu chưa gan nhãn Việc ghi nhãn dữ liệu có thé ton kém, trong khi việc thu thập và học nhãn
từ dữ liệu thô đã trở nên dé dàng hơn với việc truy cập internet trở nên phổ thông và rất nhiều ứngdụng được cai đặt trên điện thoại thông minh Một trong những thách thức chính dé thành công củathuật toán SSL là để đảm bảo nó thực sự học được thông tin hữu ích từ các mẫu không được gắnnhãn, bởi vì sự thật cơ bản không có thuật toán dé xác minh các dự đoán của nó cho những mẫu
đó.
Semi-Supervised Learning
Hình 2.5: Minh hoa về học bán giám sát
Safe SSL là một loại mô hình đặc biệt cua SSL, Safe tức là an toàn, an toàn ở đây không đến từriêng tư (private) hay bảo mật (security), mà là hiệu suất (performance) Như vậy, Safe SSL giảiquyết mối lo ngại này bằng cách đảm bảo rằng hiệu suất cơ bản tối thiểu luôn đạt được, tức là thôngtin không được gắn nhãn không làm xấu đi hiệu suất của một bộ phân loại khác (được giám sát đầy
13
Trang 33đủ) Một chiến lược hoạt động tốt dé đạt được SafeSSL là sử dụng nhóm những người học, đượckết hợp với nhau thông qua một tập hợp trọng số đã học, có khả năng vượt trội hơn so với mô hình
đường cơ sở [34].
Một ví dụ về trong phân loại này là SAFEW [15] Mục tiêu của nó là kết hợp một tập hợp cáctrình phân loại, được gọi là người học cơ sở, thông qua một tập hợp các trọng số ai, i € [1, b] nhómdẫn đầu luôn hoạt động tốt hơn trình phân loại đường cơ sở nhất định SAFEW đạt được mục tiêunày với giả định rằng việc gán nhãn thực địa của dữ liệu không được gắn nhãn ƒ * có thể được thực
&
<A A4 qh he T3 , rN ~ xã 2 ry f= ;—i Oak A
hiện như một tô hợp lôi của các dự đoán từ những người hoc co sở b, đó là {=3 it cụ
dụng giả định này, SAFEW có thé tính toán lỗi của trình phân loại đường cơ sở fy và các dự đoán
cuối cùng f€ {+1, —1} liên quan đến f* bằng cách sử dụng ham mắt mát /, và làm cho (f, f *) càng
nhỏ càng tốt so với | (fo, f *) ngay cả trong trường hợp xấu nhất, sử dụng công thức tối đa hóa sự
khác biệt tối thiểu như được hién thị trong phương trình 1 ở dudi:
b b
ax inl (fp, ¥ aif) —I(f.N aif) — (1)
re 1" s £ : a" hạn
Hình 2.6: Hàm dự đoán người học cơ sở
SAFEW không áp đặt các han chế về việc sử dụng bộ phân loại nào làm người học cơ sở để dự
đoán fj: kết quả không phụ thuộc vào số lượng người học cơ bản nhưng phụ thuộc vào chất lượng
của họ và các thuật toán học tập khác nhau có thể được sử dụng, ví dụ dé SVM cùng với RF Tương
tự, không có giới hạn trước về hàm mất mát có thê được sử dụng như / Tuy nhiên, dé giam thoigian tinh toán và tim trọng số tối ưu a *, cho thay rang sử dung hàm mat mát bản lề biến phươngtrình 1 thành một bai toán tối ưu hóa lồi có thé được giải quyết băng các gói tối ưu hóa phé biếnnhư những gói được hỗ trợ bởi CVXPY [35] Kiến thức trước có thé được nhúng dưới dạng các
ràng buộc trong công thức của van đề này dé nâng cao thông tin được trích xuất từ dit liệu khôngđược gắn nhãn Các dự đoán cuối cùng f sau đó có thé thu được thông qua phương trình 2
F=> offi (2)
Hình 2.7: hàm dự đoán f~
Giải pháp do SAFEW đề xuất giả định một cài đặt tập trung cả dt liệu được gắn nhãn và khôngđược gắn nhãn ở cùng một địa điểm Kịch bản như vậy yêu cầu người dùng chia sẻ dữ liệu với nhàcung cấp dịch vụ, do đó có khả năng bị rò rỉ thông tin nhạy cảm LiM giải quyết khoảng cách này
14
Trang 34bằng SAFEW cộng tác, cho phép người dùng giữ dữ liệu cục bộ của họ, trong khi chỉ chia sẻ cáctrọng số cho phép SAFEW cải thiện hiệu suất trên đường cơ sở Hơn nữa, LiM cũng hướng đến cókhả năng chống lại các cuộc tan công suy luận thành viên và tấn công độc hại, giải quyết các mối
quan tâm ngày càng quan trọng về bảo mật và quyền riêng tư phát sinh từ việc sử dụng các mô hình
máy học tiên tiến trong tự nhiên
2.5 Mô hình học cộng tác bán giám sát an toàn
Theo truyền thống, FL sử dụng một cách tiếp cận phi tập trung dé huấn luyện một mô hình thầnkinh Thay vi tải lên dit liệu dé tiến hành huấn luyện tập trung, máy khách xử lý dữ liệu của chúng
tại cục bộ và chia sẻ các bản cập nhật mô hình kết quả với dịch vụ các nhà cung cấp Cách tiếp cận
phân tán như vậy đã được chứng minh là có khả năng làm việc với các bộ đữ liệu không cân bằng
và dữ liệu không độc lập hoặc được phân phối giống nhau giữa các máy khách
Tuy nhiên, thành công của FL phụ thuộc vào dữ liệu được gắn nhãn thích hợp có thé được sửdụng dé đào tạo phương pháp học có giám sát các mô hình Xem xét kịch bản phân loại phần mềmđộc hại, chúng tôi không thê dựa vào việc người dùng chỉ định các nhãn chính xác đối với dữ liệucủa họ, vì không thé dam bao rang chúng có thể xác định chính xác các ứng dụng độc hại
LiM đề xuất một cách tiếp cận mới để giải quyết thách thức này: một phương pháp bán giámsát cho phép FL đào tạo mô hình cục bộ mà không có sự giám sát Chúng tôi giả định rằng đữ liệuđược gan nhãn chi có sẵn cho đám mây, trong khi các ứng dụng khách sử dụng các mẫu khôngđược gắn nhãn của chúng đề cập nhật các thông số của mô hình bán giám sát cục bộ của chúng
Hơn nữa, chúng tôi sẽ tận dụng những lợi ích thiết thực của học tập bán giám sát an toàn (SSL),
để đảm bảo rằng các mô hình được đào tạo bởi máy khách là hữu ích, tức là chúng cung cấp hiệu
suất cơ bản tối thiêu và không gây nhiễu (thông qua các nhãn không chính xác) trong mô hình cộng
tác.
Trong LiM, học cộng tác xảy ra trên các trọng số của những người học cơ sở, mà máy khách
ước tính bằng cách sử dụng bộ dữ liệu thử nghiệm không được gắn nhãn Máy chủ đám mây thuthập tất cả trọng số của máy khách và tông hợp chúng theo cách tương tự như nó sẽ làm với trọng
số của một mạng thần kinh sâu (DNN) Điều quan trọng cần lưu ý là số lượng người học cơ bảnthấp hơn nhiều so với số lượng tế bào thần kinh trong DNN - LiM nén thêm dữ liệu máy khách
bằng cách tận dụng quá trình huấn luyện mà đám mây thực hiện trên người học cơ sở Chúng tôi
thấy tính năng này như một cơ chế bảo vệ chống lại các cuộc tan công quyền riêng tư, vì các bản
15
Trang 35cập nhật ứng dụng sẽ không còn thưa thớt nữa.
Lưu ý rang trong trường hợp của LiM, nhà cung cấp dịch vụ đóng một vai trò lớn hơn so với
FL truyền thống, có giám sát để bù đắp cho sự thiếu thực tế của máy khách Nhà cung cấp cũng
chọn kiến trúc và bộ tính năng của các trình học cơ sở khác nhau, cũng như được sử dụng làm bộphân loại đường cơ sở LiM cung cấp sự bảo vệ chống lại các cuộc tấn công toàn vẹn băng cách sosánh trọng số do máy khách đóng góp với trọng số do nhà cung cấp thông qua tập đữ liệu không
được gắn nhãn của chính nó
2.6 Một cấu trúc cộng tác kết hợp PermMaps
Vì hàng triệu ứng dụng dựa trên Android được phát hành hàng năm, quản lý dữ liệu liên quan
cho mục đích dao tạo mô hình là một quá trình đòi hỏi những nỗ lực đáng kẻ, chủ yếu là liên quanđến việc truy cập, tìm kiếm va cập nhật chúng Dé khắc phục những van đề này, chúng tôi nghiêncứu một kiến trúc cộng tác để hỗ trợ các tác vụ phân loại của Android thông qua Perm-Maps được
đề xuất Các kiến trúc cộng tác dựa trên một hệ thống logic san xuất dữ liệu hoc cộng tác, ngụ ýrằng các thiết bị tham gia gửi dữ liệu cấp phép đã được xử lý trước của riêng chúng đến cơ sở hạ
tầng tập trung dành cho cung cấp dịch vụ thu thập, xây dựng mô hình phân loại và chia sẻ thông
tin liên quan [36] Do nó thành công lớn, logic cộng tác đã được tìm hiểu sâu, trong thập kỷ trước,đối mặt với các van đề chính liên quan đến quá trình hội tụ giữa các cơ sở hạ tang biên và đámmây, chang hạn như như tổng hợp dữ liệu, di chuyền đữ liệu và di chuyển dich vụ [37] Ngoài ra,
nó đã được tham gia vào nhiều các miền ứng dung nồi tiếng, chang hạn như các giải pháp mật mã
dé duy trì bảo mật dữ liệu [38], công việc tối ưu hoá framework cho mọi thứ thiết bị y tế của [37]
và tối ưu hóa các phương tiện mạng [38]
Về chỉ tiết, cau trúc này được đề xuất nhăm mục đích cung cấp quy trình tổng hợp đữ liệu nơicác thiết bi được cộng tác và được sử dụng làm nguồn dữ liệu cho phép phi tập trung và đơn vị xử
ly sơ bộ Ngoài ra, một máy chủ trung tâm được sử dụng dé thu thập dữ liệu, sau đó xây dung, chia
sẻ và cập nhật mô hình phân loại, sẽ được chuyên dưới dạng cập nhật cho mỗi thiết bị được cộngtác, và do đó, hướng tới đề xuất quản lý chiến lược cho dit liệu của các quyền truy cập liên quan
2.7 Android
Android là một trong những hệ đièu hành phổ biến trên thế giới Android này sở hữu mã nguồn
mở nên lập trình viên có thể đễ dàng điều chỉnh và phân phối nó một cách tự do Nhưng bên cạnh
đó cũng tiếm ân những đe doạ về bảo mật Sau đây, chúng tôi sẽ trình bày về tập tin quan trọng, là
một tập tin chứa siêu dir liệu cho một nhóm các tập tin di kèm, vốn là một phần của một tập hợp
16
Trang 36các đơn vị có liên kết với nhau-tập tin manifest trên Android.
2.7.1 Tập tin manifest của Android
Trong hệ điều hành Android, các ứng dụng được phân phối các gói tập tin ứng dụng dưới
dang Android (APK) Các tập tin này đơn giản là có công dụng làm kho lưu trữ chứa mã bytecode,
tài nguyên và siêu đữ liệu Người dùng có thê cài đặt hoặc gỡ cài đặt ứng dụng (tập tin APK) bằngcách tương tác trực tiếp với điện thoại thông minh
Khi nào một ứng dụng Android đang chạy, mã của nó được thực thi trong hộp cát Về lý
thuyết, một ứng dụng chạy biệt lập với phần còn lại của hệ thống thì nó không thể truy cập trực
tiếp vào các dit liệu của ứng dụng khác Cách duy nhất một ứng dụng có thé có quyên truy cập làthông qua trung gian băng cách sử dụng các kỹ thuật giao tiếp giữa các quá trình được thực hiện
có sẵn bởi Android Các biện pháp này được áp dụng đề ngăn chặn sự truy cập của các ứng dụng
độc hại vào dữ liệu của các ứng dụng khác, có thể nhạy cảm về quyền riêng tư Vì các ứng dụngAndroid chạy trong hộp cát nên chúng phải chịu các hạn chế về việc sử dụng bộ nhớ dùng chung
và hầu hết các tài nguyên hệ thống Hệ điều hành Android cung cấp một loạt các giao diện lập trìnhứng dụng (API) cho phép truy cập vào các tài nguyên va dịch vụ của hệ thống Đặc biệt, các API
cung cấp quyền truy cập vào các dịch vụ vi phạm quyên riêng tư (ví dụ: máy ảnh, micrô) hoặc dữliệu nhạy cảm (ví dụ: danh bạ) được bảo vệ bởi hệ thong quyén truy cap cua Android [39] Cac nhaphát triển phải dé cập rõ ràng các quyền truy cập yêu cầu sự chấp thuận của người dùng trong tap
tin AndroidManifest.xml (sau đây được gọi là tệp kê khai).
Bên cạnh các quyền truy cập, tập kê khai cũng bao gồm thông tin về các thành phần ứngdụng [40], chăng hạn như các hoạt động, dịch vụ, máy thu phát sóng và các nhà cung cấp nội dung
Một hoạt động là đại diện của một màn hình xử lý các tương tác giữa người dùng và ứng dụng.
Dịch vụ là các thành phần chạy trên nền tảngcủa hệ điều hành đề thực hiện các hoạt động lâu dàitrong khi một ứng dụng khác đangchạy ở nền tảng trước Máy thu phát sóng phản hồi thông báophát sống từ ứng dụng hoặc hệ thống Chúng cho phép một ứng dụng phản hồi các thông báo phátsóng bên ngoài luồng người dùng Nhà cung cấp nội dung quản lý một nhóm được chia sẻ dit liệu
ứng dụng và lưu trữ chúng trong hệ thống tệp Nó cũng cung cấp dữ liệu từ ứng dụng này sang ứng
dụng khác theo yêu cầu Điều đáng chú ý là thông tin có trong một tập tin kê khai không bị xáotrộn và có thê được trích xuất qua phân tích tĩnh Đó là lợi ích tốt nhất của nhà phát triển ứng dụng
dé không lam xáo trộn tap tin, nếu các tập tin bị xoá trộn nó sẽ dẫn đến phá vỡ các chức năng củaứng dụng, khiến cho nó trở nên vô dụng
17
Trang 372.7.2 Hướng tiếp cận
Có ba loại kỹ thuật phát hiện phần mềm độc hại khác nhau: phát hiện sự tấn công hoặc xâm
lược của phần mềm độc hại, phát hiện thiết bị Android bị lạm dụng (dựa trên chữ ký) và phát hiện
trạng thái bất thường của thiết bị Android (dựa trên hành vi) [6] Phát hiện tắn công hoặc xâm lượccủa phần mềm độc hại tức là cố gắng phát hiện truy cập trái phép của người từ bên ngoài Tuynhiên, tính năng phát hiện thiết bị android bị lạm dụng (dựa trên chữ ký) thì ngược lại, tức là cốgắng phát hiện hành vi lạm dụng của người bên trong nội bộ và mô tả rất tốt kết quả phát hiện các
cuộc tan công được chỉ định Ưu điểm của việc phát hiện thiết bị android bị lạm dụng là: nó không
báo dương tính giả và có thé nhanh chóng phát hiện sự xâm nhập Nhược điểm là không có khanăng phát hiện những cuộc xâm nhập mới lạ, ngay cả khi chúng được xây dựng dưới dạng các biến
thé tối thiểu thu thập được từ các cuộc tấn công Phát hiện trạng thái bất thường của thiết bị android
(dựa trên hành vi) đề cập đến việc phát hiện các mẫu trong một tap dtr liệu nhất định không phùhợp với một hành vi bình thường được thiết lập từ trước Nó cũng cố gắng ước tính, phán đoán
hành vi bất thường của hệ thống cần được bảo vệ và tạo ra cảnh báo bat thường bat cứ khi nao độlệch giữa một trường hợp đang giám sát trong đó hành vi được được đánh giá là bất thường khi nóvượt quá ngưỡng được xác định trước Ưu điểm của kỹ thuật này là khả năng phát hiện các sự kiện
xâm nhập chưa từng thấy trước đó nhưng bên cạnh đó, cũng nó cũng chứa nhược điểm, chính là cónhiều kết quả dương tinh giả và yêu cầu một tập hợp dữ liệu huấn luyện lớn dé xây dựng hồ sơ tậphợp hành vi bình thường Dé loại bỏ những thiếu sót của hai phương pháp phát hiện bị lạm dung
và phát hiện trạng thái bất thường, cấu hình phải được cập nhật với số lượng lớn bộ dữ liệu trong
khoảng thời gian đều đặn [16] Nhưng một lượng lớn bộ dữ liệu cũng làm gia tăng van dé không
nhất quán, sự dư thừa và sự mơ hồ của dit liệu.
2.8 Giới thiệu về Convolutional Neural Network
2.8.1 Khái niệm Convolutional Neural Network (CNNs — Mạng nơ-ron tích chập) là một trong những mô
hình Deep Learning tiên tiến Nó giúp cho chúng tôi xây dựng được những hệ thống thông minh
với độ chính xác cao như hiện nay CNN được sử dụng nhiều trong các bài toán nhận dạng các
object trong ảnh.
2.8.2 Convolutional là gi?
La một cửa số trượt (Sliding Windows) trên một ma trận như mô tả hình dưới:
18
Trang 381 hoặc 0 là giao điểm của dòng và cột.
Convolution hay tích chập là nhân từng phần tử trong ma trận 3 Sliding Window hay còn
gọi là kernel, filter hoặc feature detect là một ma trận có kích thước nhỏ như trong ví dụ trên là
3x3 Kết quả được một ma trận gọi là Convoled feature được sinh ra từ việc nhận ma trận Filter
với ma trận ảnh 5x5 bên trái.
Hình 2.9: một ma trận gọi là Convoled feature
2.8.3 Neural Network là gì?
19
Trang 39Neural Network-Mang nơ-ron là một mạng hoặc mạch gồm các nơ-ron sinh học, hay theonghĩa hiện đại, là một mạng noron nhân tao, bao gồm các nút hoặc noron nhân tạo [1] Do đó, mang
nơ-ron là một mạng nơ-ron sinh học, được tạo thành từ các nơ-ron sinh học, hoặc mạng nơ-ron
nhân tạo, được sử dụng dé giai quyét các vấn dé về trí tuệ nhân tao (AD Các kết nối của nơ-ron
sinh học được mô hình hóa trong mạng nơ-ron nhân tạo như trọng số giữa các node Trọng lượngdương phản ánh kết nối kích thích, trong khi giá trị âm có nghĩa là kết nối ức chế Tất cả các đầu
vào được sửa đôi theo trọng số và tính tổng Hoạt động này được gọi là sự kết hợp tuyến tính Cuối
cùng, một chức năng kích hoạt kiểm soát biên độ của đầu ra Ví dụ, phạm vi dau ra có thé chấp
nhận được thường nam trong khoảng từ 0 đến 1 hoặc có thé là —1 và 1
A simple neural network
input hidden output layer layer layer
Các mạng nhân tao nay có thể được sử dụng dé tạo mô hình dự đoán, điều khiến thích ứng
và các ứng dụng mà chúng có thé được đào tạo thông qua tập dữ liệu Tự học hỏi kết quả từ kinh
nghiệm có thể xảy ra trong các mạng, có thể rút ra kết luận từ một tập hợp thông tin phức tạp và
dường như không liên quan.
2.9 Giới thiệu về Support Vector Machine
2.9.1 Khái niệm
Máy vectơ hỗ trợ (SVM - viết tắt tên tiếng Anh support vector machine) là một khái niệm
trong thống kê và khoa học máy tính cho một tập hợp các phương pháp học có giám sát liên quanđến nhau dé phân loại và phân tích hồi quy SVM dạng chuẩn nhận dữ liệu vào và phân loại chúng
vào hai lớp khác nhau Do đó SVM là một thuật toán phân loại nhị phân Với một bộ các ví dụ
luyện tập thuộc hai thể loại cho trước, thuật toán luyện tập SVM xây dựng một mô hình SVM dé
20
Trang 40phân loại các ví dụ khác vào hai thể loại đó Một mô hình SVM là một cách biểu diễn các điểmtrong không gian và lựa chọn ranh giới giữa hai thé loại sao cho khoảng cách từ các ví dụ luyện tậptới ranh giới là xa nhất có thé Các vi dụ mới cũng được biểu diễn trong cùng một không gian va
được thuật toán dự đoán thuộc một trong hai thể loại tùy vào ví dụ đó nằm ở phía nao của ranh giới
2.9.2 Tổng quanMột máy vectơ hỗ trợ xây dựng một siêu phăng hoặc một tập hợp các siêu phăng trong một
không gian nhiều chiều hoặc vô hạn chiều, có thé được sử dụng cho phân loại, hồi quy, hoặc các
nhiệm vụ khác Một cách trực giác, để phân loại tốt nhất thì các siêu phăng năm ở càng xa các điểm
dữ liệu của tất cả các lớp (gọi là hàm lề) càng tốt, vì nói chung lề càng lớn thì sai số tổng quát hóacủa thuật toán phân loại càng bé Trong nhiều trường hợp, không thê phân chia các lớp đữ liệu một
cách tuyến tinh trong một không gian ban đầu được dùng dé mô tả một vấn đề Vì vậy, nhiều khi
cần phải ánh xạ các điểm đữ liệu trong không gian ban đầu vào một không gian mới nhiều chiềuhon, dé việc phân tách chúng trở nên dé dàng hơn trong không gian mới Dé việc tính toán được
hiệu quả, ánh xạ sử dụng trong thuật toán SVM chỉ đòi hỏi tích vô hướng của các vectơ dữ liệu
trong không gian mới có thê được tính dễ dàng từ các tọa độ trong không gian cũ Tích vô hướngnày được xác định bằng một hàm hạt nhân K (x, y) phù hợp [1] Một siêu phăng trong không gianmới được định nghĩa là tập hợp các điểm có tích vô hướng với một vectơ cố định trong không gian
đó là một hằng số Vectơ xác định một siêu phăng sử dụng trong SVM là một tổ hợp tuyến tính củacác vecto dữ liệu luyện tập trong không gian mới với các hệ số ai Với siêu phang lựa chọn nhưtrên, các điểm x trong không gian đặc trưng được ánh xạ vào một siêu mặt phăng là các điểm thỏa
man:
3 a; K(x,x) = hằng số.
Ghi chú rang nếu K (x, y) nhận giá trị ngày càng nhỏ khi y xa dan khỏi x thi mỗi số hang của
tổng trên được dùng dé đo độ tương tự giữa x với điểm x; tương ứng trong dit liệu luyện tập Nhu
vậy, tác dụng của tổng trên chính là so sánh khoảng cách giữa điểm đữ liệu cần dự đoán với cácđiểm dit liệu đã biết Lưu ý là tập hợp các điểm x được ánh xạ vào một siêu phăng có thé có độphức tạp tùy ý trong không gian ban đầu, nên có thé phân tách các tập hợp thậm chí không lồi trongkhông gian ban đầu
2.10 Giới thiệu về Random Forest
2.10.1 Khái niệm
Rừng ngẫu nhiên hoặc rừng quyết định ngẫu nhiên là một phương pháp hoc tập tong hợp dé
21