Ultralytics YOLO27:

YOLOv5 so với YOLOv10#

Lĩnh vực thị giác máy tính thời gian thực đã tăng trưởng theo cấp số nhân trong vài năm qua, với nhiều kiến trúc khác nhau không ngừng mở rộng giới hạn của những gì phần cứng hiện đại có thể thực hiện. Khi đánh giá các kiến trúc tiên tiến nhất, sự so sánh giữa YOLOv5YOLOv10 cho thấy một bước tiến hóa đáng kể trong lĩnh vực phát hiện đối tượng. Phân tích kỹ thuật chuyên sâu này khám phá các mô hình kiến trúc, sự đánh đổi về hiệu năng và cách developer có thể tận dụng những công cụ này trong môi trường production.

Phân tích chuyên sâu về kiến trúc#

Việc hiểu rõ những khác biệt về cấu trúc giữa các model này là yếu tố then chốt để triển khai chúng hiệu quả trong thực tế.

Ultralytics YOLOv5: Tiêu chuẩn ngành#

Được Ultralytics giới thiệu, YOLOv5 từ lâu đã được công nhận nhờ sự cân bằng vượt trội giữa tốc độ, độ chính xác và khả năng tiếp cận.

YOLOv5 sử dụng cơ chế phát hiện dựa trên anchor kết hợp với backbone CSPDarknet được tối ưu hóa chuyên sâu. Kiến trúc này phụ thuộc nhiều vào các phép toán tiêu chuẩn được hầu hết inference engine hỗ trợ, nhờ đó có tính linh hoạt cao. Điểm mạnh chính của model nằm ở Ultralytics Python SDK, cung cấp trải nghiệm người dùng tinh gọn, API đơn giản và tài liệu toàn diện. Ngoài ra, yêu cầu bộ nhớ thấp hơn so với các model dựa trên Transformer giúp YOLOv5 training nhanh trên GPU phổ thông mà không đòi hỏi lượng VRAM quá lớn.

YOLOv10: Mở rộng mô hình kiến trúc#

Được phát triển bởi các nhà nghiên cứu tại Đại học Thanh Hoa, YOLOv10 hướng đến việc giải quyết những nút thắt độ trễ cụ thể trong các kiến trúc trước đây.

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

Đặc điểm nổi bật của YOLOv10 là thiết kế NMS-free (triệt tiêu cực đại) ngay từ đầu. Bằng cách sử dụng cơ chế gán kép nhất quán trong quá trình training, model loại bỏ nhu cầu hậu xử lý NMS trong quá trình inference. Việc giảm độ trễ trên lý thuyết này đặc biệt có lợi cho các hệ thống triển khai trên phần cứng cao cấp với khả năng tăng tốc NVIDIA TensorRT mạnh mẽ, dù có thể tạo thêm phức tạp về cấu trúc cho các thiết bị edge.

Lợi thế hệ sinh thái

Mặc dù YOLOv10 mang đến những cải tiến thú vị về kiến trúc, các model Ultralytics như YOLOv5 và YOLO26 mới hơn được hỗ trợ nguyên bản trong Ultralytics Platform, cung cấp hiệu quả training vượt trội, khả năng tự động tiến hóa hyperparameter và nhiều tùy chọn export ngay khi cài đặt.

Phân tích hiệu năng#

Khi so sánh các model này, sự cân bằng giữa độ chính xác (mAP) và chi phí tính toán (độ trễ và số lượng parameter) quyết định trường hợp sử dụng phù hợp nhất. Dưới đây là so sánh hiệu năng kỹ thuật trên tập dữ liệu COCO.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

YOLOv10 rõ ràng đạt mAP50-95 cao hơn ở các quy mô kích thước tương đương nhờ tận dụng thiết kế model hiện đại, được tối ưu theo hướng cân bằng hiệu quả và độ chính xác. Tuy nhiên, YOLOv5 vẫn duy trì độ trễ có tính cạnh tranh cao, đặc biệt ở các tier Nano và Small, khiến model trở nên đáng tin cậy cho những môi trường embedded bị giới hạn như dòng NVIDIA Jetson hoặc CPU tiêu chuẩn thông qua OpenVINO.

Phương pháp huấn luyện và hệ sinh thái#

Giá trị của một model gắn chặt với ecosystem xung quanh nó. Ultralytics duy trì một ecosystem được xây dựng và bảo trì đặc biệt tốt, hỗ trợ rất nhiều loại task. Trong khi YOLOv10 tập trung nghiêm ngặt vào phát hiện đối tượng 2D, Ultralytics hỗ trợ nguyên bản instance segmentation, phân loại ảnh, ước lượng posebounding box định hướng (OBB).

Hơn nữa, training một model Ultralytics đòi hỏi lượng overhead bộ nhớ thấp hơn đáng kể so với các phương pháp dựa trên Transformer cạnh tranh, giúp chu kỳ phát triển nhanh và tiết kiệm chi phí.

Thực thi code liền mạch#

