1. Trang chủ
  2. » Luận Văn - Báo Cáo

Sử dụng cử chỉ tay để điều khiển thiết bị

74 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG KHOA CÔNG NGHỆ THÔNG TIN

NV dH.L NIAí)ÐN ‘NAIA HNIS NỊL YA OH DO AN TOT NGHIEP DAI HOC

Đề tai: Sử dung cử chi tay dé điều khiến thiết bị

Giáo viên hướng dẫn: PGS Phạm Van Cường

Sinh viên: Nguyễn Thế An

Mã sinh viên: BI7DCCN002

Lóp: DI7HTTTI

Niên khóa: 2017-2022

Hệ đào tạo: Đại học chính quy

Hà Nội 2021

Trang 2

HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIÊN THONG

KHOA CÔNG NGHỆ THÔNG TIN

Giáo viên hướng dẫn: PGS Phạm Văn Cường Sinh viên: Nguyễn Thế An

Mã sinh viên: BI7DCCNO02

Láp: D17HTTTI1

Niên khóa: 2017-2022

Hệ dao tạo: Đại học chính quy

Hà Nội 2021

Trang 3

DO ÁN TOT NGHIỆP

TÓM TẮT NỘI DUNG

Sự ra đời và phát triển mạnh mẽ của trí tuệ nhân tạo (AD là một bước đột phá của nên kinh tế nhưng bên cạnh đó, nó cũng tác động rất nhiều tới cuộc sống của con người thông qua nhiều ứng dụng thực tế Các thiết bị như tivi, máy tính hay các thiết bị điện tử không hề xa lạ gì đối với mỗi người, nhưng hiện nay, các thiết bị đó vẫn được điều khiến bằng các phương pháp như sử dụng điều khiển hồng ngoại, sử dụng công tắc hay bàn phím, để có thể nâng cao được trải nghiệm người dùng, tăng tính thuận tiện, rất nhiều phương pháp khác nhau được phát triển ví dụ như điều khiển thông qua wifi.

Phương pháp sử dụng cử chỉ tay dé điều khiển cũng chính là một trong số đó.

Mục tiêu chính của nhận dạng cử chỉ tay là đưa ra chính xác người dùng đang có

cử chỉ gì và từ đó có thé đưa ra tín hiệu điều khiến thiết bị, giúp người dùng không cần phải sử dụng đến các thiết bị điều khiển bên ngoài Hệ thống điều khiển gồm 2 thành

phan chính là nhận diện cử chỉ tay và thành phần điều khién thiết bị

Đồ án “Nhận diện cử chỉ tay bang học sâu ứng dụng trong điều khiến thiết bị điện tử" tập trung vào việc nhận diện cử chỉ tay trên thời gian thực và sử dụng dé đưa ra tín hiệu điều khiển

Với đầu vào là ảnh được lay ttr may anh, hé thong sẽ thực hiện trích xuất đặc trưng bằng mang học sâu, và sử dụng dé nhận diện các cử chỉ tay Yêu cầu quan trong đối với hệ thống là phải chạy được trên thời gian thực, có độ trễ thấp Trong khuôn khổ đồ án mô hình được tiến hành huấn luyện trên bộ dữ liệu gồm 37,964 video thuộc 17 cử chỉ Mô hình được sử dụng là mô hình mô-đun dịch chuyền thời gian (TSM) Kết quả

độ chính xác đạt được là 0.96 với độ trễ 4.7ms

Từ khóa: Học sâu, nhận diện cử chỉ, trích xuất đặc trưng, huấn luyện, mô hình,

Temporal Shift Module, CNN, 3D CNN,

GVHD: PGS.TS Pham Van Cường i SVTH: Nguyễn Thế An — D17HTTT1

Trang 4

DO ÁN TOT NGHIỆP

LỜI CẢM ƠN

Em xin chân thành cảm ơn PGS.TS Phạm Văn Cường, bộ môn Khoa học máytính, Khoa Công nghệ thông tin I đã tận tình chỉ dạy và hướng dẫn cho em trong việc

lựa chọn đề tài, thực hiện đề tài và viết báo cáo dé án, giúp cho em có thé hoàn thành

tốt đồ án này.

Em xin chân thành cảm ơn các thầy cô giáo Học viện Công nghệ Bưu chính Viễn thông, đặc biệt các thầy cô trong khoa Công nghệ thông tin I đã tận tình dạy dỗ và chỉ

bảo em trong suốt 4 năm học.

Em xin gửi lời cảm ơn đến các anh chị, các bạn, các em đã và đang hoạt động tại câu lạc bộ ITPTIT, cảm ơn tất cả moi người đã tạo ra một môi trường học tập chuyên nghiệp, sáng tạo để em có thê phát triển được như ngày hôm nay.

Cuối cùng em xin cảm ơn gia đình, bạn bè, những người đã luôn bên cạnh động viên em những lúc khó khăn và giúp đỡ em trong suốt thời gian học tập và nghiên cứu, tạo mọi điều kiện tốt nhất cho em dé có thé hoàn thành tốt đồ án của mình.

Mặc dù đã có gắng hoàn thành nghiên cứu trong phạm vi và khả năng cho phép

nhưng chắc chăn sẽ không tránh khỏi những thiếu sót Em kính mong nhận được sự thông cảm của thầy cô và các bạn.

Em xin chân thành cảm ơn!

Trang 5

DO ÁN TOT NGHIỆP

NHAN XÉT

(Của giảng viên phản biện)

GVHD: PGS.TS Phạm Văn Cường iii SVTH: Nguyễn Thế An — D17HTTT1

Trang 6

DO ÁN TOT NGHIỆP

NHAN XÉT

(Của giảng viên hướng dẫn)

CÁN BỘ - GIẢNG VIÊN HƯỚNG DẪN

(ký, ghi rõ họ tên)

GVHD: PGS.TS Phạm Văn Cường iv SVTH: Nguyễn Thế An — D17HTTT1

Trang 7

DO ÁN TOT NGHIỆPMỤC LỤC

0009.009077 ` ii

DANH MỤC HINH VE.uu.sessssssssssssssesssesssesssssssssesssssssssscsssesssssssssesssssesssssssesessssssssees vii

DANH MỤC BANG BIEU -° 2s s©s£ss£SsSEseEssEsserserserssrsserserssrsssse ix

DANH MUC TU VIET TAT .cccssssssssssssssscssssscsocsscsscsassoscascsucsassascascsussacsasesecssceseesees x

0909871070757 1

CHUONG 1 TONG QUAN VE BÀI TOÁN NHAN DIỆN CU CHÍ TAY 3

1.1 Giới thiệu bai toán nhận diện cử chi tay - ác eeeeeeeeeeteeteeeeees 3

1.2 Ứng dụng của bài toán nhận diện cử chi tay 2-5 5sc5ce+ccrserxee 4 1.2.1 Tương tac với thực tế ảo và thực tại tăng cường -: 5

1.2.2 Nhận diện ngôn ngữ ký hiệu - - - Sc Sc St St srrrterrerrrrrerres 6

1.2.3 Công cụ hỗ trợ cuộc sống 2-5222 EE‡EEEEE 2E 6

1.3 Một số phương pháp cho bài toán nhận diện cử chỉ tay 6 1.3.1 Phương pháp nhận diện cử chỉ tay cỗ điễn - 2- 5 c5cczcc+ 6

1.3.2 Phương pháp nhận diện cử chỉ tay hiện đại -.- 11

1.40 Phạm vi đồ Am oi.e.cccececececcccccccccscesccscssessesscssessssessessessessessesuessssseseesesseesessees 12

1.5 Kết luận CHW ong oo cccccccssessessesssessessessecssessessessecssessessessesessessessees 12 CHUONG 2 NHAN DIEN CU CHÍ TAY SU DUNG PHƯƠNG PHAP HỌC

SAU 13

2.1 Giới thiệu về học SAU cecccccccecccc ccs essessessessesscseesessessessesscsseseesesseesesseaees 13

"A0 DG) (21 ee 13

2.1.2 Những dấu mốc quan trọng của học sâu 22 sex: 14

2.1.3 Cấu trúc và mô hình của một no-ron nhân tạo 5-5: 20

2.1.5 Cấu tạo và phương thức làm việc của mạng nơ-ron - 24

2.2 Mạng nơ-ron tích chập - 2c S2 1S SE 1 1H HH Hy rey 252.2.1 NV) tich CHAp n3 27

2.2.3 Lớp kết nối toàn bộ - 2-55 22221 21E21E211211211 212121211 1e 29 2.2.4 Một số kiến trúc mạng nỗi tiếng - 2-52 2+Sz+EccEerxerxerxereee 30

2.2.5 Mô hình mạng nơ-ron tích chập cho bài toán nhận diện cử chỉ tay 332.2.6 Mô hình MobileNet - 2211211121121 1121182118 11182118 tre, 34

2.3 Mạng nơ-ron tích chập 3 chiễu - 2-2 E+SEeEE+EE+E£EeEEerEerkerkrrree 36

2.3.1 Phép tích chập 3 chiều 2- 2S EEEE2 2 EEEEEEEEErrkrrkerreee 36 2.3.2 Cấu trúc của mạng nơ-ron tích chập 3 chiều - 39

2.3.3 Mạng nơ-ron tích chập 3 chiều cho bài toán nhận diện cử chỉ tay 39

GVHD: PGS.TS Phạm Văn Cường Vv SVTH: Nguyễn Thế An — D17HTTT1

Trang 8

DO ÁN TOT NGHIỆP

2.4 Mô-đun dịch chuyền thời gian (Temporal Shift Module) 40

2.4.1 Chỉ tiết về mô-đun dịch chuyền thời gian (TSM) - 40

2.4.2 TSM cho bài toán nhận diện cử chỉ fay - -c sec 45

2.5 _ Kết luận chương -:- 2 sS<+EE+EEEEEEEEEEEEE 1121121121121 11 11111 rxe, 46

CHƯƠNG 3 THUC NGHIỆM VÀ ĐÁNH GIA -c 2s se csecssess47

K5 M6 ta nên 47

3.1.1 Bộ dữ liệu 20bn jesfer - - SĂ ng HH HH He 47

3.1.2 Bộ dữ liệu được sử dụng trong đồ án 2-5255 ecsccxczxcsee 48

3.2 Mô tả thực nghiệm - - G122 nn vn TH 11111 1H 1H HH rệt 51

3.3 Phương pháp đánh giá Gà HH HH Hà HH HH gy 51

3.4 _ Cài đặt và huấn luyện mô hình - - 2 + ++E++E++E+Eerxerxerxerxrreee 51 3.5 Kết qua thực nghiệm và đánh giá mô hình - 2-2 52 z2 s52 55

3.6 Chương trình minh họa - Ác 1.1232 TH HH HH giết 56

3.6.1 Tương tác với thiết bị IoT - - 2c seSs+Sk+E2EcEcEerkerkerkerkereee 56

3.6.2 Tương tac người — IIấY - - - 5 tk ng ng tưệp 58

3.7 Kết luận Chu 010g ooo eccecccccecccsecsessessessesscssesscscsessessesssssessessesesseesessesseeseeees 59

CHƯƠNG 4 TONG KET ooeeescssesssssssscsssesscssesscssesssssnesscsnscessnscsssssessssnececsnsesssseesssneeses 60 TÀI LIEU THAM KHAO cccssssssssssssessssssssssesssecssesossssccsnecansssscsscsanesonessceasecanesseessees 61

GVHD: PGS.TS Pham Van Cường vi SVTH: Nguyễn Thế An — D17HTTT1

Trang 9

DO ÁN TOT NGHIỆP

DANH MỤC HÌNH VE

Hình 1-1 Găng tay được phát triển bởi MIT với nhiều cảm biến -.:-:- 4 Hình 1-2 Chat lượng hình ảnh thu được từ máy anh những năm 80s - 4 Hình 1-3 Ví dụ về tương tác người — máy dựa trên cử chỉ tay: Robert Downey Jr.

(Tony Stark) trong vai người sắt sử dụng tay đê tương tác với môi trường thực tê ảo

TANG CUONG oe eee n 5

Hinh 1-4 Minh hoa hé thong nhận diện cử chi tay cổ điền -¿-c-csctsxcrcrrkererereee 6 Hình 1-5 Phương pháp tìm siêu mặt phăng năm giữa hai tập đóng - . 8 Hình 1-6 Phương pháp tìm siêu mặt phăng bang cực đại hóa lề -: - 8

Hình 1-7 Vecto hỗ trỢ - - - ScSnS 1111151511818 E1E111E11151 5111111111111 11111111 EEEEETETErxry 8

Hình 1-8 Anh xạ phi tuyến tính và hàm hạt nhân 2-2 5¿2++2++cx+zzxz+zxez 9

Hình 1-9 Minh họa dữ liệu gồm 3 lớp được biểu diễn bởi ba màu: đỏ, xanh lá cây,

xanh nước biÊn - 2-2 256 SE9EE2E2E19E1EEE211211571712112111171711211111111 111.11 xe 10

Hình 1-10 Minh họa việc áp dụng phương pháp một với một cho bộ dữ liệu ví du 11

Hình 1-11 Minh họa áp dụng phương pháp một với tat cả cho tập dit liệu 11 Hình 2-1 Mô hình tổng quan về Trí tuệ nhân ta0 oes eesessessessesseseseeseeseesessessesees 13

Hình 2-2 Lịch sử học sâu - - ¿+ 2 111116 223113111 1253111111199 1 11kg 1 ky 15

Hình 2-3 Kiến trúc LeNet-5 -. 5+- 22+ tre l6 Hình 2-4 Kết quả ILSVRC đến năm 2015 -:-222222+22++t2EEtsrrtrsrrrrrrrrrrre 19

Hình 2-5 Mô hình một no-ron sinh hOC cccccessscccesessssececeeesssceececesssseeececeessseeeeeees 20

Hình 2-6 Mô hình một mạng nơ-ron nhân tạO 5< + + kE+sveEsseeeeseesseers 20

Hình 2-7 Đồ thị hàm Sigmoidd - 2-2-2 2 2 £+E£EE£EE£EEEEEEEEEEEEEEEEEEEEEEEEEErkrrkrrkee 21

Hình 2-8 Đỗ thị hàm Tanh - -: 222¿222+vzt2EE vttrtEEEkrtrtttktrrrttrrrrrrirrrrrrrree 22

Hình 2-9 Đồ thị hàm ReLU - 2¿-©22++++E+++tEEEkxtEEEkkrtttrrrttrirrrrrirerireiie 22 Hình 2-10 Mô hình cấu tạo của mạng nƠ-rOIn 2-2 2£ ©5£+S£+£E+£E££E£+E++Exerxezsez 25 Hình 2-11 Sự biến đổi dữ liệu khi đi qua CNN cc ccsccsccterrerrrrrrrrrrrrrrkee 27

Hình 2-12 Minh họa phép tích chập trong CNN - SH He, 28

Hình 2-13 Minh họa dữ liệu khi áp dụng Max Pooling -5+-<<++<<++sss+ 29

Hình 2-14 Minh họa lớp kết nối toàn bộ, -. 2- ¿+ ©++2+++x+2+++Ex++rx+zrxerxesree 30 Hình 2-15 Kiến trúc LeNNet c¿-52+2+xt2EEktttEEktrttttrrtttrrrrtrrrrrrirrrireiei 30 Hình 2-16 Kiến trúc của AlexÌNet -:-2¿22+2k+SE2E2EE2E1E2171121127171 21.211 31 Hình 2-2-17 Kiến trúc Z/FNNet - +: + ©22+E2+EEEEEE2E221221717112112117171 2111111 31 Hình 2-18 Kiến trúc của Inception-v.4 - + s£++++E++Ex+EEeEEE+EESEEEEEeEErrkrrkerkerree 32 Hình 2-19 Kiến trúc của WGIÓ -¿- 2 5¿+22+EE+EEEE2E122171211211221 7171.211111 33

Hình 2-20 Kiến trúc của ResiNet :- 2-52 £+E22E2EEEEEEE21121121121121 7111111 33

Hình 2-21 Mô hình kiến trúc mạng MobilelNet -2- 2 ++2+>x++£x++zx+zx+z+z 35

Hình 2-22 Hình minh hoạ phương pháp tính tích chập Depthwise Separable

CONVOIULION 001017757 dd 36

Hình 2-23 So sánh phép tích chập 2 chiều và phép tích chập 3 chiều 38 Hình 2-24 Hình minh họa trích xuất nhiều đặc trưng khác nhau từ các khung hình khác

nhau trên cùng MOE VỊ ẨTÍ - - - 5 2c 6311831183111 1191 19 11 911 91 11H nh 39

Hình 2-25 Ví dụ về một cau trúc của mạng nơ-ron tích chập 3 chiều 39

GVHD: PGS.TS Phạm Văn Cường vii SVTH: Nguyễn Thế An — D17HTTT1

Trang 10

DO ÁN TOT NGHIỆP

Hình 2-26 Minh họa phương pháp dịch chuyên một phan kênh 41 Hình 2-27 Minh họa hai phương pháp đặt mô-đun dịch chuyền 43 Hình 2-28 (a) độ trễ do dịch chuyên dữ liệu (b) độ trễ của hai phương pháp dịch

chuyên dư thừa và dịch chuyền tại chỗ _ -¿ -¿©22¿55+2cx+2cxccxesres 43 Hình 2-29 Minh họa về dịch chuyên một hướng trong TSM -5:-5- 44 Hình 3-1 Thống kê số lượng video mỗi lớp -¿- 5+ ©+©++cx++zxvzxecres 48 Hình 3-2 Biéu đồ phân phối video ở mỗi lớp -:¿©5¿c++2++2x++cx++zxvzxezzs+ 49 Hình 3-3 Biéu đồ phân bố dữ liệu của từng lớp trên hai tập huấn luyện và kiểm tra 50 Hình 3-4 Minh họa về dữ liệu_ ¿-2¿-©5¿©2++2E+2EE+2EEEEEeEkterxrrrkerrrcree 50

Hình 3-5 Minh họa file nhãn của đữ liệu - << 555222222 E+++sseeeereeeezss 51

Hình 3-6 Quá trình huấn luyện mô hình mạng nơ-ron tích chập 2 chiều 52 Hình 3-7 Minh hoa quá trình huấn luyện mạng nơ-ron tích chập 3 chiều 54 Hình 3-8 Minh họa quá trình huấn luyện mô hình TSM . ¿2 s2 s2 5+2 55 Hình 3-9 Sơ đồ hệ thống, ¿- ¿- +E9SE+EE9EE2E12E2171217171211111121121 7111111 x0 56 Hình 3-10 Hình ảnh công tắc đèn điều khiển thông qua wifi Tuya - 57

Hình 3-11 Minh họa chương trình điều khiển G60 o c.ccececceeceseseessesseseeseeseeseesessesesees 57

Hình 3-12 Minh họa chương trình điều khiển đèn - 2-2 2 2+xe£xe£xe£xerxeceez 58

Hình 3-13 Minh họa chương trình tương tac người - my - ‹-ssss+ssssssssss 58

Hình 3-14 Minh họa chương trình tương tac người - mấy - - «-+s«+s++ss+sx+ 59

GVHD: PGS.TS Phạm Văn Cường vii SVTH: Nguyễn Thế An — D17HTTT1

Trang 11

DO ÁN TOT NGHIỆP

DANH MỤC BANG BIEU

Bảng 2-1 Kết quả thử nghiệm mô hình TSM so với mô hình mạng nơ-ron tích chập 2

Bảng 2-2 Kết quả độ chính xác và độ trễ của mô hình TSM ngoại tuyến và trực tuyến

so với mô hình mang phân đoạn thời gian (TSỈÌN) -.- 3S sssseixssrserresrses 45

Bảng 3-1 Thống kê bộ dữ liệu 20bn Jester - ¿5£ ©5+22S+2x+2£++£x++zxezrxerxesree 47 Bang 3-2 Lớp và số lượng video mỗi lớp trên tập dữ liệu sử dụng dé huấn luyện 49 Bảng 3-3 Tham số và ý nghĩa khi huấn luyện mô hình mạng nơ-ron tích chập 3 chiều

¬— äẽa 53

Bảng 3-4 Ý nghĩa các tham số huấn luyện mô hình TSM . :- ¿25+55 Bảng 3-5 Kết quả thực nghiệm trên 3 mô hình -2- 2 +¿©+22++£x++zx+zx+zs+ 55

GVHD: PGS.TS Pham Van Cường ix SVTH: Nguyễn Thế An — D17HTTT1

Trang 12

DO ÁN TOT NGHIỆP

DANH MỤC TỪ VIET TAT

STT | Từ viết tắt Tiếng Anh Tiếng viét/Giai thích 1 AI Artificial Intelligence Tri tué nhan tao

2 ML Machine Learning Hoc may

3 DL Deep Learning Hoc sau

4 DNN Deep Neural Network Mang no-ron hoc sau5 CNN Convolutional Neural Network Mang no-ron tich chap6 CONV Convolutional Layer Lớp tích chap

7 RELU Rectified Linear Unit Layer Lop kich hoat ReLU8 POOL Pooling Layer Lớp gộp

9 FC Fully-Connected Layer Lớp kết nối toàn bộ

10 TSM Temporal Shift Module _

11 VR Virtual Reality Thực tế ảo

12 AR Augmented Reality Thực tai tang cường13 2D 2 Dimension 2 chiều

14 3D 3 Dimension 3 chiều

GVHD: PGS.TS Phạm Văn Cường XSVTH: Nguyễn Thế An — D17HTTT1

Trang 13

DO ÁN TOT NGHIỆP

LỜI NÓI ĐẦU

Trong những năm gần đây, trên thế giới nghiên cứu ứng dụng công nghệ xử lý và nhận dạng ảnh đang là hướng nghiên cứu tập trung của rất nhiều nhà khoa học trong

các lĩnh vực Từ những năm 1970 khi mà năng lực tính toán của máy tính ngày càng trở

nên mạnh mẽ hơn, các máy tính lúc này có thể xử lý được những tập dữ liệu lớn như các hình ảnh, các đoạn video thì một khái niệm nữa về xử lý ảnh ra đời đó là: Thị giác máy tính Có thể nói xử lý ảnh số và thị giác máy tính đã được phát triển và trở thành một lĩnh vực khoa học Xử lý ảnh số không chi nâng cao chất lượng của ảnh mà còn phân tích và lý giải, tìm ra giải thuật để ứng dụng vào thực tiễn Thị giác máy tính bao gồm lý thuyết và các kỹ thuật liên quan nhăm mục đích tạo ra một hệ thong nhân tao có thé tiếp nhận thông tin từ các hình anh thu được hoặc các tập dữ liệu đa chiều Việc kết hop giữa thị giác máy tính với các kỹ thuật khác như công nghệ thông tin, truyền thông, điện tử điều khiến tự động, cơ khí cho chúng ta rất nhiều ứng dụng trong đời sống hàng

ngảy cũng như trong khoa học, an ninh, y học, quân sự Ngày nay, ứng dụng của thị

giác máy đã trở nên rất rộng lớn và đa dạng, len lỏi vào mọi lĩnh vực từ quân sự, khoa học, vũ trụ, cho đến y học, sản xuất, và tự động hóa.

Nhận diện là một trong các ứng dụng của thị giác máy tính, xuất hiện cách đây khá lâu và vẫn luôn thu hút được nhiều sự quan tâm, nghiên cứu Đặc biệt là trong vài

thập niên gần đây, do sự thúc day của quá trình tin học hóa trong mọi lĩnh vực, bài toán

nhận diện không còn dừng lại ở mức độ nghiên cứu nữa mà nó trở thành một lĩnh vực

dé áp dụng vào thực tế Các bài toán nhận diện đang được ứng dụng trong thực tế hiện nay tập trung vào nhận diện mẫu, nhận diện tiếng nói và nhận diện chữ Nhận dạng cử

chỉ tay là một trong những thuật toán nhận diện mẫu được ứng dụng rất nhiều vào các

hoạt động thực tiễn Bài toán lay đầu vào là một ảnh hoặc một video, từ đó thông qua

quá trình trích xuất đặc trưng và nhận dạng sau đó đưa ra kết quả.

Trong những năm trở lại đây, với sự phát triển của công nghệ máy tính và khoa học đữ liệu, dẫn đến sự phát triển của Học sâu Các kiến trúc mạng nơ-ron được đề xuất để giải quyết các bài toán nhận dạng cử chỉ tay Ưu điểm vượt trội của các mạng nơ-ron

là khả năng học từ đầu đến cuối (End-to-end Learning), tức là khả năng học từ dữ liệu

và nhãn của dữ liệu mà không cần sự can thiệp của con người.

Trong bài toán này, đồ án sẽ trình bày kiến trúc mạng no-ron phù hợp nhất cho bài toán nhận dạng cử chi tay và có thé ứng dung đề điều khiến thiết bị Kiến trúc này

là sự kết hợp của mạng nơ-ron tích chập (CNN) và một mô-đun dé có thé lay được thông tin từ các mốc thời gian khác nhau Bang sự kết hợp này, mô hình có thé có được thông

tin từ cả miền không gian và miễn thời gian Kiến trúc này được gọi là mô-đun dịch chuyền thời gian (Temporal Shift Module - TSM)

Trong nội dung trình bày của đồ án này, đồ án sẽ trình bày một số nội dung như

GVHD: PGS.TS Pham Văn Cường Page |1 SVTH: Nguyễn Thế An - D17HTTT1

Trang 14

DO ÁN TOT NGHIỆP

e Chương 1: Tổng quan về bài toán nhận diện cử chỉ tay

Nội dung chương 1 sẽ khái quát về bài toán nhận diện cử chỉ tay, tính ứng dụng vào thực tiễn của bài toán Các vấn đề và phương pháp giải quyết bài toán và trình bày về phạm vi đồ án

e Chương 2: Nhận diện cử chi tay sử dụng phương pháp học sâu

Nội dung chương 2 sẽ trình bày về học sâu và đưa ra nội dung chỉ tiết về một số thuật toán nhận diện cử chỉ tay và mô hình TSM, các điểm mạnh và điểm yếu của thuật

toán đó.

e Chương 3: Thực nghiệm và đánh gia

Nội dung của chương 3 trình bay quá trình thu thập, xử lý dữ liệu, mô tả phương

pháp thực nghiệm và đánh giá mô hình TSM ứng dụng vào nhận diện cử chỉ tay và trình

bày các kết quả của quá trình thực nghiệm

e Chương 4: Tong kết

Tổng kết bài toán, tóm tắt những kết quả đã đạt được và còn chưa đạt được Từ

đó đề xuất mục tiêu hướng tới cũng như hướng nghiên cứu, phát triển tiếp theo

GVHD: PGS.TS Phạm Văn Cường Page |2 SVTH: Nguyễn Thế An - D17HTTT1

Trang 15

ĐỎ AN TOT NGHIỆP

CHƯƠNG 1

TONG QUAN VE BÀI TOÁN NHẠN DIỆN CỬ CHÍ TAY

Trong chương 1, đồ án trình bài cái nhìn tổng quan về bài toán nhận diện cử chi tay Các phương pháp giải quyết bài toán Chương 1 sẽ gồm các phan

e Bài toán nhận diện cử chỉ tay

e Cac phương pháp nhận diện cử chi tay

e_ Mục tiêu đồ án

1.1 Giới thiệu bài toán nhận diện cử chỉ tay

Lịch sử phát triển của bài toán nhận diện cử chỉ tay dé điều khiển máy tính bắt đầu bằng các phát minh dựa trên găng tay Các nhà nghiên cứu nhận ra răng có thể sử

dụng cử chỉ tương tự như ngôn ngữ ký hiệu dé đưa ra các lệnh đơn giản cho máy tính.

Với sự phát triển của máy móc như các máy cảm biến gia tốc, máy ảnh hồng ngoại hay các cảm biến dẫn đến sự phát triển của bài toán Sau đó nhờ vào sự phát triển của phan cứng và công nghệ các nhà nghiên cứu cuối cùng cũng phát triển được hệ thống nhận

dạng cử chỉ dựa vào thị giác máy tính mà không cần bắt kỳ cảm biến nào được gắn thêm

Vào tay.

Bắt đầu từ những năm 90s với sự hạn chế về năng lực tính toán Các nhà nghiên cứu đã sử dụng một găng tay được gắn với các cảm biến đề thu thập dữ liệu, các thông tin đó sẽ được gan với một cử chi cu thé và được sử dụng như là các mẫu dé nhận diện Các găng tay cảm biến được sử dụng cho quá trình thu thập dữ liệu được phát

triển qua từng thời kỳ Một trong những nguyên mẫu găng tay đầu tiên được phát minh tại trường đại học MIT vào năm 1977 Theo sau đó là một loạt các phát minh về găng

tay cảm biến cho phép lấy dữ liệu một cách chính xác hơn.

GVHD: PGS.TS Phạm Văn Cường Page |3 SVTH: Nguyễn Thế An - D17HTTT1

Trang 16

ĐỎ AN TOT NGHIỆP

Hình 1-1 Găng tay được phát triển bởi MIT với nhiều cảm biến

Hệ thống nhận dạng cử chỉ bằng thị giác máy tính được nghiên cứu và phát triển

vào những năm 80s Tại thời điểm đó công nghệ sử dụng thị giác máy tính gặp rất nhiều trở ngại như máy ảnh với hiệu suất tính toán rất thấp và cho ra độ phân giải rất kém cùng

với sự không nhất quán về màu sắc Do đó các nghiên cứu về sử dụng thị giác máy tính

cho bài toán nhận diện cử chỉ tay chưa được công nhận một cách rộng rãi Hình 1.2 minh

họa một ví dụ về ảnh được thu bởi máy ảnh những năm 80s.

Trong những năm gần đây, công nghệ phát triển cùng với việc các máy ảnh cũng phát triển và hình ảnh thu được đã trở nên rõ nét với độ phân giải cao, màu sắc thống nhất, tạo tiền đề cho sự phát triển của phương pháp sử dụng thị giác máy tính cho bài

toán nhận diện cử chỉ tay.

Hơn nữa với sự phát triển của học sâu, các phương pháp càng ngày càng cho độ chính xác cao hơn và có thé ứng dụng tốt hơn vào trong thực tế.

Với phương pháp thị giác máy tính, dữ liệu sẽ được thu lại dưới dạng video hoặc

dạng ảnh Mỗi ảnh hoặc mỗi video đó sẽ được gán với một nhãn cụ thể và được sử dụng để huấn luyện.

1.2 Ứng dụng của bài toán nhận diện cử chỉ tay

GVHD: PGS.TS Phạm Văn Cường Page |4 _ SVTH: Nguyễn Thế An - D17HTTT1

Trang 17

ĐỎ AN TOT NGHIỆP

Động lực đăng Sau sự quan tâm của các nhà nghiên cứu cho bài toán nhận diện

cử chỉ tay cho dù dùng hình ảnh hay cảm biến là có thé ứng dụng được cho nhiều

lĩnh vực khác nhau, chang hạn như tương tác người — máy, tương tác thực tế ảo

và thực tế ảo tăng cường, nhận dạng ngôn ngữ ký hiệu và xây dựng người máy.

Trong nhiều bộ phim về tương lai, các nhân vật thường sử dụng cử chỉ tay để

tương tác với máy tính như được mô tả trong hình 1.3 Hiện tại các hệ thống chưa

cho phép con người có thé thao tác tự do như vậy, nhưng những ví dụ này cho

thầy tiềm năng mà hệ thống tương tác dựa trên cử chỉ tay có thé phát triển Điều

này sẽ làm thay đổi hoàn toàn cách con người tương tác với máy tinh trong tương

1.2.1 Tương tác với thực tế ảo và thực tại tăng cường

Thực tế ảo (VR)

VR là một công nghệ tạo ra các hình ảnh, âm thanh và cảm giác mô phỏng sự hiện

diện của người dùng trong một môi trường Một người sử dụng môi trường thực tế ảo

chất lượng cao có thể nhìn và di chuyên tự do xung quanh thế giới nhân tạo.

Thực tại tăng cường (AR)

AR là góc nhìn trên thế giới thực được tạo ra bởi máy tính AR nâng cao môi trường thực tại, ngược lại, VR thay thế toàn bộ thế giới thật bằng một thế giới mô

Ngày nay các công nghệ về VR đang được phát triển rất rằm rộ, có nhiều nhà phát

triển đã ứng dụng được công nghệ VR vào việc làm phim, làm game Công nghệ AR

GVHD: PGS.TS Phạm Văn Cường Page |5 SVTH: Nguyễn Thế An — D17HTTT1

Trang 18

ĐỎ AN TOT NGHIỆP

cũng đang được phát triển nhưng so với VR vẫn còn cần một thời gian nữa cho đến khi chúng ta có thể thực sự sử dụng công nghệ này vào cuộc sống.

1.2.2 Nhận diện ngôn ngữ ký hiệu

Ngôn ngữ ký hiệu là ngôn ngữ được sử dụng bởi người khiếm khuyết về thính giác hoặc lời nói Họ sử dụng ngôn ngữ ký hiệu như một phương tiện giao tiếp không lời dé thé hiện suy nghĩ và cảm xúc của ho.

Tuy nhiên, chỉ có một số ít người có thê hiểu được ngôn ngữ ký hiệu Do đó những người khiếm thính phải yêu cầu sự trợ giúp của một thông dịch viên Mặc dù việc thuê

thông dịch viên là rất tốn kém và không phải lúc nào cũng có thể Một hệ thống nhận

dạng ngôn ngữ ky tự mạnh mẽ và hiệu quả có thé giúp mọi người có một công cụ rẻ và dé dàng sử dụng dé tương tác với người khiếm khuyết về thính giác và lời nói.

1.2.3 Công cụ hỗ trợ cuộc sống

Một ứng dụng khác của việc nhận diện cử chỉ tay là có thể hỗ trợ chúng ta trong cuộc sống thường ngày Do người máy vẫn là một điều khá xa vời tại thời điểm hiện tại, nên câu hỏi đặt ra là có cách nào để những người bệnh không thé di chuyén duoc có thé tương tác với môi trường xung quanh Điều này đã đưa đến một ứng dụng là sử dụng nhận diện cử chỉ tay dé họ có thé tương tác với môi trường xung quanh như có

thể tắt, bật đèn, mà không cần phải di chuyên.

1.3 Một số phương pháp cho bài toán nhận diện cử chỉ tay

1.3.1 Phương pháp nhận diện cử chỉ tay cỗ điển

Trong những năm đầu phát triển bài toán nhận diện cử chỉ tay đã có một số phương

pháp được đưa ra Phương pháp đầu tiên được các nhà nghiên cứu đưa ra đó là sử

dụng một bộ cảm biến được gắn trên một chiếc găng tay dé thu thập các thông số khi thực hiện một hành động nào đó Các thông số đó sau khi thu thập sẽ được đưa vào xử lý là thông qua các thuật toán nhận diện đề có thể nhận diện được cử chỉ tay Hình 1.4 minh họa phương pháp truyền thống cho bài toán nhận diện cử chỉ tay.

Hình 1-4 Minh họa hệ thống nhận diện cứ chỉ tay cổ điển

GVHD: PGS.TS Phạm Văn Cường Page |6 SVTH: Nguyễn Thế An - D17HTTT1

Trang 19

ĐỎ AN TOT NGHIỆP

Nhận diện cử chỉ tay thường bao gồm các giai đoạn: thu thập dit liệu từ cảm biến, tiền xử lý dữ liệu, cho dữ liệu đi qua thuật toán nhận diện và thu về kết quả, hậu xử lý kết quả và cuối cùng là đưa ra kết quả nhận diện

e Thu dữ liệu từ cảm biến: người dùng sẽ phải đeo một chiếc găng tay được gắn các cảm biến đề thu đữ liệu cử động.

e Tiền xử lý: Giảm nhiễu trong quá trình thu dữ liệu từ cảm biến, chuẩn hóa dữ

e Thuật toán nhận diện: Thường là các thuật toán học máy cô điển như máy vectơ

hỗ trợ đa lớp (SVM),

e Hậu xử lý: Xử lý các kết quả được thuật toán trả về và đưa ra kết quả cuối cùng.

Thuật toán máy vectơ hỗ trợ (SVM)

Có thể mô tả 1 cách đơn giản về bộ phân lớp SVM như sau: Cho trước 2 tập dữ liệu học, mỗi tập thuộc về 1 lớp cho trước, bộ phân lớp SVM sẽ xây dựng mô hình

phân lớp dựa trên 2 tập dữ liệu này Khi có một mẫu mới được đưa vào, bộ phân lớp sẽ

đưa ra dự đoán xem mẫu này thuộc lớp nào trong 2 lớp đã định Phương pháp này

được Vapnik và cộng sự đề xuất năm 1992, lấy nền tảng từ lý thuyết học thống kê của

Vapnik & Chervonenkis vào năm 1960.

Đặc trưng cơ bản quyết định khả năng phân loại của một bộ phân loại là hiệu suất tong quát hóa, hay là khả năng phân loại những dữ liệu mới dựa vào những tri thức đã tích lũy được trong quá trình huấn luyện Thuật toán huấn luyện được đánh giá là tốt nếu sau quá trình huấn luyện, hiệu suất tổng quát hóa của bộ phân loại nhận được cao.

Hiệu suất tổng quát hóa phụ thuộc vào hai tham số là sai số huấn luyện và năng lực

của máy học Trong đó sai số huấn luyện là tỷ lệ lỗi phân loại trên tập dữ liệu huấn luyện Còn năng lực của máy học được xác định bằng kích thước Vapnik

Chervonenkis (kích thước VC) Kích thước VC là một khái niệm quan trọng đối với

một họ hàm phân tách (hay là bộ phân loại) Đại lượng này được xác định bang số

điểm cực đại mà họ hàm có thể phân tách hoàn toàn trong không gian đối tượng, Một bộ phân loại tốt là bộ phân loại đơn giản nhất và đảm bảo sai số huấn luyện nhỏ.

Phương pháp SVM được xây dựng dựa trên ý tưởng này

Công thức máy vectơ hỗ trợ

Công thức SVM đơn giản nhất là trường hợp tuyến tính khi mà một siêu phẳng quyết định nằm giữa hai tập dữ liệu.Trong trường hợp này, không gian giả định là một tập các điểm có phương trình là: f(x) = w- x + b SVM đi tìm một siêu phăng tối ưu như một phương án đề phân chia hai tập hợp dữ liệu và đồng thời có thể sử dụng cho

những dữ liệu mới.

Có hai phương pháp dé tìm siêu phang tối ưu Thứ nhất là tìm siêu phăng nằm giữa 2 tập đóng (Hình 1.5) Thứ hai là cực đại hóa khoảng cách giữa hai mặt phang hỗ trợ (cực đại hóa lề) (Hình 1.6) Cả hai phương pháp đều tim ra một mặt phẳng quyết

GVHD: PGS.TS Phạm Văn Cường Page |7 SVTH: Nguyễn Thế An — D17HTTT1

Trang 21

ĐỎ AN TOT NGHIỆP

| h———

Hình 1-8 Anh xạ phi tuyến tính và ham hạt nhân

Việc huấn luyện SVM là việc giải bài toán quy hoạch toàn phương với các ràng buộc bằng và không bằng Việc xử lý sau cùng là xử lý các tham số dương ơ và rút ra một tập con của tập huấn luyện tương ứng với các tham số Việc huấn luyện một tập dữ liệu nhỏ (nhỏ hơn 1000 mẫu) có thé được xử lý một cách nhanh chóng trên một

máy tính có cấu hình thích hợp Đối với những tập dữ liệu lớn hơn, việc giải bài toán quy hoạch toàn phương đòi hỏi một máy tinh có năng lực lớn và bộ nhớ lớn dé lưu trữ ma trận hạt nhân trong suốt quá trình tính toán Bộ nhớ yêu cầu lên đến bình phương kích thước của tập huấn luyện.

Có nhiều phương pháp huấn luyện SVM được phát triển dé tận dụng bộ nhớ, cải thiện tốc độ huấn luyện và tìm một mô hình tốt nhất bằng cách dùng một nhân và

các siêu tham số thích hợp (Burges, 1988) Lưu ý rằng, SVM cơ bản dùng cho hai lớp Dé có thé dùng cho nhiều lớp thì ta phải kết hợp nhiều bộ phân loại hai lớp hoặc xây

dựng SVM cho nhiều lớp.

Thuật toán máy vectơ hỗ trợ đa lớp

Trong bài toán nhận diện cử chỉ tay, cử chỉ tay không chỉ có hai lớp, mà có rất nhiều lớp Do đó dé giải quyết bài toán nhận diện cử chỉ tay chúng ta phải xử lý bằng phương pháp nhận diện đa lớp Hình 1.9 minh họa dữ liệu gồm nhiều lớp.

GVHD: PGS.TS Phạm Văn Cường Page |9 _ SVTH: Nguyễn Thế An - D17HTTT1

Trang 22

Dé có thể giải quyết bài toán đa lớp bằng thuật toán máy vecto hỗ trợ, chúng ta cần chia bài toán đa lớp thành các bài toán phân loại nhị phân Phương pháp đầu tiên

đó là với mỗi lớp, so sánh lớp đó với từng lớp khác, việc này sẽ biến bài toán phân loại đa lớp thành nhiều bài toán phân loại nhị phân Phương pháp này gọi là một với một.

Một phương pháp khác đó chính là với mỗi lớp, so sánh lớp đó với tất cả các lớp cònlại, phương pháp này gọi là một với còn lại.

Thuật toán máy vectơ hỗ trợ có thể phân biệt giữa hai lớp nhị phân, do đó, theo

hai cách được trình bày phía trên, chúng ta có thể sử dụng máy vectơ hỗ trợ đề phân

loại các lớp.

e Với phương pháp một với còn lại: bộ phân loại có thé sử dụng ? máy vectơ hỗ trợ dé phân loại m lớp Mỗi máy vecto hỗ trợ sẽ phân loại một trong m

e Với phương pháp một với một: bộ phân loại có thé sử dung máy

vectơ hỗ trợ

Vi dụ với bài toán phân loại ba lớp như hình 1.9 Khi áp dụng hai phương pháp cho bộ

dữ liệu sẽ được kết quả như sau:

e Khi sử dụng phương pháp một với một, chúng ta cần một siêu mặt phang dé phân biệt mỗi 2 lớp Bỏ qua các điểm dữ liệu thuộc lớp thứ ba Điều này có

nghĩa là việc phân tách chỉ sử dụng các điểm dữ liệu thuộc vào hai lớp trong lần phân tách hiện tại Ví dụ như hình 1.10, đường màu đỏ-xanh nước biển sẽ phân biệt giữa hai lớp là đỏ và xanh nước biển Nó sẽ không quan tâm đến các điểm

thuộc lớp màu xanh lá cây.

GVHD: PGS.TS Phạm Văn Cường Page |10_ SVTH: Nguyễn Thế An - D17HTTT1

Trang 23

ĐỎ AN TOT NGHIỆP

Hình 1-10 Minh họa việc áp dụng phương pháp một với một cho bộ dit liệu ví du

e Khi sử dụng phương pháp một với còn lại, chúng ta cần một siêu mặt phăng

phân biệt giữa một lớp hiện tại và tất cả các lớp còn lại Điều này nghĩa là việc

phân tách sẽ sử dụng tất cả các lớp, chia chúng thành hai nhóm, một nhóm

thuộc lớp hiện tại và một nhóm gồm tắt cả các điểm dữ liệu thuộc các lớp còn

lại Ví dụ trong hình 1.11, đường màu xanh lá cây sẽ phân chia hai lớp là lớpmàu xanh lá cây và các lớp còn lại.

x1 #

Hình 1-11 Minh họa áp dụng phương pháp một với tat cả cho tập dữ liệu

Với một trong hai phương pháp trên, ta có thể áp dụng thuật toán máy vectơ hỗ trợ cho

bài toán nhận diện cử chỉ tay với nhiêu lớp.

1.3.2 Phương pháp nhận diện cử chỉ tay hiện đại

Trong những năm gần đây, rất nhiều các phương pháp nhận diện cử chỉ tay được đưa

ra, nhưng trong khuôn khô của đô án, đô án chỉ đưa ra hai phương pháp cơ bản nhât cho

GVHD: PGS.TS Phạm Văn Cường Page |11 SVTH: Nguyén Thé An — D17HTTT1

Trang 24

ĐỎ AN TOT NGHIỆP

bài toán nhận diện cử chỉ tay Hai phương pháp đó chính là phương pháp học sâu sử

dụng mô hình mạng nơ-ron tích chập 2 chiều và mô hình mạng nơ-ron tích chập 3 chiều Mô hình mạng no-ron tích chập 2 chiều là mô hình sử dụng các lớp tích chập đóng vai trò trích xuất đặc trưng của ảnh, sau đó sử dụng các đặc trưng đó cho các bài toán khác nhau Bài toán phân loại cử chỉ tay cũng là một trong các bài toán có thể ứng dụng mô hình mạng nơ-ron tích chập Mô hình mạng nơ-ron tích chập với đầu vào là một ảnh

tĩnh và đầu ra sẽ là xác suất ảnh đó được xếp vào lớp nào của bài toán.

Mô hình mạng nơ-ron tích chập 3 chiều, tương tự như mô hình mạng nơ-ron tích chập nhưng bộ lọc trong các lớp tích chập sẽ được thêm một chiều đó là chiều thời gian Đầu vào của mô hình thay vì là một ảnh tĩnh thì sẽ là một chuỗi các ảnh liên tiếp nhau Điều này sẽ làm tăng độ chính xác đối với bài toán nhưng cũng sẽ làm tăng số lượng tham số của mô hình và giảm tốc độ tính toán.

Trong nội dung của đồ án, đồ án sẽ sử dụng mô hình mô-đun dịch chuyền miền thời

gian (TSM) Mô hình là sự kết hợp của mô-đun giúp lấy thông tin từ miền thời gian và mạng nơ-ron tích chập 2 chiều Vừa có thé có độ chính xác cao hơn so với mạng nơ-ron

tích chập 2 chiều với những bai toán có thông tin trên miền thời gian và tốc độ xử lý

nhanh hơn so với mạng nơ-ron tích chập 3 chiêu 1.4 Phạm vi đồ án

Nội dung đồ án sẽ tập trung vào huấn luyện một mô hình nhận diện cử chỉ tay có thể chạy trên thời gian thực sử dụng mô hình mô-đun dịch chuyên thời gian (TSM) So sánh mô hình mô-đun dịch chuyền thời gian (TSM) với hai phương pháp là mạng nơ-ron tích chập 2 chiều và mạng nơ-ron tích chập 3 chiều Thực nghiệm, đánh giá mô hình và xây

dựng chương trình minh họa.

1.5 Kết luận chương

Trong chương 1, đồ án đã trình bày tổng quát về bài toán nhận diện cử chỉ tay, các giai đoạn phát triển, giới thiệu một số phương pháp nhận diện cử chỉ tay sẽ được trình bày trong đồ án và phạm vi của đồ án.

Trong chương tiếp theo, đồ án sẽ trình bày tổng quan về học sâu, chi tiết về mô hình

mạng nơ-ron tích chập 2 chiều, mô hình mạng nơ-ron tích chập 3 chiều và mô hình

mô-dun dich chuyên thời gian (TSM) Điểm yếu và điểm mạnh khi áp dụng các mô hình

trên vào bài toán nhận diện cử chi tay ứng dung dé điều khiển thiết bị điện tử.

GVHD: PGS.TS Phạm Van Cường Page |12_ SVTH: Nguyễn Thế An - D17HTTT1

Trang 25

ĐỎ AN TOT NGHIỆP

CHƯƠNG 2

NHAN DIỆN CỬ CHÍ TAY SỬ DỤNG PHƯƠNG PHÁP HOC SAU

Trong chương này, đồ án sẽ trình bày khái quát về học sâu, đi sâu vào giới thiệu về

một số mô hình học sâu được sử dụng trong bài toán nhận diện cử chỉ tay và mô hình mô-đun dịch chuyên thời gian (TSM) Chương 2 sẽ gồm các phần:

e_ Giới thiệu về học sâu

e Mô hinh CNN

e Mô hình 3D CNN

e Mô-đun dịch chuyền thời gian (TSM) 2.1 Giới thiệu về học sâu

2.1.1 Khái niệm

Tri tuệ nhân tao hay trí thông minh nhân tạo (Artificial intelligence hay Machine

intelligence - AI) là trí tuệ do con người lập trình tạo nên với mục tiêu giúp máy tính có

thể tự động hóa các hành vi thông minh như con người Trí tuệ nhân tạo luôn là một ngành khoa học khó tiếp cận cho những người mới bắt đầu bởi trí tuệ nhân tạo được xây dựng từ nhiều nền tảng khác nhau Những năm gan đây, với tốc độ phát triển vô cùng nhanh chóng nhờ vào những tiến bộ trong ngành khoa học dữ liệu (Data Science) và những siêu máy tính có tốc độ tính toán cực kì nhanh chóng, AI nổi lên như một bằng chứng của cuộc cách mạng công nghiệp lần thứ tư (1 - động cơ hơi nước, 2 - năng lượng điện, 3 - công nghệ thông tin) và đang len lỏi vào mọi lĩnh vực trong đời sống mà có thể chúng ta không nhận ra, giúp cho cuộc sống của con người ngày một tốt đẹp hơn.

Hình 2-1 Mô hình tổng quan về Trí tuệ nhân tạo

Hoc máy (Machine Learning - ML) là một tập con cua AI Nói đơn giản, MachineLearning là một lĩnh vực nhỏ của Khoa Học Máy Tính, nó có khả năng tự học hỏi dựa

trên dữ liệu đưa vào mà không cần phải được lập trình cụ thể Nếu AI thể hiện một mục

GVHD: PGS.TS Phạm Van Cường Page |13_ SVTH: Nguyễn Thế An - D17HTTT1

Trang 26

ĐỎ AN TOT NGHIỆP

tiêu của con người, ML là một phương tiện được kỳ vọng sẽ giúp con người đạt được

mục tiêu đó Và thực tế thì ML đã mang nhân loại đi rất xa trên quãng đường chinh phục AI Nhưng vẫn còn một quãng đường xa hơn rất nhiều cần phải đi Machine Learning và AI có mối quan hệ chặt chẽ với nhau nhưng không han là trùng khớp vì một bên là

mục tiêu (AI), một bên là phương tiện (ML) Chinh phục AI mặc dù vẫn là mục đích tối

thượng của ML, nhưng hiện tại ML tập trung vào những mục tiêu ngắn hạn hơn như:

e Lam cho máy tính có những khả năng nhận thức co ban của con người như

nghe, nhìn, hiểu được ngôn ngữ, giải toán, lập trình

e Hỗ trợ con người trong việc xử lý một khối lượng thông tin khổng lồ mà

chúng ta phải đối mặt hàng ngày, hay còn gọi là Big Data.

Học sâu (Deep Learning - DL) là một tập các kỹ thuật học máy mạnh sử dụng mạng

nơ-ron nhiều lớp Đây hiện là công nghệ dẫn đầu trong việc giải quyết nhiều bài toán trong lĩnh vực nhận diện ảnh, nhận diện giọng nói, từ đó mang thêm nhiều giá tri mới cho doanh nghiệp trên nhiêu lĩnh vực Mạng nơ-ron nhân tạo (Artificial Neural Network-ANN) là mô hình xử lý thông tin được mô phỏng dựa trên hoạt động của hệ thống thần kinh của sinh vật, bao gồm số lượng lớn các nơ-ron được gắn kết dé xử lý thông tin ANN giống như bộ não con người, được học bởi kinh nghiệm (thông qua huấn luyện), có khả năng lưu giữ những kinh nghiệm hiểu biết (tri thức) và sử dụng những tri thức đó trong việc dự đoán các dữ liệu chưa biết (unseen data) Các ứng dụng của mạng Neuron được sử dụng trong rất nhiều lĩnh vực như điện, điện tử, kinh tế, quân sự dé

giải quyết các bài toán có độ phức tạp va đòi hỏi có độ chính xác cao, các tác vụ “dé với

người nhưng khó với máy”:

e Nhận diện mẫu: nhận diện khuôn mặt, nhận diện chữ viết

e Dự đoán: dự đoán giá cổ phiếu tăng hay giảm, dự đoán thời tiết mưa hay nắng

e Xử lý tín hiệu: loc âm, khử nhiễu ảnh

e Điều khiến: điều khiển xe tự hành, máy bay không người lái

e Soft sensors: lấy thông tin từ các cảm biến dé đánh giá và đưa ra một kết quả e Phát hiện bất thường: phát hiện bất thường trong các sản phẩm, trang web

2.1.2 Những dấu mốc quan trọng của học sâu

GVHD: PGS.TS Phạm Văn Cường Page |14 SVTH: Nguyễn Thế An — D17HTTT1

Trang 27

Một trong những nền móng đầu tiên của mạng nơ-ron và học sâu là perceptron

learmng algorithm (hoặc gọn là perceptron) Perceptron là một thuật toán học có giám

sát giúp giải quyết bài toán phân lớp nhị phân, được khởi nguồn bởi Frank Rosenblatt

năm 1957 trong một nghiên cứu được tài trợ bởi Văn phòng nghiên cứu hải quân Hoa

Ky (U.S Office of Naval Research — từ một cơ quan liên quan đến quân sự) Thuật toán

perceptron được chứng minh là hội tụ nếu hai lớp dữ liệu là có thé phân tách tuyến tính.

Với thành công nảy, năm 1958, trong một hội thảo, Rosenblatt đã có một phát biểu gây

tranh cãi Từ phát biểu này, tờ New York Times đã có một bài báo cho rằng perceptron được Hải quân Hoa Kỳ mong đợi “có thé đi, nói chuyện, nhìn, viết, tự sinh sản, và tự

nhận thức được sự tồn tại của mình” (Chúng ta biết rằng cho tới giờ các hệ thống nâng cao hơn perceptron nhiều lần vẫn chưa thể).

Mặc dù thuật toán này mang lại nhiều kỳ vọng, nó nhanh chóng được chứng minh

không thể giải quyết những bài toán đơn giản Năm 1969, Marvin Minsky và Seymour Papert trong cuốn sách nỗi tiếng Perceptrons đã chứng minh rằng không thé ‘hoc’ được hàm số XOR khi sử dụng perceptron Phát hiện này làm choáng váng giới khoa học thời

gian đó (bây giờ chúng ta thấy việc này khá hiển nhiên) Perceptron được chứng minh rằng chỉ hoạt động nếu dữ liệu là có thể phân tách tuyến tính.

Phát hiện này khiến cho các nghiên cứu về perceptron bị gián đoạn gần 20 năm Thời kỳ này còn được gọi là Mùa đông AI thứ nhất (The First AI winter).

Cho tới khi MLP và Backpropagation ra đời vào những năm 80s

MLP và Backpropagation (80s)

Geoffrey Hinton tốt nghiệp PhD ngành neural networks năm 1978 Năm 1986, ông cùng với hai tác giả khác xuất bản một bai báo khoa hoc trên Nature với tựa dé

“Learning representations by back-propagating errors” Trong bai báo này, nhóm của

ông chứng minh rang neural nets với nhiều hidden layer (được gọi là multi-layer

GVHD: PGS.TS Pham Văn Cường Page |15 SVTH: Nguyễn Thế An — D17HTTT1

Trang 28

ĐỎ AN TOT NGHIỆP

perceptron hoặc MLP) có thé được huấn luyện một cách hiệu quả dựa trên một quy trình đơn giản được gọi là backpropagation (backpropagation là tên gọi mỹ miéu của quy tắc chuỗi — chain rule — trong tính đạo hàm Việc tính được đạo hàm của hàm sỐ phức tạp mô tả quan hệ giữa đầu vào và đầu ra của một mạng nơ-ron là rất quan trọng vì hầu hết các thuật toán tối ưu đều được thực hiện thông qua việc tính đạo hàm, gradient descent

là một ví dụ) Việc này giúp mạng nơ-ron thoát được những hạn chế của perceptron về

việc chỉ biéu diễn được các quan hệ tuyến tinh Dé biểu diễn các quan hệ phi tuyến, phía sau mỗi lớp là một hàm kích hoạt phi tuyến, ví dụ hàm sigmoid hoặc tanh (ReLU ra đời

năm 2012) Với các lớp an, mang nơ-ron được chứng minh rằng có khả năng xấp xi hầu

hết bất kỳ hàm số nào qua một định lý được gọi là universal approximation theorem.

Mạng nơ-ron quay trở lại cuộc chơi.

Thuật toán này mang lại một vài thành công ban đầu, nồi trội là mạng nơ-ron tích

chập (convnets hay CNN) (còn được gọi là LeNet) cho bài toán nhận dạng chữ số viết tay được khởi nguồn bởi Yann LeCun tại AT&T Bell Labs (Yann LeCun là sinh viên

sau cao học của Hinton tại đại học Toronto năm 1987-1988) Dưới đây là kiến trúc của

LeNet được áp dụng, network là một CNN với 5 layer, còn được gọi là LeNet-5 (1998).

64 features = features

32 features li=

\ a.

` i TM `.`II Ni

ies wa) — 2 i k_Í ax pooling œ

