EfficientDet so với RTDETRv2: So sánh kỹ thuật để phát hiện đối tượng
Bối cảnh phát hiện đối tượng đã có những bước phát triển đáng kể, chuyển từ Mạng Nơ-ron Tích chập (CNN) truyền thống sang kiến trúc hiện đại dựa trên Transformer. Hai cột mốc đáng chú ý trong quá trình phát triển này là EfficientDet , một kiến trúc CNN có khả năng mở rộng từ Google và RTDETRv2 , một máy biến áp phát hiện thời gian thực từ Baidu.
Hướng dẫn này cung cấp so sánh kỹ thuật chuyên sâu giữa hai mô hình này, phân tích những cải tiến về kiến trúc, số liệu hiệu suất và các kịch bản triển khai lý tưởng. Chúng tôi cũng khám phá cách Ultralytics YOLO11 hoạt động như một giải pháp thay thế mạnh mẽ, cung cấp một hệ sinh thái thống nhất cho các ứng dụng thị giác máy tính đa dạng.
Tổng quan về mô hình
Trước khi đi sâu vào các sắc thái kiến trúc, điều cần thiết là phải hiểu nguồn gốc và mục tiêu chính của từng mô hình.
EfficientDet Chi tiết: Tác giả: Mingxing Tan, Ruoming Pang và Quoc V. Le
Tổ chức: Google Research
Ngày: 2019-11-20
Arxiv: https://arxiv.org/abs/1911.09070
GitHub: https://github.com/ google /automl/tree/master/efficientdet
Tài liệu: https://github.com/ google /automl/tree/master/efficientdet#readme
Chi tiết RTDETRv2: Tác giả: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang và Yi Liu
Tổ chức: Baidu
Ngày: 17-04-2023
Arxiv: https://arxiv.org/abs/2304.08069
GitHub: https://github.com/lyuwenyu/ RT-DETR /tree/main/rtdetrv2_pytorch
Tài liệu: https://github.com/lyuwenyu/ RT-DETR /tree/main/rtdetrv2_pytorch#readme
Phân tích kiến trúc
Sự khác biệt cốt lõi giữa EfficientDet và RTDETRv2 nằm ở cách tiếp cận cơ bản của chúng đối với việc trích xuất đặc điểm và dự đoán hộp giới hạn.
EfficientDet: Hiệu quả thông qua việc mở rộng quy mô hợp chất
EfficientDet được thiết kế để phá vỡ xu hướng chỉ đơn thuần làm cho các mô hình lớn hơn để đạt được độ chính xác cao hơn. Nó sử dụng xương sống EfficientNet và giới thiệu Mạng Kim tự tháp Tính năng Hai chiều có trọng số (BiFPN).
- BiFPN: Không giống như FPN truyền thống, BiFPN cho phép dễ dàng hợp nhất các đặc trưng đa thang đo bằng cách sử dụng các trọng số có thể học được. Điều này cho phép mạng học được tầm quan trọng của các đặc trưng đầu vào khác nhau.
- Tỷ lệ Hợp chất: EfficientDet đồng thời điều chỉnh độ phân giải, độ sâu và chiều rộng của mạng bằng một hệ số hợp chất duy nhất. Điều này đảm bảo rằng mô hình (các biến thể D0 đến D7) vẫn hiệu quả trên một phạm vi rộng các ràng buộc về tài nguyên.
RTDETRv2: Bộ chuyển đổi phát hiện thời gian thực
RTDETRv2 được xây dựng dựa trên thành công của DETR (Detection Transformer) nhưng khắc phục nhược điểm về chi phí tính toán cao và tốc độ hội tụ chậm. Đây là một mô hình không có điểm neo , tận dụng cơ chế tự chú ý để mô hình hóa bối cảnh toàn cục.
- Bộ mã hóa lai: Xử lý các tính năng đa tỷ lệ bằng cách tách rời tương tác nội tỷ lệ và hợp nhất đa tỷ lệ, cải thiện đáng kể tốc độ suy luận so với Bộ biến đổi tiêu chuẩn.
- Lựa chọn truy vấn có nhận biết IoU : Cơ chế này lựa chọn các truy vấn đối tượng ban đầu chất lượng cao, giúp tăng tốc độ hội tụ đào tạo và cải thiện độ chính xác phát hiện.
- Tính linh hoạt động: RTDETRv2 cho phép điều chỉnh tốc độ suy luận bằng cách thay đổi số lớp giải mã mà không cần phải đào tạo lại, mang lại tính linh hoạt độc đáo cho suy luận thời gian thực .
Sử dụng bộ nhớ Transformer so với CNN
Trong khi các Transformers như RTDETRv2 xuất sắc trong việc nắm bắt bối cảnh toàn cầu, chúng thường yêu cầu nhiều hơn đáng kể CUDA bộ nhớ trong quá trình đào tạo so với các kiến trúc dựa trên CNN như EfficientDet hoặc YOLO do tính phức tạp bậc hai của cơ chế chú ý.
Các chỉ số hiệu suất
Khi lựa chọn một mô hình để triển khai , các nhà phát triển phải cân nhắc sự đánh đổi giữa độ chính xác ( mAP ), tốc độ (độ trễ) và kích thước mô hình (tham số). Bảng dưới đây so sánh hiệu suất của các biến thể EfficientDet với RTDETRv2.
| 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 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
Phân tích:
- Sự chính xác: RTDETRv2 thường đạt được hiệu suất cao hơn mAPval điểm số so với các mô hình EfficientDet có độ trễ tương tự trên GPU. Ví dụ,
RTDETRv2-xvượt quaEfficientDet-d7về độ chính xác trong khi nhanh hơn đáng kể TensorRT . - Tốc độ: EfficientDet được tối ưu hóa cho FLOP, tương quan tốt với CPU hiệu suất nhưng không phải lúc nào cũng có GPU độ trễ. RTDETRv2 được thiết kế đặc biệt để tối đa hóa GPU sử dụng, khiến nó trở nên vượt trội hơn đối với các ứng dụng phía máy chủ hiệu suất cao.
- Hiệu quả tham số: EfficientDet-d0 vẫn cực kỳ nhẹ (3,9 triệu tham số), khiến nó trở thành ứng cử viên khả thi cho các thiết bị cũ có công suất rất thấp khi không có máy gia tốc hiện đại.
Lợi thế của Ultralytics: Một giải pháp thay thế vượt trội
Mặc dù EfficientDet và RTDETRv2 là những model mạnh mẽ, các nhà phát triển đang tìm kiếm một giải pháp toàn diện cân bằng giữa hiệu suất, khả năng sử dụng và tính linh hoạt nên cân nhắc dòng Ultralytics YOLO . Các model như YOLO11 mới nhất mang đến một lựa chọn hấp dẫn cho nhiều ứng dụng, từ nghiên cứu đến triển khai sản xuất.
Tại sao nên chọn Ultralytics YOLO11?
- Dễ sử dụng: Ultralytics Các mô hình nổi tiếng với trải nghiệm người dùng được sắp xếp hợp lý. Với một API Python đơn giản, người dùng có thể huấn luyện, xác thực và triển khai các mô hình chỉ trong vài dòng mã. Điều này trái ngược với các tệp cấu hình phức tạp thường được yêu cầu cho EfficientDet hoặc các vòng lặp huấn luyện tốn nhiều bộ nhớ của RTDETR.
- Tính linh hoạt: Không giống như sự tập trung vào một nhiệm vụ duy nhất của nhiều đối thủ cạnh tranh, YOLO11 hỗ trợ phát hiện đối tượng , phân đoạn thực thể , phân loại , ước tính tư thế và phát hiện đối tượng theo hướng (OBB) trong một khuôn khổ duy nhất.
- Hệ sinh thái được duy trì tốt: Ultralytics cung cấp một hệ sinh thái mạnh mẽ bao gồm Ultralytics HUB để quản lý tập dữ liệu và đào tạo mô hình, cùng với tài liệu mở rộng và hỗ trợ cộng đồng.
- Cân bằng hiệu suất: Ultralytics Các mô hình được thiết kế tỉ mỉ để mang lại sự cân bằng tuyệt vời giữa tốc độ và độ chính xác. Chúng được thiết kế để tiết kiệm bộ nhớ, cho phép đào tạo trên các GPU tiêu dùng thông thường, trong khi các mô hình Transformer có thể gặp khó khăn.
Ví dụ về mã: Bắt đầu với YOLO11
Ví dụ sau đây chứng minh việc chạy suy luận dễ dàng như thế nào khi sử dụng Ultralytics YOLO11 , thể hiện sự đơn giản của API so với các khuôn khổ cũ hơn.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt") # 'n' for nano, or try 's', 'm', 'l', 'x'
# Run inference on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Các trường hợp sử dụng lý tưởng
Việc lựa chọn mô hình phù hợp phụ thuộc rất nhiều vào các ràng buộc phần cứng cụ thể và yêu cầu của dự án.
Khi nào nên sử dụng EfficientDet
- Thiết bị Edge cũ: Nếu bạn đang triển khai trên CPU hoặc phần cứng cũ hơn, nơi mà phép tích chập có thể tách theo chiều sâu là thao tác hiệu quả duy nhất.
- Ràng buộc tham số: Đối với các ứng dụng mà kích thước lưu trữ tuyệt đối của tệp mô hình là nút thắt chính (ví dụ:
EfficientDet-d0is < 4MB).
Khi nào sử dụng RTDETRv2
- Triển khai GPU cao cấp: Khi bạn có quyền truy cập vào NVIDIA GPU (ví dụ: T4, A100) và có thể tận dụng TensorRT tối ưu hóa.
- Hiểu về bối cảnh phức tạp: Dành cho các tình huống yêu cầu khả năng ngữ cảnh toàn cục của Transformers, chẳng hạn như phát hiện các đối tượng trong bối cảnh đông đúc hoặc bị che khuất.
Khi nào sử dụng Ultralytics YOLO11
- Phát triển nhanh chóng: Khi bạn cần chuyển từ tập dữ liệu sang mô hình đã triển khai một cách nhanh chóng bằng các công cụ tiêu chuẩn như Google Colab hoặc môi trường cục bộ.
- AI cạnh thời gian thực: YOLO11 được tối ưu hóa cao cho các thiết bị biên như NVIDIA Jetson và Raspberry Pi, mang lại FPS/ vượt trội mAP sự đánh đổi.
- Yêu cầu đa nhiệm: Nếu dự án của bạn yêu cầu mặt nạ phân đoạn hoặc tạo điểm chính ngoài hộp giới hạn.
- Hiệu quả tài nguyên: Khi tài nguyên đào tạo bị hạn chế (ví dụ: VRAM hạn chế), YOLO các mô hình hiệu quả hơn đáng kể khi đào tạo so với các giải pháp thay thế dựa trên Transformer.
Kết luận
Cả EfficientDet và RTDETRv2 đều là những thành tựu đáng kể trong lĩnh vực thị giác máy tính. EfficientDet đã vượt qua giới hạn hiệu quả thông qua khả năng mở rộng quy mô, trong khi RTDETRv2 chứng minh rằng Transformers có thể được chế tạo đủ nhanh cho các ứng dụng thời gian thực.
Tuy nhiên, đối với đại đa số các nhà phát triển và doanh nghiệp, mô hình YOLO Ultralytics là giải pháp thiết thực nhất. Bằng cách kết hợp hiệu suất tiên tiến với trải nghiệm nhà phát triển vượt trội và hệ sinh thái phong phú, Ultralytics cho phép bạn xây dựng các giải pháp AI mạnh mẽ nhanh hơn và đáng tin cậy hơn.
Khám phá thêm các so sánh
Để có thêm thông tin hỗ trợ quyết định của bạn, hãy khám phá các so sánh khác sau: