YOLOv5 so với YOLOv9 So sánh kỹ thuật chuyên sâu
Lĩnh vực 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 vượt bậ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ư máy học. Hướng dẫn này cung cấp một so sánh kỹ thuật toàn diện giữa hai mô hình có ảnh hưởng lớn trong lĩnh vực này. YOLO Họ: YOLOv5 và YOLOv9 .
Cho dù bạn đang triển khai trên các thiết bị biên có tài nguyên hạn chế, nghiên cứu trích xuất đặc trưng độ chính xác cao hay xây dựng các quy trình phát hiện đối tượng phức tạp, việc hiểu rõ các sắc thái kiến trúc, số liệu hiệu suất và sự khác biệt về hệ sinh thái của các mô hình này là rất quan trọng.
Tổng quan về mô hình
Trước khi đi sâu vào các so sánh kiến trúc, sẽ hữu ích nếu hiểu rõ nguồn gốc và mục tiêu chính của từng mô hình.
Ultralytics YOLOv5
Được phát triển bởi Glenn Jocher và được Ultralytics phát hành vào ngày 26 tháng 6 năm 2020, YOLOv5 đã đánh dấu một sự thay đổi 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. Bằng cách hoàn toàn áp dụng 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 đây bằng trải nghiệm người dùng trực quan, ưu tiên Python.
- Tác giả: Glenn Jocher
- Tổ chức:Ultralytics
- Ngày: 2020-06-26
- GitHub:Kho lưu trữ YOLOv5
- Tài liệu:Tổng quan nền tảng YOLOv5
YOLOv5 Nó nổi tiếng về tính dễ sử dụng và hiệu suất ổn định trên nhiều môi trường phần cứng khác nhau. Nó không chỉ hỗ trợ phát hiện mà còn cả phân loại hình ảnh và phân đoạn đối tượng .
YOLOv9
Bài viết được giới thiệu bởi Chien-Yao Wang và Hong-Yuan Mark Liao đến từ Viện Khoa học Thông tin thuộc Viện Hàn lâm Khoa học Đà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 đề tắc nghẽn thông tin trong mạng nơ-ron sâu.
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức: Viện Khoa học Thông tin, Academia Sinica, Đài Loan
- Ngày: 2024-02-21
- Arxiv:2402.13616
- GitHub:Kho lưu trữ YOLOv9
- Tài liệu:Tài liệu YOLOv9
Cốt lõi của YOLOv9 Mô hình này dựa trên hai cải tiến lý thuyết quan trọng: Thông tin Gradient có thể lập trình (Programmable Gradient Information - PGI) và Mạng tổng hợp lớp hiệu quả tổng quát (Generalized Efficient Layer Aggregation Network - GELAN). Các khái niệm này giúp mô hình giữ lại các đặc điểm không gian quan trọng xuyên suốt các lớp mạng sâu.
Đảm bảo khả năng tương thích trong tương lai cho các triển khai của bạn
Trong khi YOLOv5 Và YOLOv9 Với hiệu năng mạnh mẽ, YOLO26 mới ra mắt thể hiện sự cân bằng tối ưu giữa tốc độ và độ chính xác. Sở hữu khả năng vận hành vượt trội từ đầu đến cuối... NMS - Thiết kế miễn phí và nhanh hơn tới 43% CPU Xét về khả năng suy luận, YOLO26 được đánh giá cao cho điện toán biên hiện đại và các triển khai sản xuất.
Sự khác biệt về kiến trúc và kỹ thuật
Hiểu rõ những gì tạo nên sức mạnh bên trong các mô hình thị giác này là điều vô cùng quan trọng để tối ưu hóa chiến lược triển khai mô hình .
Trích xuất đặc trưng và lưu giữ thông tin
YOLOv5 Nó sử dụng kiến trúc mạng Cross Stage Partial Network (CSPNet), giúp giảm thiểu đáng kể chi phí tính toán trong khi vẫn 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 hóa cao cho các hoạt động GPU 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 phương án Transformer nặng nề khác.
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 của CSPNet. Kết hợp với PGI—một nhánh phụ có thể đảo ngược— YOLOv9 Điều này đảm bảo các lớp 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 độ chính xác cao, đặc biệt là trên các vật thể nhỏ hơn, mặc dù việc phân nhánh phụ phức tạp đôi khi có thể làm phức tạp các quy trình xuất sang phần cứng biên có hạn chế nghiêm ngặt.
Yêu cầu bộ nhớ và hiệu quả huấn luyện
Khi nói đến hiệu quả đào tạo, YOLOv5 vẫn vô cùng mạnh mẽ. Hệ sinh thái Ultralytics được duy trì tốt đảm bảo điều đó. YOLOv5 các mẫu tiêu thụ ít hơn đáng kể CUDA bộ nhớ, cho phép các nhà nghiên cứu tối đa hóa kích thước lô trên GPU dành cho người tiêu dùng. Trong khi đó, YOLOv9 Mặc dù đạt được hiệu quả tham số xuất sắc (độ chính xác cao so với kích thước), 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 khung tối ưu hóa. May mắn thay, việc tích hợp YOLOv9 vào Ultralytics API giúp nó tiến gần hơn đến sự tương đồng với YOLOv5 Quản lý tài nguyên được tối ưu hóa.
Hiệu suất và số liệu
Để đánh giá khách quan các kiến trúc này, chúng tôi so sánh hiệu năng của chúng trên các tập dữ liệu tiêu chuẩn như... COCO Dưới đây là bảng phân tích chi tiết các chỉ số như sau: mAP (Độ chính xác trung bình), tốc độ suy luận và số lượng tham số.
| 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 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
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 của nó. Tuy nhiên, YOLOv5n duy trì độ trễ TensorRT cực thấp là 1.12ms, làm nổi bật sức mạnh bền bỉ của nó cho các ứng dụng điện toán biên tốc độ cao, cục bộ.
Các phương pháp huấn luyện và Dễ sử dụng
Ưu điểm thực sự của việc ứng dụng thị giác máy tính hiện nay nằm ở tính dễ tiếp cận của bộ công cụ.
Lợi thế của Ultralytics
Trong khi các kho lưu trữ nghiên cứu gốc cho các mô hình như YOLOv9 Vì chúng là những thành phần cơ bản, nên chúng thường đi kèm với ma trận phụ thuộc phức tạp và các đoạn mã mẫu rườm rà. API Python Ultralytics hoàn toàn loại bỏ sự phức tạp này. Với Ultralytics Trong hệ sinh thái này, bạn có thể đào tạo, đánh giá và xuất cả hai. YOLOv5 Và YOLOv9 Với cú pháp thống nhất, giống hệt nhau.
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")
Cách tiếp cận API đơn này mang lại tính linh hoạt vượt trội, hỗ trợ không chỉ phát hiện đối tượng mà còn ước lượng tư thế và hộp giới hạn định hướng (OBB) tùy thuộc vào mô hình được chọn. Hơn nữa, khả năng tích hợp mạnh mẽ với các 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.
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 ràng buộc về phần cứng và độ chính xác yêu cầu bởi miền ứng dụng của bạn.
Khi nào nên chọn YOLOv5
YOLOv5 Đây là một cựu chiến binh dày dạn kinh nghiệm, tỏa sáng 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 xuất khẩu cực cao.
- Triển khai di động: Việc xuất YOLOv5 sang TFLite hoặc CoreML để suy luận trên thiết bị trên các điện thoại thông minh cũ hơn là cực kỳ liền mạch.
- Phần cứng biên kế thừa: Đối với các thiết bị như Raspberry Pi hoặc NVIDIA Jetson Nanos thế hệ đầu, các phép tích chập đơn giản của YOLOv5 đảm bảo tốc độ khung hình nhất quán cho các ứng dụng như quản lý bãi đỗ xe thông minh.
- Tạo mẫu nhanh: Sự sẵn có rộng rãi của các hướng dẫn cộng đồng, trọng số tiền huấn luyện tùy chỉnh và khả năng tương thích với bộ dữ liệu lớn biến nó thành cách nhanh nhất để xác thực một bằng chứng khái niệm.
Khi nào nên chọn YOLOv9
YOLOv9 Phương pháp này lý tưởng cho những trường hợp cần nắm bắt các chi tiết phức tạp và giảm thiểu sai sót, ngay cả khi nó đòi hỏi chi phí tính toán cao hơn một chút.
- Hình ảnh trên không và vệ tinh: Khung PGI rất thành thạo trong việc duy trì độ trung thực của các vật thể nhỏ, làm cho YOLOv9 trở nê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 các bất thường hoặc tổn thương 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ề khả năng thu hồi (recall).
- Phân tích bán lẻ cao cấp: Việc theo dõi các sản phẩm chồng chéo trên các kệ dày đặc được hưởng lợi đáng kể từ khả năng giữ lại đặc trưng vượt trội của YOLOv9.
Mở rộng tầm nhìn của bạn
Trong khi so sánh YOLOv5 Và YOLOv9 Bài viết này cung cấp cái nhìn rõ ràng về sự phát triển của các kiến trúc từ năm 2020 đến năm 2024, cho thấy 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 đang tìm kiếm hiệu năng tối ưu nhất, việc khám phá các mô hình YOLO26 mới nhất rất được khuyến khích. Bằng cách thay thế phương pháp loại bỏ cực đại không tương thích (Non-Maximum Suppression) truyền thống bằng thiết kế NMS -Free từ đầu đến cuối và sử dụng 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 tính năng loại bỏ DFL (Distribution Focal Loss - loại bỏ tổn hao tiêu điểm phân tán để đơn giản hóa việc xuất dữ liệu và cải thiện khả năng tương thích với 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ý 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 được cải tiến với những cải thiện đáng kể trong nhận dạng vật thể 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 tiên tiến khác như RT-DETR hoặc YOLO11 có khả năng cao. Sử dụng kiến trúc thống nhất Ultralytics Khung làm việc này đảm bảo rằng bất kể bạn chọn mô hình nào, quy trình phát triển của bạn vẫn luôn gọn gàng, hiệu quả và sẵn sàng mở rộng.