YOLOX so với RTDETRv2: Đánh giá sự phát triển của các mô hình phát hiện đối tượng thời gian thực
Việc lựa chọn kiến trúc tối ưu cho các ứng dụng thị giác máy tính đòi hỏi sự cân bằng cẩn thận giữa độ chính xác, tốc độ suy luận và tính khả thi khi triển khai. Trong bài phân tích kỹ thuật toàn diện này, chúng tôi khám phá những khác biệt cơ bản giữa YOLOX, một kiến trúc CNN không neo (anchor-free) cực kỳ thành công, và RTDETRv2, một transformer phát hiện thời gian thực hiện đại.
Mặc dù cả hai mô hình đều có những đóng góp đáng kể vào lĩnh vực phát hiện đối tượng, các nhà phát triển xây dựng ứng dụng thực tế thường thấy rằng các lựa chọn thay thế hiện đại như Ultralytics YOLO26 cung cấp hiệu quả đào tạo vượt trội, yêu cầu bộ nhớ thấp hơn và hệ sinh thái triển khai mạnh mẽ hơn.
YOLOX: Thu hẹp khoảng cách giữa nghiên cứu và công nghiệp
YOLOX nổi lên như một phiên bản thích ứng không neo (anchor-free) cực kỳ phổ biến của dòng YOLO, giới thiệu một thiết kế đơn giản hóa mang lại những cải tiến hiệu suất ấn tượng vào thời điểm ra mắt.
- Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li và Jian Sun
- Tổ chức: Megvii
- Ngày: 18 tháng 7 năm 2021
- Liên kết: Arxiv, GitHub, Tài liệu
Đổi mới kiến trúc
YOLOX đã chuyển đổi dòng YOLO sang mô hình không neo, tích hợp đầu ra tách biệt (decoupled head) và chiến lược gán nhãn SimOTA tiên tiến. Bằng cách loại bỏ các hộp neo (anchor boxes), kiến trúc này đã giảm đáng kể số lượng tham số thiết kế và cải thiện khả năng tổng quát hóa trên các tập dữ liệu chuẩn đa dạng. Các phiên bản nhẹ của nó, YOLOX-Nano và YOLOX-Tiny, đã trở thành lựa chọn phổ biến để triển khai các ứng dụng AI thị giác trên thiết bị biên.
Mặc dù YOLOX mang lại những tiến bộ đáng chú ý, sự phụ thuộc của nó vào các pipeline tăng cường dữ liệu nặng và các quy trình hậu xử lý cũ (như NMS truyền thống) có thể dẫn đến độ trễ cao hơn so với các mô hình end-to-end tự nhiên.
RTDETRv2: Thúc đẩy các Vision Transformer thời gian thực
Dựa trên nền tảng của phiên bản tiền nhiệm, RTDETRv2 tận dụng sức mạnh của Vision Transformers (ViTs) để đạt được độ chính xác có tính cạnh tranh cao mà không phải hy sinh tốc độ suy luận thời gian thực.
- Tác giả: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang và Yi Liu
- Tổ chức: Baidu
- Ngày: 24-07-2024
- Liên kết: Arxiv, GitHub
Đổi mới kiến trúc
RTDETRv2 thiết kế lại cơ bản pipeline phát hiện bằng cách sử dụng kiến trúc dựa trên transformer giúp bỏ qua NMS một cách tự nhiên. Điều này đạt được thông qua bộ mã hóa lai (hybrid encoder) và cơ chế lựa chọn truy vấn nhận biết IoU, giúp cải thiện quá trình khởi tạo các truy vấn đối tượng. Mô hình xử lý hiệu quả các đặc trưng đa quy mô, cho phép nó nắm bắt các chi tiết phức tạp trong những môi trường phức tạp, chẳng hạn như phát hiện video giao thông vào ban đêm.
Tuy nhiên, các transformer về bản chất là tài nguyên chuyên sâu. Việc đào tạo RTDETRv2 thường đòi hỏi đáng kể nhiều bộ nhớ GPU và chu kỳ tính toán hơn so với các lựa chọn thay thế dựa trên CNN, đây có thể là một rào cản đối với các nhóm hoạt động với ngân sách hạn hẹp hoặc những người yêu cầu tinh chỉnh mô hình thường xuyên.
Bảng so sánh hiệu suất
Để đánh giá khách quan các kiến trúc này, chúng tôi xem xét hiệu suất của chúng trên tập dữ liệu COCO. Bảng dưới đây minh họa sự đánh đổi giữa độ chính xác (mAP), số lượng tham số và độ phức tạp tính toán.
| Model | kích thước (pixels) | mAPval 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 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
Trong khi RTDETRv2 đạt được độ chính xác ấn tượng, YOLOX vẫn duy trì lợi thế ở các hồ sơ tham số nhẹ, đặc biệt là với các phiên bản Nano và Tiny của nó.
Các trường hợp sử dụng và khuyến nghị
Việc lựa chọn giữa YOLOX và RT-DETR phụ thuộc vào các yêu cầu dự án cụ thể, các hạn chế khi triển khai và tùy chọn hệ sinh thái của bạn.
Khi nào nên chọn YOLOX
YOLOX là một lựa chọn mạnh mẽ cho:
- Nghiên cứu nhận diện không dùng anchor: Nghiên cứu học thuật sử dụng kiến trúc không dùng anchor sạch sẽ của YOLOX làm cơ sở để thử nghiệm với các head nhận diện hoặc hàm loss mới.
- Thiết bị Edge siêu nhẹ: Triển khai trên các vi điều khiển hoặc phần cứng di động cũ nơi mà dấu chân cực nhỏ của biến thể YOLOX-Nano (0.91 triệu tham số) là rất quan trọng.
- Nghiên cứu về gán nhãn SimOTA: Các dự án nghiên cứu điều tra các chiến lược gán nhãn dựa trên vận chuyển tối ưu và tác động của chúng đến sự hội tụ trong quá trình training.
Khi nào nên chọn RT-DETR
RT-DETR được khuyến nghị cho:
- Nghiên cứu phát hiện dựa trên Transformer: Các dự án khám phá các cơ chế chú ý và kiến trúc transformer cho việc phát hiện đối tượng end-to-end mà không cần NMS.
- Các tình huống có độ chính xác cao với độ trễ linh hoạt: Các ứng dụng nơi độ chính xác phát hiện là ưu tiên hàng đầu và độ trễ suy luận cao hơn một chút là điều có thể chấp nhận được.
- Phát hiện đối tượng lớn: Các cảnh có các đối tượng từ trung bình đến lớn, nơi cơ chế chú ý toàn cục của các transformer mang lại lợi thế tự nhiên.
Khi nào nên chọn Ultralytics (YOLO26)
Đối với hầu hết các dự án mới, Ultralytics YOLO26 cung cấp sự kết hợp tốt nhất giữa hiệu suất và trải nghiệm nhà phát triển:
- Triển khai Edge không cần NMS: Các ứng dụng yêu cầu suy luận ổn định, độ trễ thấp mà không cần sự phức tạp của việc hậu xử lý Non-Maximum Suppression.
- Môi trường chỉ sử dụng CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ suy luận trên CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
- Nhận diện đối tượng nhỏ: Các kịch bản thách thức như ảnh drone trên không hoặc phân tích cảm biến IoT nơi ProgLoss và STAL tăng cường đáng kể độ chính xác trên các đối tượng cực nhỏ.
Lợi thế của Ultralytics: YOLO26
Mặc dù cả YOLOX và RTDETRv2 đều mang lại những thế mạnh riêng biệt, Ultralytics YOLO26 mới ra mắt đã định nghĩa lại trạng thái tốt nhất (state-of-the-art) cho AI thị giác, giải quyết các sự đánh đổi lịch sử giữa tốc độ, độ chính xác và sự dễ dàng khi triển khai.
Kiến trúc End-to-End không cần NMS
Lấy cảm hứng từ các mô hình transformer trong khi vẫn giữ được hiệu quả của CNN, YOLO26 có thiết kế end-to-end không cần NMS tự nhiên. Bằng cách loại bỏ Non-Maximum Suppression như một bước hậu xử lý, YOLO26 đơn giản hóa đáng kể các pipeline triển khai, đảm bảo độ trễ suy luận nhất quán trên nhiều thiết bị biên khác nhau mà không bị quá tải bởi việc tinh chỉnh ngưỡng phức tạp.
Suy luận CPU nhanh hơn tới 43%
Không giống như các kiến trúc transformer như RTDETRv2 vốn dựa nhiều vào GPU cao cấp, YOLO26 được tối ưu hóa đặc biệt cho các môi trường điện toán biên. Thông qua việc loại bỏ Distribution Focal Loss (DFL), YOLO26 hợp lý hóa việc xuất mô hình và đạt tốc độ suy luận CPU nhanh hơn tới 43%, khiến nó trở thành lựa chọn lý tưởng để tích hợp vào phần cứng như Raspberry Pi hoặc các thiết bị di động tiêu chuẩn.
Hiệu quả đào tạo với MuSGD
Việc đào tạo các mô hình transformer thường dẫn đến mức tiêu thụ bộ nhớ CUDA quá mức và thời gian đào tạo kéo dài. YOLO26 giới thiệu MuSGD Optimizer mới lạ—một sự kết hợp giữa Stochastic Gradient Descent và bộ tối ưu hóa Muon lấy cảm hứng từ LLM. Sự đổi mới này mang lại quá trình đào tạo ổn định vượt trội và khả năng hội tụ nhanh hơn, giảm đáng kể các yêu cầu phần cứng so với RTDETRv2.
Hệ sinh thái và tính linh hoạt chưa từng có
Hệ sinh thái Ultralytics cung cấp trải nghiệm nhà phát triển trực quan và hợp lý. Với tài liệu mở rộng, sự hỗ trợ từ cộng đồng tích cực và Nền tảng Ultralytics hỗ trợ đám mây, việc quản lý vòng đời AI hoàn chỉnh chưa bao giờ dễ dàng hơn thế. Hơn nữa, YOLO26 có tính linh hoạt cao. Trong khi RTDETRv2 tập trung vào phát hiện đối tượng, YOLO26 hỗ trợ liền mạch các tác vụ phân đoạn cá thể, ước tính tư thế, phân loại hình ảnh và Hộp bao định hướng (OBB) một cách tự nhiên. Được tăng cường bởi các hàm mất mát ProgLoss + STAL mới, YOLO26 cũng xuất sắc trong việc nhận dạng vật thể nhỏ, một tính năng quan trọng cho hình ảnh trên không và phát hiện lỗi công nghiệp.
Tích hợp liền mạch với Ultralytics
Việc triển khai các mô hình không nên đòi hỏi phải giải quyết các codebase phức tạp và phân mảnh. Python API của Ultralytics cho phép bạn tải, đào tạo và xuất các mô hình hiện đại chỉ trong vài dòng mã.
from ultralytics import YOLO
# Load the latest YOLO26 nano model for optimal edge performance
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset with minimal memory overhead
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
# Export seamlessly to ONNX or TensorRT for deployment
model.export(format="onnx", optimize=True)Bằng cách tận dụng Ultralytics, bạn tránh được các cấu hình môi trường phức tạp thường liên quan đến các kho lưu trữ nghiên cứu, từ đó rút ngắn thời gian đưa sản phẩm ra thị trường.
Kết luận
YOLOX và RTDETRv2 đại diện cho những cột mốc quan trọng trong quá trình phát triển của việc phát hiện đối tượng thời gian thực. YOLOX đã chứng minh tính khả thi của các CNN không neo hiệu quả cao, trong khi RTDETRv2 đã điều chỉnh thành công các transformer cho các ràng buộc thời gian thực.
Tuy nhiên, đối với các ứng dụng hiện đại, từ phân tích bán lẻ thông minh đến robot nhúng, Ultralytics YOLO26 cung cấp giải pháp tối ưu. Bằng cách kết hợp suy luận không cần NMS với tốc độ CPU vô song, dấu chân bộ nhớ giảm và sự hỗ trợ mạnh mẽ của Nền tảng Ultralytics, YOLO26 trang bị cho các nhà phát triển khả năng xây dựng thế hệ tiếp theo của các hệ thống thị giác máy tính tin cậy, hiệu suất cao.