DAMO-YOLO vs. YOLOX: So sánh kỹ thuật toàn diện
Lĩnh vực thị giác máy tính thời gian thực đang không ngừng phát triển. Hai cột mốc đáng chú ý trong hành trình này là DAMO- YOLO và YOLOX , mỗi mô hình đều mang đến những cải tiến độc đáo cho bài toán phát hiện đối tượng tốc độ cao, độ chính xác cao. Mặc dù cả hai mô hình đều đóng góp đáng kể cho cộng đồng mã nguồn mở, việc hiểu rõ sự khác biệt về kiến trúc, phương pháp huấn luyện và kịch bản triển khai lý tưởng của chúng là rất quan trọng đối với các kỹ sư máy học.
Hướng dẫn toàn diện này sẽ khám phá những điểm khác biệt về mặt kỹ thuật của cả hai mô hình và nêu bật lý do tại sao các giải pháp thay thế hiện đại như nền tảng Ultralytics YOLO26 lại mang đến hiệu suất vượt trội và dễ sử dụng cho môi trường sản xuất hiện nay.
Tổng quan về mô hình
Chi tiết DAMO-YOLO
Được phát triển bởi một nhóm các nhà nghiên cứu tại Alibaba Group, DAMO-YOLO được giới thiệu như một phương pháp phát hiện đối tượng hiệu quả cao tận dụng khám phá kiến trúc tự động.
Tác giả: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, và Xiuyu Sun
Tổ chức: Alibaba Group
Ngày: 2022-11-23
Arxiv: https://arxiv.org/abs/2211.15444v2
GitHub: https://github.com/tinyvision/DAMO-YOLO
Tài liệu: Tài liệu DAMO-YOLO
Thông tin chi tiết về YOLOX
Được tạo bởi các nhà nghiên cứu tại Megvii, YOLOX nhằm mục đích thu hẹp khoảng cách giữa cộng đồng nghiên cứu và công nghiệp bằng cách chuyển dòng YOLO sang thiết kế không neo (anchor-free), đơn giản hóa đáng kể kiến trúc trong khi vẫn đạt được hiệu suất tốt hơn vào thời điểm đó.
Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, và Jian Sun
Tổ chức: Megvii
Ngày: 2021-07-18
Arxiv: https://arxiv.org/abs/2107.08430
GitHub: https://github.com/Megvii-BaseDetection/YOLOX
Tài liệu: Tài liệu YOLOX
Phân tích kiến trúc
Kiến trúc DAMO-YOLO
DAMO-YOLO phụ thuộc nhiều vào Neural Architecture Search (NAS). Các thành phần cốt lõi bao gồm:
- Các Backbone MAE-NAS: Sử dụng thuật toán tìm kiếm tiến hóa đa mục tiêu để khám phá các backbone cung cấp sự cân bằng tối ưu giữa tốc độ suy luận và độ chính xác.
- RepGFPN hiệu quả: Một thiết kế heavy-neck được điều chỉnh để hợp nhất đặc trưng, giúp mô hình duy trì độ chính xác cao trên các tỷ lệ đối tượng khác nhau.
- ZeroHead: Một đầu detect đơn giản, nhẹ giúp giảm chi phí tính toán trong các lớp dự đoán cuối cùng.
Kiến trúc YOLOX
YOLOX đã áp dụng một cách tiếp cận khác, tập trung vào sự đơn giản về cấu trúc và thiết kế không cần neo:
- Cơ chế không Anchor: Bằng cách dự đoán trực tiếp tọa độ hộp giới hạn mà không cần anchor định trước, YOLOX giảm số lượng tham số thiết kế và điều chỉnh theo kinh nghiệm cần thiết.
- Decoupled Head: Nó tách các tác vụ phân loại và hồi quy thành các nhánh đặc trưng khác nhau, điều này cải thiện tốc độ hội tụ và độ chính xác tổng thể.
- Gán nhãn SimOTA: Một chiến lược gán nhãn tiên tiến phân bổ động các mẫu dương cho các ground truth, cải thiện hiệu quả huấn luyện.
Triết lý Thiết kế
Trong khi DAMO- YOLO YOLOX sử dụng thuật toán tìm kiếm NAS tự động để tìm ra các kiến trúc tối ưu trong điều kiện ràng buộc chặt chẽ, đồng thời tận dụng các giải pháp đơn giản hóa tinh tế do con người thiết kế (như đầu không có neo) để tối ưu hóa quy trình phát hiện đối tượng.
So sánh hiệu suất
Việc đánh giá các mô hình này đòi hỏi phải xem xét độ chính xác trung bình (Average Precision) mAP ), tốc độ suy luận và số lượng tham số. Dưới đây là bảng so sánh chi tiết các biến thể tiêu chuẩn và nhẹ cho cả hai kiến trúc.
| 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) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
Trong khi YOLOXx đạt được mức tuyệt đối cao nhất mAP Với chỉ số 51.1, DAMO-YOLOl mang lại hiệu suất cạnh tranh cao ở mức 50.8. mAP với số lượng tham số ít hơn một nửa (42,1 triệu so với 99,1 triệu) và tốc độ nhanh hơn đáng kể. TensorRT thi hành.
Phương pháp luận huấn luyện
Đào tạo DAMO- YOLO
DAMO-YOLO sử dụng cải tiến chưng cất (distillation enhancement) phức tạp trong quá trình huấn luyện. Thông thường, một mô hình "giáo viên" lớn được huấn luyện trước, và tri thức của nó được chưng cất vào các mô hình "học sinh" nhỏ hơn. Nó cũng sử dụng AlignedOTA để gán nhãn động. Mặc dù rất hiệu quả, quy trình huấn luyện đa giai đoạn này làm tăng đáng kể thời gian GPU compute và chi phí bộ nhớ cần thiết.
Đào tạo YOLOX
YOLOX dựa trên các chiến lược tăng cường dữ liệu mạnh mẽ như... MixUp và Mosaic. Tuy nhiên, các tác giả đã phát hiện ra rằng việc tắt các phép tăng cường mạnh mẽ này trong 15 kỷ nguyên cuối cùng cho phép mô hình thu hẹp khoảng cách với thực tế, từ đó cải thiện đáng kể các chỉ số độ chính xác cuối cùng.
Các trường hợp sử dụng lý tưởng
- DAMO-YOLO: Phù hợp nhất cho các triển khai công nghiệp có tính rủi ro cao, nơi có thể hỗ trợ các pipeline chưng cất phía máy chủ và nơi phần cứng mục tiêu (như các GPU NVIDIA cụ thể) được hưởng lợi trực tiếp từ kiến trúc NAS cổ nặng của nó.
- YOLOX: Tuyệt vời cho các nhà phát triển đang tìm kiếm một phương pháp hoàn toàn không sử dụng liên kết. Cực kỳ nhẹ.
YOLOXnanogiúp nó khả thi cho hệ thống cũ. Android thiết bị, điện toán biên, và các cảm biến IoT rất hạn chế, nơi số lượng tham số là nút thắt cổ chai tuyệt đối.
Lợi thế của Ultralytics: Giới thiệu YOLO26
Trong khi DAMO- YOLO Mặc dù YOLOX là những cột mốc xuất sắc, nhưng ngày nay các nhà phát triển đòi hỏi những giải pháp toàn diện, linh hoạt và dễ sử dụng hơn. Đây chính là điểm mạnh của Nền tảng Ultralytics và Ultralytics YOLO26 mới ra mắt.
Ra mắt vào tháng 1 năm 2026, YOLO26 là mô hình được khuyến nghị tối ưu cho tất cả các tác vụ thị giác máy tính . Nó giới thiệu một loạt các đột phá vượt trội so với các kiến trúc cũ hơn:
- Thiết kế loại bỏ NMS đầu cuối (End-to-End NMS-Free): YOLO26 tự nhiên loại bỏ hậu xử lý Non-Maximum Suppression (NMS). Điều này cho phép triển khai đơn giản và nhanh hơn đáng kể, tránh các nút thắt cổ chai về độ trễ vốn có trong các đầu detect truyền thống.
- Tăng tốc suy luận trên CPU lên đến 43%: Bằng cách loại bỏ chiến lược Distribution Focal Loss (DFL) và tối ưu hóa các lớp, YOLO26 mang lại tốc độ vượt trội trên CPU và phần cứng biên.
- Trình 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), YOLO26 giới thiệu trình tối ưu hóa MuSGD (một sự kết hợp giữa SGD và Muon), mang lại quá trình huấn luyện rất ổn định và hội tụ nhanh hơn nhiều so với các thiết lập cũ trong YOLOX.
- ProgLoss + STAL: Các hàm mất mát tiên tiến này mang lại những cải thiện đáng kể trong nhận diện vật thể nhỏ, làm cho YOLO26 vượt trội hơn hẳn đối với cảnh quay từ máy bay không người lái và robot học.
- Tính linh hoạt: Không giống như DAMO-YOLO, vốn chỉ dành riêng cho object detection, YOLO26 xử lý liền mạch phân đoạn đối tượng (instance segmentation), ước tính tư thế, phân loại và Hộp giới hạn định hướng (OBB) một cách nguyên bản trong cùng một hệ sinh thái được duy trì tốt.
Dễ sử dụng với Ultralytics
Cái Ultralytics Python API giúp đơn giản hóa trải nghiệm của nhà phát triển. Việc huấn luyện một mô hình YOLO26 hiện đại đòi hỏi ít mã lặp lại hơn nhiều và tránh được các quy trình chưng cất phức tạp của DAMO-. YOLO Hơn nữa, Ultralytics các mẫu có mức độ thấp đặc biệt CUDA yêu cầu bộ nhớ trong quá trình huấn luyện so với các mô hình dựa trên Transformer nặng nề.
from ultralytics import YOLO
# Load the latest Ultralytics YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset with one line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run fast, NMS-free inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX or TensorRT seamlessly
model.export(format="onnx")
Đào tạo và triển khai trên đám mây
Bạn có thể tự động chú thích, huấn luyện và triển khai các mô hình lên thiết bị đầu cuối bằng cách sử dụng Nền tảng Ultralytics , nền tảng này xử lý tất cả các phiên bản dữ liệu và điện toán đám mây. GPU Cung cấp cho bạn.
Kết luận
Việc lựa chọn giữa DAMO-YOLO và YOLOX phụ thuộc vào các ràng buộc cụ thể: DAMO-YOLO mang lại tỷ lệ tốc độ-độ chính xác vượt trội trên các GPU cụ thể thông qua NAS, trong khi YOLOX cung cấp thiết kế sạch, không neo lý tưởng cho các kịch bản biên nhẹ.
Tuy nhiên, đối với các nhóm đang tìm kiếm một giải pháp hiện đại, có khả năng đáp ứng nhu cầu trong tương lai và có cộng đồng người dùng năng động, kiến trúc Ultralytics YOLO26 là sự lựa chọn tối ưu. NMS - Thiết kế miễn phí, nhanh chóng CPU Khả năng suy luận và API thống nhất cho các tác vụ phát hiện, phân đoạn và xác định tư thế khiến nó trở nên vô song trong việc chuyển đổi mượt mà từ nghiên cứu sang sản xuất thực tế mạnh mẽ.
Đối với các nhà phát triển quan tâm đến việc khám phá các kiến trúc hiện đại khác, chúng tôi cũng khuyên bạn nên xem xét Ultralytics YOLO11 hoặc các mô hình dựa trên Transformer như RT-DETR có sẵn trong bộ sưu tập toàn diện. Ultralytics tài liệu.