Ultralytics YOLO27:

YOLO11 so với YOLOv5#

Việc lựa chọn kiến trúc neural network phù hợp là một quyết định then chốt đối với mọi sáng kiến về thị giác máy tính. Khi bối cảnh trí tuệ nhân tạo phát triển, các công cụ dành cho developer và nhà nghiên cứu cũng không ngừng thay đổi. Hướng dẫn toàn diệ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 trong hệ sinh thái Ultralytics: YOLOv5 được đánh giá cao và YOLO11 tiên tiến.

Dù bạn đang triển khai các model nhẹ cho ứng dụng AI biên hay xử lý các luồng video độ phân giải cao trên GPU đám mây, việc hiểu rõ các sắc thái kiến trúc, metric hiệu năng và các trường hợp sử dụng lý tưởng của những model này sẽ giúp bạn đưa ra lựa chọn dựa trên dữ liệu, phù hợp với các ràng buộc triển khai cụ thể.

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

Cả hai model đều thể hiện cam kết của Ultralytics đối với hoạt động cộng tác mã nguồn mở, hiệu năng mạnh mẽ và tính dễ sử dụng vượt trội, nhờ đó được cộng đồng machine learning trên toàn cầu ưa chuộng.

Thông tin chi tiết về YOLO11#

Chi tiết YOLOv5#

Sự khác biệt về Architecture#

Quá trình phát triển từ YOLOv5 đến YOLO11 giới thiệu một số thay đổi kiến trúc sâu rộng nhằm tối ưu hóa độ chính xác và hiệu quả sử dụng tham số.

YOLOv5 là model tiên phong trong hệ sinh thái PyTorch, giới thiệu backbone CSPNet (mạng một phần theo giai đoạn) được tối ưu hóa cao và neck PANet (mạng tổng hợp đường dẫn). Model này sử dụng phương pháp phát hiện dựa trên anchor, yêu cầu các anchor box được định nghĩa trước để dự đoán ranh giới vật thể. Dù đạt hiệu quả cao, việc tinh chỉnh các anchor này cho dataset thị giác máy tính tùy chỉnh có thể khá phức tạp.

Ngược lại, YOLO11 chuyển sang paradigma phát hiện hiện đại hơn, không phụ thuộc vào anchor. Điều này loại bỏ nhu cầu tinh chỉnh anchor box thủ công, đơn giản hóa quy trình training và cải thiện khả năng tổng quát hóa trên các dataset đa dạng như dataset COCO. Ngoài ra, YOLO11 có head tách biệt, nghĩa là các tác vụ phân loại và hồi quy bounding box được xử lý trên các nhánh riêng biệt. Sự tách biệt này cải thiện đáng kể tốc độ hội tụ và độ chính xác trung bình (mAP), đặc biệt trong các tình huống phát hiện vật thể phức tạp.

Các chỉ số hiệu năng và benchmark#

Bảng dưới đây đối chiếu các metric chính trên những kích thước model khác nhau. Các model Ultralytics nổi tiếng nhờ yêu cầu bộ nhớ thấp, thường sử dụng ít bộ nhớ CUDA hơn trong quá trình training so với các phương án nặng dựa trên Transformer, qua đó hạ thấp đáng kể rào cản phần cứng đối với người mới bắt đầu.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9
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

Như có thể thấy, YOLO11 đạt được sự cân bằng hiệu năng rất thuận lợi, liên tục cung cấp điểm mAP cao hơn với số lượng tham số tương đương các model YOLOv5 tương ứng.

Phương pháp training và khả năng sử dụng#

Một nguyên tắc cốt lõi trong triết lý của Ultralytics là tính dễ sử dụng vượt trội, được hỗ trợ bởi một hệ sinh thái được duy trì tốt và sự hỗ trợ rộng rãi từ cộng đồng.

Trong lịch sử, YOLOv5 phụ thuộc vào các script giao diện dòng lệnh (CLI) mạnh mẽ (train.py, detect.py) để thực thi. Dù mạnh mẽ, việc tích hợp trực tiếp các script này vào các ứng dụng Python tùy chỉnh thường đòi hỏi những giải pháp workaround.

YOLO11 đã tạo ra bước đột phá bằng cách giới thiệu package Python tinh gọn ultralytics. API hợp nhất này xử lý mọi tác vụ, từ training đến export model sang các format như ONNX, OpenVINOTensorRT một cách native.

Triển khai tinh gọn với Ultralytics Platform