Training, validation và export model được hợp nhất trong một API duy nhất. Bạn có thể chuyển đổi giữa các model chỉ bằng cách thay đổi một string.

from ultralytics import YOLO

# Load a pre-trained YOLOv5 model for baseline testing
model_v5 = YOLO("yolov5s.pt")

# Load a YOLOv10 model for comparison
model_v10 = YOLO("yolov10s.pt")

# Train the model on the COCO8 dataset efficiently
results = model_v5.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device="0",  # Automatically utilizes PyTorch CUDA acceleration
    batch=16,
)

# Export to ONNX for CPU inference deployment
model_v5.export(format="onnx", simplify=True)

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

Việc lựa chọn giữa YOLOv5 và YOLOv10 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à ưu tiên về ecosystem.

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

YOLOv5 là lựa chọn phù hợp cho:

  • Hệ thống production đã được kiểm chứng: Các triển khai hiện có, trong đó bề dày ổn định, tài liệu phong phú và sự hỗ trợ lớn từ cộng đồng của YOLOv5 được đánh giá cao.
  • Huấn luyện trong điều kiện hạn chế tài nguyên: Các môi trường có tài nguyên GPU hạn chế, nơi pipeline huấn luyện hiệu quả và yêu cầu bộ nhớ thấp hơn của YOLOv5 mang lại lợi thế.
  • Hỗ trợ đa dạng định dạng export: Các dự án yêu cầu triển khai trên nhiều định dạng, bao gồm ONNX, TensorRT, CoreMLTFLite.

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

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

  • Phát hiện thời gian thực không cần NMS: Các ứng dụng hưởng lợi từ khả năng phát hiện đầu cuối mà không cần triệt tiêu cực đại, giúp giảm độ phức tạp khi triển khai.
  • Cân bằng giữa tốc độ và độ chính xác: Các project yêu cầu sự cân bằng tốt giữa tốc độ suy luận và độ chính xác phát hiện trên nhiều quy mô model khác nhau.
  • Ứng dụng có độ trễ nhất quán: Các kịch bản triển khai mà thời gian suy luận có thể dự đoán là yếu tố quan trọng, chẳng hạn như robotics hoặc các hệ thống tự hành.

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ỏ.

Tương lai: Ultralytics YOLO26#

Trong khi YOLOv5 tạo ra cuộc cách mạng về khả năng tiếp cận và YOLOv10 mở rộng giới hạn của kiến trúc NMS-free, lĩnh vực tiên tiến nhất vẫn không ngừng phát triển. Đối với các dự án mới, chúng tôi đặc biệt khuyến nghị Ultralytics YOLO26 tiên tiến, được phát hành vào tháng 1 năm 2026.

YOLO26 kết hợp độ tin cậy của ecosystem Ultralytics với những cải tiến đột phá:

  • Thiết kế NMS-Free End-to-End: Tích hợp trực tiếp mô hình NMS-free vào framework Ultralytics, YOLO26 đơn giản hóa việc triển khai và đảm bảo độ trễ thấp hơn.
  • Inference trên CPU nhanh hơn tới 43%: Nhờ loại bỏ Hàm mất mát tiêu điểm phân phối (DFL), YOLO26 nhanh hơn đáng kể trên các thiết bị edge không có GPU.
  • Optimizer MuSGD: Lấy cảm hứng từ những đổi mới trong training LLM của Moonshot AI, optimizer MuSGD mang lại độ ổn định chưa từng có và khả năng hội tụ nhanh.
  • ProgLoss + STAL: Các hàm loss mới này cải thiện đáng kể khả năng nhận diện đối tượng nhỏ, yếu tố quan trọng trong những lĩnh vực như ảnh chụp từ drone và robotics.

Bạn có thể quản lý, training và triển khai YOLO26 trực tiếp thông qua Ultralytics Platform.

Kết luận#

Việc lựa chọn giữa YOLOv5 và YOLOv10 thường phụ thuộc vào các ràng buộc cụ thể của dự án. YOLOv10 cung cấp mAP xuất sắc cho các nhà nghiên cứu và ứng dụng tận dụng throughput GPU thô. Ngược lại, YOLOv5 vẫn là một workhorse bền bỉ, có khả năng tương thích cao cho các hệ thống triển khai tiêu chuẩn.

Tuy nhiên, lĩnh vực thị giác máy tính luôn năng động. Để khai thác sự cân bằng tối ưu giữa hiệu năng, tính linh hoạt và khả năng sử dụng, developer nên hướng đến Ultralytics YOLO26. Model này kết hợp tốc độ của inference NMS-free với ecosystem Ultralytics mạnh mẽ, được tài liệu hóa đầy đủ, giúp các giải pháp AI thị giác của bạn luôn sẵn sàng cho tương lai. Đối với các trường hợp sử dụng chuyên biệt, developer cũng có thể khám phá YOLO11 nhờ độ robust tổng quát, hoặc RT-DETR nhờ độ chính xác dựa trên Transformer.

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

Bình luận