YOLO Vision 2026:

YOLOv5 so với YOLOv9#

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

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

Tổng quan về mô hình#

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

Ultralytics YOLOv5#

Được phát triển bởi Glenn Jocher và phát hành bởi Ultralytics vào ngày 26 tháng 6 năm 2020, YOLOv5 đánh dấu một bước ngoặt về mô hình trong cách các nhà phát triển tương tác với các mô hình thị giác máy tính. Bằng cách áp dụng triệt để framework PyTorch, YOLOv5 đã thay thế các bước biên dịch phức tạp của các mô hình dựa trên Darknet trước đó bằng trải nghiệm người dùng trực quan, lấy Python làm trung tâm.

YOLOv5 nổi tiếng với Ease of Use (Sự dễ sử dụng) và hiệu năng ổn định trên các môi trường phần cứng đa dạng. Nó hỗ trợ không chỉ phát hiện đối tượng mà còn cả image classificationinstance segmentation.

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

YOLOv9#

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

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

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

Đảm bảo tính tương lai cho việc triển khai của bạn

Mặc dù YOLOv5 và YOLOv9 đều rất mạnh mẽ, YOLO26 mới được phát hành lại đại diện cho sự cân bằng tối ưu giữa tốc độ và độ chính xác. Với thiết kế đầu cuối không cần NMS và tốc độ suy luận CPU nhanh hơn tới 43%, YOLO26 rất được khuyến khích sử dụng cho các ứng dụng điện toán biên hiện đại và triển khai sản xuất.

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

Hiểu rõ những gì hỗ trợ bên trong các mô hình thị giác này là điều cốt yếu để tối ưu hóa các chiến lược model deployment.

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

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

YOLOv9 giới thiệu GELAN, một kiến trúc tổng quát mở rộng các nguyên lý của CSPNet. Kết hợp với PGI—một nhánh có thể đảo ngược phụ trợ—YOLOv9 đảm bảo rằng các tầng sâu không bị 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. Điều này cho phép YOLOv9 đạt được accuracy cao, đặc biệt là trên các đối tượng nhỏ, mặc dù việc phân nhánh phụ trợ phức tạp đôi khi có thể làm phức tạp các pipeline xuất mô hình sang phần cứng biên bị giới hạn sâu.

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

Khi nói đến hiệu quả huấn luyện, YOLOv5 vẫn cực kỳ mạnh mẽ. Ultralytics ecosystem được bảo trì tốt đảm bảo rằng các mô hình YOLOv5 tiêu thụ bộ nhớ CUDA ít hơn đáng kể, cho phép các nhà nghiên cứu tối đa hóa batch sizes trên các GPU cấp độ người dùng phổ thông. Mặc dù YOLOv9 đạt hiệu quả tham số tuyệt vời (độ chính xác cao so với kích thước của nó), quá trình huấn luyện của nó có thể tốn nhiều tài nguyên hơn nếu không sử dụng các framework được tối ưu hóa. May mắn thay, việc tích hợp YOLOv9 vào API Ultralytics giúp nó tiến gần hơn đến mức tương đương với việc quản lý tài nguyên hợp lý của YOLOv5.

Hiệu suất và chỉ số#

Để đánh giá khách quan các kiến trúc này, chúng tôi so sánh hiệu suất của chúng trên các tập dữ liệu tiêu chuẩn như COCO. Dưới đây là phân tích chi tiết các chỉ số như mAP (Mean Average Precision), tốc độ suy luận và số lượng tham số.

Mô hìnhkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
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
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Như bảng đã cho thấy, YOLOv9 đạt độ chính xác thô cao hơn ở các bậc tương đương, phản ánh kiến trúc mới hơn của nó. Tuy nhiên, YOLOv5n duy trì độ trễ TensorRT cực kỳ thấp ở mức 1.12ms, làm nổi bật sức mạnh lâu bền của nó đối với các ứng dụng edge computing cục bộ, tốc độ cao.

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

Lợi ích thực sự của việc tận dụng computer vision ngày nay nằm ở tính dễ tiếp cận của chuỗi công cụ (toolchain).

Lợi thế từ Ultralytics#

Mặc dù các kho lưu trữ nghiên cứu gốc cho các mô hình như YOLOv9 mang tính nền tảng, chúng thường đi kèm với các ma trận phụ thuộc phức tạp và các đoạn mã soạn sẵn (boilerplate scripts). Ultralytics Python API hoàn toàn trừu tượng hóa độ phức tạp này. Với hệ sinh thái Ultralytics, bạn có thể huấn luyện, đánh giá và xuất cả YOLOv5 và YOLOv9 với một cú pháp đồng nhất, duy nhất.

