Ultralytics YOLO27:

YOLOX so với YOLOv7#

Sự phát triển của phát hiện đối tượng theo thời gian thực được thúc đẩy bởi những đột phá liên tục về kiến trúc. Hai cột mốc đáng chú ý trong hành trình này là YOLOXYOLOv7. Được phát hành trong vòng một năm kể từ nhau, cả hai model đều giới thiệu những cách tiếp cận mới cho mô hình phát hiện đối tượng tiêu chuẩn, cải thiện đáng kể sự cân bằng giữa tốc độ và độ chính xác.

Trang này cung cấp phân tích kỹ thuật chuyên sâu về YOLOX và YOLOv7, so sánh kiến trúc, các chỉ số hiệu năng và những trường hợp sử dụng lý tưởng của chúng để giúp developer lựa chọn công cụ phù hợp cho việc triển khai computer vision.

YOLOX: Tiên phong trong phát hiện không cần anchor#

Được các nhà nghiên cứu tại Megvii giới thiệu vào tháng 7 năm 2021, YOLOX đánh dấu một bước chuyển lớn khi rời xa các thiết kế truyền thống dựa trên anchor. Bằng cách 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, YOLOX đã đơn giản hóa detection head và cải thiện hiệu năng tổng thể.

Chi tiết chính về model:

Các cải tiến về kiến trúc#

YOLOX giới thiệu phương pháp không cần anchor, giúp giảm đáng kể số lượng tham số thiết kế và việc tinh chỉnh theo kinh nghiệm cần thiết cho các dataset tùy chỉnh. Model này triển khai một detection head tách biệt, phân chia các tác vụ phân loại và hồi quy, qua đó cải thiện tốc độ hội tụ và độ chính xác. Ngoài ra, YOLOX sử dụng các chiến lược tăng cường dữ liệu nâng cao như MixUp và Mosaic để tăng độ mạnh mẽ của model.

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

Ưu thế của thiết kế anchor-free

Bằng cách loại bỏ các anchor box, YOLOX giảm chi phí tính toán khi tính Intersection over Union (IoU) giữa các dự đoán và ground truth trong quá trình training, từ đó giảm yêu cầu về bộ nhớ CUDA và rút ngắn thời gian training.

YOLOv7: Bag-of-Freebies có thể huấn luyện#

Được các nhà nghiên cứu tại Institute of Information Science, Academia Sinica, Đài Loan phát hành vào tháng 7 năm 2022, YOLOv7 tiếp tục mở rộng giới hạn của việc phát hiện đối tượng theo thời gian thực. Model này giới thiệu khái niệm "bag-of-freebies có thể training", đồng thời thiết lập các benchmark hiện đại nhất trên dataset MS COCO ngay khi ra mắt.

Chi tiết chính về model:

Các cải tiến về kiến trúc#

Kiến trúc của YOLOv7 được xây dựng xoay quanh Mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN), cho phép model liên tục học các đặc trưng đa dạng hơn mà không làm suy giảm đường truyền gradient. Ngoài ra, YOLOv7 sử dụng các kỹ thuật tái tham số hóa model, cho phép đơn giản hóa các mạng training nhiều nhánh phức tạp thành các mạng nhanh hơn với một đường dẫn duy nhất trong quá trình inference.

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

So sánh hiệu năng#

