Đồ án HCMUTE: Ứng dụng thị giác máy tính vào hệ thống lái xe ADAS

Đồ án nghiên cứu hcmute ứng dụng thị giác máy tính vào hệ thống lái xe tiên tiến adas, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài toán .

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2022

76
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

TÓM TẮT

DANH MỤC CÁC TỪ VIẾT TẮT

DANH MỤC CÁC HÌNH ẢNH

DANH MỤC CÁC BẢNG BIỂU

1. CHƯƠNG 1: GIỚI THIỆU

1.1. Giới thiệu đề tài

1.2. Tình hình nghiên cứu

1.3. Mục tiêu đề tài

1.4. Giới hạn đề tài

1.5. Bố cục quyển báo cáo

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

2.1. Khái niệm về Multitask Learning

2.2. Kiến trúc thuật toán Multitask Learning

2.3. Lợi ích của Multitask Learning

2.4. Sử dụng Multitask Learning trong mạng nơ-ron

2.4.1. Hard Parameter Sharing

2.4.2. Soft Parameter Sharing

2.5. Kiến trúc mạng HybridNets

2.6. Sử dụng mạng EfficientNet làm mạng Backbone

2.6.1. Giới thiệu về EfficientNet

2.6.2. Kiến trúc mạng cơ sở EfficientNet-B0

2.6.3. Phương pháp mở rộng mô hình mạng nơ-ron

2.7. Sử dụng mạng BiFPN làm mạng Neck

2.7.1. Mạng kim tự tháp đặc trưng hai hướng BiFPN

2.8. Kiến trúc EfficientDet

2.9. Sử dụng Anchor Box để phát hiện đối tượng

2.10. Giải thuật Facial Landmark

2.10.1. Giới thiệu về Facial Landmark

2.10.2. Giới thiệu bộ phát hiện 68 điểm mốc trên khuôn mặt của Dlib

2.10.3. Giải thuật Adaboost

2.10.3.1. Đặc trưng Haar-Like

3. CHƯƠNG 3: THIẾT KẾ HỆ THỐNG

3.1. Yêu cầu thiết kế

3.2. Sơ đồ khối tổng thể hệ thống

3.3. Thiết kế hệ thống cảnh báo lệch làn và va chạm

3.3.1. Thiết kế hệ thống đa tác vụ

3.3.2. Lựa chọn mạng đa tác vụ

3.3.3. Kiến trúc mạng đa tác vụ HybridNets

3.3.4. Hệ thống cảnh báo lệch làn

3.3.5. Hệ thống cảnh báo va chạm

3.4. Thiết kế hệ thống cảnh báo ngủ gật

3.4.1. Các phương pháp cảnh báo ngủ gật

3.4.2. Sơ đồ khối hệ thống cảnh báo ngủ gật

3.4.3. Ảnh từ Camera

3.4.4. Nhận diện khuôn mặt

3.4.5. Đánh dấu cấu trúc khuôn mặt dùng giải thuật Facial Landmark

3.4.6. Trích xuất mắt, miệng

3.4.7. Tính toán tỷ lệ nhắm/ mở mắt, tỷ lệ mở miệng

3.4.8. Phát hiện trạng thái ngủ gật

4. CHƯƠNG 4: KẾT QUẢ THỰC HIỆN VÀ ĐÁNH GIÁ

4.1. Môi trường đánh giá

4.2. Tập dữ liệu

4.3. Các phương pháp đánh giá kết quả

4.4. Đánh giá kết quả từng nhiệm vụ

4.4.1. Kết quả nhiệm vụ cảnh báo lệch làn đường

4.4.2. Kết quả nhiệm vụ cảnh báo va chạm

4.4.3. Kết quả của hệ thống cảnh báo ngủ gật

5. CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

5.1. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Khám phá ADAS Vai trò thị giác máy tính cho xe tự lái

Hệ thống hỗ trợ lái xe nâng cao, hay ADAS (Advanced Driver Assistance Systems), là tập hợp các công nghệ điện tử tiên tiến được thiết kế để tăng cường an toàn và trải nghiệm lái xe. Mục tiêu chính của ADAS là giảm thiểu sai sót của con người, nguyên nhân chính gây ra tai nạn giao thông. Thay vì phụ thuộc hoàn toàn vào các cảm biến đắt tiền như LiDAR, xu hướng hiện đại tập trung vào ứng dụng thị giác máy tính cho xe tự lái, sử dụng cảm biến camera ô tô làm "đôi mắt" cho phương tiện. Thị giác máy tính là một lĩnh vực của trí tuệ nhân tạo (AI) trong ô tô, cho phép máy tính "nhìn" và diễn giải thế giới trực quan. Thông qua các thuật toán thị giác máy tính phức tạp, hệ thống có thể phân tích luồng video thời gian thực để thực hiện các tác vụ quan trọng như nhận diện vật thể, phát hiện làn đường, và nhận dạng biển báo giao thông. Công nghệ này không chỉ giúp giảm chi phí sản xuất mà còn mở ra tiềm năng vô hạn cho việc phát triển các tính năng an toàn thông minh. Nghiên cứu của Nguyễn Anh Vũ và Võ Văn Quý (2022) tại Đại học Sư phạm Kỹ thuật TP.HCM đã chứng minh tính hiệu quả của việc ứng dụng thị giác máy tính để xây dựng một mô hình mạng đa tác vụ, có khả năng xử lý đồng thời nhiều nhiệm vụ, từ đó nâng cao hiệu suất và giảm độ trễ hệ thống, một yếu tố sống còn trong công nghệ xe tự hành.

