Chuyển đến nội dung

So sánh kỹ thuật chi tiết: YOLOv5 so với DAMO-YOLO

Trong bối cảnh thị giác máy tính đang phát triển nhanh chóng, việc lựa chọn kiến trúc phát hiện đối tượng phù hợp là yếu tố then chốt cho sự thành công của dự án. Bài so sánh này sẽ khám phá hai mô hình quan trọng: Ultralytics YOLOv5 , một tiêu chuẩn công nghiệp được áp dụng trên toàn cầu, nổi tiếng với độ tin cậy và tốc độ, và DAMO- YOLO , một mô hình tập trung vào nghiên cứu của Tập đoàn Alibaba, giới thiệu các kỹ thuật tìm kiếm kiến trúc mới.

Mặc dù cả hai mô hình đều hướng đến mục tiêu giải quyết nhiệm vụ phát hiện đối tượng , nhưng chúng đáp ứng những nhu cầu khác nhau. YOLOv5 ưu tiên tính dễ sử dụng, tính linh hoạt trong triển khai và cân bằng hiệu suất thực tế, trong khi DAMO- YOLO tập trung vào việc mở rộng ranh giới học thuật với Tìm kiếm Kiến trúc Nơ-ron (NAS) và cơ chế kết hợp tính năng nặng.

Chỉ số hiệu suất và điểm chuẩn

Việc hiểu rõ sự đánh đổi giữa tốc độ suy luận và độ chính xác phát hiện là điều cần thiết khi lựa chọn mô hình cho sản xuất. Dữ liệu sau đây nêu bật hiệu suất của các mô hình này trên tập dữ liệu COCO , một chuẩn mực đánh giá phát hiện đối tượng.

Mô hìnhKích thước
(pixels)
mAP giá trị
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
Tham số
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
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

Phân tích kết quả

Dữ liệu cho thấy sự phân đôi rõ rệt trong triết lý thiết kế. YOLOv5n (Nano) là nhà vô địch không thể tranh cãi về tốc độ và hiệu quả, cung cấp thời gian suy luận đáng kinh ngạc 1,12 ms trên GPU và có thể truy cập rộng rãi CPU hiệu suất. Điều này làm cho nó trở nên lý tưởng cho các ứng dụng AI biên , nơi độ trễ thấp là không thể thương lượng.

DAMO- YOLO các mô hình, chẳng hạn như DAMO-YOLOl, đạt được cao hơn một chút Độ chính xác trung bình ( mAP ), đạt đỉnh tại 50.8, nhưng phải trả giá bằng sự mờ đục trong CPU số liệu hiệu suất. Việc thiếu báo cáo CPU tốc độ cho DAMO- YOLO cho thấy nó chủ yếu được tối ưu hóa cho cao cấp GPU môi trường, hạn chế tính linh hoạt của nó đối với các kịch bản triển khai rộng hơn như ứng dụng di động hoặc hệ thống nhúng.

Ultralytics YOLOv5 : Tiêu chuẩn công nghiệp đa năng

Tác giả: Glenn Jocher
Tổ chức: Ultralytics
Ngày: 26-06-2020
GitHub: https://github.com/ ultralytics / yolov5
Tài liệu: https://docs. ultralytics .com/models/ yolov5 /

Kể từ khi phát hành, YOLOv5 đã khẳng định vị thế là nền tảng trong cộng đồng thị giác máy tính. Được xây dựng trên nền tảng PyTorch , PyTorch cân bằng giữa tính phức tạp và khả năng sử dụng, mang đến trải nghiệm "tận dụng pin". Kiến trúc của PyTorch sử dụng xương sống CSPDarknet và một nút thắt PANet, giúp tổng hợp hiệu quả các tính năng ở nhiều quy mô khác nhau để detect các vật thể có kích thước khác nhau.

Điểm mạnh chính

  • Dễ sử dụng: Ultralytics ưu tiên trải nghiệm của nhà phát triển (DX). Với một Python API và các lệnh CLI trực quan, người dùng có thể đào tạo và triển khai các mô hình chỉ trong vài phút.
  • Hệ sinh thái được duy trì tốt: Được hỗ trợ bởi một cộng đồng năng động và cập nhật thường xuyên, YOLOv5 đảm bảo khả năng tương thích với các công cụ mới nhất, bao gồm Ultralytics HUB để quản lý mô hình liền mạch.
  • Tính linh hoạt: Vượt xa khả năng phát hiện tiêu chuẩn, YOLOv5 hỗ trợ phân đoạn trường hợpphân loại hình ảnh , cho phép các nhà phát triển xử lý nhiều tác vụ thị giác bằng một khuôn khổ duy nhất.
  • Tính linh hoạt triển khai: Từ xuất sang ONNX và TensorRT để chạy trên iOS Và Android , YOLOv5 được thiết kế để chạy ở bất cứ đâu.

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

