Không, chúng ta không có những người máy tự động có thê chống lại con người - chưa - nhưng chúng ta đang ngày càng tiền gần hơn với những gì người fa có xu hướng gọi là "trí tuệ nhân tạo
Trang 1BO GIAO DUC VA DAO BO NONG NGHIEP VA
NGHIEN CUU PHUONG PHAP TANG CUONG ANH
CHO BAI TOAN PHAT HIEN KHUON MAT
KHOA LUAN TOT NGHIEP
HÀ NỘI, NĂM 2023
Trang 2BO GIAO DUC VA DAO BO NONG NGHIEP VA
TRUONG DAI HOC THUY LOI
DO PHI LONG
NGHIEN CUU PHUONG PHAP TANG CUONG ANH
CHO BAI TOAN PHAT HIEN KHUON MAT
Ngành: Công nghệ thông tin
Mã số: 1951060822
NGƯỜI HƯỚNG DÂN: Ths Nguyễn Thị Phương Thảo
HÀ NOI, NAM 2023
Trang 3LOI CAM DOAN
Tac gia xin cam doan day là Đồ án tốt nghiệp/ Khóa luận tốt nghiệp của bản thân tác giả Các kết quả trong Đồ án tốt nghiệp/Khóa luận tốt nghiệp này là trung thực, và không sao chép từ bất kỳ một nguồn nào và dưới bất kỳ hình thức nao Viéc tham khảo các nguôn tài liệu (nêu có) đã được thực hiện trích dẫn và ghi nguồn tài liệu tham khảo đúng quy định
Tac gia KLTN Chữ ký
Đỗ Phi Long
Trang 4LOI CAM ON
Trang 5MUC LUC
DANH MỤC CÁC HÌNH ẢNH 52252 2122112211222122112211221211212212122 re 5 DANH MỤC CÁC BẢNG BIỀU 2-52 221 2122212211221122112112211121127121211212 ae 7 DANH MỤC CÁC TỪ VIẾT TAT VA GIAI THICH CAC THUẬT NGỮ 8 CHUGNG I GIGI THIEU Loo cccccscccssecssseesssssssessesssvessvesssesssessressvesssesssessrestensssesssessseesaeeeers 9 1.1 Ly do chon dé tabeec.cccccccccccccccsccscescssesssssscsssstssvssesssseseesecevssvsecsvssteecssveesetsevevsees 9 1.2 Mure tidu, pham Vice ccc c1 2012211121115 1151115511511 1111111511111 10
1.3 Đối tượng nghiên CỨU - 5 SE 1 12121121 1.2121 trường 10 CHƯƠNG II CƠ SỞ LÝ THUYYÉT 222222221 92E22221221122112711121127111121 211.128.112 e6 12
2.1 Tổng quan về học máy 5s SE 1121112112111 1 1.11010111112111 Eerye 12
2.1.1 Sự ra đời của học máy 2 120 2211112111211 11119 18111 1 ren hưu 12
2.1.2 _ Khái niệm của học máy - -.- 1 221112122111 12 1151111111512 8111k hưyn l6
2.1.3 _ Quá trình tự học của học máy - 22c 1211122112 2112115 2 ke 18
2.1.4 Các phân loại của học máy - c1 2c 2221121111121 15 11 115 E5 111 rườ 21
2.2 Tổng quan về mạng CNN - c2 1 1E 12121 1121 1 tr gen 28
2.2.1 Dinh nghia vé mang CNN ceccccsccecescescssessesessvsscseesvescssesessesevevsensevevseseeees 28
2.2.2 Cac lop cơ bản của mạng CNN 0Q 22122 1n nen re 29
2.2.3 Câu trúc của mạng CNN -c c1 112121211 2tr re 31
2.2.4 _ Tại sao CNN thường dùng đề xử lý ảnh -sc Street 33
2.3 Tổng quan về VGGIÓ - St 1EE121111E1121111 121 110121 rờg 34 2.3.1 LỊch sử ra ỚÒI 2Q n HH TT HT TT TT ng TK kh ng 34
2.3.2 Kiến trúc VGGI6 22 2S 221 2122112112221121 2211211 re 35 2.3.3 Câu hình, đào tạo và kết quả VGGIÓ 5c t2 12t 1g rye 37 CHƯƠNG III XÂY DỰNG MÔ HÌNH 22222 2 222122112211271122112212.11 2E e6 39
Trang 63.1 Chi tit DAL COAL ccc ce ccccccccccececcscseseseseseseseseevevevesessscevevesesesesssesesesecssevavsssesesees 39 3.2 Cach m6 hinh chuyén d6i c.ccccccccccccccscescssesseseescssestssessvsesstsevsesseseesesvsvsteevees 41
3.2.1 _ Các phép xử lý ảnh cơ bản 2 2112111112112 2112 112821211 He 44
3.2.2 Chuyên đổi ảnh dựa trên mô hình 222 2S S25 255 1551151155 tre Hee 45
3.2.3 Nâng cao tính chân thật - 2 2112121212111 1111211521111 15812 key 48
3.2.4 Tăng cường ảnh trong thực tẾ - + c2 E2 HH HH re 50 3.3 Tài nguyên sử dỤụng T1 n1 112112 1 HH HH kh ghe rớt 31
3.3.1 Thur Viti ccc ccc cecececceccccccccccccccveeeecstttttttsceeeeeecccecesseessstttttttiseesanaeess 51
Trang 7DANH MỤC CÁC HÌNH ẢNH Hình 2 I: Trí tuệ nhân tạo chiến thằng trước nhà vô địch Cờ Vây, 5c các se: 15
Hình 2 2: Sơ đồ téng quan cta hoc May .cccccccsccsccssescesessessesessesscsessesscsresesecsevevsenseveeees 16
Hinh 2 3: Qua trinh tự học của học máy - L2 211122112211 11112215 111112 1H ườ 18
Hình 2 4: Quá trình tăng cường của mô hình học máy - 0 2c 2222k re 19
Hình 2 5: Mô hình học có giám sát - 020022211 1211121 1112111211111 111115011111 22 Hình 2 6: Kết quả quá trình phân cụm đữ liệu - 2 2 22 112212222222 re xe2 25
Hình 2 7: Ví dụ về tập dữ liệu Moons cho bài toán phân loại nhị phân 26 Hình 2 8: Ranh giới quyết định học tập có giám sát và phân cụm không giám sát 27 Hinh 2 9: CNN 1a gi 28
Hinh 2 10: Cac lớp cơ bản của mạng CÌNN 0 21021122 122 11H re 30 Hình 2 I1: Cầu trủc mạng CNN St E1 2112211122221 H21 rêu 32 Hình 2 12: Cầu trúc ảnh màu và ảnh xám : 55: 22v tEEEttrrtrrrrrtrrrrtrrrrrririe 34
Hình 2 13: Kiến trúc VGG]Ó6 - 22-52 21225122122112112112112112112212112112112121 re 35 Hình 2 14: Các kiến trúc mạng có thê có trong VGGIÓ6 St xe re 37
Hình 2 15: Tỉ lệ lỗi của kiến trúc VGG6 -cccccc2thttx nh ye 38
Hình 3 1: Minh họa về phương pháp tăng cường khuôn mặt - 2c scccszxszzse2 4]
Hình 3 2: Các kiêu đữ liệu khuôn mặt thường được biến đổôi - 552cc 43 Hình 3 3: Các ví đụ về phép biến đổi hình học 5 ST HE 21252512 E181 Hee 44
Hình 3 4: Các ví dụ về phép biến đôi quang học - St E2 11212211 te terrrv 44
Hình 3 6: Trực quan hóa hình dạng của LSFM 2L 201212222 2H rờ 47
Hình 3 7: Tái tạo khuôn mặt dựa trên 3DMM Hình ảnh bên trái là hình ảnh 2D gốc Sau khi tái tạo khuôn mặt 3D, có thé tạo biểu cảm khuôn mặt, bóng và tư thế mới 48 Hình 3 8: Phương pháp cải thiện khuôn mặt bằng mô hình chuyên động Hình bên phải
có nhiều chỉ tiết khuôn mặt hơn so với bên trái Ví dụ nếp nhẫm ccc các cà cnnnses 49
Hình 3 9: Mô hình đường dẫn kép gồm đường dẫn cục bộ và đường dẫn toàn cục 50
Hình 3 10: Ứng đụng công nghệ AR đề tăng cường ánh - 5c tren re 51
Trang 8Hình 3 II: Tăng cường ảnh sử dụng albumenftatIons - ác S222 xe 54 Hình 3 12: Minh hoa tăng cường anh str dung albumentations 0 00 0 ccs 55 Hình 4 1: Kết quả tăng cường ảnh với albumenfations - 2 sccs te re 58 Hình 4 2: Thông số mô hình VGGI6 22 2 222212211221221222122122712212271222122 1 xe 59 Hình 4 3: Đồ thị minh họa chỉ số loss sau quá trình huấn luyện của mô hình phân loại và
Trang 9DANH MUC CAC BANG BIEU Bang 1: Chi s6 MSE và PSNR của ảnh gốc và các ảnh tăng cường
Trang 10DANH MUC CAC TU VIET TAT VA GIAI THICH CÁC THUẬT NGỮ
CNN Convolutional Neural Network | Mang no ron tích chập
VGGI16_ | Visual Geometry Group 16 Mang no ron sâu có l6 lớp
PCA Principal Component Analysis Phan tich thanh phan chinh
GAN Generative Adversarial Network | Kiên trúc mạng nơ-ron đôi nghịch
PSNR Peak Signal-to-Noise Ratio Tỉ lệ tín hiệu tạp âm
MSE Mean Squared Error Sự chênh lệch giữa giá trị dự đoán và
giá trị thực tế trong một tập dữ liệu
AAM Active Appearance Model Mô hình xuât hiện hoạt động
3DMM _ | 3D Morphable Model Mô hình biên đôi 3D
LSFM Large Scale Face Model Mô hình khuôn mặt quy mô lớn
Trang 11
CHUONG I GIỚI THIỆU
Đây là một tài liệu quan trọng với mục tiêu nghiên cứu các phương pháp tăng
cường ánh dé cai thiện hiệu suất trong việc phát hiện khuôn mặt Bài toán này không chỉ đòi hỏi khả năng nhận diện chính xác mà còn cần sự ôn định va đáng tin cậy trong môi
trường đa dạng về ánh sáng, góc chụp và điều kiện môi trường
Tài liệu này tập trung vào việc phân tích, so sánh và áp dụng các phương pháp tăng cường ảnh đề tối ưu hóa quá trình phát hiện khuôn mặt Qua việc nghiên cứu sâu và thử nghiệm thực tiễn, hy vọng sẽ đưa ra những phát hiện mới về cách tiếp cận tăng cường ảnh
có thê cải thiện độ chính xác và độ tin cậy của hệ thông phát hiện khuôn mặt trong nhiều điều kiện khác nhau
Cau tric KTLN bao gồm ba phần: phần mở đầu, phần nội dung và phần phụ lục
1.1 Lý do chọn đề tài
Với thời đại công nghệ hóa hiện đại hóa, nhận điện khuôn mặt là một phần không thê
thiếu trong nhiều ứng dụng, từ hệ thông an ninh đến công nghệ nhận dạng cá nhân Việc
cải thiện độ chính xác và độ tin cậy của việc phát hiện khuôn mặt có thé mang lại những
tiễn bộ đáng kê trong các lĩnh vực này Việc chọn đề tài "Nghiên cứu phương pháp tăng cường ảnh cho bài toán phát hiện khuôn mặt" có nguồn gốc từ sự nhận thức rõ ràng về
tính quan trọng của việc nhận diện khuôn mặt trong nhiều lĩnh vực, từ an ninh đến công
nghệ thông tin và thậm chí trong cuộc sống hàng ngày
Tuy nhiên, khuôn mặt thay đôi về góc chụp, ảnh sáng, độ nghiêng, và có thể bị che
khuất Với những điều kiện bên ngoài tác động, nhận điện khuôn mặt luôn tồn tại những điểm yếu như khó nhận dạng, không thể nhận dạng và nhận dang sai
Vì vậy, việc cải thiện phương pháp phát hiện khuôn mặt có ảnh hưởng rất lớn đối với các ứng dụng thực tế, từ hệ thông an ninh đến các ứng dụng di động, giúp tăng cường trải nghiệm người dùng và đảm bảo an toàn, bảo mật thông tin cho người dùng
Trang 121.2 Muc tiéu, pham vi
Để có một kết quả tốt nhất cho quá trình nghiên cứu, nhóm đã đặt ra cho mình những
mục tiêu cần đạt được và phạm vi thực hiện đề đạt được mục tiêu đó Cụ thê:
Các mục tiêu chính:
Pham vi:
Tìm hiều bộ dữ liệu nhận dạng khuôn mặt
Nghiên cứu các phương pháp tăng cường ảnh và áp dụng cho bộ đỡ liệu
Tìm hiểu và cài đặt mô hình VGG
Đánh giá độ chính xác
Tập trung vào việc nghiên cứu các phương pháp tăng cường ảnh dựa
trên xử lý ảnh và các kỹ thuật học máy dé cai thiện việc phát hiện khuôn
mặt
Sử dụng tập đữ liệu đa dạng đề đánh giá hiệu suất của các phương pháp
và thuật toán được đề xuất
Phân tích sâu về độ chính xác, độ tin cậy và độ ôn định của hệ thông
phát hiện khuôn mặt sau khi áp dụng các phương pháp tăng cường ảnh Phạm vi cũng bao gồm việc đề xuất các cải tiền và hướng phát triển tiếp theo để tối ưu hóa quá trình phát hiện khuôn mặt dựa trên kết quá nghiên
cứu thu được
1.3 Đối tượng nghiên cứu
Đề hoàn thành tốt dé tài nghiên cứu,nhóm đã tập trung vào các mục tiêu nghiên cứu chính sau, nhằm đảm bảo chất lượng và tăng cường sự hiêu biết của mình về mô hình
® Khuôn mặt: Đây là trọng tâm chính của nghiên cứu Khuôn mặt là đối tượng
được phân tích và nhận diện thông qua các công cụ và thuật toán trong học máy
và xử lý ảnh
ll
Trang 13® - Dữ liệu hình ảnh: Bộ dữ liệu chứa các hình ảnh chứa khuôn mặt, đủ đa dạng về
độ tuôi, giới tính, góc chụp, ánh sáng, và điều kiện môi trường khác nhau Dữ
liệu này sẽ được sử dụng đề huấn luyện và kiểm tra hiệu suất của mô hình
¢ M6 hinh VGG16: Day la mét kién tric mang no-ron sau (deep neural network) được sử dụng rộng rãi trong xử lý ảnh Mô hình này có khả năng học các đặc trưng cấp cao từ hình ảnh, giúp trong việc nhận diện khuôn mặt
®© Công cụ Học máy: Sử dụng các thuật toán và kỹ thuật học máy đề huấn luyện
mô hình, đánh giá và tôi ưu hóa hiệu suất nhận điện khuôn mặt
© Đánh giá hiệu suất: Phần này bao gồm các phương pháp đánh giá hiệu suất của
mô hình như độ chính xác (accuracy), độ nhạy (sensttivity), độ đặc hiệu (specificity), va cac d6 do Fl-score, ROC curve để đánh giá khả năng nhận
điện và phân loại khuôn mặt
°® Ứng dụng thực tế: Đối tượng nghiên cứu cũng có thể liên quan đến việc áp
dụng kết quả của mô hình nhận diện khuôn mặt vào các ứng dụng thực tế như
hệ thống an ninh, công nghệ nhận dạng, hay trong lĩnh vực y tế và giáo dục Đối tượng nghiên cứu này tập trung vào việc áp dụng Học máy và Xử lý Ảnh, đặc biệt là
mô hình VGGI6, đẻ cái thiện khả năng nhận diện khuôn mặt và có thể có ứng dụng rộng
rai trong nhiéu linh vuc khac nhau
12
Trang 14CHUONG II CO SO LY THUYET
2.1 Tổng quan về học máy
2.1.1 Sự ra đời của học máy
Sẽ là rất thú vị nêu đặt câu hỏi liệu giấc mơ về người máy của con người có thành sự
thật, nhưng trên thực tế khoa học đã phát triển đến một điểm mà nó bắt đầu trùng với
khoa học viễn tưởng Không, chúng ta không có những người máy tự động có thê chống lại con người - chưa - nhưng chúng ta đang ngày càng tiền gần hơn với những gì người fa có xu hướng gọi là "trí tuệ nhân tạo."
Machine Learning — hay còn gọi là học máy - là một tập con của trí tuệ nhân tạo, nơi
mà các thuật toán máy tính được sử dụng để tự học từ dữ liệu và thông tin Trong
machine learming, các máy tính không cần phải được lập trình một cách rõ ràng nhưng
có thê tự thay đổi và cải thiện các thuật toán của chúng
Hiện nay, các thuật toán machine learning cho phép máy tính có thê giao tiếp với con
người, xe hơi tự lái, viết và xuất bản tường thuật các trận đầu thê thao, và tìm thay kẻ
tình nghi khủng bó Tôi tin chắc rằng machine learning sẽ tác động một cách sâu sắc đến mọi ngành công nghiệp và các công việc liên quan đến chúng, đó là lý do tại sao mọi nhà quán lý cần phái có ít nhất một số kiến thức về machine learning và nó đã phát trién như thé nao
Trong phần này này sẽ cung cấp một sơ lược theo thời gian về lịch sự hình thành của machine learning cũng như các sự kiện quan trọng gần đây nhất
1950 - Nha bac hoc Alan Turing di tao ra "Turing Test (phép thir Turing)" dé xac dinh xem liệu một máy tính có trí thông minh thực sự hay không Đề vượt qua bai kiêm tra đó, một máy tính phải có khả năng đánh lừa một con người tin rằng nó cũng là con người
13
Trang 151952 - Arthur Samuel da viét ra chuong trinh hoc may (computer learning) dau tién Chương trình nay là trò choi co dam, va hang may tinh IBM đã cải tiến trò chơi nay đề nó có thê tự học và tô chức những nước đi trong chiến lược dé gianh chiến thắng
1957 - Frank Rosenblatt đã thiết kế mạng nơron (neural network) đầu tiên cho máy tính, trong đó mô phỏng quá trình suy nghĩ của bộ não con người
1967 - Thuật toán "nearest neighbor" đã được viết, cho phép các máy tính bắt đầu sử dụng những mẫu nhận dạng (pattern recognition) rất cơ bản Nó được sử dụng
đề vẽ ra lộ trình cho một người bán hàng có thể bắt đầu đi từ một thành phố
ngẫu nhiên nhưng đảm bảo anh ta sẽ đi qua tất cả các thành phố khác theo một quãng đường ngắn nhất
1979 - Sinh viên tại trường đại học Stanford đã phát minh ra giỏ hàng "Stanford Cart"
có thê điều hướng đề tránh các chướng ngại vật trong một căn phòng
1981 - Gerald Dejong giới thiệu về khái niệm Explanation Based Learning (EBL), trong đó một máy tính phân tích đữ liệu huấn luyện và tạo ra một quy tắc chung
đề nó có thê làm theo bằng cách loại bỏ đi những dữ liệu không quan trọng
1985 - Terry Sejnowski đã phát minh ra NetTalk, nó có thể học cách phát âm các từ giống như cách một đứa trẻ tập nói
1990s - Machine Leaming đã dịch chuyên từ cách tiếp cận hướng kiến thức (knowledge-driven) sang cách tiếp cận hướng đữ liệu (data-driven) Các nhà khoa học bắt đầu tạo ra các chương trình cho máy tính để phân tích một lượng
lớn đữ liệu và rút ra các kết luận - hay là "học” từ các kết quả đó
1997 - Deep Blue của hãng [BMI đã đánh bại nhà vô địch cờ vua thế gidi
14
Trang 162006 - Geoffrey Hinton da dua ra mot thuat ngit "deep learning” dé giai thích các thuật toán mới cho phép máy tính "nhìn thấy" và phân biệt các đối tượng và văn bản trong các hình ảnh và video
2010 - Microsoft Kinect có thể theo dõi 20 hành vi của con người ở một tốc độ 30 lần
mỗi giây, cho phép con người tương tác với máy tính thông qua các hành động
và cử chỉ
2011 - Máy tính Watson của hãng IBM đã đánh bại các đối thủ là con người tại Jeopardy
2011 - Google Brain đã được phát triển, va mang deep noron (deep neural network) cia
nó có thê học đề phát hiện và phân loại nhiều đối tượng theo cách mà một con mèo thực hiện
2012 - X Lab của Google phát triển một thuật toán machine learming có khả năng tự
động duyệt qua các video trên YouTube để xác định xem video nào có chứa
những con mèo
2014 - Facebook phát triển DeepFace, một phần mềm thuật toán có thê nhận dạng hoặc xác minh các cá nhân dựa vào hình ảnh ở mức độ giống như con người có thể
2015 - Amazon ra mat nén tang machine learning riéng cla minh
2015 - Microsoft tao ra Distributed Machine Learning Toolkit, trong do cho phép phan phôi hiệu quả các vân dé machine learning trên nhiêu máy tính
2015 - Hơn 3.000 nhà nghiên cứu AI và Roboties, được sự ủng hộ bởi những nhà khoa
học nổi tiếng như Stephen Hawking, Elon Musk và Steve Wozniak (và nhiều người khác), đã ký vào một bức thư ngỏ để cảnh báo về sự nguy hiểm của vũ
khí tự động trong việc lựa chọn và tham gia vào các mục tiêu mà không có sự
can thiệp của con người
15
Trang 17được cho là trò chơi phức tạp nhất thế giới (khó hơn trò chơi cờ vua rất nhiều) Thuật toán AlphaGo được phát triển bởi Google DeepMind đã giành chiến thắng 4/5
trước nhà vô địch Cờ Vậy
Hình 2 1: Tri tuệ nhân tạo chiến thằng trước nhà võ địch Cờ Wây
Vay thì chúng ta đã tiến gần hơn đến trí tuệ nhân tạo? Một số nhà khoa học cho rằng đó thực sự là một câu hỏi sa1
Họ tin rằng một máy tính sẽ chăng bao giờ "nghĩ" theo cách của bộ não con người, và việc so sánh giữa khả năng phân tích tính toán và thuật toán của một máy tính với tâm trí con người thì cũng giống như việc so sánh quả tảo và quả cam vậy
Bất chấp điều đó, các khả năng của máy tính trong việc xem, hiểu và tương tác với thế giới xung quanh chúng đang phát triển với một tốc độ đáng kẻ Và khi lượng dữ liệu chúng ta tạo ra tiếp tục lớn lên theo cấp số nhân, thì khả năng của máy tính trong việc
xử lý và phân tích - học từ kết quả đó - cũng ngày càng phát triển và mở rộng
l6
Trang 182.1.2 Khái niệm của học máy
Theo IBM - tập đoàn tin học lớn nhất thê giới, học máy là một nhánh của trí tuệ nhân tạo (AI) và khoa học máy tính, tập trung vào việc sử dụng đữ liệu và thuật toán dé bat chước cách con người học, dân dân cái thiện độ chính xác của nó
Theo một định nghĩa khác mang tính toán học hơn thì machine learning sử dụng data, thuật toán đầu vào đề tự xử lý các vấn đề và liên tục tối uu dé tạo ra những phương án
xử lý mới, hiệu quả hơn; giông như cách thức tự học của não bộ con người
Thống kê và dự đoán là 2 mục đích chính của việc áp dung machine learning vi thế hệ
thống này được thiết kế với khả năng tự nghiên cứu, cải tiền bản thân dựa trên những nguyên lý được lập trình ban đầu Trong nhiều trường hợp machine learning sẽ tự đề xuất ra giải pháp tối ưu mà không cần được lập trình trước Có thê nói Machine
Learning giống như l người lao động với khả năng tự học, hoàn thiện và giàu kmh
nghiệm hơn theo thời gian
Machine Learning
Unsupervised
Feature Machine Learning
% EI Extraction Algorithm Grouping
Hình 2 2: Sơ đồ tổng quan của học máy
Những yếu tổ quan trọng trong quá trình học máy bao gồm:
- _ Trích xuất đặc trưng (Feature Extraction): Day la qua trình lựa chọn và biến
đổi đữ liệu đầu vào thành các đặc trưng thích hợp dé str dụng trong mô hình
17
Trang 19máy tính Ví dụ, trong xử lý ngôn ngữ tự nhiên, việc chuyền đổi văn bản thành
các biểu đồ từ khóa có thê là một bước trích xuất đặc trưng
- - Thuật toán Học máy (Machine Learning Algorithm): Đây là phần cốt lỗi của quá trình học máy, bao gồm các thuật toán và phương pháp đề xây dựng mô hình từ dữ liéu Vi du, Support Vector Machines (SVM), Decision Trees, hoac Neural Networks
- Nhóm các đối tượng (Group of Objects): Học máy thường được sử dụng để phân loại hoặc gom nhóm các đối tượng dựa trên các đặc trưng của chúng Ví
dụ, trong phân loại hình ảnh, các đối tượng có thể được phân loại thành các lớp
khác nhau như "mèo," "cho," "xe hoi,” vv
- Mô hình dự đoán (Predicdve Model): Mô hình máy tính học từ đữ liệu huấn
luyện và được sử dụng để dự đoán kết quả cho đữ liệu mới Ví dụ, một mô hình
dự đoán giá cô phiêu dựa trên đữ liệu lịch sử
- _ Dữ liệu có nhãn (Annotated Data): Dữ liệu có nhãn là tập hợp đữ liệu mà mỗi
ví dụ đã được gán nhãn đề sử dụng trong việc huấn luyện và kiểm tra mô hình
Ví dụ, các đánh giá sản phâm trực tuyến được gan nhãn là "tốt" hoặc "xấu" để
xây dựng một mô hình đánh giá sản phẩm
Học máy đã thay đổi cách chúng ta giải quyết nhiều vẫn đề phức tạp và đã có những ứng dụng rất quan trọng trong thế giới thực Ví dụ, hệ thống phát hiện gian lận trong
giao dịch tài chính, chatbot trả lời tự động trong dịch vụ khách hàng, và các hệ thông tự
động lái xe là các ứng dụng tiêu biểu của học máy
18
Trang 202.1.3 Quá trình tự học của học máy
Như đã nói phản trên, có thê nói Machine Learning giống như l người lao động với khả năng tự học, hoàn thiện và giàu kinh nghiệm hơn theo thời gian Cụ thê thì quá trình vận hành của của Machine Learning ra sao, đâu là cơ chế đằng sau khả năng ưu việt đó?
Về tổng thê thì quá trình này sẽ đi từ xác định vấn đề, rà soát các phương án có sẵn từ
bộ đữ liệu đầu vào để trá ra kết quả tương thích Sau mỗi lần xử lý, machine leaming
có khả năng đánh giá và đúc kết kinh nghiệm để làm “giàu” thêm bộ dữ liệu được lập trình ban đầu Hình minh họa như sau:
Hình 2 3: Quá trình tự học của học may
Nhìn tổng quan, quá trình này là quá trình được khép kín, tự vận hành và tự chuyển hóa liên tục Các bước quan trọng của nó sẽ bao gôm:
- - Xử lý dữ liệu đầu vào: Dữ liệu thô sẽ được chọn lọc đề loại bỏ phân thừa, sắp xếp dữ liệu theo nhóm có câu trúc nhất định Dữ liệu thô trong từng bối cảnh
sẽ khác nhau và thường rất “rối” nhưng với cơ chế sàng lọc, machine learning
có thể tự gỡ rối Cơ chế này giúp nhận đạng những dữ liệu quan trọng, nhóm chúng lại và cắt bỏ những dữ liệu rác để hạn chế chỉ phí xử lý
- Sử dụng thuật toán đề chọn ra những phương án tối ưu nhất: Những dữ liệu
đã được phân theo nhóm được đưa vào “dây chuyền” xử lý dé phân tích, kết hợp
19
Trang 21lại để tạo nên các phương án ma machine learning cho rang phu hop véi van dé hién tai Hiéu don gian thì đây là lúc hệ thông tổ hợp các dữ liệu đầu vào, vận dụng thuật toán đề hình thành, đánh giá và chọn ra những phương án khả thi
- _ Triển khai phương án tốt nhất và tiếp tục cải thiện: Phương án cuối cùng sẽ được triển khai trong thực tế và trong quá trình triển khai machine learning tiếp tục ghi nhận những vấn đề phát sinh, kể cả ưu và nhược điểm mà khi kiểm nghiệm chưa phát hiện ra Sau đó, hệ thống quay lại cập nhật cho bộ đữ liệu ban đầu cách xử lý đề có những phương án chuẩn xác hơn theo thời gian
Sau nhiều lần cập nhật, machine learning sẽ hình thành tiêu chuẩn cho những phương án trả ra đề hướng tới phương án tốt nhất, với tốc độ xử lý nhanh, ít sai sót và rủi ro hơn Đó gọi là sự tăng cường của mô hình học máy
Hình 2 4: Quá trình tăng cường của mô hình học máy
20
Trang 22Sự tăng cường của mô hình machine learning là một khía cạnh quan trong trong qua
trình phát triển và cải thiện các hệ thống dựa trên trí tuệ nhân tạo Mặc dù các thuật
toán và mô hình máy tính đóng một vai trò quan trọng, nhưng sự tăng cường không chỉ giúp tối ưu hóa hiệu suất mà còn đảm bảo tính tổng quát và độ tin cậy của mô hình Một trong những phần quan trọng của sự tăng cường là trích xuất đặc trưng Dữ liệu đầu vào thường rất phức tạp và chứa nhiều thông tin không cần thiết Trích xuất đặc trưng giúp biến đôi dữ liệu thành các đặc trưng thích hợp cho mô hình Ví dụ, trong xử
lý ngôn ngữ tự nhiên, việc chuyên đôi văn bản thành các biểu đồ từ khóa có thể là một bước trích xuất đặc trưng quan trọng Trong thị giác máy tính, biến đôi hình ảnh thành
các đặc trưng như histopgram màu sắc hoặc các cạnh có thể giúp mô hình hiểu được hình ảnh tốt hơn
Cải thiện thuật toán huấn luyện là một phân quan trọng khác của sự tăng cường Các
thuật toán tối ưu như stochastic gradient đescent (SGD), Adam, RMSprop giúp học mô
hình nhanh hơn và tìm ra các tham số tối ưu hơn Chọn một thuật toán phù hợp và tôi
ưu hóa các tham số của nó có thể giúp mô hình hội tụ nhanh hơn và đạt được hiệu suất tốt hơn
Tăng cường dữ liệu là một kỹ thuật quan trọng đề cải thiện hiệu suất mô hình Bằng
cách tạo thêm đữ liệu mới từ đữ liệu hiện có thông qua các biến đổi như xoay, cat,
phóng to/thu nhỏ, hoặc thay đổi màu sắc, mô hình có thể được dao tạo trên một lượng lớn đữ liệu hơn và trở nên ổn định hơn Điều này giúp mô hình tránh overñitting (quá khớp) và cải thiện khả năng tông quát hóa
Việc chọn kiến trúc mô hình thích hợp là một phần quan trọng khác của sự tăng cường
Có nhiều kiến trúc khác nhau cho các loại nhiệm vụ khác nhau, và việc chọn một kiến
trúc tốt có thê cải thiện hiệu suất mô hình Ví dụ, trong xử lý ngôn ngữ tự nhiên, một
mô hình Recurrent Neural Network (RNN) có thê phù hợp cho việc dự đoán văn bản liên tục, trong khi một mạng Neural Convolutional (CNN) có thể phù hợp cho việc phân loại hình ảnh
21
Trang 23Tỉnh chỉnh các tham số mô hình là một phân quan trọng trong quá trình tối ưu hóa mô hình Tham số như tỷ lệ học tập, số lớp ân, số vòng lặp có thê ảnh hưởng đáng kề đến hiệu suất của mô hình Sử dụng phương pháp tinh chỉnh tham số thông qua việc thử nghiệm và đánh giá kết quả có thê giúp xác định các tham số tối ưu
Sự tăng cường đòi hỏi kiểm tra và đánh giá đúng cách hiệu suất của mô hình trên dữ liệu thử nghiệm độc lập Sử dụng các phương pháp kiểm tra chéo (cross-valiđation) và các độ đo hiệu suất chính xác có thê giúp xác định sự tăng cường cần thiết Đánh giá
mô hình là quá trình quan trọng đề đảm bảo rằng mô hình hoạt động hiệu quả trong các
tỉnh huong thực tế
Cuối cùng, sử dụng học tập tăng cường (Reinforcement Learning) có thê giúp cải thiện hiệu suất mô hình trong các ứng dụng tương tác và thời gian thực Việc cho phép mô hình tương tác với môi trường và học từ các hậu quả của các hành động có thê giúp nâng cao khả năng quyết định và tương tác của mô hình
Tóm lại, sự tăng cường của mô hình machine learning là một quá trình quan trọng và
đa chiều đề đảm bảo rằng mô hình hoạt động hiệu quả và đạt được hiệu suất tối ưu Các
yếu tô trên kết hợp lại với nhau để tạo ra mô hình mạnh mẽ và đáng tin cậy, đóng vai trò quan trọng trong việc giải quyết các vấn đề phức tạp trong thé giới thực
2.1.4 Các phân loại của học máy
Machine Learning vẫn chưa thể tách biệt khỏi con người Tuy nhiên, tùy theo phân loại
mà mức độ tham gia của con người trong quá trình vận hành của sẽ khác nhau Và dựa vào yêu cầu, mục đính chính của người tạo ra mô hình huấn luyện Cụ thé thi Machine
Learning có 3 phân loại như sau:
2.1.4.1 Supervised learning: Học tập dưới sự giám sát
Học có giám sát, còn được gọi là học máy có giám sát, là một tiểu thể loại của học máy và trí tuệ nhân tạo Nó được xác định bằng cách sử dụng các bộ dữ liệu được gắn nhãn dé đào tạo các thuật toán nhằm phân loại dữ liệu hoặc dự đoán kết quả một cách chính xác Khi đữ liệu đầu vào được đưa vào mô hình, nó sẽ điều chỉnh trọng số
22
Trang 24của nó cho đến khi mô hình được điều chỉnh phù hợp, điều này xảy ra như một phần của quy trình xác thực chéo Học tập có giám sát giúp các tô chức giải quyết nhiều vẫn
đề trong thế giới thực trên quy mô lớn, chăng hạn như phân loại thư rác trong một thư
mục riêng biệt khỏi hộp thư đến của bạn
Cách thức hoạt động của việc học có giám sát được mô tả như sau:
Học máy được giám sát thường tuân theo một loạt các bước đề huấn luyện mô hình
và đưa ra dự đoán Hãy cùng khám phá các bước này một cách chỉ tiết:
Thu thập và ghi nhãn dữ liệu
Bước đầu tiên trong học máy có giảm sát là thu thập tập đữ liệu đại điện và
đa dạng Tập dữ liệu này phải bao gồm đủ số lượng ví dụ được gắn nhãn bao gồm phạm vi đầu vào và đầu ra mà mô hình sẽ gặp trong các tình huồng thực
tê
Quá trình ghi nhãn bao gồm việc gán nhãn đầu ra chính xác cho từng mẫu
đầu vào trong tập đữ liệu Đây có thê là một nhiệm vụ tốn nhiều thời gian và công sức, tùy thuộc vào độ phức tạp và kích thước của tập dữ liệu
Bộ huân luyện và kiêm tra
23
Trang 25con: tập huấn luyện và tập kiểm tra Tập huấn luyện được sử dụng đề huấn luyện mô hình, trong khi tập kiểm tra được sử dụng đề đánh giá hiệu suất
của mô hình trên đữ liệu chưa nhìn thay
Tập huấn luyện đóng vai trò là cơ sở đê mô hình tìm hiểu các mẫu và mối quan hệ giữa các tính năng đầu vào và nhãn đầu ra Mặt khác, bộ kiểm tra giúp đánh giá khả năng khái quát hóa của mô hình và hiệu suất của nó trên
đữ liệu mới, chưa được nhìn thay
Khai thac tinh nang
Trước khi huấn luyện mô hình, điều cần thiết là trích xuất các tính năng liên
quan từ đữ liệu đầu vào Trích xuất đặc trưng bao gồm việc lựa chọn hoặc
chuyển đối các đặc điểm đầu vào để thu được thông tin phù hợp nhất cho nhiệm vụ học tập Quá trình này có thể nâng cao hiệu suất dự đoán của mô hình và giảm tính chiều của đữ liệu
Lưựa chọn và đào tạo mô hình
Việc chọn một thuật toán học máy phù hợp là rất quan trọng cho sự thành công của học có giám sát Các thuật toán khác nhau có điểm mạnh và điểm yếu khác nhau, điều quan trọng là phải chọn thuật toán phù hợp nhất với vẫn
đề hiện tại
Sau khi thuật toán được chọn, mô hình sẽ được huấn luyện bằng cách sử
dụng đữ liệu huấn luyện được gắn nhãn Trong quá trình đào tạo, mô hình
tìm hiểu các mẫu và mỗi quan hệ cơ bản trong dữ liệu bằng cách điều chỉnh
các tham số bên trong của nó Mục tiêu là giảm thiểu sự khác biệt giữa kết quả đầu ra được dự đoán và nhãn thực trong dữ liệu huấn luyện
Dự đoán và đánh gia
24
Trang 26đữ liệu mới, chưa được nhìn thay Các đặc điểm đầu vào của dữ liệu chưa
nhin thay được đưa vào mô hình đã huấn luyện, tạo ra các dự đoán hoặc
phân loại dựa trên các mau da hoc
Đề đánh giá hiệu suất của mô hình, kết quả đầu ra dự đoán được so sánh với
nhãn thực của đữ liệu chưa nhìn thấy Các số liệu đánh giá phô biến bao gồm
độ chính xác, độ chính xác, khả năng thu hồi và điểm FI, tùy thuộc vào tính
chất của nhiệm vụ học tập
Học có giám sát sử dụng tập huấn luyện để dạy các mô hình mang lại kết quả mong muốn Tập đữ liệu huấn luyện này bao gồm đầu vào và đầu ra chính xác, cho phép mô hình học theo thời gian Thuật toán đo độ chính xác của nó thông qua hàm mất mát, điều
chỉnh cho đến khi lỗi được giảm thiêu đủ mức
2.1.4.2 Unsupervised learning— Học tập không có sự giám sắt
Machine learning chỉ được cung cấp các thuật toán, công cụ đề tự xử lý mà không biết trước kết quả Dễ thấy nhất việc ứng dụng của phân loại này đó là cá nhân hóa trải
nghiệm khách hàng.Dữ liệu đầu vào bao gồm hành vi, lịch sử mua mua hàng và hệ
thống sẽ dự đoán những sản phẩm phù hợp và đề xuất riêng cho từng khách hàng Các mô hình học tập không giám sát được sử dụng cho ba nhiệm vụ chính-phân cụm, liên kết và giảm kích thước Dưới đây chúng tôi sẽ xác định từng phương pháp học tập
và nêu bật các thuật toán cũng như cách tiếp cận phô biến đề thực hiện chúng một cách hiệu quả
Phân cụm:
Phân cụm là một kỹ thuật khai thác dữ liệu nhằm nhóm các dữ liệu chưa được gắn
nhãn dựa trên những điểm tương đồng hoặc khác biệt của chúng Các thuật toán phân cụm được sử dụng để xử lý các đối tượng dữ liệu thô, chưa được phân loại
thành các nhóm được biểu thị bằng cấu trúc hoặc mẫu trong thông tin Các thuật
25
Trang 27toán phân cụm có thé được phân loại thành một số loại, cụ thể là độc quyền, chồng chéo, phân cấp và xác suất
Khái quát bài toán phân cụm:
o Dau vao: Tap dữ liệu không có nhãn
o_ Đầura: Các cụm dữ liệu đã được phân chia
Như vậy mục tiêu của bài toán phân cụm là những cụm đữ liệu được phân chia bởi thuật toán Chúng ta cùng xem xét đặc điểm của một cụm
Trong một cụm thì các điểm dữ liệu thuộc về cụm đó phải giống nhau theo một ý
nghĩa, việc xác định /hế nào là giống nhau quyết định đầu ra của thuật toán này Ví
dụ như để xác định những khách hàng thuộc cùng một nhóm thì trước tiên ta cần
phải xác định định nghĩa /bế nào là giống nhau?)
Hai khách hàng tương đồng có thê được xem xét dựa trên các tiêu chí khác nhau, có
thê dựa trên số lần mua hàng, số tiền mua hàng, hay giới tính, độ tuôi
Hai cụm đữ liệu là khác nhau: Điều này là cần thiết vì khi phân cụm các cụm phải là
tách biệt nhau hoàn toàn, không có sự chồng lấp 2 cụm dữ liệu với nhau Minh họa
Hinh 2 6: Kết quả quá trình phân cụm dữ liệu
Sau khi _ — Sau khiphâncum cụm
2.1.4.3 Semi — supervised learning — Học tập được giám sát bán phần
Học bán giám sát là một loại kỹ thuật học máy rộng rãi sử dụng cả đữ liệu được dán
nhãn và không được gắn nhãn; theo cách này, như tên cho thấy, nó là một kỹ thuật kết hợp giữa học tập có giảm sát và không giám sát
26
Trang 28Nhìn chung, ý tưởng cốt lõi của bán giám sát là xử lý điểm đữ liệu theo cách khác nhau
dựa trên việc nó có nhãn hay không: đối với các điểm được gắn nhãn, thuật toán sẽ sử
dụng tính năng giám sát truyền thống để cập nhật trọng số mô hình; và đối với các điểm không được gắn nhãn, thuật toán sẽ giảm thiểu sự khác biệt trong dự đoán giữa
các ví dụ đào tạo tương tự khác
Để trực quan, hãy xem xét tập đữ liệu về các mặt trăng trong hình dưới: một bài toán phân loại nhị phân với một lớp cho mỗi mặt trăng lưỡi liềm Giả sử chúng ta chi co 8 điểm dữ liệu được gắn nhãn, phần còn lại không được gắn nhãn
LIL]
Hình 2 7: Ví dụ về tdp dit ligu Moons cho bai todn phan loại nhị phân
Quá trình đào tạo có giảm sát cập nhật trọng số của mô hình đề giảm thiêu chênh lệch
trung bình giữa dự đoán và nhãn Tuy nhiên, với dữ liệu được gan nhan han ché, diéu
này có thê tìm ra ranh giới quyết định hợp lệ cho các điểm được gắn nhãn nhưng sẽ không khái quát hóa cho toàn bộ phân bố—như trong Hình 2a bên đưới
Mặt khác, học tập không giám sát có gắng tập hợp các điểm lại với nhau dựa trên những điểm tương đồng trong một số không gian đặc trưng Tuy nhiên, nếu không có nhãn hướng dẫn huấn luyện, thuật toán không giám sát có thể tìm thấy các cụm dưới
27
Trang 29mức tôi ưu Ví dụ, trong hình (2.8), các cụm được phát hiện không khớp với phân bố
Nếu không có đủ dữ liệu được gan nhãn hoặc trong các cài đặt phân cụm khó khăn, các
kỹ thuật được giám sát và không giám sát có thê không đạt được kết quả mong muốn Tuy nhiên, trong cài đặt bán giám sát, chúng tôi sử dụng cả dữ liệu được gắn nhãn và không được gắn nhãn Các điểm được gắn nhãn của chúng tôi hoạt động như một biện
pháp kiểm tra sự tỉnh táo; họ đưa ra các dự đoán về mô hình của chúng tôi và thêm cầu
trúc cho vấn đề học tập bằng cách thiết lập có bao nhiêu lớp và cụm nào tương ứng với lớp nảo
Các điểm dữ liệu không được gắn nhãn cung cấp ngữ cảnh; bằng cách hiển thị mô hình của chúng tôi với càng nhiều đữ liệu càng tốt, chúng tôi có thể ước tính chính xác hình dạng của toàn bộ phân phối
Với cả hai phân - đữ liệu được gắn nhãn và không được gắn nhãn - chúng ta có thé dao tạo các mô hình chính xác và linh hoạt hơn
28
Trang 302.2 Tổng quan về mạng CNN
2.2.1 Định nghĩa về mạng CNN
CNNđược viết tắt của Convolutional Neural Network hay còn được gọi
là CNNS mang nơ-ron tích chập, là một trong những mô hình Deep Learning cực kỳ tiên tiến, bởi chúng cho phép bạn xây dựng những hệ thống có độ chính xác cao và
thông minh Nhờ khả năng đó, CNN có rất nhiều ứng dụng, đặc biệt là những bài toán
can nhan dang vat thé (object) trong anh
CNN vô cùng quan trọng để tạo nên những hệ thông nhận diện thông minh với độ chính xác cao trong thời đại công nghệ ngày nay Lý do cụ thể vì sao CNN đặc biệt phát huy hiệu quả trong việc nhận dạng (detection), chúng ta sẽ tìm hiểu kỹ hơn ngay dưới đây
Convolutional là một loại cửa số đạng trượt nằm trên một ma trận Các convolutional
layer sẽ chứa các parameter có khá năng tự học, qua đó sẽ điều chỉnh và tìm ra cach lay những thông tin chính xác nhất trong khi không cần chọn feature
Lúc này, convolution hay tích chập đóng vai trò là nhân các phần tử thuộc ma trận
Sliding Wimmdow, hay được gọi là kernel, filter hoặc feature detect, là loại ma trận có
kích thước nhỏ
29
Trang 312.2.2 Cac lop co ban cia mang CNN
Convolution neural network gồm những lớp cơ bản sau:
Convolutional layer
Đây chính là lớp đóng vai trò mẫu chốt của CNN, khi layer này đảm nhiệm việc thực hiện mọi tính toán Stride, padding, ñlter map, feature map là những yêu tố quan trọng nhất của convolutional layer
Cơ chế của CNN là tạo ra các filter áp dụng vào từng vùng hình ảnh Các fñilter map này được gọi là ma trận 3 chiều, bên trong chứa các parameter dưới dạng những con số
Stride là sự địch chuyên filter map theo pixel dựa trên giá trị từ trái sang phải Padding: Là các giá trị 0 được thêm cùng lớp input
Feature map: Sau mỗi lần quét, một quá trình tính toán sẽ được thực hiện Feature map sẽ thể hiện kết quả sau mỗi lần filter map quét qua input
Relu layer
Con co tén goi khac 1a activation function, day la mét ham duoc kich hoat trong neural network Nó có tác dụng mô phỏng các neuron có tỷ lệ truyền xung qua axon Trong activation function ching con co ham nghĩa la: Relu, Tanh, Sigmoid, Maxout, Leaky, Relu layer được ứng dụng phổ biến trong việc huấn luyện nơ-ron đo
sở hữu nhiều ưu điểm tiên tiền
Pooling layer
Khi nhận phải đầu vào quá lớn, các lớp pooling layer sẽ được xếp giữa những lớp Convolutional layer nhằm mục đích giảm parameter Pooling layer được chia thành 2 loại phô biên là max pooling va average
30
Trang 32Fully connected layer
Khi 2 lớp convolutional layer và pooling layer nhận được ảnh truyền, lớp này sẽ có nhiệm vụ xuất kết quả Khi ta nhận được kết quả là model đọc được thông tin ảnh, ta cần phải tạo sự liên kết dé cho ra nhiều output hơn Đây chính là lúc các lập trình viên
sử dụng fully connected layer Hơn nữa, nếu fully connected layer có đữ liệu về hình ảnh thì chúng sẽ chuyên thành mục chưa được phân chia chất lượng
3 region sizes: (2,3,4) 2 feature = Ý
Sentence matrix 2 filters for each region maps for 6 univariate 2 classes
Trang 332.2.3 Cấu trúc của mang CNN
Mang CNN là một trong những tập hợp của lớp Convolution được chồng lên nhau Mạng CNN còn sử dụng các hàm nonlinear activation (như ReLU và tanh) nhằm kích hoạt trọng số trong node Khi đã thông qua hàm, lớp này sẽ thu được trọng số trong các node và tạo ra nhiều thông tin trừu tượng hơn cho các lớp kế cận
Đặc điểm mô hình CNN có 2 khía cạnh cần phải đặc biệt lưu ý là tính bất biến và tính
kết hợp, do đó độ chính xác hoàn toàn có thê bị ảnh hưởng nếu có cùng một đối tượng
được chiếu theo nhiều phương diện khác biệt Với các loại chuyển dịch, co giãn và
quay, người ta sẽ str dung pooli layer va lam bat biến những tính chất này Từ đó, CNN
sẽ cho ra kết quả có độ chính xác ứng với từng loại mô hình.Pooling layer giúp tạo nên tính bất biến đối với phép địch chuyên, phép co giãn và phép quay Trong khi đó, tính kết hợp cục bộ sẽ thể hiện các cấp độ biêu diễn, thông tin từ mức độ thấp đến cao, cùng
độ trừu tượng thông qua convolution từ các filter Dựa trên cơ chế convolution, một mô
hình sẽ liên kết được các layer với nhau
Với cơ chế này, layer tiếp theo sẽ là kết quả được tạo ra từ convolution thuộc layer kế
trước Điều này đảm bảo bạn có được kết nỗi cục bộ hiệu quả nhất Mỗi nơ-ron sinh ra
ở lớp tiếp theo từ kết quả filter sẽ áp đặt lên vùng ảnh cục bộ của nơ-ron tương ứng trước đó Cũng có một số layer khác như pooling/subsampling layer được dùng đề chat lọc lại các thông tin hữu ích hơn (loại bỏ các thông tin nhiễu)
32