Ultralytics YOLO27:
Get Started

YOLOv5 so với YOLOv9#

Lĩnh vực thị giác máy tính và phát hiện đối tượng thời gian thực đã có những bước tiến đáng kể trong vài năm qua. Việc lựa chọn giữa các model đã được kiểm chứng qua thực tiễn và những kiến trúc nghiên cứu mới là một thách thức phổ biến đối với kỹ sư machine learning. Hướng dẫn này cung cấp so sánh kỹ thuật toàn diện giữa hai model có ảnh hưởng lớn trong họ YOLO: YOLOv5 và YOLOv9.

Dù bạn triển khai trên thiết bị edge bị giới hạn tài nguyên, nghiên cứu trích xuất đặc trưng có độ trung thực cao hay xây dựng pipeline phát hiện đối tượng phức tạp, việc hiểu rõ khác biệt về kiến trúc, chỉ số hiệu năng và hệ sinh thái của các model này là rất quan trọng.

Tổng quan về model#

Trước khi đi sâu vào so sánh kiến trúc, việc tìm hiểu nguồn gốc và mục tiêu chính của từng model sẽ rất hữu ích.

Ultralytics YOLOv5#

Được Glenn Jocher phát triển và Ultralytics phát hành ngày 26 tháng 6 năm 2020, YOLOv5 đánh dấu bước chuyển lớn trong cách nhà phát triển tương tác với model thị giác. Bằng cách áp dụng hoàn toàn framework PyTorch, YOLOv5 thay thế các bước biên dịch phức tạp của những model dựa trên Darknet đời trước bằng trải nghiệm dễ dùng, ưu tiên Python.

YOLOv5 nổi tiếng nhờ Dễ sử dụng và hiệu năng ổn định trên nhiều môi trường phần cứng. Model không chỉ hỗ trợ phát hiện mà còn hỗ trợ phân loại hình ảnh và phân đoạn instance.

YOLOv9#

Được giới thiệu bởi Chien-Yao Wang và Hong-Yuan Mark Liao thuộc Viện Khoa học Thông tin tại Academia Sinica, Đài Loan, YOLOv9 tập trung nhiều vào lý thuyết kiến trúc nhằm giảm thiểu các vấn đề nút thắt thông tin trong mạng neural sâu.

YOLOv9 dựa trên hai đổi mới lý thuyết chính: Thông tin Gradient có thể lập trình (PGI) và Mạng tổng hợp lớp hiệu quả tổng quát (GELAN). Các khái niệm này giúp model giữ lại những đặc trưng không gian quan trọng qua các lớp mạng sâu.

Tìm hiểu thêm về YOLOv9

Triển khai sẵn sàng cho tương lai

Dù YOLOv5 và YOLOv9 rất mạnh, YOLO26 mới ra mắt mang đến sự cân bằng tối ưu giữa tốc độ và độ chính xác. Với suy luận NMS-free đầu-cuối tùy chọn và tốc độ suy luận CPU nhanh hơn đến 43%, YOLO26 rất được khuyến nghị cho điện toán edge hiện đại và triển khai production.

Khác biệt về kiến trúc và kỹ thuật#

Hiểu rõ các yếu tố nền tảng của những model thị giác này là điều thiết yếu để tối ưu chiến lược triển khai model.

Trích xuất và lưu giữ đặc trưng#

YOLOv5 sử dụng backbone Cross Stage Partial Network (CSPNet), giúp giảm hiệu quả chi phí tính toán trong khi duy trì luồng gradient chính xác trong quá trình lan truyền ngược. Thiết kế này được tối ưu cao cho các phép toán GPU truyền thống và bảo đảm yêu cầu bộ nhớ khi huấn luyện thấp hơn so với các phương án Transformer nặng.

