Ultralytics YOLO27:
Get Started

YOLO11 và YOLOv5#

Việc lựa chọn kiến trúc mạng nơ-ron phù hợp là quyết định then chốt đối với mọi sáng kiến thị giác máy tính. Khi lĩnh vực 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 nổi tiếng rộng rãi và YOLO11 tiên tiến.

Dù bạn triển khai model gọn nhẹ cho các ứng dụng AI biên hay xử lý luồng video độ phân giải cao trên GPU đám mây, việc hiểu rõ khác biệt về kiến trúc, chỉ số hiệu năng và trường hợp sử dụng lý tưởng của các 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 giới hạn triển khai cụ thể.

Nguồn gốc model và thông tin kỹ thuật#

Cả hai model đều thể hiện cam kết của Ultralytics đối với sự 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 toàn cầu ưa chuộng.

Thông tin về YOLO11#

Thông tin về YOLOv5#

Khác biệt về kiến trúc#

Quá trình phát triển từ YOLOv5 lên YOLO11 mang đến 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, với backbone CSPNet (Mạng một phần xuyên giai đoạn) được tối ưu hóa cao và neck PANet (Mạng tổng hợp đường dẫn). Model sử dụng phương pháp phát hiện dựa trên anchor, đòi hỏi các anchor box được xác định trước để dự đoán ranh giới vật thể. Dù rất hiệu quả, 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á rườm rà.

Ngược lại, YOLO11 chuyển sang mô hình phát hiện hiện đại hơn, không dùng anchor. Cách này loại bỏ nhu cầu tinh chỉnh anchor box thủ công, đơn giản hóa quy trình huấn luyện 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 rời, nghĩa là các tác vụ phân loại và hồi quy hộp giới hạn được xử lý ở các nhánh riêng biệt. Việc tách 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.

Chỉ số hiệu năng và benchmark#

Bảng dưới đây đối chiếu các chỉ số chính ở những kích thước model khác nhau. Model Ultralytics nổi tiếng nhờ yêu cầu bộ nhớ thấp, thường dùng ít bộ nhớ CUDA hơn trong quá trình huấn luyện so với các phương án dựa trên Transformer cồng kềnh, qua đó giảm đáng kể rào cản phần cứng ban đầu.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.6
YOLO11m64051.5183.24.720.168.1
YOLO11l64053.4238.66.225.387.2
YOLO11x64054.7462.811.356.9195.3
YOLOv5n64028.0-1.121.94.5
YOLOv5s64037.4-1.927.216.5
YOLOv5m64045.4-4.0321.249.0
YOLOv5l64049.0-6.6146.5109.1
YOLOv5x64050.7-11.8986.7205.7

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 mang lại điểm mAP cao hơn với số lượng tham số tương đương các model YOLOv5.

Phương pháp huấn luyện và tính dễ 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 hệ sinh thái được duy trì tốt và cộng đồng hỗ trợ rộng rãi.

Trước đây, YOLOv5 chủ yếu dựa vào các script giao diện dòng lệnh (CLI) mạnh mẽ (train.py, detect.py) để thực thi. Tuy mạnh mẽ, việc tích hợp trực tiếp các script này vào ứng dụng Python tùy chỉnh thường đòi hỏi giải pháp tình thế.

YOLO11 được xây dựng trên package Python ultralytics tinh gọn (ra mắt cùng YOLOv8). API hợp nhất này xử lý mọi thứ, từ huấn luyện đến xuất model sang các định dạng như ONNX, OpenVINO và TensorRT một cách tự nhiên.

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

Để có trải nghiệm hoàn toàn không cần viết mã, developer có thể sử dụng Ultralytics Platform để gắn nhãn dữ liệu, huấn luyện model trên đám mây và triển khai liền mạch lên thiết bị biên.

So sánh mã#

Ngày nay, việc huấn luyện model Ultralytics cực kỳ hiệu quả. Sau đây là cách huấn luyện YOLO11 bằng Python API gốc:

from ultralytics import YOLO

# Tải model YOLO11 cỡ nhỏ đã được huấn luyện trước
model = YOLO("yolo11s.pt")

# Huấn luyện model trên dữ liệu tùy chỉnh
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

# Xuất model sang ONNX để triển khai
model.export(format="onnx")

Với các hệ thống cũ sử dụng YOLOv5, có thể huấn luyện qua CLI 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

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

Mỗi model đều có những ưu điểm 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ù đã có thế hệ mới hơn, YOLOv5 vẫn là một model mạnh mẽ. Model này đặc biệt phù hợp với:

  • Tích hợp hệ thống cũ: 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, vốn khó tái cấu trúc.
  • Baseline học thuật: Các nhà nghiên cứu cần baseline đã được xác lập và sử dụng lâu năm để thực hiện nghiên cứu học thuật có thể tái lập trong lĩnh vực phân tích ảnh y tế.

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

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

Hướng tới tương lai: Kiến trúc YOLO26#

Dù YOLO11 là một chuẩn mực 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. Developer muốn đạt hiệu quả tối đa 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 là bước tiến vượt bậc, được thiết kế rõ ràng cho cả tối ưu hóa trên thiết bị biên lẫn quy mô doanh nghiệp. Các đổi mới chính bao gồm:

  • Thiết kế end-to-end không cần NMS: YOLO26 hỗ trợ suy luận end-to-end gốc, bỏ qua bước hậu xử lý loại bỏ phi cực đại (NMS) bằng nms=False để 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 xuất model và tăng khả năng tương thích với thiết bị công suất thấp.
  • Optimizer MuSGD: Phương pháp lai đột phá giữa SGD và Muon, đưa độ ổn định trong huấn luyện LLM sang thị giác máy tính để hội tụ nhanh hơn.
  • Suy luận trên CPU nhanh hơn tới 43%: Được tối ưu hóa sâu cho triển khai IoT và thiết bị không có GPU chuyên dụng.
  • ProgLoss + STAL: Các hàm loss được cải tiến đáng kể, giúp nâng cao rõ rệt khả năng nhận diện vật thể nhỏ, yếu tố thiết yếu đối với hình ảnh trên không từ drone.

Tóm tắt#

Việc chọn YOLO11 hay 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 cao và sự hỗ trợ rộng rãi từ cộng đồng. Tuy nhiên, với mọi dự án mới, YOLO11 được khuyến nghị 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à mức sử dụng bộ nhớ huấn luyện thấp hơn, củng cố vị thế dẫn đầu của Ultralytics trong đổi mới AI. Nếu muốn tiến xa hơn nữa, khám phá YOLO26 tiên tiến nhất trên Ultralytics Platform sẽ mang lại kết quả vượt trội.

Người đóng góp

Bình luận