EfficientDet so với YOLO11 : Cân bằng hiệu quả và hiệu suất thời gian thực
Bối cảnh phát hiện đối tượng đã phát triển nhanh chóng, được thúc đẩy bởi nhu cầu về các mô hình không chỉ chính xác mà còn đủ hiệu quả để triển khai trong thế giới thực. Hai cột mốc quan trọng trong quá trình phát triển này là Google EfficientDet và Ultralytics YOLO11 . Mặc dù cả hai kiến trúc đều hướng đến mục tiêu tối ưu hóa sự đánh đổi giữa tốc độ và độ chính xác, nhưng chúng lại tiếp cận vấn đề theo các triết lý thiết kế khác nhau và hướng đến các trường hợp sử dụng chính khác nhau.
EfficientDet đã cách mạng hóa lĩnh vực này bằng cách giới thiệu một phương pháp có hệ thống để mở rộng quy mô mô hình, tập trung mạnh mẽ vào hiệu quả tham số và chi phí tính toán lý thuyết (FLOP). Ngược lại, YOLO11 đại diện cho công nghệ thị giác máy tính thời gian thực tiên tiến nhất, ưu tiên tốc độ suy luận thực tế trên phần cứng hiện đại, tính linh hoạt trong nhiều tác vụ và trải nghiệm lấy nhà phát triển làm trọng tâm. Bài so sánh toàn diện này đi sâu vào các thông số kỹ thuật, cải tiến về kiến trúc và điểm chuẩn hiệu suất của các công nghệ này để giúp bạn lựa chọn công cụ phù hợp cho dự án của mình.
EfficientDet của Google
EfficientDet là một họ các mô hình phát hiện đối tượng được phát triển bởi Google Nhóm Brain. Ra mắt vào cuối năm 2019, sản phẩm này được thiết kế để giải quyết tình trạng kém hiệu quả của các máy dò hiện đại trước đây, thường dựa vào các xương sống lớn hoặc mạng lưới hợp nhất tính năng chưa được tối ưu hóa.
Chi tiết kỹ thuật:
- Tác giả: Mingxing Tan, Ruoming Pang, Quoc V. Le
- Tổ chức: Google
- Date: 2019-11-20
- Arxiv: EfficientDet: Phát hiện đối tượng hiệu quả và có khả năng mở rộng
- GitHub: google /automl/efficientdet
- Tài liệu: EfficientDet README
Kiến trúc và các cải tiến chính
Thành công của EfficientDet nằm ở hai đóng góp kiến trúc chính phối hợp với nhau để tối đa hóa hiệu quả:
- BiFPN (Mạng Kim tự tháp Đặc tính Hai chiều): Mạng Kim tự tháp Đặc tính (FPN) truyền thống hợp nhất các đặc tính từ các thang đo khác nhau theo cách từ trên xuống. EfficientDet đã giới thiệu BiFPN, cho phép thông tin truyền theo cả hướng từ trên xuống và từ dưới lên. Hơn nữa, nó sử dụng cơ chế hợp nhất đặc tính có trọng số, học tầm quan trọng của từng đặc tính đầu vào, cho phép mạng ưu tiên các tín hiệu mang tính thông tin hơn.
- Quy mô Hợp chất: Lấy cảm hứng từ EfficientNet, phương pháp này tạo ra một họ mô hình (D0 đến D7) bằng cách đồng đều tỷ lệ độ phân giải, độ sâu và chiều rộng của xương sống, mạng đặc trưng và mạng dự đoán. Điều này đảm bảo rằng khi mô hình phát triển, nó duy trì sự cân bằng giữa các thành phần khác nhau, tối ưu hóa FLOP và số lượng tham số.
Xương sống EfficientNet
EfficientDet sử dụng EfficientNet làm xương sống, một mạng lưới phân loại cũng được phát triển bởi Google EfficientNet được tối ưu hóa bằng cách sử dụng Tìm kiếm kiến trúc nơ-ron (NAS) để tìm ra cấu trúc mạng hiệu quả nhất, sử dụng nhiều phép tích chập tách biệt theo chiều sâu để giảm tính toán.
Điểm mạnh và Điểm yếu
EfficientDet nổi tiếng với hiệu suất tham số cao , đạt điểm đánh giá mAP cạnh tranh với số lượng tham số ít hơn đáng kể so với nhiều đối thủ cùng thời. Tính chất có thể mở rộng của nó cho phép các nhà nghiên cứu lựa chọn kích thước mô hình phù hợp chính xác với ngân sách tính toán lý thuyết của họ.
Tuy nhiên, hiệu quả lý thuyết không phải lúc nào cũng chuyển thành tốc độ thực tế. Việc sử dụng rộng rãi các phép tích chập tách biệt theo chiều sâu và kết nối phức tạp của BiFPN có thể dẫn đến giảm tốc độ. GPU sử dụng. Do đó, độ trễ suy luận trên GPU thường cao hơn so với các mô hình được tối ưu hóa cho xử lý song song như YOLO loạt. Ngoài ra, EfficientDet chỉ là một trình phát hiện đối tượng, thiếu hỗ trợ gốc cho các tác vụ thị giác máy tính khác như phân đoạn thể hiện hoặc ước tính tư thế trong cùng một cơ sở mã.
Các trường hợp sử dụng lý tưởng
- Trí tuệ nhân tạo biên trên CPU: Các thiết bị mà bộ nhớ là hạn chế cứng và GPU không có khả năng tăng tốc.
- Nghiên cứu học thuật: Các nghiên cứu tập trung vào hiệu quả của mạng nơ-ron và quy luật mở rộng.
- Ứng dụng tiết kiệm năng lượng: Các tình huống mà việc giảm thiểu mức tiêu thụ pin (liên quan đến FLOP) quan trọng hơn độ trễ thực tế.
Ultralytics YOLO11
Ultralytics YOLO11 là phiên bản mới nhất trong YOLO (Bạn Chỉ Nhìn Một Lần). Phiên bản này được xây dựng dựa trên di sản về hiệu suất thời gian thực, giới thiệu những cải tiến về kiến trúc giúp vượt qua giới hạn về độ chính xác trong khi vẫn duy trì tốc độ suy luận nhanh như chớp mà các nhà phát triển mong đợi.
Chi tiết kỹ thuật:
- Tác giả: Glenn Jocher, Jing Qiu
- Tổ chức: Ultralytics
- Ngày: 2024-09-27
- GitHub: ultralytics / ultralytics
- Tài liệu: Tài liệu YOLO11
Kiến trúc và các tính năng
YOLO11 sử dụng đầu phát hiện không cần neo hiện đại, loại bỏ nhu cầu cấu hình hộp neo thủ công và đơn giản hóa quy trình đào tạo. Kiến trúc xương sống và cổ của nó đã được tối ưu hóa để tăng cường khả năng trích xuất đặc điểm, cải thiện hiệu suất cho các tác vụ khó như phát hiện vật thể nhỏ và cảnh hỗn loạn.
Không giống như mục tiêu chính của EfficientDet là giảm FLOP, YOLO11 được thiết kế để tối ưu hóa hiệu suất phần cứng . Điều này có nghĩa là các lớp và hoạt động của nó được lựa chọn để tối đa hóa thông lượng trên GPU và bộ tăng tốc NPU .
Sự linh hoạt được giải phóng
Một người duy nhất YOLO11 Kiến trúc mô hình hỗ trợ một loạt các tác vụ thị giác. Trong cùng một khuôn khổ, bạn có thể thực hiện Phát hiện Đối tượng , Phân đoạn Thực thể , Phân loại Hình ảnh , Ước tính Tư thế và Phát hiện Hộp Giới hạn Định hướng (OBB) .
Điểm mạnh và Điểm yếu
YOLO11 Điểm mạnh chính của nó là sự cân bằng tuyệt vời giữa tốc độ và độ chính xác . Nó mang lại độ chính xác tiên tiến, sánh ngang hoặc vượt trội hơn các mô hình lớn hơn trong khi chạy ở độ trễ chỉ bằng một phần nhỏ. Điều này làm cho nó trở nên lý tưởng cho các ứng dụng suy luận thời gian thực . Hơn nữa, Ultralytics hệ sinh thái đảm bảo tính dễ sử dụng với API thống nhất, giúp việc đào tạo và triển khai trở nên liền mạch.
Một điều cần cân nhắc là nhỏ nhất YOLO11 Các biến thể, mặc dù cực kỳ nhanh, có thể đánh đổi một chút về độ chính xác so với các mô hình lớn nhất, đòi hỏi nhiều tính toán nhất hiện có trong giới học thuật. Tuy nhiên, đối với việc triển khai thực tế, sự đánh đổi này hầu như luôn có lợi.
Các trường hợp sử dụng lý tưởng
- Hệ thống tự động: Nhận thức thời gian thực cho robot và xe tự hành .
- Tự động hóa công nghiệp: Kiểm soát chất lượng sản xuất tốc độ cao và phát hiện lỗi.
- Thành phố thông minh: Giám sát giao thông và an ninh hiệu quả.
- Ứng dụng tương tác: Ứng dụng di động yêu cầu phản hồi trực quan tức thì.
So sánh hiệu suất
Khi so sánh EfficientDet và YOLO11 , sự khác biệt nổi bật nhất nằm ở tốc độ suy luận , đặc biệt là trên GPU phần cứng. Trong khi các mô hình EfficientDet (D0-D7) cho thấy hiệu quả tham số tốt, các hoạt động phức tạp của chúng (như BiFPN) ngăn cản chúng sử dụng đầy đủ khả năng xử lý song song.
Như thể hiện trong bảng dưới đây, YOLO11n đạt được mức cao hơn mAP (39,5) so với EfficientDet-d0 (34,6) trong khi nhanh hơn đáng kể. Ấn tượng hơn, YOLO11m tương đương với độ chính xác của EfficientDet-d5 nặng hơn nhiều (51,5). mAP ) nhưng chạy nhanh hơn khoảng 14 lần trên T4 GPU (4,7 ms so với 67,86 ms). Lợi thế tốc độ lớn này cho phép YOLO11 để xử lý luồng video có độ phân giải cao theo thời gian thực, một khả năng đầy thách thức đối với các mô hình EfficientDet cấp cao hơn.
| 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Các Ultralytics Lợi thế
Trong khi các số liệu kỹ thuật rất quan trọng, kinh nghiệm của nhà phát triển và sự hỗ trợ của hệ sinh thái cũng quan trọng không kém đối với sự thành công của dự án. Ultralytics cung cấp một bộ công cụ toàn diện giúp đơn giản hóa toàn bộ vòng đời MLOps , mang lại những lợi thế riêng biệt so với kho lưu trữ EfficientDet tập trung vào nghiên cứu.
- Dễ sử dụng: Ultralytics Python và CLI của Python được thiết kế đơn giản. Bạn có thể tải, huấn luyện và triển khai một mô hình tiên tiến chỉ với vài dòng mã, trong khi EfficientDet thường yêu cầu các tệp cấu hình phức tạp và quản lý phụ thuộc trong TensorFlow .
- Hệ sinh thái được duy trì tốt: Ultralytics Các mô hình được hỗ trợ bởi một cộng đồng năng động và cập nhật thường xuyên. Từ kho lưu trữ GitHub đến tài liệu hướng dẫn phong phú, các nhà phát triển có thể truy cập vào vô số tài nguyên, hướng dẫn và kênh hỗ trợ.
- Hiệu quả đào tạo: YOLO11 được tối ưu hóa cho khả năng hội tụ nhanh. Nó hỗ trợ các chiến lược tải và tăng cường dữ liệu hiệu quả, giúp giảm thời gian đào tạo. Hơn nữa, yêu cầu bộ nhớ thấp hơn so với các kiến trúc cũ hoặc các mô hình dựa trên bộ biến áp cho phép đào tạo trên GPU cấp độ người dùng mà không bị hết bộ nhớ. CUDA ký ức.
- Tính linh hoạt triển khai: Khung này hỗ trợ xuất mô hình sang nhiều định dạng khác nhau bao gồm ONNX , TensorRT , CoreML , Và OpenVINO . Điều này đảm bảo rằng YOLO11 Mô hình này có thể được triển khai ở bất kỳ đâu, từ máy chủ đám mây đến các thiết bị biên như Raspberry Pi .
Thực hành với YOLO11
Trải nghiệm sự đơn giản của Ultralytics API. Ví dụ sau đây minh họa cách tải một API đã được đào tạo trước 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 an image source
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Kết luận
Cả EfficientDet và YOLO11 là những thành tựu mang tính bước ngoặt trong lĩnh vực thị giác máy tính. EfficientDet vẫn là một tài liệu tham khảo giá trị cho thiết kế kiến trúc có khả năng mở rộng và phù hợp với các ứng dụng chuyên biệt, trong đó FLOP lý thuyết là ràng buộc chính.
Tuy nhiên, đối với phần lớn các ứng dụng thị giác máy tính hiện đại, Ultralytics YOLO11 là lựa chọn vượt trội. Kiến trúc của nó mang lại sự cân bằng tốt hơn nhiều giữa độ chính xác và tốc độ , đặc biệt là trên GPU phần cứng được sử dụng trong hầu hết các môi trường sản xuất. Kết hợp với một khuôn khổ đa nhiệm linh hoạt, hệ sinh thái mạnh mẽ và khả năng sử dụng dễ dàng vượt trội, YOLO11 cho phép các nhà phát triển xây dựng và triển khai các giải pháp AI hiệu suất cao một cách tự tin.
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 xem xét khám phá những so sánh bổ sung sau:
- YOLO11 so với YOLOv10
- YOLO11 so với RT-DETR
- YOLO11 so với YOLOv9
- YOLOv8 so với EfficientDet
- YOLOX so với EfficientDet