YOLOv9 giới thiệu GELAN, một kiến trúc tổng quát mở rộng các nguyên tắc CSPNet. Kết hợp với PGI—một nhánh phụ có thể đảo ngược—YOLOv9 bảo đảm các lớp sâu không làm mất dữ liệu ngữ nghĩa cần thiết cho các hàm mục tiêu chính xác. Nhờ đó, YOLOv9 đạt độ chính xác cao, đặc biệt với vật thể nhỏ, dù các nhánh phụ phức tạp đôi khi có thể khiến pipeline export lên phần cứng edge bị giới hạn nghiêm ngặt trở nên khó khăn hơn.

Yêu cầu bộ nhớ và hiệu quả huấn luyện#

Về hiệu quả huấn luyện, YOLOv5 vẫn rất mạnh mẽ. Hệ sinh thái Ultralytics được bảo trì tốt giúp model YOLOv5 tiêu thụ ít bộ nhớ CUDA hơn đáng kể, cho phép nhà nghiên cứu tối đa hóa batch size trên GPU phổ thông. YOLOv9 có hiệu quả sử dụng parameter rất tốt (độ chính xác cao so với kích thước), nhưng quá trình huấn luyện có thể tiêu tốn nhiều tài nguyên hơn nếu không sử dụng framework được tối ưu. May mắn là việc tích hợp YOLOv9 vào API Ultralytics giúp model đạt mức tương đương hơn với khả năng quản lý tài nguyên tinh gọn của YOLOv5.

Hiệu năng và các chỉ số#

Để đánh giá khách quan các kiến trúc này, chúng ta so sánh hiệu năng trên các dataset tiêu chuẩn như COCO. Dưới đây là phân tích chi tiết những chỉ số như mAP (độ chính xác trung bình trung bình), tốc độ suy luận và số lượng parameter.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
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
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.226.7
YOLOv9m64051.4-6.4320.176.8
YOLOv9c64053.0-7.1625.5102.8
YOLOv9e64055.6-16.7758.1192.5

Như bảng cho thấy, YOLOv9 đạt độ chính xác thô cao hơn ở các cấp tương đương, phản ánh kiến trúc mới hơn. Tuy nhiên, YOLOv5n duy trì độ trễ TensorRT cực thấp, ở mức 1,12 ms, cho thấy thế mạnh bền bỉ của model trong các ứng dụng điện toán edge cục bộ tốc độ cao.

Phương pháp huấn luyện và tính dễ sử dụng#

Ưu thế thực sự của việc ứng dụng thị giác máy tính ngày nay nằm ở khả năng tiếp cận của bộ công cụ.

Lợi thế của Ultralytics#

Dù các repository nghiên cứu ban đầu dành cho những model như YOLOv9 là nền tảng quan trọng, chúng thường đi kèm ma trận dependency phức tạp và các script khuôn mẫu. Ultralytics Python API hoàn toàn trừu tượng hóa sự phức tạp này. Với hệ sinh thái Ultralytics, bạn có thể huấn luyện, đánh giá và export cả YOLOv5 lẫn YOLOv9 bằng cùng một cú pháp thống nhất.

from ultralytics import YOLO

# Nạp model YOLOv5 đã huấn luyện trước để triển khai nhanh
model_v5 = YOLO("yolov5su.pt")  # YOLOv5u: weight YOLOv5 không anchor dành cho package ultralytics

# Hoặc sử dụng model YOLOv9 để đạt độ chính xác cao
model_v9 = YOLO("yolov9c.pt")

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

# Export model đã huấn luyện sang ONNX
model_v9.export(format="onnx")

Phương pháp sử dụng một API duy nhất này mang đến Tính linh hoạt vượt trội, hỗ trợ không chỉ phát hiện mà còn cả ước tính tư thế và hộp giới hạn xoay (OBB), tùy theo model được chọn. Ngoài ra, các tích hợp mạnh mẽ với những công cụ như Comet ML và Weights & Biases được tích hợp trực tiếp vào vòng lặp huấn luyện.

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