Khi đánh giá các model này cho những ứng dụng thực tế, việc hiểu rõ hiệu năng ở các quy mô khác nhau là rất quan trọng. Bảng dưới đây so sánh các metric tiêu chuẩn cho nhiều kích thước khác nhau của YOLOX và YOLOv7.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(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
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Phân tích#

  • Độ chính xác: YOLOv7 nhìn chung đạt mAP cao hơn so với các model YOLOX tương đương. Chẳng hạn, YOLOv7x đạt 53.1 mAP, trong khi YOLOXx đạt 51.1.
  • Tốc độ: Mặc dù cả hai model đều được tối ưu hóa cao cho việc thực thi trên GPU bằng TensorRT, kiến trúc E-ELAN của YOLOv7 mang lại throughput tốt hơn một chút cho các ứng dụng cao cấp, trong khi YOLOX vẫn duy trì latency xuất sắc trên các thiết bị edge nhỏ hơn.
  • Tính linh hoạt: YOLOv7 mở rộng khả năng vượt ra ngoài bounding box bằng cách cung cấp sẵn weights cho phân đoạn instanceước lượng pose, khiến model này linh hoạt hơn repository YOLOX cơ bản.

Ứng dụng thực tế#

Việc lựa chọn giữa các model này thường phụ thuộc vào môi trường triển khai cụ thể của bạn.

Điện toán biên và IoT#

Đối với các thiết bị edge bị giới hạn như Raspberry Pi hoặc các bộ xử lý di động đời cũ, YOLOX-NanoYOLOX-Tiny là những lựa chọn rất hấp dẫn. Số lượng tham số tối thiểu và bản chất không cần anchor giúp chúng dễ triển khai hơn trong các môi trường công suất thấp cho những tác vụ như theo dõi chuyển động cơ bản hoặc ứng dụng chuông cửa thông minh.

Phân tích video độ trung thực cao#

Đối với việc xử lý các luồng hình ảnh độ phân giải cao trong phát hiện lỗi công nghiệp hoặc giám sát giao thông mật độ cao, YOLOv7 vượt trội hơn. Khả năng tổng hợp đặc trưng mạnh mẽ giúp model duy trì độ chính xác cao ngay cả khi các đối tượng bị che khuất một phần hoặc có quy mô thay đổi đáng kể.

Các trường hợp sử dụng và khuyến nghị#

Việc lựa chọn giữa YOLOX và YOLOv7 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 cho:

  • 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 detection head hoặc hàm loss mới.
  • Thiết bị edge siêu nhẹ: Triển khai trên microcontroller hoặc phần cứng mobile legacy, nơi footprint 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 project nghiên cứu tìm hiểu chiến lược gán nhãn dựa trên optimal transport và tác động của chúng đến quá trình hội tụ khi training.

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

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

  • Benchmarking học thuật: Tái tạo các kết quả state-of-the-art thời kỳ năm 2022 hoặc nghiên cứu ảnh hưởng của E-ELAN và các kỹ thuật bag-of-freebies có thể training.
  • Nghiên cứu tái tham số hóa: Nghiên cứu các convolution được tái tham số hóa theo kế hoạch và các chiến lược mở rộng model kết hợp.
  • Pipeline tùy chỉnh hiện có: Các dự án có pipeline được tùy chỉnh sâu, xây dựng xoay quanh kiến trúc cụ thể của YOLOv7 và không thể dễ dàng refactor.

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

Đối 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 developer:

  • Triển khai edge không cần NMS: Các ứng dụng yêu cầu suy luận nhất quán, độ trễ thấp mà không có sự phức tạp của bước hậu xử lý triệt tiêu cực đại.
  • Môi trường chỉ sử dụng CPU: Các thiết bị không có tăng tốc GPU chuyên dụng, nơi khả năng suy luận trên CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
  • Phát hiện đối tượng nhỏ: Các kịch bản đầy thách thức 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 trên các đối tượng rất nhỏ.

Lợi thế của Ultralytics#

Mặc dù YOLOX và YOLOv7 đều là những implementation nghiên cứu mạnh mẽ, việc chuyển từ một repository nghiên cứu sang môi trường production có khả năng mở rộng có thể gây khó khăn. Đây là lúc Ultralytics Platform phát huy thế mạnh.

Các model Ultralytics cung cấp Python API hợp nhất, biến việc training, validation và deployment model thành những tác vụ được tinh gọn và tiêu chuẩn hóa. Bạn không phải xử lý sự phức tạp khi quản lý các dependency bên thứ ba hoặc các toán tử C++ tùy chỉnh thường gặp trong những kiến trúc cũ.

Ngoài ra, các model Ultralytics YOLO yêu cầu ít bộ nhớ CUDA hơn đáng kể trong quá trình training so với các detector dựa trên Transformer như RT-DETR. Điều này cho phép practitioner sử dụng batch size lớn hơn, giúp ổn định quá trình training và tăng tốc hội tụ trên các dataset tùy chỉnh.

Các tích hợp được hỗ trợ

Ultralytics hỗ trợ sẵn việc export model sang các format tiêu chuẩn ngành như ONNX, OpenVINOCoreML chỉ bằng một cờ boolean đơn giản, giúp đơn giản hóa đáng kể quy trình triển khai model.

Ví dụ code: Training với Ultralytics#

Hệ sinh thái Ultralytics cho phép bạn dễ dàng load, train và chạy inference bằng YOLOv7 hoặc các kiến trúc mới hơn chỉ với vài dòng code.

from ultralytics import YOLO

# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")

# Train the model on a custom dataset (e.g., COCO8)
# The API handles data loading, augmentation, and memory management automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on a test image
predictions = model("path/to/image.jpg")
predictions[0].show()

Tương lai: Ultralytics YOLO26#

Mặc dù YOLOv7 và YOLOX là những bước tiến lịch sử quan trọng, công nghệ hiện đại nhất đang phát triển nhanh chóng. Được phát hành vào tháng 1 năm 2026, Ultralytics YOLO26 giới thiệu các mô hình mới mang tính đột phá, vượt qua những model trước đây.

  • Thiết kế end-to-end không cần NMS: YOLO26 loại bỏ native bước hậu xử lý Non-Maximum Suppression (NMS). Điều này làm giảm đáng kể các nút thắt latency và đảm bảo thời gian thực thi xác định trên nhiều cấu hình phần cứng khác nhau.
  • Inference trên CPU nhanh hơn tới 43%: Bằng cách loại bỏ Distribution Focal Loss (DFL) và tối ưu hóa độ sâu mạng, YOLO26 được tinh chỉnh mạnh cho các thiết bị edge không có phần cứng GPU chuyên dụng.
  • Optimizer MuSGD: Lấy cảm hứng từ các kỹ thuật training LLM tiên tiến, optimizer MuSGD (một dạng kết hợp giữa SGD và Muon) mang lại độ ổn định training vượt trội và tốc độ hội tụ nhanh hơn.
  • Cải thiện khả năng phát hiện đối tượng nhỏ: Việc tích hợp các hàm loss ProgLoss + STAL mang lại cải thiện đáng kể trong việc nhận diện các đối tượng nhỏ và ở xa—yếu tố quan trọng đối với lập bản đồ bằng drone và giám sát an ninh.
  • Hỗ trợ tác vụ native: YOLO26 hỗ trợ toàn diện Oriented Bounding Boxes (OBB), phân đoạn instance và ước lượng pose native trong cùng một API được tinh gọn.

Đối với bất kỳ developer hiện đại nào bắt đầu một dự án computer vision mới hôm nay, việc đánh giá Ultralytics YOLO26 trên Platform là hướng đi được khuyến nghị để đạt được sự cân bằng tốt nhất giữa tốc độ, độ chính xác và tính đơn giản khi triển khai. Đối với những người nâng cấp từ các thế hệ trước như YOLO11 hoặc YOLOv8, quá trình chuyển đổi chỉ yêu cầu thay đổi chuỗi model, ngay lập tức mở khóa các khả năng vượt trội hơn.

Những người đóng góp

Bình luận