So sánh toàn diện: YOLOv7 và EfficientDet cho nhận diện đối tượng

Việc lựa chọn kiến trúc mạng thần kinh tối ưu là nền tảng của bất kỳ dự án computer vision thành công nào. Hướng dẫn này cung cấp sự so sánh kỹ thuật chi tiết giữa hai mô hình quan trọng trong lịch sử của các kiến trúc nhận diện đối tượng: YOLOv7EfficientDet. Bằng cách kiểm tra các cải tiến về kiến trúc, phương pháp huấn luyện và các kịch bản triển khai lý tưởng, các nhà phát triển có thể đưa ra quyết định sáng suốt. Chúng tôi cũng sẽ khám phá cách mà các tiến bộ hiện đại, đặc biệt là Ultralytics YOLO26 đột phá, đã định nghĩa lại trạng thái tốt nhất hiện nay.

Nguồn gốc mô hình và chi tiết kỹ thuật

Cả hai mô hình đều được phát triển bởi các nhóm nghiên cứu nổi tiếng và mang lại những tiến bộ đáng kể cho lĩnh vực machine learning.

YOLOv7
Tác giả: Chien-Yao Wang, Alexey Bochkovskiy và Hong-Yuan Mark Liao
Tổ chức: Viện Khoa học Thông tin, Academia Sinica, Đài Loan
Ngày: 2022-07-06
Arxiv: YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors
GitHub: WongKinYiu/yolov7
Tài liệu: Tài liệu Ultralytics YOLOv7

Tìm hiểu thêm về YOLOv7

EfficientDet
Tác giả: Mingxing Tan, Ruoming Pang và Quoc V. Le
Tổ chức: Google Research
Ngày: 2019-11-20
Arxiv: EfficientDet: Scalable and Efficient Object Detection
GitHub: Google AutoML EfficientDet

Tìm hiểu thêm về EfficientDet

Sự khác biệt về kiến trúc và phân tích cân bằng

Việc hiểu rõ các khác biệt cơ bản về cấu trúc giữa các mạng này là điều quan trọng đối với triển khai mô hình hiệu quả.

EfficientDet: Quy mô hỗn hợp và BiFPN

Được phát triển trong hệ sinh thái TensorFlow, EfficientDet đã giới thiệu một phương pháp tiếp cận có nguyên tắc đối với việc mở rộng quy mô mô hình. Thay vì mở rộng hoặc làm sâu thêm mạng một cách tùy tiện, các nhà nghiên cứu của Google đã sử dụng phương pháp mở rộng quy mô phức hợp để mở rộng đồng nhất độ phân giải, độ sâu và chiều rộng.

Hơn nữa, EfficientDet đã giới thiệu Bi-directional Feature Pyramid Network (BiFPN). Thành phần kiến trúc này cho phép hợp nhất tính năng đa quy mô một cách dễ dàng và nhanh chóng.

Điểm mạnh: Hiệu quả về tham số cao, đạt được mean Average Precision (mAP) mạnh mẽ với ít FLOP hơn nhiều so với các mô hình cùng thời. Điểm yếu: Dựa nhiều vào các chiến lược tìm kiếm AutoML cũ. Việc tích hợp vào các quy trình PyTorch hiện đại, linh hoạt có thể gây cồng kềnh, và độ trễ trên các thiết bị biên thường cao hơn dự kiến mặc dù số lượng FLOP thấp.

YOLOv7: Trainable Bag-of-Freebies

YOLOv7 ưu tiên suy luận thời gian thực và tối ưu hóa huấn luyện. Nó giới thiệu khái niệm mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN), cho phép mô hình học các tính năng đa dạng hơn một cách liên tục mà không làm hỏng đường dẫn gradient ban đầu. YOLOv7 cũng sử dụng kỹ thuật gọi là "trainable bag-of-freebies", giúp cải thiện đáng kể độ chính xác nhận diện mà không làm tăng chi phí suy luận.

Điểm mạnh: Tốc độ xử lý vượt trội và độ trễ suy luận thuận lợi, làm cho nó trở nên lý tưởng cho các luồng video FPS cao. Điểm yếu: Mặc dù rất có năng lực, nó vẫn dựa vào các khung neo (anchor boxes) và yêu cầu Non-Maximum Suppression (NMS) trong quá trình xử lý hậu kỳ, điều này có thể tạo ra điểm nghẽn độ trễ trong các cảnh cực kỳ đông đúc.

