YOLOX và RTDETRv2#
Việc chọn kiến trúc tối ưu cho ứng dụng thị giác máy tính đòi hỏi 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 phân tích kỹ thuật toàn diện này, chúng tôi tìm hiểu những khác biệt cơ bản giữa YOLOX, kiến trúc CNN không dùng anchor rất thành công, và RTDETRv2, Transformer phát hiện thời gian thực tiên tiến nhất.
Dù cả hai model đều có đóng góp đáng kể cho 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 sẵn sàng cho production thường nhận thấy những lựa chọn hiện đại như Ultralytics YOLO26 mang lại hiệu quả huấn luyện cao hơn, yêu cầu bộ nhớ thấp hơn và hệ sinh thái triển khai vững chắc hơn.
YOLOX: Thu hẹp khoảng cách giữa nghiên cứu và công nghiệp#
YOLOX xuất hiện như một phiên bản thích ứng không dùng anchor rất phổ biến của dòng YOLO, với thiết kế đơn giản hóa mang lại những cải thiện hiệu năng ấn tượng tại thời điểm phát hành.
- Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li và Jian Sun
- Tổ chức: Megvii
- Ngày: 18 tháng 7, 2021
- Liên kết: Arxiv, GitHub, Tài liệu
Các cải tiến kiến trúc#
YOLOX đưa họ YOLO sang mô hình không dùng anchor, kết hợp head tách biệt và chiến lược gán nhãn SimOTA tiên tiến. Bằng cách loại bỏ anchor box, kiến trúc này giảm đáng kể số tham số thiết kế và cải thiện khả năng khái quát hóa trên nhiều bộ dữ liệu benchmark khác nhau. Các phiên bản nhẹ YOLOX-Nano và YOLOX-Tiny trở thành lựa chọn phổ biến để triển khai ứng dụng AI thị giác trên thiết bị biên.
Dù YOLOX mang lại những cải tiến đáng kể, việc phụ thuộc vào 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ể khiến độ trễ cao hơn so với các model đầu-cuối nguyên bản.
RTDETRv2: Nâng tầm Transformer thị giác thời gian thực#
Dựa trên nền tảng của phiên bản tiền nhiệm, RTDETRv2 khai thác sức mạnh của Vision Transformer (ViT) để đạt độ chính xác cạnh tranh cao mà không làm giảm 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: 2024-07-24
- Liên kết: Arxiv, GitHub
Các cải tiến kiến trúc#
RTDETRv2 tái thiết kế căn bản pipeline phát hiện bằng cách sử dụng kiến trúc dựa trên Transformer, vốn bỏ qua Non-Maximum Suppression (NMS). Điều này được thực hiện thông qua encoder lai và cơ chế chọn query có nhận biết IoU, giúp cải thiện bước khởi tạo object query. Model xử lý hiệu quả các đặc trưng đa tỷ lệ, cho phép nắm bắt chi tiết phức tạp trong môi trường khó khăn, chẳng hạn như phát hiện đối tượng trong video giao thông ban đêm.
Tuy nhiên, Transformer vốn tiêu tốn nhiều tài nguyên. Huấn luyện RTDETRv2 thường đòi hỏi nhiều bộ nhớ GPU và chu kỳ tính toán hơn đáng kể so với các lựa chọn dựa trên CNN, điều này có thể gây trở ngại cho nhóm có ngân sách hạn chế hoặc cần tinh chỉnh model thường xuyên.
Bảng so sánh hiệu năng#
Để đánh giá khách quan các kiến trúc này, chúng tôi xem xét hiệu năng trên bộ 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 (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | params (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 |
Dù RTDETRv2 đạt độ chính xác ấn tượng, YOLOX có lợi thế về số lượng tham số gọn nhẹ, đặc biệt ở các biến thể Nano và Tiny.
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 yêu cầu cụ thể của dự án, các giới hạn triển khai và ưu tiên về hệ sinh thái.
Khi nào nên chọn YOLOX#
YOLOX là lựa chọn phù hợp khi:
- Nghiên cứu phát hiện không anchor: Nghiên cứu học thuật sử dụng kiến trúc không anchor rõ ràng của YOLOX làm baseline để thử nghiệm các head phát hiện hoặc hàm loss mới.
- Thiết bị biên siêu nhẹ: Triển khai trên vi điều khiển hoặc phần cứng di động đời cũ, nơi kích thước cực nhỏ của biến thể YOLOX-Nano (0.91M tham số) là yếu tố then chốt.
- Nghiên cứu gán nhãn SimOTA: Các dự án nghiên cứu tìm hiểu chiến lược gán nhãn dựa trên vận tải tối ưu và ảnh hưởng của chúng đến quá trình hội tụ khi huấn luyện.
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 nghiên cứu cơ chế attention và kiến trúc Transformer để phát hiện vật thể đầu cuối mà không cần NMS.
- Tình huống cần độ chính xác cao với độ trễ linh hoạt: Các ứng dụng đặt độ chính xác phát hiện lên hàng đầu và chấp nhận độ trễ suy luận cao hơn đôi chút.
- Phát hiện vật thể lớn: Các cảnh chủ yếu có vật thể cỡ trung bình đến lớn, trong đó cơ chế attention toàn cục của Transformer mang lại lợi thế tự nhiên.
Khi nào nên chọn Ultralytics (YOLO26)#
Với hầu hết dự án mới, Ultralytics YOLO26 mang đến sự kết hợp tốt nhất giữa hiệu năng và trải nghiệm dành cho nhà phát triển:
- Triển khai trên thiết bị biên không cần NMS: Các ứng dụng cần inference có độ trễ thấp và ổn định mà không phải xử lý hậu kỳ Non-Maximum Suppression phức tạp.
- Môi trường chỉ có CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ CPU inference nhanh hơn đến 43% của YOLO26 mang lại lợi thế rõ rệt.
- Phát hiện vật thể nhỏ: Các tình huống khó như ảnh chụp từ drone trên không hoặc phân tích cảm biến IoT, trong đó ProgLoss và STAL cải thiện đáng kể độ chính xác khi phát hiện vật thể rất nhỏ.
Ưu thế của Ultralytics: YOLO26#
Dù YOLOX và RTDETRv2 đều có thế mạnh riêng, Ultralytics YOLO26 mới ra mắt định nghĩa lại chuẩn mực tiên tiến nhất cho AI thị giác, giải quyết những đánh đổi lâu nay giữa tốc độ, độ chính xác và khả năng triển khai dễ dàng.
1. Kiến trúc đầu-cuối không cần NMS#
Lấy cảm hứng từ model Transformer nhưng vẫn giữ hiệu quả của CNN, YOLO26 có thiết kế đầu-cuối không cần NMS tùy chọn (nms=False). Bằng cách loại bỏ Non-Maximum Suppression khỏi bước hậu xử lý, YOLO26 đơn giản hóa đáng kể pipeline triển khai, đảm bảo độ trễ suy luận nhất quán trên nhiều thiết bị biên mà không cần tinh chỉnh ngưỡng phức tạp.
2. Suy luận CPU nhanh hơn tới 43%#
Khác với các kiến trúc Transformer như RTDETRv2 vốn phụ thuộc nhiều vào GPU cao cấp, YOLO26 được tối ưu chuyên biệt cho môi trường điện toán biên. Nhờ loại bỏ Distribution Focal Loss (DFL), YOLO26 tinh giản quy trình xuất model và đạt tốc độ suy luận CPU nhanh hơn tới 43%, 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 thiết bị di động phổ thông.
3. Hiệu quả huấn luyện với MuSGD#
Huấn luyện model Transformer thường dẫn đến mức tiêu thụ bộ nhớ CUDA quá cao và thời gian huấn luyện kéo dài. YOLO26 giới thiệu Optimizer MuSGD mới — một phương pháp lai giữa Stochastic Gradient Descent và optimizer Muon lấy cảm hứng từ LLM. Cải tiến này giúp huấn luyện cực kỳ ổn định và hội tụ nhanh hơn, đồng thời giảm đáng kể yêu cầu phần cứng so với RTDETRv2.
4. Hệ sinh thái và tính linh hoạt vượt trội#
Hệ sinh thái Ultralytics mang đến trải nghiệm phát triển trực quan và tinh gọn. Với tài liệu phong phú, cộng đồng hỗ trợ tích cực và Nền tảng Ultralytics vận hành trên cloud, việc quản lý toàn bộ vòng đời AI chưa bao giờ dễ dàng hơn. Ngoài ra, YOLO26 rất linh hoạt. Trong khi RTDETRv2 tập trung vào phát hiện đối tượng, YOLO26 hỗ trợ liền mạch nguyên bản các tác vụ phân đoạn instance, phân loại ảnh, ước lượng tư thế và bounding box định hướng (OBB). Được tăng cường bởi ProgLoss + STAL mới (Progressive Loss và Small-Target-Aware Label Assignment), YOLO26 cũng vượt trội trong nhận diện đối tượng nhỏ — tính năng thiết yếu cho ảnh hàng không và phát hiện lỗi công nghiệp.
Tích hợp liền mạch với Ultralytics#
Triển khai model không nên đòi hỏi phải vật lộn với các codebase phức tạp, phân mảnh. Python API của Ultralytics cho phép bạn tải, huấn luyện và xuất các model tiên tiến nhất chỉ với vài dòng code.
from ultralytics import YOLO
# Tải model YOLO26 nano mới nhất để đạt hiệu năng tối ưu trên thiết bị biên
model = YOLO("yolo26n.pt")
# Huấn luyện model trên tập dữ liệu tùy chỉnh với mức sử dụng bộ nhớ tối thiểu
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Đánh giá hiệu năng của model
metrics = model.val()
# Xuất liền mạch sang ONNX hoặc TensorRT để triển khai
model.export(format="onnx")Sử dụng Ultralytics giúp bạn tránh các cấu hình môi trường phức tạp thường gặp ở repository 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 là những cột mốc quan trọng trong quá trình phát triển phát hiện đối tượng thời gian thực. YOLOX chứng minh tính khả thi của CNN không dùng anchor hiệu quả cao, còn RTDETRv2 đã thích ứng thành công Transformer với các ràng buộc thời gian thực.
Tuy nhiên, 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 là giải pháp toàn diện. Bằng cách kết hợp suy luận không cần NMS với tốc độ CPU vượt trội, mức sử dụng bộ nhớ thấp hơn và sự hỗ trợ vững chắc từ Nền tảng Ultralytics, YOLO26 giúp nhà phát triển xây dựng thế hệ hệ thống thị giác máy tính đáng tin cậy, hiệu năng cao tiếp theo.