RTDETRv2 và YOLOv9#
Lĩnh vực thị giác máy tính đã chứng kiến sự phân hóa thú vị về triết lý kiến trúc, chủ yếu giữa Mạng nơ-ron tích chập (CNNs) và các model dựa trên Transformer. Khi so sánh RTDETRv2 và YOLOv9, về cơ bản các developer đang đánh giá sự đánh đổi giữa các cơ chế attention toàn cục và thông tin gradient có thể lập trình. Cả hai model đều đại diện cho đỉnh cao của các paradigm tương ứng, mở rộng giới hạn của bài toán phát hiện đối tượng theo thời gian thực.
Giới thiệu về các Model#
RTDETRv2: Transformer phát hiện thời gian thực#
Được phát triển bởi các nhà nghiên cứu tại Baidu, RTDETRv2 xây dựng trên RT-DETR ban đầu bằng cách giới thiệu một "Bag-of-Freebies" để cải thiện Transformer phát hiện thời gian thực nền tảng. Model này giải quyết nút thắt truyền thống của Transformer—tốc độ suy luận—giúp chúng khả thi trong các ứng dụng 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
Một đặc điểm nổi bật của RTDETRv2 là thiết kế end-to-end không cần NMS ngay từ đầu. Bằng cách loại bỏ hoàn toàn Non-Maximum Suppression (NMS) trong quá trình hậu xử lý, model duy trì độ ổn định của độ trễ suy luận và đơn giản hóa pipeline triển khai. Cơ chế attention toàn cục giúp model vượt trội trong việc hiểu các cảnh phức tạp và đám đông dày đặc, vì model đồng thời đánh giá ngữ cảnh của toàn bộ hình ảnh.
YOLOv9: Thông tin Gradient có thể lập trình#
YOLOv9, một kiến trúc dựa trên CNN có hiệu quả cao, giải quyết vấn đề nút thắt thông tin vốn có trong các mạng nơ-ron sâu. Model này giới thiệu Programmable Gradient Information (PGI) và Generalized Efficient Layer Aggregation Network (GELAN).
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức: Viện Khoa học Thông tin, Academia Sinica
- Ngày: 21 tháng 2, 2024
- Liên kết: Arxiv, GitHub
YOLOv9 dựa trên nền tảng mạng nơ-ron tích chập đã được kiểm chứng nhưng tối đa hóa hiệu quả sử dụng tham số. Bằng cách duy trì thông tin quan trọng trong quá trình feed-forward, model đảm bảo việc cập nhật trọng số đáng tin cậy, tạo ra một model cực kỳ nhẹ nhưng có độ chính xác cao. Tuy nhiên, không giống RTDETRv2, YOLOv9 vẫn sử dụng hậu xử lý NMS tiêu chuẩn.
Hiệu năng và hiệu quả sử dụng tài nguyên#
Khi đánh giá các model này cho môi trường production, việc cân bằng Average Precision trung bình (mAP) với chi phí tính toán là yếu tố then chốt. Bảng dưới đây minh họa hiệu năng của chúng trên bộ dữ liệu MS COCO.
| Model | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | tham số (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Yêu cầu bộ nhớ và hiệu quả training#
Các Transformer như RTDETRv2 nổi tiếng là tiêu tốn nhiều bộ nhớ trong quá trình training, thường yêu cầu lượng bộ nhớ CUDA đáng kể và lịch training dài hơn để hội tụ hoàn toàn. Ngược lại, các kiến trúc CNN như YOLOv9 và các model Ultralytics YOLO khác sử dụng bộ nhớ thấp hơn đáng kể, cho phép developer training với batch size lớn hơn trên phần cứng phổ thông.
Để tối đa hóa việc sử dụng phần cứng, hãy cân nhắc sử dụng Ultralytics Platform nhằm đơn giản hóa quy trình training trên cloud. Nền tảng này tự động xử lý việc thiết lập môi trường và xác định batch size tối ưu.
Lợi thế của Ultralytics: Hệ sinh thái và tính dễ sử dụng#
Mặc dù việc nghiên cứu các repository độc lập như các trang GitHub chính thức của RTDETRv2 hoặc YOLOv9 có thể mang tính giáo dục cao, môi trường production đòi hỏi tính ổn định, dễ sử dụng và một ecosystem được duy trì tốt. Tích hợp các model này thông qua Ultralytics Python API mang lại trải nghiệm developer liền mạch.
API thống nhất và tính linh hoạt#
Framework Ultralytics ẩn đi sự phức tạp của việc tải dữ liệu, augmentation và training phân tán. Hơn nữa, trong khi RTDETRv2 ban đầu chỉ tập trung vào detection, ecosystem Ultralytics cho phép người dùng dễ dàng chuyển đổi giữa Object Detection, Instance Segmentation và Pose Estimation.
from ultralytics import RTDETR, YOLO
# Train a YOLOv9 model on custom data
model_yolo = YOLO("yolov9c.pt")
model_yolo.train(data="coco8.yaml", epochs=50, imgsz=640)
# Easily switch to RT-DETR for complex scene evaluation
model_rtdetr = RTDETR("rtdetr-l.pt")
results = model_rtdetr.predict("https://ultralytics.com/images/bus.jpg")
# Export to production-ready formats like TensorRT
model_yolo.export(format="engine")Với tài liệu toàn diện, theo dõi experiment tự động và khả năng export liền mạch sang các format như ONNX, TensorRT và OpenVINO, Ultralytics rút ngắn đáng kể thời gian từ prototype đến production.
Các trường hợp sử dụng lý tưởng#
RTDETRv2 vượt trội ở đâu#
Nhờ cơ chế attention toàn cục, RTDETRv2 là một lựa chọn mạnh mẽ cho xử lý phía server và các môi trường mà ngữ cảnh toàn cục đóng vai trò then chốt. Model này vượt trội trong:
- Chẩn đoán hình ảnh y khoa: Xác định các bất thường tinh vi trong đó ngữ cảnh xung quanh có tính quyết định.
- Giám sát trên không: Phát hiện các đối tượng nhỏ trong video drone độ phân giải cao mà không chịu các thiên lệch không gian của phép tích chập CNN truyền thống.
- Phân tích đám đông dày đặc: Theo dõi các cá nhân trong những tình huống mà hiện tượng che khuất nghiêm trọng thường khiến các model dựa trên anchor bị nhầm lẫn.
YOLOv9 vượt trội ở đâu#
YOLOv9 là lựa chọn hàng đầu cho triển khai edge với tài nguyên hạn chế. Hiệu quả tính toán của model khiến nó phù hợp với:
- Robotics: Điều hướng thời gian thực và tránh chướng ngại vật trong đó độ trễ tối thiểu là yêu cầu bắt buộc.
- IoT thành phố thông minh: Triển khai trên các thiết bị edge như NVIDIA Jetson để giám sát giao thông.
- Kiểm tra công nghiệp: Kiểm soát chất lượng trên dây chuyền lắp ráp tốc độ cao, yêu cầu số khung hình trên giây (FPS) cao.
Tương lai: Ultralytics YOLO26 xuất hiện#
Mặc dù YOLOv9 và RTDETRv2 là những bước tiến vượt bậc, bối cảnh công nghệ đã phát triển nhanh chóng. Đối với các triển khai hiện đại, Ultralytics YOLO26 mới ra mắt đại diện cho sự kết hợp tối ưu của cả hai triết lý kiến trúc.
Bằng cách kết hợp những ưu điểm tốt nhất của Transformer và CNN, YOLO26 thiết lập một tiêu chuẩn mới:
- Thiết kế end-to-end không cần NMS: Giống RTDETRv2, YOLO26 vốn đã là end-to-end, loại bỏ hoàn toàn hậu xử lý NMS để tạo ra các pipeline triển khai nhanh hơn, đơn giản hơn và có tính dự đoán cao.
- Optimizer MuSGD: Lấy cảm hứng từ các kỹ thuật training Large Language Model (LLM) (chẳng hạn như Kimi K2 của Moonshot AI), YOLO26 sử dụng một phương pháp kết hợp giữa SGD và Muon. Điều này mang lại độ ổn định training chưa từng có và khả năng hội tụ nhanh cho thị giác máy tính.
- Suy luận trên CPU nhanh hơn tới 43%: Không giống các Transformer nặng, YOLO26 được tối ưu mạnh cho điện toán edge và các thiết bị không có GPU.
- Loại bỏ DFL: Việc loại bỏ Distribution Focal Loss đơn giản hóa đáng kể đồ thị của model, đảm bảo export chính xác đến các thiết bị edge công suất thấp và các Neural Processing Unit (NPUs) nhúng.
- ProgLoss + STAL: Các hàm loss được cải tiến này nâng cao đáng kể khả năng nhận diện đối tượng nhỏ, một tính năng quan trọng đối với các bộ dữ liệu IoT và ảnh trên không.
Đối với các team muốn bắt đầu một dự án thị giác máy tính mới, chúng tôi đặc biệt khuyến nghị đánh giá YOLO26. Model này mang lại sự tinh gọn không cần NMS của Transformer cùng tốc độ vượt trội và hiệu quả training của một kiến trúc YOLO được tối ưu cao.
Tóm tắt#
Việc lựa chọn giữa RTDETRv2 và YOLOv9 phần lớn phụ thuộc vào phần cứng triển khai và nhu cầu cụ thể về độ chính xác. RTDETRv2 cung cấp độ chính xác tiên tiến và khả năng nhận biết ngữ cảnh cho các ứng dụng dựa trên server, trong khi YOLOv9 mang lại hiệu quả vượt trội cho các thiết bị edge.
Tuy nhiên, bằng cách tận dụng ecosystem trưởng thành của Ultralytics, developer có thể dễ dàng thử nghiệm cả hai model. Hơn nữa, với sự ra mắt của các model mới hơn như YOLO11 và YOLO26 end-to-end ngay từ đầu, việc tìm ra sự cân bằng hoàn hảo giữa suy luận tốc độ cao, hỗ trợ task linh hoạt và mức tiêu thụ bộ nhớ thấp chưa bao giờ dễ dàng hơn.