Chuyển đến nội dung

EfficientDet so với YOLOX: Những thay đổi về kiến ​​trúc trong phát hiện đối tượng

Sự phát triển của thị giác máy tính được đánh dấu bằng những bước ngoặt quan trọng, nơi các kiến ​​trúc mới định nghĩa lại sự cân bằng giữa tốc độ và độ chính xác. Hai cột mốc như vậy là EfficientDetYOLOX . Trong khi EfficientDet giới thiệu khái niệm về hiệu quả có thể mở rộng thông qua phép nhân, YOLOX đã thu hẹp khoảng cách giữa nghiên cứu học thuật và ứng dụng công nghiệp với thiết kế không cần neo.

Hướng dẫn này cung cấp so sánh kỹ thuật toàn diện giữa hai mô hình có ảnh hưởng lớn này, phân tích kiến ​​trúc, các chỉ số hiệu suất và các trường hợp sử dụng lý tưởng để giúp bạn chọn công cụ phù hợp cho dự án của mình. Chúng tôi cũng sẽ tìm hiểu cách các giải pháp hiện đại như Ultralytics YOLO26 xây dựng dựa trên những nền tảng này để mang lại hiệu suất thế hệ tiếp theo.

Phân tích hiệu suất Benchmark

Để hiểu rõ sự đánh đổi giữa các kiến ​​trúc này, điều cần thiết là phải xem xét hiệu suất của chúng trên các bộ dữ liệu chuẩn như bộ dữ liệu COCO . Bảng dưới đây minh họa mối tương quan giữa kích thước mô hình khác nhau với độ chính xác ( mAP ) và tốc độ suy luận trên CPU Và GPU phần cứng.

Mô hìnhKích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
Tham số
(M)
FLOPs
(B)
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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

EfficientDet: Hiệu quả có khả năng mở rộng

EfficientDet, được phát triển bởi Google Brain team đại diện cho một phương pháp tiếp cận có hệ thống để mở rộng quy mô mô hình. Nó được thiết kế để tối ưu hóa hiệu quả trên nhiều phạm vi hạn chế về tài nguyên, từ thiết bị di động đến các bộ tăng tốc cao cấp.

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

Các tính năng kiến trúc chính

EfficientDet được xây dựng trên nền tảng EfficientNet , sử dụng phương pháp mở rộng phức hợp để mở rộng đồng đều độ sâu, chiều rộng và độ phân giải của mạng. Một cải tiến quan trọng là BiFPN (Mạng kim tự tháp đặc trưng hai chiều) , cho phép kết hợp đặc trưng đa tỷ lệ dễ dàng và nhanh chóng. Không giống như các FPN truyền thống, BiFPN giới thiệu các trọng số có thể học được cho các đặc trưng đầu vào khác nhau, nhấn mạnh tầm quan trọng của các bản đồ đặc trưng cụ thể trong quá trình kết hợp.

Các trường hợp sử dụng lý tưởng

EfficientDet vượt trội trong các trường hợp mà kích thước mô hình và số phép tính FLOP là những hạn chế chính, chẳng hạn như ứng dụng di động hoặc thiết bị chạy bằng pin. Kiến trúc của nó đặc biệt phù hợp cho xử lý ảnh tĩnh, nơi độ trễ ít quan trọng hơn hiệu quả tham số. Tuy nhiên, các lớp kết hợp đặc trưng phức tạp của nó đôi khi có thể dẫn đến tốc độ suy luận chậm hơn trên GPU so với các kiến ​​trúc đơn giản hơn như... YOLO .

Tỷ lệ phức hợp

Triết lý cốt lõi của EfficientDet là việc mở rộng quy mô mô hình không nên tùy tiện. Bằng cách cân bằng đồng thời chiều sâu, chiều rộng và độ phân giải, EfficientDet đạt được độ chính xác tốt hơn với ít tham số hơn so với các mô hình chỉ được mở rộng theo một chiều.

YOLOX: Đổi mới kiến trúc không anchor

YOLOX đánh dấu một bước ngoặt đáng kể so với các thiết kế dựa trên neo của các phiên bản tiền nhiệm (như YOLOv4 và...). YOLOv5 Được phát triển bởi Megvii, nó đã tái giới thiệu cơ chế không cần neo vào... YOLO chuỗi bài viết này giúp đơn giản hóa quá trình đào tạo và nâng cao hiệu quả.

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

Các tính năng kiến trúc chính

YOLOX tích hợp một đầu xử lý tách rời (Decoupled Head ), giúp phân tách các tác vụ phân loại và hồi quy thành các nhánh khác nhau. Lựa chọn thiết kế này giải quyết được mâu thuẫn giữa độ tin cậy phân loại và độ chính xác định vị, dẫn đến sự hội tụ nhanh hơn. Ngoài ra, YOLOX sử dụng SimOTA (Simplified Optimal Transport Assignment) để gán nhãn động, có khả năng chống chịu tốt với nhiều siêu tham số khác nhau và cải thiện độ chính xác phát hiện.

Các trường hợp sử dụng lý tưởng

YOLOX rất hiệu quả cho các tác vụ phát hiện đối tượng đa năng, nơi cần sự cân bằng giữa tốc độ và độ chính xác. Nó được sử dụng rộng rãi trong các nền tảng nghiên cứu nhờ cấu trúc mã sạch và thiết kế đơn giản hơn so với các bộ phát hiện dựa trên neo. Nó hoạt động tốt trong môi trường động, làm cho nó phù hợp với phân tích video và các hệ thống tự động cơ bản.

