YOLOv7 so với YOLOX: So sánh kỹ thuật chi tiết
Việc lựa chọn mô hình phát hiện đối tượng tối ưu là một quyết định quan trọng đối với các dự án thị giác máy tính. Hiểu rõ những điểm mạnh và điểm yếu cụ thể của các kiến trúc khác nhau là chìa khóa để đạt được hiệu suất hàng đầu. Trang này cung cấp so sánh kỹ thuật về hai mô hình có ảnh hưởng, YOLOv7 và YOLOX, trình bày chi tiết các sắc thái kiến trúc, điểm chuẩn hiệu suất và các kịch bản triển khai lý tưởng của chúng.
YOLOv7: Độ chính xác cao và phát hiện hiệu quả
YOLOv7, được giới thiệu vào tháng 7 năm 2022, nhanh chóng thiết lập các tiêu chuẩn mới cho các công cụ phát hiện đối tượng theo thời gian thực bằng cách tối ưu hóa cả hiệu quả huấn luyện và tốc độ suy luận. Nó thể hiện một bước tiến đáng kể trong việc cân bằng tốc độ và độ chính xác cho các ứng dụng khắt khe.
Tác giả: Chien-Yao Wang, Alexey Bochkovskiy và Hong-Yuan Mark Liao
Tổ chức: Viện Khoa học Thông tin, Academia Sinica, Đài Loan
Ngày: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Docs: https://docs.ultralytics.com/models/yolov7/
Kiến trúc và các tính năng chính
YOLOv7 giới thiệu một số cải tiến kiến trúc được trình bày chi tiết trong bài báo của mình. Một thành phần quan trọng là Mạng Tổng Hợp Lớp Hiệu Quả Mở Rộng (E-ELAN), giúp tăng cường khả năng học hỏi của mạng mà không làm gián đoạn đường dẫn gradient, cải thiện khả năng trích xuất đặc trưng. Mô hình này cũng sử dụng các kỹ thuật mở rộng nâng cao phù hợp với các mô hình dựa trên ghép nối và sử dụng "trainable bag-of-freebies". Đây là những cải tiến trong quá trình huấn luyện, chẳng hạn như convolution tái tham số hóa theo kế hoạch và loss phụ trợ từ thô đến tinh, giúp cải thiện độ chính xác mà không làm tăng chi phí suy luận. Các tính năng này cho phép YOLOv7 đạt được kết quả hiện đại trong phát hiện đối tượng với kích thước mô hình cạnh tranh.
Hiệu suất và các trường hợp sử dụng
YOLOv7 vượt trội trong các tình huống đòi hỏi cả suy luận nhanh và độ chính xác cao. Các số liệu mAP và tốc độ ấn tượng của nó làm cho nó trở thành một lựa chọn mạnh mẽ cho các ứng dụng như phân tích video thời gian thực, hệ thống lái xe tự động và xử lý ảnh có độ phân giải cao. Trong các triển khai thành phố thông minh, YOLOv7 có thể được sử dụng để quản lý giao thông hoặc tăng cường hệ thống an ninh để phát hiện mối đe dọa ngay lập tức.
Điểm mạnh và Điểm yếu
- Ưu điểm: Cân bằng tốt giữa độ chính xác phát hiện và tốc độ suy luận. Sử dụng các kỹ thuật huấn luyện tiên tiến ("bag-of-freebies") để có hiệu suất tốt hơn mà không làm tăng đáng kể yêu cầu tính toán trong quá trình suy luận. Kiến trúc tích hợp các mô-đun tiên tiến như E-ELAN.
- Điểm yếu: Kiến trúc và quy trình đào tạo có thể phức tạp hơn so với các mô hình đơn giản hơn như YOLOv5. Đào tạo các mô hình YOLOv7 lớn hơn cũng đòi hỏi tài nguyên tính toán đáng kể, mặc dù suy luận vẫn nhanh.
YOLOX: Ưu việt không neo
YOLOX, được Megvii giới thiệu vào năm 2021, nổi bật với thiết kế không neo, giúp đơn giản hóa quá trình huấn luyện và hướng đến mục tiêu tăng cường khả năng tổng quát hóa. Bằng cách loại bỏ các hộp neo được xác định trước, YOLOX dự đoán trực tiếp vị trí của đối tượng, mang đến một cách tiếp cận khác cho việc phát hiện đối tượng.
Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, và Jian Sun
Tổ chức: Megvii
Ngày: 18-07-2021
Arxiv: https://arxiv.org/abs/2107.08430
GitHub: https://github.com/Megvii-BaseDetection/YOLOX
Tài liệu: https://yolox.readthedocs.io/en/latest/
Kiến trúc và các tính năng chính
YOLOX áp dụng một số cải tiến kiến trúc quan trọng. Cách tiếp cận không neo của nó loại bỏ sự cần thiết của các hộp neo, giảm độ phức tạp thiết kế và chi phí tính toán. Điều này làm cho nó thích ứng hơn với các kích thước và tỷ lệ khung hình đối tượng khác nhau, có khả năng cải thiện hiệu suất trên các bộ dữ liệu đa dạng như COCO. Nó cũng sử dụng một decoupled head (đầu tách rời) để phân loại và bản địa hóa, góp phần vào sự hội tụ nhanh hơn và cải thiện độ chính xác. YOLOX sử dụng các kỹ thuật tăng cường dữ liệu mạnh mẽ như MixUp và Mosaic và một chiến lược gán nhãn nâng cao gọi là SimOTA (Simplified Optimal Transport Assignment) để cải thiện hơn nữa hiệu quả đào tạo.
Hiệu suất và các trường hợp sử dụng
YOLOX đạt được sự cân bằng tốt giữa tốc độ và độ chính xác. Bản chất không neo của nó làm cho nó đặc biệt phù hợp cho các ứng dụng mà tỷ lệ đối tượng thay đổi đáng kể. Đây là một ứng cử viên mạnh mẽ cho các tác vụ yêu cầu phát hiện hiệu quả và chính xác, chẳng hạn như trong robotics và triển khai AI biên. Ví dụ: trong sản xuất, YOLOX có thể được sử dụng để kiểm tra chất lượng, tận dụng khả năng mạnh mẽ của nó đối với các hình dạng đối tượng đa dạng để phát hiện khuyết tật.
Điểm mạnh và Điểm yếu
- Ưu điểm: Thiết kế không mỏ neo giúp đơn giản hóa việc triển khai và quy trình huấn luyện. Tăng cường dữ liệu mạnh mẽ và phương pháp không mỏ neo cải thiện khả năng tổng quát hóa cho các bộ dữ liệu mới. Đầu ra tách rời và bản chất không mỏ neo góp phần vào suy luận hiệu quả.
- Điểm yếu: Mặc dù hiệu quả, nó có thể không phải là nhanh nhất trong số tất cả các mô hình YOLO, đặc biệt là so với các phiên bản được tối ưu hóa của YOLOv7 hoặc các mô hình Ultralytics mới hơn như YOLOv8. Hơn nữa, nó không phải là một phần của hệ sinh thái Ultralytics tích hợp, có khả năng thiếu sự tích hợp liền mạch với các công cụ như Ultralytics HUB.
Hiệu năng và điểm chuẩn: YOLOv7 so với YOLOX
Khi so sánh hai mô hình này, YOLOv7 thường đạt được độ chính xác (mAP) cao hơn cho các mô hình lớn hơn của nó, đẩy mạnh trạng thái hiện đại cho các detector thời gian thực tại thời điểm phát hành. Mặt khác, YOLOX cung cấp một loạt các mô hình có khả năng mở rộng rộng hơn, từ YOLOX-Nano rất nhỏ đến YOLOX-X lớn. Thiết kế không neo của YOLOX có thể mang lại lợi thế về tính đơn giản và khái quát hóa, trong khi phương pháp "túi quà miễn phí" của YOLOv7 tối đa hóa độ chính xác mà không làm tăng thêm chi phí suy luậ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) |
---|---|---|---|---|---|---|
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
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 |
Kết luận và Đề xuất
Cả YOLOv7 và YOLOX đều là những mô hình phát hiện đối tượng mạnh mẽ đã có những đóng góp đáng kể cho lĩnh vực này. YOLOv7 là một lựa chọn tuyệt vời cho các ứng dụng mà việc đạt được độ chính xác cao nhất có thể ở tốc độ thời gian thực là mục tiêu chính. YOLOX cung cấp một giải pháp thay thế không cần neo hấp dẫn, vượt trội trong khả năng tổng quát hóa và cung cấp một họ mô hình có khả năng mở rộng cao, phù hợp với nhiều ngân sách tính toán khác nhau.
Tuy nhiên, đối với các nhà phát triển và nhà nghiên cứu đang tìm kiếm khuôn khổ hiện đại, linh hoạt và thân thiện với người dùng nhất, các mô hình Ultralytics YOLO mới hơn như YOLOv8 và Ultralytics YOLO11 thường đưa ra một lựa chọn hấp dẫn hơn. Các mô hình này cung cấp một số lợi thế chính:
- Dễ sử dụng: Trải nghiệm người dùng được tinh giản với Python API đơn giản, tài liệu đầy đủ và các lệnh CLI đơn giản.
- Hệ sinh thái được duy trì tốt: Phát triển tích cực, cộng đồng mã nguồn mở vững mạnh, cập nhật thường xuyên và tích hợp liền mạch với các công cụ như Ultralytics HUB cho MLOps đầu cuối.
- Tính linh hoạt: Hỗ trợ nhiều tác vụ thị giác hơn là chỉ phát hiện đối tượng, bao gồm phân vùng (segmentation), phân loại (classification), ước tính tư thế (pose estimation) và phát hiện đối tượng theo hướng (OBB).
- Cân bằng hiệu suất: Sự cân bằng tuyệt vời giữa tốc độ và độ chính xác, phù hợp với nhiều tình huống thực tế khác nhau, từ thiết bị biên đến máy chủ đám mây.
- Hiệu quả huấn luyện: Quy trình huấn luyện hiệu quả, các trọng số đã được huấn luyện trước có sẵn và thời gian hội tụ nhanh hơn.
Khám phá các Mô hình Khác
Để khám phá thêm, hãy xem xét các so sánh liên quan đến YOLOv7, YOLOX và các mô hình liên quan khác sau:
- YOLOv7 so với YOLOv8
- YOLOv5 so với YOLOX
- RT-DETR so với YOLOv7
- Khám phá các mô hình mới nhất như YOLOv10 và YOLO11.