1.1. Định nghĩa hệ thống hỗ trợ lái xe nâng cao ADAS

Hệ thống hỗ trợ lái xe nâng cao là một bộ các chức năng an toàn được tích hợp trên xe, sử dụng các cảm biến và camera để giám sát môi trường xung quanh. Các chức năng phổ biến bao gồm hệ thống phanh khẩn cấp tự động (AEB), kiểm soát hành trình thích ứng (ACC), và hỗ trợ giữ làn đường (LKA). Mục đích của chúng là đưa ra cảnh báo kịp thời hoặc tự động can thiệp để ngăn chặn va chạm, đảm bảo xe luôn di chuyển trong làn đường an toàn và duy trì khoảng cách phù hợp với các phương tiện khác. ADAS được xem là bước đệm quan trọng tiến tới các cấp độ tự lái cao hơn, nơi mà vai trò của người lái giảm dần và được thay thế bởi hệ thống tự động.

1.2. Sức mạnh của computer vision for autonomous vehicles

Computer vision for autonomous vehicles (thị giác máy tính cho xe tự hành) là công nghệ cốt lõi cho phép xe "hiểu" được môi trường xung quanh. Bằng cách sử dụng camera, một thiết bị có chi phí hợp lý và khả năng thu thập dữ liệu hình ảnh phong phú, các thuật toán có thể xác định người đi bộ, phương tiện khác, vạch kẻ đường, và biển báo. Quá trình này bao gồm các bước xử lý ảnh trong ô tô, trích xuất đặc trưng và phân loại đối tượng. So với các hệ thống chỉ dựa vào radar hay LiDAR, thị giác máy tính cung cấp thông tin ngữ nghĩa chi tiết hơn, ví dụ như nhận diện được tín hiệu đèn giao thông hay đọc hiểu nội dung biển báo, tạo nền tảng vững chắc cho các quyết định lái xe an toàn và thông minh.

II. Top thách thức của ADAS Chi phí cảm biến và xử lý ảnh

Việc triển khai một hệ thống hỗ trợ lái xe nâng cao hiệu quả phải đối mặt với nhiều thách thức đáng kể, trong đó nổi bật là chi phí và khả năng xử lý. Các hệ thống ADAS truyền thống thường tích hợp nhiều loại cảm biến như radar và đặc biệt là LiDAR để thu thập dữ liệu môi trường. Mặc dù cung cấp dữ liệu không gian 3D chính xác, chi phí của các cảm biến này, đặc biệt là LiDAR, vẫn còn rất cao, trở thành rào cản lớn cho việc phổ cập công nghệ trên các dòng xe phổ thông. Thách thức thứ hai đến từ yêu cầu xử lý dữ liệu khổng lồ trong thời gian thực. Mỗi giây, cảm biến camera ô tô thu về một lượng lớn dữ liệu hình ảnh. Việc xử lý ảnh trong ô tô đòi hỏi năng lực tính toán cực lớn từ bộ xử lý trung tâm (ECU). Nếu chạy tuần tự nhiều mô hình riêng lẻ cho từng tác vụ (ví dụ: một mô hình cho phát hiện làn đường, một mô hình khác cho nhận diện vật thể), tổng độ trễ sẽ tăng lên đáng kể. Trong các tình huống giao thông thực tế, một phần nghìn giây chậm trễ cũng có thể dẫn đến tai nạn. Do đó, việc phát triển các thuật toán thị giác máy tính hiệu quả, có khả năng chạy trên các thiết bị nhúng với tài nguyên hạn chế mà vẫn đảm bảo tốc độ và độ chính xác, là một bài toán cấp thiết.

2.1. Vấn đề tích hợp LiDAR và camera trong ô tô

