YOLOv5 so với YOLOv8#
Khi xây dựng các ứng dụng thị giác máy tính có khả năng mở rộng và hiệu quả, việc chọn đúng kiến trúc là rất quan trọng. Hệ sinh thái Ultralytics không ngừng thúc đẩy giới hạn về tốc độ và độ chính xác, cung cấp cho nhà phát triển các công cụ mạnh mẽ để triển khai thực tế. Bài so sánh kỹ thuật này phân tích khác biệt giữa YOLOv5 và YOLOv8, xem xét kiến trúc, đánh đổi về hiệu năng và trường hợp sử dụng lý tưởng để giúp bạn đưa ra quyết định sáng suốt cho dự án AI tiếp theo.
Cả hai model đều là những cột mốc quan trọng trong lịch sử phát hiện đối tượng thời gian thực, đồng thời đều được hưởng lợi từ yêu cầu bộ nhớ được tối ưu cao và tính dễ sử dụng đặc trưng của hệ sinh thái Ultralytics.
YOLOv5: Tiêu chuẩn công nghiệp đáng tin cậy#
Ra mắt năm 2020, YOLOv5 nhanh chóng trở thành tiêu chuẩn công nghiệp cho tác vụ phát hiện đối tượng nhanh, dễ tiếp cận và đáng tin cậy. Bằng cách tận dụng triển khai PyTorch nguyên bản, model đã tinh giản vòng đời huấn luyện và triển khai cho các kỹ sư trên toàn cầu.
- 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
Điểm mạnh kiến trúc#
YOLOv5 hoạt động theo phương pháp phát hiện dựa trên anchor, sử dụng anchor box được xác định trước để dự đoán ranh giới đối tượng. Kiến trúc của model tích hợp backbone mạng Cross-Stage Partial (CSP), tối ưu luồng gradient và giảm dư thừa tính toán. Nhờ đó, model có dung lượng bộ nhớ rất nhẹ, giúp huấn luyện cực nhanh ngay cả trên GPU phổ thông.
Các trường hợp sử dụng phù hợp nhất#
YOLOv5 rất được khuyến nghị cho các dự án ưu tiên thông lượng tối đa và mức sử dụng tài nguyên tối thiểu. Model hoạt động xuất sắc trong môi trường AI edge, chẳng hạn như triển khai trên Raspberry Pi hoặc thiết bị di động. Độ trưởng thành của model đồng nghĩa với việc model đã được kiểm chứng kỹ lưỡng qua hàng nghìn triển khai thương mại, mang lại độ ổn định vượt trội cho quy trình phát hiện đối tượng truyền thống.
YOLOv8: Framework thị giác hợp nhất#
Ra mắt vào tháng 1 năm 2023, YOLOv8 đánh dấu bước chuyển đổi kiến trúc lớn, phát triển từ một bộ phát hiện đối tượng chuyên biệt thành framework thị giác đa tác vụ linh hoạt.
- Tác giả: Glenn Jocher, Ayush Chaurasia và Jing Qiu
- Tổ chức: Ultralytics
- Ngày: 2023-01-10
- GitHub: ultralytics/ultralytics
- Tài liệu: Tài liệu YOLOv8
Các cải tiến kiến trúc#
Khác với phiên bản tiền nhiệm, YOLOv8 giới thiệu head phát hiện không dùng anchor. Điều này loại bỏ nhu cầu tinh chỉnh thủ công cấu hình anchor dựa trên phân phối dataset, cải thiện khả năng tổng quát hóa trên nhiều dataset tùy chỉnh như dataset COCO phổ biến.
Kiến trúc này cũng nâng cấp backbone bằng module C2f (nút thắt Cross-Stage Partial với hai phép tích chập), thay thế module C3 cũ. Cải tiến này nâng cao khả năng biểu diễn đặc trưng mà không làm tăng đáng kể mức sử dụng bộ nhớ. Ngoài ra, việc triển khai head tách biệt—phân chia tác vụ phân loại và hồi quy—cải thiện đáng kể khả năng hội tụ trong quá trình huấn luyện model.
Tính linh hoạt và Python API#
YOLOv8 giới thiệu Python API ultralytics hiện đại, chuẩn hóa quy trình làm việc trên nhiều tác vụ thị giác máy tính. Dù thực hiện phân đoạn hình ảnh, phân loại hình ảnh hay ước tính tư thế, API thống nhất chỉ yêu cầu thay đổi nhỏ trong cấu hình.
from ultralytics import YOLO
# Tải model YOLOv8 đã được huấn luyện trước
model = YOLO("yolov8n.pt")
# Huấn luyện trên dataset tùy chỉnh với hiệu quả bộ nhớ tích hợp sẵn
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Chạy suy luận và dễ dàng phân tích kết quả
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()So sánh hiệu năng chi tiết#
Khi so sánh hai thế hệ, chúng ta nhận thấy sự đánh đổi quen thuộc: YOLOv8 đạt độ chính xác trung bình (mAP) cao hơn trên mọi phương diện, trong khi YOLOv5 vẫn có lợi thế về tốc độ suy luận thô và số lượng parameter ở các biến thể nhỏ nhất.
Dưới đây là so sánh chi tiết các chỉ số hiệu năng của chúng trên dataset COCO với kích thước ảnh 640 pixel.
| Model | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | - | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | - | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | - | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | - | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | - | 11.89 | 86.7 | 205.7 |
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.1 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
Dữ liệu cho thấy YOLOv8 cải thiện đáng kể độ chính xác. Chẳng hạn, YOLOv8s đạt 44,9 mAP so với 37,4 mAP của YOLOv5s, một bước tiến lớn giúp cải thiện đáng kể hiệu năng trong môi trường đông đúc hoặc khi nhận diện vật thể nhỏ. Tuy nhiên, trong môi trường bị giới hạn nghiêm ngặt, YOLOv5n vẫn rất hiệu quả, với số lượng parameter và FLOPs thấp nhất.
Cả hai model đều được tối ưu cao để sử dụng ít bộ nhớ CUDA hơn trong quá trình huấn luyện so với các kiến trúc nặng hơn như model Transformer. Nhờ đó, người dùng có thể sử dụng batch size lớn hơn trên GPU tiêu chuẩn, đẩy nhanh chu kỳ nghiên cứu.
Lợi thế hệ sinh thái#
Chọn YOLOv5 hoặc YOLOv8 giúp nhà phát triển tiếp cận Nền tảng Ultralytics được bảo trì tốt. Môi trường tích hợp này cung cấp các công cụ đơn giản để gán nhãn dataset, huấn luyện trên cloud và giám sát model, trong khi package ultralytics bổ sung tính năng tinh chỉnh hyperparameter tích hợp. Quá trình phát triển tích cực và sự hỗ trợ mạnh mẽ từ cộng đồng bảo đảm nhà phát triển có thể nhanh chóng xử lý sự cố và tích hợp với các công cụ bên ngoài như Weights & Biases và ClearML.
Trong khi các framework khác có thể có đường cong học tập dốc, Ultralytics ưu tiên trải nghiệm người dùng tinh gọn, bảo đảm sự cân bằng hợp lý giữa tốc độ và độ chính xác, phù hợp với nhiều tình huống triển khai thực tế.
Sau v8: Khám phá YOLO11 và YOLO26#
Dù YOLOv8 là một framework rất mạnh, lĩnh vực trí tuệ nhân tạo vẫn phát triển nhanh chóng. Nhà phát triển quan tâm đến hiệu năng tiên tiến cũng nên tìm hiểu YOLO11, được xây dựng dựa trên v8 với độ chính xác và tốc độ được cải thiện.
Đối với những ai muốn tiếp cận công nghệ thị giác máy tính tiên tiến nhất, chúng tôi đặc biệt khuyến nghị Ultralytics YOLO26. Ra mắt vào năm 2026, YOLO26 đánh dấu một bước tiến vượt bậc:
- Thiết kế đầu-cuối không cần NMS: Ban đầu được tiên phong trong các kiến trúc thử nghiệm, head one-to-one tùy chọn của YOLO26 (
nms=False) loại bỏ bước hậu xử lý Non-Maximum Suppression, giúp quy trình triển khai đơn giản và nhanh hơn đáng kể. - Optimizer MuSGD: Lấy cảm hứng từ những đổi mới trong huấn luyện LLM ở các model như Kimi K2, YOLO26 sử dụng optimizer lai để huấn luyện ổn định hơn và hội tụ nhanh hơn.
- Làm chủ điện toán biên: Với tốc độ suy luận trên CPU nhanh hơn đến 43% so với các thế hệ trước, đây là model tối ưu cho các thiết bị không có GPU chuyên dụng.
- Độ chính xác được cải thiện: Sử dụng các hàm loss ProgLoss + STAL mới, model cải thiện đáng kể khả năng nhận diện vật thể nhỏ, yếu tố quan trọng trong robotics và hình ảnh chụp từ drone trên không.
Dù duy trì hệ thống cũ bằng YOLOv5, mở rộng ứng dụng linh hoạt với YOLOv8 hay đổi mới bằng các khả năng tiên tiến nhất của YOLO26, bộ công cụ Ultralytics đều cung cấp đầy đủ công cụ cần thiết để thành công trong lĩnh vực AI thị giác hiện đại.