Quy trình làm việc hợp lý

YOLOv5 tích hợp liền mạch với các công cụ MLOps phổ biến. Bạn có thể track các thí nghiệm của bạn bằng Weights & Biases hoặc Comet chỉ bằng một lệnh, đảm bảo quá trình đào tạo của bạn có thể tái tạo và dễ phân tích.

DAMO- YOLO : Độ chính xác dựa trên nghiên cứu

Tác giả: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, và Xiuyu Sun
Tổ chức: Tập đoàn Alibaba
Ngày: 2022-11-23
Arxiv: https://arxiv.org/abs/2211.15444v2
GitHub: https://github.com/tinyvision/DAMO- YOLO

DAMO- YOLO là một phương pháp được phát triển bởi Học viện DAMO của Alibaba. Phương pháp này giới thiệu một bộ công nghệ tiên tiến bao gồm Tìm kiếm Kiến trúc Nơ-ron (NAS) để tự động thiết kế xương sống hiệu quả (MAE-NAS), một cấu trúc cổ nặng được gọi là RepGFPN (Mạng Kim tự tháp Tính năng Tổng quát được Tham số hóa) và một đầu nhẹ được gọi là ZeroHead.

Đặc điểm chính

  • Mạng xương sống MAE-NAS: Sử dụng phương pháp gọi là MAE-NAS để tìm cấu trúc mạng tối ưu theo các ràng buộc độ trễ cụ thể, mặc dù điều này có thể khiến kiến trúc phức tạp hơn khi sửa đổi thủ công.
  • Gán nhãn AlignedOTA: Sử dụng chiến lược gán nhãn động có tên là AlignedOTA để giải quyết tình trạng không khớp giữa các tác vụ phân loại và hồi quy.
  • Tập trung vào độ chính xác: Mục tiêu chính của DAMO- YOLO là để tối đa hóa mAP trên COCO tập dữ liệu, khiến nó trở thành ứng cử viên sáng giá cho các cuộc thi hoặc nghiên cứu học thuật, nơi mà từng phần trăm đều có giá trị.

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

Sự khác biệt về kiến trúc và vận hành

Sự khác biệt giữa YOLOv5 và DAMO- YOLO mở rộng ra ngoài các số liệu đơn giản để đi vào triết lý thiết kế cốt lõi và các yêu cầu vận hành của họ.

Kiến trúc: Đơn giản so với phức tạp

YOLOv5 sử dụng kiến trúc trực quan, được thiết kế thủ công. Cách tiếp cận dựa trên neo của nó rất dễ hiểu và dễ gỡ lỗi. Ngược lại, DAMO- YOLO dựa vào việc tham số hóa lại mạnh mẽ và tìm kiếm tự động (NAS). Mặc dù NAS có thể tạo ra các cấu trúc hiệu quả, nhưng nó thường dẫn đến các mô hình "hộp đen" khó tùy chỉnh hoặc diễn giải cho các nhà phát triển. Ngoài ra, cổ nặng (RepGFPN) trong DAMO- YOLO làm tăng tải tính toán trong quá trình đào tạo, đòi hỏi nhiều bộ nhớ GPU hơn so với YOLOv5 Thiết kế CSP hiệu quả.

Hiệu quả đào tạo và trí nhớ

Ultralytics các mô hình này nổi tiếng vì hiệu quả đào tạo của chúng. YOLOv5 thường yêu cầu ít hơn CUDA bộ nhớ, cho phép nó được đào tạo trên GPU cấp tiêu dùng. DAMO- YOLO , với các quy trình chưng cất và tham số hóa lại phức tạp, thường đòi hỏi phần cứng cao cấp để đào tạo hiệu quả. Hơn nữa, Ultralytics cung cấp một thư viện lớn các trọng số được đào tạo trướcđiều chỉnh siêu tham số tự động để đẩy nhanh quá trình hội tụ.

Hệ sinh thái và tính dễ sử dụng