Sự kết hợp giữa LiDAR và camera thường được coi là giải pháp toàn diện cho xe tự hành, vì chúng bổ sung điểm mạnh cho nhau. LiDAR tạo ra bản đồ điểm 3D chính xác về khoảng cách, trong khi camera cung cấp thông tin màu sắc và ngữ nghĩa. Tuy nhiên, việc dung hợp dữ liệu (data fusion) từ hai nguồn này rất phức tạp và đòi hỏi năng lực xử lý cao. Thêm vào đó, chi phí tích hợp và hiệu chỉnh hệ thống LiDAR và camera cũng là một rào cản. Vì vậy, các nghiên cứu tập trung vào việc tối ưu hóa hệ thống chỉ dựa trên camera đang nhận được nhiều sự quan tâm, hướng tới một giải pháp ADAS vừa hiệu quả vừa có giá thành hợp lý.

2.2. Yêu cầu xử lý thời gian thực của bộ xử lý trung tâm ECU

Bộ xử lý trung tâm (ECU) trên ô tô có tài nguyên tính toán giới hạn so với các máy chủ hiệu năng cao. Để đảm bảo an toàn chủ động trên ô tô, các quyết định cảnh báo hoặc can thiệp phải được đưa ra gần như tức thời. Điều này đặt ra yêu cầu khắt khe cho các thuật toán học sâu cho xe tự lái. Các mô hình phải được tối ưu hóa để giảm số lượng tham số và phép tính (FLOPS) mà không làm suy giảm đáng kể độ chính xác. Các kiến trúc mạng gọn nhẹ như EfficientNet hay các kỹ thuật như lượng tử hóa (quantization) là những giải pháp tiềm năng để triển khai các mô hình AI phức tạp trên phần cứng hạn chế của ECU.

III. Phương pháp HybridNets Giải pháp đa tác vụ cho ADAS

Để giải quyết thách thức về độ trễ khi xử lý tuần tự nhiều tác vụ, các nhà nghiên cứu đã đề xuất phương pháp học đa nhiệm (Multitask Learning). Thay vì huấn luyện các mô hình riêng lẻ, một mô hình duy nhất được thiết kế để thực hiện đồng thời nhiều nhiệm vụ. HybridNets, một kiến trúc mạng đa tác vụ tiên tiến, là một ví dụ điển hình. Theo nghiên cứu được trích dẫn, HybridNets được lựa chọn vì hiệu suất vượt trội trong các nhiệm vụ quan trọng của ADAS. Kiến trúc của nó bao gồm một bộ mã hóa (encoder) được chia sẻ và nhiều bộ giải mã (decoder) chuyên biệt. Bộ mã hóa, thường sử dụng một mạng xương sống (backbone) hiệu quả như EfficientNet, có nhiệm vụ trích xuất các đặc trưng chung từ ảnh đầu vào. Các đặc trưng này sau đó được đưa đến các bộ giải mã riêng biệt để xử lý các tác vụ cụ thể như nhận diện vật thể (phát hiện phương tiện) và phân đoạn ngữ nghĩa (phân đoạn làn đường và vùng có thể lái). Cách tiếp cận này mang lại hai lợi ích lớn: thứ nhất, việc chia sẻ bộ mã hóa giúp tiết kiệm tài nguyên tính toán; thứ hai, các tác vụ có thể học hỏi và bổ trợ lẫn nhau, giúp cải thiện độ chính xác tổng thể. Ví dụ, thông tin về làn đường có thể giúp hệ thống nhận diện vật thể chính xác hơn các phương tiện đang đi cùng làn.

3.1. Kiến trúc mạng nơ ron tích chập CNN và học sâu

Nền tảng của các mô hình thị giác máy tính hiện đại là mạng nơ-ron tích chập (CNN), một lớp của các mô hình học sâu cho xe tự lái. CNN có khả năng tự động học các đặc trưng phân cấp từ dữ liệu hình ảnh, từ các cạnh và góc đơn giản ở các lớp đầu đến các cấu trúc phức tạp như bánh xe hay đèn pha ở các lớp sau. Các kiến trúc như EfficientNet-B3 được sử dụng trong HybridNets tối ưu hóa sự cân bằng giữa độ sâu, độ rộng và độ phân giải của mạng để đạt được độ chính xác cao với chi phí tính toán thấp. Mạng cổ BiFPN (Bi-directional Feature Pyramid Network) tiếp tục tối ưu hóa việc kết hợp các đặc trưng ở nhiều tỷ lệ, giúp mô hình phát hiện được cả các vật thể lớn và nhỏ một cách hiệu quả.

3.2. Multitask Learning Tối ưu hóa hiệu suất cho xe tự hành

