Dữ liệu của việc đánh giá được sinh ra từ một thuật toán học sâu.. o Đóng gói các thành phần tạo dữ liệu mạng thông thường và bất thường trong các docker dé dé dành trong việc quản lý và
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
vU ANH HAO
KHOA LUAN TOT NGHIEP
XAY DUNG HE THONG DANH GIA DO HIEU QUA CUA
IDS THONG QUA DU LIEU TONG HOP
BUILDING AN IDS EVALUATION FRAMEWORK USING
SYNTHETIC DATA
KY SU NGANH AN TOAN THONG TIN
TP HO CHÍ MINH, 2021
Trang 2ĐẠI HỌC QUOC GIA TP HO CHÍ MINH
TRUONG DAI HOC CONG NGHE THONG TIN
KHOA MANG MAY TINH VA TRUYEN THONG
VU ANH HAO - 17520452
KHOA LUAN TOT NGHIEP XAY DUNG HE THONG DANH GIA DO HIEU QUA
CUA IDS THONG QUA DU LIEU TONG HOP
BUILDING AN IDS EVALUATION FRAMEWORK USING
SYNTHETIC DATA
KY SƯ NGANH AN TOAN THONG TIN
GIANG VIEN HUONG DAN THS NGUYEN KHANH THUAT
TP HO CHÍ MINH, 2021
Trang 3THONG TIN HOI DONG CHAM KHÓA LUẬN TOT NGHIỆP
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số
Ti8ầy của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
Trang 4ĐẠI HỌC QUỐC GIA TP HO CHÍMINH CỘNG HOA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
TP HCM, ngày tháng năm 2021
NHAN XÉT KHÓA LUẬN TOT NGHIỆP
(CUA CÁN BỘ HƯỚNG DAN)
Tên khóa luân:
XÂY DỰNG HỆ THÓNG ĐÁNH GIÁ ĐỘ HIỆU QUÁ
CUA IDS THONG QUA DU LIEU TONG HỢP
BUILDING AN IDS EVALUATION FRAMEWORK USING SYNTHETIC
DATA
Nhóm SV thuc hiện: Cán bộ hướng dẫn:
Vũ Anh Hào 17520452 ThS Nguyễn Khánh Thuật
Đánh gia Khóa luân
1 Về cuốn báo cáo:
Só trang - Số chương
SỐ bang sô liệu Sô hình vẽ
Sô tài liệu tham khảo San phâm Một sô nhận xét về hình thức cuôn báo cáo:
2 Về nội dung nghiên cứu:
3 Về chương trình ứng dụng:
Trang 54 Về thái độ làm việc của sinh viên:
Đá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:
Vũ Anh Hào 0
Người nhận xét
ThS Nguyễn Khánh Thuật
Trang 6ĐẠI HỌC QUỐC GIA TP HO CHÍMINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
TP HCM ngày thang năm 2021
NHẠN XÉT KHÓA LUẬN TÓT NGHIỆP
(CUA CÁN BỘ PHAN BIEN)
Tên khóa luân:
XÂY DỰNG HỆ THÓNG ĐÁNH GIÁ ĐỘ HIỆU QUÁ
CUA IDS THONG QUA DU LIEU TONG HỢP
BUILDING AN IDS EVALUATION FRAMEWORK USING SYNTHETIC
DATA
Nhóm SV thu hién: Can bộ phan biện:
Vũ Anh Hao 17520452
Đánh giá Khóa luận
1 Về cuốn báo cáo:
Số trang - Số chương
SO bang 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:
2 Về nội dung nghiên cứu:
3 Về chương trình ứng dụng:
Trang 74 Vệ thái độ làm việc của sinh viên:
Đánh giá chung: Khóa luận đạt/không đạt yêu cầu của một khóa luận tốtnghiệp kỹ sư/ cử nhân, xếp loại Giỏi/ Khá/ Trung bình
Điểm từng sinh viên:
Vũ Anh Hào << << << xxx < xxx H0
Người nhận xét
Trang 8LỜI CẢM ƠN
Lời đầu tiên, em xin trân trọng cảm ơn quý thầy, cô đang công tác và giảngday tại khoa Mang máy tính và Truyền thông, cũng như toàn thê thầy, cô khác côngtác tại trường Đại học Công nghệ Thông tin - ĐHQG HCM đã truyền đạt những
kiến thức, bài học, kinh nghiệm quý báu cho em trong suốt quãng thời gian vừa qua
Và đã sắp xếp thời gian, chương trình để em có cơ hội hoàn thành khóa luận tốt
nghiệp tốt nhất Xin kính chúc khoa Mạng máy tính và Truyền thông nói riêng và
trường Đại học Công nghệ Thông tin nói chung luôn thành công rực rỡ trên con
đường giảng dạy đào tạo nhân tài, sẽ mãi là niềm tin vững chắc cho các thế hệ sinh
viên trên con đường giáo dục.
Đặc biệt, em xin gửi lời cảm ơn chân thành nhất đến giảng viên hướng dẫn
Nhờ những kinh nghiệm, bài học quý báu được chia sẻ từ thầy, thầy đã luôn quan
tâm và giúp đỡ giải quyết những vấn đề phát sinh, khó khăn trong quá trình thực
hiện Nhờ có thầy, em đã có cơ hội hoàn thành tốt khóa luận tốt nghiệp này
Tiếp theo, em xin cảm ơn về phía gia đình đã luôn luôn tin tưởng, động viênchúng em trong suốt quá trình học tập tại trường Đại học Công nghệ Thông tin —
ĐHQG HCM, giúp em có thêm nguồn năng lượng dé đi đến được như ngày hôm
Trang 9ĐẠI HOC QUOC GIA TP HO CHÍMINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT N
TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
DE CUONG CHI TIET
TEN DE TAI:
- Tiéng Việt: Xây dựng hệ thống đánh giá độ hiệu qua của IDS thông qua dữ
liệu tông hợp
- Tiêng Anh: Building an IDS evaluation framework using synthetic data.
Cán bộ hướng dẫn: ThS Nguyễn Khánh Thuật
Thời gian thực hiện: Từ ngày 24/01/2021 đến ngày 20/06/2021
Sinh viên thực hiện:
Vũ Anh Hào — 17520452 — 0338929592
Nội dung đề tài:
- Mô tả chỉ tiết mục tiêu: Trong đề tài, sinh viên hướng tới việc xây dựng một hệ
thống cho phép kiểm thử độ hiệu quả của một hệ thong IDS Sự hiệu quả được
đánh gia qua các yếu tô khác nhau như: độ chính xác, tài nguyên tiêu thụ, độ trễ
Dữ liệu của việc đánh giá được sinh ra từ một thuật toán học sâu Thuật
toán này được train với các tập dữ liệu thật khác nhau và có thê tao ra
dữ liệu tân công IDS với độ phức tạp cao Đây cũng là đóng góp chính của luận văn.
- Pham vi:
o Framework cho phép kiểm thir IDS
o Các thuật toán machine learning dùng trong IDS
- Đối tượng: Các hệ thong IDS, dit liệu tan công dùng dé luyện tập và kiểm thử
IDS.
- _ Cách thức thực hiện:
o Sử dụng các ứng dụng tạo các dữ liệu mang thông thường từ người dùng,
và dữ liệu bất thường từ các tools tan công.
o Đóng gói các thành phần tạo dữ liệu mạng thông thường và bất thường
trong các docker dé dé dành trong việc quản lý và triên khai
o Thử nghiệm và phát triển thuật toán tạo dữ liệu ảo bằng thuật toán Gan
thông qua việc học từ các tập dữ liệu tan công trược công bố trên mạng.
o Nối các nguồn dữ liệu vào trong IDS, từ đó kiểm tra độ hiệu quả của IDS
trong việc phát hiện dữ liệu bất thường.
Trang 10Kế hoạch thực hiện:
- _ Giai đoạn 1 (01/2021 - 03/2021): Xây dựng hệ thống có giao diện cho phép kiểm
thử độ hiểu quả của một vài IDS
- Giai đoạn 2 (04/2021): Tối ưu hóa hệ thống kiêm thử Da dang hóa các phương
thức tấn công dé tạo ra các tập dữ liệu với độ phức tạp cao
- Giai đoạn 3 (05/2021): Bỗ sung khả năng tùy biến giúp đánh giá nhiều hệ thong
IDS khác nhau Triển khai và đánh giá thử nghiệm một vai IDS từ đơn giản đến
Trang 11MỤC LỤC
NHẬN XÉT KHĨA LUẬN TOT NGHIỆP (CUA CÁN BỘ HƯỚNG DAN) 4
NHẬN XÉT KHĨA LUẬN TOT NGHIỆP (CUA CÁN BO PHAN BIỆN) 6
LOL CAM 090 - 8
2)5980/9)I€19:00015022 ::.‹£Œ£2AäÀ5,:1 9
MỤC LLỤC 52-522 2E22E1EE1E21211211711112112111111211111111 21111011111 11
M.9/:80 0098:0252 5 :::1 15DANH MỤC BẢNG ¿- ©2522 EEEE1211211217112112117121121111 1111.1111 19DANH MỤC TU VIET TẮTT 2-22 +¿+2E+2EE£EE£SEEEEEEEEEEEEEE2EE21121221 21121 crk 20
TOM TAT KHOA LUAN 1007 Ả.ốốố.ố 22
Chương 1 GIỚI THIỆU - 2-2-5 EE+EE+EE+EE+EEEEEEeEEeEEerkerkrree 24
1.1 Tên đề tài cv c6 16205 22cc c2 HH HH HH E121 11 1111111 1e crrerrrrree 24
1.2 Dat 5G Ẩ cee one <ố nha 241.3 Mục tiêu của đề tài s-©5c 5+ 2t k2 211271 21121121111111211 11x ekrre 251.4 Đối tượng và phạm vi nghiên cứu - + 2 + s+++£+££zE+zxerxerxerezrs 25
1.4.1 Đối tượng nghiên cứu -2+-x+2+++E+EE+rxerkrrerrserkerreee 25
1.4.2 Pham vi nghiÊn CỨU - G1 SH Hư, 26 Chương2 CO SỞ LÝ THUYÊT 2- 2222 E+SE+£E+2EE+EEtEEtEEezExerxerxrree 27
2.1 Hệ thống phát hiện xâm nhập - 2 2 2 ++E£+E£+E++ExzEzEzrxerxerreee 27
2.1.1 Tổng quan - c2£+5£+ESEEEEEEESEEEEEEEEEEEEEEEEEEErkerkrree 27
2.1.2 PAM loại -7ccSc2ES E2 2 211212121 ctkcrree 28
2.1.3 Ưuđiểm c2 EEEE1211211 011112111 302.1.4 Nhược điểm ©+c 2222222 2222121 errrkrrkee 30
Trang 122.2.1 Tổng quan c-©2c22Ec2CE2EEEEEEEEEEEkrErkerrrerkrervee 302.2.2 Các thuật toán máy học cổ điển - 2 5¿+c+2x++cx++zxzrxeee 32
2.2.2.1 Decision 'ÏT@G s9 TH TH HH hư 32 2.2.2.2 Logistic Ñ€BT€SSIOII SG Q31 1S SH ng ng ke rvt 33 2.2.2.3 Naive Bay©S Gv 33 2.2.2.4 K-nearest neIghOr - + + 31 9 1 9 11 11 vn re 34 2.2.2.5 Random lFOTSí - 5 + k1 TH HH ng, 35 2.2.3 Các thuật toán học sâu - - - ĂĂ 11112221111 11g 1v ng ve 36
2.2.3.1 Deep neural NetWOTK -.- 5 S5 kg HH HH Hy 36 2.2.3.2 Convolutional Neural Network se, 37 2.2.3.3 Recurrent Neural NGtWOrK - - sgk, 38 2.2.3.4 Long Short Term MeImOTV - - << + + E++veEseeeeseeseeers 39 2.2.3.5 CNN LSTM - SH HH HH HH HH HH HH ky 40 2.2.3.6 Gated Recurrent UnI( - c2 xxx re 40 2.2.4 IDS máy hỌC LH HH HH Hàn HH nh như 4I PIN) na 42
2.3.1 Tổng quan -©2c2Sc2Ck2EEEEEEEEEEEkrtrkerkrerkrervee 42
2.3.2 Phân loại - Ghế 44
2.3.2.1 Bộ dữ liệu huấn luyện — training S€K .- 5-5 5< s+sseesssess 44
2.3.2.2 Bộ xác thực — Validation set 5 <1 irsessee 45 2.3.2.3 Bộ dữ liệu thử nghiệm — testing Sef 5-5555 <++sc+sss+ 45
2.3.3 Một số dataset về tân công mạng -¿- ¿+ ©++cx++zxrzrxees 45
2.3.3.1 NSL-KDD HH HH TH Hà HH ghi h 46
°ˆ 2N) R5 47
Trang 132.3.3.3 Dataset khác và hạn chế của chúng -:-¿-+-sz+2sz+: 472.4 Dữ liệu tổng hợp ¿-©2¿22+c 2k2 221122121122112711211 2112111211 re 49
2.4.1 Tổng quan -.-5cc©cc22+SEEEEEEEEEEEEEEEEErkrrrrrrerkerree 492.4.2 Ưuđiểm 7c 2t EEEEE1211221212121 11tr 50
2.4.3 Ứng dụng c2 TT E211 reo 51
2.4.4 So sánh với dữ liệu thật - -¿2¿+5++cxc2E2ESEEEEkerkrrrerkerkerree 52 2.4.5 Thách thức ©2¿©2++c++ExtEE+2ESExerxerkrrrrerrerrerree 53 2.5 Generative Adversarial Networks Ăn 1 SS ng sec 53
2.5.1 Tổng quan -©2c2S+2C+2EEEEEEEEESEkrtrkerkrerkrervee 532.5.2 Một số loại GAN vecccccccsscssssssessessssssesseesesssssssssessessusssessessessesseessesseesess 552.6 Hệ thống kiểm thử va đánh giá IDS woes ccsessessessessesesseseeseesesseesesees 57
2.6.1 Tổng qốấn/ẾC @®>.<@ ì / 57
2.6.2 Cac QA rape, v.v ema / ⁄ 58 2.6.3 Cách thức hoạt động ©2-©22+c<+EEcEEerErrrrkerkerreee 62
2.6.4 Một số vấn đề 2c 2c 2 2212112211221 21111 crxe 63
Chương 3 MÔ HÌNH UNG DỤNG 2-©2<©++2E2EEt2EEtEEerkrrkrrrerree 64
3.1 Mô hình xây dựng dữ liệu tổng hợp -¿-s+2cx+x++zxzzxezzxeex 64
3.1.1 Mô hình khối “Preparation”” + s+cs+c++x+kzkerkerxerxerseree 653.1.2 Mô hình khối “Origin PTO€esS” -:- + s+cz+ce+kczkerterxerxersrree 66
3.1.2.1 Các mô hình máy hỌC - s11 1H re 66
3.1.2.2 Tự động hóa huấn luyện và thử nghiệm «-+ «++ 693.1.3 Mô hình khối “GAN Process” ccsscsssessessesssessessesssessessecsessseeseeseeaes 723.1.4 Mô hình khối “Mixed Process” cscscssssssessesssesssecssessessecssecsseeseeeses 753.2 Mô hình hệ thống đánh giá IDS scccccsssssssssssssssssvssesssesssssseseesesesessssssseess 76
Trang 143.2.1 Bố sung giao diện người dùng : ©2¿55+2cxc2zxccxssrsesrxee 76
3.2.2 1080:9017 Tỉ Chương 4 Thực nghiệm đánh gI1á - - - - c6 2 331113311 EEEErerrreree 80
4.1 Cải tiến IDS Evaluation Framework - 2: ©5¿©5s ++£x+zx++z+zrxerxzes 80
4.1.1 Kay dựng giao diện người dùng -c++ssssssssessseresee 80 4.1.2 08:0 On HỒ 84
4.2 Xây dựng bộ dữ liệu tổng hợp -¿- 5: 5+2x222x2ExtEEEerksrkerrrerrrsree 85
4.2.1 UNSW Datase( Q LH HH HH HH ng ng 86
4.2.1.1 Tiền xử Yc eeececccccccssesssssssessesssessssssessssssessusssecssecssessecssecssecseesseessecs 86
4.2.1.2 Phân lớp nhị phan (Binary cÌaSS) - 6-5 s«cscssessssessee 88
4.2.1.3 Phân đa lớp (Multi-class) ccccccccsscsscecscsseessesseeeseeseeeseeesesseeesees 94
4.2.2 — NSL-KDD HH HH HH HH HH 99
4.2.2.1 Tybee, AIIM ~se Í 4 99
4.2.2.2 Quá trình thực hiện eeceeeeneeeececeeeceseeseeseeaeeaeeeeeeaeenees 100
4.2.2.3 Kết quả thu được -©-¿©-+¿+2xt2xktEkSrkrsrkerkrerkrsrkerred 101
Chương 5 Kết luận, hướng phát tYÍỂN 5S tt E2 SEEEEEEEEEEEEEEErEkrkrkrrerkee 104
5.1 Kết quả đạt được -:¿©-++22k2 221221 221122112211221 211.11 1cErrree 1045.2 Hướng phát triỀn ¿+ +k+EE#EE*EE2EE2E2E12E2171712111 1.1 cre 104TÀI LIEU THAM KHẢO - ¿Set SESE+EEEEEESEEEEEESEEEEEESESEEEEEEEEEEErkrkrrrrres 106
Trang 15DANH MỤC HÌNH
Hình 2.1 So sánh IDS và IPS - - G9 TH TH ng ng gu 27
Hình 2.2 Vị trí NIDS trong hệ thống mạng - 2-2 5¿2+¿2++2++2£x2zxzxesrsz 29
Hình 2.3 So sánh NIDS và HIIDS - - 2 11 21193119111 111 11H ng ng re 29 Hình 2.4 Trí tuệ nhân tạo, May học và học Sau c5 sex ssssrsee 31 Hình 2.5 Mang Neural trong học sÂu - - 5 «<< 31v HH trên 32 Hình 2.6 Thuật toán Machine Learning: Decision free - «+ «<< s+ss++ 33 Hình 2.7 So sánh Linear Regression va Logistic Reỹression . ‹ «<2 33 Hình 2.8 KNN trong phân lớp (ClaSSIfICAfIOT)) - 5S + + sssksersee 34 Hình 2.9 Cách hoạt động của thuật toán Random FOresf 5 «++s«+++ 35 Hình 2.10 So sánh ANN và DNN HH HH HH HH HH HH hư 37
Hình 2.11 Convolutional layer và ảnh gốc -¿ ¿+¿+++2+++cx+zxzxesrss 37
Hình 2.12 Vong lặp trong RNN LH HH HH HH HH ngư 38
Hình 2.13 Cau trúc LSTM : ©5+ctcE+ttttEEtrtttrtrtttrtrrrtrtrrrrirrrrrrriio 39
Hình 2.14 Đường chạy của LS TÌM - - c1 HH HH tiệt 39
Hình 2.15 Sơ đồ các lớp cơ bản của CNN LSTM 2- 2 x+2c+zs+zxcrxczez 40
Hình 2.16 So sánh LSTM va GRU - - 5S +19 HH ng ng gưkt 4I
Hình 2.17 Phân loại những kỹ thuật phát hiện dựa trên sự bất thường
Hình 2.18 Ví dụ về một dataset 5c- 252tr 43Hình 2.19 Dữ liệu có sẵn và dữ liệu cần thiẾt -¿-cccccccxvsrrrrrrrrrrrrrre 44Hình 2.20 Ví dụ về việc phân chia các bộ dữ liệu trong dataset - 44Hình 2.21 Tổng quan cách một dữ liệu tổng hợp được tạo -: -:-5¿ 49
Hình 2.22 Ứng dụng của dữ liệu tổng hợp trong phát triển xe tự lái 51
Hình 2.23 So sánh dữ liệu tổng hợp va dit liệu thật - - 55c S<c++sccessss 52Hình 2.24 Tổng quan cách GAN hoạt động 2-2 ¿2£ ++x+zx++z++zxerxezez 54Hình 2.25 Chi tiết cach GAN đơn giản hoạt động 2-2 se cxccxsrersxez 54
Hình 2.26 Cách ma CGAN thêm nhãn vào đữ liệu .- - -<+5<<+<x<<+ 56 Hình 2.27 Một bức ảnh tạo bởi Style GAN [23] - 2 - + s+sssessees 57
Trang 16Hình 2.28 Sơ đồ cách thức hoạt động của Hệ thống đánh giá IDS Model 57Hình 2.29 Khối Network Traffic Generator của Hệ thống đánh giá 59Hình 2.30 Khối Traffic Schedule 2-2 ¿+ £2S£+EE£EE£EE2EESEEtEEeEEErEkrrkrrkrrex 59Hình 2.31 Khối Packet Capture & Feature ExtraCtOr -:-¿ s¿©cs+©s++cs+ 60
Hình 2.32 Khối IDS Model -¿-©2+c+2+++tEEEktEEEkttttrkrrrttrirrrrirrrrrirriie 61
Hình 2.33 Khối Model Evaluating - 2 2 + E+EE£EE+EE+E++E£ErEerkerkerxerkrree 61Hình 2.34 Cách thức hoạt động của hệ thống đánh giá IDS - 62Hình 3.1 Khái quát mô hình tạo dữ liệu tong hợp - 2: ©z+s+cx+zxczsz 64
Hình 3.2 Mô hình thực hiện khối “Preparation” 65
Hình 3.3 Mô hình thực hiện khối 19200 66
Hình 3.4 Cấu trúc các lớp của mô hình deep learning CNN LSTM - 67
Hình 3.5 Cấu trúc các lớp của mô hình deep learning CNN -s¿ 68Hình 3.6 Cấu trúc các lớp của mô hình deep learning DNN . . - 68Hình 3.7 Cau trúc các lớp của các mô hình deep learning GRU, LSTM, RNN 69
Hình 3.8 Flowchart hàm do_train — tao và huấn luyện các mô hình máy hoc 70
Hình 3.9 Flowchart hàm train_classical — huấn luyện các mô hình máy học cô điển
¬— ' te ` “cố 71
Hình 3.10 Flowchart hàm test_classical — thử nghiệm các mô hình máy học cô điển
¬— Ắ ẳốẳằằ 71
Hình 3.11 Flowchart hàm train_ deep — huấn luyện các mô hình học sâu 71
Hình 3.12 Flowchart hàm test_deep — thử nghiệm các mô hình học sâu 72
Hình 3.13 Mô hình thực hiện khối GAN DTOC€SS Ảnh rưn 72
Hình 3.14 Nguyên lý hoạt động của GAN -Ă LH HH Hy rệt 73 Hình 3.15 Giản lược mô hình GAN - G -< 1112211111221 1 1118 1111821111182 1tr 74
Hình 3.16 Mô hình thực hiện khối “Mixed ProCe§S” - 5-6 cx+svExeEerxerrxers 75Hình 3.17 Sơ đồ giao diện hệ thống đánh giá IDS 2-22 5¿©2s55+cc+2 76
Hình 3.18 Sơ đồ cách thức hoạt động của Hệ thống đánh giá IDS Model 78
Hình 3.19 Sơ đồ hoạt động của Dot tự tạO - ¿2c tt 2E2 2E EEeEEerkerkerkrree 78Hình 3.20 Thiết kế cấu hình bot tự tạO ¿- - ¿52+ +EEEE+E+EEEE+E+EEEEEEeEeEtrkerererkrxee 70
Trang 17Hình 4.1 Giao điện người dùng của Hệ thống đánh giá IDS model 80Hình 4.2 So đồ giao diện hệ thống đánh giá IDS cc.cccsccccscessesssesssecsesstesseesseesseens 81Hình 4.3 Giao diện khối Configuration cccccscssscsssessesssesssecssecssessecssecssesesssecsseens 81Hình 4.4 Popup cấu hình cho hệ thống đánh giá cceccscccsssesseessesssessesseesseesseesseens 82
Hình 4.5 Giao diện khối Schedule - - 2-2 + SE £+E+EE+E£EE+EeEE+Eerkerrkererrers 82
Hình 4.6 Giao điện khối Resul( -¿- - ¿S6 +SSE+E+E£EEEE+EEEEEESESEEEEEEeEeEerkerrrerkrree 83Hình 4.7 Giao diện khối HistOry - 2-22 52222 2EE22EE2EE+2EEEEEEEESrkrrrrrrrrcree 83Hình 4.8 Thiết lập bot tự tạO 2¿- ¿2+2 2212 22121122112711211211211 211211 cre 84
Hình 4.9 Popup tải lên dữ liỆu - Q5 G11 90v ườn 84
Hình 4.10 Cấu trúc thư mục một bộ tạo dt liệu tổng hợp trên dataset UNSW 85
Hình 4.11 Doan code tạo heatmap trong khối Preparation . - 5 s22 86
Hình 4.12 Heatmap mối liên hệ giữa các đặc trưng trong dataset UNSW 86Hình 4.13 Heatmap mối liên hệ giữa các đặc trưng trong dataset UNSW (đã loại bỏnhững đặc trưng tương đồng €aO), - 2:22 ©2++2+22Ex2EEEEEE22EE22E211212221 22x crkecree 87
Hình 4.14 Doan code loại bỏ di những thuộc tinh có độ tương đồng cao 87
Hình 4.15 Đoạn code và kết quả sau khi chạy bộ tạo dữ liệu tổng hợp trên UNSW
Dataset — Bimary C ÏaSS c1 SH TH HH TH TH HH kh 89
Hình 4.16 Đoạn code và kết quả khối Origin Process trên UNSW Dataset — binary
ClA{AS€ QGHH H ọ T re 94
Hình 4.22 Đoạn code thử nghiệm của khối Origin Process của UNSW dataset —
¡1119112 96
Trang 18Hình 4.23 Bảng kết quả thử nghiệm của khối Origin Process của UNSW dataset —
MUITIC]ASS eee 96
Hình 4.24 Code và bảng kết quả thử nghiệm của khối Mixed Process của UNSW
Cataset — MUItIC]ASS Ga 97
Hình 4.25 So sánh kết quả thu được trên tập thử nghiệm của UNSW dataset 98
Hình 4.26 Mô hình dữ liệu tổng hop với KDD Dataset ¿55555552552 99Hình 4.27 Mô hình hoạt động của khối Synthetic Process - : - 100Hình 4.28 So sánh một số đặc trưng của dữ liệu tổng hợp và dữ liệu gốc của KDD
Trang 19Bảng 3.1.
Bảng 4.1.
Bảng 4.2.
Bảng 4.3.
Bảng 4.4.
Bảng 4.5.
Bảng 4.6.
Bảng 4.7.
Bảng 4.8.
Bảng 4.9.
DANH MỤC BANG
Mô hình thuật toán và phân loạt 5 + x*+kseserssereererserre 69
Danh sách các thuộc tính được sử dụng trong UNSW dataset 87
Phân chia số lượng dữ liệu trong UNSW dataset .: -: 88
Kết quả độ chính xác của khối Origin Process trên UNSW Dataset 89
Kết qua độ chính xác của khối GAN Process trên UNSW Dataset 90
Kết qua độ chính xác của khối Mixed Process trên UNSW dataset 93
Cách gắn nhãn các điểm dit liệu trong UNSW Dataset 94
Kết quả thu được trên tập thử nghiệm của UNSW dataset 97
Các đặc trưng được sử dụng dé tao dữ liệu từ KDD dataset 100
Kết quả thu được trên tập thử nghiệm của KDD dataset 102
Trang 20DANH MỤC TỪ VIET TAT
Viết tắt Nguyên tác Ý nghĩa
IDS Intrusion Detection System Hệ thống phát hiện xâm nhậpIPS Intrusion Prevention System Hệ thống ngăng ngừa xâm nhập
WFH Work From Home Lam viéc tai nha
HIDS Host-based IDS , : ,
trên thiết bi dau cuôi.
Network node Intrusion Giống NIDS nhưng chi áp dung
NNIDS : ;
detection system với một may chu.
Al Artificial Intelligence Tri tué nhan tao
ML Machine Learning Hoc may
DL Deep Learning Hoc sau
DNN Deep neural Network Một loại mang học sâu
CNN Convolutional Neural Network Một loại mang học sâu
RNN Recurrent Neural Network Một loại mang học sâu
LSTM Long Short Term Memory Một loại mang học sâu
GRU Gated Recurrent Unit Một loại mạng học sâu
Trang 21KNN K-nearest neighbor Một loại thuật toán máy học
CGAN Conditional GAN GAN có điều kiện
NLP Natural Language Processing Xử lý ngôn ngữ tự nhiên
Trang 22TÓM TẮT KHÓA LUẬN
Trong những năm gần đây, việc sử dụng Hệ thống phát hiện (Intrusion Detection
System - IDS) và ngăn ngừa xâm nhập (Intrusion Prevention System - IPS) trở nên
phô biến trong các công ty, doanh nghiệp, tập đoàn với đủ loại quy mô nhằm đảmbảo an toàn cho hệ thong mang Hon nữa, trong bối cảnh đại dịch COVID-19 đang
hoành hành trên toàn cầu, việc sử dụng các hệ thống mang cho WFH (Work From
Home) và các dịch vụ hội nghị truyền hình trở thành nhu cầu cấp thiết và được đâymạnh Đứng trước tình hình đó, việc đảm bảo an toàn cho các hệ thống trở thành vấn
đề tất yếu
Có nhiều loại IDS đã được xây dựng và đưa vào sử dụng, trong đó nồi bật lên là cácIDS chạy trên nền tảng máy học Chúng dan phát huy những ưu điểm khi có thé pháthiện những cuộc tan công Zero Day Nhưng việc xây dựng nên các hệ thống IDS máy
học này còn có nhiều hạn chế do các bộ đữ liệu còn thiếu hụt quá nhiều, không đầy
đủ các loại tan công dé cho IDS có thé phát hiện chính xác được Không chỉ vậy, một
số dữ liệu mang tính nhạy cảm được giữ kín bởi các doanh nghiệp khiến cho việc
huấn luyện các mô hình máy học trở nên khó khăn
Trước tình hình đó, tác giả đã tìm hiéu và phát hiện ra ưu điểm của dữ liệu tổng hoptrong việc hỗ trợ xây dựng các hệ thống máy học Dựa trên cơ sở đó, tác giả đã cảitiễn một số thuật toán đề tạo ra dữ liệu tổng hợp từ các dữ liệu mạng phổ biến có sẵnđược công khai nhằm làm tăng sé lượng dữ liệu, đa dang hóa, khái quát hóa các loại
tan công Từ đó hỗ trợ việc xây dựng nên các IDS máy học
Không chỉ những khó khăn trong dtr liệu, việc xây dựng các mô hình máy học còn
gap nhiều khó khăn trong việc lựa chọn thuật toán, xây dựng các lớp mạng neural
Do đó, cần một hệ thống dé có thé nhanh chóng đánh giá các mô hình này với dit liệu
thực tế bên cạnh các cách chia bộ huấn luyện và bộ kiểm thử truyền thống Từ đó, có
thể sớm đưa ra những quyết định chỉnh sửa phù hợp Xuất phát từ bài báo khoa học
“A Real-Time Evaluation Framework for Machine learning-based IDS” (đồng tácgiả) được đăng tại hội nghị RICE 2021 và những nghiên cứu, phát triển trong môn
22
Trang 23“Đồ án chuyên ngành” về một hệ thống đánh giá IDS dựa trên môi trường giả lập
mạng thực tế, tác giả đã tiến hành tích hop dữ liệu tong hợp vào hệ thống dé nâng cao
tính hiệu quả và đa dang cho hệ thống đánh giá
Những nghiên cứu trên bước đâu đã mang lại những dâu hiệu tích cực và sẽ được tác
giả trình bày chỉ tiết trong khóa luận này
23
Trang 24Chương 1 GIỚI THIỆU
Chương nay sẽ trình bày những thông tin cơ ban của đề tài: tên, đặt van dé, bốicảnh thực hiện, mục đích chính, đối tượng nghiên cứu và phạm vi nghiên cứu của đềtài Từ đó, cho ta cái nhìn tổng quan về phương hướng mà đề tài đã và đang được
thực hiện.
1.1 Tên đề tài
XÂY DUNG HE THONG ĐÁNH GIA ĐỘ HIEU QUA CUA IDS THONG
QUA DU LIEU TONG HOP
(Building an IDS Evaluation Framework using synthetic data)
1.2 Dat van dé
Thanh ngữ có câu “Thất Phu Vô Tội, Hoài Bich Có Tội”, ý chi kẻ thường dânvốn không có tội nhưng thân mang ngọc lại rước họa vào mình Trong ngành IT nói
chung và mạng máy tính nói riêng, những viên ngọc này chính là những giá trị tài
chính mà các dit liệu mang lại Đây chính là mục tiêu chủ yếu của các cuộc tan công.
Theo báo cáo “Data Breach Investigations” năm 2020 của tập đoàn Verizon, có đến86% các cuộc tấn công mạng có động cơ tải chính [1]
Hơn nữa, năm 2020, trong bối cảnh đại dịch COVID-19 đang hoành hành trêntoàn cầu Nhu cầu sử dụng Internet trong học tập và làm việc tăng cao Xu hướng làm
việc tử xa bang các dich vu hội nghị truyền hình trở nên phô biến Kèm theo đó là
những mối đe dọa an ninh mạng mới “Viên ngọc” không chỉ trong tay những công
ty tập đoàn lớn, mà giờ đây những doanh nghiệp vừa và nhỏ, các cá nhân cũng trở
thành miêng môi béo bở cho các cuộc tân công mạng.
Tháng 3 năm 2020, có đến 5.2 triệu khách hàng bị ảnh hưởng trong vụ vi phạm
an ninh mới của chuỗi khách sạn Marriot [2] Hay trong tháng 4, có đến hơn nửa triệu
tài khoản Zoom đã được rao bán trên Dark Web [3] Cũng trong năm 2020, Biden,
Gates, các tài khoản Twitter khác bị tấn công trong vụ lừa dao Bitcom [4]
24
Trang 25Cùng với sự phát triển của Internet vạn vật (Internet of Things — IoT), chúng ta
có nhiều thách thức hơn trong việc đảm bảo an toàn cho các thiết bị luôn được kết
nôi với Internet — nơi chứa đựng nhiêu môi nguy cơ tiêm ân.
Việc sử dung các hệ thống phát hiện và ngăn ngừa xâm nhập trở nên pho biến
dé ngăn ngừa các nguy cơ trên Trong đó việc phát triển các IDS máy học trở nên phốbiến hơn cả bởi những ưu thế của nó trong việc phát hiện xâm nhập Xong cơ hội thìvẫn ton tại những khó khăn Dữ liệu để phục vụ cho việc xây dựng các IDS máy học
còn hạn chế ở nhiều mặt: thiếu dữ liệu, thiếu đa dạng tấn công, dữ liệu thiếu cân bằng,
trùng lặp Không chi dừng lại ở dữ liệu mà các khó khăn còn xuất hiện trong việc lựa
chọn các thuật toán, kiến trúc máy học phù hợp với từng đặc trưng riêng của các mô
hình mạng khác nhau.
1.3 Mục tiêu của đề tài
e Tìm hiểu các kiến thức về IDS, máy học và những yếu tố liên quan trong việc
xây dựng các IDS chạy trên nền tảng máy học Những kiến thức về dữ liệu
tổng hợp và ứng dụng của nó
e Xây dựng hệ thống tao ra dữ liệu tổng hợp Dữ liệu được sinh ra từ một thuật
toán học sâu được huấn luyện với các bộ dữ liệu khác nhau và có thể trở thành
dữ liệu tấn công IDS với độ phức tạp cao Đây cũng là đóng góp chính của
luận văn.
e_ Tích hợp dữ liệu tông hợp vào hệ thống đánh giá IDS nhằm tao ra một công
cụ đánh giá đa dạng, có độ phức tạp cao hỗ trợ kiểm thử Từ đó giúp cho các
IDS có thể được điều chỉnh phù hợp, hoạt động chính xác, hiệu quả hơn
1.4 Đối tượng và phạm vi nghiên cứu
1.4.1 Đối tượng nghiên cứu
Khóa luận này hướng đến:
e Các hệ thong IDS, dữ liệu tan công dùng dé luyện tập và kiểm thử IDS
25
Trang 261.4.2 Phạm vi nghiên cứu
e Framework cho phép kiểm thử IDS
e Các thuật toán machine learning dùng trong IDS
26
Trang 27Chương 2 CƠ SỞ LÝ THUYET
Chương này trình bày về những lý thuyết được áp dụng trong quá trình thựchiện khóa luận, bao gồm những nội dung sau: Những kiến thức về hệ thống phát hiệnxâm nhập, máy học, hệ thong phát hiện dựa trên máy hoc Kiến thức về dataset và
một số dataset về tắn công mạng phô biến được sử dụng trong khóa luận Tổng quan
về dữ liệu tổng hợp và vai trò của nó Khái quát về Generative Adversarial Network
(GAN), cách thức hoạt động, phân loại và những mặt hạn chế của nó Cuối cùng lànhững kiến thức về đánh giá một IDS máy học và giới thiệu về một hệ thống đánh
giá IDS.
2.1 Hệ thống phát hiện xâm nhập
2.1.1 Tổng quan
Hệ thống phát hiện xâm nhập (Intrusion Detection System - IDS) là hệ thống
phần cứng, hoặc phần mềm dùng dé giám sát lưu lượng mạng, các hành vi đánh
giờ trên hệ thống nhằm đưa ra những cảnh báo sớm nhất về những hoạt động gây
nguy hai cho hệ thống, phát hiện tan công hoặc những dấu hiệu của một cuộc tấn
công.
Intrusion Detection System Intrusion Prevention System
Attacker | Attacker a
27
Trang 28Cần phân biệt IDS với IPS (Intrusion Prevention System), IDS có chức năng
phát hiện và ghi nhận thông tin còn IPS thì phát hiện và thực hiện ngăn chặn những
phát hiện đó.
Với IDS, các nhà Quản trị mạng hay Chuyên gia bảo mật hệ thống sẽ nâng
cao hơn khả năng an toàn thông tin cho mạng máy tính của mình, biết được khi
nào hệ thống đang bị tan công hay có kẻ xấu đang tiễn hành các hoạt động khanghỉ dé đưa ra được giải pháp hiệu quả, nhanh chóng [5]
Các thành phần chính của IDS:
e Thành phan thu thập gói tin (Information collection)
e Thành phan phân tích gói tin (Detection)
e Thành phan phản hồi (response) nếu gói tin đó được phát hiện là một
cuộc tan công
2.1.2 Phân loại
Hệ thống phát hiện xâm nhập được thiết kế đề triển khai trong các môi trườngkhác nhau Và giỗng như nhiều giải pháp an ninh mạng, IDS có thé dựa trên máy
chủ hoặc dựa trên mạng.
Dựa vào đặc trưng của IDS có thể chia làm các loại:
e Network-based IDS (NIDS): Sử dụng dữ liệu trên toàn bộ lưu thông
mạng cùng đữ liệu kiểm tra từ một hoặc một vài máy trạm dé phát hiện
xâm nhập.
28
Trang 29e Network node Intrusion detection system (NNIDS): NNIDS cũng hoạt
động như NIDS, tuy nhiên chúng chi áp dung với một máy chủ trong một
thời gian nhất định, chứ không phải trên toàn bộ mạng con
Dựa vào phương thức phát hiện, ta có:
e Signature-based: phát hiện các cuộc tân công băng cách tìm kiêm các
29
Trang 30mẫu cụ thể, chăng hạn như chuỗi byte trong lưu lượng mạng hoặc chuỗi
lệnh độc hại đã biết được phần mềm độc hại sử dụng
e Anomaly-based: dựa trên sự bất thường dé phát hiện các cuộc tan công
không xác định, do sự phát triển nhanh chóng của phần mềm độc hại.
Cách tiếp cận cơ bản là sử dụng máy học để tạo ra một mô hình hoạt
động đáng tin cậy, sau đó so sánh hành vi mới với mô hình này.
2.1.3 Ưu điểm
e_ Thích hợp sử dụng dé thu thập số liệu, bang chứng phục vụ công tác điều tra
và ứng cứu sự cố
e Dem đến cái nhìn bao quát, toàn diện về toàn bộ hệ thống mạng
e Là công cụ thích hợp phục vụ việc kiểm tra các sự cố trong hệ thống mạng
2.1.4 Nhược điểm
e Cần được cấu hình hợp lý, nếu không sẽ gây ra tình trạng báo động nhằm
e Khả năng phân tích traffic mã hóa tương đối thấp
e Chi phí phát triển và vận hành hệ thống tương đối cao
2.2 Máy học
2.2.1 Tổng quan
Máy học (Machine Learning) là thuật toán máy tính có thé giúp máy tính hiểu
và đưa ra kết quả, cách giải quyết vấn đề thông qua thực nghiệm hoặc các dữ liệu
có sẵn Máy hoc là một bộ phận của Trí tuệ nhân tạo (Artificial Intelligence - AT)
và bao gôm cả Học sâu.
30
Trang 31Artificial ( Machine Deep
Intelligence Learning Learning
Hình 2.4 Trí tuệ nhân tạo, Máy học và học sâu
AI là một ngành khoa học được sinh ra với mục đích làm cho máy tính có
được trí thông minh Đề kiếm chứng AI, phép thử Turing được đưa ra như một lý
thuyết phổ biến: Nếu một cỗ máy có thé tham gia vào một cuộc hội thoại với con
người mà không bị phát hiện là một cỗ máy, thì nó đã thể hiện được trí tuệ của con
nguoi.
Dữ liệu lớn (Big Data) không phải là một ngành khoa học chính thống Nóxuất hiện là kết quả tất yếu của thời kỳ bùng nô thông tin như hiện nay Sở di nóđược nhắc đến trong lĩnh vực máy học là vì nó là cơ sở để xây dựng nên các mô
hình máy học hiệu quả.
Máy học có mối liên hệ lớn tới thống kê, nó không chỉ giúp khái quát dữ liệu
mà còn có thé đưa ra các dự đoán tương đối chính xác về các trường hợp chưa xuất
hiện trong dữ liệu.
Nhờ những thành tựu về phần cứng giúp tăng cường năng lực xử lý, tính toáncủa máy tính, Học Sâu (Deep Learning) ra đời Nó có thể thực hiện những côngviệc tưởng chừng như không thé như phân loại ảnh, bắt chước tái tạo khuôn mặt
người
31
Trang 32AAA AAS: TOSS %4 TA L) Pas x cH \S THOU CÓ RAS UX SAQ NOY) <
TAY) YEON MO DU if \ 05 @
OR) My là tới Os: Nie a: x4
xế VN (ies ns Xây x? See
Hình 2.5 Mang Neural trong hoc sâu
2.2.2 Các thuật toán máy học cỗ điển
2.2.2.1 Decision Tree
Mỗi một nút trong (internal node) tương ứng với một biến; đường nối giữa
nó với nút con của nó thê hiện một giá tri cụ thê cho biên đó Mỗi nút lá đại diện cho giá trị dự đoán của biên mục tiêu, cho trước các giá tri của các biên được
biểu diễn bởi đường đi từ nút gốc tới nút lá đó Kỹ thuật học máy dùng trongcây quyết định được gọi là học bằng cây quyết định, hay chỉ gọi với cái tên ngắn
gọn là cây quyết định [6]
(a) (b)
32
Trang 33Hình 2.6 Thuật toán Machine Learning: Decision tree
Decision Tree là một thuật toán học có giám sát, có thể áp dụng cho các
bài toán phân loại hoặc dự đoán Sử dụng dữ liệu dé huấn luyện bang DecisionTree thực chất là đi xác định các câu hỏi và thứ tự của chúng Mục tiêu của
Decision Tree là gói gọn dữ liệu train trong cây nhỏ nhất có thể.
2.2.2.2 Logistic Regression
Logistic Regression (Hồi Quy Tuyến Tinh) là một mô hình nhằm dự đoán
giá trị đầu ra rời rac y tương ứng với vector đầu vào x Logistic Regression có
nhiều nét tương đồng với Linear Regression là đưa ra một đường dự đoán phân
loại các nhóm với nhau, nhưng có sự khác biệt trong các hàm tính toán.
Linear Regression Logistic Regression
Hình 2.7 So sánh Linear Regression va Logistic Regression
Thuật toán Machine Learning nay được vay mượn từ xác suất thống kê,được sử dụng dé tính kha năng phân loại [0,1] với đầu vào dữ liệu cụ thể,trong đó thuật toán được biểu diễn dựa trên hàm Logistic Funtion (hàm
sigmoid cua logarit tu nhién).
2.2.2.3 Naive Bayes
La một thuật toán giúp phan lớp dữ liệu dựa trên định ly Bayes (Dinh ly
Bayes cho phép tính xác suất xảy ra của một sự kiện ngẫu nhiên A khi biết sựkiện liên quan B đã xảy ra Xác suất này được ký hiệu là P(A|B), và đọc là "xác
33
Trang 34suất của A nếu có B" Đại lượng này được gọi xác suất có điều kiện hay xácsuất hậu nghiệm vì nó được rút ra từ giá trị được cho của B hoặc phụ thuộc vàogiá trị đó [7]) với giả định độc lập giữa các yếu tố dự đoán Nói một cách đơngiản, bộ phân loại Naive Bayes giả định rằng sự hiện diện của một tính năng cụ
thể trong một lớp không liên quan đến sự hiện diện của bất kỳ tính năng nào
khác
2.2.2.4 K-nearest neighbor
K-nearest neighbor (KNN) là một trong những thuật toán học có giám sát
đơn giản có thé áp dụng cho dự đoán hoặc phân loại dữ liệu KNN là thuật toán
đi tìm đầu ra của một điểm dữ liệu mới bằng cách chỉ dựa trên thông tin của K
điểm dữ liệu trong training set gần nó nhất (K-lân cận), không quan tâm đến
việc có một vài điểm dữ liệu trong những điểm gan nhất này là nhiễu.
Các bước trong KNN [8]
e Ta có D là tập các điểm dữ liệu đã được gắn nhãn và A là dữ liệu chưa
được phân loại.
34
Trang 35e Do khoảng cách (Euclidian, Manhattan, Minkowski, Minkowski hoặc
Trọng s6) từ đữ liệu mới A đến tat cả các dit liệu khác đã được phân loại
trong D.
e Chọn K (K là tham số mà bạn định nghĩa) khoảng cách nhỏ nhất
e Kiểm tra danh sách các lớp có khoảng cách ngắn nhất và đếm số lượng của
mỗi lớp xuất hiện
e Lấy đúng lớp (lớp xuất hiện nhiều lần nhất)
e Lớp của dữ liệu mới là lớp ma bạn đã nhận được ở bước 5.
2.2.2.5 Random Forest
Ý tưởng cơ bản của Random Forest là xây dự nhiều cây quyết định
(Decision Tree), tuy nhiên mỗi cây sẽ có thêm yếu tố ngẫu nhiên khiến chúngtrở nên khác nhau Sau đó kết quả được tông hợp từ các cây quyết định đó
X
lreet frees ˆ “ae frees
voting (in classification) or averaging (in regression)
|
k
Hình 2.9 Cách hoạt động của thuật toán Random Forest
Trong thuật toán Decision Tree, khi xây dựng cây quyết định nếu đề độ
sâu tùy ý thì cây sẽ phân loại đúng hết các dữ liệu trong tập training dẫn đến mô
hình có thé dự đoán tệ trên tập validation/test, khi đó mô hình bi overfitting, hay
nói cách khác là mô hình có high variance.
35
Trang 36Thuật toán Random Forest gồm nhiều cây quyết định, mỗi cây quyết định
đêu có những yêu tô ngâu nhiên:
e Lấy ngẫu nhiên dữ liệu dé xây dựng cây quyết định
e Lấy ngẫu nhiên các thuộc tinh dé xây dựng cây quyết định
Do mỗi cây quyết định trong thuật toán Random Forest không dùng tắt cả
dữ liệu training, cũng như không dùng tat ca các thuộc tính của dit liệu để xây
dựng cây nên mỗi cây có thể sẽ dự đoán không tốt, khi đó mỗi mô hình câyquyết định không bị overfitting mà có thé bi underfitting, hay nói cách khác là
mô hình có high bias Tuy nhiên, kết quả cuối cùng của thuật toán RandomForest lại tong hợp từ nhiều cây quyết định, thế nên thông tin từ các cây sẽ bổsung thông tin cho nhau, dẫn đến mô hình có low bias và low variance, hay môhình có kết quả dự đoán tốt [9]
2.2.3 Các thuật toán học sâu
Các thuật toán học sâu được xây dựng trên cơ sở mạng neural (Neural
Network) nên sự khác biệt năm ở việc sử dụng các layer đặc trưng
2.2.3.1 Deep neural Network
Deep neural Network (DNN) là hệ thống cấu trúc thần kinh phức tap gồmnhiều đơn vị neural network mà trong đó, ngoài các lớp nguồn vào (input),nguồn ra (output) thì có hơn một lớp ân (hidden layer)
36
Trang 37© Input @ Hidden @ Output
Hinh 2.10 So sinh ANN va DNN
Trong mô hình ANN thông thường ngoài Input va Output layer, ta chi có
1 hidden layer Còn trong DNN thi có thé có nhiều hidden layer Việc có thêm
hidden layer giúp việc dự đoán chính xác hơn nhưng thời gian cần thiết dé huấn
luyện cũng dài hơn.
2.2.3.2 Convolutional Neural Network
Convolutional Neural Network (CNN) với đặc trưng là Convolutional
layer, đây là là lớp đầu tiên đề trích xuất các đặc trưng từ hình ảnh dau vào Tích
chập duy trì mỗi quan hệ giữa các pixel bang cách tìm hiểu các đặc trưng hình
ảnh dựa trên một ma trận nhỏ gọi là filter.
Hinh 2.11 Convolutional layer va anh sốc
37
Trang 38Các convolutional layer có các parameter(kernel) đã được học dé tự điều
chỉnh lay ra những thông tin chính xác nhất mà không cần chọn các feature
Mạng CNN là một tập hợp các lớp Convolution chồng lên nhau và sử dụngcác ham nonlinear activation như ReLU và tanh dé kích hoạt các trọng số trong
các node Mỗi một lớp sau khi thông qua các hàm kích hoạt sẽ tạo ra các thông
tin trừu tượng hơn cho các lớp tiếp theo [10]
2.2.3.3 Recurrent Neural Network
Recurrent Neural Network (RNN) là mang Neural bên trong chứa vòng
lặp nên có thé ghi nhớ thông tin từ những bước tính toán xử ly trước dé dựa vào
nó có thê đưa ra dự đoán chính xác nhât cho bước dự đoán hiện tại.
)
©
Hinh 2.12 Vong lap trong RNN
Một vòng lặp cho phép thông tin có thé được truyền từ bước nay qua bước
này qua bước khác của mạng nơ-ron.
RNN được ứng dụng và thành công ở rất nhiều bài toán, đặc biệt là ở lĩnh
vực NLP (xử lý ngôn ngữ tự nhiên) Trên lý thuyết thì đúng là RNN có khả năng
nhớ được những tính toán (thông tin) ở trước nó, nhưng mô hình RNN truyền
thông không thể nhớ được những bước ở xa do bị mat mát đạo ham (sẽ được đề
cập ở bài sau) nên những thành công của mô hình này chủ yếu đến từ một mô
hình cải tiến khác là LSTM (Long Short-Term Memory, sẽ được đề cập ở những
bài sau) LSTM về co bản cũng giống với RNN truyền thống ngoài việc thêmcác công tính toán ở hidden layer dé quyết định giữ lại các thông tin nào [11]
38
Trang 392.2.3.4 Long Short Term Memory
Long Short Term Memory (LSTM) thường được gọi là LSTM - là một dạng đặc biệt của RNN, nó có khả năng học được các phụ thuộc xa Việc nhớ
thông tin trong suốt thời gian dài là đặc tính mặc định của chúng, chứ ta không
cân phải huân luyện nó đê có thê nhớ được Tức là ngay nội tại của nó đã có thê
Hình 2.13 Cấu trúc LSTM
Chìa khóa của LSTM là trạng thái tế bào (cell state) - chính đường chạy
thông ngang phía trên của sơ đồ hình vẽ
Hình 2.14 Đường chạy của LSTM
Trạng thái tế bào là một dạng giống như băng truyền Nó chạy xuyên suốttất cả các mắt xích (các nút mạng) và chỉ tương tác tuyến tính đôi chút Vì vậy
mà các thông tin có thé dé dàng truyền đi thông suốt mà không sợ bị thay đối
39
Trang 402.2.3.5 CNN LSTM
Mang Neural chứa CNN và LSTM layer Trong đó CNN có nhiệm vụ trích
Hình 2.15 Sơ đồ các lớp cơ bản của CNN LSTM
CNN LSTM được phát triển đề giải quyết bài toán dự đoán chuỗi thời gian
trực quan và ứng dụng trong việc mô tả văn bản từ chuỗi hình ảnh (video).
Một số ứng dụng của CNN LSTM có thê ké đến như:
e Nhận dạng hành động: Dùng đề mô cả các hành động dựa trên một
chuỗi ảnh.
e Mô tả hình anh: Tạo ra mô tả chỉ tiết cho một hình ảnh
¢ Mô tả video: Tao ra mô tả cho một chuỗi các ảnh (video).
2.2.3.6 Gated Recurrent Unit
Gated Recurrent Unit (GRU) được coi là phiên bản cải tiễn của mạng RNN
truyền thống và cũng là một biến thể của LSTM vì cả hai được thiết kế tương
tự nhau trong một số trường hợp, kết quả có thé tốt tương tự nhau GRU đã sử
dụng công cập nhật và công cài đặt lại (update gate và reset gate) dé quyét dinh
thông tin nào sẽ được truyền cho dau ra.
40