CHƯƠNG 1- TONG QUAN: Ở chương này, nội dung trình bày về các công trình nghiên cứu hiện nay có liên quan tới đề tài. Đồng thời phát biểu bài toán phân loại tài liệu học tập — giảng dạy, đưa ra hướng tiếp cận và giải pháp thực hiện. CHUONG 2- CƠ SỞ LÝ THUYET: Trinh bày các nội dung sau, gồm Lược sử mô hình học sâu: Các Case Study kiến trúc các mạng CNN Kỹ thuật phân lớp ảnh dùng CNN CHƯƠNG 3- MO HÌNH CNN PHAN LOẠI TAI LIEU GIANG DAY: Bài toán phân lớp anh (kỹ thuật phan lớp anh, tiêu chi đánh gia) Mục tiêu chương này là đề xuất mô hình giải quyết bài toán. Dữ liệu trước khi đưa vào mô hình cần được xử lý và chuẩn hóa, sau đó phân tập cho công tác huấn luyện dir liệu.
Cuối cùng là đánh giá cách thực hoạt động mô hình. Phương pháp kiểm tra và độ đo đánh giá mô hình phân lớp CHƯƠNG 4- THỰC NGHIEM: Cài đặt mô hình giải quyết bài toán trên môi trường Window với các bộ dữ liệu được thu thập. Thông kê dữ liệu thực nghiệm. Đánh giá, nhận xét đưa ra kêt luận vê mô hình đê xuât.
CHƯƠNG 5- KET LUẬN VÀ KHUYÉN NGHỊ: 10 CHUONG 2. CAC MÔ HÌNH HỌC SAU CHO PHAN LOP Những năm gan đây, ta đã chứng kiến được nhiều thành tựu vượt bậc trong ngành Thị giác máy tính (Computer Vision). Các hệ thống xử lý ảnh lớn như Facebook, Google hay Amazon đã đưa vào sản phẩm của mình những chức năng thông minh như nhận diện khuôn mặt người dùng [26]. phát triển xe hơi tự lái [21].
Convolutional Neural Network (CNNs — Mạng nơron tích chập) là một trong những mô hình học sâu tiên tiễn giúp cho các nhà nghiên cứu xây dựng được những hệ thống thông minh với độ chính xác cao như [24]. Trong phần này, chúng tôi sẽ trình bày về Convolution (conv - tích chập) cũng như ý tưởng của mô hình CNNs trong bài toán phân lớp chung. Lược sử mô hình học sâu. Mạng noron tích chập được ứng dụng rất nhiều trong thị giác máy tính cho việc phân loại và cục bộ hóa (localizer).
Từ CNNs cơ bản người ta có thể tạo ra rất nhiều kiến trúc khác nhau, từ những mạng cơ bản 1 đến 2 tầng đến 100 tầng phụ thuộc vào việc nên sử dụng bao nhiêu layer, nên kết hợp các tầng như thế nào? .Trong bài việt [26]. có nêu ra một sô các kiên trúc nôi tiêng được áp dụng nhiêu. LeCun 1989 LeNet Hình 2-1 Lịch sử phát triển mô hình mạng CNN [26]. II Một trong những nền móng đầu tiê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 [28]. Đến năm 1986, Geoffrey Hinton tốt nghiệp PhD với hai tác giả khác xuất bản một bài báo khoa học với tựa đề “Cải thiện độ lỗi trong việc học tập bằng thuật lan truyền ngược” (Learning representations by back- propagating errors) [29]. Trong bài báo này, nhóm của ông chứng minh rằng cấu trúc mạng với nhiều lớp an 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à lan truyền ngược Với cấu trúc tầng ân, mạng noron được chứng minh rằng có khả năng xấp xỉ hầu hết bất kỳ hàm số nào qua một định lý “Universal approximation theorem” [30]. Nồi trội là mạng nơron tích chập (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 boi Yann LeCun tại AT&T Bell Labs (Yann LeCun 1a sinh vién sau cao hoc cua Hinton tai dai hoc Toronto nam 1987-1988).
Tu đây đánh dấu sự ra đời các mô hình hoc sâu sé được trình bày phan kế tiếp. Trong những năm gan đây, nhiều nhân tố dẫn đến sự phát trién các mô hình học sâu [32]. : sự ra đời của các bộ dữ liệu lớn được gán nhãn được lưu trữ chia sẻ giữa các công trình, khả năng tính toán tốc độ cao của GPU và các thiết bị phần cứng; các hàm kích hoạt, sự cải tiễn của các kiến trúc: GoogLeNet, VGG, ResNet,. va nhiều thư viện mới hỗ trợ việc huấn luyện [33].
: Theano, Caffe, MXnet, Tensorflow, Pytorch, Keras. Một sô mô hình học sâu 2. Giới thiệu: Lay cảm hứng từ sự hiểu biết sinh học của vỏ não thị giác, mạng thần kinh xoắn được đề xuất dựa trên nền tảng perceptron nhiều lớp truyền thống. Nhóm tác giả của LeCun và cộng sự đã đề xuất lần đầu vào năm 1998 [34].
với ba ý tưởng chính: Local Receptive Fields (Giá trị đặc trưng cục bộ), Shared Weights (Chia sẻ giá trị trọng số), Sub-sampling (Giảm mẫu). Ở đây là kiến trúc ban đầu trong bài báo đầu tiên mà tác giả đề xuất nhận diện ký tự viết tay như thể hiện trong hình 2-2. 12 The architecture of LeNet5 C3: f. maps 16@ 10x10 INPUT cận hô maps S4: f.
maps : C5: layer ep. 6614x14 ig Eee QurPur Full connection Gaussian | Convolutions Subsampling Convolutions | Subsampling Full connection Hình 2-2 Cau trúc mạng LeNet 5 của LeCun 1998 [34]. Cấu trúc mạng đầu tiên áp dụng thao tác chập và hoạt động chèn subsampling thay cho dữ liệu đầu vào, với các đơn vị tính toán được gọi là các lớp xoắn và các lớp subsampling tương ứng. Sau hai nhóm tính toán như vậy, việc trình bày dir liệu ở các lớp cao hơn được đưa vào mạng neural truyền thống kết nối hoàn chỉnh, nơi nó hoàn thành nhiệm vụ của một vấn đề phân loại.
Với kiến trúc này, nó giới thiệu một số lợi thé so với mang neural truyền thống. Thông số: = Sử dụng bộ nhân chập kích thước 5 x 5 pixel, tỉ lệ trượt điểm ảnh là 1 pIxel = Subsampling (hay Pooling) có kích thước 2 x 2 pixel, sử dụng tỉ lệ trướt trên điểm ảnh là 2 pixel. " Kiến trúc tông quát: CONV — POOL — CONV - POOL — CONV - FC Tiền xử ly anh đầu vào: Ảnh kích thước 32 x 32 pixel = Trong tâm chính là hình ký tự chữ cái có kích thước lớn 20 x 20 pixel = Chuan hóa giá tri đầu vào màu trăng và màu đen. Kiến trúc mạng: Tang 1 — Convolution: Đầu vào là ảnh 32 x 32, dùng nhân chập 5 x 5.
Đầu ra lớp này là 6 lớp đặc trưng tích chập với kích thước 28 x 28. Tham số học: (5 x 5 + 1) x 6 = 156, số lượng kết nối: (28 x 28) x (5 x 5 x 1) x 6 = 122.304, fully connect: (32 x 32+ 1)x (28x 28) x6 13 Tang 2 — Subsampling: Đầu vào là 28 x 28 x 6, pooling 2 x 2, Dau ra 6 lớp đặc trưng được chuyền đổi kích thước 14 x 14. Số lượng tham số trao đổi: 6 * 2 = 12, số lượng kết nối: (14 x 14) x(2x2+ 1) x 6 = 5880 Tang 3 — Convolution: Đầu vào là 14 x 14 x 6,nhan chap 5 x5 x 16. Lần lượt lay từng nhân chập trượt trên 3 lớp đặc trưng theo hình bên dưới.
2 3 1 5 Hình 2-3 Minh hoa cách tạo đặc trưng tạo tang 3 Convolution [34]. Tang 4: Subsampling: Đầu vào 10 x 10 x 16, pooling 2 x 2. Số lượng tham số: 16 x 2 = 32, số lượng kết nối: (5 x 5) x (2 x 2 + 1) x 16 = 2000 Tang 5: Convolution: Đầu vào 5 x 5 x 16, nhân chập kích thước 1 x 1 x 120. Số lượng tham số: 120 x (16 x 5 x 5 + 1) = 48120 Tang 6: Fullconnet: Đầu vào 1 x 1 x 120.
Với đặc trưng kích thước 1 x 1 x 84. Số lượng kết nối từ 84 x (120 + 1) = 10164, tầng xuất ra: 10RBEF (Radial basis function) với điểm 7 x 12 = 84. Cập nhật trọng số bằng thuật lan truyền ngược 2. Giới thiệu Mang AlexNet được phát triển bởi Alex Krizhevsky, Ilya Sutskever và Geoff Hinton — giành chiến thăng cuộc thi “ImageNet ILSVRC Challenge” năm 2012.
Mạng lưới mà họ thiết kế đã được sử dụng dé phân loại với 1000 loại với kiến trúc tương tự như LeNet, nhưng sâu hơn, lớn hơn, và có các lớp nhân chập đặc trưng được xếp chồng lên nhau (trước chỉ có một lớp nhân chập duy nhất). 14 M6 hình mạng lớn hơn mạng LeCun, gồm7 lớp ân , 650 nghìn đơn vị kết nối và 60 triệu thông số. Thực hiện đơn vị xử lý số hoc GPU (tăng tốc việc xử lý hơn 50 lần so với CPU) Sử dụng 2 GPU dé huấn luyện trong một tuần. Kiến trúc mạng: Tầng 0: ảnh đầu vào 227 x 227 x 3.
Tang 1-2: Convolution: nhân chập 11x1 1x96, bước nhảy = 4. Kích thước đầu ra: 55 x 55 x 96, trong đó 55 = (227 - 11)/4+1 là kích thước cạnh của kết qua, 96 độ sâu bởi vì 1 bộ biểu thị 1 bộ lọc và có 96 bộ lọc nhân chập. Max-Pooling: bộ lọc 3 x 3, bước nhảy = 2. Kích thước đầu ra: 27x27x96, trong đó 27 = (55 - 3)/2 + 1 là kích thước cạnh của kết quả 15 55 227.
convolution 96 filters max pooling 1 1x1 1 3x3 sức % padding strie 2 q6 27 sz f | 5x5 s tride 1 256 filters padding 2 convolution 13 384 filters ens 13. eMax C x3 e — 3x3 cm stride 1 25 strie 2 padding 1 6 lễdding 1 se | 384 filters stride 1 convolution 256 filters Inaxpooling | max ` 3x3 Gx3a alneeurons stride 1 strie 2 padding 1 fully fully fully mm. connected “——NG TC 4———— 4096 neurons neurons 4096 1000 Hình 2-5 Biến đổi anh đầu vào qua các lớp của mang AlexNet [36]. Tang 3 — 4: Convolution: 5x5x255, bước nhảy =1,bước đệm 2.
Kích thước: 27 x 27 x 256, Bởi vi padding của (5-1) / 2 = 2, kích thước ban đầu được khôi phục. Max-Pooling Với bộ lọc 3 x 3, bước nhảy =2. Kích thước đầu ra: 13 x 13 x 256, với 13=(27 - 3)/2 + 1 = 13 là kích thước cạnh của kết quả, độ sâu giống như trước là 256 Tang 5- 6: Convolution:3 x 3 x 384, bước nhảy =1, bước đệm 1. Kích thước: 13 x 13 x 384, độ sâu 384.
Bởi vì padding của (3-1) / 2 = 1, kích thước ban đầu được khôi phục. Convolution tiếp theo 3x 3 x 384, bước nhảy =1, đệm 1. Kích thước đầu ra: 13 x 13 x 384, padding của (3-1) / 2 = 1, kích thước ban đầu được khôi phục Tang 7 — 8: Convolution:kich thước 3 x 3 x 256, bước nhảy =1, đệm 1. Kích thước đầu ra: 13 x 13 x 256, padding của (3-1) / 2 = 1, kích thước ban đầu được khôi 16 phục.
Max-Pooling bộ lọc 3 x 3, bước nhảy = 2.