Lợi thế của hệ sinh thái Ultralytics

Khi đánh giá các mô hình, hệ sinh thái xung quanh cũng quan trọng không kém kiến trúc. Nền tảng Ultralytics tích hợp cung cấp một API thống nhất, tài liệu phong phú và hỗ trợ cộng đồng tích cực. Môi trường thống nhất này đảm bảo sử dụng bộ nhớ thấp hơn trong quá trình huấn luyện so với các mô hình transformer nặng, đảm bảo tạo mẫu nhanh và theo dõi thử nghiệm liền mạch.

Số liệu hiệu suất và Benchmark

Bảng dưới đây so sánh các số liệu hiệu suất chính cho phép các nhà phát triển đánh giá sự đánh đổi giữa tốc độ, số lượng tham số và độ chính xác.

Modelkích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

Như đã thấy, trong khi EfficientDet-d7 đạt được mAP cao, tốc độ TensorRT của nó bị tụt hậu nghiêm trọng so với các biến thể YOLOv7, làm nổi bật sự thống trị của YOLOv7 trong nhận diện đối tượng thời gian thực tăng tốc bằng GPU.

Sự tiến hóa của nhận diện đối tượng: YOLO26

Trong khi YOLOv7 và EfficientDet đã đặt nền móng quan trọng, bối cảnh của vision AI phát triển nhanh chóng. Đối với các ứng dụng hiện đại yêu cầu sự đỉnh cao tuyệt đối về hiệu quả và độ chính xác, chúng tôi thực sự khuyên bạn nên nâng cấp lên YOLO26, được phát hành vào tháng 1 năm 2026.

YOLO26 giải quyết các hạn chế cố hữu của các thế hệ trước, mang lại tính linh hoạt chưa từng có trên nhận diện đối tượng, phân đoạn đối tượng, phân loại ảnhước tính tư thế.

Tìm hiểu thêm về YOLO26

Những đổi mới chính trên YOLO26

  • Thiết kế không NMS đầu cuối: YOLO26 loại bỏ hoàn toàn việc xử lý hậu kỳ Non-Maximum Suppression (NMS) một cách tự nhiên. Được tiên phong lần đầu trong YOLOv10, điều này đơn giản hóa logic triển khai và đảm bảo thực thi nhất quán, độ trễ thấp bất kể mật độ đối tượng.
  • Loại bỏ DFL: Bằng cách loại bỏ Distribution Focal Loss (DFL), kiến trúc mô hình được đơn giản hóa đáng kể, tăng cường khả năng tương thích với các môi trường edge computing bị hạn chế nghiêm ngặt.
  • Tốc độ suy luận CPU nhanh hơn tới 43%: Được tối ưu hóa mạnh mẽ cho các môi trường thiếu GPU chuyên dụng, giúp nó nhanh hơn đáng kể so với EfficientDet trên phần cứng nhẹ.
  • Bộ tối ưu hóa MuSGD: Được lấy cảm hứng từ các kỹ thuật mô hình ngôn ngữ lớn (chẳng hạn như Kimi K2 của Moonshot AI), sự kết hợp giữa SGD và Muon này mang lại sự ổn định ở cấp độ LLM và khả năng hội tụ nhanh chóng cho huấn luyện thị giác máy tính.
  • 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 việc nhận diện vật thể nhỏ, một tính năng quan trọng đối với hình ảnh trên khôngứng dụng drone.
  • Cải tiến cụ thể theo tác vụ: Bao gồm mất mát phân đoạn ngữ nghĩa và proto đa quy mô cho các tác vụ phân đoạn, Residual Log-Likelihood Estimation (RLE) cho ước tính tư thế phức tạp và mất mát góc chuyên dụng được thiết kế để sửa các vấn đề về ranh giới của Oriented Bounding Box (OBB).

Đối với các nhóm hiện đang sử dụng hệ thống cũ, việc chuyển sang Nền tảng Ultralytics sẽ mở khóa quy trình làm việc tinh giản, nơi các mô hình tiên tiến này có thể được huấn luyện và triển khai dễ dàng. Các nhà phát triển cũng có thể khám phá các phiên bản mạnh mẽ trước đó như YOLO11YOLOv8 tùy thuộc vào các yêu cầu cụ thể về tương thích ngược.