Học đa nhiệm (Multitask Learning) là một phương pháp trong học máy nơi một mô hình duy nhất được huấn luyện để giải quyết nhiều bài toán cùng lúc. Trong bối cảnh công nghệ xe tự hành, một mô hình đa tác vụ có thể đồng thời thực hiện phát hiện làn đường, nhận dạng biển báo giao thông, và phát hiện phương tiện. Bằng cách chia sẻ các lớp biểu diễn (representation layers) ban đầu, mô hình học được các đặc trưng tổng quát hóa tốt hơn, giúp giảm hiện tượng quá khớp (overfitting) và cải thiện hiệu suất trên từng nhiệm vụ riêng lẻ. HybridNets là một minh chứng cho thấy Multitask Learning là hướng đi hiệu quả để xây dựng các hệ thống ADAS mạnh mẽ và đáp ứng yêu cầu thời gian thực.

IV. Hướng dẫn thuật toán ADAS Phát hiện làn và vật thể

Trọng tâm của một hệ thống ADAS dựa trên thị giác máy tính là khả năng nhận diện chính xác các yếu tố quan trọng trong môi trường giao thông. Hai trong số các tác vụ nền tảng nhất là phát hiện làn đườngnhận diện vật thể. Đối với phát hiện làn đường, hệ thống sử dụng một nhánh giải mã phân đoạn (segmentation head) trong kiến trúc HybridNets. Nhánh này sẽ xử lý các bản đồ đặc trưng từ bộ mã hóa và tạo ra một ảnh đầu ra, trong đó mỗi pixel được gán nhãn là 'nền', 'làn đường' hoặc 'vùng có thể lái'. Kết quả phân đoạn này sau đó được xử lý hậu kỳ để xác định vị trí chính xác của hai vạch kẻ làn đường mà xe đang di chuyển. Từ đó, hệ thống có thể tính toán độ lệch của xe so-với-tâm-làn-đường và đưa ra cảnh báo nếu cần. Song song đó, tác vụ nhận diện vật thể được thực hiện bởi nhánh giải mã phát hiện (detection head). Nhánh này sử dụng kỹ thuật Anchor Box để dự đoán các hộp giới hạn (bounding box) xung quanh các phương tiện giao thông. Mỗi hộp đi kèm với một nhãn lớp (ví dụ: 'ô tô', 'xe tải') và một điểm tin cậy. Các thuật toán thị giác máy tính này là cốt lõi để xây dựng các tính năng an toàn chủ động trên ô tô.

4.1. Quy trình xử lý ảnh trong ô tô để nhận diện làn đường

Quá trình phát hiện làn đường bắt đầu bằng việc đưa frame video từ camera vào mô hình HybridNets. Mô hình trả về một ảnh phân đoạn, nơi các pixel thuộc về làn đường được tô màu riêng biệt. Bước tiếp theo trong quy trình xử lý ảnh trong ô tô là chuyển ảnh phân đoạn này thành ảnh nhị phân, chỉ giữ lại các pixel của vạch kẻ đường. Các thuật toán xử lý ảnh như biến đổi góc nhìn (perspective transform) và dò tìm đường viền (contour detection) được áp dụng để xác định tọa độ chính xác của các vạch kẻ, ngay cả khi chúng bị mờ hoặc bị che khuất một phần. Kết quả cuối cùng là cơ sở để kích hoạt tính năng hỗ trợ giữ làn đường (LKA).

4.2. Kỹ thuật học sâu cho việc nhận diện phương tiện giao thông

Nhận diện vật thể, cụ thể là các phương tiện giao thông, là một ứng dụng quan trọng của học sâu cho xe tự lái. Nhánh phát hiện của HybridNets sử dụng một mạng nơ-ron tích chập (CNN) để dự đoán vị trí và kích thước của các phương tiện. Bằng cách phân tích các đặc trưng học được, mô hình có thể phân biệt giữa ô tô, xe máy, xe buýt và người đi bộ. Thông tin này rất quan trọng cho các tính năng như hệ thống phanh khẩn cấp tự động (AEB)kiểm soát hành trình thích ứng (ACC). Độ chính xác của việc nhận diện phụ thuộc rất lớn vào chất lượng của tập dữ liệu huấn luyện và kiến trúc mạng được sử dụng.

V. Ứng dụng thực tiễn ADAS An toàn chủ động và cảnh báo