Có lẽ sự khác biệt đáng kể nhất nằm ở hệ sinh thái. YOLOv5 không chỉ là một mô hình; nó là một phần của bộ công cụ toàn diện.

  • Tài liệu: Ultralytics duy trì tài liệu đa ngôn ngữ mở rộng hướng dẫn người dùng từ khâu thu thập dữ liệu đến triển khai.
  • Cộng đồng: Một cộng đồng toàn cầu lớn đảm bảo các vấn đề được giải quyết nhanh chóng và hướng dẫn luôn sẵn có.
  • Tích hợp: Hỗ trợ gốc cho các tập dữ liệu Roboflow và các mục tiêu triển khai như NVIDIA Jetson giúp đơn giản hóa toàn bộ quy trình.

DAMO- YOLO , chủ yếu là kho lưu trữ nghiên cứu, thiếu mức độ hỗ trợ hoàn thiện này, khiến việc tích hợp vào các sản phẩm thương mại trở nên khó khăn hơn đáng kể.

Các trường hợp sử dụng thực tế

Sự lựa chọn giữa các mô hình này thường phụ thuộc vào môi trường triển khai cụ thể.

Ở đâu YOLOv5 Xuất sắc

  • Nông nghiệp thông minh: Yêu cầu tài nguyên thấp khiến nó trở nên hoàn hảo khi chạy trên máy bay không người lái hoặc máy kéo tự động để phát hiện bệnh cây trồng .
  • Sản xuất: Trong tự động hóa công nghiệp , YOLOv5 Tốc độ cao cho phép phát hiện lỗi theo thời gian thực trên băng tải chuyển động nhanh.
  • Phân tích bán lẻ: Để đếm đối tượng và quản lý hàng đợi, YOLOv5 'S CPU hiệu suất cho phép triển khai tiết kiệm chi phí trên phần cứng cửa hàng hiện có.

Nơi DAMO- YOLO Xuất sắc

  • Nghiên cứu học thuật: Các nhà nghiên cứu nghiên cứu hiệu quả của các kỹ thuật RepGFPN hoặc NAS sẽ thấy DAMO- YOLO một cơ sở có giá trị.
  • Giám sát cao cấp: Trong các tình huống sử dụng GPU chuyên dụng cấp máy chủ, trong đó độ chính xác được ưu tiên hơn độ trễ, DAMO- YOLO có thể cung cấp khả năng phát hiện chính xác trong các cảnh phức tạp.

Ví dụ về mã: Bắt đầu với YOLOv5

Đang chạy YOLOv5 là đơn giản nhờ vào Ultralytics Python gói. Ví dụ sau đây minh họa cách tải một mô hình được đào tạo trước và chạy suy luận trên một hình ảnh.

import torch

# Load a pre-trained YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Define an image URL or local path
img = "https://ultralytics.com/images/zidane.jpg"

# Run inference
results = model(img)

# Print results to the console
results.print()

# Show the image with bounding boxes
results.show()

Kết luận

Cả hai YOLOv5 và DAMO- YOLO đóng góp đáng kể vào lĩnh vực phát hiện đối tượng. DAMO- YOLO thể hiện tiềm năng của Tìm kiếm Kiến trúc Nơ-ron và khả năng kết hợp tính năng nâng cao để đạt được chuẩn mực có độ chính xác cao.

Tuy nhiên, đối với đại đa số nhà phát triển, kỹ sư và doanh nghiệp, Ultralytics YOLOv5 vẫn là lựa chọn vượt trội. Tính dễ sử dụng vượt trội, khả năng cân bằng hiệu suất mạnh mẽ và tính bảo mật của Hệ sinh thái được bảo trì tốt đảm bảo các dự án chuyển từ nguyên mẫu sang sản xuất với ít va chạm nhất. Khả năng triển khai hiệu quả trên CPU và GPU, kết hợp với yêu cầu bộ nhớ thấp hơn cho việc đào tạo, giúp... YOLOv5 một giải pháp thực tế cao cho các ứng dụng trong thế giới thực.

Đối với những người muốn tận dụng công nghệ thị giác máy tính mới nhất, Ultralytics đã tiếp tục đổi mới với YOLOv8YOLO11 hiện đại. Những mô hình mới hơn này được xây dựng trên nền tảng vững chắc của YOLOv5 , mang lại tốc độ, độ chính xác và tính linh hoạt trong công việc cao hơn.

Khám Phá Các So Sánh Khác

Để hiểu rõ hơn về cách các mô hình này phù hợp với hệ sinh thái rộng lớn hơn, hãy khám phá những so sánh chi tiết sau:


Bình luận