from ultralytics import YOLO

# Load a pre-trained YOLOv5 model for fast deployment
model_v5 = YOLO("yolov5s.pt")

# Or leverage a YOLOv9 model for high-fidelity accuracy
model_v9 = YOLO("yolov9c.pt")

# Train seamlessly on custom data with automatic MLflow logging
results = model_v9.train(data="coco8.yaml", epochs=50, imgsz=640)

# Export the trained model to ONNX
model_v9.export(format="onnx")

Phương pháp tiếp cận API đơn này mang lại tính Versatility (Đa năng) cực lớn, hỗ trợ không chỉ phát hiện đối tượng mà còn cả pose estimationoriented bounding boxes (OBB) tùy thuộc vào mô hình được chọn. Hơn nữa, các tích hợp mạnh mẽ với các công cụ như Comet MLWeights & Biases được tích hợp trực tiếp vào vòng lặp huấn luyện.

Các 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ụ thuộc phần lớn vào các hạn chế của phần cứng và độ chính xác cần thiết bởi lĩnh vực ứng dụng của bạn.

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

YOLOv5 là một cựu binh đã được kiểm chứng qua thời gian, tỏa sáng trong các triển khai ưu tiên sự ổn định, dấu chân bộ nhớ thấp và khả năng tương thích xuất mô hình cực cao.

  • Mobile Deployments: Việc xuất YOLOv5 sang TFLite hoặc CoreML để suy luận trên thiết bị đối với các dòng điện thoại thông minh cũ hơn diễn ra vô cùng liền mạch.
  • Legacy Edge Hardware: Đối 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 (convolutions) đơn giản của YOLOv5 đảm bảo tốc độ khung hình ổn định cho các ứng dụng như smart parking management.
  • Rapid Prototyping: Sự sẵn có rộng rãi của các hướng dẫn từ cộng đồng, pre-trained weights tùy chỉnh và khả năng tương thích tập dữ liệu lớn biến nó thành cách nhanh nhất để xác thực một bản chứng minh khái niệm (proof-of-concept).

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

YOLOv9 là lý tưởng cho các kịch bản mà việc nắm bắt các chi tiết phức tạp và giảm thiểu âm tính giả là hoàn toàn quan trọng, ngay cả khi nó đòi hỏi thêm một chút chi phí tính toán.

  • Aerial and Satellite Imagery: Framework PGI rất giỏi trong việc duy trì độ trung thực của các đối tượng nhỏ, khiến YOLOv9 trở nên xuất sắc cho các ứng dụng agricultural monitoring dựa trên drone.
  • Chẩn đoán hình ảnh y tế: Khi phát hiện các điểm bất thường hoặc tổn thương nhỏ trong các bản 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 trong việc thu hồi (recall).
  • Phân tích bán lẻ cao cấp: Theo dõi các sản phẩm chồng chéo trên các 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 tầm nhìn của bạn#

Mặc dù việc so sánh YOLOv5 và YOLOv9 cung cấp cái nhìn rõ ràng về cách các kiến trúc đã tiến hóa từ năm 2020 đến năm 2024, lĩnh vực AI đang phát triển nhanh hơn bao giờ hết. Đối với các nhà phát triển tìm kiếm ranh giới tối thượng của hiệu năng, việc khám phá các YOLO26 models mới nhất được khuyến khích mạnh mẽ. Bằng cách thay thế Non-Maximum Suppression truyền thống bằng End-to-End NMS-Free Design (Thiết kế đầu cuối không cần NMS) nguyên bản và sử dụng MuSGD Optimizer (Trình tối ưu hóa 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 độ sản xuất. Với DFL Removal (Loại bỏ DFL - Distribution Focal Loss để đơn giản hóa việc xuất và cải thiện khả năng tương thích với các thiết bị biên/công suất thấp), YOLO26 đạt được tốc độ suy luận CPU nhanh hơn tới 43%, làm cho nó trở nên lý tưởng cho điện toán biên. Ngoài ra, ProgLoss + STAL cung cấp các hàm mất mát (loss functions) được cải thiện với những tiến bộ đáng chú ý trong việc nhận diện đối tượng nhỏ, rất quan trọng đối với IoT, robot và hình ảnh trên không.

Bạn cũng có thể quan tâm đến việc so sánh các kiến trúc này với các mô hình tối tân khác như RT-DETR hoặc YOLO11 vô cùng mạnh mẽ. Việc sử dụng framework Ultralytics thống nhất đảm bảo rằng bất kể bạn chọn mô hình nào, pipeline phát triển của bạn vẫn duy trì được sự gọn gàng, hiệu quả và sẵn sàng mở rộng quy mô.

Người đóng góp

Bình luận