YOLOv5 so với YOLO11#
Khi lựa chọn kiến trúc thị giác máy tính phù hợp cho một dự án mới, việc hiểu rõ quá trình phát triển của các model tiên tiến là rất quan trọng. Sự chuyển dịch từ các kiến trúc trước đây sang những framework hợp nhất hiện đại cho thấy những bước tiến đáng kể cả về hiệu quả thuật toán lẫn trải nghiệm developer. Hướng dẫn này cung cấp phần so sánh kỹ thuật chuyên sâu giữa hai model tiêu biểu do Ultralytics phát triển: YOLOv5 tiên phong và YOLO11 được tinh chỉnh mạnh mẽ.
Giới thiệu về các Model#
Cả hai kiến trúc này đều là những cột mốc quan trọng trong lĩnh vực phát hiện đối tượng theo thời gian thực, với các ưu điểm riêng tùy thuộc vào môi trường triển khai và yêu cầu duy trì hệ thống legacy của bạn.
YOLOv5: Trụ cột của ngành#
Được phát hành vào mùa hè năm 2020, YOLOv5 nhanh chóng trở thành tiêu chuẩn trong ngành nhờ implementation PyTorch native, giúp hạ thấp đáng kể rào cản khi training và triển khai. Model này rời xa các framework C Darknet phức tạp của những thế hệ trước, cung cấp cách tiếp cận xây dựng model theo phong cách Python.
- Tác giả: Glenn Jocher
- Tổ chức: Ultralytics
- Ngày: 2020-06-26
- GitHub: ultralytics/yolov5
- Tài liệu: Tài liệu YOLOv5
YOLOv5 thiết lập một baseline vững chắc về tính dễ sử dụng và giới thiệu các phương pháp training mạnh mẽ, bao gồm tăng cường dữ liệu mosaic nâng cao và auto-anchoring. Model này vẫn cực kỳ phổ biến đối với các nhà nghiên cứu xây dựng trên một codebase được tài liệu hóa đầy đủ và kiểm thử rộng rãi.
YOLO11: Framework thị giác hợp nhất#
Dựa trên nhiều năm phản hồi và nghiên cứu kiến trúc, YOLO11 được giới thiệu như một phần của framework hợp nhất, có khả năng native xử lý nhiều tác vụ thị giác. Không chỉ giới hạn ở bounding box, model này được thiết kế ngay từ đầu để đạt tính linh hoạt và hiệu quả tối đa.
- Tác giả: Glenn Jocher và Jing Qiu
- Tổ chức: Ultralytics
- Ngày: 2024-09-27
- GitHub: ultralytics/ultralytics
- Tài liệu: Tài liệu YOLO11
YOLO11 mang đến trải nghiệm người dùng tinh gọn thông qua package Python ultralytics, với API đơn giản hợp nhất phát hiện đối tượng, phân đoạn instance, phân loại, ước tính pose và bounding box có hướng (OBB). Model đạt được sự cân bằng rất tốt giữa tốc độ và độ chính xác, lý tưởng cho nhiều kịch bản triển khai thực tế.
Cả hai model đều hưởng lợi từ hệ sinh thái được duy trì tốt do Ultralytics Platform cung cấp. Môi trường tích hợp này đơn giản hóa việc gán nhãn dataset, training trên cloud và export model sang nhiều mục tiêu phần cứng khác nhau.
So sánh hiệu năng và các chỉ số#
So sánh trực tiếp các model này cho thấy những cải tiến kiến trúc chuyển hóa thành các mức tăng hiệu năng rõ rệt như thế nào. Bảng dưới đây minh họa mean Average Precision (mAP) được đánh giá trên dataset COCO, cùng với tốc độ inference trên CPU và GPU và số lượng parameter.
| Model | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | tham số (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Phân tích kết quả#
Các metric cho thấy bước tiến rõ rệt về cân bằng hiệu năng mà YOLO11 đạt được. Chẳng hạn, model YOLO11n (nano) đạt 39.5% mAP so với 28.0% của YOLOv5n, đồng thời giảm thời gian inference trên CPU khi được export qua ONNX. Ngoài ra, YOLO11 duy trì yêu cầu bộ nhớ thấp hơn đáng kể trong quá trình training so với các model dựa trên transformer nặng, giúp việc triển khai trên phần cứng phổ thông và thiết bị edge dễ tiếp cận hơn.
Sự khác biệt về Architecture#
Những cải thiện hiệu năng của YOLO11 bắt nguồn từ một số tiến hóa kiến trúc quan trọng. Trong khi YOLOv5 sử dụng backbone CSPNet tiêu chuẩn với các module C3, YOLO11 giới thiệu những block trích xuất đặc trưng hiệu quả hơn như C2f và sau đó là C3k2, giúp tối ưu luồng gradient và giảm overhead tính toán.
YOLO11 cũng sở hữu một head được tinh chỉnh sâu rộng. Rời xa thiết kế dựa trên anchor của các model cũ, những kiến trúc Ultralytics mới hơn áp dụng cách tiếp cận anchor-free. Điều này làm giảm số lượng dự đoán box, tinh gọn pipeline hậu xử lý và cải thiện khả năng khái quát của model trên các scale và tỷ lệ khung hình khác nhau. Ngoài ra, các model này có hiệu quả training vượt trội cùng các pre-trained weight sẵn có, giúp tăng tốc quá trình hội tụ của các dataset được fine-tune.
Implementation và ví dụ code#
Một trong những đặc điểm nổi bật của hệ sinh thái Ultralytics là tính đơn giản. Trong khi YOLOv5 phổ biến hóa việc sử dụng torch.hub cho inference nhanh, YOLO11 tiến thêm một bước với package Python hợp nhất ultralytics.
Training với YOLO11#
Việc load, training và validation một model chỉ yêu cầu rất ít boilerplate code. API xử lý liền mạch việc tuning hyperparameter và quản lý model.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11s.pt")
# Train on a custom dataset for 50 epochs
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run fast inference and display results
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()
# Easily export the model to TensorRT for hardware acceleration
model.export(format="engine")Inference legacy với YOLOv5#
Nếu bạn đang duy trì một pipeline cũ, YOLOv5 tích hợp trực tiếp với cơ chế load native của PyTorch, giúp dễ dàng đưa model vào các script inference hiện có.
import torch
# Load a custom or pretrained YOLOv5 model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")
# Perform inference on an image URL
results = model("https://ultralytics.com/images/zidane.jpg")
# Print prediction details to the console
results.print()Cả hai model đều hỗ trợ nhiều format export. Dù bạn nhắm đến NVIDIA Jetson sử dụng TensorRT hay một ứng dụng iOS sử dụng CoreML, quy trình triển khai đều được tài liệu hóa đầy đủ và cộng đồng hỗ trợ.
Các trường hợp sử dụng lý tưởng#
Việc lựa chọn giữa các model này phụ thuộc phần lớn vào giai đoạn vòng đời của dự án và các yêu cầu cụ thể.
Khi nào nên chọn YOLOv5#
- Duy trì codebase legacy: Nếu môi trường production của bạn được tùy biến sâu quanh cấu trúc repository YOLOv5 hoặc các kỹ thuật tiến hóa hyperparameter cụ thể.
- Baseline học thuật: Khi công bố nghiên cứu yêu cầu benchmark trực tiếp với các tiêu chuẩn thị giác máy tính established trong giai đoạn 2020–2022.
Khi nào nên chọn YOLO11#
- Dự án đa tác vụ: Khi ứng dụng của bạn yêu cầu kết hợp nhiều tác vụ như ước tính pose và phân đoạn instance bằng một API hợp nhất duy nhất.
- Triển khai edge: Cho các kịch bản điện toán edge, trong đó việc đạt mAP tối đa với một ngân sách tính toán nhất định (FLOPs) là yếu tố then chốt.
- Giải pháp AI thương mại: Lý tưởng cho các ứng dụng doanh nghiệp trong lĩnh vực bán lẻ và an ninh, tận dụng sự hỗ trợ mạnh mẽ của Ultralytics Platform.
Thế hệ tiếp theo: Ultralytics YOLO26#
Mặc dù YOLO11 mang lại sự cân bằng tuyệt vời giữa tốc độ và độ chính xác, lĩnh vực trí tuệ nhân tạo phát triển rất nhanh. Đối với các developer bắt đầu dự án mới hiện nay, chúng tôi đặc biệt khuyến nghị khám phá tiêu chuẩn mới nhất trong AI thị giác: Ultralytics YOLO26.
Được phát hành vào tháng 1 năm 2026, YOLO26 giới thiệu những cải tiến mang tính thay đổi mô hình, được thiết kế riêng cho nhu cầu triển khai hiện đại:
- Thiết kế end-to-end không cần NMS: Dựa trên các khái niệm lần đầu được tiên phong trong YOLOv10, YOLO26 có kiến trúc end-to-end native. Model loại bỏ nhu cầu hậu xử lý Non-Maximum Suppression (NMS), đơn giản hóa đáng kể các pipeline triển khai và giảm latency.
- Optimizer MuSGD: Lấy cảm hứng từ các đổi mới trong training LLM của những model như Kimi K2 của Moonshot AI, optimizer lai giữa SGD và Muon này đảm bảo quá trình training cực kỳ ổn định và hội tụ nhanh hơn đáng kể.
- Tốc độ CPU chưa từng có: Bằng cách loại bỏ Distribution Focal Loss (DFL), YOLO26 đạt inference trên CPU nhanh hơn tới 43%, trở thành lựa chọn tuyệt đối tốt nhất cho các thiết bị edge và môi trường không có GPU chuyên dụng.
- Hàm loss nâng cao: Việc tích hợp ProgLoss và STAL mang lại những cải thiện đáng kể trong nhận dạng đối tượng nhỏ, yếu tố quan trọng đối với phân tích drone, IoT và robotics.
- Cải tiến theo từng tác vụ: Model giới thiệu các tối ưu hóa chuyên biệt, chẳng hạn Residual Log-Likelihood Estimation (RLE) cho Pose và hàm loss góc chuyên biệt cho bounding box có hướng, đảm bảo hiệu năng vượt trội trên mọi tác vụ thị giác máy tính.
Đối với người dùng quan tâm đến các kiến trúc chuyên biệt vượt ngoài phát hiện đối tượng tiêu chuẩn, bạn cũng có thể khám phá các model như RT-DETR cho phát hiện dựa trên transformer hoặc YOLO-World cho tracking và phát hiện với từ vựng mở. Việc sử dụng những công cụ được duy trì tốt và tối ưu hóa cao này giúp các pipeline thị giác máy tính của bạn luôn hiệu quả, có khả năng mở rộng và dẫn đầu xu hướng.