YOLOv5 So sánh kỹ thuật giữa YOLOX và các kiến trúc phát hiện đối tượng khác.
Trong bối cảnh thị giác máy tính đang phát triển nhanh chóng, cuộc tranh luận giữa các bộ dò dựa trên neo và không dựa trên neo luôn là một chủ đề trọng tâm. Bài so sánh này khám phá những khác biệt kỹ thuật giữa YOLOv5 , tiêu chuẩn ngành về khả năng sử dụng và tốc độ, và YOLOX , một bộ dò không dựa trên neo hiệu suất cao.
Nguồn gốc và Tổng quan về Mô hình
YOLOv5
Tác giả: Glenn Jocher
Tổ chức: Ultralytics
Ngày: 26/06/2020
GitHub: ultralytics / yolov5
YOLOX
Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, và Jian Sun
Tổ chức: Megvii
Ngày: 18/07/2021
GitHub: Megvii-BaseDetection/YOLOX
YOLOv5 đã tạo nên một cuộc cách mạng trong lĩnh vực này không chỉ thông qua những thay đổi về kiến trúc, mà còn bằng cách tạo ra trải nghiệm người dùng liền mạch. Nó ưu tiên sự dễ dàng trong đào tạo, khả năng xuất khẩu và tốc độ triển khai, khiến nó trở thành lựa chọn hàng đầu cho các doanh nghiệp và nhà phát triển. YOLOX , được phát hành một năm sau đó, nhằm mục đích thu hẹp khoảng cách giữa hai phiên bản trước đó. YOLO Loạt bài viết này đề cập đến xu hướng học thuật về phát hiện không cần neo, đồng thời giới thiệu một đầu tách rời và một chiến lược gán nhãn mới.
Các chỉ số hiệu suất
Bảng sau đây so sánh hiệu năng của cả hai mô hình. Mặc dù YOLOX đạt được mAP cao hơn một chút tại thời điểm ra mắt, YOLOv5 thường thể hiện tốc độ suy luận vượt trội, đặc biệt là trên CPU và độ phức tạp triển khai thấp hơn đáng kể.
| 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) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
Sự khác biệt về kiến trúc
Sự khác biệt kỹ thuật cốt lõi nằm ở cách mỗi mô hình xử lý việc dự đoán hộp giới hạn.
YOLOv5: Tiêu chuẩn dựa trên Anchor
YOLOv5 Nó sử dụng cơ chế dựa trên neo . Nó dự đoán độ lệch từ các hộp neo được xác định trước, giúp ổn định quá trình huấn luyện cho các đối tượng có kích thước đã biết.
- Cấu trúc chính: Sử dụng CSPDarknet53 đã được sửa đổi, giúp tăng cường luồng gradient và giảm tắc nghẽn tính toán.
- Tăng cường dữ liệu: Tiên phong trong việc sử dụng rộng rãi kỹ thuật tăng cường dữ liệu Mosaic và MixUp trong quy trình huấn luyện, điều này đã cải thiện đáng kể khả năng chống chịu của mô hình đối với hiện tượng che khuất.
- Trọng tâm: Kiến trúc này được tối ưu hóa cao cho việc triển khai thực tế, đảm bảo các lớp được ánh xạ hiệu quả đến các bộ tăng tốc phần cứng như Edge TPU .
YOLOX: Người thách thức không cần neo đậu
YOLOX chuyển sang phương pháp không cần neo , dự đoán trực tiếp tâm của một đối tượng.
- Đầu tách rời: Không giống như các phiên bản trước YOLO Trong các phiên bản khác nhau, YOLOX tách biệt nhiệm vụ phân loại và định vị thành các "phần" riêng biệt, mà theo họ là giải quyết được xung đột giữa hai mục tiêu này trong quá trình hội tụ.
- SimOTA: Một chiến lược gán nhãn động tiên tiến xem quá trình huấn luyện như một bài toán vận chuyển tối ưu.
- Tham khảo: Để biết thêm chi tiết kỹ thuật chuyên sâu, vui lòng xem bài báo YOLOX trên arXiv .
Sự đánh đổi của các đầu tách rời
Mặc dù thiết kế đầu đọc/ghi tách rời trong YOLOX giúp cải thiện tốc độ hội tụ và độ chính xác, nhưng nó thường tạo ra thêm chi phí tính toán, dẫn đến quá trình suy luận chậm hơn một chút so với thiết kế đầu đọc/ghi ghép nối được tìm thấy trong các hệ thống khác. YOLOv5 và YOLOv8 .
Hệ sinh thái và Dễ sử dụng
Khi đánh giá các mô hình để đưa vào sản xuất, hệ sinh thái xung quanh cũng quan trọng không kém gì chính kiến trúc của mô hình. Đây là điểm mà các mô hình Ultralytics mang lại lợi thế vượt trội.
YOLOv5 được tích hợp vào một hệ sinh thái hoàn thiện và được bảo trì tốt. Người dùng được hưởng lợi từ Nền tảng Ultralytics (trước đây là HUB), giúp đơn giản hóa việc chú thích, huấn luyện và triển khai tập dữ liệu . Nền tảng này xử lý các vấn đề phức tạp về cơ sở hạ tầng, cho phép các nhà phát triển tập trung vào dữ liệu và kết quả.
Ngược lại, mặc dù YOLOX mang lại hiệu suất học tập tốt, nhưng nó thường yêu cầu cấu hình thủ công nhiều hơn trong quá trình triển khai. Ultralytics Các mô hình này ưu tiên hiệu quả huấn luyện , cung cấp sẵn các trọng số đã được huấn luyện trước và sử dụng ít bộ nhớ hơn trong quá trình huấn luyện. Hiệu quả bộ nhớ này đặc biệt đáng chú ý khi so sánh với các mô hình dựa trên transformer mới hơn như RT-DETR , vốn có thể tiêu tốn nhiều tài nguyên.
Sự tiến hóa: Hãy cùng chào đón YOLO26
Trong khi YOLOv5 Mặc dù YOLOX vẫn là những lựa chọn tuyệt vời, lĩnh vực này đã tiến bộ hơn rất nhiều. Đối với các nhà phát triển bắt đầu các dự án mới vào năm 2026, YOLO26 đại diện cho đỉnh cao của sự phát triển này, kết hợp tính dễ sử dụng của YOLOv5 Với những cải tiến không cần neo của YOLOX—và vượt trội hơn cả hai.
YOLO26 được thiết kế để đạt được sự cân bằng hiệu năng tối ưu cho điện toán biên và phân tích thời gian thực.
Tại sao nên nâng cấp lên YOLO26?
- Giải pháp từ đầu đến cuối không cần NMS : Giống như YOLOX, YOLO26 loại bỏ các điểm neo, nhưng nó tiến xa hơn bằng cách trở thành giải pháp từ đầu đến cuối. Điều này loại bỏ Non-Maximum Suppression ( NMS ) , một bước xử lý hậu kỳ thường làm phức tạp việc triển khai trên các thiết bị như FPGA hoặc CoreML .
- Bộ tối ưu hóa MuSGD: Lấy cảm hứng từ các kỹ thuật huấn luyện Mô hình Ngôn ngữ Lớn (LLM) (cụ thể là từ Kimi K2 của Moonshot AI), bộ tối ưu hóa lai này đảm bảo động lực huấn luyện ổn định, mang lại hiệu quả tính ổn định của LLM cho các tác vụ thị giác.
- Tốc độ: YOLO26 cung cấp khả năng suy luận CPU nhanh hơn tới 43% so với các thế hệ trước, đạt được nhờ việc loại bỏ Distribution Focal Loss (DFL) và tinh chỉnh kiến trúc.
- ProgLoss + STAL: Các hàm mất mát được cải tiến này đặc biệt nhắm mục tiêu vào việc nhận dạng các vật thể nhỏ, khắc phục một điểm yếu phổ biến trong các bộ dò tìm trước đây.
Tính linh hoạt trên nhiều tác vụ
Không giống như YOLOX, vốn chủ yếu tập trung vào việc phát hiện, Ultralytics YOLO26 hỗ trợ đầy đủ các tác vụ ngay từ đầu, bao gồm Ước tính tư thế , Phân đoạn đối tượng và Phát hiện đối tượng định hướng (OBB) .
Các ứng dụng thực tế
Việc lựa chọn giữa các mô hình này thường phụ thuộc vào kịch bản triển khai.
- Kiểm tra công nghiệp ( YOLOv5 /YOLO26): Đối với các dây chuyền sản xuất yêu cầu năng suất cao, thiết kế đầu ghép nối và tối ưu hóa TensorRT của Ultralytics Các mô hình này đảm bảo độ trễ tối thiểu.
- Giám sát trên không (YOLO26): Với các chức năng ProgLoss + STAL mới, YOLO26 vượt trội trong việc phát hiện các vật thể nhỏ như xe cộ hoặc gia súc trong ảnh chụp từ máy bay không người lái, một nhiệm vụ mà các mô hình dựa trên neo cũ đôi khi gặp khó khăn.
- Nghiên cứu học thuật (YOLOX): Các nhà nghiên cứu điều tra các chiến lược gán nhãn thường sử dụng YOLOX làm cơ sở so sánh vì nó triển khai SimOTA một cách rõ ràng.
Ví dụ mã
Chuyển đổi giữa các mô hình trong Ultralytics Hệ sinh thái hoạt động liền mạch. Đoạn mã sau đây minh họa cách tải và chạy suy luận, thể hiện API thống nhất hoạt động hiệu quả cho hệ sinh thái này. YOLOv5 , YOLO11 và YOLO26 được đề xuất.
from ultralytics import YOLO
# Load a model (YOLOv5 or the recommended YOLO26)
# The API unifies usage, making it easy to swap models for comparison
model = YOLO("yolo26n.pt") # Loading the latest Nano model
# Run inference on a local image
results = model("path/to/image.jpg")
# Process the results
for result in results:
result.show() # Display prediction
result.save(filename="result.jpg") # Save to disk
Kết luận
Cả hai YOLOv5 và YOLOX đã ghi dấu ấn trong lịch sử thị giác máy tính. YOLOv5 đã thiết lập tiêu chuẩn về tính dễ sử dụng và triển khai, trong khi YOLOX đã vượt qua những giới hạn của việc phát hiện không cần neo.
Tuy nhiên, đối với các ứng dụng hiện đại đòi hỏi hiệu quả cao nhất, Ultralytics YOLO26 là sự lựa chọn vượt trội. Bằng cách tích hợp một... NMS Với thiết kế không cần cấu hình phức tạp, trình tối ưu hóa MuSGD mang tính cách mạng và kiến trúc tối ưu hóa cho thiết bị biên, giải pháp này mang đến sự mạnh mẽ, bền vững trong tương lai, được hỗ trợ bởi hệ sinh thái Ultralytics rộng lớn.