EfficientDet vs RTDETRv2: So sánh chuyên sâu các kiến trúc phát hiện đối tượng
Việc lựa chọn kiến trúc tối ưu cho các dự án thị giác máy tính đòi hỏi phải nắm bắt được nhiều loại mạng nơ-ron khác nhau. Hướng dẫn này sẽ khám phá sự so sánh kỹ thuật chi tiết giữa hai phương pháp khác nhau: EfficientDet, một họ mạng nơ-ron tích chập (CNN) có khả năng mở rộng cao, và RTDETRv2, một mô hình transformer thời gian thực tiên tiến. Chúng tôi sẽ đánh giá sự khác biệt về cấu trúc, phương pháp huấn luyện và tính phù hợp để triển khai của chúng trên nhiều môi trường phần cứng khác nhau.
Bằng cách hiểu rõ sự đánh đổi giữa hiệu quả của các hệ thống cũ và khả năng của máy biến áp hiện đại, các nhà phát triển có thể đưa ra quyết định sáng suốt. Hơn nữa, chúng ta sẽ cùng tìm hiểu cách các giải pháp thay thế hiện đại như Ultralytics YOLO26 mới thu hẹp khoảng cách này, mang lại tốc độ, độ chính xác và tính dễ sử dụng vượt trội.
Hiểu về EfficientDet
EfficientDet đã tạo ra cuộc cách mạng trong việc phát hiện đối tượng bằng cách giới thiệu một phương pháp có nguyên tắc để mở rộng quy mô mô hình.
- Tác giả: Mingxing Tan, Ruoming Pang, và Quoc V. Le
- Tổ chức:Google
- Ngày: 20 tháng 11 năm 2019
- Arxiv:https://arxiv.org/abs/1911.09070
- GitHub: Kho lưu trữ Google AutoML
- Tài liệu: Tài liệu hướng dẫn sử dụng EfficientDet
Kiến trúc và các Khái niệm Cốt lõi
Về bản chất, EfficientDet sử dụng EfficientNet làm xương sống và giới thiệu Mạng Kim tự tháp Đặc trưng Hai chiều (BiFPN). BiFPN cho phép kết hợp đặc trưng đa tỷ lệ dễ dàng và nhanh chóng bằng cách áp dụng các trọng số có thể học được để tìm hiểu tầm quan trọng của các đặc trưng đầu vào khác nhau. Điều này được kết hợp với phương pháp mở rộng tỷ lệ phức hợp, tự động mở rộng độ phân giải, độ sâu và chiều rộng cho toàn bộ xương sống, mạng đặc trưng và mạng dự đoán hộp/lớp cùng một lúc.
Điểm mạnh và hạn chế
Điểm mạnh chính của EfficientDet nằm ở hiệu quả tham số. Tại thời điểm ra mắt, các mô hình như EfficientDet-D0 đã đạt được độ chính xác cao hơn với ít tham số và phép tính FLOP hơn so với các mô hình trước đó. YOLO các phiên bản. Điều này khiến nó trở nên rất hấp dẫn đối với các môi trường có giới hạn tính toán nghiêm ngặt.
Tuy nhiên, EfficientDet dựa vào phương pháp loại bỏ cực đại không chuẩn ( NMS Trong quá trình xử lý hậu kỳ, việc lọc các hộp giới hạn chồng chéo có thể gây ra tắc nghẽn độ trễ trong các quy trình thời gian thực. Ngoài ra, mặc dù quy trình huấn luyện được ghi chép đầy đủ, việc tinh chỉnh EfficientDet có thể khá rắc rối so với trải nghiệm phát triển được tối ưu hóa cao trong các công cụ hiện đại.
Hỗ trợ kế thừa
Mặc dù EfficientDet đã mở đường cho các mạng có khả năng mở rộng, việc triển khai các mô hình này trên các NPU hiện đại thường đòi hỏi phải tối ưu hóa thủ công rất nhiều. Để đơn giản hóa quá trình triển khai, các mô hình Ultralytics mới hơn cung cấp chức năng xuất dữ liệu chỉ với một cú nhấp chuột.
Khám phá RTDETRv2
RTDETRv2 thể hiện sự tiến hóa của các kiến trúc dựa trên transformer, chuyển đổi mô hình khỏi các mạng CNN truyền thống dựa trên anchor.
- Tác giả: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, và Yi Liu
- Tổ chức:Baidu
- Ngày: 2024-07-24
- Arxiv:https://arxiv.org/abs/2407.17140
- GitHub:Kho lưu trữ RT-DETR
- Tài liệu:Tài liệu RTDETRv2
Những tiến bộ trong công nghệ máy biến áp
RTDETRv2 được xây dựng dựa trên Real-Time Detection Transformer ( RT-DETR ) cơ sở. Nó tận dụng các cơ chế chú ý toàn cục, cho phép mô hình hiểu được ngữ cảnh phức tạp của khung cảnh mà không bị ràng buộc cục bộ bởi các phép tích chập tiêu chuẩn. Ưu điểm kiến trúc quan trọng nhất là khả năng tích hợp sẵn có của nó. NMS - Thiết kế không cần thuật toán. Bằng cách dự đoán các đối tượng trực tiếp từ hình ảnh đầu vào, nó đơn giản hóa quy trình suy luận, tránh việc điều chỉnh theo kinh nghiệm cần thiết. NMS xử lý hậu kỳ.
Điểm mạnh và Điểm yếu
RTDETRv2 hoạt động xuất sắc trong môi trường có mật độ cao, nơi các đối tượng chồng chéo gây nhầm lẫn cho các mạng CNN truyền thống. Nó có độ chính xác cao trên các tập dữ liệu chuẩn phức tạp như COCO .
Mặc dù có độ chính xác cao, các mô hình Transformer đòi hỏi lượng bộ nhớ đáng kể. Hiệu quả huấn luyện thấp hơn đáng kể; chúng cần nhiều epoch hơn và tiêu tốn nhiều bộ nhớ CUDA hơn để hội tụ so với CNN. Điều này khiến RTDETRv2 không lý tưởng cho các nhà phát triển có ngân sách điện toán đám mây hạn chế hoặc những người cần tạo mẫu nhanh chóng.
Các ràng buộc về bộ nhớ của máy biến áp
Việc huấn luyện các mô hình transformer như RTDETRv2 thường yêu cầu GPU cao cấp. Nếu bạn gặp lỗi Out-Of-Memory (OOM), hãy cân nhắc sử dụng các mô hình có yêu cầu bộ nhớ thấp hơn trong quá trình huấn luyện, chẳng hạn như dòng Ultralytics YOLO .
So sánh hiệu năng
Hiểu rõ các chỉ số hiệu năng thô là rất quan trọng để lựa chọn mô hình. Bảng sau đây so sánh EfficientDet và RTDETRv2 ở nhiều kích thước khác nhau.
| Mô hình | Kích thước (pixels) | mAPval 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 |
Các trường hợp sử dụng và Khuyến nghị
Lựa chọn giữa EfficientDet và RT-DETR Điều này phụ thuộc vào các yêu cầu cụ thể của dự án, các ràng buộc triển khai và sở thích về hệ sinh thái của bạn.
Khi nào nên chọn EfficientDet
EfficientDet là một lựa chọn mạnh mẽ cho:
- Google Cloud và TPU Pipelines: Các hệ thống tích hợp sâu rộng với Google API Cloud Vision hoặc TPU cơ sở hạ tầng nơi EfficientDet có khả năng tối ưu hóa gốc.
- Nghiên cứu về mở rộng quy mô phức hợp: Nghiên cứu chuẩn mực học thuật tập trung vào việc nghiên cứu tác động của việc mở rộng quy mô cân bằng về độ sâu, độ rộng và độ phân giải của mạng.
- Triển khai trên thiết bị di động thông qua TFLite : Các dự án yêu cầu xuất sang TensorFlow Lite . Android hoặc các thiết bị Linux nhúng.
Khi nào nên lựa chọn RT-DETR
RT-DETR được khuyến nghị cho:
- Nghiên cứu phát hiện dựa trên Transformer: Các dự án khám phá cơ chế chú ý và kiến trúc Transformer để phát hiện đối tượng từ đầu đến cuối mà không cần NMS .
- Các kịch bản độ chính xác cao với độ trễ linh hoạt: Các ứng dụng mà độ chính xác phát hiện là ưu tiên hàng đầu và độ trễ suy luận cao hơn một chút là chấp nhận được.
- Phát hiện vật thể lớn: Các cảnh chủ yếu chứa các vật thể có kích thước trung bình đến lớn, nơi cơ chế chú ý toàn cục của Transformer mang lại lợi thế tự nhiên.
Khi nào nên lựa chọn Ultralytics (YOLO26)
Đối với hầu hết các dự án mới, Ultralytics YOLO26 cung cấp sự kết hợp tốt nhất giữa hiệu năng và trải nghiệm dành cho nhà phát triển:
- NMS - Triển khai biên không cần can thiệp: Các ứng dụng yêu cầu suy luận nhất quán, độ trễ thấp mà không cần sự phức tạp của quá trình xử lý hậu kỳ loại bỏ cực đại không cần can thiệp (Non-Maximum Suppression).
- Môi trường chỉ sử dụng CPU : Các thiết bị không có bộ xử lý chuyên dụng. GPU khả năng tăng tốc, trong đó YOLO26 nhanh hơn tới 43%. CPU Suy luận mang lại lợi thế quyết định.
- Phát hiện vật thể nhỏ: Các tình huống đầy thách thức như ảnh chụp từ máy bay không người lái hoặc phân tích cảm biến IoT, nơi ProgLoss và STAL giúp tăng đáng kể độ chính xác trong việc phát hiện các vật thể siêu nhỏ.
Cái Ultralytics Ưu điểm: Giới thiệu YOLO26
Mặc dù EfficientDet và RTDETRv2 đã khẳng định vị trí của mình trong lịch sử thị giác máy tính, môi trường sản xuất hiện đại đòi hỏi sự cân bằng hoàn hảo giữa tốc độ, độ chính xác và trải nghiệm phát triển vượt trội. Ultralytics YOLO26 mới ra mắt đã tổng hợp những khía cạnh tốt nhất của các kiến trúc khác nhau này.
YOLO26 nổi bật nhờ sự kết hợp giữa hệ sinh thái tinh gọn mà Ultralytics nổi tiếng với cơ chế hoạt động nội bộ đột phá.
Tại sao nên chọn YOLO26 thay vì các đối thủ cạnh tranh?
- Thiết kế không cần NMS từ đầu đến cuối: Lấy cảm hứng từ các bộ chuyển đổi như RTDETRv2, YOLO26 được thiết kế hoàn toàn từ đầu đến cuối. Nó loại bỏ... NMS Xử lý hậu kỳ, đảm bảo quy trình triển khai nhanh hơn, đơn giản hơn mà không gây ra hiện tượng phình to tham số như các bộ chuyển đổi thuần túy.
- Bộ tối ưu hóa MuSGD: Lấy cảm hứng từ những cải tiến trong huấn luyện mô hình ngôn ngữ quy mô lớn (như Kimi K2 của Moonshot AI), YOLO26 sử dụng sự kết hợp của... SGD và Muon. Điều này mang lại sự ổn định huấn luyện chưa từng có và tốc độ hội tụ nhanh hơn đáng kể so với lịch trình kéo dài mà RTDETRv2 yêu cầu.
- Tối ưu hóa cho thiết bị biên: Với khả năng suy luận CPU nhanh hơn tới 43% , YOLO26 được xây dựng dành cho AI biên . Nó dễ dàng vượt trội hơn các mô hình Transformer nặng nề trên phần cứng hạn chế như điện thoại di động và camera thông minh.
- Loại bỏ DFL: Việc loại bỏ Distribution Focal Loss giúp đơn giản hóa đồ thị mô hình, tạo điều kiện thuận lợi cho việc xuất dữ liệu liền mạch sang TensorRT và ONNX .
- ProgLoss + STAL: Các hàm mất mát tiên tiến này mang lại những cải tiến đáng kể trong nhận dạng vật thể nhỏ, giải quyết một nút thắt cổ chai phổ biến trong ảnh chụp từ trên không và robot.
- Tính linh hoạt: Không giống như RTDETRv2, chủ yếu tập trung vào phát hiện đối tượng, YOLO26 hỗ trợ nguyên bản phân đoạn đối tượng , ước lượng tư thế , phân loại hình ảnh và hộp giới hạn định hướng (OBB) với các cải tiến dành riêng cho từng tác vụ như RLE cho tư thế và hàm mất mát góc chuyên biệt cho OBB.
Hệ sinh thái tích hợp
Bằng cách tận dụng Nền tảng Ultralytics , bạn có thể quản lý tập dữ liệu của mình, huấn luyện các mô hình như YOLO26 hoặc YOLO11 trên đám mây và triển khai chúng một cách liền mạch thông qua các API linh hoạt.
Đơn giản hóa mã với Ultralytics
API Python được bảo trì tốt Ultralytics giúp việc huấn luyện và suy luận mô hình trở nên dễ dàng. Các nhà phát triển có thể dễ dàng đánh giá hiệu năng của mô hình hoặc chạy các kịch bản huấn luyện với lượng mã mẫu tối thiểu.
from ultralytics import YOLO
# Load the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on a test image
predictions = model.predict("image.jpg")
Đối với những người đang quản lý cơ sở hạ tầng cũ, Ultralytics YOLOv8 được đánh giá cao vẫn là một lựa chọn ổn định và mạnh mẽ, thể hiện độ tin cậy lâu dài của nó. Ultralytics hệ sinh thái. Cho dù bạn đang chạy các thuật toán theo dõi thời gian thực phức tạp hay chỉ đơn giản là phát hiện lỗi, việc nâng cấp lên YOLO26 đảm bảo hệ thống của bạn có khả năng đáp ứng nhu cầu trong tương lai, độ chính xác cao và tiết kiệm bộ nhớ.