So sánh kỹ thuật giữa EfficientDet và 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à rất quan trọng cho sự thành công của ứng dụng. Hai kiến trúc đáng chú ý đã định hình lĩnh vực này là EfficientDet , được phát triển bởi Google Research và DAMO- YOLO , được phát triển bởi Học viện DAMO của Alibaba. Mặc dù cả hai đều hướng đến mục tiêu tối đa hóa hiệu suất, nhưng triết lý thiết kế của chúng lại khác biệt đáng kể: một bên tập trung vào hiệu quả tham số và khả năng mở rộng, trong khi bên còn lại hướng đến suy luận độ trễ thấp trên phần cứng công nghiệp.
Hướng dẫn này cung cấp phân tích kỹ thuật chuyên sâu về hai mô hình này, so sánh kiến trúc, số liệu hiệu suất và trường hợp sử dụng lý tưởng để giúp các nhà phát triển đưa ra quyết định sáng suốt.
Phân tích hiệu suất: Hiệu quả so với Độ trễ
Các tiêu chuẩn sau đây minh họa sự đánh đổi rõ rệt giữa EfficientDet và DAMO- YOLO EfficientDet nổi tiếng với số lượng tham số thấp và FLOP, khiến nó trở nên hiệu quả về mặt lý thuyết, trong khi DAMO- YOLO được tối ưu hóa cho tốc độ suy luận thực tế trên GPU.
| Mô hình | Kích thước (pixels) | mAP giá trị 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | Tham số (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
| 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ững điểm chính cần ghi nhớ
Từ dữ liệu trên, một số điểm khác biệt quan trọng nổi lên:
- Sự thống trị của độ trễ GPU : DAMO- YOLO thể hiện tốc độ suy luận nhanh hơn đáng kể trên GPU phần cứng. Ví dụ, DAMO-YOLOm đạt được mAP của 49,2 với độ trễ chỉ 5,09ms trên T4 GPU . Ngược lại, EfficientDet-d4 tương đương (49,7 mAP ) cần 33,55ms— chậm hơn gần 6 lần .
- Hiệu quả tham số: EfficientDet vượt trội về chỉ số nén mô hình . Mô hình EfficientDet-d0 chỉ sử dụng 3,9 triệu tham số và 2,54 tỷ FLOP, mang lại kích thước nhỏ gọn, lý tưởng cho các thiết bị có dung lượng lưu trữ hạn chế.
- Hiệu suất CPU : EfficientDet cung cấp các điểm chuẩn đã được thiết lập cho CPU Hiệu suất cao, khiến nó trở thành lựa chọn có thể dự đoán được cho các thiết bị biên không được tăng tốc. Tuy nhiên, các lớp hợp nhất tính năng phức tạp của nó thường dẫn đến thông lượng thực tế chậm hơn so với các kiến trúc đơn giản hơn.
EfficientDet: Có khả năng mở rộng và hiệu quả
EfficientDet đã cách mạng hóa việc phát hiện đối tượng bằng cách giới thiệu một phương pháp nguyên lý để mở rộng kích thước mô hình. Được xây dựng trên nền tảng EfficientNet, EfficientDet hướng đến mục tiêu đạt được độ chính xác cao đồng thời giảm thiểu chi phí tính toán lý thuyết (FLOP).
Chi tiết EfficientDet:
- Tác giả: Mingxing Tan, Ruoming Pang, và Quoc V. Le
- Tổ chức: Google
- Date: 2019-11-20
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/ google /automl/tree/master/efficientdet
Điểm nổi bật về kiến trúc
Sự đổi mới cốt lõi của EfficientDet nằm ở hai thành phần chính:
- BiFPN (Mạng Kim tự tháp Đặc tính Hai chiều): Không giống như các FPN truyền thống tính tổng các đặc tính từ nhiều thang đo khác nhau, BiFPN đưa ra các trọng số có thể học được cho các đặc tính đầu vào khác nhau và cho phép thông tin được truyền đi liên tục theo cả hướng từ trên xuống và từ dưới lên. Điều này cải thiện khả năng hợp nhất đặc tính nhưng làm tăng độ phức tạp tính toán.
- Tỷ lệ Hợp chất: EfficientDet đề xuất một hệ số hợp chất giúp đồng thời tăng tỷ lệ xương sống, BiFPN, mạng lớp/hộp và độ phân giải đầu vào. Điều này đảm bảo tất cả các thành phần của mạng phát triển cân bằng, thay vì chỉ tăng tỷ lệ một chiều (như chiều sâu hoặc chiều rộng) một cách tùy ý.
Điểm mạnh và Điểm yếu
Điểm mạnh chính của EfficientDet nằm ở hiệu quả lý thuyết. Nó đạt được độ chính xác tiên tiến với ít tham số hơn nhiều so với các bộ phát hiện trước đây như YOLOv3 hoặc RetinaNet. Tuy nhiên, việc sử dụng nhiều tích chập phân tách theo chiều sâu và các mẫu truy cập bộ nhớ phức tạp của BiFPN có thể dẫn đến việc sử dụng ít hơn trên các GPU hiện đại, dẫn đến độ trễ cao hơn mặc dù FLOP thấp hơn.
Những cân nhắc khi triển khai
Mặc dù EfficientDet có FLOP thấp, nhưng "FLOP thấp" không phải lúc nào cũng đồng nghĩa với "suy luận nhanh". Trên phần cứng như GPU hoặc TPU, băng thông bộ nhớ và chi phí khởi chạy kernel thường quan trọng hơn. Cấu trúc đồ thị phức tạp của EfficientDet đôi khi có thể là điểm nghẽn trong các tình huống suy luận thời gian thực .
DAMO- YOLO : Đổi mới hướng đến tốc độ
DAMO- YOLO được thiết kế với mục tiêu cụ thể: thu hẹp khoảng cách giữa hiệu suất cao và độ trễ thấp trên phần cứng công nghiệp. Nó kết hợp các công nghệ tìm kiếm kiến trúc nơ-ron (NAS) tiên tiến để tìm ra cấu trúc tối ưu cho các tác vụ phát hiện.
DAMO- YOLO Chi tiết:
- 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
Điểm nổi bật về kiến trúc
DAMO- YOLO giới thiệu một số thành phần "công nghệ mới" cho YOLO gia đình:
- Xương sống MAE-NAS: Sử dụng Tìm kiếm kiến trúc thần kinh (NAS) được điều khiển bởi Entropy tối đa để khám phá các xương sống hiệu quả có thể xử lý hiệu quả các độ phân giải đầu vào khác nhau.
- RepGFPN: Đây là cải tiến so với FPN tổng quát tiêu chuẩn, kết hợp tham số hóa lại để hợp lý hóa khối hợp nhất, tối đa hóa việc sử dụng phần cứng.
- ZeroHead & AlignedOTA: Thiết kế "ZeroHead" làm giảm đáng kể độ phức tạp của đầu phát hiện, trong khi AlignedOTA (Phân công vận chuyển tối ưu) cung cấp chiến lược gán nhãn mạnh mẽ trong quá trình đào tạo để giải quyết sự không khớp giữa phân loại và hồi quy.
Điểm mạnh và Điểm yếu
DAMO- YOLO vượt trội về tốc độ thô. Bằng cách ưu tiên các cấu trúc thân thiện với khả năng tăng tốc phần cứng (như TensorRT ), nó đạt được thông lượng đáng kể. Tuy nhiên, việc phụ thuộc vào các kiến trúc phức tạp do NAS tạo ra có thể khiến việc sửa đổi hoặc tinh chỉnh cho mục đích nghiên cứu tùy chỉnh trở nên khó khăn hơn so với các kiến trúc thủ công đơn giản hơn. Ngoài ra, nó thiếu sự hỗ trợ cộng đồng rộng rãi và khả năng sử dụng đa nền tảng thường thấy ở các hệ thống chính thống hơn. YOLO phiên bản.
Ultralytics YOLO11 : Sự thay thế toàn diện
Trong khi EfficientDet cung cấp hiệu quả tham số và DAMO- YOLO cung cấp GPU Tốc độ, Ultralytics YOLO11 mang đến sự cân bằng vượt trội giữa cả hai, được gói gọn trong một hệ sinh thái thân thiện với nhà phát triển. Đối với hầu hết các ứng dụng thực tế, từ AI biên đến triển khai đám mây, YOLO11 đại diện cho sự lựa chọn tối ưu.
Tại sao chọn Ultralytics Người mẫu?
- Tính linh hoạt vô song: Không giống như EfficientDet và DAMO- YOLO , chủ yếu là các máy dò vật thể, Ultralytics YOLO11 Hỗ trợ gốc một loạt các tác vụ thị giác máy tính, bao gồm phân đoạn thực thể , ước tính tư thế , hộp giới hạn định hướng (OBB) và phân loại hình ảnh . Điều này cho phép bạn sử dụng một khuôn khổ duy nhất cho các yêu cầu dự án đa dạng.
- Cân bằng hiệu suất: YOLO11 Nó mở rộng ranh giới về độ chính xác-độ trễ. Nó thường ngang bằng hoặc vượt trội về độ chính xác của các mô hình nặng hơn, đồng thời vẫn duy trì tốc độ suy luận ngang bằng với các mô hình thời gian thực chuyên biệt.
- Dễ sử dụng & Hệ sinh thái: Ultralytics API được thiết kế đơn giản. Với tài liệu hướng dẫn chi tiết và hỗ trợ cộng đồng, các nhà phát triển có thể chuyển từ cài đặt sang đào tạo chỉ trong vài phút. Hệ sinh thái bao gồm tích hợp liền mạch cho chú thích dữ liệu , theo dõi thử nghiệm và xuất dữ liệu sang các định dạng như ONNX , TensorRT , CoreML , Và TFLite .
- Hiệu quả đào tạo: Ultralytics Các mô hình được tối ưu hóa để hội tụ nhanh. Chúng sử dụng các chiến lược tăng cường dữ liệu tiên tiến và trình tải dữ liệu hiệu quả, giúp giảm thời gian và chi phí liên quan đến việc đào tạo các mô hình hiệu suất cao.
- Hiệu quả bộ nhớ: So với các mô hình dựa trên Transformer hoặc kiến trúc cũ hơn, YOLO11 yêu cầu ít hơn đáng kể CUDA bộ nhớ để đào tạo, giúp nó có thể truy cập được trên GPU dành cho người tiêu dùng.
Ví dụ về mã: Bắt đầu với YOLO11
Triển khai phát hiện tiên tiến với Ultralytics rất đơn giản. Đoạn mã sau đây minh họa cách tải một YOLO11 mô hình hóa và chạy suy luận trên một hình ảnh:
from ultralytics import YOLO
# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")
# Run inference on a local image or URL
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
# Export the model to ONNX format for deployment
path = model.export(format="onnx")
Tích hợp liền mạch
Ultralytics Các mô hình tích hợp dễ dàng với các công cụ MLOps phổ biến. Cho dù bạn đang sử dụng MLflow để ghi nhật ký hay Ray Tune để tối ưu hóa siêu tham số, các chức năng đều được tích hợp trực tiếp vào thư viện.
Kết luận
Trong sự so sánh giữa EfficientDet và DAMO- YOLO , sự lựa chọn phần lớn phụ thuộc vào các ràng buộc phần cứng cụ thể. EfficientDet vẫn là một ứng cử viên sáng giá cho hiệu quả lý thuyết và các tình huống mà số lượng tham số là điểm nghẽn chính. DAMO- YOLO là lựa chọn chiến thắng rõ ràng cho các ứng dụng thông lượng cao chạy trên GPU hiện đại, nơi độ trễ là tối quan trọng.
Tuy nhiên, đối với một giải pháp kết hợp những ưu điểm của cả hai yếu tố—hiệu suất cao, dễ sử dụng và khả năng đa nhiệm Ultralytics YOLO11 nổi bật là tiêu chuẩn của ngành. Hệ sinh thái mạnh mẽ và những cải tiến liên tục của nó đảm bảo rằng các nhà phát triển có những công cụ đáng tin cậy nhất để xây dựng các giải pháp thị giác máy tính có khả năng mở rộng.
Khám Phá Các So Sánh Khác
Để hiểu rõ hơn về bối cảnh của các mô hình phát hiện đối tượng, hãy khám phá những so sánh bổ sung sau:
- YOLO11 so với EfficientDet
- YOLOv8 so với DAMO-YOLO
- RT-DETR so với DAMO-YOLO
- YOLO11 so với RT-DETR
- YOLOX so với EfficientDet