Input image \ 1 (2x2,s=2) convolution

(28x28) conva pool1 (3x3,s=1) conv2 (2x25=2) - pool2

(28x28x32) (14x14x32} (14x14x64) (77x64)

convolution &

1* convolutional layer 2TM convolutional layer

Hình 2-3 Kiến trúc LeNet-5

Mô hình này được sử dụng rộng rãi trong các hệ thống đọc số viết tay trên các

check (séc ngân hàng) và mã vùng bưu điện của nước Mỹ.

LeNet là thuật toán tốt nhất thời gian đó cho bài toán nhận dạng ảnh chữ số viết tay Nó tốt hơn MLP thông thường (với fully connected layer) vì nó có khả năng trích

xuất được đặc trưng trong không gian hai chiều của ảnh thông qua các filters (bộ lọc) hai chiều Hơn nữa, các filter này nhỏ nên việc lưu trữ và tính toán cũng tốt hơn so với MLP thông thường (Yan LeCun có xuất phát từ Electrical Engineering nên rất quen

thuộc với các bộ lọc.)

Mùa đông AI thứ hai (90s - đầu 2000s)

Các mô hình tương tự được kỳ vọng sẽ giải quyết nhiều bài toán phân loại ảnh

khác Tuy nhiên, không như các chữ số, các loại ảnh khác lại rất hạn chế vì máy ảnh sỐ chưa phô biến tại thời điểm đó Ảnh được gán nhãn lại càng hiếm Trong khi dé có thé huấn luyện được mô hình CNN, ta cần rất nhiều dữ liệu huấn luyện Ngay ca khi dit liệu

