YOLOv5 so với YOLO26: Sự phát triển của detect đối tượng thời gian thực
Sự phát triển của detect vật thể đã được đánh dấu bằng những bước nhảy vọt đáng kể về hiệu quả và độ chính xác. Trong nhiều năm, YOLOv5 đã là tiêu chuẩn công nghiệp, được yêu thích nhờ sự cân bằng giữa tốc độ và dễ sử dụng. Tuy nhiên, bối cảnh thị giác máy tính thay đổi nhanh chóng. Giới thiệu YOLO26, thế hệ mới nhất từ Ultralytics, định nghĩa lại những gì có thể đạt được trên các thiết bị biên và máy chủ hiệu năng cao.
Hướng dẫn này cung cấp so sánh kỹ thuật giữa YOLOv5 huyền thoại và YOLO26 tiên tiến, phân tích kiến trúc, các chỉ số hiệu suất và trường hợp sử dụng lý tưởng của chúng để giúp bạn chọn công cụ phù hợp cho dự án thị giác máy tính tiếp theo của mình.
So sánh tổng quan
Mặc dù cả hai mô hình đều là sản phẩm từ cam kết của Ultralytics về AI dễ tiếp cận, chúng đại diện cho các kỷ nguyên triết lý thiết kế khác nhau. YOLOv5 tập trung vào việc thiết lập một hệ sinh thái mạnh mẽ, thân thiện với người dùng, trong khi YOLO26 đẩy mạnh giới hạn về độ trễ và hiệu quả kiến trúc.
YOLOv5: Tiêu chuẩn kế thừa
Được phát hành vào tháng 6 năm 2020 bởi Glenn Jocher, YOLOv5 đã cách mạng hóa khả năng tiếp cận của detect vật thể. Đây là một trong những mô hình đầu tiên cung cấp trải nghiệm huấn luyện liền mạch trực tiếp trong hệ sinh thái PyTorch, loại bỏ khung Darknet của các phiên bản tiền nhiệm.
- Ngày: 2020-06-26
- Tác giả: Glenn Jocher
- Tổ chức:Ultralytics
- Tính năng chính: detect dựa trên anchor yêu cầu Non-Maximum Suppression (NMS).
YOLOv5 vẫn là một công cụ đáng tin cậy, đặc biệt đối với các hệ thống cũ nơi việc cập nhật pipeline suy luận có thể tốn kém. Kiến trúc "dựa trên anchor" của nó dựa vào các hộp được xác định trước để dự đoán vị trí vật thể, một phương pháp hiệu quả nhưng đòi hỏi tinh chỉnh cẩn thận các siêu tham số.
YOLO26: Biên giới mới
Được phát hành vào tháng 1 năm 2026 bởi Glenn Jocher và Jing Qiu, YOLO26 giới thiệu những thay đổi kiến trúc triệt để được thiết kế cho kỷ nguyên AI biên hiện đại. Nó loại bỏ các anchor và xử lý hậu kỳ phức tạp để mang lại tốc độ thô mà không ảnh hưởng đến độ chính xác.
- Ngày: 2026-01-14
- Tác giả: Glenn Jocher, Jing Qiu
- Tổ chức:Ultralytics
- Tính năng chính: Không NMS từ đầu đến cuối, Bộ tối ưu hóa MuSGD, Loại bỏ DFL.
YOLO26 được xây dựng cho các nhà phát triển cần thông lượng tối đa. Bằng cách loại bỏ nhu cầu NMS, nó đơn giản hóa logic triển khai và giảm độ trễ, biến nó thành lựa chọn ưu việt cho các ứng dụng thời gian thực trên CPU và thiết bị di động.
So sánh hiệu suất kỹ thuật
Các chỉ số sau đây làm nổi bật bước nhảy vọt về hiệu suất giữa các thế hệ. Các thử nghiệm được thực hiện trên tập dữ liệu COCO, một chuẩn mực tiêu chuẩn cho các tác vụ detect vật thể.
| Mô hình | Kích thước (pixels) | 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 |
| YOLO26n | 640 | 40.9 | 38.9 | 1.7 | 2.4 | 5.4 |
| YOLO26s | 640 | 48.6 | 87.2 | 2.5 | 9.5 | 20.7 |
| YOLO26m | 640 | 53.1 | 220.0 | 4.7 | 20.4 | 68.2 |
| YOLO26l | 640 | 55.0 | 286.2 | 6.2 | 24.8 | 86.4 |
| YOLO26x | 640 | 57.5 | 525.8 | 11.8 | 55.7 | 193.9 |
Những Điểm Chính
- Hiệu quả CPU: YOLO26n nhanh hơn gần 2 lần trên CPU so với YOLOv5n, đồng thời mang lại bước nhảy vọt lớn về độ chính xác (28.0% so với 40.9% mAP). Điều này rất quan trọng đối với việc triển khai trên Raspberry Pi hoặc thiết bị di động nơi tài nguyên GPU không có sẵn.
- Hiệu quả tham số: YOLO26x đạt độ chính xác cao hơn đáng kể (57.5% mAP) so với YOLOv5x (50.7%) trong khi sử dụng gần một nửa số tham số (55.7M so với 97.2M). Việc giảm kích thước mô hình này làm giảm yêu cầu bộ nhớ và chi phí lưu trữ.
- Đánh đổi độ chính xác/tốc độ: Phiên bản "Nano" của YOLO26 vượt trội hơn phiên bản "Small" của YOLOv5 về độ chính xác, mặc dù là một lớp mô hình nhỏ hơn.
Nâng cấp từ YOLOv5
Nếu bạn hiện đang sử dụng YOLOv5s, việc chuyển sang YOLO26n có thể sẽ mang lại cho bạn độ chính xác tốt hơn và suy luận nhanh hơn đồng thời, giảm cả chi phí tính toán và độ trễ của bạn.
Tìm hiểu sâu về kiến trúc
Khoảng cách hiệu suất bắt nguồn từ những khác biệt cơ bản trong cách các mô hình tiếp cận vấn đề detect.
1. Thiết kế End-to-End không NMS
YOLOv5 sử dụng một phương pháp truyền thống tạo ra hàng nghìn hộp giới hạn tiềm năng. Một bước xử lý hậu kỳ gọi là Non-Maximum Suppression (NMS) được yêu cầu để lọc chúng thành các detect cuối cùng. Bước này thường chậm và khó tăng tốc trên các phần cứng như FPGA hoặc NPU.
YOLO26 là end-to-end nguyên bản. Nó sử dụng chiến lược gán nhãn kép trong quá trình huấn luyện, buộc mô hình phải dự đoán một hộp chất lượng cao duy nhất cho mỗi vật thể. Điều này loại bỏ hoàn toàn bước NMS trong quá trình suy luận.
- Lợi ích: Độ trễ thấp hơn và pipeline triển khai đơn giản hơn (không cần triển khai NMS trong C++ hoặc CUDA cho các xuất tùy chỉnh).
- Kết quả: Suy luận CPU nhanh hơn tới 43% so với các thế hệ trước dựa vào xử lý hậu kỳ nặng nề.
2. Hàm mất mát: Loại bỏ DFL & ProgLoss
YOLOv5 (và YOLOv8 sau này) đã sử dụng Distribution Focal Loss (DFL) để tinh chỉnh ranh giới hộp. Mặc dù hiệu quả, DFL làm tăng chi phí tính toán và độ phức tạp cho quá trình xuất.
YOLO26 loại bỏ DFL, quay trở lại một đầu hồi quy đơn giản hóa dễ lượng tử hóa hơn cho triển khai INT8. Để bù đắp cho bất kỳ tổn thất độ chính xác tiềm năng nào, YOLO26 giới thiệu ProgLoss (Cân bằng mất mát lũy tiến) và STAL (Gán nhãn nhận biết mục tiêu nhỏ).
- STAL: Đặc biệt nhắm mục tiêu vào vấn đề "vật thể nhỏ", nâng cao hiệu suất trên các mục tiêu ở xa hoặc rất nhỏ—một điểm yếu phổ biến trong các phiên bản YOLO trước đó, bao gồm cả v5.
- ProgLoss: Điều chỉnh động trọng số của các thành phần hàm mất mát khác nhau trong quá trình huấn luyện để ổn định hội tụ.
3. Bộ tối ưu hóa MuSGD
Tính ổn định của quá trình huấn luyện là trọng tâm chính của nhóm YOLO26. Trong khi YOLOv5 thường dựa vào các bộ tối ưu hóa SGD hoặc Adam tiêu chuẩn, YOLO26 tích hợp MuSGD, một bộ tối ưu hóa lai lấy cảm hứng từ Kimi K2 của Moonshot AI và các kỹ thuật huấn luyện Mô hình Ngôn ngữ Lớn (LLM).
- Đổi mới: Nó mang lại sự ổn định của tối ưu hóa Muon cho thị giác máy tính, cho phép tốc độ học cao hơn và hội tụ nhanh hơn mà không có nguy cơ tăng đột biến hàm mất mát.
Tính linh hoạt và hỗ trợ tác vụ
Cả hai mô hình đều được tích hợp vào hệ sinh thái Ultralytics, nghĩa là chúng hỗ trợ một loạt các tác vụ thị giác máy tính. Tuy nhiên, YOLO26 bao gồm các cải tiến kiến trúc dành riêng cho tác vụ mà YOLOv5 không có.
| Tính năng | YOLOv5 | YOLO26 |
|---|---|---|
| Phát Hiện Đối Tượng | ✅ Dựa trên Anchor tiêu chuẩn | ✅ NMS-Free, STAL cho các vật thể nhỏ |
| Phân đoạn | ✅ Được thêm vào trong v7.0 | ✅ Hàm mất mát ngữ nghĩa & Multi-scale Proto |
| Ước tính tư thế | ❌ (Có sẵn trong các bản fork) | ✅ RLE (Ước lượng Log-Likelihood dư) |
| OBB | ❌ (Có sẵn trong các bản fork) | ✅ Hàm mất mát góc để xoay chính xác |
| Phân loại (Classification) | ✅ Được hỗ trợ | ✅ Kiến trúc được tối ưu hóa |
Hỗ trợ của YOLO26 cho Ước lượng Log-Likelihood dư (RLE) trong ước tính tư thế cung cấp các điểm khóa chính xác hơn đáng kể để track tư thế người, làm cho nó vượt trội cho phân tích thể thao và các ứng dụng chăm sóc sức khỏe.
Huấn luyện và Sử dụng
Một trong những điểm mạnh của hệ sinh thái Ultralytics là API hợp nhất. Dù bạn đang sử dụng YOLOv5 (thông qua gói hiện đại) hay YOLO26, mã vẫn nhất quán và đơn giản.
Ví dụ mã Python
Đây là cách bạn có thể huấn luyện và suy luận với cả hai mô hình bằng cách sử dụng ultralytics gói. Lưu ý rằng đối với YOLOv5, gói hiện đại sử dụng yolov5u trọng số (được điều chỉnh không dùng anchor) theo mặc định để tương thích tốt hơn, nhưng sự so sánh vẫn đúng với kiến trúc.
from ultralytics import YOLO
# Load the models
model_v5 = YOLO("yolov5s.pt") # Legacy standard
model_26 = YOLO("yolo26n.pt") # New NMS-free standard
# Comparison: Inference on an image
# YOLO26 requires no NMS post-processing arguments in export/deployment
results_v5 = model_v5("https://ultralytics.com/images/bus.jpg")
results_26 = model_26("https://ultralytics.com/images/bus.jpg")
# Print results to see speed differences
print(f"YOLOv5 Speed: {results_v5[0].speed}")
print(f"YOLO26 Speed: {results_26[0].speed}")
# Train YOLO26 on custom data
# The MuSGD optimizer is handled automatically
results = model_26.train(data="coco8.yaml", epochs=100, imgsz=640)
Nền tảng Ultralytics (trước đây là HUB) đơn giản hóa điều này hơn nữa bằng cách cho phép bạn quản lý tập dữ liệu và huấn luyện cả hai mô hình trên đám mây mà không cần viết mã, mặc dù YOLO26 là lựa chọn mặc định được khuyến nghị cho các dự án mới được tạo trên nền tảng.
Triển khai và hệ sinh thái
YOLOv5 có một hệ sinh thái kế thừa khổng lồ. Có hàng ngàn hướng dẫn, kho lưu trữ của bên thứ ba và tích hợp phần cứng được viết riêng cho yolov5 định dạng. Nếu bạn đang làm việc với một pipeline phần cứng cũ, cứng nhắc mà yêu cầu nghiêm ngặt hình dạng tensor đầu ra chính xác của YOLOv5, nó vẫn là một lựa chọn khả thi.
Tuy nhiên, đối với triển khai hiện đại, YOLO26 cung cấp các tùy chọn xuất vượt trội.
- AI biên: Việc loại bỏ DFL và NMS giúp các mô hình YOLO26 dễ dàng chuyển đổi sang các định dạng như TensorRT và OpenVINO hơn đáng kể.
- Lượng tử hóa: YOLO26 được thiết kế thân thiện với lượng tử hóa, duy trì độ chính xác cao hơn khi chuyển đổi sang INT8 cho bộ xử lý di động.
Kết luận
Trong khi YOLOv5 vẫn là một mô hình huyền thoại đã dân chủ hóa detect vật thể, YOLO26 đại diện cho tương lai. Với thiết kế NMS-free từ đầu đến cuối, việc loại bỏ các hàm mất mát nặng nề và sự tích hợp các bộ tối ưu hóa lấy cảm hứng từ LLM như MuSGD, YOLO26 mang lại một hồ sơ hiệu suất mà YOLOv5 đơn giản là không thể sánh kịp.
Đối với các nhà phát triển bắt đầu dự án mới, YOLO26 là khuyến nghị rõ ràng. Nó mang lại độ chính xác cao hơn với độ trễ thấp hơn, giảm mức sử dụng bộ nhớ và đường dẫn triển khai đơn giản hơn.
Khám phá các Mô hình Khác
Đối với người dùng quan tâm đến các kiến trúc chuyên biệt, hãy cân nhắc khám phá YOLO11, tiền thân trực tiếp của YOLO26, vốn mang lại hiệu suất tổng quát xuất sắc, hoặc YOLO-World cho các tác vụ detect đối tượng với từ vựng mở, nơi bạn cần detect các đối tượng không có trong tập huấn luyện của mình.