DAMO-YOLO so với YOLOv7: Đánh giá các bộ phát hiện đối tượng thời gian thực

Sự phát triển nhanh chóng của thị giác máy tính đã tạo ra các mô hình nhận diện đối tượng hiệu quả cao, được thiết kế để cân bằng giữa độ chính xác và chi phí tính toán. Hai mô hình nổi bật được giới thiệu vào năm 2022 là DAMO-YOLOYOLOv7. Mặc dù cả hai đều hướng đến việc vượt qua các giới hạn của các tác vụ thị giác thời gian thực, chúng đạt được kết quả thông qua các mô hình kiến trúc và phương pháp đào tạo hoàn toàn khác nhau.

Bài so sánh kỹ thuật toàn diện này khám phá các cách tiếp cận khác biệt của cả hai mô hình, kiểm tra kiến trúc, tiềm năng triển khai và các chỉ số hiệu suất để giúp các kỹ sư học máy chọn đúng công cụ cho các ứng dụng thị giác máy tính cụ thể của họ.

Nguồn gốc và Siêu dữ liệu Model

Trước khi đi sâu vào phân tích kỹ thuật, điều cần thiết là phải bối cảnh hóa nguồn gốc của hai mô hình thị giác máy tính này.

DAMO-YOLO

Được phát triển bởi các nhà nghiên cứu tại Alibaba Group, DAMO-YOLO được giới thiệu để tối ưu hóa cả tốc độ và độ chính xác thông qua việc tìm kiếm kiến trúc tự động và chưng cất (distillation).

Tìm hiểu thêm về DAMO-YOLO

YOLOv7

Được phát hành dưới dạng hiện đại nhất vào giữa năm 2022, YOLOv7 đã đẩy mạnh suy luận thời gian thực hơn nữa bằng cách giới thiệu "bag-of-freebies" có thể đào tạo mà không làm tăng chi phí triển khai.

Tìm hiểu thêm về YOLOv7

Hệ sinh thái được hỗ trợ

YOLOv7 được hỗ trợ chính thức trong hệ sinh thái Ultralytics, cho phép đào tạo, xác thực và xuất mô hình liền mạch với một API thống nhất.

Đổi mới kiến trúc

DAMO-YOLO: NAS và Chưng cất (Distillation)

DAMO-YOLO tích hợp một số kỹ thuật tiên tiến hướng tới hiệu quả tối đa:

  • NAS Backbones: Sử dụng Neural Architecture Search (NAS) để tự động thiết kế các backbone tối ưu (MAE-NAS) được tùy chỉnh cho các môi trường yêu cầu độ trễ thấp.
  • Efficient RepGFPN: Một Generalized Feature Pyramid Network đã được sửa đổi giúp nâng cao đáng kể hiệu quả hợp nhất tính năng trên nhiều quy mô.
  • ZeroHead & AlignedOTA: Tích hợp đầu phát hiện nhẹ và chiến lược gán nhãn tối ưu (AlignedOTA) để giảm chi phí tính toán.
  • Distillation Enhancement: Tận dụng tối đa việc chưng cất tri thức trong quá trình đào tạo để tăng hiệu suất của các biến thể mô hình nhỏ hơn mà không làm tăng số lượng tham số.

YOLOv7: E-ELAN và Bag-of-Freebies

YOLOv7 thực hiện cách tiếp cận kỹ thuật cấu trúc hơn, tập trung vào tối ưu hóa đường dẫn gradient và các chiến lược đào tạo mạnh mẽ.

  • Kiến trúc E-ELAN: Extended Efficient Layer Aggregation Network cho phép mô hình học các tính năng đa dạng hơn bằng cách kiểm soát các đường dẫn gradient ngắn nhất và dài nhất, đảm bảo sự hội tụ học tập hiệu quả.
  • Model Scaling: Giới thiệu phương pháp chia tỷ lệ hỗn hợp được thiết kế cho các mô hình dựa trên ghép nối (concatenation), mở rộng độ sâu và chiều rộng đồng thời để căn chỉnh cấu trúc.
  • Trainable Bag-of-Freebies: Sử dụng các kỹ thuật như tích chập tái tham số hóa (RepConv) không có kết nối identity và các chiến lược gán nhãn động, giúp tăng độ chính xác trong quá trình đào tạo mà không ảnh hưởng đến tốc độ suy luận.