GVHD: PGS.TS Phạm Văn Cường Page |16 SVTH: Nguyễn Thế An - D17HTTT1

Trang 29

ĐỎ AN TOT NGHIỆP

có đủ, một vấn đề nan giải khác là khả năng tính toán của các máy tính thời đó còn rất hạn chế.

Một hạn chế khác của các kiến trúc MLP nói chung là hàm mắt mát không phải

là một hàm lỗi Việc này khiến cho việc tìm nghiệm tối ưu toàn cục cho bài toán tối ưu hàm mat mát trở nên rất khó khăn Một van đề khác liên quan đến giới han tính toán của máy tính cũng khiến cho việc huấn luyện MLP không hiệu quả khi số lượng các lớp ân

lớn lên Van đề này có tên là vanishing gradient.

Nhắc lại rằng hàm kích hoạt được sử dung thời gian đó là sigmoid hoặc tanh — là các ham bị chặn trong khoảng (0, 1) hoặc (-1, 1) (Nhắc lại đạo hàm của hàm sigmoid ơ(z) là o(z)(1 — o(z)) là tích của hai số nhỏ hơn 1) Khi sử dung backpropagation đề tính đạo hàm cho các ma trận hệ số ở các lớp đầu tiên, ta cần phải nhân rất nhiều các giá tri nhỏ hơn 1 với nhau Việc này khiến cho nhiều đạo hàm thành phan bang 0 do xấp xi tính toán Khi đạo hàm của một thành phần bằng 0, nó sẽ không được cập nhật thông