Các thuật toán và mô hình học sâu cho xe tự lái không chỉ dừng lại ở lý thuyết mà đã được ứng dụng rộng rãi để xây dựng các tính năng an toàn chủ động trên ô tô. Dựa trên kết quả từ các tác vụ nhận diện, hệ thống ADAS có thể triển khai nhiều chức năng cảnh báo và hỗ trợ quan trọng. Ví dụ, chức năng Cảnh báo lệch làn đường (Lane Departure Warning) sử dụng dữ liệu từ module phát hiện làn đường. Bằng cách liên tục theo dõi vị trí của xe trong làn, hệ thống sẽ phát ra âm thanh hoặc rung vô lăng nếu phát hiện xe đang đi chệch khỏi làn mà không có tín hiệu xi nhan. Nghiên cứu của Vũ và Quý (2022) cho thấy hệ thống dựa trên HybridNets đạt độ chính xác lên đến 93% trong việc cảnh báo lệch làn ở nhiều điều kiện khác nhau. Một ứng dụng quan trọng khác là Cảnh báo va chạm phía trước (Forward Collision Warning), tiền đề cho hệ thống phanh khẩn cấp tự động (AEB). Hệ thống này sử dụng kết quả nhận diện vật thể để xác định khoảng cách và vận tốc tương đối với xe phía trước. Nếu khoảng cách trở nên không an toàn, một cảnh báo sẽ được đưa ra. Trong các thử nghiệm, hệ thống này đạt độ chính xác tuyệt đối 100%. Ngoài ra, thị giác máy tính còn được ứng dụng để theo dõi trạng thái của tài xế, chẳng hạn như phát hiện buồn ngủ dựa trên tỷ lệ nhắm mắt và hành vi ngáp, góp phần nâng cao an toàn một cách toàn diện.

5.1. Triển khai hệ thống hỗ trợ giữ làn đường LKA

Hỗ trợ giữ làn đường (LKA) là một tính năng nâng cao của cảnh báo lệch làn. Thay vì chỉ cảnh báo, LKA có thể chủ động tác động một lực nhẹ lên vô lăng để điều chỉnh quỹ đạo của xe, giữ cho xe luôn đi ở giữa làn đường. Việc triển khai LKA đòi hỏi sự tích hợp chặt chẽ giữa hệ thống thị giác máy tính và hệ thống điều khiển lái của xe. Dữ liệu về vị trí làn đường từ camera phải được chuyển đổi thành tín hiệu điều khiển chính xác cho bộ xử lý trung tâm (ECU) để thực hiện các điều chỉnh cần thiết một cách mượt mà và an toàn.

5.2. Nguyên lý hoạt động của hệ thống phanh khẩn cấp AEB

Hệ thống phanh khẩn cấp tự động (AEB) hoạt động dựa trên nguyên tắc phát hiện nguy cơ va chạm không thể tránh khỏi và tự động áp dụng lực phanh để giảm thiểu hoặc ngăn chặn hoàn toàn hậu quả. Hệ thống sử dụng dữ liệu từ camera và có thể kết hợp với radar để nhận diện vật thể và tính toán Time-to-Collision (TTC) – thời gian dự kiến đến khi va chạm. Khi TTC giảm xuống dưới một ngưỡng nguy hiểm và người lái không có phản ứng, hệ thống sẽ tự động kích hoạt phanh. Đây là một trong những tính năng an toàn chủ động hiệu quả nhất hiện nay.

VI. Tương lai ADAS Từ VinFast ADAS đến Tesla Autopilot

Tương lai của hệ thống hỗ trợ lái xe nâng cao đang phát triển với tốc độ chóng mặt, được thúc đẩy bởi những tiến bộ trong trí tuệ nhân tạo (AI) trong ô tô và sức mạnh xử lý của phần cứng. Các hệ thống ngày càng trở nên thông minh hơn, có khả năng hiểu bối cảnh giao thông phức tạp và đưa ra quyết định giống con người hơn. Tại Việt Nam, VinFast ADAS là một minh chứng rõ ràng cho việc các nhà sản xuất nội địa đang nhanh chóng bắt kịp xu hướng toàn cầu, tích hợp các tính năng tự lái cấp độ 2 trên các dòng xe của mình. Trên thế giới, Tesla Autopilot tiếp tục là người tiên phong, liên tục cập nhật phần mềm để cải thiện khả năng tự lái thông qua việc thu thập và phân tích dữ liệu từ hàng triệu chiếc xe trên đường. Xu hướng trong tương lai sẽ là sự phát triển của các mô hình AI lớn hơn, có khả năng xử lý đa phương thức (kết hợp camera, radar, bản đồ) và học hỏi liên tục. Các công ty như Mobileye cũng đang đóng góp những công nghệ chip xử lý và thuật toán quan trọng, giúp phổ cập ADAS trên quy mô rộng lớn hơn. Cuối cùng, công nghệ xe tự hành sẽ không chỉ là một tính năng xa xỉ mà sẽ trở thành một tiêu chuẩn an toàn không thể thiếu trên mọi phương tiện.

6.1. Vai trò của Trí tuệ nhân tạo AI trong ô tô thế hệ mới

Trí tuệ nhân tạo (AI) trong ô tô là động lực chính đằng sau cuộc cách mạng xe tự hành. AI không chỉ giới hạn ở thị giác máy tính mà còn bao gồm các thuật toán lập kế hoạch (planning) để vạch ra lộ trình an toàn, các thuật toán điều khiển (control) để thực thi các hành động như đánh lái, phanh, và tăng tốc, cũng như xử lý ngôn ngữ tự nhiên để tương tác với người lái. Việc thu thập dữ liệu lớn (Big Data) từ các phương tiện sẽ cho phép các mô hình AI tự cải thiện theo thời gian, tạo ra một chu kỳ phát triển liên tục.

