Đăng ký Đăng nhập
Trang chủ Nghiên cứu phương pháp nhận dạng số nhà từ ảnh chụp đường phố...

Tài liệu Nghiên cứu phương pháp nhận dạng số nhà từ ảnh chụp đường phố

.PDF
81
6
114

Mô tả:

TRẦN DUY THANH ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA TRẦN HỮU LỘC TRẦN DUY THANH LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ C C NGHIÊN CỨU PHƯƠNG PHÁP NHẬN DẠNG SỐ NHÀ TỪ ẢNH CHỤP ĐƯỜNG PHỐ R L T. U D LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ NĂM 2019 Đà Nẵng – Năm 2019 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA TRẦN DUY THANH C C NGHIÊN CỨU PHƯƠNG PHÁP NHẬN DẠNG SỐ NHÀ TỪ ẢNH CHỤP ĐƯỜNG PHỐ R L T. U D Chuyển nghành: KỸ THUẬT ĐIỆN TỬ Mã số: 8520203 LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ Người hướng dẫn khoa hoc: TS. HỒ PHƯỚC TIẾN Đà Nẵng – Năm 2019 1 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc LỜI CAM ĐOAN Kính gửi: Hội đồng bảo vệ luận văn tốt nghiệp Khoa Điện Tử - Viễn Thông, Trường Đại Học Bách Khoa – Đại Học Đà Nẵng. Tôi tên là: Trần Duy Thanh. Hiện là học viên lớp Cao học Kỹ thuật điện tử - Khoá 36 - Khoa Điện Tử - Viễn Thông, Trường Đại học Bách khoa – Đại học Đà Nẵng. Tôi xin cam đoan nội dung của luận văn này không phải là bản sao chép của bất cứ luận văn hoặc công trình nào đã có từ trước. Nếu vi phạm tôi xin chịu hoàn toàn trách nhiệm. C C DU R L T. Học Họcviên viên Trần Duy Thanh Trần Duy Thanh 2 MỤC LỤC LỜI CAM ĐOAN ............................................................................................... 1 MỤC LỤC .......................................................................................................... 2 TÓM TẮT LUẬN VĂN ...................................................................................... 4 DANH MỤC TỪ VIẾT TẮT .............................................................................. 5 DANH MỤC HÌNH VẼ ...................................................................................... 6 DANH MỤC BẢNG ........................................................................................... 9 CHƯƠNG 1. GIỚI THIỆU BÀI TOÁN NHẬN DẠNG SỐ NHÀ VÀ DEEP LEARNING .............................................................................................................. 13 C C 1.1. Giới thiệu chương ............................................................................... 13 1.2. Tổng quan về bài toán nhận dạng số nhà ............................................. 13 1.3. Phương pháp học sâu (Deep Learning) và Ứng dụng .......................... 17 1.4. Kết luận chương ................................................................................. 19 DU R L T. CHƯƠNG 2. MẠNG NEURON NHÂN TẠO VÀ MẠNG NEURON TÍCH CHẬP ........................................................................................................................ 20 2.1 Giới thiệu chương.................................................................................... 20 2.2 Mạng Neuron nhân tạo........................................................................ 20 2.2.1 Cấu trúc một Neuron sinh học .......................................................... 20 2.2.2 Cấu trúc một Perceptron ................................................................ 21 2.3 Sigmoid Neuron .................................................................................. 22 2.4 Mô hình mạng Multi-layers Perceptron (MLP) ................................... 24 2.5 Mạng Neuron tích chập (Convolutional Neural Network – CNN) ....... 26 2.5.1 Vùng tiếp nhận cục bộ (Local receptive field)................................... 26 2.5.2 Trọng số chia sẻ ............................................................................. 29 2.5.3 Pooling .......................................................................................... 32 2.6 Kết luận chương ................................................................................. 33 CHƯƠNG 3. XÂY DỰNG PHƯƠNG PHÁP NHẬN DẠNG SỐ NHÀ ........... 34 3.1. Giới thiệu chương................................................................................... 34 3 3.2. Bài toán nhận dạng số nhà ...................................................................... 34 3.3. Phương pháp mạng Neuron truyền thống ............................................ 35 3.4. Phương pháp dùng mạng neuron tích chập .......................................... 37 3.5. Mô hình Resnet................................................................................... 43 3.6. Kết luận chương ................................................................................. 44 CHƯƠNG 4. THỰC NGHIỆM VÀ ĐÁNH GIÁ ............................................ 45 4.1. Giới thiệu chương ............................................................................. 45 4.2. Cơ sở dữ liệu SVHN .......................................................................... 45 4.3. Kết quả với mạng truyền thống (MLP) ............................................... 46 4.4. Kết quả với mạng CNN ...................................................................... 47 C C 4.4.1. Ảnh hưởng của số lớp tích chập đến kết quả nhận dạng ............ 48 4.4.2. Tác động của các tham số ............................................................. 52 R L T. 4.5. Kết quả với Resnet .............................................................................. 55 4.6. Kết luận chương ................................................................................. 58 DU KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ......................................................... 59 DANH MỤC TÀI LIỆU THAM KHẢO ........................................................... 61 QUYẾT ĐỊNH GIAO ĐỀ TÀI .......................................................................... 63 PHỤ LỤC ......................................................................................................... 64 4 TÓM TẮT LUẬN VĂN NGHIÊN CỨU PHƯƠNG PHÁP NHẬN DẠNG SỐ NHÀ TỪ ẢNH CHỤP ĐƯỜNG PHỐ Học viên: Trần Duy Thanh Mã số: 8520203 Khóa: 36 Chuyên ngành: Kỹ thuật điện tử Trường Đại học Bách khoa – Đại học Đà Nẵng Tóm tắt -. Trong những năm gần đây, mạng Neuron tích chập (Convolutional Neural Network-CNN) và đặc biệt là mạng Neuron tích chập sâu với nhiều lớp tích chập đã tạo ra những bước tiến đáng kể trong việc giải quyết các bài toán về thị giác máy tính. Tuy nhiên, việc nhận dạng hình ảnh trong môi trường tự nhiên vẫn là một vấn đề khó khăn đối với thị giác máy tính. Luận văn này tập trung nghiên cứu và khảo sát thực nghiệm các kiến trúc mạng Neuron nhân tạo bao gồm mạng MLP, CNN và mạng CNN sâu với nhiều lớp tích chập trong việc nhận dạng hình ảnh số nhà được chụp từ đường phố. Vai trò của các khối chức năng trong mạng sẽ được phân tích và đánh giá thông qua tỉ lệ nhận dạng. Việc đánh giá được thực hiện thông qua bộ dữ liệu ảnh số nhà SVHN, đây là bộ dữ liệu được sử dụng rộng rãi trong lĩnh vực nhận dạng ảnh. Quá trình thực nghiệm đã cho thấy những kết quả tốt về tỷ lệ nhận dạng, cũng như thể hiện được ưu điểm của kiến trúc CNN, mạng CNN nhiều lớp, và đặc biệt là mạng ResNet. C C R L T. Từ khóa - Deep Learning; Neuron network; MLP; CNN; Resnet; nhận dạng hình ảnh; SVHN. DU METHODS TO RECOGNIZE STREET VIEW HOUSE NUMBERS Abstract - In the recent years, Convolutional Neural Network (CNN) and especially the Deep Neural Network with multiple layers have made significant advances in solving computer vision problems. However, image recognition in the natural environment is still a difficult problem for computer vision. The thesis focuses on the research and empirical survey of artificial neural network architectures including MLP network, CNN and deep CNN network with multiple convolution layers, in order to recognize house numbers in images taken in the street. The role of the functional blocks in the network will be analyzed and evaluated through the recognition rate. The assessment is done with the popular dataset SVHN. The experimental process has shown good results in the recognition rate, as well as demonstrated the advantages of CNN architecture and CNN deep network compared to traditional MLP network. Key words - Deep Learning; Neural Network; MLP; CNN; Resnet; image classification; SVHN. 5 DANH MỤC TỪ VIẾT TẮT Từ viết tắt Diễn giải Dịch nghĩa AI Artificial Intelligence Trí tuệ nhân tạo ANN Artificial Neural Network Mạng Neuron nhân tạo CNN Convolutional Neural Network Mạng Neuron tích chập FC Fully-Connected Kết nối đầy đủ MLP Multi-Layers Perceptron Perceptron nhiều lớp ReLU Rectified Linear Units ResNet Residual Network SVHN Street View House Number DU Khối kích hoạt tuyến tính phần dương R L T. C C Mạng Residual Số nhà từ ảnh chụp đường phố 6 DANH MỤC HÌNH VẼ Hình 1.1. Biểu diễn dữ liệu hình ảnh.......................................................................... 13 Hình 1.2 Số nhà có các font chữ số khác nhau (lấy từ tập dữ liệu SVHN [15])........... 15 Hình 1.3. Đối tượng nhận dạng có sự thay đổi theo khoảng cách [15]. ....................... 15 Hình 1.4. Hình dạng và bố cục khác nhau của các chữ số [15]. .................................. 15 Hình 1.5 Chữ số nhà bị che khuất, mất chi tiết số [15]. .............................................. 16 Hình 1.6. Tác động của ánh sáng đến việc nhận dạng chữ số [15]. ............................. 16 Hình 1.7. Khả năng gây nhầm lẫn khi đối tượng và bối cảnh có sự tương đồng [15]. . 16 Hình 1.8. Kiến trúc mạng Neuron nhân tạo. ............................................................... 17 Hình 1.9. Kiến trúc mạng Neuron nhân tạo với hai lớp ẩn.......................................... 17 C C Hình 1.10. Kiến trúc mạng Deep Learning đơn giản. ................................................. 18 R L T. Hình 2.1. Tế bào Neuron thần kinh của người [6]. ..................................................... 20 Hình 2.2. Cấu trúc của một Perceptron đơn giản. ....................................................... 21 DU Hình 2.3. Sự thay đổi nhỏ các giá trị trọng số dẫn đến sự thay đổi nhỏ tương ứng ở ngõ ra [11]. ................................................................................................................ 23 Hình 2.4. Hàm kích hoạt của Perceptron [11]............................................................. 23 Hình 2.5. Mô hình Perceptron đơn giản [11]. ............................................................. 23 Hình 2.6. Minh họa hàm Sigmoid [11]. ...................................................................... 24 Hình 2.7. Một mô hình mạng MLP gồm các lớp Full Connection [11]. ...................... 25 Hình 2.8. Cấu trúc mạng MLP nhiều lớp [11]. ........................................................... 25 Hình 2.9. Ảnh ngõ vào với kích thước 28 × 28 [11]. ................................................. 27 Hình 2.10. Vùng cục bộ - vùng chấm đen đậm [11]. .................................................. 27 Hình 2.11. Quá trình dịch của các cửa sổ bộ lọc [11]. ................................................ 28 Hình 2.12. Minh họa việc áp dụng một filter lấy tích chập lên ảnh ngõ vào. .............. 30 Hình 2.13. Các bản đồ đặc tính được tạo thành tương ứng với các bộ lọc. ................. 30 Hình 2.14. Kích thước bị thu nhỏ sau quá trình lấy tích chập. .................................... 31 Hình 2.15. Chèn padding được thực hiện trước khi lấy tích chập. .............................. 32 Hình 2.16. Lấy mẫu xuống giúp giảm kích thước dữ liệu. .......................................... 33 Hình 3.1. Mô hình tổng quát của bài toán nhận dạng số nhà....................................... 34 7 Hình 3.2. Mạng MLP trong nhận dạng biển số nhà từ ảnh chụp đường phố. .............. 35 Hình 3.3. Mạng MLP với 1 lớp ẩn ............................................................................. 36 Hình 3.4. Mạng MLP với 2 lớp ẩn ............................................................................. 36 Hình 3.5. Mạng MLP 3 lớp ẩn ................................................................................... 36 Hình 3.6. Mạng MLP 4 lớp ẩn ................................................................................... 37 Hình 3.7. Cấu trúc mạng LeNet [8]. ........................................................................... 37 Hình 3.8. Kiến trúc mạng CNN cơ bản trong nhận dạng số nhà ................................. 38 Hình 3.9. Hàm kích hoạt ReLU, chuyển các giá trị âm về 0. ...................................... 38 Hình 3.10. Mô hình CNN sử dụng trong luận văn ...................................................... 41 Hình 3.11. Mô hình mạng CNN không sử dụng lớp batchNormalization ................... 42 C C Hình 3.12. So sánh kết quả nhận dạng khi tăng số lớp [4]. ......................................... 43 Hình 3.13. Mô hình một Residual block [4]. .............................................................. 44 R L T. Hình 3.14. Mô hình mạng Resnet 18 [5]. ................................................................... 44 Hình 4.1. Kết quả nhận dạng của mạng MLP với 1 lớp ẩn ......................................... 46 DU Hình 4.2. Kết quả nhận dạng của mạng MLP với 2 lớp ẩn ......................................... 46 Hình 4.3. Kết quả nhận dạng của mạng MLP với 3 lớp ẩn ......................................... 46 Hình 4.4. Kết quả nhận dạng của mạng MLP với 4 lớp ẩn ......................................... 46 Hình 4.5. Mạng CNN 2 lớp tích chập......................................................................... 48 Hình 4.6. Mô hình mạng CNN 2 lớp tích chập ........................................................... 48 Hình 4.7. Kết quả nhận dạng của mạng CNN 2 lớp tích chập..................................... 49 Hình 4.8. Mạng CNN 3 lớp tích chập......................................................................... 49 Hình 4.9. Kết quả nhận dạng của mạng CNN 3 lớp tích chập..................................... 50 Hình 4.10. Mạng CNN 4 lớp tích chập ....................................................................... 50 Hình 4.11. Kết quả nhận dạng đối với mạng CNN 4 lớp tích chập ............................. 51 Hình 4.12. Kết quả nhận dạng đối với mạng CNN 5 lớp tích chập ............................. 51 Hình 4.13. Vai trò của Learning rate trong mạng CNN ............................................. 53 Hình 4.14. Vai trò của Dropout trong mạng CNN ...................................................... 54 Hình 4.15. Vai trò của batchNormalization trong mạng CNN .................................... 55 Hình 4.16. Kết quả nhận dạng với mạng Resnet 8 (23 epoch) .................................... 56 8 Hình 4.17. Kết quả nhận dạng với mạng Resnet 18 .................................................... 56 Hình 4.18. Kết quả nhận dạng với mạng Resnet 18 (có Extra data) ............................ 57 C C DU R L T. 9 DANH MỤC BẢNG Bảng 4.1. Kết quả nhận dạng mạng MLP với tập dữ liệu SVHN ................................ 47 Bảng 4.2. Kết quả nhận dạng của mạng CNN với tập dữ liệu SVHN ......................... 52 Bảng 4.3. Kết quả nhận dạng của các mạng Neuron với tập dữ liệu SVHN ................ 58 C C DU R L T. 10 MỞ ĐẦU 1. Tính cấp thiết của đề tài Mạng Neuron nhân tạo – ANN (gọi tắt là mạng Neuron) là mô hình thuật toán được đưa ra dựa trên hệ thống thần kinh của con người và Deep Learning (Deep Neural Network) là một nhánh đặc biệt trong đó. Mạng neuron sâu thực chất không phải là một khái niệm mới, mà đã xuất hiện từ những năm 1950 nhưng mãi đến thời gian gần đây mới phát triển mạnh mẽ cùng với sự bùng nổ của Internet và máy tính có tốc độ xử lý cao, giúp chúng ta có thể tận dụng tất cả dữ liệu khổng lồ như hình ảnh, video, âm thanh,.. là các yếu tố quyết định giúp mạng neuron hoạt động hiệu quả. Hiện nay, kỹ thuật nhận dạng đang được rất nhiều người quan tâm, bởi đây là một ngành khoa học có rất nhiều ứng dụng trong các lĩnh vực tin học, y tế, quốc phòng, an ninh, kinh tế và xã hội. C C R L T. Luận văn này tập trung nghiên cứu Deep Learning và mạng Neuron tích chập (CNN) để giải quyết vấn đề nhận dạng số nhà từ ảnh chụp trong bối cảnh phức tạp, ảnh màu và ảnh có chứa những đối tượng khác có thể gây nhầm lẫn. DU Xuất phát từ nhu cầu thực tế và xu hướng nghiên cứu của thế giới, tác giả thực hiện đề tài: “Nghiên cứu phương pháp nhận dạng số nhà từ ảnh chụp đường phố.” 2. Mục tiêu nghiên cứu - Nghiên cứu áp dụng mạng neuron tích chập (CNN) và mạng Neuron tích chập sâu (CNNs) giải quyết bài toán nhận dạng số nhà từ ảnh chụp đường phố. - Nghiên cứu, đưa ra mô hình các mạng Neuron nhân tạo như MLP, CNN và đánh giá hệ thống mạng dựa trên cơ sở dữ liệu SVHN. - Đánh giá tác động của số lớp, tốc độ học của mạng, tỷ lệ loại bỏ ngẫu nhiên (dropout)… đến hệ thống dựa trên tỷ lệ nhận dạng đúng hình ảnh chữ số. 3. Đối tượng và phạm vi nghiên cứu a) Đối tượng nghiên cứu - Mô hình mạng Neuron truyền thống MLP [11]. - Mô hình mạng Neuron tích chập (CNN) nhiều lớp [11]. - Mô hình mạng Neuron tích chập sâu Resnet [13]. - Cơ sở dữ liệu SVHN được lấy từ Google Street View – dùng để khảo sát và đánh giá hệ thống [15]. - Ứng dụng phần mềm Matlab để mô phỏng. 11 b) Phạm vi nghiên cứu - Nhận dạng ảnh số nhà. - Phân tích, xử lý ảnh. - Mạng Neuron nhân tạo, Mạng Neuron tích chập - Tập dữ liệu hình ảnh số nhà SVHN. - Phần mềm Matlab, mô phỏng và đánh giá hiệu quả của hệ thống. 4. Phương pháp nghiên cứu Trong phạm vi luận văn, phương pháp nhận dạng số nhà từ ảnh chụp đường phố được xây dựng dựa trên mạng Neuron tích chập (CNN). Xây dựng mô hình mạng CNN và mô phỏng bằng Matlab nhằm đánh giá hiệu quả của hệ thống. C C Hệ thống được tiến hành đánh giá dựa trên tỷ lệ nhận dạng đúng (hoặc tỷ lệ nhận dạng lỗi) hình ảnh, áp dụng với bộ cơ sở dữ liệu chính là SVHN. R L T. Phương pháp nghiên cứu xuyên suốt của luận văn là kết hợp nghiên cứu lý thuyết, và đánh giá thông qua mô phỏng thực nghiệm. Quá trình thực hiện bao gồm các bước: xây dựng mô hình, huấn luyện, đánh giá khả năng phân loại ảnh số nhà dựa trên tỉ lệ nhận dạng đúng. DU 5. Ý nghĩa khoa học và thực tiễn của đề tài Việc nhận dạng các chữ số nhà từ ảnh chụp đường phố là một vấn đề quan trọng đang được quan tâm hiện nay, các bức ảnh chụp đường phố thường có bối cảnh phức tạp có chứa nhiều đối tượng gây nhầm lẫn trong nhận dạng là vấn đề đầy thách thức và khó khăn. Tuy nhiên, các bài toán này có thể được giải quyết với sự trợ giúp Deep Learning và mạng Neuron tích chập. Việc khai thác ảnh chụp đường phố được lấy từ Google Street View giúp việc xây dựng và cập nhật bản đồ cho một địa điểm, khu phố, con đường được thuận lợi hơn. 6. Cấu trúc của luận văn Trong luận văn “NGHIÊN CỨU PHƯƠNG PHÁP NHẬN DẠNG SỐ NHÀ TỪ ẢNH CHỤP ĐƯỜNG PHỐ”, tôi tập trung vào việc nghiên cứu, xây dựng và khảo sát hiệu quả của hệ thống để giải quyết bài toán nhận dạng hình ảnh số nhà từ ảnh chụp trong môi trường tự nhiên. Nội dung của luận văn gồm 4 chương: Chương 1: Giới thiệu bài toán nhận dạng số nhà và Deep Learning Chương 2: Mạng Neuron nhân tạo và mạng Neuron tích chập Chương 3: Xây dựng phương pháp nhận dạng ảnh số nhà Chương 4: Thực nghiệm và đánh giá kết quả 12 Em xin bày tỏ sự biết ơn chân thành và sâu sắc nhất tới Thầy TS. Hồ Phước Tiến đã hết lòng hướng dẫn và giúp đỡ Em trong suốt quá trình nghiên cứu và hoàn thiện luận văn Thạc sĩ này. Em cũng xin gửi lời cảm ơn chân thành tới các Thầy, các Cô là giảng viên của Khoa Điện Tử Viễn Thông - Trường Đại học Bách khoa Đà Nẵng đã tận tình truyền đạt và hướng dẫn cho Em trong suốt quá trình học tập. Mặc dù đã hết sức cố gắng hoàn thành luận văn, nhưng do thời gian và trình độ có hạn nên luận văn của em chắn chắn không thể tránh khỏi những sai sót, rất mong nhận được các ý kiến đóng góp của quý Thầy, Cô và các Bạn để luận văn được hoàn thiện hơn. Em xin chân thành cảm ơn ! C C DU R L T. 13 CHƯƠNG 1. GIỚI THIỆU BÀI TOÁN NHẬN DẠNG SỐ NHÀ VÀ DEEP LEARNING 1.1. Giới thiệu chương Ngày nay, Trí tuệ nhân tạo (Aritificial Intelligence - AI) và Học máy (Machine Learning) hiện diện trong mọi lĩnh vực của đời sống con người, từ kinh tế, giáo dục, y khoa cho đến những công việc nhà, giải trí hoặc thậm chí là trong quân sự. Những ứng dụng nổi bật trong việc phát triển AI đến từ nhiều lĩnh vực để giải quyết nhiều vấn đề khác nhau. Nhưng những đột phá phần nhiều đến từ Học sâu (Deep Learning), một mảng nhỏ đang mở rộng dần đến từng loại công việc, từ đơn giản đến phức tạp. Chương 1 sẽ giới thiệu tổng quan về bài toán nhận dạng số nhà và trình bày sơ lược về Deep Learning cũng như về mạng Neuron nhân tạo. 1.2. Tổng quan về bài toán nhận dạng số nhà C C Nhận dạng hình ảnh nói chung và nhận dạng ký tự, chữ số từ ảnh chụp nói riêng là một trong những vấn đề đang được quan tâm hiện nay. Tuy nhiên việc nhận dạng chữ số trong môi trường tự nhiên vẫn là một vấn đề khó khăn đối với thị giác máy tính. DU R L T. Hiện nay một số hãng công nghệ lớn như Google, Amazone đã đưa ra các thuật toán nhận dạng hình ảnh vào ứng dụng như: tự tag khuôn mặt người dùng (Facebook), tìm kiếm qua camera điện thoại bằng trí thông minh nhân tạo (Google Lens) hay siêu thị tự động không cần thu ngân (Amazon Go). Về cơ bản, nhận dạng số nhà là trích xuất các lớp thông tin từ hình ảnh để phân loại các chữ số trong ảnh. Và dưới góc nhìn của một hệ thống, dữ liệu khi đưa vào mạng được biểu diễn bằng ma trận (matrix) số liệu hay tổng quát hơn là ma trận nhiều chiều (tensor). Giả sử x là một ảnh màu RGB có kích thước H × W × D (tương ứng với kích thước chiều cao, rộng và độ sâu) sẽ được biểu diễn bởi bằng một tensor H × W × 3. Tensor này có 3 kênh (channel), tương ứng với ba màu đỏ, xanh lá cây và xanh dương. Hình 1.1. Biểu diễn dữ liệu hình ảnh 14 Có hai phương pháp học máy chính được áp dụng vào nhận dạng chữ số: học có giám sát (supervised learning) và học không giám sát (unsupervised learning). - Nhận dạng có giám sát: Nhận dạng số nhà có giám sát là thuật toán dự đoán đầu ra của một số nhà mới cần nhận dạng, dựa trên các cặp số nhà cần nhận dạng và kết quả nhận dạng đã biết từ trước. Cặp dữ liệu này còn được gọi là dữ liệu, nhãn (data, label). Supervised Learning là nhóm phổ biến nhất trong các thuật toán Machine Learning. Một cách toán học, Supervised Learning là khi chúng ra có một tập hợp biến đầu vào X={x1,x2,…,xN}và một tập hợp nhãn tương ứng Y={y1,y2,…,yN}, trong đó xi,yi là các vector. Các cặp dữ liệu biết trước (xi,yi) được gọi là tập dữ liệu huấn luyện (training data). Từ tập training data này, chúng ta cần tạo ra một hàm số ánh xạ mỗi phần tử từ tập X sang một phần tử (xấp xỉ) tương ứng của tập Y:yi≈f(xi), ∀i=1,2,…,N. C C Mục đích là xấp xỉ hàm số f thật tốt để khi có một số nhà x mới, chúng ta có thể tính được nhãn tương ứng của nó y=f(x). - R L T. Nhận dạng không giám sát: Nhận dạng số nhà không giám sát là thuật toán mà chúng ta không biết được số nhà ở đầu ra hay label mà chỉ có dữ liệu đầu vào. DU Một cách toán học, Unsupervised Learning là khi chúng ta chỉ có dữ liệu vào X mà không biết nhãn Y tương ứng. Hiện nay, với bài toán nhận dạng nói chung và bài toán nhận dạng số nhà nói riêng, phần lớn các nghiên cứu vẫn tập trung vào phương pháp nhận dạng có giám sát. Luận văn này cũng sẽ được thực hiện theo hướng nghiên cứu này. Đối với bộ não người bình thường, thông qua quá trình tiến hóa và thu nhận thông tin, cần chưa tới vài giây (hay thậm chí chỉ vài phần giây) để có thể nhận dạng một đối tượng là chữ số, bức tường, hàng rào ... Tuy nhiên, đây lại là một vấn đề khó khăn và cực kì phức tạp đối với các hệ thống máy tính. Thậm chí, trong một số trường hợp với hình ảnh phức tạp hay dễ nhầm lẫn, bản thân con người cũng có thể không nhận dạng được đối tượng. Một số thách thức trong nhận dạng số nhà từ ảnh chụp có thể kể đến như: - Về Font chữ số: Ảnh chụp một số nhà có các font chữ số khác nhau sẽ dẫn tới dễ gây nhầm lẫn trong phân biệt và nhận dạng. 15 Hình 1.2 Số nhà có các font chữ số khác nhau (lấy từ tập dữ liệu SVHN [15]). - Về tỷ lệ của chữ số: Việc nhận định về vật thể có thể chịu sự chi phối về kích thước và tỉ lệ của vật thể. Trong trường hợp cụ thể, có thể kể đến việc sai khác về kích thước quan sát vật thể ở các khoảng cách khác nhau. Cùng một vật thể được đánh giá, nếu ở khoảng cách gần, chúng ta có thể quan sát được với kích thước lớn, và ngược lại khi vật thể ở xa. C C DU R L T. Hình 1.3. Đối tượng nhận dạng có sự thay đổi theo khoảng cách [15]. - Về hình dạng, cách bố trí, góc nhìn, chiều xoay các chữ số: Nhiều số nhà có thể bị biến đổi về bố cục sắp xếp, góc độ, chiều xoay của các chữ số, đơn cử như chữ số nhà được xếp thành nhiều hàng, chữ số theo chiều dọc và chiều ngang, chữ số theo góc nghiêng…. Đây cũng là một yếu tố ảnh hưởng đến việc nhận dạng. Hình 1.4. Hình dạng và bố cục khác nhau của các chữ số [15]. - Về vấn đề che khuất, mất chi tiết: Trong thực tế, không phải lúc nào chúng ta cũng có thể quan sát toàn vẹn về đối tượng. Trường hợp đối tượng bị che khuất một phần, chính là một ví dụ cụ thể. 16 Hình 1.5 Chữ số nhà bị che khuất, mất chi tiết số [15]. Trong Hình 1.5, Số nhà được chụp trong ảnh bị che khuất một phần chữ số, chữ số bị mất một phần chi tiết, chỉ vài phần nhỏ của nó có thể nhìn thấy được. Quá trình nhận dạng sẽ được thực hiện trong trạng thái khuyết thiếu dữ liệu. - Điều kiện chiếu sáng: Tác động của mức độ ánh sáng lên từng điểm ảnh: C C DU R L T. Hình 1.6. Tác động của ánh sáng đến việc nhận dạng chữ số [15]. - Nhầm lẫn bối cảnh, ảnh chụp mờ khó nhận dạng: Một trường hợp khó xử lý khác mà chúng ta có thể kể đến là việc có nhiều chữ số tương đồng hòa trộn vào môi trường xung quanh trong ảnh, chữ số và bối cảnh có sự tương đồng, ảnh chụp các chữ số mờ khó nhận dạng. Hình 1.7. Khả năng gây nhầm lẫn khi đối tượng và bối cảnh có sự tương đồng [15]. Bài toán nhận dạng đơn giản nhất hiện nay mà có thể xem là đã giải quyết được là bài toán nhận dạng chữ số viết tay, với kết quả các nhà nghiên cứu đạt được lên đến 99%. Ngược lại, bài toán được cho là khó giải quyết nhất là bài toán nhận dạng ảnh trong môi trường tự nhiên, do sự đa dạng về bối cảnh, màu sắc, góc nhìn, khoảng cách chụp, thành phần gây nhầm lẫn,... 17 1.3. Phương pháp học sâu (Deep Learning) và Ứng dụng 1.3.1 Phương pháp học sâu (Deep Learning) Deep Learning gắn liền với cụm từ “neural network”. Lĩnh vực này đã được biết đến dưới nhiều cái tên khác nhau và đã trải qua một quá trình lịch sử lâu dài về nghiên cứu. C C R L T. Hình 1.8. Kiến trúc mạng Neuron nhân tạo. DU Mạng Neuron không phải là một lĩnh vực mới, thậm chí chúng là những mô hình machine learning lần đầu tiên xuất hiện từ đầu những năm 1950. Khởi đầu là những nghiên cứu về mạng Neuron nhân tạo (ANN), lấy cảm hứng từ các mô hình neuron sinh học như Perceptron, Adaline. Đến những năm 1960 - 1980 với sự phát minh của thuật toán lan truyền ngược (back propagation) [11] đã góp phần thúc đẩy sự phát triển của mạng Neuron, tuy nhiên phải đến thời gian gần đây mới gây được sự chú ý trên thế giới. Kiến trúc chung của mạng Neuron nhân tạo gồm có ba thành phần đó là lớp đầu vào (Input layer), lớp ẩn (hidden layer) và lớp đầu ra (output layer) [11], như Hình 1.9. Hình 1.9. Kiến trúc mạng Neuron nhân tạo với hai lớp ẩn 18 Trong một ANN có thể có nhiều hiden layer, một hidden layer gồm các neuron nhận dữ liệu input từ neuron ở layer trước đó rồi xử lý input này sau đó tiến hành xuất dữ liệu output cho các hiden layer tiếp theo. Mỗi neuron có một hàm kích hoạt (activation function); hàm này thường mô phỏng đáp ứng phi tuyến trong hoạt động của neuron. C C DU R L T. Hình 1.10. Kiến trúc mạng Deep Learning đơn giản. Deep Learning là một kỹ thuật trong Machine Learning, liên quan đến các thuật toán dược xây dựng từ cấu trúc và hoạt động của bộ não con người gọi là mạng Neuron nhân tạo (artificial neural networks). Một điểm đáng chú ý của các mạng Neuron nhân tạo là không cần con người lập trình để thực hiện công việc. Thay vào đó, các lập trình viên sẽ cung cấp cho máy tính một thuật toán học và một lượng lớn dữ liệu hay mẫu để huấn luyện. Sau đó, máy tính sẽ tự học được cách để nhận dạng một đối tượng nhất định. Deep Learning về cơ bản chính là một ANN với nhiều hidden layer. Một ANN cơ bản có thể có vài hidden layer, nhưng với Deep Learning số lượng có thể lên đến hàng trăm, thậm chí hàng nghìn lớp (layer). Việc tăng nhiều lớp đồng nghĩa với việc tăng độ chính xác cho ANN, tuy nhiên việc này đòi hỏi nhiều hơn về tài nguyên (dữ liệu, nền tảng phần cứng ...). Ngoài ra, với mạng càng nhiều lớp thì quá trình huấn luyện càng phức tạp hơn. Một vấn đề quan trọng khác đối với Deep Learning là dữ liệu. Nói chung, ta cần một lượng dữ liệu rất lớn để huấn luyện tốt một mạng Neuron nhiều lớp: dữ liệu càng nhiều thì mạng Neuron sử dụng Deep Learning càng chuẩn xác. Tuy nhiên, đây
- Xem thêm -

Tài liệu liên quan