Huấn luyện tinh giản và dễ sử dụng

Một trong những đặc điểm nổi bật của các mô hình Ultralytics là Sự dễ sử dụng. Không giống như việc thiết lập phức tạp, nhiều phụ thuộc cần thiết cho các môi trường TensorFlow AutoML của EfficientDet, Ultralytics cung cấp một API Pythonic đơn giản.

Môi trường này giảm thiểu sử dụng bộ nhớ CUDA trong quá trình huấn luyện, đảm bảo rằng ngay cả các tập dữ liệu lớn cũng có thể được xử lý hiệu quả mà không gặp các lỗi Out-Of-Memory (OOM) thường thấy trong các kiến trúc Transformer-based cồng kềnh.

Ví dụ mã: Bắt đầu với Ultralytics

Đoạn mã sau đây minh họa cách các nhà phát triển có thể tận dụng gói Ultralytics để huấn luyện một mô hình YOLO26 hiện đại một cách liền mạch ngay từ đầu.

from ultralytics import YOLO

# Initialize the state-of-the-art YOLO26 model for object detection
model = YOLO("yolo26n.pt")

# Train the model effortlessly using the integrated Ultralytics ecosystem
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device=0,  # Auto-selects optimal device
    batch=16,
)

# Validate the model's performance
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")

# Export the model for edge deployment (e.g., OpenVINO for CPU optimization)
model.export(format="openvino")
Xuất mô hình cho sản xuất

Các mô hình được huấn luyện thông qua API Ultralytics có thể được xuất ngay lập tức sang nhiều định dạng sản xuất khác nhau như OpenVINO hoặc ONNX, đảm bảo thông lượng cao bất kể phần cứng mục tiêu của bạn là gì.

Các trường hợp sử dụng lý tưởng và ứng dụng thực tế

Khi xây dựng một giải pháp, việc căn chỉnh điểm mạnh của mô hình với trường hợp sử dụng cụ thể là điều bắt buộc.

Khi nào nên sử dụng EfficientDet

EfficientDet vẫn là một ứng cử viên cho nghiên cứu học thuật cũ hoặc các môi trường bị ràng buộc nghiêm ngặt với hệ sinh thái Google Cloud nơi các thí nghiệm mở rộng quy mô phức hợp là trọng tâm chính. Các biến thể nhỏ hơn của nó (d0-d2) có lợi khi dung lượng đĩa tuyệt đối bị hạn chế nặng nề.

Khi nào nên sử dụng YOLOv7

YOLOv7 vượt trội trong các thiết lập cũ hiệu suất cao, đặc biệt là nơi ưu tiên tích hợp PyTorch hơn TensorFlow. Nó vẫn được triển khai rộng rãi trong:

  • Phân tích video: Xử lý các luồng bảo mật tốc độ khung hình cao nơi GPU tăng tốc rất dồi dào.
  • Kiểm tra công nghiệp: Xác định các khiếm khuyết trên các dây chuyền lắp ráp sản xuất di chuyển nhanh.

Khi nào nên chọn YOLO26

Đối với tất cả các triển khai mới, YOLO26 là khuyến nghị không thể tranh cãi. Sự cân bằng hiệu suất vượt trội và hệ sinh thái được duy trì tốt mạnh mẽ của nó làm cho nó trở thành lựa chọn tối ưu cho:

  • Smart Cities and Traffic Management: Its NMS-free design ensures consistent inference latency, vital for real-time traffic coordination.
  • Robot và các hệ thống tự hành: Mức tăng ấn tượng 43% về tốc độ suy luận CPU đảm bảo các thuật toán điều hướng phản hồi cao cho các thiết bị nhúng.
  • Giám sát nông nghiệp và trên không: Tận dụng ProgLoss và STAL để xác định chính xác các đối tượng nhỏ như cây trồng cụ thể hoặc động vật hoang dã từ hình ảnh độ cao lớn.

Tóm lại, trong khi EfficientDet và YOLOv7 cung cấp bối cảnh lịch sử có giá trị và tính tiện ích thích hợp cụ thể, kỹ sư thị giác máy tính hiện đại được phục vụ tốt nhất bằng cách áp dụng kiến trúc Ultralytics YOLO26, giải quyết một cách thanh lịch các nút thắt trước đó trong khi đẩy mạnh các giới hạn của những gì có thể thực hiện được trong trí tuệ nhân tạo.

Bình luận