6.2. So sánh các hệ thống tiên phong Mobileye và Tesla Autopilot

MobileyeTesla Autopilot đại diện cho hai triết lý khác nhau trong việc phát triển ADAS. Mobileye, một công ty con của Intel, tập trung vào việc cung cấp các giải pháp phần cứng (chip EyeQ) và phần mềm cho nhiều nhà sản xuất ô tô khác nhau, nhấn mạnh vào các hệ thống đã được kiểm chứng và tuân thủ các tiêu chuẩn an toàn nghiêm ngặt. Ngược lại, Tesla phát triển một hệ thống tích hợp theo chiều dọc, từ phần cứng (chip FSD) đến phần mềm và thu thập dữ liệu. Cách tiếp cận của Tesla cho phép họ lặp lại và cập nhật nhanh hơn, nhưng cũng gây ra nhiều tranh cãi về mức độ an toàn và tự động hóa thực tế của hệ thống.

22/09/2025

Trích đoạn nội dung tài liệu

Chương 1: Giới thiệu. Trình bày bao quát về các nội dung của đề tài gồm giới thiệu, tình hình nghiên cứu, mục tiêu, giới hạn, bố cục.  Chương 2: Cơ sở lý thuyết. Trình bày chi tiết tất cả lý thuyết áp dụng trong đề tài.

 Chương 3: Thiết kế hệ thống. Nêu ra các yêu cầu thiết kế, sơ đồ khối và trình bày chi tiết từng bước thiết kế trong từng thành phần của hệ thống.  Chương 4: Kết quả thực hiện và đánh giá. Trình bày những kết quả đạt được sau khi thực hiện thực nghiệm, đánh giá kết quả so với mục tiêu đặc ra trước đó và những nhược điểm trong quá trình thực nghiệm.

 Chương 5: Kết luận và hướng phát triển. Đưa ra kết luận của đề tài và hướng phát triển để hoàn thiện đề tài. 3 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2. Khái niệm về Multitask Learning Yêu cầu thực tiễn đã phát sinh nhu cầu về một thuật toán cho phép thực hiện nhiều nhiệm vụ đồng thời nhưng chỉ sử dụng một mạng nơ-ron duy nhất.

