DAMO-YOLO so với YOLOv9#
Bối cảnh của công nghệ phát hiện vật thể thời gian thực vẫn 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ìm kiếm 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 model đều giới thiệu những cải tiến kiến trúc đáng kể nhằm mở rộng ranh giới của những gì có thể thực hiện đượ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 chiều 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 huấn luyện và khả năng triển khai thực tế của chúng. Chúng tôi cũng sẽ khám phá cách hệ sinh thái phần mềm rộng lớn đóng vai trò thiết yếu 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 model đều đại diện cho những cột mốc quan trọng trong nghiên cứu deep learning, chúng phục vụ cho 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 nơi có thể sử dụng Neural Architecture Search (NAS) chuyên sâu để khai thác các cấu hình hiệu suất cụ thể, biến nó thành một nghiên cứu thú vị cho việc triển khai tùy chỉnh trên thiết bị biên. 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 quả tham số cực cao.
Tuy nhiên, đối với các bản triển khai sẵn sàng cho môi trường production, các kỹ sư luôn khuyên dùng Ultralytics ecosystem đồng bộ. Đối với các dự án mới, mô hình YOLO26 mới nhất mang lại những điểm ưu việt từ cả hai phía: độ chính xác tối tân kết hợp với thiết kế nguyên bản end-to-end giúp loại bỏ nhu cầu xử lý hậu kỳ phức tạp.
Mặc dù DAMO-YOLO và YOLOv9 là các mô hình học thuật mạnh mẽ, việc triển khai chúng vào môi trường production thường đòi hỏi lượng lớn công sức tùy chỉnh kỹ thuật. Việc sử dụng Ultralytics YOLO26 mang lại quyền truy cập vào hiệu năng tối tân cùng một API được tối ưu và dễ bảo trì.
Thông số kỹ thuật và Quyền tác giả#
Việc hiểu nguồn gốc và trọng tâm phát triển của các model 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 việc tạo kiến trúc tự động và hợp nhất tính nă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, 2022
- Arxiv Paper: DAMO-YOLO Research Paper
- Official GitHub: tinyvision/DAMO-YOLO Repository
- Documentation: 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 huấn luyện.
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức: Institute of Information Science, Academia Sinica, Taiwan
- Ngày phát hành: 21 tháng 2, 2024
- Arxiv Paper: YOLOv9 Research Paper
- Official GitHub: WongKinYiu/yolov9 Repository
- Documentation: YOLOv9 Ultralytics Docs
Cải tiến kiến trúc#
DAMO-YOLO: Được thúc đẩy bởi Neural Architecture Search#
DAMO-YOLO tạo sự khác biệt thông qua các thành phần được tùy chỉnh cao, do máy tạo ra. Backbone của nó được tạo 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ó tính năng RepGFPN (Reparameterized Generalized Feature Pyramid Network) hiệu quả để hợp nhất tính năng, giúp tăng cường phát hiện vật thể đ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 phần đầu phát hiện (detection head) và sử dụng AlignedOTA để gán nhãn, kết hợp với quy trình nâng cao chưng cất (distillation) tinh vi trong quá trình huấn luyện. 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 huấn luyện 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 nó đ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 cực kỳ đáng tin cậy cho việc cập nhật trọng số. Đồng hành cùng PGI là kiến trúc GELAN (Generalized Efficient Layer Aggregation Network). GELAN tối ưu hóa hiệu quả tham số bằng cách kết hợp thế mạnh của CSPNet và ELAN, tối đa hóa luồng thông tin trong khi vẫn giảm thiểu nghiêm ngặt các Floating Point Operations (FLOPs).
Phân tích hiệu năng và các chỉ số#
Khi đánh giá hiệu suất, cả hai model đều thể hiện mean Average Precision (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 model 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ó.
| 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) |
|---|---|---|---|---|---|---|
| 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ư đã minh họa ở trên, YOLOv9-E đạt độ chính xác cao nhất, trong khi các biến thể DAMO-YOLO và YOLOv9 nhỏ hơn vẫn duy trì tốc độ suy luận cực kỳ cạnh tranh thông qua TensorRT optimizations.
Phương pháp huấn luyện và Hệ sinh thái#
Trong khi kiến trúc thô là quan trọng, khả năng sử dụng và hiệu quả huấn luyện được quyết định bởi hệ sinh thái của một model là tối quan trọng đối với ứng dụng thực tế.
Sự phụ thuộc của DAMO-YOLO vào chưng cất kiến thức thường đòi hỏi phải huấn luyện một model "giáo viên" cồng kềnh trước khi truyền kiến thức sang model "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ỳ huấn luyện. Tương tự, repository YOLOv9 gốc đòi hỏi phải điều hướng các tệp cấu hình phức tạp có thể làm chậm quá trình phát triển linh hoạt.
Ngược lại, việc tích hợp các mô hình vào Ultralytics Platform thay đổi hoàn toàn trải nghiệm của lập trình viên. Gói Python của Ultralytics giúp ẩn đi phần mã nguồn boilerplate, cho phép các nhóm xử lý việc tăng cường dữ liệu, tinh 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: Nhờ vào 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 đặc thù theo phần cứng là yêu cầu bắt buộc nghiêm ngặt, chẳng hạn như triển khai ASIC tùy chỉnh trong manufacturing quality control 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 giữ lại độ dốc thúc đẩy bởi 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ư analyzing aerial imagery 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ể, các 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à một lựa chọn mạnh mẽ 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.
Khi nào nên chọn YOLOv9#
YOLOv9 được khuyến nghị cho:
- Nghiên cứu Nút thắt Thông tin (Information Bottleneck): Các dự án học thuật nghiên cứu về Programmable Gradient Information (PGI) và kiến trúc Generalized Efficient Layer Aggregation Network (GELAN).
- Nghiên cứu Tối ưu hóa Luồng Gradient: Nghiên cứu tập trung vào việc hiểu và giảm thiểu tình trạng 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 Phát hiện Độ chính xác cao: Các kịch bản mà hiệu suất đo lường trên bộ dữ liệu COCO của YOLOv9 cần thiết làm điểm tham chiếu cho các 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 mang lại sự kết hợp tốt nhất giữa hiệu suất và trải nghiệm của 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 thử thách như aerial drone imagery hoặc phân tích cảm biến IoT nơi ProgLoss và STAL cải thiện đáng kể độ chính xác trên các vật thể nhỏ xíu.
Ưu thế của Ultralytics: Tiến tới YOLO26#
Đối với người dùng đang 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à latest YOLO26 models—mang lại lợi thế vượt trội không có đối thủ.
YOLO26 thay đổi căn bản bối cảnh triển khai thông qua Thiết kế không dùng NMS End-to-End. Bằng cách loại bỏ hoàn toàn 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ị biên và thiết bị tiêu thụ điện năng thấp.
Hơn nữa, YOLO26 tích hợp MuSGD Optimizer 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 huấn luyện LLM. Điều này mang lại sự hội tụ huấn luyện cực kỳ ổn định 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ờ vào API Ultralytics trực quan, bạn có thể huấn luyện một model YOLO26 hiện đại với tính năng theo dõi thử nghiệm tích hợp chỉ trong vài dòng mã 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 cần instance segmentation nâng cao, pose estimation cực kỳ chính xác, hay phát hiện bounding box tiêu chuẩn, tính linh hoạt của framework Ultralytics đảm bảo rằng đội ngũ của bạn dành ít thời gian hơn cho việc cấu hình môi trường học sâu và có nhiều thời gian hơn để triển khai các giải pháp AI vững chắc. Với các cải tiến tác vụ chuyên specialized như ProgLoss + STAL giúp nhận diện vật thể nhỏ tốt hơn, YOLO26 đứng vững ở vị trí lựa chọn hàng đầu cho thế hệ ứng dụng thị giác máy tính tiếp theo.