qua gradient descent!

Những han chế này khiến cho mang nơ-ron một lần nữa rơi vào thời ky băng giá Vào thời điểm những năm 1990 và đầu những năm 2000, mạng nơ-ron dần được thay

thế bởi support vector machines -SVM SVMs có ưu điểm là bài toán tối ưu dé tìm các

tham số của nó là một bài toán lỗi — có nhiều các thuật toán tối ưu hiệu quả giúp tim nghiệm của nó Các kỹ thuật về hạt nhân cũng phát triển giúp SVMs giải quyết được cả các van đề về việc dữ liệu không phân biệt tuyến tính.

Nhiều nhà khoa học làm Machine Learning chuyên sang nghiên cứu SVM trong thời gian đó, trừ một vài nhà khoa học cứng đầu

Cái tên được làm mới — Deep Learning (2006)

Năm 2006, Hinton một lần nữa cho rằng ông biết bộ não hoạt động như thế nào,

và giới thiệu ý tưởng của tiền huấn luyện không giám sát (unsupervised pretraining)

thông qua deep belief nets (DBN) DBN có thé được xem như sự xếp chồng các

unsupervised networks đơn giản như restricted Boltzman machine hay autoencoders.

Lay ví dụ với autoencoder Mỗi autoencoder là một mạng nơ-ron với một lớp an. Số hidden unit ít hon số input unit, và số output unit bang với số input unit Network

