DAMO-YOLO so với YOLOv9: So sánh kỹ thuật toàn diện các kiến trúc phát hiện đối tượng hiện đại
Bối cảnh phát hiện đối tượng thời gian thực đang tiếp tục phát triển với tốc độ chóng mặt. Khi các đội ngũ kỹ thuật và nhà nghiên cứu nỗ lực đạt được sự cân bằng hoàn hảo giữa độ chính xác, tốc độ suy luận và hiệu suất tính toán, hai kiến trúc đáng chú ý đã xuất hiện từ cộng đồng nghiên cứu: DAMO-YOLO và YOLOv9. Cả hai mô hình đều giới thiệu những cải tiến kiến trúc quan trọng nhằm mở rộng giới hạn của những gì có thể đạt được trong thị giác máy tính.
Hướng dẫn kỹ thuật chi tiết này cung cấp phân tích sâu về hai mô hình này, so sánh các cách tiếp cận kiến trúc độc đáo, phương pháp đào tạo và khả năng triển khai thực tế của chúng. Chúng ta cũng sẽ khám phá cách hệ sinh thái phần mềm rộng lớn đóng vai trò quan trọng trong phát triển AI hiện đại, làm nổi bật những ưu điểm của các nền tảng tích hợp như Ultralytics Platform và thế hệ mô hình mới hơn như YOLO26.
Tóm tắt điều hành: Lựa chọn kiến trúc phù hợp
Mặc dù cả hai mô hình đều đại diện cho các cột mốc quan trọng trong nghiên cứu deep learning, chúng phục vụ các triết lý triển khai hơi khác nhau.
DAMO-YOLO vượt trội trong các môi trường mà Neural Architecture Search (NAS) mạnh mẽ có thể được sử dụng để tối ưu hóa các cấu hình hiệu suất cụ thể, khiến nó trở thành một nghiên cứu thú vị cho việc triển khai ở biên (edge) tùy chỉnh. Ngược lại, YOLOv9 tập trung mạnh vào việc giải quyết các nút thắt thông tin trong deep learning, mang lại hiệu suất tham số cực kỳ cao.
Tuy nhiên, đối với các triển khai sẵn sàng cho sản xuất, các đội ngũ kỹ thuật luôn khuyến nghị tận dụng hệ sinh thái Ultralytics thống nhất. Đối với các dự án mới, mô hình YOLO26 mới nhất cung cấp những điểm tốt nhất của cả hai thế giới: độ chính xác tiên tiến kết hợp với thiết kế end-to-end nguyên bản giúp loại bỏ nhu cầu xử lý hậu kỳ phức tạp.
Trong khi DAMO-YOLO và YOLOv9 là các mô hình học thuật mạnh mẽ, việc triển khai chúng trong sản xuất thường đòi hỏi kỹ thuật tùy chỉnh đáng kể. Việc sử dụng Ultralytics YOLO26 cung cấp quyền truy cập vào hiệu suất tiên tiến với một API hợp lý và dễ bảo trì.
Thông số kỹ thuật và Tác giả
Việc hiểu rõ nguồn gốc và trọng tâm phát triển của các mô hình này cung cấp bối cảnh cần thiết cho những thế mạnh tương ứng của chúng.
DAMO-YOLO
Được phát triển bởi các nhà nghiên cứu tại Alibaba Group, DAMO-YOLO tập trung mạnh vào tạo kiến trúc tự động và kết hợp đặc trưng hiệu quả.
- Tác giả: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, và Xiuyu Sun
- Tổ chức: Alibaba Group
- Ngày phát hành: 23 tháng 11 năm 2022
- Bài báo Arxiv: Bài nghiên cứu DAMO-YOLO
- GitHub chính thức: tinyvision/DAMO-YOLO Repository
- Tài liệu: DAMO-YOLO README
YOLOv9
Được giới thiệu như một giải pháp cho việc mất thông tin trong các mạng tích chập sâu, YOLOv9 đẩy giới hạn lý thuyết về bảo toàn gradient trong quá trình đào tạo.
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức: Viện Thông tin Khoa học, Academia Sinica, Đài Loan
- Ngày phát hành: 21 tháng 2 năm 2024
- Bài báo Arxiv: Bài nghiên cứu YOLOv9
- GitHub chính thức: WongKinYiu/yolov9 Repository
- Tài liệu: Tài liệu Ultralytics về YOLOv9
Đổi mới kiến trúc
DAMO-YOLO: Được thúc đẩy bởi Neural Architecture Search
DAMO-YOLO tự tạo sự khác biệt thông qua các thành phần được tùy chỉnh nặng nề và tạo bởi máy. Backbone của nó được tạo ra bằng Neural Architecture Search (NAS), nhắm mục tiêu cụ thể vào suy luận độ trễ thấp trên nhiều phần cứng khác nhau.
Kiến trúc này có một RepGFPN (Reparameterized Generalized Feature Pyramid Network) hiệu quả để hợp nhất các đặc trưng, giúp tăng cường khả năng phát hiện đối tượng đa quy mô mà không làm tăng quá mức chi phí tính toán. Hơn nữa, nó sử dụng thiết kế ZeroHead để đơn giản hóa đầu phát hiện và sử dụng AlignedOTA để gán nhãn, kết hợp với quy trình tăng cường chưng cất phức tạp trong quá trình đào tạo. Mặc dù các kỹ thuật này mang lại suy luận nhanh, quy trình chưng cất đa giai đoạn thường đòi hỏi VRAM đáng kể và thời gian đào tạo kéo dài.
YOLOv9: Giải quyết Nút thắt Thông tin
YOLOv9 giải quyết một vấn đề cơ bản trong các mạng sâu: sự mất mát dần dần thông tin dữ liệu đầu vào khi đi qua các lớp liên tiếp.
Để chống lại điều này, các tác giả đã giới thiệu Programmable Gradient Information (PGI), một khung giám sát phụ được thiết kế để giữ lại các chi tiết quan trọng cho các lớp sâu, tạo ra các gradient đáng tin cậy cao cho việc cập nhật trọng số. Đi kèm với PGI là kiến trúc GELAN (Generalized Efficient Layer Aggregation Network). GELAN tối ưu hóa hiệu suất tham số bằng cách kết hợp thế mạnh của CSPNet và ELAN, tối đa hóa dòng thông tin trong khi giảm thiểu nghiêm ngặt các phép tính dấu phẩy động (FLOPs).
Phân tích hiệu suất và các chỉ số
Khi đánh giá hiệu suất, cả hai mô hình đều thể hiện độ chính xác trung bình (mAP) mạnh mẽ trên các tiêu chuẩn như COCO. YOLOv9 đạt được độ chính xác tuyệt đối cao hơn trên các kích thước mô hình tương đương, tận dụng kiến trúc PGI của nó để duy trì độ trung thực cao trên các tập dữ liệu khó.
| Model | 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 |
| 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 |
Như đã hiển thị ở trên, YOLOv9-E đạt được độ chính xác cao nhất, trong khi các biến thể DAMO-YOLO và YOLOv9 nhỏ hơn duy trì tốc độ suy luận rất cạnh tranh thông qua tối ưu hóa TensorRT.
Phương pháp huấn luyện và Hệ sinh thái
Mặc dù kiến trúc thô là quan trọng, khả năng sử dụng và hiệu quả đào tạo được quy định bởi hệ sinh thái của mô hình là tối quan trọng cho ứng dụng thực tế.
Sự phụ thuộc của DAMO-YOLO vào chưng cất tri thức thường yêu cầu đào tạo một mô hình "giáo viên" cồng kềnh trước khi chuyển tri thức sang mô hình "học sinh" mục tiêu. Cách tiếp cận nghiên cứu truyền thống này làm tăng đáng kể yêu cầu bộ nhớ và thời gian chu kỳ đào tạo. Tương tự, kho lưu trữ YOLOv9 gốc đòi hỏi phải điều hướng qua các tệp cấu hình phức tạp, điều này có thể làm chậm quá trình phát triển nhanh chóng.
Ngược lại, việc tích hợp các mô hình vào Nền tảng Ultralytics hoàn toàn thay đổi trải nghiệm của nhà phát triển. Gói Python của Ultralytics trừu tượng hóa mã boilerplate, cho phép các đội ngũ xử lý tăng cường dữ liệu, điều chỉnh siêu tham số và xuất mô hình một cách dễ dàng.
Các Ứng dụng Thực tế và Trường hợp Sử dụng
Các kiến trúc khác nhau tự nhiên vượt trội trong các ngành cụ thể dựa trên yêu cầu tài nguyên và cấu hình độ chính xác của chúng.
- DAMO-YOLO trong Edge AI: Do các backbone được tối ưu hóa bằng NAS, DAMO-YOLO thường được khám phá trong các hệ thống nhúng nơi việc tái tham số hóa dành riêng cho phần cứng là một nhu cầu nghiêm ngặt, chẳng hạn như triển khai ASIC tùy chỉnh trong kiểm soát chất lượng sản xuất cơ bản.
- YOLOv9 trong Phân tích chính xác: Với hiệu suất tham số cao và khả năng bảo toàn gradient dựa trên PGI, YOLOv9 rất xuất sắc cho các kịch bản phát hiện đối tượng dày đặc, chẳng hạn như phân tích hình ảnh trên không hoặc theo dõi các đối tượng nhỏ trong môi trường bán lẻ đông đúc.
Các trường hợp sử dụng và khuyến nghị
Việc lựa chọn giữa DAMO-YOLO và YOLOv9 phụ thuộc vào yêu cầu dự án cụ thể, hạn chế triển khai và tùy chọn hệ sinh thái của bạn.
Khi nào nên chọn DAMO-YOLO
DAMO-YOLO là lựa chọn mạnh mẽ cho:
- Phân tích video thông lượng cao: Xử lý các 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à số liệu chính.
- Dây chuyền sản xuất công nghiệp: Các kịch bản với các ràng buộc về độ 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 việc tìm kiếm kiến trúc tự động (MAE-NAS) và các backbone được tham số hóa lại hiệu quả đối với hiệu suất phát hiện.
Khi nào nên chọn YOLOv9
YOLOv9 được khuyến nghị cho:
- Nghiên cứu về Nút thắt Thông tin (Information Bottleneck): Các dự án học thuật nghiên cứu về kiến trúc Programmable Gradient Information (PGI) và Generalized Efficient Layer Aggregation Network (GELAN).
- Nghiên cứu Tối ưu hóa Dòng Gradient: Các nghiên cứu tập trung vào việc hiểu và giảm thiểu mất mát thông tin trong các lớp mạng sâu trong quá trình huấn luyện.
- Đo lường Hiệu năng Nhận diện Độ chính xác cao: Các trường hợp cần hiệu năng benchmark COCO mạnh mẽ của YOLOv9 làm điểm tham chiếu để so sánh kiến trúc.
Khi 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 suất 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 ổn định, độ trễ thấp mà không cần sự phức tạp của việc hậu xử lý Non-Maximum Suppression.
- Môi trường chỉ sử dụng CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ suy luận trên CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
- Nhận diện đối tượng nhỏ: Các kịch bản thách thức như ảnh drone 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 đối tượng cực nhỏ.
Lợi thế của Ultralytics: Tiến tới YOLO26
Đối với người dùng so sánh các kiến trúc cũ, việc chuyển đổi sang hệ sinh thái Ultralytics hiện đại—cụ thể là các mô hình YOLO26 mới nhất—mang lại lợi thế vô song.
YOLO26 thay đổi cơ bản bối cảnh triển khai thông qua Thiết kế NMS-Free End-to-End. Bằng cách loại bỏ hoàn toàn việc xử lý hậu kỳ Non-Maximum Suppression (NMS), nó mang lại các kiến trúc triển khai nhanh hơn và đơn giản hơn đáng kể. Kết hợp với việc loại bỏ Distribution Focal Loss (DFL), YOLO26 cung cấp khả năng tương thích vượt trội cho các thiết bị cạnh và thiết bị công suất thấp.
Hơn nữa, YOLO26 tích hợp Trình tối ưu hóa MuSGD mang tính cách mạng, một sự kết hợp giữa Stochastic Gradient Descent và các tối ưu hóa Muon lấy cảm hứng từ những đổi mới trong đào tạo LLM. Điều này mang lại sự hội tụ đào tạo ổn định cao trong khi vẫn duy trì mức sử dụng bộ nhớ thấp đáng kể so với các lựa chọn thay thế nặng về transformer.
Nhờ API Ultralytics trực quan, bạn có thể đào tạo một mô hình YOLO26 tiên tiến với tính năng theo dõi thử nghiệm tích hợp chỉ trong vài dòng code Python.
from ultralytics import YOLO
# Load the latest NMS-free YOLO26 model
model = YOLO("yolo26n.pt")
# Train on your custom dataset efficiently
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export the trained model to ONNX format
model.export(format="onnx")Cho dù bạn yêu cầu instance segmentation nâng cao, pose estimation độ chính xác cao hay phát hiện khung bao (bounding box) tiêu chuẩn, tính linh hoạt của khung làm việc Ultralytics đảm bảo rằng đội ngũ của bạn dành ít thời gian hơn để cấu hình môi trường deep learning và nhiều thời gian hơn để triển khai các giải pháp AI mạnh mẽ. Với các cải tiến tác vụ chuyên biệt như ProgLoss + STAL để nhận dạng vật thể nhỏ nâng cao, YOLO26 là lựa chọn hàng đầu cho thế hệ ứng dụng thị giác tiếp theo.