Ultralytics YOLO27:

So sánh YOLOX và RTDETRv2#

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 thận trọng 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 ta sẽ tìm hiểu những khác biệt nền tảng giữa YOLOX, một kiến trúc CNN anchor-free rất thành công, và RTDETRv2, một Transformer phát hiện theo thời gian thực tiên tiến nhất.

Mặc dù cả hai model đều có những đóng góp đáng kể cho lĩnh vực phát hiện đối tượng, các developer xây dựng ứng dụng sẵn sàng cho production thường nhận thấy rằng những lựa chọn hiện đại như Ultralytics YOLO26 mang lại hiệu quả training 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 biến thể anchor-free rất 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 thiện ấn tượng về hiệu nă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 về kiến trúc#

YOLOX chuyển dòng YOLO sang mô hình anchor-free, tích hợp head tách rời 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ố lượng tham số thiết kế và cải thiện khả năng tổng quát hóa trên nhiều dataset benchmark khác nhau. Các phiên bản gọn nhẹ, 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.

Các yếu tố cần cân nhắc đối với công nghệ cũ

Mặc dù YOLOX mang lại những cải tiến đáng kể, việc phụ thuộc vào các pipeline augmentation nặng và quy trình hậu xử lý cũ (chẳng hạn NMS truyền thống) có thể dẫn đến độ trễ cao hơn so với các model end-to-end nguyên bản.

Tìm hiểu thêm về YOLOX

RTDETRv2: Thúc đẩy Transformer thị giác theo 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 Transformer thị giác (ViTs) để đạt độ chính xác cạnh tranh cao mà không làm giảm tốc độ suy luận theo 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 về kiến trúc#

RTDETRv2 tái định hình 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 ức chế phi cực đại (NMS) một cách nguyên bản. Điều này đạt được nhờ encoder lai và cơ chế lựa chọn query nhận biết IoU, giúp cải thiện việc khởi tạo các query đối tượng. Model xử lý hiệu quả các đặc trưng đa tỷ lệ, cho phép nắm bắt những chi tiết phức tạp trong môi trường phức tạp, chẳng hạn như phát hiện phương tiện trong video giao thông vào ban đêm.

Tuy nhiên, Transformer vốn tiêu tốn nhiều tài nguyên. Việc training 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ể trở thành trở ngại đối với các team hoạt động trong phạm vi ngân sách nghiêm ngặt 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 ta xem xét hiệu năng của chúng trên dataset 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.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Mặc dù RTDETRv2 đạt độ chính xác ấn tượng, YOLOX vẫn có lợi thế về số lượng tham số gọn nhẹ, đặc biệt là với các biến thể Nano và Tiny.

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 yêu cầu cụ thể của dự án, các hạn chế khi 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 cho:

  • 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 detection head hoặc hàm loss mới.
  • Thiết bị edge siêu nhẹ: Triển khai trên microcontroller hoặc phần cứng mobile legacy, nơi footprint 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 project nghiên cứu tìm hiểu chiến lược gán nhãn dựa trên optimal transport và tác động của chúng đến quá trình hội tụ khi 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 nghiên cứu cơ chế attention và kiến trúc transformer cho bài toán phát hiện đối tượng end-to-end không cần NMS.
  • Các kịch bản độ chính xác cao với độ trễ linh hoạt: Các ứng dụng trong đó độ chính xác phát hiện là ưu tiên hàng đầu và có thể chấp nhận độ trễ suy luận cao hơn đôi chút.
  • Phát hiện đối tượng lớn: Các cảnh chủ yếu chứa đối tượng cỡ vừa đế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)#

Đối 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 developer:

  • Triển khai edge không cần NMS: Các ứng dụng yêu cầu suy luận nhất quán, độ trễ thấp mà không có sự phức tạp của bước hậu xử lý triệt tiêu cực đại.
  • Môi trường chỉ sử dụng CPU: Các thiết bị không có tăng tốc GPU chuyên dụng, nơi khả năng suy luận trên CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
  • Phát hiện đối tượng nhỏ: Các kịch bản đầy thách thức 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 trên các đối tượng rất nhỏ.

Lợi thế của Ultralytics: YOLO26#

Mặc dù YOLOX và RTDETRv2 đều có những thế mạnh riêng, Ultralytics YOLO26 mới phát hành đã định nghĩa lại tiêu chuẩn hiện đại 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à tính dễ triển khai.

1. Kiến trúc end-to-end không cần NMS#

Lấy cảm hứng từ các model Transformer trong khi vẫn duy trì hiệu quả của CNN, YOLO26 sở hữu thiết kế end-to-end không cần NMS nguyên bản. Bằng cách loại bỏ ức chế phi cực đại khỏi 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 mà không cần thực hiện việc tinh chỉnh ngưỡng phức tạp.

2. Suy luận CPU nhanh hơn tới 43%#

Không giống 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 cụ thể cho môi trường điện toán biên. Nhờ loại bỏ Distribution Focal Loss (DFL), YOLO26 tinh gọn quy trình export 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 các thiết bị di động tiêu chuẩn.

3. Hiệu quả training với MuSGD#

Việc training các model Transformer thường dẫn đến mức tiêu thụ bộ nhớ CUDA quá cao và thời gian training kéo dài. YOLO26 giới thiệu MuSGD Optimizer mới—một biến thể kết hợp giữa Stochastic Gradient Descent và optimizer Muon lấy cảm hứng từ LLM. Đổi mới này mang lại quá trình training đặc biệt ổ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 lại trải nghiệm developer trực quan và tinh gọn. Với tài liệu phong phú, sự hỗ trợ tích cực từ cộng đồng và Ultralytics Platform 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 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ợ nguyên bản và liền mạch các tác vụ instance segmentation, ước lượng tư thế, phân loại hình ảnhhộp giới hạn định hướng (OBB). Được tăng cường bởi các hàm loss mới ProgLoss + STAL, YOLO26 cũng nổi bật trong việc nhận diện đối tượng nhỏ, một tính năng quan trọng cho ảnh chụp từ trên khôngphát hiện lỗi công nghiệp.

Các model được hỗ trợ khác

Framework Ultralytics cũng hỗ trợ thế hệ trước là YOLO11YOLOv8, cho phép người dùng dễ dàng benchmark và chuyển đổi các pipeline cũ.

Tích hợp liền mạch với Ultralytics#

Việc triển khai model không nên đòi hỏi phải xử lý các codebase phức tạp và phân mảnh. Ultralytics Python API cho phép bạn load, train và export các model tiên tiến nhất chỉ với vài dòng code.

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 sử dụng Ultralytics, bạn tránh được việc cấu hình môi trường phức tạp thường đi kèm với các repository nghiên cứu, qua đó 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 lĩnh vực phát hiện đối tượng theo thời gian thực. YOLOX đã chứng minh tính khả thi của CNN anchor-free có hiệu quả cao, trong khi RTDETRv2 đã chuyển đổi thành công Transformer để đáp ứng 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 robotics nhúng, Ultralytics YOLO26 cung cấp 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, footprint bộ nhớ thấp hơn và sự hỗ trợ mạnh mẽ của Ultralytics Platform, YOLO26 giúp các developer xây dựng thế hệ tiếp theo của những hệ thống thị giác máy tính đáng tin cậy, hiệu năng cao.

Những người đóng góp

Bình luận