này đơn giản được huấn luyện dé kết quả ở lớp đầu ra giống với kết qua ở lớp đầu vào (và vì vậy được gọi là autoencoder) Quá trình dit liệu đi từ lớp đầu vào tới lớp an có thé

coi là mã hóa, quá trình dữ liệu đi từ lớp ẩn ra lớp đầu ra có thể được coi là giải mã Khi đầu ra giống với đầu vào, ta có thé thấy rang lớp an với ít unit hơn có dé mã hóa input khá thành công, và có thể được coi mang những tính chất của input Nếu ta bỏ lớp đầu vào, cô định (freeze) kết nối giữa lớp đầu vào và lớp an, coi đầu ra của lớp ân là một đầu vào mới, sau đó huấn luyện một autoencoder khác, ta được thêm một lớp an nữa Quá trình này tiếp tục kéo dài ta sẽ được một mạng đủ sâu mà đầu ra của mạng lớn này (chính là lớp ân của autoencoder cuối cùng) mang thông tin của đầu vào ban đầu Sau đó ta có thê thêm các lớp khác tuỳ thuộc vào bài toán (chăng hạn thêm lớp softmax ở

GVHD: PGS.TS Phạm Văn Cường Page |17 SVTH: Nguyễn Thế An - D17HTTT1

Trang 30

ĐỎ AN TOT NGHIỆP

cuối cho bài toán phân loại) Cả mạng được huấn luyện thêm một vài epoch nữa Quá