Việc lựa chọn giữa các kiến trúc này phần lớn phụ thuộc vào giới hạn phần cứng và độ chính xác mà lĩnh vực ứng dụng yêu cầu.

Khi nào nên chọn YOLOv5#

YOLOv5 là model đã được kiểm chứng qua thực tiễn, nổi bật trong các triển khai ưu tiên tính ổn định, dung lượng bộ nhớ thấp và khả năng tương thích export vượt trội.

  • Triển khai trên thiết bị di động: Export YOLOv5 sang LiteRT hoặc CoreML để suy luận ngay trên thiết bị ở các smartphone đời cũ rất đơn giản.
  • Phần cứng edge đời cũ: Với các thiết bị như Raspberry Pi hoặc NVIDIA Jetson Nano thế hệ đầu, các phép tích chập đơn giản của YOLOv5 bảo đảm tốc độ khung hình ổn định cho các ứng dụng như quản lý bãi đỗ xe thông minh.
  • Tạo mẫu nhanh: Nguồn tài liệu hướng dẫn cộng đồng phong phú, weight đã huấn luyện trước tùy chỉnh sẵn có rộng rãi và khả năng tương thích với nhiều dataset khiến đây là cách nhanh nhất để xác thực proof-of-concept.

Khi nào nên chọn YOLOv9#

YOLOv9 phù hợp với các tình huống đòi hỏi phải nắm bắt chi tiết phức tạp và giảm thiểu false negative, ngay cả khi cần thêm một chút tài nguyên tính toán.

  • Ảnh hàng không và vệ tinh: Framework PGI rất hiệu quả trong việc duy trì độ trung thực của vật thể nhỏ, khiến YOLOv9 trở thành lựa chọn xuất sắc cho giám sát nông nghiệp bằng drone.
  • Chẩn đoán hình ảnh y tế: Khi phát hiện bất thường hoặc tổn thương rất nhỏ trong ảnh quét độ phân giải cao, luồng gradient chính xác của GELAN mang lại lợi thế cần thiết về recall.
  • Phân tích bán lẻ cao cấp: Việc theo dõi các sản phẩm chồng lấp trên kệ hàng dày đặc được hưởng lợi đáng kể từ khả năng lưu giữ đặc trưng vượt trội của YOLOv9.

Mở rộng phạm vi khám phá#

Việc so sánh YOLOv5 và YOLOv9 cho thấy rõ sự phát triển của kiến trúc từ năm 2020 đến năm 2024, nhưng lĩnh vực AI đang tiến nhanh hơn bao giờ hết. Nhà phát triển muốn khai phá giới hạn hiệu năng mới nhất nên tìm hiểu các model YOLO26. Bằng cách cung cấp Thiết kế NMS-Free đầu-cuối (nms=False) như một lựa chọn thay thế cho Non-Maximum Suppression truyền thống và sử dụng Optimizer MuSGD tiên tiến, YOLO26 thu hẹp khoảng cách giữa độ chính xác cấp độ nghiên cứu và tốc độ cấp độ production. Với Loại bỏ DFL (loại bỏ Distribution Focal Loss để đơn giản hóa quá trình export và tăng khả năng tương thích với thiết bị edge/tiêu thụ điện năng thấp), YOLO26 đạt tốc độ suy luận CPU nhanh hơn đến 43%, rất phù hợp cho điện toán edge. Ngoài ra, ProgLoss + STAL cung cấp các hàm loss cải tiến, giúp nhận diện vật thể nhỏ tốt hơn đáng kể—điều thiết yếu với IoT, robot học và ảnh hàng không.

Bạn cũng có thể muốn so sánh các kiến trúc này với những model tiên tiến khác như RT-DETR hoặc YOLO11 có năng lực cao. Sử dụng framework Ultralytics thống nhất sẽ bảo đảm pipeline phát triển luôn gọn gàng, hiệu quả và sẵn sàng mở rộng, bất kể bạn chọn model nào.

Người đóng góp

Bình luận