Tải bản đầy đủ (.pdf) (112 trang)

Luận Văn Thạc Sĩ Khoa Học Dữ Liệu Xây Dựng Mô Hình Trí Tuệ Nhân Tạo Hỗ Trợ Dji Tello Drone Nhận Diện Các Vật Thể Có Dạng Hình Học Cơ Bản

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (12.23 MB, 112 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>ĐẠI HỌC HUẾ </b>

<b>KHOA KỸ THUẬT VÀ CƠNG NGHỆ </b>

<b>NGUYỄN QUANG PHÚ </b>

<b>XÂY DỰNG MƠ HÌNH TRÍ TUỆ NHÂN TẠO HỖ TRỢ DJI TELLO DRONE NHẬN DIỆN CÁC VẬT THỂ CĨ DẠNG </b>

<b>HÌNH HỌC CƠ BẢN</b>

<b>LUẬN VĂN THẠC SĨ ỨNG DỤNG KHOA HỌC DỮ LIỆU </b>

<b>Huế, 2023</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>ĐẠI HỌC HUẾ </b>

<b>KHOA KỸ THUẬT VÀ CÔNG NGHỆ </b>

<b>NGUYỄN QUANG PHÚ </b>

<b>XÂY DỰNG MƠ HÌNH TRÍ TUỆ NHÂN TẠO HỖ TRỢ </b>

<b>DJI TELLO DRONE NHẬN DIỆN CÁC VẬT THỂ CĨ DẠNG HÌNH </b>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

i

<b>LỜI CAM ĐOAN </b>

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm nghiên cứu, tìm

<b>hiểu của riêng cá nhân tôi và được sự hướng dẫn khoa học của TS. Hồ Quốc Dũng. </b>

Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa công bố dưới bất kỳ hình thức nào trước đây.

Trong toàn bộ nội dung của luận văn, những điều được trình bày hoặc là của cá nhân tơi hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp.

Tơi xin hồn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình.

<b> TS. Hồ Quốc Dũng Nguyễn Quang Phú </b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

ii

<b>LỜI CÁM ƠN </b>

Trước hết, tác giả xin bày tỏ lòng biết ơn chân thành và sâu sắc nhất tới giảng viên hướng dẫn TS. Hồ Quốc Dũng về những ý kiến đóng góp về chun mơn và sự động viên khích lệ của thầy trong suốt q trình làm nghiên cứu của tôi.

Tôi xin gửi lời cảm ơn chân thành tới giảng viên của Khoa Kĩ thuật và Công nghệ - Đại học Huế đã tận tình dạy dỗ và hướng dẫn cho tơi trong suốt q trình học tập thạc sĩ tại khoa.

Và tôi cũng xin gửi lời cảm ơn tới gia đình tơi về sự hỗ trợ không thể thiếu của họ. Sự khích lệ, động viên, sự quan tâm, chăm sóc của họ đã giúp tơi vượt qua tất cả khó khăn để theo học chương trình và hồn thiện bản luận văn cuối khoá này. Mặc dù đã hết sức cố gắng hoàn thành luận văn nhưng chắc chắn sẽ không tránh khỏi những sai sót. Kính mong nhận được sự cảm thơng, chỉ bảo tận tình của các q thầy cô và các bạn.

Tôi xin chân thành cảm ơn!

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

iii

<b>TÓM LƯỢC LUẬN VĂN </b>

Nghiên cứu tập trung vào việc phát triển mơ hình trí tuệ nhân tạo nhằm tăng cường khả năng nhận diện vật thể có hình học cơ bản cho máy bay không người lái DJI Tello. Trong bối cảnh của cuộc cách mạng công nghệ, cả trí tuệ nhân tạo và máy bay khơng người lái đã phát triển mạnh mẽ, việc kết hợp chúng mang lại triển vọng lớn cho việc nâng cao hiệu suất và tích hợp của máy bay khơng người lái trong các ứng dụng thực tế.

Mục tiêu chính của nghiên cứu là xây dựng một mơ hình trí tuệ nhân tạo dựa trên mạng thần kinh tích chập (CNN) để hỗ trợ DJI Tello drone trong việc nhận diện và phân loại các vật thể hình học cơ bản, bao gồm hình trịn, tam giác, hình chữ nhật và ngũ giác đều. Lựa chọn của CNN dựa trên khả năng của nó trong việc trích xuất đặc trưng từ dữ liệu hình ảnh và khả năng xử lý ảnh, đặc biệt trong các tác vụ như phân loại và nhận diện.

Quá trình nghiên cứu đề ra mục tiêu đạt được sẽ tập trung vào xây dựng một bộ dữ liệu ảnh đa dạng để huấn luyện mơ hình. Bộ dữ liệu này sẽ bao gồm các hình ảnh về các vật thể hình học cơ bản với đa dạng màu sắc cơ bản của không gian màu RGB. Sử dụng kiến thức về học máy và cấu trúc của mạng thần kinh tích chập, nghiên cứu sẽ xây dựng một mơ hình có khả năng nhận diện và phân loại các vật thể một cách chính xác.

Nghiên cứu tập trung vào phát triển mơ hình trí tuệ nhân tạo hỗ trợ máy bay khơng người lái DJI Tello nhận diện các hình dạng cơ bản như hình trịn, tam giác, chữ nhật và ngũ giác. Kết quả cho thấy mơ hình đạt hiệu suất tốt với độ chính xác trên 99 % trên cả tập huấn luyện và tập kiểm tra. Các chỉ số precision, recall và F1-score cũng đều đạt giá trị tối đa 1,00 cho mỗi loại hình dạng, chứng tỏ khả năng phân loại chính xác và nhận diện hiệu quả của mơ hình.

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

iv

<b>DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU </b>

1 AI Artificial Intelligence - Trí tuệ nhân tạo

2 BRNN <sup>Bidirectional Recurrent Neural Network – Mạng nơ ron hai </sup> chiều hồi quy

3 CNN <sup>Convolutional Neural Network - Mạng thần kinh tích chập </sup> (Mạng nơ ron tích chập)

4 Drone Máy bay không người lái

5 GPU Graphic Processing Unit – Bộ xử lý đồ họa 6 RGB Red, Green, Blue - Đỏ, Lục, Lam

7 RNN Recurrent Neural Network - Mạng nơ ron hồi quy

8 UAV Unmanned Aerial Vehicle - Thiết bị bay không người lái

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

v

<b>MỤC LỤC </b>

LỜI CAM ĐOAN ...i

LỜI CÁM ƠN ... ii

TÓM LƯỢC LUẬN VĂN ... iii

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU ...iv

MỤC LỤC ... v

DANH MỤC BẢNG BIỂU ... viii

DANH MỤC HÌNH VẼ, SƠ ĐỒ, ĐỒ THỊ ...ix

DANH MỤC THUẬT TOÁN ...xi

3. Đối tượng và phạm vi nghiên cứu ... 3

<i>3.1. Đối tượng nghiên cứu ... 3 </i>

<i>3.2. Phạm vi nghiên cứu ... 4 </i>

4. Phương pháp nghiên cứu ... 5

5. Cấu trúc của luận văn ... 6

PHẦN II NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU ... 7

CHƯƠNG I: CƠ SỞ LÝ THUYẾT ... 7

1.1 Tổng quan về drone ... 7

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<i>1.2.1 Giới thiệu về học máy ... 10 </i>

<i>1.2.2 Phân loại các phương pháp học máy ... 10 </i>

<i>1.3.1 Giới thiệu về học sâu ... 21 </i>

<i>1.3.2 Cách thức hoạt động của học sâu ... 23 </i>

<i>1.3.3 Ứng dụng của học sâu ... 24 </i>

1.4 Tổng quan mạng thần kinh tích chập ... 27

<i>1.4.1 Giới thiệu về mạng thần kinh tích chập ... 27 </i>

<i>1.4.2 Kiến trúc mạng thần kinh tích chập ... 29 </i>

<i>1.4.3 Ứng dụng của mạng thần kinh tích chập trong nhận diện vật thể ... 35 </i>

1.5 Ngơn ngữ lập trình Python cho học máy ... 38

<i>1.5.1 Giới thiệu chung ... 38 </i>

<i>1.5.2 Các thư viện Python phổ biến hỗ trợ học máy ... 39 </i>

<i>1.5.3 DjiTelloPy – Bộ thư viện hỗ trợ điều khiển DJI Tello Drone ... 40 </i>

<i>1.5.4 Nền tảng trực tuyến Google Colab ... 41 </i>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

vii

1.6 Các cơng trình nghiên cứu liên quan ... 45

CHƯƠNG II: HUẤN LUYỆN THIẾT BỊ BAY KHƠNG NGƯỜI LÁI NHẬN DẠNG VẬT THỂ CĨ DẠNG HÌNH HỌC CƠ BẢN... 49

2.1. Tổng quan phương pháp ... 49

<i>2.1.1. Sơ đồ tổng thể phương pháp ... 49 </i>

<i>2.1.2. Giải thích các bước trong sơ đồ tổng thể phương pháp ... 49 </i>

2.2. Mơ tả và xây dựng bộ dữ liệu hình ảnh vật thể ... 52

<i>2.2.1. Giới thiệu tổng quan về bộ dữ liệu hình ảnh vật thể ... 52 </i>

<i>2.2.2. Xây dựng thuật toán hỗ trợ việc xây dựng bộ dữ liệu hình ảnh ... 54 </i>

2.3. Ứng dụng thuật tốn mạng thần kinh tích chập trong việc giải quyết bài toán nhận diện vật thể có dạng hình học cơ bản... 59

2.4. Nhận diện vật thể có dạng hình học cơ bản thơng qua camera ... 61

CHƯƠNG III: KẾT QUẢ THỰC NGHIỆM VÀ BÀN LUẬN ... 63

3. Hướng phát triển của bài toán ... 73

TÀI LIỆU THAM KHẢO ... 74

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Bảng 3.1 Kết quả huấn luyện ... 64

Bảng 3.2. Kết quả mơ hình phân loại ... 65

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

ix

<b>DANH MỤC HÌNH VẼ, SƠ ĐỒ, ĐỒ THỊ </b>

Hình 1. Các vật thể có dạng hình học cơ bản với màu sắc đỏ, lục, lam ... 5

Hình 1.1 Các phân loại drone khác nhau ... 8

Hình 1.2. Hình ảnh về một số loại drone cánh quạt và cánh cứng ... 8

Hình 1.3. Các thuật tốn trong học máy ... 14

Hình 1.8. Kiến trúc cơ bản của một mạng nơ ron tích chập ... 29

Hình 1.9. Mạng nơ ron với nhiều lớp chập ... 29

Hình 1.16. Phương thức Average pooling và Max pooling ... 34

Hình 1.17. Sau khi gộp lớp và làm phẳng thành lớp kết nối đầy đủ ... 35

Hình 1.18. Kiến trúc mạng nơ ron tích chập hồn chỉnh ... 35

Hình 1.19. Cửa sổ làm việc trên trình duyệt của Google Colab ... 42

Hình 1.20. Cấu hình CPU bản Google Colab Free cung cấp ... 43

Hình 1.21. Cấu hình GPU Nvidia A100, GPU Nvidia T4, GPU Nvidia V100 ... 44

Hình 2.1. Minh họa về bộ dữ liệu hình trịn (circle) ... 53

Hình 2.2. Minh họa về bộ dữ liệu hình tam giác (triangle) ... 53

Hình 2.3. Minh họa về bộ dữ liệu hình chữ nhật (rectangle) ... 54

Hình 2.4. Minh họa về bộ dữ liệu hình ngũ giác đều (pentagon) ... 54

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

Hình 3.5. Kết quả nhận diện vật thể hình ngũ giác đều ... 71

Sơ đồ 2.1. Sơ đồ tổng thể phương pháp ... 49

Đồ thị 3.1. Đồ thị biểu diễn kết quả độ chính xác của mơ hình CNN ... 64

Biểu đồ 3.1. Ma trận nhầm lẫn khơng chuẩn hóa (Unnormalized Confusion Matrix) và ma trận nhầm lẫn chuẩn hóa (Normalized Confusion Matrix) ... 67

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

xi

<b>DANH MỤC THUẬT TOÁN </b>

Thuật tốn 2.1. Mã code mơ tả thuật tốn di chuyển hình ảnh vật thể sang phải ... 56 Thuật tốn 2.2. Mã code mơ tả thuật tốn di chuyển hình ảnh vật thể xuống phía dưới ... 57 Thuật tốn 2.3. Mã code mơ tả thuật tốn di chuyển hình ảnh vật thể vừa sang phải và vừa xuống phía dưới ... 59

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

1

<b>PHẦN I MỞ ĐẦU 1. Lý do chọn đề tài </b>

Tự động hóa và trí tuệ nhân tạo (Artificial Intelligence - AI) đã trở thành hai lĩnh vực nổi bật trong thời đại công nghệ hiện đại. Sự phát triển nhanh chóng của cơng nghệ này đã tạo ra nhiều ứng dụng đa dạng, từ tự lái ô tô đến hệ thống nhận diện giọng nói. Các mơ hình trí tuệ nhân tạo như học sâu, mạng nơ ron hay học tăng cường đang được sử dụng để xây dựng các hệ thống thiết bị bay không người lái (Unmanned Aerial Vehicle - UAV, hay cịn gọi là drone) thơng minh. Trong thời đại cách mạng công nghệ 4.0, drone đang phát triển và trở thành một phần không thể thiếu trong cuộc sống hàng ngày. Các tập đoàn lớn và chính phủ đều chạy đua để phát triển ứng dụng của công nghệ này.

Cùng với sự phát triển của AI, drone đã trở thành một công cụ không thể thiếu trong nhiều lĩnh vực, bao gồm tìm kiếm cứu hộ, giám sát, chữa cháy, giám sát thời tiết, khảo sát [1], quy hoạch, quản lý đô thị [2], giám sát sinh thái môi trường [3] cả giám sát, khảo sát địa hình, quay phim và chụp ảnh từ không gian cao [1]. Tuy nhiên, để tăng tính tự động hóa và khả năng thực hiện nhiều nhiệm vụ khác nhau, việc tích hợp trí tuệ nhân tạo vào drone là cần thiết và ngày càng phổ biến [4].

Trong các bài toán AI, việc nhận diện các vật thể có dạng hình học cơ bản là một vấn đề quan trọng trong hình hình thành khả năng bay qua các vật cản như cửa ra vào, cửa sổ hoặc các vật thể có hình trịn, hình tam giác, hình chữ nhật, hình ngũ giác đều. Ví dụ, việc nhận diện vật thể có dạng hình học cơ bản có thể có ứng dụng trong việc phân loại và định vị vật thể, tạo ra độ tin cậy cao hơn trong việc điều khiển drone, giảm rủi ro va chạm trong quá trình bay của drone, giúp kiểm sốt đường bay chính xác. Bằng cách xây dựng mơ hình trí tuệ nhân tạo hỗ trợ DJI Tello drone nhận diện các vật thể có dạng hình học cơ bản đa dạng góp phần nâng cao khả năng phát hiện và phản ứng tự động của drone, đảm bảo an toàn và hiệu quả cho quá trình bay. Thuật tốn mạng thần kinh tích chập (Convolutional Neural Network – CNN) được lựa chọn để xây dựng mơ hình trí tuệ nhân tạo thực hiện nhiệm vụ nhận diện

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

2

vật thể có dạng hình học cơ bản như hình trịn, hình tam giác, hình chữ nhật và hình ngũ giác đều. Mạng thần kinh tích chập là một trong những phương pháp tiên tiến và mạnh mẽ trong lĩnh vực thị giác máy tính, đặc biệt trong việc phân loại và nhận diện hình ảnh. Với cấu trúc và cách hoạt động của phương pháp này, mạng thần kinh tích chập có khả năng tự động học và trích xuất các đặc trưng quan trọng từ dữ liệu hình ảnh, từ đó giúp tối ưu hóa q trình nhận diện và phân loại.

Bên cạnh đó, DJI Tello drone là máy bay khơng người lái được thiết kế nhỏ gọn, dễ sử dụng, giá thành hợp lý và có tính năng cơ bản như bay tự động, giữ độ cao và chụp ảnh hoặc video. Điều này làm cho Tello drone trở thành một lựa chọn phổ biến cho các nhà phát triển drone và các nhà nghiên cứu trí tuệ nhân tạo. Việc xây dựng mơ hình trí tuệ nhân tạo hỗ trợ DJI Tello drone nhận diện các vật thể có dạng hình học cơ bản sẽ giúp drone có thể tự động phân biệt, theo dõi các đối tượng trong quá trình thực hiện nhiệm vụ, nâng cao tính an tồn, tối ưu hóa tối ưu hiệu suất hoạt động của máy bay không người lái và mở ra nhiều ứng dụng mới.

Bằng việc tích hợp thuật tốn mạng thần kinh tích chập (CNN) vào drone, mơ hình trí tuệ nhân tạo này đã giúp đỡ, hỗ trợ drone phát hiện và phân loại các vật thể có dạng hình học cơ bản như hình trịn, hình tam giác, hình chữ nhật và hình ngũ giác đều. Từ đó, giúp drone nâng cao khả năng tự động hóa, giúp drone mở ra các khả năng bay qua các vật cản và thực hiện nhiều nhiệm vụ an toàn và hiệu quả hơn.

<b>2. Mục tiêu nghiên cứu </b>

<i><b>2.1. Mục tiêu tổng qt </b></i>

Xây dựng mơ hình trí tuệ nhân tạo huấn luyện DJI Tello drone nhận diện, phân loại các vật thể có dạng hình học cơ bản như hình trịn, hình tam giác, hình chữ nhật, hình ngũ giác đều.

<i><b>2.2. Mục tiêu cụ thể </b></i>

Xây dựng các vật thể có dạng hình trịn, hình tam giác, hình chữ nhật, hình ngũ giác đều có các màu sắc cơ bản đỏ, lục, lam để kiểm tra nhận diện vật thể của máy bay không người lái.

Xây dựng bộ dữ liệu ảnh phù hợp hỗ trợ cho việc huấn luyện cho máy bay không

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

3

người lái. Bộ ảnh phải có kích thước phù hợp với camera của drone DJI Tello. Tập dữ liệu ảnh đa dạng các hình ảnh và thơng tin vị trí khác nhau của các vật thể.

Tìm hiểu, vận dụng ngơn ngữ lập trình Python trong việc xây dựng và triển khai mô hình nhận diện vật thể trên DJI Tello Drone.

Nghiên cứu, tìm hiểu và áp dụng kiến thức, một số ứng dụng về học máy (Machine learning), đặc biệt trong linh vực nhận diện đối tượng, tìm hiểu các thuật tốn và phương pháp học máy để xây dựng mơ hình nhận diện vật thể.

Nâng cao hiểu biết về cơ sở lý thuyết và vận dụng được mơ hình học sâu (Deep Learning), đặc biệt mơ hình mạng thần kinh tích chập (Convolutional Neural Network) thường được sử dụng trong nhận diện vật thể.

Ứng dụng mơ hình mạng thần kinh tích chập phù hợp để drone có khả năng nhận diện các vật thể có dạng hình trịn, hình chữ nhật, hình tam giác, hinh ngũ giác đều với các màu sắc cơ bản đỏ, lục, lam.

Xây dựng thuật toán để huấn luyện máy bay khơng người lái nhận diện vật thể có dạng hình học cơ bản khác nhau như hình trịn, hình tam giác, hình chữ nhật, hình ngũ giác đều với ngơn ngữ lập trình Python.

Tìm hiểu và vận dụng được kiến thức về thiết bị bay không người lái DJI Tello Drone, tìm hiểu về chức năng và cách điều khiển của drone để có thể tương tác và hỗ trợ thiết bị bay không người lái trong quá trình nhận diện vật thể.

Nghiên cứu cách giao tiếp và tích hợp mơ hình học máy đã xây dựng được ở trên vào hệ thống điều khiển của drone DJI Tello.

Kiểm tra, đánh giá độ chính xác và hiệu quả của mơ hình mạng thần kinh tích chập đã xây dựng thơng qua việc tiến hành các thực nghiệm cho drone nhận dạng các vật thể được đặt ở vị trí cố định.

<b>3. Đối tượng và phạm vi nghiên cứu </b>

<i><b>3.1. Đối tượng nghiên cứu </b></i>

Nghiên cứu các thư viện Python hỗ trợ cho quá trình xây dựng bộ dữ liệu và mơ hình mạng thần kinh tích chập như Matplotlib, OpenCV.

Nghiên cứu lý thuyết về mơ hình mạng thần kinh tích chập (Convolutional

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

4

Neural Network – CNN) và ứng dụng mơ hình mạng thần kinh tích chập CNN trong phát hiện, phân loại và nhận diện vật thể.

Nghiên cứu các phương pháp nhận diện phù hợp cho drone, đặc biệt là drone DJI Tello.

Nghiên cứu các giải thuật sử dụng ngơn ngữ lập trình Python để huấn luyện máy bay không người lái xử lý dữ liệu và nhận diện các vật thể có dạng hình trịn, tam giác, hình chữ nhật, hình ngũ giác đều với các màu sắc cơ bản trong hệ màu đỏ lục lam theo từng tình huống phù hợp.

Nghiên cứu bộ thư viện DJITelloPy, để lập trình các tác vụ cho drone, điều khiển bay, thực hiện các chuyển động chụp ảnh và quay video, nhận và hiển thị các dữ liệu từ cảm biến, từ đó tiếp cận tương tác và lập trình cho máy bay khơng người lái DJI Tello.

<i><b>3.2. Phạm vi nghiên cứu </b></i>

Giới hạn không gian thử nghiệm: Môi trường trong nhà có độ sáng ổn định. Khung nền ở phía trong không gian thực nghiệm không trùng với 3 màu đỏ, lục, lam

Thời gian thực hiện nghiên cứu: Từ tháng 2/2023 đến tháng 8/2023

Đề tài được nghiên cứu và thực nghiệm thơng qua các vật thể có dạng hình trịn, hình tam giác, hình chữ nhất, hinh ngũ giác đều có các màu cơ bản đỏ, lục, lam.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

5

Hình 1. Các vật thể có dạng hình học cơ bản với màu sắc đỏ, lục, lam

DJI Tello drone là máy bay không người lái được sử dụng chính trong việc nghiên cứu và thực nghiệm đề tài xây dựng mơ hình trí tuệ nhân tạo hỗ trợ drone nhận diện vật thể có dạng hình học cơ bản. Các thông số cơ bản và khả năng giới hạn của DJI Tello drone:

<small>- </small> Độ phân giải video 720p hoặc độ phân giải camera 5 MP (2592 × 1936).

<small>- </small> Thời gian bay tối đa 13 phút.

<small>- </small> Khoảng cách bay tối đa 100 m.

<small>- </small> Trọng lượng 80 g.

<small>- </small> Kích thước 98 × 92.5 × 41 mm, với 4 cánh quạt.

<small>- </small> Tốc độ bay tối đa 8 m/s, độ cao bay tối đa 30 m.

<small>- </small> Phạm vi quan sát của video (Field of View – FOV) 82.6.

<small>- </small> Các chức năng tích hợp khác như máy ảnh quan trắc (Range Finder), Khí áp kế (Barometer), đèn led, hệ thống tầm nhìn, wifi 2.4 Hz 802.11n.

<b>4. Phương pháp nghiên cứu </b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

6

<small>- </small>Phương pháp xây dựng vật thể: Dựa trên các dụng cụ, nguyên vật liệu thông dụng (giấy màu, giấy bìa cứng,), tiến hành chế tạo vật thể có dạng hình trịn, hình tam giác, hình chữ nhật, hình ngũ giác đều; màu sắc vật thể là đỏ, lục, lam (ba màu cơ bản) để phục vụ cho việc kiểm thử nhận diện vật thể của máy bay không người lái.

<small>- </small>Phương pháp xây dựng bộ dữ liệu ảnh phù hợp hỗ trợ việc huấn luyện cho máy bay không người lái: Bộ dữ liệu ảnh này dưới được xây dựng với hệ màu trắng đen. Máy bay không người lái nhận diện vật thể dưới dạng màu trắng, tất cả các vật thể còn lại trong phạm vi nhận diện của máy bay không người lái sẽ chuyển đổi sang màu đen.

<small>- </small>Phương pháp nhận diện: Việc tích hợp ứng dụng mơ hình mạng thần kinh tích chập (Convolutional Neural Network – CNN) vào máy bay không người lái, giúp nhận diện và chuyển đổi các màu đỏ, lục, lam của vật thể sang hệ màu trắng đen. Ba màu đỏ, lục, lam của vật thể được máy bay không người lái nhận diện và chuyển đổi sang màu trắng và các vật thể cịn lại trong khơng gian xung quanh phạm vi nhận diện sẽ chuyển sang màu đen.

<small>- </small>Phương pháp thực nghiệm, theo dõi: Kiểm thử độ hiệu quả của mơ hình trí tuệ nhân tạo huấn luyện cho drone. Các vật thể với màu sắc khác nhau và có dạng hình trịn, hình chữ nhật, hình tam giác, hình ngũ giác đều sẽ được đặt ở một số vị trí để kiểm thử độ hiệu quả của các phương pháp trên.

<b>5. Cấu trúc của luận văn </b>

Nội dung đề tài luận văn gồm 3 phần: Phần I: Mở đầu

Phần II: Nội dung và kết quả nghiên cứu Chương I: Cơ sở lý thuyết

Chương II: Huấn luyện thiết bị bay khơng người lái nhận dạng vật thể có dạng hình học cơ bản

Chương III: Kết quả thực nghiệm và bàn luận Phần III: Kết luận

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

7

<b>PHẦN II NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU CHƯƠNG I: CƠ SỞ LÝ THUYẾT </b>

<b>1.1 Tổng quan về drone </b>

<i><b>1.1.1 Giới thiệu về drone </b></i>

Máy bay không người lái hay còn thường được gọi là drone hay UAVs (Unmanned aerial vehicles) hay phương tiện bay không người lái nhỏ gọn (Micro aerial vehicles – MAVs), được sử dụng cho nhiều ứng dụng và nhiệm vụ dân sự và qn sự [5]. Máy bay khơng người lái có khả năng hoạt động với nhiều mức độ tự động khác nhau, bao gồm: điều khiển từ xa bởi người điều khiển, tự động hoàn toàn hoặc theo một chế độ không liên tục, được điều khiển bởi một máy tính trên máy bay.

Các máy bay khơng người lái này có thể được trang bị với nhiều loại cảm biến khác nhau, tuỳ thuộc vào nhiệm vụ mà chúng được giao. Các cảm biến này bao gồm âm thanh, hình ảnh, hóa học, và sinh học để tăng cường hiệu suất và hiệu quả của drone. Các nhà nghiên cứu đã tập trung vào tối ưu hóa thiết kế để phát triển và sản xuất nhiều loại phương tiện bay đa dạng.

Máy bay khơng người lái có lịch sử sử dụng bắt đầu từ Chiến tranh Đầu tiên của Ý (1849). Đế quốc Áo phát triển hệ thống khinh khí cầu không người lái để thả bom xuống Venice. Sự phát triển này dẫn đến việc sử dụng khinh khí cầu và diều gắn thông tin trao đổi trong các cuộc chiến như Chiến tranh Nội binh Mỹ và Chiến tranh Mỹ-Tây Ban Nha. Kể từ đó, máy bay không người lái đã tiếp tục được phát triển cho mục đích quân sự. Trong thời kỳ Chiến tranh Lạnh, Mỹ bắt đầu một chương trình nghiên cứu về máy bay không người lái dưới tên mã "Red Wagon". Đồng thời, GPS (Global Positioning System) dựa trên hệ thống định vị toàn cầu đã được giới thiệu. Máy bay không người lái thương mại đầu tiên được tạo ra bởi DJI vào năm 2006 [6]. Các drone thường được phân loại theo đa dạng tùy thuộc vào nhiệm vụ mà chúng được giao và dựa trên cấu hình của chúng [7]. Drone có thể chia thành thành chín loại khác nhau, ví dụ như drone cánh cố định, drone cánh quạt quay, drone cánh đập, drone cánh quạt nghiêng, drone quạt có ống, trực thăng, chim cánh cụt và các loại drone không thông thường khác [7].

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

8

Hình 1.1 Các phân loại drone khác nhau

Hình 1.2. Hình ảnh về một số loại drone cánh quạt và cánh cứng

Theo báo cáo của Drone Industry Insights, khối lượng giao dịch thị trường drone vào năm 2018 lên đến 14,1 tỷ đô la với triển vọng tăng trưởng gấp ba lần vào năm 2024 [8]. Doanh số drone kỳ vọng sẽ tăng đều đặn hàng năm, điều này được thể hiện

[7]

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

9

qua việc triển khai thương mại của máy bay không người lái với tốc độ phát triển rất nhanh, với lý do việc ứng dụng của drone đa dạng, từ dịch vụ vận chuyển hàng hóa, taxi drone, đến việc áp dụng trong nông nghiệp, cứu trợ thiên tai, đánh giá rủi ro và giám sát các cơ sở hạ tầng quan trọng [8].

<i><b>1.1.2 Ứng dụng của drone </b></i>

Drone là một hệ thống mang lại nhiều ứng dụng khác nhau, bao gồm cả ứng dụng trong lĩnh vực quân sự và dân sự. Drone có thể thực hiện nhiều nhiệm vụ khác nhau cả trong mơi trường ngồi trời và những địa hình phức tạp. Việc trang bị các cảm biến và máy ảnh khác nhau trên drone giúp cho nó có thể thực hiện được các nhiệm vụ tình báo, giám sát và trinh sát. Các ứng dụng của drone có thể được phân loại theo nhiều tiêu chí khác nhau, bao gồm tính chất nhiệm vụ (quân sự/dân sự), vùng bay (ngồi trời/trong nhà) và mơi trường (dưới nước/trên mặt nước/trên mặt đất/trên khơng gian) [10]. Ví dụ, trong lĩnh vực dân sự, drone được sử dụng trong tìm kiếm cứu nạn, giám sát, chữa cháy, giám sát thời tiết và khảo sát [11], giám sát hạ tầng điện [12], quy hoạch, quản lý đô thị [13], giám sát môi trường xây dựng [11], giao thông đô thị [14], [15], giám sát sinh thái và mơi trường [16], mơ hình hóa phân bố các loài [17], sinh thái dân số [17], cũng như giám sát và bảo tồn sinh thái [18], nghiên cứu kiến trúc và di sản văn hóa [19]…

<i><b>1.1.3 Giới thiệu về DJI Tello Drone </b></i>

DJI Tello Drone là một sản phẩm máy bay không người lái của tập đồn sản xuất máy bay khơng người lái lớn nhất thế giới DJI. Sản phẩm lần đầu tiên ra mắt tại thị trường thế giới từ tháng 3 năm 2018 [20]. Là một chiếc drone nhỏ gọn và giá thành rẻ 150 $, DJI Tello drone được trang bị một camera nằm ở mũi máy có khả năng chụp ảnh 5 MP và truyền video HD 720p. Với ưu điểm dễ cài đặt, chỉ cần tải ứng dụng từ các cửa hàng ứng dụng Appstore hoặc Google Play là có thể dễ dàng sử dụng để bay. DJI Tello drone cịn có khả năng tự động cất cánh bay lên không trung và các cánh quạt được bảo vệ giúp việc điều hướng di chuyển máy bay được an toàn khi sử dụng để tránh va chạm vật thể trên đường bay gây nguy hiểm.

Với các ưu điểm trên, DJI Tello drone là một sản phẩm dễ tiếp cận, dễ sử dụng

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

10

và vẫn đảm bảo các tính năng đầy đủ phù hợp cho mục đích nghiên cứu, thử nghiệm nhiều đáp ứng phục vụ tìm hiểu sâu các vấn đề thực tiễn đang mắc phải trong đề tài nghiên cứu nhân diện hình dạng các vật thể bằng drone.

<b>1.2 Tổng quan về học máy </b>

<i><b>1.2.1 Giới thiệu về học máy </b></i>

<i>Học máy (Machine learning) là một phương pháp phân tích dữ liệu giúp tự động </i>

hóa q trình phân tích và tìm ra những đặc trưng quan trọng trong tập dữ liệu. Thay vì được lập trình cụ thể, học máy sử dụng các thuật toán trừu tượng để học từ dữ liệu, cho phép máy tính khám phá những thơng tin ẩn sâu trong dữ liệu mà không thể dễ dàng đạt được bằng cách thông thường. Khi được tiếp xúc với dữ liệu mới, học máy có khả năng thích ứng nhanh chóng và độc lập để tạo ra những dự đốn và phân loại chính xác.

Hơn nữa, học máy là một công nghệ được phát triển từ lĩnh vực Trí tuệ Nhân tạo tiên tiến nhất hiện nay. Để đảm bảo tính chính xác và tránh sự xuất hiện của dữ liệu giả, quá trình nghiên cứu và lựa chọn các kỹ thuật phân tích dữ liệu từ con người vẫn là cần thiết.

Học máy đã trở nên ngày càng phổ biến trên toàn cầu. Sự gia tăng đáng kể của dữ liệu lớn (Big Data) và các thuật toán Machine Learning đã cải thiện đáng kể độ chính xác của các mơ hình và khả năng dự đốn trong tương lai.

Trong mỗi bài tốn Học máy, có hai giai đoạn quan trọng, đó là giai đoạn huấn luyện (training phase) và giai đoạn kiểm thử (test phase). Giai đoạn huấn luyện sử dụng chỉ dữ liệu huấn luyện, trong khi giai đoạn kiểm thử sử dụng chỉ dữ liệu trong tập kiểm thử

<i><b>1.2.2 Phân loại các phương pháp học máy </b></i>

Dựa trên đặc điểm của tập dữ liệu, học có giám sát và học khơng giám sát là hai nhóm chính trong thuật tốn học máy [21]. Ngoài ra, học bán giám sát và học củng cố cũng là hai nhóm thuật tốn đang thu hút sự chú ý gần đây [21].

<i>1.2.2.1 Học có giám sát (Supervised Learning) </i>

Học có giám sát (Supervised Learning) là một nhóm thuật tốn trong machine

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

11

learning. Đặc trưng của học có giám sát là xây dựng mơ hình dự đốn mối quan hệ giữa đầu vào và đầu ra dựa trên các cặp dữ liệu đã biết trước đó trong quá trình huấn luyện. Cụ thể, học có giám sát sẽ dự đoán kết quả (outcome) của một dữ liệu mới (new input) dựa trên các cặp (input, outcome) đã được biết trước [22].

Các cặp dữ liệu này còn được gọi là (data, label) hay (dữ liệu, nhãn). Chính những cặp này sẽ giúp mơ hình học có giám sát hiểu và tìm ra mẫu, quy tắc để dự đốn đầu ra chính xác cho dữ liệu mới.

Học có giám sát đóng vai trị quan trọng trong việc xác định tín hiệu tốt nhất để dự báo xu hướng và lợi nhuận trong tương lai, đặc biệt trong lĩnh vực cổ phiếu và chứng khoán. Nhờ vào thuật toán supervised learning, chúng ta có thể phân loại dữ liệu vào các nhóm khác nhau (classification) hoặc dự đoán giá trị số liệu cụ thể (regression).

Phân loại (Classification): Thuật toán phân loại giúp chúng ta xác định và phân loại dữ liệu vào các nhóm, lớp khác nhau. Ví dụ, trong lĩnh vực cổ phiếu, chúng ta có thể sử dụng phân loại để xác định xem một cổ phiếu có tiềm năng tăng giá (nhóm A) hay giảm giá (nhóm B).

Hồi quy (Regression): Thuật toán hồi quy giúp chúng ta dự đốn và tìm ra mối quan hệ, xu hướng của dữ liệu. Với dữ liệu về giá cổ phiếu trong quá khứ, chúng ta có thể sử dụng thuật toán hồi quy để dự đoán giá trị cổ phiếu trong tương lai.

Học có giám sát là một nhóm thuật tốn phổ biến nhất trong học máy (machine learning) và được sử dụng rộng rãi trong các ứng dụng thực tế. Với khả năng phân loại và dự đốn chính xác, học có giám sát đã tạo nên những thành tựu đáng kể trong nhiều lĩnh vực, bao gồm dự báo thị trường tài chính, phân loại dữ liệu y tế, nhận dạng khuôn mặt và nhiều ứng dụng khác. Sự kết hợp giữa dữ liệu huấn luyện và mơ hình học có giám sát giúp chúng ta hiểu rõ hơn về dữ liệu và tạo ra những dự đốn có giá trị trong thực tế.

<i>1.2.2.2 Học không giám sát (Unsupervised Learning) </i>

Học không giám sát (Unsupervised Learning) là một nhóm thuật toán trong machine learning. Trái ngược với học có giám sát, trong học khơng giám sát, dữ liệu

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

12

huấn luyện không đi kèm với các đầu ra tương ứng. Thay vào đó, các thuật tốn học khơng giám sát tìm cách trích xuất thơng tin quan trọng dựa trên mối liên quan giữa các điểm dữ liệu [22].

Trong học khơng giám sát, chúng ta khơng có mục tiêu cụ thể để dự đoán hay phân loại, mà thay vào đó, chúng ta muốn tìm hiểu cấu trúc, mơ hình ẩn trong tập dữ liệu. Các thuật tốn học không giám sát giúp chúng ta phát hiện các nhóm, cụm dữ liệu tương đồng, các mẫu xu hướng, hay đặc trưng nổi bật trong tập dữ liệu.

Một ví dụ điển hình của học khơng giám sát là thuật toán phân cụm (clustering), nơi chúng ta cố gắng phân chia dữ liệu vào các nhóm riêng biệt dựa trên đặc điểm tương đồng. Các thuật tốn học khơng giám sát cịn được sử dụng trong việc giảm chiều dữ liệu, khám phá luật liên kết trong dữ liệu, xác định các điểm ngoại lệ, và nhiều ứng dụng khác.

Với khả năng trích xuất thông tin và khám phá cấu trúc trong tập dữ liệu mà không cần sự hướng dẫn, học khơng giám sát đóng vai trị quan trọng trong nghiên cứu và ứng dụng thực tế của machine learning.

<i>1.2.2.3 Học bán giám sát (Semi-Supervised Learning) </i>

Học bán giám sát (Semi-Supervised Learning) là một nhóm thuật tốn trong machine learning. Khác với học có giám sát và học không giám sát, học bán giám sát sử dụng một tập hợp dữ liệu huấn luyện kết hợp giữa các cặp (đầu vào, đầu ra) và các dữ liệu chỉ có đầu vào [22].

Trong học bán giám sát, chúng ta sử dụng một phần nhỏ dữ liệu huấn luyện được gán nhãn (có cặp (đầu vào, đầu ra)), cịn lại là dữ liệu khơng được gán nhãn (chỉ có đầu vào). Ý tưởng chính của học bán giám sát là sử dụng thông tin từ cả hai loại dữ liệu để tạo mơ hình dự đoán và phân loại.

Với việc sử dụng cả dữ liệu có nhãn và dữ liệu khơng nhãn, học bán giám sát có thể tận dụng sự giàu thông tin của dữ liệu không nhãn để tạo ra các mơ hình dự đốn chính xác. Điều này đặc biệt hữu ích khi cơng việc gán nhãn dữ liệu tốn kém và tốn thời gian.

Học bán giám sát đã được áp dụng thành công trong nhiều lĩnh vực, bao gồm

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

13

nhận dạng ảnh, xử lý ngôn ngữ tự nhiên, và nhiều ứng dụng khác trong thực tế. Đây là một phương pháp linh hoạt và hiệu quả để sử dụng cả dữ liệu có nhãn và khơng nhãn để nâng cao khả năng dự đốn của các mơ hình machine learning.

<i>1.2.2.4 Học củng cố (Reinforcement Learning) </i>

Học củng cố (Reinforcement Learning) là một nhóm thuật tốn trong machine learning. Khác với học có giám sát và học không giám sát, học củng cố không yêu cầu dữ liệu huấn luyện trước đó. Thay vào đó, mơ hình học thơng qua việc tương tác với mơi trường xung quanh [22].

Trong học củng cố, mơ hình liên tục ra quyết định và nhận phản hồi từ mơi trường. Mỗi quyết định đưa ra có thể dẫn đến một phần thưởng (reward) hoặc hình phạt (penalty) từ môi trường. Mục tiêu của học củng cố là tìm cách tối đa hóa tổng lượng phần thưởng nhận được từ môi trường thông qua việc tìm hiểu và cải thiện hành vi.

Thuật tốn học củng cố thường sử dụng phương pháp thử và sai (trial and error) để khám phá và học từ mơi trường. Mơ hình sẽ điều chỉnh hành vi của mình dựa trên phản hồi từ mơi trường, và sau mỗi tương tác, nó sẽ cập nhật kiến thức và kỹ năng của mình để đạt được kết quả tốt hơn.

Học củng cố đã được ứng dụng thành công trong nhiều lĩnh vực, bao gồm robot học tăng cường, chơi game, tự lái xe, và nhiều ứng dụng khác. Với khả năng học từ trải nghiệm và tương tác với môi trường, học củng cố có thể tự động củng cố hành vi và đưa ra quyết định tối ưu trong các tình huống thay đổi và phức tạp.

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

14

Hình 1.3. Các thuật tốn trong học máy

<i><b>1.2.3 Ứng dụng của học máy </b></i>

Nghiên cứu về các lĩnh vực ứng dụng và phụ lĩnh vực của học máy đã và đang được thực hiện nhiều trên thế giới. Các lĩnh vực này bao gồm thị giác máy tính, dự đốn, phân tích ngữ nghĩa, xử lý ngôn ngữ tự nhiên và truy xuất thơng tin.

Trong lĩnh vực thị giác máy tính, nhận dạng đối tượng, phát hiện đối tượng và xử lý đối tượng là các lĩnh vực quan trọng.

Còn với dự đốn, có nhiều lĩnh vực khác nhau như phân loại, phân tích và đề xuất. Học máy đã được áp dụng thành công trong việc phân loại văn bản, tài liệu, hình ảnh và cả trong lĩnh vực y khoa, từ chẩn đoán bệnh đến dự đốn các cuộc tấn cơng mạng.

Đồng thời, nhiều nghiên cứu đã tập trung vào phân tích ngữ nghĩa, xử lý ngôn ngữ tự nhiên và truy xuất thơng tin. Phân tích ngữ nghĩa giúp máy tính hiểu được cấu trúc từ văn bản, câu và từ, liên kết với ngữ cảnh tổng thể. Xử lý ngôn ngữ tự nhiên là việc lập trình máy tính để xử lý chính xác dữ liệu ngơn ngữ tự nhiên. Truy xuất thông tin là khoa học của việc tìm kiếm thơng tin trong tài liệu, tìm kiếm tài liệu và truy xuất các dữ liệu mô tả và cơ sở dữ liệu âm thanh và hình ảnh.

Các lĩnh vực này đã được khám phá và áp dụng các kỹ thuật học máy trong quá khứ và tiếp tục mang lại tiềm năng phát triển đáng kể trong tương lai.

<i>[70] </i>

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

15

Hình 1.4. Các ứng dụng của học máy

<i><b>1.2.4 Một số phương pháp đánh giá hệ thống phân loại </b></i>

<i>1.2.4.1 Ma trận nhầm lẫn (Confusion Matrix) </i>

Là một phương pháp đánh giá kết quả của những bài toán phân loại với việc xem xét cả những chỉ số về độ chính xác và độ bao quát của các dự đoán cho từng lớp [23].

Về cơ bản, ma trận nhầm lẫn (confusion matrix) là một cơng cụ trong phân tích phân loại dữ liệu, có khả năng thể hiện số lượng điểm dữ liệu thực tế thuộc về một lớp cụ thể và được dự đoán rơi vào một lớp cụ thể khác. Để hiểu rõ, có thể xem xét ví dụ bảng dưới đây:

<i>[25] </i>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

16

Bảng 1.1. Ví dụ về ma trận nhầm lẫn (Confusion matrix)

Bảng 1.1. có tổng cộng 10 điểm dữ liệu. Bảng trên chính là một ma trận tạo bởi các giá trị tại vùng 3x3 trung tâm của bảng.

Ma trận thu được được gọi là confusion matrix. Nó là một ma trận vuông với số chiều bằng số lượng lớp dữ liệu. Giá trị tại hàng thứ i, cột thứ j là số lượng điểm lẽ ra thuộc vào lớp i nhưng lại được dự đoán là thuộc vào lớp j. Như vậy, nhìn vào hàng thứ nhất (0), ta có thể thấy được rằng trong số bốn điểm thực sự thuộc lớp 0, chỉ có hai điểm được phân loại đúng, hai điểm còn lại bị phân loại nhầm vào lớp 1 và lớp 2. Nhìn vào ma trận, có thể suy ra tổng các phần tử trong toàn ma trận này chính là số điểm trong tập kiểm thử. Các phần tử trên đường chéo của ma trận là số điểm được phân loại đúng của mỗi lớp dữ liệu.

Cách biểu diễn ở bảng trên của ma trận nhầm lẫn (confusion matrix) gọi là ma trận không chuẩn hóa (unnormalized confusion matrix). Để có cái nhìn rõ hơn, có thể dùng ma trận nhầm lẫn chuẩn hóa (normalized confusion matrix). Để có ma trận chuẩn hóa, lấy mỗi hàng của ma trận nhầm lẫn khơng chuẩn hóa chia cho tổng các phần tử trên hàng đó. Như vậy, tổng các phần tử trên một hàng của normalized confusion matrix luôn bằng 1. Điều này thường không đúng trên mỗi cột. Ma trận nhầm lẫn thường được minh hoạ bằng màu sắc để có cái nhìn rõ ràng hơn.

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

17

Hình 1.5. Minh họa về ma trận nhầm lẫn không chuẩn hóa và ma trận nhầm lẫn chuẩn hóa

Trong bối cảnh của những bài toán áp dụng nhiều lớp dữ liệu, việc sử dụng biểu diễn màu sắc như này mang tính ứng dụng quan trọng. Các ơ sắc màu đậm trong biểu đồ đại diện cho các giá trị có trọng số cao. Một mơ hình có chất lượng tốt sẽ thể hiện một ma trận nhầm lẫn (confusion matrix) với các phần tử trên đường chéo chính có giá trị lớn, trong khi các phần tử cịn lại có giá trị thấp. Nói cách khác, khi sử dụng màu sắc để biểu diễn, đường chéo chính sẽ có màu sắc càng tối so với phần còn lại, điều này thể hiện tính hiệu quả cao hơn của mơ hình. Khi quan sát hai hình ảnh được trình bày, ma trận nhầm lẫn đã được chuẩn hố mang trong đó nhiều thông tin hơn. Sự khác biệt rõ ràng tại ô ở phía trên cùng bên trái của hai biểu đồ. Lớp dữ liệu 0 đã trải qua quá trình phân loại khơng thực sự tốt, tuy nhiên, trong biểu đồ ma trận nhầm lẫn khơng chuẩn hố, nó vẫn được thể hiện bằng màu sắc đậm tương tự như hai ơ khác trên đường chéo chính.

<i>1.2.4.2 True/False Positive/Negative </i>

Phương pháp đánh giá nêu trên thường được áp dụng cho các vấn đề phân loại chỉ gồm hai lớp dữ liệu. Điều cụ thể hơn, trong cấu trúc hai lớp dữ liệu, một lớp có tầm quan trọng cao hơn lớp còn lại, và từ đó u cầu khả năng dự đốn chính xác. Ví dụ, trong tình huống xác định sự hiện diện của bệnh ung thư, khả năng tránh bỏ sót (miss) các trường hợp quan trọng hơn là việc phân loại sai các trường hợp từ âm tính sang dương tính. Hoặc trong bài tốn định vị vật thể nằm dưới mặt đất, sự bỏ sót các

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

18

vật thể có thể gây hại quan trọng hơn so với việc cảnh báo về vật thể khơng tồn tại. Nếu xem xét bài tốn lọc email để tách email rác, việc gán nhầm một email quan trọng vào danh sách rác có thể gây hậu quả nghiêm trọng, ngang ngửa với việc xác định một email rác là email thường [24].

Trong các bài toán này, thường xác định lớp dữ liệu mang tính quan trọng hơn cần phải được xác định chính xác và được xác định là lớp Positive (P - Positive), còn lớp còn lại được gọi là Negative (N - Negative). Bằng việc sử dụng ma trận nhầm lẫn chưa được chuẩn hố, ta có thể định nghĩa các thuật ngữ sau:

Bảng 1.2. Minh họa ma trận nhầm lẫn với hai lớp Positive và Negative

+ True Positive (TP): Đại diện cho số lượng điểm dữ liệu thực tế thuộc lớp Positive và cũng được dự đoán rơi vào lớp Positive.

+ False Positive (FP): Biểu thị cho số lượng điểm dữ liệu thực tế thuộc lớp Negative, nhưng lại bị dự đoán vào lớp Positive.

+ True Negative (TN): Thể hiện số lượng điểm dữ liệu thực tế thuộc lớp Negative và cũng được dự đoán rơi vào lớp Negative.

+ False Negative (FN): Miêu tả số lượng điểm dữ liệu thực tế thuộc lớp Positive, nhưng bị sai lầm dự đoán vào lớp Negative.

Những giá trị quan trọng khác liên quan đến đánh giá hiệu suất trong bài toán phân loại là TPR (True Positive Rate), FNR (False Negative Rate), FPR (False Positive Rate) và TNR (True Negative Rate). Các chỉ số này được dựa trên ma trận nhầm lẫn đã được chuẩn hoá và định nghĩa như sau:

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

19

Bảng 1.3. Minh họa về TPR, FNR, FPR, TNR

+ TPR (True Positive Rate): Được tính bằng tỷ lệ số điểm dữ liệu thực tế thuộc lớp Positive và cũng được dự đoán đúng là lớp Positive, trong tổng số điểm dữ liệu thực tế thuộc lớp Positive.

+ FNR (False Negative Rate): Biểu thị tỷ lệ số điểm dữ liệu thực tế thuộc lớp Positive, nhưng bị dự đoán sai là lớp Negative, trong tổng số điểm dữ liệu thực tế thuộc lớp Positive.

+ FPR (False Positive Rate): Thể hiện tỷ lệ số điểm dữ liệu thực tế thuộc lớp Negative, nhưng lại bị dự đoán sai là lớp Positive, trong tổng số điểm dữ liệu thực tế thuộc lớp Negative.

+ TNR (True Negative Rate): Đại diện cho tỷ lệ số điểm dữ liệu thực tế thuộc lớp Negative và cũng được dự đoán đúng là lớp Negative, trong tổng số điểm dữ liệu thực tế thuộc lớp Negative.

Trong các bài toán phân loại, False Positive Rate còn được gọi là False Alarm Rate (tỷ lệ báo động sai), còn False Negative Rate còn được gọi là Miss Detection Rate (tỷ lệ bỏ sót). Đặc biệt, trong các vấn đề như bài tốn dị mìn, việc đưa ra báo động sai (False Alarm) được xem như là tốt hơn so với việc bỏ sót (Miss Detection), có nghĩa là ta có thể chấp nhận một tỷ lệ báo động sai cao để đạt được tỷ lệ bỏ sót thấp.

<i>1.2.4.3 Độ chính xác (Precision) và Độ nhạy (Recall) </i>

Với bài toán phân loại mà tập dữ liệu của các lớp là chênh lệch nhau rất nhiều, có một phép đo hiệu quả thường được sử dụng là Precision-Recall. Trước hết với bài

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

20

toán phân loại nhị phân, thường xác định một trong hai lớp là positive, lớp cịn lại là negative.

Hình 1.6. Cách tính Precision và Recall

Độ chính xác (Precision) là khả năng của mơ hình xác định chính xác các điểm dữ liệu thuộc lớp Positive trong tổng số các điểm được dự đốn là Positive. Nó được tính bằng tỷ lệ số điểm dữ liệu thực tế thuộc lớp Positive và cũng được dự đoán đúng là lớp Positive, so với tổng số điểm dữ liệu được dự đoán là lớp Positive. Precision là một thước đo quan trọng để xác định mức độ chính xác của mơ hình trong việc phân loại dữ liệu Positive[24].

Precision = <sup>TP</sup> TP + FP

Độ nhạy (Recall) là khả năng của mơ hình thu thập đầy đủ thông tin từ các điểm dữ liệu thuộc lớp Positive trong tổng số điểm dữ liệu thực tế thuộc lớp Positive. Nó được tính bằng tỷ lệ số điểm dữ liệu thực tế thuộc lớp Positive và cũng được dự đoán đúng là lớp Positive, so với tổng số điểm dữ liệu thực tế thuộc lớp Positive. Recall

<i>[24] </i>

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

Khi Precision = 1, mọi điểm tìm được đều thực sự là positive, tức khơng có điểm negative nào lẫn vào kết quả. Tuy nhiên, Precision = 1 không đảm bảo mơ hình là tốt, vì câu hỏi đặt ra là liệu mơ hình đã tìm được tất cả các điểm positive hay chưa. Nếu một mơ hình chỉ tìm được đúng một điểm positive mà nó chắc chắn nhất thì ta khơng thể gọi nó là một mơ hình tốt.

Khi Recall = 1, mọi điểm positive đều được tìm thấy. Tuy nhiên, đại lượng này lại khơng đo liệu có bao nhiêu điểm negative bị lẫn trong đó. Nếu mơ hình phân loại mọi điểm là positive thì chắc chắn Recall = 1, tuy nhiên dễ nhận ra đây là một mơ hình xấu.

<b>1.3 Tổng quan về học sâu </b>

<i><b>1.3.1 Giới thiệu về học sâu </b></i>

Học sâu (Deep Learning) là một lĩnh vực độc đáo thuộc học máy, trong đó mạng nơ ron nhân tạo (Artificial Neural Networks) được sử dụng để giải quyết những vấn đề mà tính tốn truyền thống khơng thể xử lý, chẳng hạn như dữ liệu trừu tượng, dữ liệu mờ, hoặc dữ liệu không rõ ràng. Sự đặc biệt này của học sâu đã cho phép ứng dụng rộng rãi của nó trong các lĩnh vực như nhận diện hình ảnh, nhận diện giọng nói, xử lý ngơn ngữ tự nhiên, cũng như dự đoán và dự báo. Bằng cách tận dụng khả năng học tập và tự điều chỉnh, mạng thần kinh nhân tạo trong học sâu đã chứng tỏ được sự hiệu quả và khả năng thích ứng linh hoạt với các bài tốn phức tạp.

Các nhà nghiên cứu về mạng thần kinh đã không ngừng nỗ lực để đưa thêm những tiến bộ vào lĩnh vực này. Một bước khởi đầu đáng chú ý là sự ra đời của mạng thần kinh tự tổ chức (Self-organizing neural networks) vào năm 1980. Mạng này đã được áp dụng để phân nhóm các mẫu đầu vào thành các nhóm có mẫu tương tự, với mục đích tạo ra những "bản đồ" phản ánh một cấu trúc tương tự về mặt địa chất giữa

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

22

các đơn vị nhóm. Điều đáng chú ý là mạng này cũng có khả năng ánh xạ trọng số vào dữ liệu đầu vào, góp phần làm tăng hiệu quả của q trình. Tiếp đó, mạng Kohonen đã đưa ra khái niệm về tự tổ chức và học không giám sát, mở ra những triển vọng mới trong lĩnh vực này [25].

Vào những năm 1980, Kunihiko Fukushima đã đưa ra mơ hình neocognitron - một mạng thần kinh nhân tạo phân cấp, đa tầng - nhằm giải quyết vấn đề nhận dạng ký tự viết tay và các nhiệm vụ nhận dạng mẫu khác. Cùng với sự tiến bộ đó, mạng thần kinh tích chập (Convolutional neural networks - CNN) đã được phát triển.

Sau sự phát triển của các thuật toán học nhanh cho Restricted Boltzmann Machine (RBM) do Geoffrey Hinton và các đồng nghiệp đề xuất vào giữa những năm 2000, RBM đã trở thành một mạng thần kinh nhân tạo đặc biệt, có khả năng sinh ra ngẫu nhiên và học một phân phối xác suất trên tập hợp các đầu vào. Điều này đã làm cho RBM trở nên phổ biến trong cộng đồng nghiên cứu.

Mạng thần kinh hồi quy (Recurrent neural network - RNN) có vai trị quan trọng trong việc khôi phục mẫu đã lưu trữ từ phiên bản bị hỏng và là cơ sở cho máy Boltzmann hạn chế và bộ mã hóa tự động. Vào năm 1986, Michael Jordan đã phát minh ra mạng Jordan, một kiến trúc ban đầu được sử dụng cho việc học có giám sát trên chuỗi dữ liệu.

Mạng thần kinh tích chập đầu tiên (Convolutional neural network - CNN) - kiến trúc LeNet - được giới thiệu lần đầu bởi LeCun và đồng nghiệp trong bài báo năm 1998 của họ, "Học dựa trên độ dốc áp dụng vào nhận dạng tài liệu". Nó chủ yếu được sử dụng để nhận dạng ký tự và các ký tự trong tài liệu.

Mạng thần kinh hai chiều hồi quy (Bidirectional recurrent neural network - BRNN) được giới thiệu bởi Mike Schuster và Kuldip Paliwal vào năm 1997. Nó hoạt động bằng cách đào tạo mạng đồng thời theo cả hướng thời gian dương và âm.

Long Short-Term Memory (LSTM) được giới thiệu bởi Hochreiter và Schmidhuber vào năm 1997. LSTM có khả năng học cầu nối các độ trễ thời gian tối thiểu vượt quá 1000 bước thời gian rời rạc bằng cách áp dụng luồng lỗi không đổi qua các đơn vị "luồng lỗi không đổi". Các đơn vị cổng nhân tạo học cách mở và đóng

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

23

quyền truy cập vào luồng lỗi không đổi. LSTM có tính cục bộ trong khơng gian và thời gian; độ phức tạp tính tốn cho mỗi bước thời gian và trọng số là O.

Deep Belief Networks được tiếp nối bởi Deep Boltzmann Machines vào cùng năm 2006. Mạng nơ ron Dropout được phát triển vào năm 2012 bởi Hinton. Mạng thần kinh đối nghịch sinh (Generative Adversarial Networks - GANs) là các kiến trúc mạng thần kinh sâu được phát minh vào năm 2014 bởi Goodfellow. Mạng thần kinh tổ hợp (Capsule Neural Networks) là các tiến bộ gần đây trong học sâu do Hinton đưa ra.

Sự phổ biến của học sâu ngày nay xuất phát chủ yếu từ ba nguyên nhân chính được xác định. Thứ nhất, đó là khả năng xử lý mạnh mẽ của chip, như đơn vị GPU (Graphic Processing Unit), đã có một sự tăng đáng kể. Điều này cho phép các mơ hình học sâu được huấn luyện và triển khai hiệu quả hơn trên cấu trúc phần cứng mạnh mẽ này. Thứ hai, chi phí của phần cứng tính tốn đã giảm đáng kể, giúp tạo điều kiện thuận lợi cho việc tiếp cận và áp dụng học sâu. Cuối cùng, tiến bộ gần đây trong nghiên cứu học máy và xử lý tín hiệu/thơng tin đã tạo ra những bước tiến quan trọng trong việc phát triển và tối ưu hóa các thuật tốn học sâu. Những tiến bộ này đã cung cấp các phương pháp mới và hiệu quả để xử lý dữ liệu và trích xuất thơng tin từ đó [26].

<i><b>1.3.2 Cách thức hoạt động của học sâu </b></i>

Học sâu (Deep Learning) dựa trên mạng thần kinh nhân tạo (Artificial Neural Networks) để học và hiểu dữ liệu. Nó được gọi là "sâu" vì sử dụng mạng nơ-ron với nhiều tầng ẩn (hidden layers), cho phép nó rút trích các đặc trưng phức tạp từ dữ liệu đầu vào.

Cách thức hoạt động của học sâu bắt đầu từ xây dựng một mơ hình mạng nơ-ron. Mơ hình này bao gồm các tầng nơ-ron kết nối với nhau bằng các liên kết trọng số. Mỗi nơ-ron trong mạng nơ-ron nhận đầu vào từ các nơ-ron ở tầng trước đó và tính tốn một giá trị đầu ra dựa trên các trọng số kết nối và hàm kích hoạt (activation function).

Quá trình huấn luyện của học sâu bắt đầu bằng việc đưa dữ liệu huấn luyện vào

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

24

mơ hình. Dữ liệu này được chia thành các tập mini-batch và truyền qua mạng nơ-ron để tính tốn đầu ra dự đốn. Sau đó, sử dụng một hàm mất mát (loss function) để so sánh giữa đầu ra dự đoán và giá trị thực tế của dữ liệu. Mục tiêu là điều chỉnh các trọng số của mạng nơ-ron sao cho hàm mất mát đạt được giá trị nhỏ nhất.

Để điều chỉnh trọng số, học sâu sử dụng thuật toán gradient descent. Thuật toán này tính tốn đạo hàm của hàm mất mát theo từng trọng số và điều chỉnh các trọng số theo hướng ngược lại của đạo hàm để giảm thiểu hàm mất mát. Quá trình này được lặp lại qua nhiều vòng lặp, được gọi là epochs, cho đến khi hàm mất mát đạt được giá trị tối ưu hoặc hội tụ.

Một yếu tố quan trọng của học sâu là khả năng rút trích đặc trưng từ dữ liệu. Các tầng ẩn trong mạng nơ-ron cho phép mơ hình học cách biểu diễn các đặc trưng phức tạp từ dữ liệu đầu vào. Ở các tầng đầu tiên, mạng nơ-ron học các đặc trưng cơ bản, như đường viền, góc, hoặc màu sắc đơn giản. Khi tiến đến các tầng sâu hơn, mạng nơ-ron có khả năng học được các đặc trưng phức tạp hơn, như khuôn mặt, vật thể, ngôn ngữ tự nhiên, và các quan hệ phức tạp giữa chúng.

Để đạt được kết quả tốt, học sâu yêu cầu một lượng lớn dữ liệu huấn luyện. Điều này địi hỏi sự hiện diện của hệ thống tính toán mạnh mẽ, như các đơn vị xử lý đồng thời (Graphic Processing Unit - GPU) hoặc cụm máy tính song song (cluster computing), để có thể xử lý các phép tính phức tạp trên dữ liệu lớn.

Một lợi ích khác của học sâu là khả năng tự học. Thay vì cần phải được lập trình cụ thể cho từng nhiệm vụ, mạng nơ-ron trong học sâu có khả năng học từ dữ liệu và tự điều chỉnh để cải thiện kết quả. Điều này mang lại khả năng ứng dụng của học sâu trong nhiều lĩnh vực, từ nhận dạng hình ảnh và giọng nói, dịch thuật tự động, tư vấn tài chính, cho đến xe tự hành và nhiều ứng dụng khác.

Tuy nhiên, học sâu cũng đặt ra một số thách thức. Một trong số đó là vấn đề tính khả diễn giải. Do mạng ron có hàng triệu tham số, việc hiểu rõ cách mạng nơ-ron đưa ra quyết định trở nên khó khăn. Điều này làm cho việc giải thích kết quả và xác định nguyên nhân trở nên phức tạp.

<i><b>1.3.3 Ứng dụng của học sâu </b></i>

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

25

Học sâu (Deep Learning) đã đạt được những tiến bộ đáng kể và được áp dụng trong nhiều lĩnh vực. Một số ví dụ điển hình bao gồm:

Đầu tiên, Microsoft đã sử dụng học sâu để phát triển cơng nghệ nhận dạng giọng nói (MAVIS) trong việc tìm kiếm âm thanh và video thơng qua giọng nói của con người. Điều này đã cung cấp khả năng tìm kiếm nhanh chóng và hiệu quả trong các tệp dữ liệu lớn [16].

Thứ hai, Google đã áp dụng học sâu vào dịch vụ tìm kiếm hình ảnh. Họ đã sử dụng học sâu để hiểu và phân loại hình ảnh, từ đó cung cấp dịch vụ chú thích, gắn thẻ và tìm kiếm hình ảnh một cách chính xác và nhanh chóng. Điều này đã cải thiện trải nghiệm người dùng trong việc tìm kiếm và sử dụng hình ảnh [27].

Ngồi ra, Google đã chứng minh khả năng học sâu mạnh mẽ thơng qua chương trình AlphaGo. Trong cuộc thi Go, AlphaGo đã vượt qua nhà vô địch Lee Sedol, mở ra một trang mới trong lĩnh vực trí tuệ nhân tạo [27].

Facebook đã giới thiệu Deep Text - một hệ thống trí tuệ nhân tạo dựa trên học sâu. Deep Text có khả năng phân loại và xử lý lượng lớn dữ liệu văn bản, cung cấp dịch vụ xác định nội dung tin nhắn người dùng và loại bỏ tin nhắn rác, đóng góp vào việc tạo ra một mơi trường trị chuyện an toàn và hiệu quả.

Học sâu được áp dụng trong nhiều lĩnh vực khác nhau, bao gồm thị giác máy tính, dự đốn, phân tích ngữ nghĩa, xử lý ngôn ngữ tự nhiên, truy xuất thông tin và quản lý mối quan hệ khách hàng. Trong lĩnh vực thị giác máy tính, học sâu được sử dụng để nhận diện đối tượng, phát hiện đối tượng và xử lý. Các ứng dụng mới hơn trong lĩnh vực này bao gồm nhận dạng giọng nói tự động, nhận dạng hình ảnh, xử lý giọng nói và âm thanh, cũng như xử lý nghệ thuật hình ảnh. Trong lĩnh vực dự đoán, học sâu được sử dụng trong các cơng việc phân loại, phân tích và gợi ý. Đang có sự phát triển của các ứng dụng mới trong việc phát hiện thuốc và độc tính, sinh học thơng tin và quảng cáo di động. Phân tích ngữ nghĩa, xử lý ngơn ngữ tự nhiên và truy xuất thông tin là ba lĩnh vực mà học sâu được áp dụng. Các nhà nghiên cứu đang sử dụng các kỹ thuật học sâu để nghiên cứu và phát triển các ứng dụng mới trong các lĩnh vực này. Trong quản lý mối quan hệ khách hàng, học sâu có thể hữu ích trong việc phân

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

26

tích dữ liệu khách hàng và cải thiện mối quan hệ kinh doanh.

Hình 1.7. Ứng dụng của học sâu

Học sâu (deep learning) có nhiều ứng dụng đa dạng trong các lĩnh vực khác nhau. Trong lĩnh vực thị giác máy tính, học sâu được sử dụng để phát hiện đối tượng, theo dõi đối tượng và phân đoạn hình ảnh. Ngồi ra, nó cũng được áp dụng trong xử lý ngôn ngữ tự nhiên, nhận dạng giọng nói và xử lý âm thanh. Các kỹ thuật học sâu như Autoencoder, Deep Belief Network, Convolutional Neural Network và Recurrent Neural Network được sử dụng trong các ứng dụng này [28].

Trong lĩnh vực y tế, học sâu cung cấp các giải pháp cho các chủ đề như translational bioinformatics, hình ảnh y học, cảm biến phổ biến, tin học y tế và sức khỏe cộng đồng. Sử dụng Deep Belief Network và Deep Boltzmann Machine (DBM), học sâu có thể giúp xử lý dữ liệu y tế một cách hiệu quả [29].

<i>[25] </i>

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

27

Học sâu cũng được áp dụng trong lĩnh vực dự đốn, ví dụ như trong lĩnh vực tài chính và giao dịch. Các phương pháp như Direct Deep Reinforcement Learning được sử dụng để biểu diễn tín hiệu tài chính và thực hiện giao dịch [30].

Các lĩnh vực ứng dụng khác của học sâu bao gồm nhận dạng đối tượng, xử lý giọng nói và âm thanh, truy xuất thông tin và xử lý ngơn ngữ tự nhiên. Các thuật tốn như Deep Belief Network (DBN), Deep Boltzmann Machines (DBM) và Deep Stacking Networks (DSN) được áp dụng để giải quyết các vấn đề trong các lĩnh vực này [31].

Học sâu có thể được áp dụng trong nhiều lĩnh vực mới, đáng chú ý như ảnh y khoa, tạo ra âm thanh bằng deep learning, sáng tạo nghệ thuật thông qua deep learning, tạo ra hiệu ứng ảo trên máy tính, áp dụng trong robot học, dự đốn, trị chơi điện tử, xe tự lái và xử lý dữ liệu lớn.

Ngoài ra, học sâu cũng giúp giải quyết một số vấn đề hiện có trong các lĩnh vực khác. Ví dụ, việc tô màu tự động, dịch máy tự động, tạo ra văn bản tự động, viết chữ viết tự động, nhận dạng hình ảnh, tạo chú thích tự động cho hình ảnh. Deep learning cũng có thể ứng dụng trong lĩnh vực quảng cáo, tạo ra quảng cáo dựa trên dữ liệu, đấu giá quảng cáo theo thời gian thực (RTB) để hiển thị quảng cáo một cách chính xác và nhắm đúng đối tượng khách hàng. Ngồi ra, deep learning cịn có khả năng dự đoán động đất và nhiều ứng dụng khác. Từ những áp dụng đa dạng này, học sâu mang lại tiềm năng vô tận trong việc nghiên cứu và phát triển trong tương lai.

<b>1.4 Tổng quan mạng thần kinh tích chập </b>

<i><b>1.4.1 Giới thiệu về mạng thần kinh tích chập </b></i>

<i>Mạng thần kinh nhân tạo (Artificial Neural Network) được tạo ra bằng cách mô </i>

phỏng cấu trúc và hoạt động của não bộ sinh vật. Mô hình này bao gồm các lớp nơ ron được kết nối theo một mơ hình cụ thể. Trong q trình huấn luyện, mạng nơ ron nhân tạo hấp thụ kinh nghiệm và sử dụng những kinh nghiệm đó để xử lý thông tin mới [32]. Ứng dụng phổ biến của mạng nơ ron nhân tạo là giải quyết các bài toán nhận dạng mẫu và dự đốn. Nhờ khả năng học tập và khái qt hóa, mạng thần kinh nhân tạo có thể phân loại đối tượng, nhận dạng hình ảnh, dự đốn kết quả, và thậm

</div>

×