trình này được gọi là tinh chỉnh (fine tuning).

Tai sao quá trình huấn luyện như trên mang lại nhiều lợi ích?

Một trong những hạn chế đã đề cập của MLP là van dé vanishing gradient Những ma trận trọng số ứng với các lớp đầu của mạng rất khó được huấn luyện vì đạo hàm của hàm mat mát theo các ma trận này nhỏ Với ý tưởng của DBN, các ma trận trọng số ở những lớp ấn đầu tiên được tiền huấn luyện (pretrained) Các trọng số được tiền huấn luyện này có thé coi là giá trị khởi tạo tốt cho các lớp ẩn phía đầu Việc này giúp phần nào tránh được sự phiền hà của vanishing gradient.

Kể từ đây, mạng nơ-ron với nhiều lớp ấn được đổi tên thành học sâu.

Van dé vanishing gradient được giải quyết phần nào (vẫn chưa thực sự triệt dé), nhưng vẫn còn những van đề khác của học sâu: dit liệu huấn luyện quá ít, và khả năng tính toán của CPU còn rất hạn chế trong việc huấn luyện các mạng sâu.

Năm 2010, giáo sư Fei-Fei Li, một giáo sư ngành thị giác máy tính đầu ngành tại

Stanford, cùng với nhóm của bà tạo ra một cơ sở dữ liệu có tên ImageNet với hàng triệubức ảnh thuộc 1000 lớp dữ liệu khác nhau đã được gán nhãn Dự án này được thực hiện