Cái Ultralytics Ưu điểm: Vượt trội so với các kiến ​​trúc cũ

Mặc dù EfficientDet và YOLOX vẫn là những tiêu chuẩn quan trọng, lĩnh vực này đã phát triển nhanh chóng. Quá trình phát triển hiện đại đòi hỏi các công cụ không chỉ hoạt động tốt mà còn dễ tích hợp, đào tạo và triển khai. Đây chính là điểm mạnh của hệ sinh thái Ultralytics .

Các mô hình như YOLO11YOLO26 tiên tiến mang lại những ưu điểm vượt trội so với các kiến ​​trúc cũ:

  1. Dễ sử dụng: Ultralytics cung cấp một lộ trình thống nhất, "từ con số không đến người hùng". Python API. Bạn có thể huấn luyện một mô hình, xác thực nó và xuất nó để triển khai chỉ với một vài dòng mã. Điều này hoàn toàn trái ngược với các tệp cấu hình phức tạp và kho lưu trữ phân mảnh của các mô hình nghiên cứu cũ hơn.
  2. Cân bằng hiệu suất: Ultralytics Các mô hình được thiết kế để đạt được sự cân bằng tối ưu giữa tốc độ và độ chính xác. Chúng luôn vượt trội hơn các thế hệ trước về các chỉ số tiêu chuẩn trong khi vẫn duy trì độ trễ thấp hơn.
  3. Hiệu quả bộ nhớ: Không giống như các mô hình dựa trên bộ chuyển đổi hoặc các kiến ​​trúc cũ nặng nề, Ultralytics YOLO các mô hình yêu cầu ít hơn đáng kể CUDA Bộ nhớ trong quá trình huấn luyện. Điều này cho phép sử dụng kích thước lô lớn hơn trên GPU dành cho người tiêu dùng, giúp dân chủ hóa việc tiếp cận AI hiệu năng cao.
  4. Hệ sinh thái được duy trì tốt: Với các bản cập nhật thường xuyên, sự hỗ trợ tích cực từ cộng đồng và tài liệu đầy đủ, Ultralytics Đảm bảo các dự án của bạn luôn có khả năng thích ứng với tương lai. Nền tảng Ultralytics còn đơn giản hóa hơn nữa việc quản lý tập dữ liệu và huấn luyện mô hình.

Tiêu điểm: YOLO26

Đối với các nhà phát triển đang tìm kiếm công nghệ tiên tiến nhất, YOLO26 đại diện cho đỉnh cao về hiệu quả và hiệu năng.

  • Giải pháp từ đầu đến cuối không NMS : Bằng cách loại bỏ Non-Maximum Suppression ( NMS ) , YOLO26 đơn giản hóa quy trình triển khai và giảm sự biến động độ trễ suy luận.
  • Tối ưu hóa tại biên: Các tính năng như loại bỏ tổn thất tiêu điểm phân phối (DFL) giúp YOLO26 nhanh hơn tới 43% khi suy luận trên CPU , lý tưởng cho các ứng dụng AI tại biên.
  • Tính linh hoạt: Ngoài khả năng phát hiện, YOLO26 còn hỗ trợ phân đoạn , ước lượng tư thếOBB , cung cấp bộ công cụ toàn diện cho nhiều tác vụ thị giác khác nhau.

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

Tóm tắt so sánh

Tính năngEfficientDetYOLOXUltralytics YOLO26
Kiến trúcBiFPN + EfficientNetĐầu tách rời, không cần neoTừ đầu đến cuối, NMS -Miễn phí
Trọng tâmHiệu quả tham sốNghiên cứu & Phát hiện chungTốc độ thời gian thực & Triển khai tại biên
Dễ sử dụngVừa phải ( TensorFlow sự phụ thuộc)Tốt ( PyTorch )Tuyệt vời (API thống nhất)
Triển khaiTổ hợp ( NMS yêu cầu)Tổ hợp ( NMS yêu cầu)Đơn giản ( NMS -Miễn phí)
Nhiệm vụPhát hiện vật thểPhát hiện vật thểPhát hiện, Phân đoạn, Tư thế, OBB, Phân loại

Ví dụ mã: Huấn luyện với Ultralytics

Sự đơn giản của Ultralytics API cho phép lặp lại nhanh chóng. Đây là cách bạn có thể bắt đầu huấn luyện một mô hình hiện đại dễ dàng hơn nhiều so với các thiết lập phức tạp của các khung phần mềm cũ:

from ultralytics import YOLO

# Load a pre-trained YOLO26 model (recommended for transfer learning)
model = YOLO("yolo26n.pt")

# Train the model on the COCO8 dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

Cho dù bạn đang làm việc trong lĩnh vực tự động hóa công nghiệp hay giám sát thành phố thông minh , việc lựa chọn một framework hiện đại, được hỗ trợ như... Ultralytics Đảm bảo bạn dành ít thời gian hơn để vật lộn với mã lập trình và nhiều thời gian hơn để giải quyết các vấn đề thực tế.

Đọc thêm

Hãy khám phá thêm các so sánh khác để hiểu sâu hơn về lĩnh vực phát hiện đối tượng:


Bình luận