Link to this sectionEfficientDet so với YOLOv5#
Lựa chọn kiến trúc mạng thần kinh tối ưu là bước quyết định trong bất kỳ sáng kiến computer vision nào. Sự cân bằng giữa độ trễ suy luận, hiệu quả tham số và độ chính xác của việc phát hiện quyết định mức độ hiệu quả của model trong môi trường thực tế. Hướng dẫn kỹ thuật toàn diện này cung cấp phân tích chuyên sâu về hai framework phát hiện đối tượng có ảnh hưởng lớn: EfficientDet của Google và Ultralytics YOLOv5.
Bằng cách so sánh các đổi mới về kiến trúc, phương pháp đào tạo và khả năng triển khai, các nhà phát triển có thể đưa ra quyết định sáng suốt cho môi trường triển khai cụ thể của mình, cho dù là mở rộng quy mô trên các máy chủ đám mây hay chạy trên các thiết bị edge bị giới hạn.
Link to this sectionEfficientDet: Kiến trúc có thể mở rộng với BiFPN#
Được Google Research giới thiệu, EfficientDet được thiết kế để mở rộng một cách hệ thống cả backbone và mạng đặc trưng nhằm đạt được độ chính xác cao với ít tham số hơn so với các model tiên tiến trước đây.
Link to this sectionThông tin chi tiết về mô hình#
- Tác giả: Mingxing Tan, Ruoming Pang và Quoc V. Le
- Tổ chức: Google Research
- Ngày: 20 tháng 11, 2019
- Arxiv: EfficientDet: Scalable and Efficient Object Detection
- GitHub: google/automl/efficientdet
Link to this sectionCải tiến kiến trúc#
EfficientDet tận dụng model phân loại EfficientNet làm backbone, sử dụng phương pháp mở rộng hợp nhất (compound scaling) để mở rộng đồng nhất chiều rộng, chiều sâu và độ phân giải của mạng. Đóng góp đáng chú ý nhất của nó cho object detection là việc giới thiệu Bi-directional Feature Pyramid Network (BiFPN). Không giống như các Feature Pyramid Networks tiêu chuẩn chỉ đơn giản là tập hợp các đặc trưng từ trên xuống dưới, BiFPN cho phép các kết nối đa quy mô hai chiều phức tạp và đưa vào các trọng số có thể học được để xác định tầm quan trọng của các đặc trưng đầu vào khác nhau.
Mặc dù rất chính xác, EfficientDet phụ thuộc nhiều vào hệ sinh thái TensorFlow và các thư viện AutoML cụ thể. Sự phụ thuộc này đôi khi khiến việc tích hợp vào các pipeline triển khai tùy chỉnh, gọn nhẹ hoặc các môi trường ưa chuộng đồ thị tính toán động trở nên cồng kềnh.
Link to this sectionUltralytics YOLOv5: Phổ cập hóa AI thời gian thực#
Ra mắt ngay sau EfficientDet, Ultralytics YOLOv5 đã cách mạng hóa ngành công nghiệp bằng cách cung cấp một triển khai PyTorch gốc, dễ tiếp cận đáng kinh ngạc của kiến trúc YOLO. Nó thiết lập một tiêu chuẩn mới về trải nghiệm nhà phát triển, hiệu quả đào tạo và tính linh hoạt khi triển khai thời gian thực.
Link to this sectionThông tin chi tiết về mô hình#
- Tác giả: Glenn Jocher
- Tổ chức: Ultralytics
- Ngày: 26 tháng 6, 2020
- GitHub: ultralytics/yolov5
- Tài liệu: Tài liệu YOLOv5
Link to this sectionCải tiến kiến trúc#
YOLOv5 đã giới thiệu những nâng cấp đáng kể so với các phiên bản tiền nhiệm, sử dụng backbone CSPDarknet (Cross-Stage Partial) giúp tăng cường đáng kể luồng gradient trong khi giảm tổng số lượng tham số. Hơn nữa, YOLOv5 kết hợp Auto-Learning Anchor Boxes, tự động tính toán các tiền đề bounding box tối ưu dựa trên dữ liệu đào tạo tùy chỉnh cụ thể của bạn, loại bỏ nhu cầu tinh chỉnh siêu tham số thủ công.
YOLOv5 cũng sử dụng nhiều Mosaic Data Augmentation, kết hợp bốn hình ảnh khác biệt thành một ô đào tạo duy nhất. Điều này cải thiện đáng kể khả năng phát hiện các đối tượng nhỏ của model và tổng quát hóa sự hiểu biết theo ngữ cảnh, giúp nó cực kỳ mạnh mẽ trong nhiều môi trường khác nhau.
Link to this sectionHiệu năng và Benchmark#
Việc đánh giá các model trên các tiêu chuẩn như COCO dataset là rất quan trọng để hiểu được sự đánh đổi giữa độ chính xác và tốc độ. Bảng dưới đây minh họa hiệu suất của các kích thước khác nhau của EfficientDet và YOLOv5 trong các điều kiện tiêu chuẩn hóa.
| Mô hình | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | params (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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
Link to this sectionPhân tích các yếu tố đánh đổi#
Mặc dù EfficientDet-d7 mở rộng đến mAP đỉnh ấn tượng là 53.7, nó lại gặp phải độ trễ suy luận đáng kể trên phần cứng GPU so với các kiến trúc YOLO. Ngược lại, YOLOv5 vượt trội trong việc tăng tốc phần cứng. Biến thể YOLOv5n đạt thời gian suy luận nhanh đáng kinh ngạc 1.12 ms trên GPU T4 sử dụng NVIDIA TensorRT, khiến nó vượt trội hơn hẳn cho các ứng dụng thời gian thực như xe tự lái hoặc dây chuyền sản xuất tốc độ cao.
Ngoài ra, các model YOLOv5 yêu cầu bộ nhớ CUDA thấp hơn nhiều trong quá trình đào tạo so với các mạng có quy mô hợp nhất phức tạp hoặc các model transformer lớn. Hồ sơ bộ nhớ gọn nhẹ này phổ cập hóa quyền truy cập vào AI tiên tiến, cho phép các nhà nghiên cứu đào tạo các model mạnh mẽ trên phần cứng tiêu dùng tiêu chuẩn.
Để đạt được số khung hình trên giây (FPS) tối đa từ model YOLOv5 của bạn trên các thiết bị edge, hãy xuất trọng số PyTorch của bạn sang TensorRT cho GPU NVIDIA hoặc OpenVINO cho CPU Intel. Bước này thường có thể tăng gấp đôi tốc độ suy luận của bạn.
Link to this sectionHệ sinh thái đào tạo và trải nghiệm nhà phát triển#
Lợi thế thực sự của hệ sinh thái Ultralytics nằm ở trải nghiệm người dùng được tối ưu hóa. Trong khi EfficientDet yêu cầu kiến thức chuyên sâu về API phát hiện đối tượng TensorFlow, YOLOv5 cung cấp một Python API nhất quán và đơn giản.
Được duy trì tốt, Ultralytics ecosystem đảm bảo các nhà phát triển có quyền truy cập vào các bản cập nhật thường xuyên, hỗ trợ cộng đồng tích cực và tích hợp liền mạch với các công cụ theo dõi thử nghiệm như Weights & Biases và ClearML.
Link to this sectionVí dụ mã nguồn: Bắt đầu với YOLOv5#
Chạy suy luận với một model YOLOv5 được đào tạo trước chỉ cần một vài dòng mã thông qua PyTorch Hub:
from ultralytics import YOLO
# Load the highly efficient YOLOv5s model
model = YOLO("yolov5su.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")
# Display the detected bounding boxes
results[0].show()Link to this sectionTính linh hoạt và ứng dụng thực tế#
EfficientDet là một framework phát hiện đối tượng thuần túy, điều này hạn chế khả năng sử dụng của nó trong các pipeline thị giác phức tạp. Mặt khác, YOLOv5 đã phát triển để hỗ trợ nhiều tác vụ computer vision. Các bản phát hành hiện đại của model hỗ trợ instance segmentation và image classification có độ chính xác cao, cho phép các nhà phát triển hợp nhất stack học máy của họ.
Link to this sectionCác trường hợp sử dụng lý tưởng#
- EfficientDet: Phù hợp nhất cho xử lý ngoại tuyến, nghiên cứu học thuật và phân tích dựa trên đám mây, nơi độ chính xác tối đa được ưu tiên hơn độ trễ, và nơi có sẵn các TPU cấp máy chủ hoặc GPU bộ nhớ cao.
- YOLOv5: Lựa chọn tối ưu cho edge AI deployments. Sự kết hợp giữa độ trễ thấp, dung lượng tham số cực nhỏ và độ chính xác cao khiến nó trở nên lý tưởng cho phân tích thiết bị bay không người lái, tự động hóa bán lẻ thời gian thực và các ứng dụng di động thông qua CoreML hoặc TFLite.
Link to this sectionThế hệ tiếp theo: Nâng cấp lên YOLO26#
Trong khi YOLOv5 vẫn là một model mạnh mẽ và được triển khai rộng rãi, lĩnh vực AI đang phát triển rất nhanh. Đối với các nhóm đang bắt đầu các dự án mới hoặc tìm kiếm đỉnh cao của hiệu suất hiện đại, Ultralytics đã giới thiệu YOLO26, ra mắt vào tháng 1 năm 2026.
YOLO26 định nghĩa lại biên Pareto về tốc độ và độ chính xác, giới thiệu những thay đổi kiến trúc mang tính đột phá giúp việc triển khai dễ dàng hơn và suy luận nhanh hơn.
Link to this sectionNhững tiến bộ chính của YOLO26#
- Thiết kế NMS-Free End-to-End: YOLO26 loại bỏ hoàn toàn việc hậu xử lý Non-Maximum Suppression. Điều này đơn giản hóa đáng kể logic triển khai và giảm độ biến thiên độ trễ, một phương pháp đột phá được tinh chỉnh từ các thử nghiệm ban đầu trong YOLOv10.
- Suy luận CPU nhanh hơn tới 43%: Được thiết kế đặc biệt cho điện toán biên và các thiết bị IoT công suất thấp hoạt động mà không cần GPU chuyên dụng.
- MuSGD Optimizer: Lấy cảm hứng từ các kỹ thuật đào tạo mô hình ngôn ngữ lớn (như Kimi K2 của Moonshot AI), sự kết hợp giữa SGD và Muon này mang đến những đổi mới LLM vào computer vision, cho phép hội tụ nhanh hơn và động lực đào tạo ổn định cao.
- 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 chú ý trong nhận dạng đối tượng nhỏ, vốn rất quan trọng đối với hình ảnh trên không và robot.
- Loại bỏ DFL: Bằng cách loại bỏ Distribution Focal Loss, đầu model được đơn giản hóa đáng kể, dẫn đến khả năng tương thích tốt hơn khi xuất sang phần cứng edge cũ hoặc bị hạn chế nghiêm ngặt.
Đối với các nhóm triển khai pipeline đa tác vụ, YOLO26 cũng giới thiệu các nâng cấp dành riêng cho tác vụ, chẳng hạn như multi-scale proto cho phân đoạn và mất mát góc chuyên dụng cho oriented bounding boxes (OBB). Để khám phá các lựa chọn thay thế hiện đại khác trong hệ sinh thái, bạn cũng có thể xem xét YOLO11 hoặc kiến trúc YOLOv8.
Link to this sectionKết luận#
Việc lựa chọn giữa EfficientDet và YOLOv5 phụ thuộc rất nhiều vào mục tiêu triển khai của bạn. EfficientDet cung cấp một phương pháp mở rộng thanh lịch về mặt toán học, phù hợp cho suy luận nặng trên đám mây. Tuy nhiên, trải nghiệm nhà phát triển vượt trội của YOLOv5, các vòng lặp đào tạo PyTorch cực nhanh và khả năng triển khai edge được tối ưu hóa cao khiến nó trở thành lựa chọn ưu tiên cho đại đa số các ứng dụng thực tế, thời gian thực. Bằng cách tận dụng các công cụ toàn diện do Ultralytics cung cấp, các nhóm có thể tăng tốc thời gian đưa ra thị trường và xây dựng các hệ thống AI có phản hồi cao.