YOLOX so với YOLOv9 : So sánh kỹ thuật
Việc lựa chọn kiến trúc phù hợp để phát hiện đối tượng là một quyết định quan trọng, ảnh hưởng đến tốc độ, độ chính xác và khả năng triển khai của các dự án thị giác máy tính. Bài phân tích này so sánh YOLOX , một mô hình không neo chủ chốt được phát hành năm 2021, và YOLOv9 , một kiến trúc tiên tiến được giới thiệu năm 2024, tận dụng Thông tin Gradient Lập trình (PGI).
Trong khi YOLOX chuyển đổi mô hình theo hướng phát hiện không có mỏ neo, YOLOv9 Giới thiệu các cơ chế mới để lưu trữ thông tin trong các mạng sâu, cung cấp các chỉ số hiệu suất vượt trội. Hướng dẫn này phân tích kiến trúc, điểm chuẩn và các trường hợp sử dụng lý tưởng của chúng để giúp bạn lựa chọn mô hình phù hợp nhất với nhu cầu của mình.
YOLOX: Người tiên phong không cần neo
YOLOX được phát hành nhằm thu hẹp khoảng cách giữa cộng đồng nghiên cứu và các ứng dụng công nghiệp bằng cách đơn giản hóa đầu phát hiện và loại bỏ sự phụ thuộc vào các hộp neo được xác định trước.
Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, và Jian Sun
Tổ chức: Megvii
Ngày: 18-07-2021
Arxiv: arXiv:2107.08430
GitHub: Megvii-BaseDetection/YOLOX
Tài liệu: Tài liệu YOLOX
Điểm nổi bật về kiến trúc
YOLOX đã giới thiệu kiến trúc đầu tách rời , tách biệt các tác vụ phân loại và hồi quy. Sự tách biệt này cho phép mô hình hội tụ nhanh hơn và đạt được độ chính xác cao hơn. Nó cũng sử dụng cơ chế không neo , giúp loại bỏ nhu cầu phân tích cụm để xác định kích thước hộp neo tối ưu, giúp mô hình mạnh mẽ hơn với các hình dạng vật thể khác nhau. Hơn nữa, YOLOX sử dụng SimOTA để gán nhãn, coi quy trình này như một bài toán vận chuyển tối ưu để cải thiện độ ổn định khi huấn luyện.
Điểm mạnh và Điểm yếu
- Ưu điểm: Thiết kế không cần neo giúp đơn giản hóa quá trình điều chỉnh siêu tham số. Đầu tách rời thường mang lại độ chính xác cao hơn cho các tác vụ định vị so với đầu ghép nối cùng thời.
- Điểm yếu: Là mô hình năm 2021, nó thiếu các tối ưu hóa hiện đại thường thấy trong các kiến trúc mới hơn. Nó có thể cần nhiều dữ liệu đào tạo hơn để đạt hiệu suất tối đa so với các mô hình sử dụng kỹ thuật tăng cường dữ liệu và tổng hợp lớp tiên tiến.
YOLOv9 : Thông tin Gradient có thể lập trình
YOLOv9 đại diện cho bước tiến đáng kể, giải quyết vấn đề "thắt nút cổ chai thông tin" vốn có trong mạng nơ-ron sâu.
Tác giả: Chien-Yao Wang, Hong-Yuan Mark Liao
Tổ chức: Viện Khoa học Thông tin, Academia Sinica
Ngày: 2024-02-21
Arxiv: arXiv:2402.13616
GitHub: WongKinYiu/yolov9
Tài liệu: Tài liệu Ultralytics YOLOv9
Điểm nổi bật về kiến trúc
YOLOv9 giới thiệu Thông tin Gradient Lập trình (PGI) và Mạng Tổng hợp Lớp Hiệu quả Tổng quát (GELAN) . PGI ngăn ngừa việc mất thông tin đầu vào quan trọng khi dữ liệu đi qua các lớp sâu, đảm bảo tạo gradient đáng tin cậy cho việc cập nhật mô hình. GELAN tối ưu hóa việc sử dụng tham số, cho phép mô hình nhẹ nhưng vẫn chính xác. Những cải tiến này cho phép YOLOv9 vượt trội hơn hẳn so với các thế hệ trước về cả hiệu suất và độ chính xác trung bình ( mAP ) .
Điểm mạnh và Điểm yếu
- Điểm mạnh: Tỷ lệ chính xác trên tham số vượt trội, mang lại hiệu quả cao cho các ứng dụng thời gian thực. Kiến trúc này bảo toàn luồng thông tin tốt hơn so với các phiên bản trước, giúp phát hiện các vật thể nhỏ tốt hơn.
- Điểm yếu: Là một kiến trúc mới hơn, nó có thể yêu cầu cập nhật CUDA trình điều khiển và hỗ trợ phần cứng so với các mẫu cũ.
So sánh hiệu suất
Bảng sau đây so sánh hiệu suất của YOLOX và YOLOv9 trên tập dữ liệu COCO . YOLOv9 liên tục chứng minh cao hơn mAP đạt điểm với ít tham số hơn, làm nổi bật hiệu quả của kiến trúc GELAN.
| Mô hình | Kích thước (pixels) | mAP giá trị 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | Tham số (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| 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 |
Phân tích: YOLOv9 mang lại sự nâng cấp đáng kể về mật độ hiệu suất. Ví dụ, YOLOv9c đạt 53,0% mAP chỉ với 25,3 triệu tham số , trong khi YOLOX-L cần 54,2 triệu tham số để đạt được điểm số thấp hơn là 49,7% mAP . Điều này cho thấy YOLOv9 có hiệu quả gấp đôi về mặt sử dụng tham số cho cấp độ chính xác này.
Hiệu quả là quan trọng
Khi triển khai đến các thiết bị biên , việc xem xét FLOP và Tham số cũng quan trọng như mAP . YOLOv9 Kiến trúc GELAN giúp giảm đáng kể chi phí tính toán, giúp thiết bị chạy mát hơn và kéo dài tuổi thọ pin khi triển khai trên thiết bị di động.
Các Ultralytics Lợi thế
Trong khi YOLOX là một kho lưu trữ độc lập mạnh mẽ, sử dụng YOLOv9 trong Hệ sinh thái Ultralytics mang lại những lợi thế riêng biệt cho các nhà phát triển và nhà nghiên cứu.
Dễ sử dụng và tích hợp
Các Ultralytics Khung thống nhất tương tác mô hình. Bạn có thể đào tạo, xác thực và triển khai YOLOv9 sử dụng API Python đơn giản, trực quan. Điều này trái ngược với cơ sở mã YOLOX, thường yêu cầu cấu hình thủ công các biến môi trường và đường dẫn tập dữ liệu.
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Train the model on a custom dataset with a single line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Hệ sinh thái được duy trì tốt
Ultralytics Các mô hình được hưởng lợi từ các bản cập nhật liên tục, sửa lỗi và hỗ trợ cộng đồng. Việc tích hợp với Ultralytics HUB cho phép MLOps liền mạch, cho phép các nhóm quản lý tập dữ liệu, track các thí nghiệm và triển khai các mô hình theo nhiều định dạng khác nhau ( ONNX , TensorRT , CoreML ) mà không cần viết các tập lệnh xuất phức tạp.
Cân bằng hiệu suất và hiệu quả bộ nhớ
Ultralytics YOLO Các mô hình được thiết kế để đạt được sự cân bằng thực tế giữa tốc độ và độ chính xác. Hơn nữa, chúng thường thể hiện yêu cầu bộ nhớ thấp hơn trong quá trình đào tạo so với các kiến trúc cũ hoặc các mô hình dựa trên bộ biến áp nặng. Hiệu quả này giúp giảm chi phí điện toán đám mây và giúp việc đào tạo có thể thực hiện được trên các GPU cấp độ người dùng phổ thông.
Tính linh hoạt
Trong khi YOLOX chủ yếu là một máy dò đối tượng, Ultralytics Framework mở rộng khả năng của các mô hình được hỗ trợ. Người dùng có thể dễ dàng chuyển đổi giữa các tác vụ như phân đoạn thực thể , ước lượng tư thế và phát hiện hộp giới hạn định hướng (OBB) bằng cú pháp và quy trình làm việc tương tự, một tính linh hoạt mà các kho lưu trữ nghiên cứu độc lập thường thiếu.
Các trường hợp sử dụng lý tưởng
Khi nào nên chọn YOLOv9
- Hệ thống tự động: Độ chính xác cao của YOLOv9 -E lý tưởng cho các loại xe tự hành khi việc phát hiện các chướng ngại vật nhỏ ở khoảng cách xa là rất quan trọng đối với sự an toàn.
- Phân tích thời gian thực: Đối với quản lý bán lẻ hoặc giao thông , YOLOv9c cung cấp tốc độ khung hình cao và khả năng phát hiện chính xác.
- Edge AI: Hiệu quả kiến trúc của GELAN làm cho YOLOv9t và YOLOv9s trở nên hoàn hảo để triển khai trên các thiết bị như NVIDIA Jetson hoặc Raspberry Pi.
Khi nào nên chọn YOLOX
- Tích hợp kế thừa: Nếu đường ống sản xuất hiện có đã được thiết kế kỹ lưỡng xung quanh định dạng đầu neo YOLOX cụ thể.
- Nghiên cứu học thuật: Các nhà nghiên cứu đặc biệt quan tâm đến hành vi của các đầu tách rời trong các máy dò không có mỏ neo đời đầu có thể thấy YOLOX là cơ sở có giá trị để so sánh.
Kết luận
Cả hai kiến trúc đều đã khẳng định được vị thế của mình trong lịch sử thị giác máy tính. YOLOX đã thành công trong việc thách thức hiện trạng dựa trên neo vào năm 2021. Tuy nhiên, YOLOv9 đại diện cho tiêu chuẩn hiện đại, kết hợp nhiều năm tiến bộ trong tối ưu hóa luồng gradient và tổng hợp lớp.
Đối với hầu hết các phát triển mới, YOLOv9 là lựa chọn được khuyến nghị . Hiệu suất vượt trội trên mỗi tham số, kết hợp với tính dễ sử dụng, hiệu quả đào tạo và các tùy chọn triển khai mạnh mẽ được cung cấp bởi Ultralytics hệ sinh thái, đảm bảo con đường nhanh hơn từ ý tưởng đến sản xuất.
Khám phá các tùy chọn hiện đại khác trong hệ sinh thái, chẳng hạn như YOLO11 và YOLOv8 , để tìm ra giải pháp phù hợp nhất với các hạn chế ứng dụng cụ thể của bạn.