Chương 1 TỔNG QUAN 1. Tổng quan về lĩnh vực nghiên cứu Deep Learning là một thuật toán dựa trên một số ý tưởng từ não bộ tới việc tiếp thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tượng, qua đó làm rõ nghĩa của các loại dữ liệu. Deep Learning đượ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. Hiện nay rất nhiều các bài toán nhận dạng sử dụng Deep Learning để giải quyết do Deep Learning có thể giải quyết các bài toán với số lượng lớn, kích thước đầu vào lớn với hiệu năng cũng như độ chính xác vượt trội so với các phương pháp phân lớp truyền thống.
Convolutional Neural Network (CNNs – 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 cho chúng ta xây dựng được những hệ thống thông minh với độ chính xác cao. Hiện nay trên thế giới có một số mô hình kiến trúc CNNs đạt được kết quả khả quan như: - Lenet [1]: Đây là mô hình CNN thành công đầu tiên, đặc biệt là trong việc nhận dạng chữ số, ký tự trong văn bản. Được phát triển bởi Yann Lecun vào cuối những năm 90. - AlexNet [2]: Được phát triển bởi Alex Krizhevsky, Ilya Sutskever và Geoff Hinton.
Lần đầu được giới thiệu vào năm 2012 với cấu trúc khá tượng tự như LeNet nhưng với số lượng neural, filter và layer lớn hơn. Được coi là mạng neural đầu tiên phổ biến rộng rãi khả năng của CNNs. Mạng neural này được phát triển từ AlexNet với việc tinh chỉnh các 1 Luan van hyperparameter (filter size, stride…). Với những layer gần input layer, filter size và stride nhỏ hơn.
- GoogLeNet [4]: Là mạng CNNs tốt nhất năm 2014 được phát triển bởi Szegedy từ Google. Với một số thay đổi như giảm thiểu số lượng tham số trong AlexNet từ 60 triệu xuống còn 4 triệu sử dụng Average Pooling thay cho FC-Layer. - VGGNet [5]: Là mạng CNNs tốt nhất năm 2015 được phát triển bởi Karen Simonyan và Andrew Zisserman. Sử dụng filter 3x3 và pooling 2x2 từ đầu tới cuối mạng.
Bỏ qua FC-Layer ở cuối mạng và sử dụng “special skip connection” và “batch normalization”. Và vẫn được tiếp tục phát triển, với kết quả gần nhất được xuất bản vào tháng 3 năm 2016. Các mô hình CNNs nói trên được huấn luyện với tập dữ liệu rất lớn lên tới hàng ngàn đối tượng và có độ chính xác khá cao, nhưng nhược điểm của các mô hình CNNs này là phải cần cấu hình phần cứng máy tính rất cao và không đi vào một ứng dụng cụ thể nào. Trong luận văn cao học này, tác giả đi vào nghiên cứu về mạng neural cũng như mạng neural tích chập (Convolution) cũng như ý tưởng của mô hình CNNs trong phân lớp ảnh (Image Classification), và áp dụng trong việc xây dựng hệ thống nhận dạng các đối tượng tham gia giao thông.
Trong đề tài này tác giả đi sâu vào mạng nơ ron tích chập - CNN là vì trong quá trình tìm hiểu tác giả thấy được CNN là một mô hình dễ sử dụng, rất phổ biến và có rất nhiều ứng dụng hay trong lĩnh vực nhận dạng và xử lý ảnh số. Tên đề tài khác với tên hiện nay là vì dữ liệu ban đêm rất hiếm và không có số lượng nhiều để huấn luyện mạng nên tác giả đổi tên đề tài thành dữ liệu 2 Luan van ban ngày và huấn luyện trên nhiều tập dữ liệu khác nhau để thực nghiệm mô hình.8: lưu đồ quá trình huấn luyện và hình 3.10: minh họa các bước tính các lớp CNN là của tác giả tự đề xuất. Đề tài nhận dạng các đối tượng trong ảnh sử dụng mạng nơ ron là: “Nhận dạng hành động người sử dụng mạng nơ ron tích chập” của tác giả Nguyễn Thành Tâm. Đề tài của tác giả khác nhau là kiến trúc mô hình CNN, các layer trong mạng, các filter sử dụng và nhận dạng đối tượng khác nhau.
Phương pháp nhận dạng sử dụng kỹ thuật CNN của đề tài tác giả là nhận dạng các đối tượng trong ảnh và video, ảnh và video trên là các đối tượng tham gia giao thông: Bicycle, Dog, Car, Motorbike, People có thể ứng dụng vào thực tế như robot ngoài trời, xe tự lái… Cấu trúc mới của mô hình CNN là tác giả xây dựng mạng gồm 15 lớp, 32 filter để chập mà chưa có ai công bố trước đó – đây là điểm mới của đề tài. Cơ sở đánh giá độ chính xác của mạng là tác giả thực hiện huấn luyện đi huấn luyện lại nhiều lần với việc chỉnh sửa kiến trúc mạng để lấy được độ chính xác cao nhất sau đó lấy mô hình kiến trúc đó làm mô hình chuẩn nhất. Mục đích của đề tài Mục đích của đề tài là tác giả sẽ xây dựng một mô hình cấu trúc CNNs mới và tiến hành huấn luyện mạng trên nhiều tập dữ liệu khác nhau để tối ưu mô hình kiến trúc mạng và đặc biệt tác giả sẽ huấn luyện mạng với dữ liệu là: Bicycle, Car, Dog, Motobike, People để ứng dụng vào việc nhận dạng các đối tượng tham gia giao thông. Vì sao tác giả chọn 5 loại đối tượng này? Tại sao không chọn nhiều hơn mà chọn chỉ có 5 loại? Tại vì tác giả quan sát thấy 5 loại đối tượng này là những đối tượng chủ yếu tham gia giao thông nên tác giả chọn ra đại diện 5 loại đối 3 Luan van tượng này và 5 cũng là con số nhỏ cũng phù hợp với phần cứng máy tính của tác giả.
Về việc tránh nhầm lẫn với đề tài khác cũng sử CNNs để nhận dạng đối tượng, giống nhau là việc sử dụng mạng CNNs để nhận dạng đối tượng, nhưng khác nhau chính là cấu trúc mạng và các filter sử dụng nên kết quả sẽ khác nhau. Nhiệm vụ và giới hạn của đề tài Nhiệm vụ: - Tìm hiểu một số mô hình và ứng dụng của Deep learning trong xử lý hình ảnh. - Tìm hiểu các phương pháp rút trích đặc trưng trong ảnh. - Trích xuất các đặc trưng ảnh và biểu diễn nó trong mạng nơron tích chập.
- Tập hợp các đặc trưng ảnh và dự đoán tính chất, đặc trưng của ảnh. - Thực hiện huấn luyện, mô phỏng bằng phần mềm Matlab để dự đoán và nhận dạng đối tượng. Hạn chế: - Data nhỏ, không training được với lượng data lớn vì phần cứng máy tính không cho phép. - Không có tính thực tế, chỉ mô phỏng trên phần mềm Matlab - Mô hình mạng chưa được tối ưu lắm nên mạng có độ chính xác chưa cao lắm.
Phương pháp nghiên cứu - Thu thập, tổng hợp các tài liệu lý thuyết cơ bản liên quan đến đề tài. - Tìm hiểu các kết quả nghiên cứu đã công bố trong nước và quốc tế. - Phân tích lý thuyết và mô phỏng kết quả tính toán bằng phần mềm Matlab. - Tổng hợp viết báo cáo.
Tóm tắc nội dung chính của đề tài Với mục đích là dự đoán và nhận dạng được các đối tượng tham gia giao thông, nội dung của bài báo cáo bao gồm các phần sau: 4 Luan van Chương 1: Tổng quan: Chương này giới thiệu tổng quan về mục đích của đề tài cũng như các nghiên cứu liên quan đến đề tài, trình bày mục tiêu và phương pháp thực hiện đề tài. Chương 2: Cơ sở lý thuyết: Chương này giới thiệu cơ sở lý thuyết liên quan đến nội dung của đề tài. Chương 3: Áp dụng mạng nơ ron tích chập trong việc nhận dạng các đối tượng tham gia giao thông: Chương này nêu ra cách giải quyết bài toán cụ thể trong việc nhận dạng dùng mạng nơron tích chập. Chương 4: Kết luận: Chương này đưa ra kết quả thực hiện được và hướng phát triển sau này của đề tài.
5 Luan van Chương 2 CƠ SỞ LÝ THUYẾT 2. Tế bào thần kinh và mạng thần kinh nhân tạo 2. Tế bào thần kinh Mạng thần kinh nhân tạo [7] (gọi ngắn gọn là mạng thần kinh) có thể xem như là mô hình toán học đơn giản của bộ não con người. Mạng thần kinh gồm các tế bào thần kinh (đơn vị xử lý) kết nối với nhau bởi các liên kết.
Mỗi liên kết kèm theo một trọng số, đặc trưng cho đặc tính kích thích hay ức chế của các tế bào thần kinh.1: Tế bào thần kinh nhân tạo Mỗi tế bào thần kinh được kết nối với các tế bào thần kinh khác và nhận các tín hiệu xi từ chúng với các trọng số wi Quá trình xử lý thông tin của tế bào thần kinh được chia thành hai phần: xử lý ngõ vào và xử lý ngõ ra. Hàm xử lý ngõ vào là hàm tổng có dạng như sau. Hàm tuyến tính (linear function): m f net w j x j w T x (2.1) j 1 Hàm toàn phương (quadratic function): 6 Luan van m f net w j x 2j (2.2) j 1 Hàm cầu (spherical function): 2 f net 2 x j w j 2 x w x w m T (2.3) j 1 Trong mỗi biểu thức trên , là mức ngưỡng của tế bào thần kinh. Thường hàm tổng ở ngõ vào được sử dụng nhiều nhất là hàm tuyến tính (2.
Ngõ ra của mỗi tế bào thần kinh được cho bởi biểu thức: y = a(f) (2.) gọi là hàm tác động. Các dạng hàm tác động thường dùng là: Hàm nấc: 1 𝑛ế𝑢 𝑓 ≥ 0 a(f) = { 0 𝑛ế𝑢 𝑓 < 0 Hình 2.2 : Hàm nấc Hàm dấu: 1 𝑛ế𝑢 𝑓 ≥ 0 a(f) = { −1 𝑛ế𝑢 𝑓 < 0 Hình 2.3 : Hàm dấu Hàm tuyến tính: a(f) = f Hình 2.4 : Hàm tuyến tính 7 Luan van Hàm dốc bão hòa: 1 𝑛ế𝑢 𝑓 > 1 a(f) = {𝑓 𝑛ế𝑢 0 ≤ 𝑓 ≤ 1 0 𝑛ế𝑢 𝑓 < 0 Hình 2.5 : Hàm dốc bão hòa Hàm tuyến tính bão hòa: 1 𝑛ế𝑢 𝑓 > 1 a(f) = {𝑓 𝑛ế𝑢 0 ≤ |𝑓| ≤ 1 −1 𝑛ế𝑢 𝑓 < −1 Hình 2.6 : Hàm tuyến tính bão hòa Hàm dạng s đơn cực: 1 a( f ) 1 e f Hình 2.7 : Hàm dạng s đơn cực Hàm dạng s lưỡng cực: 2 a( f ) 1 1 e f Hình 2.8 : Hàm dạng s lưỡng cực 2. Mạng thần kinh nhân tạo Định nghĩa: Mạng nơron nhân tạo, Artificial Neural Network (ANN) là một mô hình xử lý thông tin phỏng theo cách thức xử lý thông tin của các hệ nơron sinh học.