intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Luận văn Thạc sĩ Công nghệ thông tin: Nghiên cứu về mạng neural Convolutional, áp dụng vào bài toán nhận dạng đối tượng trong lĩnh vực thị giác máy tính

Chia sẻ: Yi Yi | Ngày: | Loại File: PDF | Số trang:86

47
lượt xem
13
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Luận văn tập trung vào nghiên cứu, tìm hiểu về mạng nơ ron tích chập. Sau đó so sánh các phương pháp học sâu ở mức độ tổng quan trên phương diện học thuật, từ đó thấy được tiềm năng cũng như hạn chế của AI với cái nhìn khách quan nhất.

Chủ đề:
Lưu

Nội dung Text: Luận văn Thạc sĩ Công nghệ thông tin: Nghiên cứu về mạng neural Convolutional, áp dụng vào bài toán nhận dạng đối tượng trong lĩnh vực thị giác máy tính

  1. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN MẠNH HÙNG NGHIÊN CỨU VỀ MẠNG NEURAL CONVOLUTIONAL, ÁP DỤNG VÀO BÀI TOÁN NHẬN DẠNG ĐỐI TƯỢNG TRONG LĨNH VỰC THỊ GIÁC MÁY TÍNH LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội – 2019
  2. ĐẠI HỌC QUỘC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN MẠNH HÙNG NGHIÊN CỨU VỀ MẠNG NEURAL CONVOLUTIONAL, ÁP DỤNG VÀO BÀI TOÁN NHẬN DẠNG ĐỐI TƯỢNG TRONG LĨNH VỰC THỊ GIÁC MÁY TÍNH Ngành : Công nghệ thông tin Chuyên ngành : Kỹ thuật phần mềm Mã số : 8480103.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS ĐỖ TRUNG TUẤN Hà Nội – 2019
  3. LỜI CAM ĐOAN Tôi xin cam đoan: luận văn “Nghiên cứu về mạng neural Convolutional, áp dụng vào bài toán nhận dạng đối tượng trong lĩnh vực thị giác máy tính.” là công trình nghiên cứu của tôi dưới sự hướng dẫn của giảng viên hướng dẫn, không sao chép lại của người khác. Các tài liệu được luận văn tham khảo, kế thừa và trích dẫn đều được liệt kê trong danh mục các tài liệu tham khảo. Tôi xin chịu hoàn toàn trách nhiệm về lời cam đoan trên. Hà Nội, ngày tháng năm 2019 Học viên Nguyễn Mạnh Hùng i
  4. LỜI CẢM ƠN Em xin chân thành cảm ơn các thầy cô trường Đại học Công nghệ, Đại học quốc gia Hà Nội, đặc biệt các thầy cô bộ môn Kỹ thuật phần mềm, đã tận tình dạy dỗ, giúp đỡ và tạo mọi điều kiện tốt nhất cho em trong suốt quãng thời gian em theo học tại trường, để em có thể hoàn thành được đề tài này. Em tỏ lòng biết ơn sâu sắc với PGS.TS Đỗ Trung Tuấn, người thầy đã tận tình hướng dẫn khoa học và giúp đỡ, chỉ bảo em trong suốt quá trình nghiên cứu và hoàn thành luận văn này. Tôi xin chân thành cảm ơn các bạn học viên cao học khóa 22 tại trường Đại học Công nghệ, Đại học quốc gia Hà Nội đã giúp đỡ tôi trong quá trình theo học tại trường, cũng như giúp đỡ tôi thực hiện đề tài này. Xin trân trọng cảm ơn! ii
  5. MỤC LỤC LỜI CAM ĐOAN .........................................................................................i LỜI CẢM ƠN ............................................................................................. ii MỤC LỤC ................................................................................................. iii DANH MỤC HÌNH VẼ..............................................................................vi DANH MỤC BẢNG BIỂU.......................................................................... x DANH MỤC VIẾT TẮT ............................................................................xi LỜI MỞ ĐẦU .............................................................................................. 1 Lý do chọn đề tài ............................................................................................. 1 Cơ sở khoa học và thực tiễn của đề tài ............................................................. 1 Mục tiêu của luận văn...................................................................................... 2 Cấu trúc luận văn............................................................................................. 3 CHƯƠNG 1. ................................................................................................ 4 TỔNG QUAN VỀ MẠNG NƠ RON .......................................................... 4 VÀ GIỚI THIỆU VỀ MẠNG NƠ RON TÍCH CHẬP .............................. 4 1.1. Nơ ron nhân tạo .............................................................................. 4 1.1.1 Lịch sử của nơ ron nhân tạo .................................................................... 4 1.1.2 Cấu tạo và quá trình xử lý của một nơ ron sinh học................................. 5 1.1.3 Cấu tạo và quá trình xử lý của một nơ ron nhân tạo ................................ 5 1.1.4. Các mô hình hàm kích hoạt của mạng nơ ron nhân tạo .......................... 8 1.2 Mạng nơ ron nhân tạo ................................................................... 11 1.2.1 Giới thiệu mạng nơ ron nhân tạo ........................................................... 11 1.2.2 Một số kiểu mạng nơ ron ...................................................................... 11 1.2.3 Mạng nơ ron lan truyền ngược .............................................................. 13 1.3 Mạng nơ ron tích chập .................................................................. 18 1.3.1 Khái niệm về mạng nơ ron tích chập ..................................................... 18 iii
  6. 1.3.2 Mô hình mạng nơ ron tích chập ............................................................ 19 1.3.2 Xây dựng mạng nơ ron tích chập .......................................................... 20 1.4 Kết luận .......................................................................................... 27 CHƯƠNG 2. .............................................................................................. 28 BÀI TOÁN NHẬN DẠNG BẰNG MẠNG NƠ RON TÍCH CHẬP ....... 28 2.1 Khái niệm về nhận dạng ................................................................ 28 2.1.1 Nhận dạng đối tượng ............................................................................ 28 2.1.2 Nhận dạng khuôn mặt ........................................................................... 29 2.2. Lịch sử và phát triển ..................................................................... 30 2.3. Cách thức hoạt động ..................................................................... 30 2.4 Phương pháp nhận dạng đối tượng từ ảnh chụp của camera ..... 32 2.4.1 Nhận diện khuôn mặt ............................................................................ 32 2.4.2 Phát hiện các điểm quan trọng trên khuôn mặt ...................................... 33 2.4.3 Liên kết khuôn mặt ............................................................................... 34 2.5 Kết quả các thuật toán sử dụng mạng nơ ron nhân tạo .............. 35 2.5.1 Mô hình DeepID 2 (NIPS 2014) ........................................................... 35 2.5.2 Mô hình DeepID3 (arXiv 2015) ............................................................ 38 2.5.3 Mô hình DeepFace (Facebook, CVPR 2014) ........................................ 39 2.5.4 Mô hình FaceNet (Google 2015)........................................................... 39 2.5.5 Mô hình Baidu (2015)........................................................................... 41 2.6 Kết luận .......................................................................................... 42 CHƯƠNG 3. .............................................................................................. 44 SỬ DỤNG MẠNG NƠ RON TÍCH CHẬP.............................................. 44 TRONG NHẬN DẠNG ĐỐI TƯỢNG ..................................................... 44 3.1 Sơ lược về áp dụng mạng nơ ron tích chập vào các giải pháp thông minh trong thực tế ................................................................. 44 iv
  7. 3.2 Áp dụng mạng nơ ron tích chập để xây dựng hệ thống nhận diện người vào/ra và đánh giá thực nghiệm, so sánh với phương pháp HOG ................................................................................................. 44 3.2.1 Giới thiệu hệ thống nhận diện và đếm lượt người vào/ra sử dụng mạng nơ ron tích chập ....................................................................................... 44 3.2.2 Giới thiệu kiến trúc của máy chủ xử lý nhận diện và đếm lượng người . 45 3.2.3 Giới thiệu sơ lược về phương pháp mô tả đặc trưng HOG sẽ được dùng để so sánh ................................................................................................ 47 3.2.4 So sánh khả năng nhận diện của hệ thống nhận diện người vào/ra sử dụng mạng nơ ron tích chập với phương pháp HOG đã có ....................... 50 3.2.5 Mô tả cơ chế chạy nhận diện người trong lõi máy chủ tính toán............ 52 3.2.6 Mô tả quá trình sử dụng hệ thống ở giao diện người dùng để hiển thị kết quả .......................................................................................................... 53 3.3 Áp dụng mạng nơ ron tích chập để xây dựng hệ thống nhận diện khuôn mặt và đánh giá thực nghiệm, so sánh với phương pháp HOG ................................................................................................. 55 3.3.1 Xây dựng hệ thống nhận diện khuôn mặt .............................................. 55 3.3.2 Giới thiệu cơ chế của máy chủ xử lý nhận diện ..................................... 56 3.3.3 Giới thiệu sơ lược về phương pháp phát hiện khuôn mặt sử dụng HOG sẽ được dùng để so sánh .............................................................................. 58 3.3.4 So sánh hệ thống nhận diện khuôn mặt với phương pháp HOG đã có ... 59 3.3.4 So sánh khả năng nhận diện khuôn mặt giữa HOG và CNN .................. 62 3.2.5 Kết quả hệ thống web nhận diện khuôn mặt .......................................... 64 3.3 Kết luận .......................................................................................... 67 KẾT LUẬN ................................................................................................ 68 Kết quả đã thực hiện được của luận văn......................................................... 68 Phương hướng phát triển luận văn ................................................................. 69 TÀI LIỆU THAM KHẢO......................................................................... 70 v
  8. DANH MỤC HÌNH VẼ Hình 1.1 Hình ảnh thí nghiệm của David Hubel và Torsten Wiesel trên mèo [10]............. 4 Hình 1.2: Hình ảnh một nơ ron sinh học [14] .................................................................... 5 Hình 1.3: Công thức của một nơ ron nhân tạo [41]............................................................ 5 Hình 1.4: Hình ảnh một nơ ron nhân tạo ........................................................................... 6 Hình 1.5: Hình ảnh vị trí thiên lệch được thêm vào trong thực tế ...................................... 6 Hình 1.6: Kết quả của hàm sigmoid với các trọng số đầu vào khác nhau nhưng không có thiên lệch .......................................................................................................................... 7 Hình 1.7: Kết quả của hàm sigmoid với các trọng số thiên lệch khác nhau ........................ 7 Hình 1.8: Đồ thị hàm Sigmoid .......................................................................................... 8 Hình 1.9: Đồ thị hàm TanH .............................................................................................. 9 Hình 1.10: Đồ thị hàm tuyến tính ...................................................................................... 9 Hình 1.11: Đồ thị hàm RELU ......................................................................................... 10 Hình 1.12: Đồ thị hàm ELU ............................................................................................ 10 Hình 1.13: Mạng nơ ron truyền thẳng ............................................................................. 11 Hình 1.14: Mạng nơ ron hồi quy ..................................................................................... 12 Hình 1.15: Cách huấn luyện cho một mạng nơ ron hồi quy ............................................. 12 Hình 1.16: Các tầng (layer) trong CNN là 3 chiều........................................................... 18 Hình 1.17: Hình minh họa một ví dụ sử dụng CNN để phân lớp đồ vật [20] ................... 19 Hình 1.18: Ví dụ minh họa về cấu trúc CNNs – LeNet – 5[19] ....................................... 19 Hình 1.19: Hình ảnh một mạng nơ ron được kết nối đầy đủ ............................................ 20 Hình 1.20: Tích chập một ma trận nhỏ để tạo ra dữ liệu đầu vào cho một nơ ron ............ 20 Hình 1.21: Ví dụ về lớp tích chập ................................................................................... 21 Hình 1.22: So sánh giữa ReLU và Sigmoid. .................................................................... 23 Hình 1.23: Ví dụ minh họa đơn giản về tầng gộp ............................................................ 24 Hình 1.24: Một ví dụ của lớp được kết nối đầy đủ .......................................................... 25 Hình 1.25: Ví dụ về trường hợp quá khớp (bên trái) và trường hợp chuẩn (bên phải) ...... 25 vi
  9. Hình 1.26: Cấu trúc của AlexNet .................................................................................... 26 Hình 1.27: Cấu trúc của VGGNet ................................................................................... 27 Hình 2.1: Sự khác biệt giữa nhận dạng đối tượng và phát hiện đối tượng ........................ 29 Hình 2.2: Một minh họa về một số bản đồ đặc trưng của các lớp DC12, conv22, conv32, conv42 và conv52 được đào tạo cho nhiệm vụ nhận dạng khuôn mặt.............................. 29 Hình 2.3: Tổng quan về phương pháp nhận dạng khuôn mặt người ................................. 31 Hình 2.4: Thiết kế mạng nơ ron để xử lý ảnh .................................................................. 31 Hình 2.5: Các giai đoạn dò tìm và hiệu chỉnh .................................................................. 32 Hình 2.6: Kết quả phát hiện mẫu trên ảnh IJB-A bằng phương pháp tháp sâu ................. 33 Hình 2.7: Kiến trúc DCNN được sử dụng để trích xuất các mô tả cục bộ cho nhiệm vụ phát hiện các điểm mốc trên khuôn mặt .......................................................................... 33 Hình 2.8: Ví dụ về các điểm mốc trên khuôn mặt............................................................ 34 Hình 2.9: Kết quả mẫu của phương pháp liên kết khuôn mặt cho các video của JANUS CS2, là bộ dữ liệu mở rộng của IJB-A ............................................................................ 35 Hình 2.10: Kiến trúc mạng của mô hình DeepID 2 ......................................................... 36 Hình 2.11: 25 phần khuôn mặt tốt nhất được chọn để trích xuất đặc điểm....................... 36 Hình 2.12: Kiến trúc mạng của mô hình DeepID3 .......................................................... 38 Hình 2.13: Kiến trúc của DeepFace ................................................................................ 39 Hình 2.14: Hình ảnh: Mô hình lấy cảm hứng từ Zeiler & Fergus .................................... 40 Hình 2. 15 Mô hình GoogleNet ....................................................................................... 40 Hình 2.16: Tổng quan về cấu trúc CNN trên nhiều phần khuôn mặt của Baidu ............... 41 Hình 2.17: Thống kê các mô hình, số lượng bộ dữ liệu sử dụng, và các mốc thời gian xuất bản .................................................................................................................................. 42 Hình 3.1: Hình ảnh thiết kế của hệ thống nhận diện đối tượng ........................................ 45 Hình 3.2: Phương pháp mạng YOLO sử dụng để nhận diện đối tượng. ........................... 46 Hình 3.3: Mô hình mạng yolo ......................................................................................... 47 Hình 3.4: Tiền xử lý để xác định khung hình .................................................................. 48 Hình 3.5: Độ dốc sau khi tính toán .................................................................................. 48 vii
  10. Hình 3.6: Kết quả sau khi tính toán véc tơ đặc trưng cho từng ô ..................................... 49 Hình 3.7: Biểu diễn các véc tơ chỉ hướng theo HOG thu được sau khi tính toán ............. 50 Hình 3.8: Hình ảnh nhận diện bằng phương pháp HOG .................................................. 50 Hình 3.9: Hình ảnh nhận diện bằng phương pháp CNN .................................................. 51 Hình 3.10: Hệ thống sử dụng ffmpeg để trích xuất các khung hình trong video .............. 52 Hình 3.11: Các khung hình lần lượt được hệ thống trích xuất và đưa vào lõi để xử lý. .... 52 Hình 3.12: Dữ liệu số người vào/ra được nhập vào cơ sở dữ liệu, và video báo cáo được hệ thống tự động xuất ra để làm đối chiếu. ...................................................................... 53 Hình 3.13: Hình ảnh đăng nhập vào hệ thống.................................................................. 53 Hình 3.14: Kết quả dữ liệu đã được thêm vào cơ sở dữ liệu và hiển trị trên web. ............ 54 Hình 3.15: Một ví dụ tương tự dữ liệu được xuất báo cáo nhận diện trong hệ thống........ 54 Hình 3.16: Kiến trúc hệ thống nhận diện khuôn mặt, tích hợp cùng hệ thống mua hàng .. 55 Hình 3.17: Khuôn mặt được trích xuất từ bức ảnh........................................................... 56 Hình 3.18: Hình ảnh 68 điểm mốc trên khuôn mặt được sử dụng trên bộ thư viện dlib ... 57 Hình 3.19: Hình ảnh trích xuất đặc trưng khuôn mặt ....................................................... 57 Hình 3.20: Khuôn mặt được sử dụng để nhận dạng ......................................................... 58 Hình 3.21: Khuôn mặt được trích xuất ............................................................................ 58 Hình 3.22: Hình ảnh được xử lý sau khi qua bộ lọc Gabor .............................................. 58 Hình 3.23: Các đặc trưng được trích xuất bằng HOG ...................................................... 59 Hình 3.24: Phát hiện khuôn mặt sử dụng HOG ............................................................... 59 Hình 3.25: Phát hiện khuôn mặt sử dụng CNN ............................................................... 60 Hình 3.26: Phát hiện khuôn mặt sử dụng HOG với góc nghiêng lớn ............................... 60 Hình 3.27: Phát hiện khuôn mặt sử dụng CNN với góc nghiêng lớn ............................... 61 Hình 3.28: Kết quả nhận diện khuôn mặt với HOG ......................................................... 62 Hình 3.29: Phát hiện khuôn mặt sử dụng CNN ............................................................... 62 Hình 3. 30: Nhận diện khuôn mặt sử dụng HOG với góc nghiêng lớn ............................. 63 Hình 3.31: Phát hiện khuôn mặt sử dụng CNN với góc nghiêng lớn ............................... 63 viii
  11. Hình 3.32: Giao diện hệ thống trên web (hai hình trên) và giao diện hệ thống trên mobile (hai hình dưới) ................................................................................................................ 65 Hình 3.33: Huấn luyện thêm khuôn mặt mới................................................................... 65 Hình 3.34: Kết quả nhận diện sau khi huấn luyện ........................................................... 66 Hình 3.35: Nhận diện user có ID 00280 với góc nghiêng khoảng 80 độ và user có ID 00388 với góc nghiêng 30 độ trên mặt phẳng Oxz .......................................................... 67 ix
  12. DANH MỤC BẢNG BIỂU Bảng 2.1: Thống kê xác minh độ chính xác của khuôn mặt bằng DeepID2 khi tăng dần số lượng của các phần khuôn mặt ........................................................................................ 36 Bảng 2.2: So sánh độ chính xác của mô hình DeepID2 với các kết quả mô hình trước đó trên bộ thư viện LFW...................................................................................................... 37 Bảng 2.3: Kết quả so sánh của mô hình DeepID3 với các mô hình trước trên bộ thư viện LFW ............................................................................................................................... 38 Bảng 2.4: Kết quả của khi so sánh DeepFace với các công nghệ hiện đại trên bộ dữ liệu LFW ............................................................................................................................... 39 Bảng 2.5: Bảng so sánh hiệu suất của kiến trúc mạng trên FaceNet ................................ 41 Bảng 2.6: Bảng so sánh độ chính xác dựa trên số lượng dữ liệu đào tạo .......................... 41 Bảng 2.7: Tỉ lệ lỗi trên lượng dữ liệu khác nhau ............................................................. 42 Bảng 3.1 Kết quả so sánh nhận diện người giữa phương pháp mạng nơ ron tích chập và phương pháp HOG trên kết quả trung bình của dữ liệu thực tế của hệ thống ................... 51 Bảng 3.2: Kết quả so sánh phát hiện khuôn mặt giữa phương pháp mạng nơ ron tích chập và phương pháp HOG trên kết quả trung bình của dữ liệu thực tế của hệ thống .............. 61 Bảng 3.3: Kết quả so sánh nhận diện khuôn mặt giữa phương pháp mạng nơ ron tích chập và phương pháp HOG trên kết quả trung bình của dữ liệu thực tế của hệ thống .............. 64 Bảng 3.4: Cơ sở dữ liệu thời gian phát hiện khuôn mặt của hệ thống .............................. 67 x
  13. DANH MỤC VIẾT TẮT Từ viết tắt Ý nghĩa AI Artificial Intelligence - Trí tuệ nhân tạo ANN Artificial Neural Network – Mạng thần kinh nhân tạo CNN Convolutional Neural Network – Mạng thần kinh tích chập ReLU Rectified Linear Unit – Điều chỉnh đơn vị tuyến tính CSDL Cơ sở dữ liệu GPU Graphics Processing Unit – Vi xử lý đồ họa CPU Central Processing Unit – Bộ xử lý trung tâm Compute Unified Device Architecture - kiến trúc tính toán song song CUDA do hãng NVIDIA phát triển. IOT Internet of Things – vạn vật kết nối Accelerated Strategic Computing Initiative Red – một siêu máy tính ASCI Red của Intel W Watt – một đơn vị đo lường của điện lực kW KiloWatt – một đơn vị đo lường của điện lực SVM Support Vector Machine – một thuật toán phân lớp DP2MFD Deep Pyramid Deformable Parts Model for Face Detection IARPA Janus Benchmark-A – một thử thách mở cho nhận diện khuôn IJB-A mặt KLT Kanade–Lucas–Tomasi – một giải thuật thị giác máy tính LFW Labeled Faces in the Wild – một bộ thư viện khuôn mặt xi
  14. API Application Programming Interface – giao diện lập trình You only look once – một hệ thống mạng nơ ron nhân tạo phát hiện YOLO đối tượng thời gian thực HOG Histogram of Oriented Gradients – biểu đồ độ dốc định hướng PCA Principal Component Analysis - Phân tích thành phần chính xii
  15. LỜI MỞ ĐẦU Lý do chọn đề tài Trong giai đoạn gần đây, cụm từ cách mạng công nghiệp lần thứ tư được nhắc đến rất nhiều trên truyền thông. Khái niệm cách mạng công nghiệp 4.0 được đưa ra dựa trên xu thế bùng nổ của nhiều công nghệ mới như: công nghệ truyền dẫn tốc độ cao, CPU rất mạnh, GPU hàng ngàn nhân, công nghệ chế tạo bộ nhớ đạt nhiều đột phá. Song song với đó, công nghệ dần làm các thiết bị nhỏ lại, nhưng sức mạnh tăng lên đáng kể. Công nghệ mạch nhúng cũng bùng nổ không kém với nhiều mạch nhúng nhỏ, sử dụng lượng điện khiêm tốn, nhưng khả năng tính toán lên tới hàng ngàn tỉ phép tính trên giây, tương đương sức mạnh của 1 siêu máy tính cách đây khoảng 20 năm. Ví dụ như board mạch Nvidia's Jetson TX1 được ra mắt năm 2015, có thể nằm vừa trong lòng bàn tay và chỉ sử dụng 10 oát điện, đã có sức mạnh tính toán tới 1 ngàn tỉ phép tính trên giây, điều mà cách đó tròn 20 năm, vào năm 1996, siêu máy tính ASCI Red của Intel, phải sử dụng tới 6000 vi xử lý Pentium Pros, vận hành với 1000 kW mới có thể đạt được sức mạnh tính toán trên. Máy tính hiện nay có sức mạnh tính toán lớn nhưng giá thành lại ở mức phổ thông, dẫn tới người làm nghiên cứu rất dễ dàng để có thể tự kiểm nghiệm được các lý thuyết về trí tuệ nhân tạo từ nhiều năm trước. Cùng với mã nguồn mở, hiện làn sóng trí tuệ nhân tạo đang bùng nổ mạnh mẽ trong thời gian gần đây, và đem lại rất nhiều ứng dụng trong đời sống Chính vì lý do trên, việc tìm hiểu và nghiên cứu thị giác máy tính rất có ý nghĩa và thiết thực. Hiện nay trên thế giới, nhiều nước đã và đang ứng dụng thị giác máy tính vào đời sống hàng ngày, ví dụ như SkyNet của Trung Quốc, các hệ thống kiểm duyệt nội dung tự động, … Cơ sở khoa học và thực tiễn của đề tài Ngày nay, trong kỷ nguyên số, máy tính là một phần không thể thiếu trong nghiên cứu khoa học cũng như trong đời sống hàng ngày. Tuy nhiên, do hệ thống máy tính dựa trên lý thuyết cổ điển (tập hợp, logic nhị phân), nên dù có khả năng tính toán lớn và độ chính xác cao, thì máy tính cũng chỉ có thể làm việc theo một chương trình gồm các thuật toán được viết sẵn do lập trình viên chứ chưa thể tự lập luận hay sáng tạo. Học máy (Machine learning) là một phương pháp phân tích dữ liệu có thể tự động hóa phân tích dữ liệu và tìm ra các trích xuất đặc trưng của bộ dữ liệu. Học máy sử dụng các thuật toán trừu tượng để tự học từ dữ liệu, cho phép máy tính tìm thấy những thông 1
  16. tin có giá trị ẩn ở rất sâu mà không thể lập trình được bằng cách thông thường. Khi tiếp xúc với dữ liệu mới, học máy có thể thích ứng rất nhanh và độc lập. Học sâu (Deep Learning) là một ngành đặc biệt của học máy. Học sâu sử dụng mạng nơ ron nhân tạo (Artificial Neural Networks) để giải quyết các bài toán mà tính toán cứng chưa thể xử lý được như dữ liệu trừu tượng, dữ liệu mờ, dữ liệu không rõ ràng,... Với tính chất như vậy, học sâu thường được ứng dụng trong nhận diện hình ảnh, nhận diện giọng nói, xử lý ngôn ngữ tự nhiên hoặc dự đoán, dự báo. Mạng nơ ron nhân tạo (Artificial Neural Networks) là một mô hình xử lý thông tin, cấu thành từ các lớp nơ ron, được ra đời trên cơ sở mô phỏng hoạt động não bộ của sinh vật. Mạng nơ ron nhân tạo gắn kết nhiều nơ ron theo một mô hình nhất định, được trải qua huấn luyện để rút ra được kinh nghiệm, và sử dụng các kinh nghiệm đã có để xử lý các thông tin mới. Mạng nơ ron nhân tạo thường áp dụng vào giải các bài toán nhận dạng mẫu, hoặc dự đoán. Mạng nơ ron Tích chập (Convolutional Neural Network) là một trong những mô hình học sâu hiện đại nhất hiện nay. Mạng nơ ron Tích chập hiện nay thường được sử dụng nhiều trong các hệ thống thông minh do ưu điểm của mạng là có độ chính xác cao, tuy nhiên tốc độ tính toán lại rất nhanh. Vì lý do đó, mạng nơ ron tích chập rất mạnh trong xử lý hình ảnh, và được ứng dụng rất nhiều trong ngành thị giác máy tính trong các bài toán liên quan đến nhận dạng đối tượng. Ngày nay, với sự phát triển của công nghệ bán dẫn, máy tính ngày càng nhỏ đi, năng lượng tiêu thụ ngày càng thấp xuống, trong khi sức mạnh lại ngày càng tăng lên. Với những ưu điểm như vậy, chúng ta có thể thấy rất nhiều thiết bị thông minh đã và đang hiện diện mọi nơi trong đời sống, với camera nhiều điểm ảnh, bộ nhớ trong lớn và vi xử lý mạnh như: điện thoại thông minh, máy ảnh kỹ thuật số, camera hành trình,… Ngoài ra, với sự bùng nổ của xu hướng mạng vạn vật IOT, người ta có thể sẽ còn thấy rất nhiều thiết bị thông minh mới xuất hiện: xe ô tô tự lái, thiết bị bay không người lái tự giao hàng,... Có thể thấy, việc sử dụng trí thông minh nhân tạo để khai thác dữ liệu hình ảnh trong các thiết bị thông minh trong tương lai đã và đang trở thành xu hướng. Từ nhận định trên và sự gợi ý của giảng viên hướng dẫn, tôi quyết định chọn nội dung “Nghiên cứu về mạng Neural Convolutional, áp dụng vào bài toán nhận dạng đối tượng trong lĩnh vực thị giác máy tính” để làm đề tài nghiên cứu thực hiện luận văn thạc sỹ của mình. Mục tiêu của luận văn Luận văn của tôi tập trung vào nghiên cứu, tìm hiểu về mạng nơ ron tích chập. Sau đó so sánh các phương pháp học sâu ở mức độ tổng quan trên phương diện học thuật, từ 2
  17. đó thấy được tiềm năng cũng như hạn chế của AI với cái nhìn khách quan nhất. Ở phần ứng dụng, tôi sử dụng mạng nơ ron tích chập để áp dụng vào hai bài toán thực tế: bài toán nhận dạng người và bài toán nhận diện khuôn mặt trong lĩnh vực thị giác máy tính. Cấu trúc luận văn Luận văn được tổ chức gồm ba chương gồm:  Chương 1: Trình bày tổng quan về nơ ron, các thành phần và cơ chế hoạt động của nơ ron. Từ đó, trình bày về một số kiểu mạng nơ ron và cơ chế lan truyền ngược. Cuối cùng là giới thiệu về cấu tạo và cách hoạt động của mạng nơ ron tích chập;  Chương 2: Trình bày tổng quan về bài toán nhận dạng bằng mạng nơ ron tích chập, cách thức hoạt động của việc nhận dạng đối tượng và nhận dạng khuôn mặt của mạng nơ ron tích chập. Ngoài ra, chương hai giới thiệu về các mô hình sử dụng nơ ron tích chập nổi tiếng đang được áp dụng hiện nay và kết quả của từng mô hình;  Chương 3: Áp dụng mạng nơ ron tích chập vào trong thực tế. Ở chương này, tác giả báo cáo về kết quả đạt được khi áp dụng mạng nơ ron tích chập để xây dựng hai hệ thống: hệ thống nhận dạng người và hệ thống nhận diện khuôn mặt. Ngoài ra, tác giả có thực hiện so sánh với phương pháp cũ để có thể thấy ưu điểm và hạn chế của mạng nơ ron tích chập. Cuối cùng là phần kết luận cho phép tóm tắt kết quả đã đạt được và nêu ra những tồn tại, dựa vào đó để đưa ra những mục tiêu và phương hướng phát triển cho hệ thống sau này. 3
  18. CHƯƠNG 1. TỔNG QUAN VỀ MẠNG NƠ RON VÀ GIỚI THIỆU VỀ MẠNG NƠ RON TÍCH CHẬP 1.1. Nơ ron nhân tạo 1.1.1 Lịch sử của nơ ron nhân tạo Vào năm 1943, nhà thần kinh học Warren McCulloch đã cùng nhà toán học Walter Pitts đã viết một cuốn sách về cách mạng thần kinh hoạt động. Và họ đã thực hiện mô phỏng một mạng thần kinh đơn giản trên một mạch điện. [9] Vào năm 1949, Donald Hebb đã viết cuốn sách Organization of Behavior. Điểm nhấn chính là mạng thần kinh nào được sử dụng nhiều sẽ được tăng cường. Vào năm 1959, David Hubel và Torsten Wiesel đã xuất bản cuốn sách Receptive fields of single neurons in the cat’s striate cortex, miêu tả về phản ứng của các tế bào thần kinh thị giác trên loài mèo, cũng như cách loài mèo ghi nhớ và nhận diện hình dạng trên kiến trúc vỏ não của nó. Hình 1.1 Hình ảnh thí nghiệm của David Hubel và Torsten Wiesel trên mèo [10] Vào năm 1989, Yann LeCun đã áp dụng thuật toán học cho mạng nơ ron theo kiểu lan truyền ngược vào kiến trúc mạng nơ ron tích chập của Fukushima. Sau đó vài năm, LeCun đã công bố LeNet-5 [13]. Có thể nói, LeNet-5 là một trong những mạng nơ ron tích chập sơ khai nhất, tuy nhiên các dấu ấn của nó vẫn tồn tại tới ngày nay, có thể thấy thông qua một số thành phần thiết yếu mà các mạng nơ ron tích chập của ngày nay vẫn đang sử dụng 4
  19. 1.1.2 Cấu tạo và quá trình xử lý của một nơ ron sinh học Hình 1.2: Hình ảnh một nơ ron sinh học [14] Một nơ ron gồm có: thân nơ ron, tua gai thần kinh, sợi trục thần kinh, trong đó:  Thân nơ ron: là nơi xử lý các tín hiệu được đưa vào;  Tua gai thần kinh: là nơi nhận các xung điện vào trong nơ ron;  Sợi trục thần kinh: là nơi đưa tín hiệu ra ngoài sau khi được xử lý bởi nơ ron;  Khớp thần kinh: vị trí nằm giữa tua gai thần kinh và sợi trục thần kinh, đây là điểm liên kết đầu ra của nơ ron này với đầu vào của nơ ron khác. 1.1.3 Cấu tạo và quá trình xử lý của một nơ ron nhân tạo Dựa vào cấu tạo của một nơ ron sinh học, các nhà khoa học nghiên cứu và lập trình đã đưa ra kiến trúc của một nơ ron nhân tạo: Hình 1.3: Công thức của một nơ ron nhân tạo [41] 5
  20. Mạng nơ ron nhân tạo có thể mô tả đơn giản lại như sau: Hình 1.4: Hình ảnh một nơ ron nhân tạo Trong đó:  Danh sách các đầu vào: Là các thuộc tính đầu vào của một nơ ron. Số lượng thuộc tính đầu vào thường nhiều hơn một, do dữ liệu thô đầu vào thường là một vector nhiều chiều, hoặc nhiều nơ ron tầng trước kết nối tới một nơ ron tầng sau.  Trọng số liên kết: Các liên kết được thể hiện độ mạnh yếu qua một giá trị được gọi là trọng số liên kết. Kết hơp với các đầu truyền, tín hiệu đến các nơ ron nhân tạo khác sẽ được tính bằng ; Hình 1.5: Hình ảnh vị trí thiên lệch được thêm vào trong thực tế 6
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
4=>1