YOLOv10 so với YOLOv9: So sánh kỹ thuật
Việc lựa chọn mô hình phát hiện đối tượng phù hợp là rất quan trọng đối với bất kỳ dự án thị giác máy tính nào, ảnh hưởng trực tiếp đến hiệu suất, tốc độ và tính khả thi khi triển khai. Khi lĩnh vực này phát triển nhanh chóng, việc cập nhật thông tin về các kiến trúc mới nhất là rất quan trọng. Trang này cung cấp so sánh kỹ thuật chi tiết giữa hai mô hình hiện đại: YOLOv10 và YOLOv9. Chúng ta sẽ phân tích các cải tiến kiến trúc, số liệu hiệu suất và các trường hợp sử dụng lý tưởng của chúng để giúp bạn đưa ra quyết định sáng suốt dựa trên các yếu tố như độ chính xác, tốc độ và yêu cầu tài nguyên.
YOLOv10: Hiệu quả đầu cuối (End-to-End) theo thời gian thực
YOLOv10 là một mô hình tiên tiến từ các nhà nghiên cứu tại Đại học Thanh Hoa, được phát hành vào tháng 5 năm 2024. Nó được thiết kế để mang lại hiệu suất thời gian thực vượt trội bằng cách tạo ra một quy trình phát hiện đối tượng thực sự từ đầu đến cuối. Đổi mới nổi bật là việc loại bỏ Non-Maximum Suppression (NMS), một bước xử lý hậu kỳ thường làm tăng độ trễ suy luận. Điều này làm cho YOLOv10 trở thành một lựa chọn hiệu quả cao cho các ứng dụng mà tốc độ là rất quan trọng.
Chi tiết kỹ thuật:
- Tác giả: Ao Wang, Hui Chen, Lihao Liu, et al.
- Tổ chức: Đại học Thanh Hoa
- Ngày: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- Tài liệu: https://docs.ultralytics.com/models/yolov10/
Kiến trúc và các tính năng chính
YOLOv10 giới thiệu một số tiến bộ kiến trúc để vượt qua các ranh giới của sự đánh đổi giữa tốc độ và độ chính xác.
- Huấn luyện không NMS: Đổi mới cốt lõi là việc sử dụng Gán Nhãn Kép Nhất Quán trong quá trình huấn luyện. Chiến lược này cung cấp sự giám sát phong phú cho mô hình đồng thời cho phép nó hoạt động mà không cần NMS trong quá trình suy luận. Bằng cách loại bỏ nút thắt cổ chai hậu xử lý này, YOLOv10 đạt được độ trễ thấp hơn và đơn giản hóa quy trình triển khai.
- Thiết kế hướng đến hiệu quả và độ chính xác toàn diện: Các tác giả đã tiến hành tối ưu hóa toàn diện các thành phần của mô hình. Điều này bao gồm một lớp classification head (đầu phân loại) gọn nhẹ để giảm tải tính toán, giảm tỷ lệ lấy mẫu không gian-kênh được tách rời để bảo toàn thông tin hiệu quả hơn và thiết kế khối được hướng dẫn theo thứ hạng để loại bỏ sự dư thừa tính toán. Để tăng độ chính xác với chi phí tối thiểu, kiến trúc kết hợp các phép tích chập hạt nhân lớn và cơ chế tự chú ý một phần (PSA).
Điểm mạnh và Điểm yếu
Điểm mạnh:
- Hiệu suất cực cao: YOLOv10 được tối ưu hóa để có độ trễ và chi phí tính toán tối thiểu, khiến nó trở thành một trong những trình phát hiện đối tượng nhanh nhất hiện có.
- Triển khai Đầu cuối (End-to-End): Thiết kế không NMS loại bỏ các bước xử lý hậu kỳ, đơn giản hóa việc triển khai và giảm thời gian suy luận.
- Cân bằng hiệu suất tuyệt vời: Nó đạt được sự cân bằng hàng đầu giữa tốc độ và độ chính xác, thường vượt trội so với các mô hình khác ở quy mô tương tự.
- Tích hợp Ultralytics: YOLOv10 được tích hợp liền mạch vào hệ sinh thái Ultralytics. Điều này cung cấp cho người dùng trải nghiệm được tối ưu hóa, bao gồm API Python đơn giản, tài liệu phong phú và sự hỗ trợ của một framework được duy trì tốt.
Điểm yếu:
- Tính mới: Vì là một mô hình rất mới, cộng đồng và tài nguyên của bên thứ ba vẫn đang phát triển so với các mô hình đã được thiết lập như Ultralytics YOLOv8.
Các trường hợp sử dụng lý tưởng
YOLOv10 là lựa chọn lý tưởng cho các ứng dụng mà hiệu suất và hiệu quả thời gian thực là ưu tiên cao nhất.
- Edge AI: Độ trễ thấp và kích thước nhỏ gọn khiến nó trở nên hoàn hảo để triển khai trên các thiết bị hạn chế về tài nguyên như NVIDIA Jetson và các nền tảng di động.
- Phân tích video tốc độ cao: Các tình huống yêu cầu phát hiện ngay lập tức trong luồng video, chẳng hạn như quản lý giao thông hoặc giám sát an ninh trực tiếp.
- Hệ thống tự động: Ứng dụng trong robot và máy bay không người lái, nơi đưa ra quyết định nhanh chóng là điều cần thiết.
YOLOv9: Thông tin Gradient có thể lập trình
Được giới thiệu vào tháng 2 năm 2024, YOLOv9 là một tiến bộ đáng kể từ các nhà nghiên cứu tại Viện Khoa học Thông tin, Academia Sinica của Đài Loan. Nó giải quyết một vấn đề cơ bản trong mạng nơ-ron sâu: mất thông tin khi dữ liệu truyền qua các lớp kế tiếp. YOLOv9 giới thiệu Thông tin Gradient Có thể Lập trình (PGI) để đảm bảo rằng thông tin gradient đáng tin cậy có sẵn cho các bản cập nhật mạng, dẫn đến học tập hiệu quả hơn và độ chính xác cao hơn.
Chi tiết kỹ thuật:
- Tác giả: Chien-Yao Wang, Hong-Yuan Mark Liao
- Tổ chức: Institute of Information Science, Academia Sinica, Taiwan
- Ngày: 2024-02-21
- Arxiv: https://arxiv.org/abs/2402.13616
- GitHub: https://github.com/WongKinYiu/yolov9
- Tài liệu: https://docs.ultralytics.com/models/yolov9/
Kiến trúc và các tính năng chính
Kiến trúc của YOLOv9 được thiết kế để tối đa hóa khả năng lưu giữ thông tin và hiệu quả học tập.
- Thông tin Gradient có thể lập trình (PGI): Khái niệm mới này giúp tạo ra các gradient đáng tin cậy để cập nhật trọng số mạng, giải quyết hiệu quả vấn đề tắc nghẽn thông tin và ngăn chặn các chi tiết bị mất trong các kiến trúc sâu.
- Mạng tổng hợp lớp hiệu quả tổng quát (GELAN): YOLOv9 giới thiệu GELAN, một kiến trúc mạng mới giúp tối ưu hóa việc sử dụng tham số và hiệu quả tính toán. Bằng cách kết hợp các điểm mạnh của các kiến trúc trước đây, GELAN cho phép YOLOv9 đạt được hiệu suất cao mà không bị cấm đoán về mặt tính toán.
Điểm mạnh và Điểm yếu
Điểm mạnh:
- Độ chính xác cao: YOLOv9 đạt được độ chính xác cao nhất, với biến thể lớn nhất (YOLOv9-E) thiết lập một chuẩn mực mới cho mAP trên bộ dữ liệu COCO.
- Kiến trúc hiệu quả: Sự kết hợp của PGI và GELAN mang lại hiệu suất tuyệt vời với số lượng tham số ít hơn so với các mô hình khác có mục tiêu đạt độ chính xác tương đương.
- Bảo toàn thông tin: Thiết kế cốt lõi của nó giảm thiểu hiệu quả sự mất mát thông tin, dẫn đến biểu diễn đặc trưng tốt hơn và phát hiện các đối tượng khó phát hiện.
- Hệ sinh thái Ultralytics: Giống như YOLOv10, YOLOv9 được hưởng lợi từ việc tích hợp vào framework Ultralytics, mang lại sự dễ sử dụng, tài liệu toàn diện và quyền truy cập vào một bộ công cụ mạnh mẽ để huấn luyện và triển khai.
Điểm yếu:
- Độ trễ cao hơn YOLOv10: Mặc dù hiệu quả đối với lớp độ chính xác của nó, nhưng nó thường có độ trễ suy luận cao hơn so với YOLOv10, như được thấy trong bảng hiệu suất.
- Độ phức tạp: Các khái niệm về PGI và auxiliary reversible branches (nhánh khả nghịch phụ trợ) làm tăng thêm một lớp phức tạp cho kiến trúc so với các thiết kế đơn giản hơn.
Các trường hợp sử dụng lý tưởng
YOLOv9 rất phù hợp cho các ứng dụng mà việc đạt được độ chính xác cao nhất có thể là mục tiêu chính và tài nguyên tính toán ít bị hạn chế hơn.
- Phân tích độ phân giải cao: Các tình huống đòi hỏi phân tích chi tiết các hình ảnh lớn, chẳng hạn như trong chẩn đoán hình ảnh y tế hoặc phân tích ảnh vệ tinh.
- Hệ thống an ninh tiên tiến: Môi trường giám sát phức tạp, nơi xác định chính xác một loạt các đối tượng là rất quan trọng đối với an ninh.
- Kiểm soát chất lượng: Các ứng dụng công nghiệp, nơi cần phát hiện các lỗi nhỏ với độ chính xác cao để kiểm soát chất lượng sản xuất.
Hiệu năng và điểm chuẩn: YOLOv10 so với YOLOv9
Bảng sau cung cấp so sánh hiệu suất chi tiết giữa các tỷ lệ khác nhau của mô hình YOLOv10 và YOLOv9 trên bộ dữ liệu COCO. Các số liệu minh họa rõ ràng sự đánh đổi thiết kế giữa hai họ.
YOLOv10 liên tục chứng minh độ trễ thấp hơn và hiệu quả tham số lớn hơn trên tất cả các kích thước mô hình có thể so sánh được. Ví dụ: YOLOv10-B đạt được mAP tương tự như YOLOv9-C nhưng với độ trễ ít hơn 46% và số lượng tham số ít hơn 25%. Điều này làm nổi bật sức mạnh của YOLOv10 trong các ứng dụng thời gian thực.
Mặt khác, YOLOv9-E đạt được mAP cao nhất là 55.6%, khiến nó trở thành lựa chọn hàng đầu cho các tình huống mà độ chính xác là yếu tố không thể thương lượng, ngay cả khi phải trả giá bằng độ trễ cao hơn và nhiều tham số hơn.
Mô hình | Kích thước (pixels) |
mAPval 50-95 |
Tốc độ CPU ONNX (ms) |
Tốc độ T4 TensorRT10 (ms) |
Tham số (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Kết luận: Bạn nên chọn mô hình nào?
Việc lựa chọn giữa YOLOv10 và YOLOv9 hoàn toàn phụ thuộc vào nhu cầu cụ thể của dự án.
-
Chọn YOLOv10 nếu các ràng buộc chính của bạn là tốc độ, độ trễ và hiệu quả tính toán. Thiết kế end-to-end, không NMS của nó làm cho nó trở thành lựa chọn vượt trội cho xử lý video thời gian thực, triển khai trên các thiết bị biên và bất kỳ ứng dụng nào mà suy luận nhanh chóng và hiệu quả là rất quan trọng.
-
Chọn YOLOv9 nếu mục tiêu chính của bạn là đạt được độ chính xác phát hiện cao nhất có thể. Kiến trúc cải tiến của nó vượt trội trong việc bảo toàn thông tin, làm cho nó trở nên lý tưởng cho các cảnh phức tạp và các ứng dụng có tính rủi ro cao, nơi độ chính xác quan trọng hơn nhu cầu về độ trễ thấp nhất tuyệt đối.
Cả hai mô hình đều là kiến trúc mạnh mẽ, hiện đại, được hưởng lợi rất nhiều từ việc tích hợp vào hệ sinh thái Ultralytics, giúp đơn giản hóa việc sử dụng và triển khai của chúng.
Khám phá các Mô hình Khác
Trong khi YOLOv10 và YOLOv9 đại diện cho những tiến bộ vượt bậc, hệ sinh thái Ultralytics hỗ trợ nhiều mô hình khác nhau. Đối với các nhà phát triển đang tìm kiếm một mô hình hoàn thiện, linh hoạt và cân bằng tốt, Ultralytics YOLOv8 vẫn là một lựa chọn tuyệt vời, hỗ trợ nhiều tác vụ thị giác máy tính ngoài việc phát hiện vật thể. Đối với những ai đang tìm kiếm những cải tiến mới nhất từ Ultralytics, hãy xem YOLO11. Bạn có thể khám phá thêm các so sánh trên trang so sánh mô hình của chúng tôi.