Ultralytics YOLO27:
Get Started

YOLOX và EfficientDet#

Sự phát triển của phát hiện đối tượng được thúc đẩy bởi nỗ lực liên tục nhằm cân bằng tốc độ, độ chính xác và hiệu quả tính toán. Hai model mang tính bước ngoặt có ảnh hưởng lớn đến tiến trình này là YOLOX và EfficientDet. Trong khi YOLOX đưa thiết kế không anchor được tối ưu hóa cao vào dòng YOLO, EfficientDet tập trung vào kiến trúc có khả năng mở rộng, sử dụng phương pháp scale kết hợp và BiFPN. Hướng dẫn này trình bày so sánh kỹ thuật chi tiết về kiến trúc, chỉ số hiệu năng và phương pháp huấn luyện của hai model, đồng thời giới thiệu các lựa chọn hiện đại như model Ultralytics YOLO26 tiên tiến.

Nguồn gốc model và chi tiết kỹ thuật#

Trước khi tìm hiểu sâu về khác biệt cấu trúc, cần hiểu nguồn gốc và nghiên cứu nền tảng của cả hai model.

Thông tin YOLOX:

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

Thông tin chi tiết về EfficientDet:

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

So sánh kiến trúc#

Điểm khác biệt căn bản giữa YOLOX và EfficientDet nằm ở cách chúng trích xuất đặc trưng và dự đoán bounding box. Việc hiểu rõ các kiến trúc phát hiện đối tượng này rất quan trọng để chọn đúng model cho môi trường triển khai.

YOLOX: Đổi mới với thiết kế không anchor#

YOLOX tạo bước đột phá cho dòng YOLO khi chuyển từ bộ phát hiện dựa trên anchor sang thiết kế không anchor. Sự chuyển đổi này giúp giảm đáng kể số lượng tham số thiết kế và đơn giản hóa pipeline huấn luyện.

Các đặc điểm kiến trúc chính gồm head tách biệt, phân chia riêng tác vụ phân loại và hồi quy. Cách này giải quyết xung đột giữa việc xác định đối tượng là gì và dự đoán chính xác đối tượng ở đâu. Ngoài ra, YOLOX sử dụng các chiến lược gán nhãn tiên tiến như SimOTA, tự động gán mẫu dương cho các đối tượng ground truth trong quá trình huấn luyện, giúp hội tụ nhanh hơn và đạt cân bằng hiệu năng tốt hơn.

EfficientDet: Mở rộng hợp thành và BiFPN#

EfficientDet tiếp cận bài toán phát hiện đối tượng theo hướng hiệu quả và khả năng mở rộng. Được Google phát triển, model này phụ thuộc nhiều vào backbone EfficientNet để trích xuất đặc trưng.

Đặc điểm nổi bật của model là Mạng kim tự tháp đặc trưng hai chiều (BiFPN). Không giống FPN truyền thống, BiFPN cho phép hợp nhất đặc trưng đa tỷ lệ dễ dàng và nhanh chóng bằng cách đưa vào các trọng số có thể học để xác định tầm quan trọng của những đặc trưng đầu vào khác nhau. Khi kết hợp với phương pháp scale kết hợp, đồng nhất việc scale độ phân giải, độ sâu và độ rộng của tất cả backbone, mạng đặc trưng và mạng dự đoán box/phân loại, EfficientDet có thể mở rộng từ các model cỡ di động (d0) đến model quy mô lớn chạy trên máy chủ (d7).

Độ phức tạp kiến trúc

Mặc dù phương pháp scale kết hợp của EfficientDet tạo lộ trình dễ dự đoán để đạt độ chính xác cao hơn, phương pháp này thường tạo ra các đồ thị tính toán phức tạp, khó tối ưu cho điện toán edge thời gian thực so với thiết kế gọn nhẹ, không anchor của YOLOX.

Phân tích hiệu năng và chỉ số#

Khi đánh giá các model này cho ứng dụng thị giác máy tính trong thực tế, các chỉ số như độ chính xác trung bình, tốc độ suy luận và số lượng tham số đóng vai trò then chốt.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
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-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

Phân tích các yếu tố đánh đổi#