Phân tích hiệu suất

Khi đánh giá mean Average Precision (mAP), tốc độ và hiệu quả, cả hai mô hình đều thể hiện các chỉ số ấn tượng, mặc dù chúng nhắm mục tiêu vào các phân khúc hơi khác nhau. YOLOv7 tập trung mạnh vào triển khai GPU với độ chính xác cao, trong khi các cấu trúc dựa trên NAS của DAMO-YOLO nhắm đến triển khai CPU và edge với độ trễ cực thấp.

Modelkích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Như đã thấy trong các chỉ số, trong khi DAMO-YOLO cung cấp các biến thể cực kỳ nhẹ (như mô hình tiny chỉ với 8.5M tham số), YOLOv7 đạt được mức độ chính xác tổng thể cao hơn, với YOLOv7x đạt 53.1 mAP ấn tượng trên bộ dữ liệu COCO.

Lợi thế của hệ sinh thái Ultralytics

Mặc dù kiến trúc lý thuyết là quan trọng, tính thực tế của một mô hình được quyết định bởi hệ sinh thái của nó. Các mô hình được hỗ trợ bởi Ultralytics, chẳng hạn như YOLOv7, được hưởng lợi từ một hệ sinh thái được duy trì tốtdễ sử dụng vô song.

  • Cân bằng hiệu suất: Các mô hình Ultralytics liên tục đạt được sự cân bằng tối ưu giữa tốc độ suy luận và độ chính xác phát hiện, khiến chúng trở nên lý tưởng cho cả thiết bị edge và triển khai mô hình trên đám mây.
  • Yêu cầu bộ nhớ: Không giống như các mô hình dựa trên Transformer nặng hơn, các mô hình Ultralytics YOLO duy trì yêu cầu bộ nhớ CUDA thấp trong quá trình đào tạo. Điều này cho phép kích thước batch lớn hơn, giúp hợp lý hóa quá trình đào tạo ngay cả trên phần cứng tiêu dùng.
  • Tính linh hoạt: Khung làm việc Ultralytics mở rộng ra ngoài việc phát hiện đối tượng sang các tác vụ như Instance SegmentationPose Estimation, cung cấp cho các nhà phát triển một bộ công cụ thị giác máy tính hoàn chỉnh.
Hiệu quả đào tạo

Gói Ultralytics cho phép bạn chuyển đổi liền mạch từ các bộ dữ liệu sang một mô hình đã được đào tạo đầy đủ chỉ trong vài phút, tận dụng các trình tải dữ liệu được tối ưu hóa cao và trọng số được đào tạo trước.

Ví dụ mã: Đào tạo YOLOv7 với Ultralytics

Tích hợp YOLOv7 vào pipeline thị giác máy tính của bạn cực kỳ đơn giản bằng cách sử dụng Ultralytics Python API.

from ultralytics import YOLO

# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Run inference and validate results
metrics = model.val()
predictions = model.predict("https://ultralytics.com/images/bus.jpg", save=True)

Tiêu chuẩn mới: Giới thiệu YOLO26

Mặc dù YOLOv7 và DAMO-YOLO đại diện cho những bước đột phá đáng kể trong năm 2022, lĩnh vực AI thị giác đang tiến triển nhanh chóng. Đối với các nhóm bắt đầu dự án mới hôm nay, mô hình được khuyến nghị là Ultralytics YOLO26 tiên tiến, được phát hành vào tháng 1 năm 2026.