nhờ vào sự bùng nỗ của internet những năm 2000 và lượng ảnh không lồ được upload lên internet thời gian đó Các bức ảnh này được gán nhãn bởi rất nhiều người (được trả

Bộ cơ sở đữ liệu này được cập nhật hàng năm, và ké từ năm 2010, nó được dùng

trong một cuộc thi thường niên có tên ImageNet Large Scale Visual Recognition

Challenge (ILSVRC) Trong cuộc thi này, dữ liệu huấn luyện được giao cho các đội tham gia Mỗi đội cần sử dụng dữ liệu này dé huấn luyện các mô hình phân lớp, các mô

hình này sẽ được áp dụng để dự đoán nhãn của dữ liệu mới (được giữ bởi ban tô chức).

Trong hai năm 2010 và 2011, có rất nhiều đội tham gia Các mô hình trong hai năm này chủ yếu là sự kết hợp của SVM với các feature được xây dựng bởi các bộ hand-crafted descriptors (SIFT, HoG, v.v.) Mô hình giành chiến thắng có top-5 error rate là 28% (càng nhỏ càng tốt) Mô hình giành chiến thắng năm 2011 có top-5 error rate là 26% Cải thiện không nhiều!

Đột phá (2012)

Năm 2012, cũng tại ILSVRC, Alex Krizhevsky, Ilya Sutskever, va Geoffrey

Hinton (lại là ông) tham gia và dat kết qua top-5 error rate 16% Kết quả này làm sững

sờ giới nghiên cứu thời gian đó Mô hình là một Deep Convolutional Neural Network,sau này được gọi là AlexNet.

Trong bài báo này, rất nhiều các kỹ thuật mới được giới thiệu Trong đó hai đóng

góp nổi bật nhất là hàm ReLU và dropout Hàm ReLU (ReLU(x) = max(x, 0)) với cách

tính và đạo hàm đơn giản (bằng 1 khi đầu vào không âm, bằng 0 khi ngược lại) giúp tốc độ huấn luyện tăng lên đáng kể Ngoài ra, việc ReLU không bị chặn trên bởi 1 (như

GVHD: PGS.TS Phạm Van Cường Page |18 SVTH: Nguyễn Thế An - D17HTTT1

Trang 31

ĐỎ AN TOT NGHIỆP

softmax hay tanh) khiến cho van dé vanishing gradient cũng được giải quyết phan nào Dropout cũng là một kỹ thuật đơn giản và cực kỳ hiệu quả Trong quá trình huấn luyện, nhiều hidden unit bị tắt ngẫu nhiên và mô hình được huấn luyện trên các bộ tham số còn lại Trong quá trình kiểm tra, toàn bộ các unit sẽ được sử dụng Cách làm này khá là có lý khi đối chiếu với con người Nếu chỉ dùng một phần năng lực đã đem lại hiệu quả thì

dùng toàn bộ năng lực sẽ mang lại hiệu quả cao hơn Việc nảy cũng giúp cho mô hình

tránh được overfitting và cũng được coi giống với kỹ thuật ensemble trong các hệ thống Machine Learning khác Với mỗi cách tắt các unit, ta có một mô hình khác nhau Với

nhiều tô hợp unit bị tắt khác nhau, ta thu được nhiều mô hình Việc kết hợp ở cuối cùng được coi như sự kết hợp của nhiều mô hình (và vì vậy, nó giống với ensemble learning).

Một trong những yếu tô quan trọng nhất giúp AlexNet thành công là việc sử dụng GPU (card đồ hoa) dé huấn luyện mô hình GPU được tạo ra cho game thủ, với kha năng

chạy song song nhiều lõi, đã trở thành một công cụ cực kỳ phù hợp với các thuật toán học sâu, giúp tăng tốc thuật toán lên nhiều lần so với CPU.

Sau AlexNet, tất cả các mô hình giành giải cao trong các năm tiếp theo đều là các

deep networks (ZFNet 2013, GoogLeNet 2014, VGG 2014, ResNet 2015) Những mô

hình này sẽ được trình bày ở phần sau của đồ án.

Í- | 8 layers 8 layers shallow

ILSVRC'15 lLSVRC14 ILSVRCI4 I|LSVRCl13 ILSVRCI2 ILSVRCII ILSVRC'10

ResNet GoogleNet VGG AlexNet

Hình 2-4 Kết quả ILSVRC đến năm 2015

Những công ty công nghệ lớn cũng dé ý tới việc phát triển các phòng nghiên cứu học sâu trong thời gian này Rất nhiều các ứng dụng công nghệ đột phá đã được áp dụng

vào cuộc sống hàng ngày Cũng ké từ năm 2012, số lượng các bài báo khoa học về học sâu tăng lên theo hàm số mũ Các blog về học sâu cũng tăng lên từng ngày

Rất nhiều những ý tưởng cơ bản của học sâu được đặt nền móng từ những năm 80-90 của thé kỷ trước, tuy nhiên học sâu chỉ thực sự đột phá trong khoảng 5-6 năm nay.

Sự bùng nổ này đến từ nhiều nguyên nhân:

e Sura đời của các bộ dữ liệu lớn được gan nhãn.

e Khả năng tính toán song song tốc độ cao của GPU.

GVHD: PGS.TS Phạm Van Cường Page |19_ SVTH: Nguyễn Thế An - D17HTTT1

Trang 32

ĐỎ AN TOT NGHIỆP

e - Sự ra đời của ReLU và các hàm kích hoạt liên quan làm hạn chế vấn đề vanishing

e Su cải tiến của các kiến trúc: GoogLeNet, VGG, ResNet, và các kỹ thuật

transfer learning, fine tuning.

e Nhiều kỹ thuật regularization mới: dropout, batch normalization, dataaugmentation.

e Nhiều thư viện mới hỗ tro việc huấn luyện deep network với GPU: theano, caffe,

mxnet, tensorflow, pytorch, keras,

e Nhiều ky thuat tối ưu mới: Adagrad, RMSProp, Adam, 2.1.3 Cấu trúc và mô hình của một no-ron nhân tao

Mạng nơ-ron nhân tạo được lây cảm hứng từ cách làm việc của bộ não con người.Các nơ-ron nhân tạo mô phỏng lại hoạt động của nơ-ron sinh học.

Hình 2-5 Mô hình một no-ron sinh học

Tương tự như nơ-ron sinh học, nơ-ron nhân tạo cũng nhận các tín hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu được rồi gửi kết quả đến hàm truyền) và cho một tín hiệu đầu ra (là kết quả của hàm truyền).

Hình 2-6 Mô hình một mang nơ-ron nhân tạo

GVHD: PGS.TS Phạm Van Cường Page |20_ SVTH: Nguyễn Thế An - D17HTTT1

Trang 33

ĐỎ AN TOT NGHIỆP

Trọng số liên kết là thành phần rất quan trọng của một ANN, nó thể hiện mức độ quan trọng (độ mạnh) của dữ liệu đầu vào đối với quá trình xử lý thông tin (quá trình chuyền đổi dữ liệu từ Layer này sang layer khác) Quá trình học (Learning Processing) của ANN thực ra là quá trình điều chỉnh các trọng sỐ (Weight) của các input data dé có được kết quả mong muốn.

Ham tông sau đó sẽ tính tổng trong số của tat cả các input được đưa vào mỗi nơ-ron Hàm tổng của một nơ-ron đối với n input được tính theo công thức sau:

Y= » xX; xX W; (2.1)

Ham kích hoạt được dùng dé giới han phạm vi đầu ra của mỗi nơ-ron Nó nhận đầu vào là kết quả của hàm kết hợp và ngưỡng đã cho Thông thường, phạm vi đầu ra của mỗi nơ-ron được giới han trong đoạn [0, 1] hoặc [-1, 1] Các hàm kích hoạt rất đa dạng Tuy nhiên, các hàm kích hoạt buộc phải là hàm phi tuyến Vì nếu nó là tuyến tính thì khi kết hợp với phép toán tuyến tính w Tx thì kết qua thu được cũng sẽ là một thao tác tuyến tính dẫn tới chuyện nó trở nên vô nghĩa Việc lựa chọn hàm truyền nào là tuỳ

thuộc vào từng bài toán và kinh nghiệm của người thiết kế mạng Một số hàm kích hoạt

thường sử dụng trong các mô hình mạng nơ-ron:

Hàm Sigmoid được cho bởi công thức 2.2 và có đồ thị như hình 2.7 Nếu đầu vào

lớn, hàm số sẽ cho đầu ra gần với 1 Với đầu vào nhỏ (rất âm), hàm số sẽ cho đầu ra gần với 0 Hàm số này được sử dụng nhiêu trong quá khứ vì có đạo hàm rat đẹp Những năm