Dữ liệu cho thấy sự khác biệt rõ rệt về triết lý thiết kế. EfficientDet-d7 đạt độ chính xác tổng thể cao nhất với mAP ấn tượng 53.7%, nhưng phải đánh đổi đáng kể về tốc độ suy luận (128.07 ms trên GPU T4). Ngược lại, YOLOXx đạt mAP 51.1% đầy cạnh tranh trong khi duy trì tốc độ suy luận nhanh 16.1 ms, vượt trội hơn hẳn cho hoạt động hiểu video thời gian thực và robot.

Trường hợp sử dụng và khuyến nghị#

Việc chọn YOLOX hay EfficientDet phụ thuộc vào yêu cầu cụ thể của dự án, các ràng buộc triển khai và lựa chọn hệ sinh thái của bạn.

Khi nào nên chọn YOLOX#

YOLOX là lựa chọn phù hợp khi:

  • Nghiên cứu phát hiện không anchor: Nghiên cứu học thuật sử dụng kiến trúc không anchor rõ ràng của YOLOX làm baseline để thử nghiệm các head phát hiện hoặc hàm loss mới.
  • Thiết bị biên siêu nhẹ: Triển khai trên vi điều khiển hoặc phần cứng di động đời cũ, nơi kích thước cực nhỏ của biến thể YOLOX-Nano (0.91M tham số) là yếu tố then chốt.
  • Nghiên cứu gán nhãn SimOTA: Các dự án nghiên cứu tìm hiểu chiến lược gán nhãn dựa trên vận tải tối ưu và ảnh hưởng của chúng đến quá trình hội tụ khi huấn luyện.

Khi nào nên chọn EfficientDet#

EfficientDet được khuyến nghị cho:

  • Pipeline Google Cloud và TPU: Các hệ thống tích hợp sâu với API Google Cloud Vision hoặc hạ tầng TPU, nơi EfficientDet được tối ưu hóa nguyên bản.
  • Nghiên cứu mở rộng theo hệ số: Benchmark học thuật tập trung nghiên cứu tác động của việc mở rộng cân bằng độ sâu, chiều rộng và độ phân giải của mạng.
  • Triển khai di động qua LiteRT: Các dự án yêu cầu cụ thể việc xuất sang LiteRT (trước đây là TensorFlow Lite) cho Android hoặc thiết bị Linux nhúng.

Khi nào nên chọn Ultralytics (YOLO26)#

Với hầu hết dự án mới, Ultralytics YOLO26 mang đến 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:

  • Triển khai trên thiết bị biên không cần NMS: Các ứng dụng cần inference có độ trễ thấp và ổn định mà không phải xử lý hậu kỳ Non-Maximum Suppression phức tạp.
  • Môi trường chỉ có CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ CPU inference nhanh hơn đến 43% của YOLO26 mang lại lợi thế rõ rệt.
  • Phát hiện vật thể nhỏ: Các tình huống khó như ảnh chụp từ drone trên không hoặc phân tích cảm biến IoT, trong đó ProgLoss và STAL cải thiện đáng kể độ chính xác khi phát hiện vật thể rất nhỏ.

Lựa chọn hiện đại: Ultralytics YOLO26#

YOLOX và EfficientDet là những cột mốc quan trọng, nhưng bối cảnh học máy đã phát triển nhanh chóng. Đối với nhà phát triển muốn triển khai các hệ thống thị giác tiên tiến nhất hiện nay, lựa chọn được khuyến nghị cao là YOLO26, model flagship mới nhất của Ultralytics, phát hành vào tháng 1 năm 2026.

YOLO26 có hệ sinh thái được duy trì tốt và tạo bước tiến vượt bậc về cả tốc độ lẫn khả năng sử dụng, vượt qua các kiến trúc cũ ở một số khía cạnh then chốt:

Những cải tiến chính của YOLO26#

  • Thiết kế end-to-end không cần NMS: Head one-to-one tùy chọn của YOLO26 (nms=False) loại bỏ nhu cầu hậu xử lý Non-Maximum Suppression (NMS). Phương pháp end-to-end nguyên bản này, được tiên phong ở các thế hệ trước, đơn giản hóa quy trình xuất model và giảm mạnh độ trễ triển khai.
  • Suy luận CPU nhanh hơn đến 43%: Nhờ các tối ưu hóa kiến trúc chuyên sâu và loại bỏ Distribution Focal Loss (DFL), YOLO26 đạt tốc độ ấn tượng trên thiết bị edge không có GPU rời, vượt xa các biến thể EfficientDet nặng nề.
  • Optimizer MuSGD: Đưa các cải tiến của Mô hình ngôn ngữ lớn (LLM) vào thị giác, YOLO26 sử dụng optimizer MuSGD (kết hợp SGD và Muon) để huấn luyện ổn định cao và hội tụ nhanh, mang lại hiệu quả huấn luyện vượt trội.
  • ProgLoss + STAL: Các hàm loss tiên tiến này cải thiện đáng kể khả năng nhận diện đối tượng nhỏ, yếu tố thiết yếu cho các trường hợp sử dụng như hoạt động bằng drone và phân tích ảnh hàng không.
  • Tính linh hoạt vượt trội: Không giống YOLOX chỉ chuyên phát hiện đối tượng, YOLO26 hỗ trợ sẵn nhiều tác vụ, bao gồm phân đoạn instance, phân loại ảnh, ước lượng pose và phát hiện Oriented Bounding Box (OBB).

Dễ sử dụng với Ultralytics API#

Một trong những ưu điểm đáng kể nhất của các model Ultralytics là trải nghiệm người dùng được tinh giản. Việc huấn luyện và triển khai model YOLO26 đòi hỏi ít bộ nhớ hơn đáng kể so với các model Transformer phức tạp, đồng thời chỉ cần vài dòng mã Python:

from ultralytics import YOLO

# Khởi tạo model YOLO26 end-to-end nguyên bản
model = YOLO("yolo26n.pt")

# Dễ dàng huấn luyện model trên dataset tùy chỉnh của bạn
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Xuất model đã huấn luyện sang TensorRT để suy luận cực nhanh
model.export(format="engine", dynamic=True)

Đối với người dùng ưu tiên giao diện trực quan, Ultralytics Platform cung cấp các công cụ mạnh mẽ để gán nhãn dataset, tinh chỉnh hyperparameter và triển khai liền mạch.

Các trường hợp sử dụng thực tế#

Việc chọn kiến trúc phù hợp phụ thuộc nhiều vào các ràng buộc triển khai cụ thể của bạn.

Khi nào nên cân nhắc EfficientDet#

EfficientDet vẫn được quan tâm trong giới học thuật ở những môi trường hoàn toàn không cần tốc độ suy luận, và mục tiêu duy nhất là đạt độ chính xác lý thuyết tối đa trên ảnh độ phân giải cao. Việc triển khai model trong hệ sinh thái TensorFlow cũng có thể phù hợp với các nhóm đang duy trì hạ tầng Google cũ.

Khi nào nên cân nhắc YOLOX#

YOLOX phù hợp với các ứng dụng cần cân bằng tốc độ và độ chính xác mà không phải xử lý sự phức tạp của anchor box. Trước đây, model này hoạt động tốt trong các tình huống sản xuất công nghiệp, nơi cần phát hiện lỗi nhanh trên băng chuyền.

Vì sao YOLO26 là lựa chọn vượt trội#

Với gần như mọi ứng dụng hiện đại, YOLO26 là giải pháp tốt nhất. Thiết kế không cần NMS đảm bảo độ trễ xác định, khiến model trở thành lựa chọn lý tưởng cho lái xe tự hành, hệ thống báo động an ninh tốc độ cao và triển khai thành phố thông minh. Hơn nữa, sự hỗ trợ mạnh mẽ từ cộng đồng và các bản cập nhật thường xuyên của Ultralytics đảm bảo nhà phát triển không phải xử lý các dependency đã lỗi thời.

Các nhà phát triển tìm hiểu về thị giác máy tính nâng cao cũng nên khám phá những kiến trúc linh hoạt khác trong hệ sinh thái Ultralytics, chẳng hạn như YOLO11 cho các hệ thống triển khai cũ ổn định hoặc model chuyên biệt như FastSAM cho tác vụ phân đoạn dựa trên prompt. Sử dụng đầy đủ bộ công cụ Ultralytics đảm bảo pipeline AI thị giác được tối ưu cao và sẵn sàng cho tương lai.

Người đóng góp

Bình luận