Để có trải nghiệm hoàn toàn không cần code, developer có thể sử dụng Ultralytics Platform để annotate dữ liệu, train model trên cloud và triển khai chúng liền mạch lên các thiết bị biên.

So sánh Code#

Việc training một model Ultralytics hiện nay cực kỳ hiệu quả. Sau đây là cách bạn có thể train YOLO11 bằng Python API native của model:

from ultralytics import YOLO

# Load a pretrained YOLO11 small model
model = YOLO("yolo11s.pt")

# Train the model on custom data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

# Export the model to ONNX for deployment
model.export(format="onnx")

Đối với các hệ thống legacy sử dụng YOLOv5, training qua CLI được thực hiện như sau:

# Clone the repository and run the training script
git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt

python train.py --img 640 --batch 16 --epochs 50 --data coco128.yaml --weights yolov5s.pt

Các trường hợp sử dụng lý tưởng và ứng dụng thực tế#

Cả hai model đều có những thế mạnh riêng, phù hợp với các môi trường vận hành khác nhau.

Khi nào nên sử dụng YOLOv5#

Dù thuộc thế hệ cũ hơn, YOLOv5 vẫn là một model mạnh mẽ. Model này đặc biệt được khuyến nghị cho:

  • Tích hợp hệ thống legacy: Các môi trường tích hợp sâu với cấu trúc tensor hoặc pipeline triển khai riêng của YOLOv5 mà không thể dễ dàng refactor.
  • Baseline học thuật: Các nhà nghiên cứu cần những baseline lâu đời, đã được thiết lập để thực hiện các nghiên cứu học thuật có khả năng tái lập trong lĩnh vực phân tích ảnh y khoa.

Khi nào nên sử dụng YOLO11#

YOLO11 là lựa chọn lý tưởng cho các pipeline production hiện đại nhờ tính linh hoạt vượt trội:

Định hướng tương lai: Kiến trúc YOLO26#

Dù YOLO11 là một tiêu chuẩn xuất sắc, lĩnh vực thị giác máy tính vẫn tiếp tục phát triển nhanh chóng. Các developer tìm kiếm hiệu quả tối ưu tuyệt đối cũng nên cân nhắc Ultralytics YOLO26 mới nhất (phát hành vào tháng 1 năm 2026).

YOLO26 đại diện cho một bước tiến vượt bậc, được thiết kế rõ ràng cho cả tối ưu hóa ở edge và quy mô enterprise. Các cải tiến chính bao gồm:

  • Thiết kế end-to-end không cần NMS: YOLO26 native end-to-end, loại bỏ bước hậu xử lý Non-Maximum Suppression (NMS) để triển khai nhanh hơn và đơn giản hơn.
  • Loại bỏ DFL: Distribution Focal Loss đã được loại bỏ để đơn giản hóa việc export model và tăng khả năng tương thích với các thiết bị công suất thấp.
  • Optimizer MuSGD: Sự kết hợp đột phá giữa SGD và Muon, mang lại độ ổn định trong training LLM cho thị giác máy tính, từ đó giúp hội tụ nhanh hơn.
  • Inference trên CPU nhanh hơn tới 43%: Được tối ưu hóa mạnh mẽ cho các triển khai IoT và những thiết bị không có GPU chuyên dụng.
  • ProgLoss + STAL: Các hàm loss được cải thiện đáng kể, mang lại tiến bộ rõ rệt trong nhận diện vật thể nhỏ, yếu tố thiết yếu đối với hình ảnh từ drone trên không.

Tóm tắt#

Việc lựa chọn giữa YOLO11 và YOLOv5 cuối cùng phụ thuộc vào giai đoạn vòng đời của dự án. Di sản của YOLOv5 là không thể phủ nhận, với độ ổn định cực cao và sự hậu thuẫn lớn từ cộng đồng. Tuy nhiên, đối với mọi dự án mới, YOLO11 được khuyến nghị mạnh mẽ hơn các thế hệ cũ. Model này kết hợp độ chính xác tiên tiến, Python API đặc biệt tinh gọn và chi phí bộ nhớ training thấp hơn, củng cố vị thế dẫn đầu của Ultralytics trong đổi mới AI. Với những ai muốn đẩy giới hạn đi xa hơn nữa, việc khám phá YOLO26 hiện đại nhất trên Ultralytics Platform sẽ mang lại kết quả vượt trội.

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

Bình luận