gan đây, hàm số này ít khi được sử dụng vì nhược điểm khi đầu vào có trị tuyệt đối lớn (rất âm hoặc rất dương), gradient của hàm số này sẽ rất gần với 0, đồng nghĩa với việc

GVHD: PGS.TS Phạm Văn Cường Page |21 SVTH: Nguyễn Thế An - D17HTTT1

Trang 34

ĐỎ AN TOT NGHIỆP

các hệ số sẽ không được cập nhật Đây chính là hiện tượng vanishing gradient thường

gặp trong các mô hình mạng nơ-ron cô điên.Hàm Tanh:

tanh (x) = 20(2x) — 1 (2.3)

Hình 2-8 Đồ thị hàm Tanh

Hàm Tanh được cho bởi công thức 2.3 và có đồ thị như hình 2.8 Hàm Tanh cho

dau ra trong đoạn [-1, 1] và cũng có nhược diém tương tự hàm Sigmoid về việc gradient

rất nhỏ với các đầu vào có trị tuyệt đối lớn.

Hàm ReLu:

f (x) = max(0,x) (2.4)

-10 -5 5 10

Hinh 2-9 Dé thi ham ReLU

ReLU (Rectified Linear Unit) được sử dung rộng rãi gần đây vì tinh đơn giản của

nó Hàm ReLu được cho bởi công thức 2.4 và có đồ thị như hình 2.9 Ưu điểm chính

của nó là:

e ReLU được chứng minh giúp cho việc training các Deep Networks nhanh hon

rất nhiều Sự tăng tốc này được cho là vì ReLU được tính toán gần như tức

GVHD: PGS.TS Phạm Văn Cường Page |22_ SVTH: Nguyễn Thế An - D17HTTT1

Trang 35

ĐỎ AN TOT NGHIỆP

thời va gradient của nó cũng được tính cực nhanh với gradient băng 1 nếu đầu vào lớn hơn 0, bằng 0 nếu đầu vào nhỏ hơn 0.

e Mặc dù hàm ReLU không có đạo hàm tại s = 0, trong thực nghiệm, người ta

vẫn thường định nghĩa ReLU ' (0) = 0 và khang định thêm rằng, xác suất dé input của một unit bằng 0 là rất nhỏ.

Hàm ReLU có nhiều biến thé khác như Noisy ReLU, Leaky ReLu, ELUs, tuy

nhiên đồ án sẽ không đề cập sâu đến các biến thể này.

2.1.4 Hàm mat mát

Ngoài các hàm kích hoạt, khi nhắc đến huấn luyện mạng nơ-ron thì sẽ thường phải nhắc đến hàm mắt mát được sử dụng dé tối ưu tham số cho các mạng no-ron Sau đây đồ án sẽ liệt kê ra một số hàm mắt mát hay gặp nhất cho được sử dụng cho các bài

toán học máy.

Lỗi tuyệt đối trung bình (Mean absolute error) / hàm mat mát L1: đây là hàm mat

mát đơn giản nhất, cách tính hàm mat mát nay đó là lấy trung bình cộng giá trị tuyệt đối của hiệu giá trị dự đoán và giá trị thực tế Hàm mat mát được tính theo công thức:

n —ộ,

MAE = i=1 _ Jil (2.5)

Ưu điểm của hàm mat mát này là không bị ảnh hưởng nhiều bởi các giá tri dự đoán quá

xa so với giá trị thực tế vì lấy trị tuyệt đối, không nhạy cảm với nhiễu

Nhược điểm: Hàm mat mát sẽ gây khó khăn khi tối ưu vì không có đạo hàm tại điểm 0.

Phải dùng đến những công cụ khác như lập trình tuyến tính.

Lỗi bình phương trung bình (Mean square error) / hàm mắt mát L2: Hàm mắt mát L2 được tính bằng cách lấy trung bình cộng bình phương của hiệu giá trị dự đoán và giá trị thực tế Hàm L2 được tính theo công thức:

i=\ i — 9)”

MSE=——————— (2.6)

Ưu điểm của ham L2 đó chính là dé tính đạo hàm, vi hàm L2 có đạo ham tai mọi điểm Nhược điểm là những giá trị dự đoán quá xa với giá trị thực tế sẽ bị tính rất lớn do có

bình phương, nhạy cảm với nhiễu

Hàm mat mát entropy chéo:

Dé tìm hiểu về hàm mất mát entropy chéo chúng ta cần phải tìm hiểu định nghĩa về thông tin Trong lý thuyết thông tin, thông tin đạt được chính là thông tin của một thông điệp nhất định có thé bổ sung vào kiến thức tổng thé Ví dụ, với thông điệp là “xe ô tô

chạy nhanh hơn xe đạp” thì không mang lại lượng thông tin gì Một ví dụ khác đó là

“tung đồng xu lần đầu xuất hiện mặt ngửa” Điều này mang lại một lượng thông tin do

GVHD: PGS.TS Phạm Van Cường Page |23 SVTH: Nguyễn Thế An - D17HTTT1

Trang 36

ĐỎ AN TOT NGHIỆP

xác suất xuất hiện mặt ngửa chỉ có 0.5 Do đó ta cần một độ do dé định lượng lượng

thông tin có trong mỗi thông điệp.

Trong nghiên cứu của Claude Shannon về lý thuyết thông tin, ông đã đưa ra hàm tính toán phù hợp dé định lượng thông tin:

I(E) = —logp P(x) (2.7)

Trong đó I(E) là ham lượng thông tin của một thông điệp với biến cô E P(x) là xác suất xuất hiện của x b là cơ số đơn vị (thường được sử dụng với b = 2).

Quay lại với ví dụ phía trên, với công thức 2.7 ta có thê tính được lượng thông tin

như sau:

e Với ví dụ “xe ô tô chạy nhanh hơn xe đạp” có xác suất xuất hiện là 1 Ta sẽ có:

I(E) = —log; 1 = 0 Điều này có thé thấy câu trên không mang lại lượng thông

tin nào cả.

e Với ví dụ “tung đồng xu lần đầu xuất hiện mặt ngửa” Xác suất xuất hiện của mặt ngửa khi tung đồng xu là 0.5 Nên ta sẽ có I(E) = —log, 0.5 = 1 bit Đó là

lượng thông tin mà câu trên mang lại

Với một chuỗi các biến có, entropy là đại lượng đại diện cho thông tin đạt được trong

một chuỗi biến dé đó, là trung bình lượng thông tin của các biến ngẫu nhiên rời rac.

Entropy được tính bằng công thức:

H(p) = -À' ĐilOBp Dị (2.8)

Entropy là độ đo bat xác định trong khi dự đoán của một biến ngẫu nhiên X Entropy

của biến ngẫu nhiên X càng cao (càng nhiều thông tin chứa trong thông điệp) thì càng

khó dự đoán.

Entropy chéo là độ đo giữa hai phân bố p và q dé đo lượng trung bình thông tin khi dùng

mã hóa thông tin của phân bố q thay cho mã hóa thông tin của phân bố p Công thức

tính entropy chéo như sau:

H(p,q) = -\ Pilogy i (2.9)

Mô hình sử dụng ham entropy chéo làm hàm mat mát dé tối ưu tham số mô hình Ta coi hai phân phối p và q là phân phối của dự đoán của mô hình và phân phối dit liệu trên thực tế để tối ưu Hàm mắt mát sẽ đạt giá trị nhỏ nhất khi phân bố của q giống với phân

bố của p tức là giá trị dự đoạn của mô hình giống với giá trị thực tế.

2.1.5 Cấu tạo và phương thức làm việc của mạng no-ron

Khi liên kết các đầu vào/ra của nhiều ron với nhau, ta thu được một mạng nơ-ron Việc ghép nối các nơ-ron trong mạng với nhau có thể theo nguyên tắc bất kỳ Vì

GVHD: PGS.TS Phạm Van Cường Page |24 SVTH: Nguyễn Thế An - D17HTTT1

Trang 37

ĐỎ AN TOT NGHIỆP

mạng nơ-ron là một hệ truyền đạt và xử lý thông tin tín hiệu, nên có thể phân biệt các loại nơ-ron khác nhau, các nơ-ron có đầu vào nhận thông tin từ môi trường bên ngoài khác với các nơ-ron có đầu vào được nối với các nơ-ron khác trong mạng, chúng được phân biệt với nhau qua vector hàm trọng số đầu vào w Nguyên lý cấu tạo chung của

mạng nơ-ron gồm nhiều lớp, mỗi lớp bao gồm nhiều nơ-ron có cùng chức năng trongmạng Một mạng nơ-ron sẽ có 3 kiểu lớp:

e Lớp đầu vào (input layer): là lớp tận cùng bên trái của mạng, thể hiện cho các

đầu vào của mạng.

e© Lớp ân (hidden layer): là lớp nằm giữa lớp đầu vào và lớp dau ra ra thé hiện cho

việc suy luận logic của mạng.

e Lớp đầu ra (output layer): là lớp tận cùng bên phải của mạng, thể hiện cho các

đầu ra của mạng.

Một mạng nơ-ron chỉ có 1 lớp đầu vào và 1 lớp đầu ra nhưng có thé có nhiều lớp an Số lượng lớp ân càng nhiều, mạng càng sâu (deep) Mỗi nơ-ron trong mạng sẽ nhận tất cả đầu vào từ các nơ-ron ở tầng trước đó và sử dụng một hàm kích hoạt dạng phi tuyến như sigmoid, ReLU, tanh dé tính toán đầu ra.

input layer

Hình 2-10 Mô hình cấu tạo của mang no-ron

Mạng nơ-ron khi mới được hình thành thì chưa có tri thức, tri thức của mang sẽ

được hình thành dần dần sau một quá trình học Mạng nơ-ron được học băng cách đưa

vào những kích thích và mạng hình thành những đáp ứng tương ứng Những đáp ứngtương ứng phù hợp với từng loại kích thích sẽ được lưu trữ Giai đoạn này gọi là giai

đoạn học của mạng Khi đã hình thành tri thức mạng, mạng có thê giải quyết các van đề một cách đúng dan Đó có thé là van đề ứng dụng rất khác nhau, được giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầu vào của mạng và các đáp ứng

đầu ra.

2.2 Mạng nơ-ron tích chập

Convolutional Neural Networks (CNN - hay còn gọi là mạng nơ-ron tích chập) là

một trong những mô hình Deep Learning tiên tiến giúp con người xây dựng được những

GVHD: PGS.TS Phạm Văn Cường Page |25 SVTH: Nguyễn Thế An - D17HTTT1

Ngày đăng: 02/04/2024, 09:50

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w