Chương 1: Giới thiệu chung về khóa luận, động lực thực hiện bài toán, phát biểu bài toán, thách thức của bài toán, mục tiêu và phạm vi nghiên cứu, những đóng góp chính của khóa luận. Chương 2: Trình bày các cơ sở lý thuyết thực hiện bài toán phân loại, các phương pháp phân loại và các đặc trưng được sử dụng. Chương 3: Mô tả cách thức thu thập, phân tích cũng như thông tin chỉ tiết về bộ dữ liệu. Chương 4: Trình bày độ đo đánh giá, bộ dữ liệu thực nghiệm, kiến trúc hệ thông phân loại và thảo luận về kết quả thực nghiệm của bài toán.
Chương 5: Dua ra kết luận và hướng phát triển của bài toán. CAC NGHIÊN CỨU LIEN QUAN VÀ HƯỚNG TIẾP CAN Nội dung chương 2 chủ yếu mô tả tổng quan về các nghiên cứu liên quan và hướng tiếp cận của bài toán, trình bày sơ nét về bài toán phân loại — các phương pháp phân loại được sử dụng trong dé tài, các khái niệm về đặc trưng và rút trích đặc trưng, đồng thời giới thiệu các phương pháp biểu diễn đặc trưng được sử dụng trong khóa luận. Bài toán phân loại Bài toán phân loại thuộc loại học giám sát (supervised learning) [9], dữ liệu đầu vào của bài toán đã được gán nhãn tương ứng trước đó. Phân loại chính là một kĩ thuật khai thác dữ liệu, các mô hình được sử dụng để phân loại dữ liệu thành các nhãn.
Phân loại là một quá trình gồm 2 bước: e Đảo tạo mô hình e Dùng mô hình dé phân loại dữ liệu [5] Ở bài toán này ta thực hiện phân loại một tập dữ liệu thành một hoặc nhiều lớp nhờ vào mô hình phân loại, như đã nói mô hình được đảo tạo trên một tập dữ liệu đã có nhãn (còn gọi là tập huấn luyện). Đối với bài toán phân loại có thê chia thành các dạng: e Phân loại nhị phân e Phân loại nhiều lớp e Phân loại nhiều nhãn e Phân loại không cân bằng Phân loại nhị phân: Phân loại nhị phân (minh họa ở Hình 2-1) thường đề cập đến nhiều nhiệm vụ phân loại chỉ có 2 nhãn lớp, thường bao gồm phân loại 2 trạng thái Bình thường và Bat thường. Trong đó, lớp cho trạng thái bình thường được gan nhãn lớp 0 và lớp có trạng thái bất thường được gán nhãn lớp là 1. Các thuật toán phổ biến được sử dụng cho phân loại nhị phân bao gồm: — Hồi quy Logistic — k—NN — Cây quyết định — Máy vector hỗ trợ — Naive Bayes Một số bài toán sử dụng phân loại nhị phân: — Kiểm tra y khoa xem một bệnh nhân: Có bệnh hoặc Không bệnh — Quản lí chất lượng sản phẩm: Đạt hoặc Không đạt — Dự đoán quyết định: Mua hàng hoặc Không mua Phân loại đa lớp: Hình 2-2.
Minh họa phân loại đa nhãn [45] Bài toán phân loại đa lớp được minh họa ở hình 2-2 là quá trình phân loại dữ liệu với số lớp lớn hơn 2. Với từng dit liệu, chúng ta can xem xét và phân loại chúng vào các lớp khác nhau. Trong đó, các đối tượng được được phân loại vào một trong các lớp đã biết trước, số lượng các nhãn lớp có thể rất lớn. Thực chất, bài toán phân loại nhị phân là một bài toán đặc biệt của phân loại đa lớp và nhiều thuật toán phân loại nhị phân có thê sử dụng cho bài toán phân loại đa lớp.
Các thuật toán thường được sử dụng đề phân loại nhiều lớp: — k—NN — Cây quyết định — Rừng ngẫu nhiên — Tăng cường Gradient Một số bài toán sử dụng phân loại đa lớp: — Phân loại hoa. — Phân loại các loài động vật. — Nhận dạng chữ số viết tay. Phân loại đa nhãn: Classification Object Detection Hình 2-3.
Minh họa phân loại đa nhãn [46]. Khác với phân loại nhị phân và phân loại nhiều nhãn, phân loại nhiều nhãn được minh họa ở Hình 2-3 là sự khái quát của phân loại đa lớp, không ràng buộc về 10 số lớp có thể gán cho đối tượng. Phân loại đa nhãn là phân loại có hai hoặc nhiều nhãn lớp, trong đó một hoặc nhiều nhãn lớp có thê được dự đoán cho mỗi ví dụ. Các thuật toán được sử dụng đề phân loại nhị phân và đa lớp không thể được sử dụng trực tiếp để phân loại đa nhãn.
Các phiên bản chuyên biệt của thuật toán phân loại tiêu chuẩn có thé được sử dụng hoặc sử dụng một thuật toán phân loại riêng biệt dé dự đoán nhãn cho mỗi lớp, phiên bản chuyên biệt này được gọi là phiên bản nhiều nhãn của thuật toán, bao gôm: — Cây quyết định nhiều nhãn — Rừng ngẫu nhiên nhiều nhãn — Tăng cường Gradient nhiều nhãn Một số bài toán sử dụng phân loại đa nhãn: — Phân loại thể loại âm nhạc — Phân loại thê loại phim Phân loại không cân bằng: Hình 2-4. Minh họa phân loại không cân băng [45]. Phân loại không cân bằng được minh hoa ở Hình 2-4 là phương pháp phân loại trong đó số lượng ví dụ trong mỗi lớp phân phối không đều nhau. Phân loại nhị phân 11 thường là nhiệm vụ phân loại không cân bằng khi phần lớn các ví dụ nằm trong lớp bình thường và một số ít ví du nằm trong lớp bat thường.
Trường hợp dit liệu có thé được giải quyết bằng các kĩ thuật chuyên biệt dé thay đổi thành phần của các mẫu trong tập huấn luyện, ví dụ: — Lấy mẫu dưới ngẫu nhiên — Lấy mẫu quá mức SMOTE Một số bài toán sử dụng phân loại không cân bằng: — Phát hiện gian lận — Phát hiện ngoại vi — Các xét nghiệm chan đoán y tế 2. Đặc trưng Đặc trưng là một phần thông tin về nội dung của hình ảnh [8]; là thuộc tính riêng lẻ mà ta có thê xác định và đo đạc khi quan sát một hiện tượng nào đó. Việc lựa chon đặc trưng là yếu tổ quyết định quan trọng cho bài toán phân loại, nếu lựa chọn quá nhiều đặc trưng dẫn đến quá trình huấn luyện và phân loại mắt nhiều thời gian. Vi vậy, lựa chọn số lượng đặc trưng cũng là yêu tố mang tầm quan trọng quyết định.
Đặc trưng có thể được chia làm 2 loại: đặc trưng thô và đặc trưng phát sinh. e Đặc trưng thô: Là đặc trưng vốn có được lay trực tiếp từ tập dữ liệu mà không cần sử dụng thêm thao tác kĩ thuật. e_ Đặc trưng phát sinh: Là đặc trưng thu được từ quá trình trích xuất và xử lí các đặc trưng có sẵn. Rut trích đặc trưng Trích chọn đặc trưng trong học máy và thong ké (hay con goi 1a trich chon dac tính, lựa chon đặc trưng, lựa chon thuộc tinh, chon lọc đặc trưng), là quá trình chon lọc một tập con chứa các thuộc tính liên quan dé sử dụng trong quá trình xây dựng mô hình.
12 Trích xuất đặc trưng đóng góp rất lớn đối với tập dữ liệu lớn cần giảm số lượng tài nguyên mà không mat đi thông tin quan trọng, đồng thời trích xuất đặc trưng giúp giảm sự nỗ lực của việc xây dựng mô hình, làm tăng tốc độ học học và quá trình tong quát hóa trong quá trình máy hoc. Kiến trúc mạng học sâu Input Convolution + Max Convolution + Max image RELU pooling RELU pooling Sa m1 MeN AN RES \Ệ ET | Fully Connected Layer Feature CY Learning Classification Hình 2-5. Kiến trúc của một Convolution Neural Network [6] Convolution Neural Network (CNN) (được minh họa bởi Hình 2-5) là mạng nơ ron tích chập, được đánh giá là một trong những mạng học sâu phổ biến và tiên tiến nhất với tốc độ xử lí nhanh và độ chính xác cao nhất hiện nay. Convolution Neural Network bao gồm nhiều khối xây dựng, chăng hạn như: e Lớp tích chập (Convolution Layer - Conv), e Lớp gộp (Pooling Layer - Pool) © Lớp kết nói đầy đủ (Fully Connected Layer - FC) Và được thiết kế dé học tự động và thích ứng các cấu trúc phân cấp không gian của các đối tượng thông qua thuật toán lan truyền ngược[7].
Giá tri đầu vào đi qua hàng loạt các lớp Conv va Pool, cuối cùng là lớp FC [6]. Convolution layer: Convolution minh họa ở Hình 2-6 được xem là lớp cốt lõi trong mạng tích chập, ban chat của các lớp convolution là các bộ loc (filters) dùng dé trích xuất các thông tin có giá trị làm giảm chi phí và tăng tốc độ tính toán. Nhiệm vụ của lớp Conv 13 là tạo ra các bản đồ đặc trưng (Feature map) thu được từ quá trình thực hiện tích chập trên ảnh và bộ lọc tích chập (còn gọi là Kernel hay Convolution filter). Convolution Layer in Keras Output Hinh 2-6.
Minh hoa Convolution Layer[47]. Bộ lọc tích chap là một tenser 3 chiều kích thước F*F, bộ lọc có kích thước nhỏ và thường là số lẻ, số chiều bằng với số chiều của ảnh, bộ lọc trượt qua từng vị trí trên ảnh đề tính tích chập giữa kernel và phần tương ứng trên ảnh (còn gọi là trường tiếp nhận cục bộ — Local receptive field), bước trượt của kernel trên trường tiếp nhận cục bộ được gọi là Stride — S có tác dụng là giảm kích thước ma trận đầu ra, P — Padding bé sung thêm pixel với giá trị cô định thường là 0 giúp cân bằng kích thước ảnh đồng thời cân bằng số bước dịch chuyền của bộ lọc. Đầu ra của lớp Conv đi qua hàm kích hoạt (Activation function) trước khi trở thành đầu vào của Conv kế tiếp. Cùng một ảnh đầu vào, nếu sử dụng filter khác nhau sẽ cho ra bản đồ đặc trưng khác nhau.
Khi sử dụng nhiều filter sẽ rút trích được nhiều đặc trưng của ảnh. Giả sử ảnh đầu vào của lớp Conv là tenser kích thước W x H x D với W là chiều rộng, H là chiều cao và D là chiều sâu thé hiện số chiều của ảnh, filter có kích thước F*F. Khi đó lớp Conv áp dụng K filter là tenser 3 chiều sẽ có kích thước là: W-F+2P HN-F+2P (=???ì) «(P9 yc 14 Pooling layer: Pooling Layer in Keras Max Pool ee Filter - (2x2) Stride - (2,2) Hình 2-7. Minh họa Max Pooling Layer[47].
Lớp pooling thường giữa các lớp Conv, lớp pooling không học tham số va là thành phan tính toán chính trong CNN, được dùng dé giảm không gian của ma trận tích chập với mục đích làm giảm số lượng tham số của mô hình từ đó giúp giảm tính toán và thời gian huấn luyện nhưng vẫn giữ được các đặc trưng quan trọng. Có nhiều loại pooling như: Sum pooling, L2 pooling, Max pooing va Average pooling. Trong đó, Max pooling va Average pooling được sử dung phô biến. Hình 2-7 minh hoa cách Max Pooling Layer hoạt động.
Fully Connected layer: Dense Layer in Keras Convolution Tt Pooling t& Flattening L_—_ _—— Hình 2-8. Minh họa hoạt động ở Fully Connected Layer[47].