Mỗi một nhiệm vụ sẽ bổ trợ cho những nhiệm vụ còn lại trong quá trình dự báo. Đó chính là học đa nhiệm (Multitask Learning). Ví dụ:  Trong lĩnh vực về xe tự hành, chúng phải nhận diện được nhiều đối tượng khác nhau trong một bức hình đầu vào như: biển báo, vạch kẻ đường, người đi bộ, đèn giao thông, các loại phương tiện,.  Trong lĩnh vực về thời trang ta cần phân biệt đồng thời loại sản phẩm thời trang kèm theo các đặc tính về màu sắc sản phẩm (xanh, đỏ, tím, vàng,.), giới tính (nam, nữ), độ tuổi (người già, thanh niên, trẻ em), mùa (trang phục mùa đông, mùa hạ,.

Như vậy chúng ta cần sử dụng Multitask Learning để thực hiện nhiều nhiệm vụ cùng lúc để phân loại các đối tượng khác nhau trên cùng một ảnh đầu vào để nhận biết xem chúng có thực sự xuất hiện trong ảnh hay không. Kiến trúc thuật toán Multitask Learning Thông thường học đa nhiệm có hai giai đoạn:  Giai đoạn một: sẽ trích xuất ra các đặc trưng của hình ảnh đầu vào được thực hiện bởi một mạng CNN. Sau đó, các đặc trưng được trích xuất được dùng để nhận diện ra các đối tượng ở giai đoạn hai.  Giai đoạn hai: tiến hành thực thi nhiều nhiệm vụ phân loại cùng lúc cho các đối tượng khác nhau (biển báo, vạch kẻ làn đường, phương tiện,.

Như được minh họa trong Hinh 2.1, đầu vào (x1, xj, xd,.) cho việc phân loại nhị phân các đối tượng khác nhau là các trích xuất đặc trưng ở giai đoạn một. Đầu ra gồm các đơn vị đầu ra (Output units y1, y2, y3) hay còn được gọi là multi head, mỗi một đơn vị sẽ tính toán khả năng xảy ra cho một loại nhãn nào đó hay một nhiệm vụ phân loại nhị phân. Đồng thời các đơn 4 vị đầu ra cũng chia sẻ thông tin chung cho các lớp phía trước, để những bài toán có nhiều nhiệm vụ có thể trao đổi thông tin lẫn nhau giữa các nhiệm vụ đó.1 Minh họa kiến trúc Multitask Learning 2. Lợi ích của Multitask Learning Tiết kiệm tài nguyên tính toán: không cần phải huấn luyện mỗi một nhiệm vụ một mô hình mà dùng một mô hình có thể thực hiện kết hợp và hỗ trợ nhiều nhiệm vụ khác nhau.

Kết quả từ mô hình Multitask Learning có độ chính xác trong nhiều trường hợp cao hơn so với huấn luyện từng mô hình riêng lẻ. Nguyên nhân là bởi có sự hỗ trợ lẫn và chia sẻ cho nhau giữa các nhiệm vụ. Những đặc trưng tốt được học từ những nhiệm vụ này sẽ giúp ích cho việc phân loại của nhiệm vụ khác. Sử dụng Multitask Learning trong mạng nơ-ron 2.

Hard Parameter Sharing Chia sẽ thông số cứng (hard paramerter sharing) là một trong những phương pháp được dùng phổ biến nhất trong mạng nơ-ron. Nó hoạt động thông qua việc chia sẻ các lớp ẩn của tất cả những nhiệm vụ trong mạng và chỉ giữ lại các thông tin của các lớp ngõ ra là có sự khác nhau như được mô tả ở Hình 2. Chia sẽ tham số cứng có thể làm giảm overfitting (model quá khớp với dữ liệu tập đào tạo nhưng với tập kiểm thử thì độ chính xác thấp), với việc chia sẻ thông tin các lớp ẩn (hidden 5 layer) giữa các nhiệm vụ khác nhau, bắt buộc mô hình (model) phải học những biểu diễn tổng thể một cách phù hợp ở trên nhiều nhiệm vụ, từ đó sẽ giảm đi rất nhiều overfitting trong một nhiệm vụ cụ thể bất kì.2 Hard Parameter Sharing 2. Soft Parameter Sharing Soft Parameter Sharing được thể hiện ở Hình 2.3, mỗi một nhiệm vụ khác nhau sẽ có một mô hình khác nhau và có thông số riêng cho mỗi nhiệm vụ, những thông số giữa những nhiệm vụ sẽ bị ràng buộc sau theo các chuẩn làm cho những thông số này đạt được độ tương đồng tốt nhất giữa những nhiệm vụ.3 Soft Parameter Sharing 2.

Kiến trúc mạng HybridNets HybridNets [24] là mạng đa tác vụ (Multitask Learning) được xuất bản từ bài báo “HybridNets: End-to-End Perception Network”, mạng gồm một bộ mã hóa chia sẻ và hai bộ giải mã riêng biệt để giải quyết các tác vụ riêng biệt. Độ phân giải của mỗi cấp bản đồ đặc 6 trưng Pi đại diện cho cấp đặc trưng với độ phân giải 1/2i của các hình ảnh đầu vào. Ví dụ nếu độ phân giải đầu vào là 640x384 thì P2 đại diện cho đặc trưng cấp 2 có độ phân giải là (640/22, 384/22) = (160, 96), tương tự với P7 đại diện cho đặc trưng cấp 7 có độ phân giải là (5,3).4 Kiến trúc mạng HybridNets Hình 2.5 Kết quả mạng HybridNets 7 Kiến trúc HybridNets được thể hiện ở Hình 2.4 có một bộ mã hóa: mạng xương sống (Backbone) và mạng cổ (Neck); hai bộ giải mã: đầu phát hiện (Detection Head) và đầu phân đoạn (Segmentation Head). Mạng xương sống tạo ra 5 bản đồ đặc trưng từ P1 đến P5, bằng cách lấy mẫu xuống bản đồ đặc trưng P5 ta lấy được 2 bản đồ đặc trưng P6 và P7.

Kết quả suy luận của HybridNets được thể hiện ở Hình 2.5 thực hiện ba nhiệm vụ, bao gồm: phát hiện các phương tiện giao thông, phân đoạn khu vực có thể điều khiển và phân đoạn vạch kẻ làn đường.5 phần màu xanh lá là phần đường xe có thể lái, phần xanh dương là vạch kẻ làn đường, các ô chữ nhật là màu cam là phương tiện giao thông. Sử dụng mạng EfficientNet làm mạng Backbone 2. Giới thiệu về EfficientNet Vào năm 2019, nhóm tác giả nghiên cứu của Google Brain đã xuất bản thành công bài báo liên quan tới mô hình phổ biến họ CNN mới, có tên gọi là EfficientNet [12]. Mô hình EfficientNet mới này vừa cải thiện hiệu suất, vừa làm tăng độ chính xác của mô hình bằng việc giảm FLOPS (thông số đánh giá tốc độ huấn luyện của mạng neural) và giảm số tham số của quá trình tính toán xuống rất tốt so với các mô hình mạng phổ biến khác.

Bài báo đã mang lại những lợi ích tuyệt vời sau:  Tạo ra sẵn kiến trúc mạng cơ sở đơn giản kích thước di động: EfficientNet-B0.  Cung cấp và trình bày chi tiết về phương pháp Compound Scaling (mở rộng kết hợp) để có thể đạt được độ chính xác tối ưu nhất bằng việc tăng kích thước mô hình mạng một cách hợp lý. Kiến trúc mạng cơ sở EfficientNet-B0 Trong bài báo về mô hình EfficientNet [12], tác giả cũng sử dụng Neural Architecture Search [17] (phương pháp tự động hóa việc thiết kế kiến trúc mạng neural) để xây dựng một kiến trúc mô hình mạng cơ sở hiệu quả EfficientNet-B0 được thể hiện ở Hình 2. Kiến trúc mạng B0 này đã đạt được độ chính xác 77.3% trên ImageNet với 5.3M tham số và 0.39B FLOPS ít hơn rất nhiều so với các mạng khác.6 Kiến trúc mạng EfficientNet-B0 Khối xây dựng chính trong cấu trúc của EfficientNet-B0 là khối MBConv được thể hiện ở Hình 2.

Trong khối này có kết nối tắt nối tiếp giữa phần cuối và phần đầu của khối. Phần đầu vào của khối có thể mở rộng bằng lớp tích chập với kích thước 1x1 để tăng độ sâu hay số kênh của bản đồ đặc trưng. Sau đó sử dụng lớp tích chập theo chiều sâu kích thước 3x3 và lớp tích chập điểm kích thước 1x1 để số kênh ngõ ra được giảm xuống. Các lớp rộng sẽ nằm giữa khối trong khi các lớp hẹp hơn và kênh nhỏ sẽ được liên kết với nhau.

Cấu trúc náy sẽ làm giảm nhiều số lượng phép tính toán và tham số xuống để quá trình huấn luyện mạng nhanh hơn. Phương pháp mở rộng mô hình mạng nơ-ron Như được thể hiện trong Hình 2.8, việc mở rộng một trong ba kích thước của mạng nơ-ron gồm: độ sâu (Depth) ứng với số lớp của mạng, độ rộng (Width) ứng với số bộ lọc của mỗi lớp tích chập, độ phân giải (Resolution) ứng với chiều cao và chiều rộng của hình ảnh đầu vào. Đều cải thiện độ chính xác, tuy nhiên với mô hình lớn độ chính xác sẽ đạt tới bão hòa. Để vừa đạt hiệu suất vừa đạt độ chính xác tốt hơn thì phải có sự cân bằng hợp lý giữa các kích thước (độ sâu, độ rộng, độ phân giải) trong quá trình mở rộng mạng.8 Mở rộng mô hình mạng nơ-ron.

Nhóm tác giả của Google Brain đã nghiên cứu một kỹ thuật mở rộng mạng hiệu quả và đơn giản bằng cách sử dụng hệ số kết hợp cho việc mở rộng mạng nơ-ron đồng thời theo ba hướng độ sâu, độ rộng, độ phân giải theo công thức 2.1) Trong đó, d là độ sâu, w là độ rộng, r là độ phân giải. 𝛼, 𝛽, 𝛾 là các tham số tương ứng với việc gán giá trị tài nguyên lần lượt cho độ sâu, độ rộng, độ phân giải. 𝜃 là hệ số kết hợp cố định kiểm soát toàn bộ lượng tài nguyên sẵn có. Sử dụng tìm kiếm ô lưới để có thể xác định được tham số α, β, γ.

Hệ số kết hợp 𝜃 sẽ được đặt cố định là các sô nguyên từ 1 đến 7 ứng với mô hình lớn dần, kết hợp với công thức 2.1 ta có thể tìm được bộ 3 tham số α, β, γ. Ứng với 𝜃 từ 1 đến 7 sẽ cho ra kết quả kiến trúc các mạng EfficientNet-B1 đến EfficientNet-B7.9 So sánh kết quả các mạng EfficientNet với mạng khác Hình 2.9 thể hiện các kết quả so sánh của các mạng EfficientNet được sử dụng phương pháp mở rộng ở trên so với các mạng tích chập phổ biến khác. Các mô hình từ EfficientNet-B1 đến EfficientNet-B7 đều có độ chính xác tương đương các mạng nơ-ron khác nhưng có tổng số các tham số và số FLOPs nhỏ hơn rất nhiều các mạng nơ-ron khác, đồng thời các mạng EfficientNet cũng có kích thước bé hơn nhiều những mạng khác. Sử dụng mạng BiFPN làm mạng Neck 2.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