Link to this sectionYOLOv10 so với DAMO-YOLO#
Khi xây dựng các pipeline computer vision hiện đại, việc lựa chọn kiến trúc phát hiện đối tượng thời gian thực phù hợp là rất quan trọng. Trong phân tích kỹ thuật toàn diện này, chúng tôi khám phá các kiến trúc, số liệu hiệu suất và các trường hợp sử dụng lý tưởng cho YOLOv10 và DAMO-YOLO. Cả hai mô hình đều đại diện cho những bước tiến đáng kể trong khả năng phát hiện đối tượng, nhưng chúng đi theo các lộ trình kiến trúc khác nhau để đạt được mục tiêu của mình.
Cho dù dự án của bạn yêu cầu triển khai trên phần cứng edge AI bị hạn chế hay đòi hỏi độ chính xác tối đa trên GPU đám mây, việc hiểu các sắc thái của những kiến trúc này sẽ giúp bạn đưa ra quyết định sáng suốt.
Link to this sectionKhám phá YOLOv10#
Được giới thiệu bởi các nhà nghiên cứu tại Đại học Thanh Hoa, YOLOv10 đã cách mạng hóa dòng họ YOLO bằng cách giới thiệu một phương pháp end-to-end nguyên bản, giúp loại bỏ hiệu quả nhu cầu về Non-Maximum Suppression (NMS) trong quá trình hậu xử lý.
Chi tiết về YOLOv10:
- Tác giả: Ao Wang, Hui Chen, Lihao Liu, et al.
- Tổ chức: Đại học Thanh Hoa
- Ngày: 23-05-2024
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- Tài liệu: https://docs.ultralytics.com/models/yolov10/
Link to this sectionCác tính năng kiến trúc chính#
Cải tiến chính của YOLOv10 là chiến lược Consistent Dual Assignments cho quá trình huấn luyện không cần NMS. Các trình phát hiện đối tượng truyền thống phụ thuộc rất nhiều vào NMS để lọc các bounding box chồng chéo, điều này gây ra độ trễ không thể dự đoán được—một nút thắt đáng kể cho các ứng dụng thời gian thực như autonomous vehicles và robot tốc độ cao. Bằng cách dự đoán trực tiếp một bounding box tối ưu duy nhất cho mỗi đối tượng, YOLOv10 đạt được độ trễ suy luận siêu thấp và có thể dự đoán trước.
Hơn nữa, mô hình sử dụng thiết kế Holistic Efficiency-Accuracy Driven Design. Kiến trúc này tối ưu hóa các thành phần khác nhau, bao gồm head phân loại nhẹ và cơ chế downsampling tách biệt không gian-kênh, giúp giảm đáng kể sự dư thừa tính toán. Kết quả là một kiến trúc tự hào với số lượng tham số thấp hơn và ít FLOP hơn trong khi vẫn duy trì được mean Average Precision (mAP) đầy cạnh tranh.
Link to this sectionVí dụ sử dụng#
YOLOv10 được tích hợp sâu vào hệ sinh thái Ultralytics, giúp việc sử dụng trở nên vô cùng dễ dàng thông qua Ultralytics Python package.
from ultralytics import YOLO
# Load a pre-trained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to TensorRT format
model.export(format="engine", quantize=16)Link to this sectionKhám phá DAMO-YOLO#
Được phát triển bởi Tập đoàn Alibaba, DAMO-YOLO tập trung vào việc khám phá các cấu trúc mạng hiệu quả cao thông qua Neural Architecture Search (NAS) tự động, nhằm đẩy mạnh biên Pareto về tốc độ và độ chính xác.
Thông tin chi tiết về DAMO-YOLO:
- 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
Link to this sectionCác tính năng kiến trúc chính#
DAMO-YOLO giới thiệu một số công nghệ mới được thiết kế riêng cho các ứng dụng công nghiệp. Nền tảng của mô hình là backbone MAE-NAS, được tạo ra thông qua tìm kiếm tiến hóa đa mục tiêu (Multi-Objective Evolutionary search). Quy trình tự động này phát hiện các cấu trúc backbone tuân thủ nghiêm ngặt các ngân sách tính toán được xác định trước, tạo ra sự cân bằng tinh tế giữa độ chính xác và độ trễ suy luận.
Ngoài ra, kiến trúc này sử dụng neck Efficient RepGFPN. Feature pyramid network này được thiết kế để cải thiện khả năng kết hợp đặc trưng trên các quy mô khác nhau, điều này rất quan trọng đối với các tác vụ phức tạp như aerial imagery analysis nơi các đối tượng có kích thước thay đổi đáng kể. Để bổ sung cho điều này, DAMO-YOLO triển khai ZeroHead, một detection head tối giản giúp giảm đáng kể độ phức tạp của các lớp dự đoán cuối cùng, tiết kiệm thời gian tính toán quý giá trong quá trình suy luận.
Link to this sectionSo sánh hiệu năng#
Khi đánh giá các kiến trúc phát hiện đối tượng, việc tìm kiếm sự đánh đổi phù hợp giữa tốc độ suy luận, hiệu quả tham số và độ chính xác phát hiện là tối quan trọng. Bảng dưới đây so sánh hiệu suất của YOLOv10 và DAMO-YOLO trên các kích thước mô hình tương ứng.
| Mô hình | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| 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 |
Như đã quan sát trong các bài kiểm chuẩn, YOLOv10 liên tục cung cấp các cấu hình độ trễ đặc biệt trên TensorRT, đặc biệt là ở phiên bản nano, yêu cầu số lượng tham số và FLOP ít hơn đáng kể so với các mô hình tương đương của DAMO-YOLO. Mặc dù DAMO-YOLO cung cấp mAP mạnh mẽ ở phiên bản tiny, hiệu quả tham số và độ trễ suy luận của dòng YOLOv10 mang lại lợi thế rõ rệt cho các môi trường triển khai bị hạn chế.
Link to this sectionCác trường hợp sử dụng và Khuyến nghị#
Việc lựa chọn giữa YOLOv10 và DAMO-YOLO phụ thuộc vào các yêu cầu dự án cụ thể, hạn chế triển khai và sở thích về hệ sinh thái của bạn.
Link to this sectionKhi nào nên chọn YOLOv10#
YOLOv10 là một lựa chọn mạnh mẽ cho:
- Phát hiện thời gian thực không cần NMS: Các ứng dụng hưởng lợi từ việc phát hiện đầu cuối (end-to-end) mà không cần NMS, giúp giảm độ phức tạp khi triển khai.
- Sự cân bằng giữa tốc độ và độ chính xác: Các dự án yêu cầu sự cân bằng mạnh mẽ giữa tốc độ suy luận và độ chính xác của phát hiện trên nhiều quy mô model khác nhau.
- Các ứng dụng có độ trễ nhất quán: Các kịch bản triển khai nơi thời gian suy luận có thể dự đoán được là yếu tố quan trọng, chẳng hạn như robotics hoặc các hệ thống tự hành.
Link to this sectionKhi nào nên chọn DAMO-YOLO#
DAMO-YOLO được khuyến nghị cho:
- Phân tích video thông lượng cao: Xử lý luồng video FPS cao trên cơ sở hạ tầng GPU NVIDIA cố định, nơi thông lượng batch-1 là chỉ số chính.
- Dây chuyền sản xuất công nghiệp: Các kịch bản với hạn chế độ trễ GPU nghiêm ngặt trên phần cứng chuyên dụng, chẳng hạn như kiểm tra chất lượng thời gian thực trên dây chuyền lắp ráp.
- Nghiên cứu Neural Architecture Search: Nghiên cứu tác động của tìm kiếm kiến trúc tự động (MAE-NAS) và các backbone tái tham số hóa hiệu quả đối với hiệu năng phát hiện.
Link to this sectionKhi 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 năng 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 nhất quán, độ trễ thấp mà không có sự phức tạp của hậu xử lý Non-Maximum Suppression.
- Môi trường chỉ dùng CPU: Các thiết bị không có tăng tốc GPU chuyên dụng, nơi suy luận CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
- Phát hiện vật thể nhỏ: Các kịch bản đầy thách thức như hình ảnh máy bay không người lái 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 vật thể cực nhỏ.
Link to this sectionLợi thế từ Ultralytics#
Mặc dù cả hai mô hình đều ấn tượng về mặt kỹ thuật, việc lựa chọn kiến trúc cho sản xuất đòi hỏi phải nhìn xa hơn các số liệu thô. Xây dựng với các mô hình được hỗ trợ nguyên bản bởi Ultralytics ecosystem mang lại những lợi thế vô song cho cả nhà phát triển và nhà nghiên cứu.
Link to this sectionDễ sử dụng và hệ sinh thái được bảo trì tốt#
Không giống như các kho lưu trữ học thuật độc lập thường bị bỏ rơi, Ultralytics cung cấp một hệ sinh thái mạnh mẽ, được duy trì tích cực. Việc thiết lập các môi trường phức tạp cho các mô hình dựa quá nhiều vào các pipeline NAS có thể gây nản lòng. Ngược lại, Ultralytics cung cấp Python API chuẩn hóa, trực quan và CLI mạnh mẽ, được hỗ trợ bởi tài liệu documentation chi tiết. Điều này giúp giảm đáng kể thời gian đưa các giải pháp thị giác máy tính tùy chỉnh ra thị trường.
Link to this sectionHiệu quả đào tạo và yêu cầu bộ nhớ#
Huấn luyện các mô hình lớn có thể nhanh chóng trở nên đắt đỏ về mặt tính toán. Các kiến trúc YOLO của Ultralytics vốn nổi tiếng với dấu chân bộ nhớ CUDA thấp trong quá trình huấn luyện và suy luận. Hiệu quả này cho phép các nhà phát triển huấn luyện mô hình trên phần cứng cấp người dùng hoặc các instance đám mây tiết kiệm chi phí mà không gặp phải lỗi hết bộ nhớ (out-of-memory), vốn rất phổ biến khi làm việc với các mô hình dựa trên Transformer như RT-DETR.
Ultralytics tích hợp nguyên bản với các công cụ MLOps hàng đầu. Bạn có thể dễ dàng theo dõi tiến trình huấn luyện mô hình của mình bằng cách sử dụng các tích hợp với Weights & Biases, Comet hoặc ClearML mà không cần thêm bất kỳ đoạn mã boilerplate nào.
Link to this sectionTính linh hoạt giữa các tác vụ#
Một hạn chế đáng kể của nhiều mô hình phát hiện chuyên dụng là sự tập trung hẹp. Trong hệ sinh thái Ultralytics, bạn không chỉ giới hạn ở việc phát hiện đối tượng. Các công cụ mở rộng liền mạch sang nhiều computer vision tasks, bao gồm instance segmentation, image classification, pose estimation và oriented bounding box (OBB) detection.
Link to this sectionNhìn về phía trước: Sự tiến hóa của YOLO26#
Trong khi YOLOv10 tiên phong trong việc suy luận không cần NMS và DAMO-YOLO thể hiện sức mạnh của NAS, lĩnh vực thị giác máy tính đang chuyển động rất nhanh. Đối với các nhà phát triển đang tìm kiếm giải pháp tiên tiến nhất, chúng tôi khuyên bạn nên xem qua Ultralytics YOLO26.
Được phát hành như là người kế thừa chính thức của YOLO11, YOLO26 xây dựng dựa trên nền tảng không cần NMS mà YOLOv10 đã thiết lập nhưng đưa nó đi xa hơn đáng kể.
Những tiến bộ chính trong YOLO26 bao gồm:
- Suy luận CPU nhanh hơn tới 43%: Được tối ưu hóa cụ thể cho điện toán biên và các thiết bị năng lượng thấp.
- Loại bỏ DFL: Distribution Focal Loss đã được loại bỏ, đảm bảo việc xuất mô hình đơn giản hơn và tăng cường khả năng tương thích với nhiều mục tiêu triển khai đa dạng.
- Bộ tối ưu hóa MuSGD: Một sự kết hợp giữa SGD và Muon, mang lại sự ổn định khi huấn luyện LLM tiên tiến và khả năng hội tụ nhanh hơn trực tiếp vào thị giác máy tính.
- ProgLoss + STAL: Các hàm mất mát (loss functions) được cải tiến đáng kể, mang lại những cải tiến đáng chú ý trong việc nhận dạng vật thể nhỏ, điều này rất cần thiết cho các trường hợp sử dụng như agriculture và viễn thám.
Bằng cách sử dụng Ultralytics Platform mới được làm mới, các nhà phát triển có thể chú thích, huấn luyện và triển khai liền mạch các mô hình thế hệ tiếp theo như YOLO26 chỉ trong vài cú nhấp chuột, đảm bảo pipeline thị giác máy tính của bạn vừa hiện đại vừa sẵn sàng cho tương lai.