YOLO26 mang đến một bước tiến thế hệ về hiệu suất và khả năng sử dụng, kết hợp các đổi mới hiện đại nhất:

  • Thiết kế End-to-End NMS-Free: YOLO26 là end-to-end nguyên bản. Bằng cách loại bỏ xử lý hậu kỳ Non-Maximum Suppression (NMS), nó cung cấp logic triển khai nhanh hơn, đơn giản hơn—một sự thay đổi mô hình ban đầu được tiên phong bởi YOLOv10.
  • MuSGD Optimizer: Lấy cảm hứng từ những đổi mới về mô hình ngôn ngữ lớn như Kimi K2 của Moonshot AI, YOLO26 sử dụng sự kết hợp giữa SGD và Muon. Trình tối ưu hóa này đảm bảo động lực đào tạo ổn định cao và tốc độ hội tụ nhanh hơn đáng kể.
  • Suy luận CPU nhanh hơn tới 43%: Với việc loại bỏ có mục tiêu Distribution Focal Loss (DFL) và những cải tiến cấu trúc sâu sắc, YOLO26 được tối ưu hóa mạnh mẽ cho điện toán edge công suất thấp, vượt trội hơn các thế hệ trước trên phần cứng không phải GPU.
  • ProgLoss + STAL: Tích hợp các hàm mất mát (loss function) mới tiên tiến nhắm mục tiêu rõ ràng và cải thiện khả năng nhận diện đối tượng nhỏ, một khả năng thiết yếu cho các ứng dụng trong ảnh hàng không, robot và giám sát an ninh.
  • Cải tiến theo tác vụ: Ngoài phát hiện tiêu chuẩn, YOLO26 có các cải tiến tùy chỉnh cho các tác vụ đa dạng, bao gồm tạo mẫu đa quy mô cho phân đoạn, RLE cho ước tính tư thế và các mất mát góc cụ thể cho Oriented Bounding Boxes (OBB).

Tìm hiểu thêm về YOLO26

Các trường hợp sử dụng lý tưởng

Việc chọn kiến trúc phù hợp phụ thuộc hoàn toàn vào môi trường triển khai mục tiêu và các ràng buộc của dự án.

Khi nào chọn DAMO-YOLO:

  • Bạn đang làm việc trong các môi trường edge bị hạn chế tài nguyên nghiêm trọng, nơi số lượng tham số thô phải được giữ ở mức cực thấp (ví dụ: vi điều khiển).
  • Bạn đang sử dụng các pipeline học máy tự động được tích hợp đặc biệt với các dịch vụ đám mây độc quyền của Alibaba.

Khi nào chọn YOLOv7:

  • Bạn có các pipeline GPU cũ đã được tối ưu hóa cho suy luận dựa trên anchor với độ chính xác cao.
  • Bạn đang hoạt động trong các môi trường nơi độ chính xác thời gian thực là tối quan trọng, chẳng hạn như xe tự lái tốc độ cao hoặc robot tiên tiến.

Khi nào chọn YOLO26 (Khuyến nghị):

  • Bạn đang xây dựng một ứng dụng thị giác máy tính mới từ đầu và cần sự hiện đại nhất về cả độ chính xác và tốc độ suy luận CPU/edge.
  • Bạn yêu cầu triển khai nhanh chóng, liền mạch (chẳng hạn như xuất sang CoreML hoặc TensorRT) mà không phải đối mặt với các ràng buộc về toán tử NMS.
  • Bạn muốn tận dụng toàn bộ khả năng của Ultralytics Platform để đào tạo trên đám mây, quản lý bộ dữ liệu và triển khai tự động.

Bằng cách tận dụng hệ sinh thái mạnh mẽ của các mô hình Ultralytics, các nhà phát triển có thể cắt giảm đáng kể thời gian kỹ thuật trong khi vẫn đảm bảo hiệu suất dự đoán hàng đầu cho các ứng dụng thực tế của họ.

Bình luận