YOLOv6 -3.0 so với YOLOv9 : Tốc độ công nghiệp kết hợp với hiệu quả tiên tiến
Việc lựa chọn mô hình phát hiện đối tượng tối ưu là một quyết định then chốt trong quá trình phát triển thị giác máy tính , đòi hỏi sự cân bằng chiến lược giữa độ chính xác, tốc độ suy luận và hiệu quả tính toán. Bài so sánh này đi sâu vào các sắc thái kỹ thuật của YOLOv6 -3.0, một mô hình được Meituan thiết kế cho năng suất công nghiệp, và YOLOv9 , một kiến trúc tiên tiến giúp định nghĩa lại hiệu quả thông qua việc bảo quản thông tin.
YOLOv6 -3.0: Tối ưu hóa cho các ứng dụng công nghiệp
YOLOv6 -3.0 tập trung nhiều vào các tình huống triển khai thực tế trong đó độ trễ của phần cứng là điểm nghẽn chính.
- Tác giả: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, và Xiangxiang Chu
- Tổ chức: Meituan
- Ngày: 2023-01-13
- Arxiv: https://arxiv.org/abs/2301.05586
- GitHub: https://github.com/meituan/ YOLOv6
- Tài liệu: https://docs. ultralytics .com/models/yolov6/
Kiến trúc và Triết lý Thiết kế
YOLOv6 -3.0 được thiết kế như một Mạng Nơ-ron Tích chập (CNN) nhận biết phần cứng. Kiến trúc này sử dụng xương sống tham số hóa hiệu quả và các khối lai (RepBi-PAN) để tối đa hóa thông lượng trên GPU. Bằng cách điều chỉnh cấu trúc mô hình theo các đặc điểm phần cứng cụ thể, YOLOv6 nhằm mục đích mang lại tốc độ suy luận cao mà không ảnh hưởng nghiêm trọng đến độ chính xác. Nó hoạt động như một bộ phát hiện một giai đoạn được tối ưu hóa cho tự động hóa và giám sát công nghiệp, nơi mà việc xử lý theo thời gian thực là không thể thương lượng.
Điểm mạnh và hạn chế
Điểm mạnh:
- Tốc độ suy luận: Mô hình này hoạt động tốt trong môi trường có độ trễ thấp, đặc biệt là trên NVIDIA GPU T4 phù hợp với các dây chuyền sản xuất tốc độ cao.
- Tối ưu hóa phần cứng: Thiết kế "thân thiện với phần cứng" đảm bảo rằng mô hình sử dụng băng thông bộ nhớ và đơn vị tính toán một cách hiệu quả trong quá trình triển khai.
Điểm yếu:
- Biểu diễn tính năng: Thiếu các kỹ thuật bảo tồn thông tin gradient tiên tiến được tìm thấy trong các mô hình mới hơn như YOLOv9 , dẫn đến độ chính xác giảm mạnh hơn khi kích thước mô hình giảm.
- Hỗ trợ hệ sinh thái: Mặc dù hiệu quả, hệ sinh thái xung quanh dành cho các công cụ, hỗ trợ cộng đồng và tích hợp dễ dàng lại kém rộng rãi hơn so với Ultralytics khung.
- Tính linh hoạt hạn chế: Chủ yếu tập trung vào phát hiện hộp giới hạn, với ít hỗ trợ gốc cho các tác vụ phức tạp như phân đoạn hoặc ước tính tư thế so với tính linh hoạt Ultralytics các mô hình.
YOLOv9 : Xác định lại độ chính xác và luồng thông tin
YOLOv9 giới thiệu các khái niệm kiến trúc mới giải quyết vấn đề cơ bản về mất thông tin trong mạng sâu, đạt được các chỉ số hiệu suất vượt trội.
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức: Viện Khoa học Thông tin, Viện Hàn lâm Khoa học Trung Quốc, Đài Loan
- Ngày: 2024-02-21
- Arxiv: https://arxiv.org/abs/2402.13616
- GitHub: https://github.com/WongKinYiu/yolov9
- Tài liệu: https://docs. ultralytics .com/models/yolov9/
Kiến trúc: PGI và GELAN
YOLOv9 tạo nên sự khác biệt với hai cải tiến đột phá: 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) .
- PGI giải quyết vấn đề tắc nghẽn thông tin vốn có trong mạng nơ-ron sâu. Bằng cách duy trì dữ liệu gradient quan trọng trên các lớp, PGI đảm bảo mô hình học được các đặc điểm đáng tin cậy hơn, dẫn đến độ chính xác cao hơn.
- GELAN tối ưu hóa việc sử dụng tham số, cho phép mô hình đạt được độ chính xác cao hơn với ít tham số và chi phí tính toán hơn so với kiến trúc truyền thống.
Tiêu điểm đổi mới: Thông tin Gradient có thể lập trình (PGI)
Các mạng sâu thường mất thông tin khi dữ liệu đi qua các lớp liên tiếp, một hiện tượng được gọi là nút thắt thông tin. YOLOv9 PGI hoạt động như một cơ chế giám sát bổ trợ, đảm bảo dữ liệu thiết yếu cho việc học các đối tượng mục tiêu được bảo toàn trên toàn bộ chiều sâu của mạng. Điều này mang lại độ hội tụ và độ chính xác tốt hơn đáng kể, đặc biệt là đối với các đối tượng khó xác định. detect các vật thể.
Ưu điểm của Ultralytics Hệ sinh thái
Tích hợp YOLOv9 vào Ultralytics hệ sinh thái cung cấp những lợi thế riêng biệt cho các nhà phát triển:
- Dễ sử dụng: API Python và CLI thống nhất giúp đơn giản hóa việc đào tạo, xác thực và triển khai.
- Cân bằng hiệu suất: YOLOv9 đạt được mAP tiên tiến trong khi vẫn duy trì tốc độ suy luận cạnh tranh, mang lại sự cân bằng tuyệt vời cho nhiều ứng dụng khác nhau.
- Hiệu quả bộ nhớ: Ultralytics việc triển khai được tối ưu hóa để giảm thiểu dung lượng bộ nhớ trong quá trình đào tạo, trái ngược với yêu cầu VRAM cao của một số mô hình dựa trên máy biến áp.
- Tính linh hoạt: Ngoài khả năng phát hiện, tính linh hoạt của kiến trúc trong Ultralytics Khung hỗ trợ mở rộng sang các nhiệm vụ khác, được hỗ trợ bởi cộng đồng mạnh mẽ và các bản cập nhật thường xuyên.
Phân tích hiệu suất so sánh
Dữ liệu hiệu suất nêu bật sự khác biệt rõ ràng: YOLOv6 -3.0 tối ưu hóa tốc độ thô trên phần cứng cụ thể, trong khi YOLOv9 chiếm ưu thế về hiệu quả (độ chính xác trên mỗi tham số).
Ví dụ, YOLOv9c đạt được mAP 53,0% chỉ với 25,3 triệu tham số , vượt trội hơn YOLOv6 -3,0l (52,8% mAP ) đòi hỏi nhiều hơn gấp đôi các tham số (59,6M) và FLOP cao hơn đáng kể. Điều này cho thấy rằng YOLOv9 Những cải tiến về kiến trúc (GELAN và PGI) cho phép "học nhiều hơn với ít hơn", khiến nó trở thành lựa chọn hiệu quả cao cho các môi trường hạn chế về tài nguyên nhưng vẫn đòi hỏi độ chính xác cao.
Ngược lại, YOLOv6 -3.0n cung cấp độ trễ cực thấp (1,17 ms), giúp khả thi cho suy luận thời gian thực cực nhanh khi độ chính xác giảm (37,5% mAP ) là chấp nhận được.
| Mô hình | Kích thước (pixels) | mAP giá trị 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | Tham số (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6 -3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6 -3.0 giây | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6 -3,0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6 -3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| 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 |
Quy trình đào tạo và triển khai
Trải nghiệm của nhà phát triển có sự khác biệt đáng kể giữa hai mô hình. YOLOv6 -3.0 thường dựa trên quy trình làm việc cụ thể của kho lưu trữ, bao gồm các tập lệnh shell và tệp cấu hình thủ công. Mặc dù mạnh mẽ, nhưng điều này có thể gây khó khăn cho người mới bắt đầu.
Ngược lại, YOLOv9 hưởng lợi từ quy trình làm việc hợp lý Ultralytics . Việc đào tạo một mô hình tiên tiến chỉ cần rất ít mã, và hệ sinh thái này hỗ trợ xuất dữ liệu liền mạch sang các định dạng như ONNX , TensorRT và CoreML để có khả năng tương thích triển khai rộng rãi.
Ví dụ: Đào tạo YOLOv9 với Ultralytics
Các Ultralytics Python Giao diện cho phép bắt đầu chạy đào tạo chỉ với một vài dòng mã, xử lý việc tăng cường dữ liệu, ghi nhật ký và đánh giá tự động.
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Tính linh hoạt triển khai
Ultralytics các mô hình, bao gồm YOLOv9 , hỗ trợ xuất dữ liệu chỉ bằng một cú nhấp chuột sang nhiều định dạng khác nhau phù hợp với AI biên và triển khai đám mây. Tính linh hoạt này giúp đơn giản hóa quá trình chuyển đổi từ nghiên cứu sang sản xuất.
Các trường hợp sử dụng lý tưởng
YOLOv6 -3.0
- Dây chuyền lắp ráp tốc độ cao: Hệ thống kiểm soát chất lượng trong đó tốc độ băng tải yêu cầu độ trễ dưới 2ms.
- Phần cứng chuyên dụng: Các kịch bản chạy trên phần cứng cụ thể NVIDIA GPU tận dụng tối đa kiến trúc nhận biết phần cứng.
YOLOv9
- Hệ thống tự hành: Xe tự lái và robot đòi hỏi độ chính xác cao để di chuyển an toàn trong môi trường phức tạp.
- Chụp ảnh y tế: Các ứng dụng như phát hiện khối u khi thiếu một đặc điểm nhỏ (kết quả âm tính giả) là không thể chấp nhận được.
- CV mục đích chung: Các nhà phát triển đang tìm kiếm một mô hình mạnh mẽ, dễ sử dụng với tài liệu hướng dẫn tuyệt vời và sự hỗ trợ của cộng đồng cho nhiều nhiệm vụ khác nhau.
Kết luận
Trong khi YOLOv6 -3.0 vẫn là công cụ mạnh mẽ cho các ứng dụng công nghiệp chuyên biệt ưu tiên thông lượng thô trên phần cứng cụ thể, YOLOv9 nổi bật là lựa chọn vượt trội cho phần lớn các dự án thị giác máy tính hiện đại.
YOLOv9 Kiến trúc PGI và GELAN cải tiến của mang lại sự cân bằng tốt hơn giữa độ chính xác và hiệu quả, thường vượt trội hơn YOLOv6 trong các số liệu hiệu suất theo từng tham số. Hơn nữa, việc tích hợp với hệ sinh thái Ultralytics đảm bảo các nhà phát triển được hưởng lợi từ quy trình làm việc hợp lý, bảo trì chủ động và bộ công cụ giúp đẩy nhanh quá trình từ dữ liệu đến triển khai. Dành cho những ai đang tìm kiếm một mô hình linh hoạt, hiệu suất cao và sẵn sàng cho tương lai, YOLOv9 là con đường được khuyến nghị tiến về phía trước.
Khám phá các Mô hình Khác
Nếu bạn đang khám phá các tùy chọn hiện đại, hãy xem xét các mô hình mạnh mẽ khác trong Ultralytics thư viện:
- YOLO11 : Sự phát triển mới nhất trong YOLO Dòng sản phẩm này cung cấp hiệu suất tiên tiến cho việc phát hiện, phân đoạn và ước tính tư thế.
- YOLOv8 : Một mẫu máy rất phổ biến và đa năng, được biết đến với sự cân bằng giữa tốc độ và độ chính xác trong nhiều tác vụ.
- RT-DETR : Một máy dò dựa trên máy biến áp có độ chính xác vượt trội mà không cần phải loại bỏ tín hiệu không tối đa ( NMS ).