YOLOv7 so với YOLOv5 : So sánh kỹ thuật chi tiết
Việc lựa chọn kiến trúc phát hiện đối tượng phù hợp là một quyết định quan trọng, ảnh hưởng đến tốc độ, độ chính xác và khả năng triển khai các dự án thị giác máy tính của bạn. Trang này cung cấp so sánh kỹ thuật toàn diện giữa YOLOv7 và Ultralytics YOLOv5 , hai mô hình có ảnh hưởng lớn trong lĩnh vực này. YOLO dòng dõi. Chúng tôi nghiên cứu sâu về những đổi mới về kiến trúc, tiêu chuẩn hiệu suất và các trường hợp sử dụng lý tưởng để giúp bạn lựa chọn giải pháp phù hợp nhất cho ứng dụng của mình.
Trong khi YOLOv7 Với những tiến bộ đáng kể về mặt học thuật vào năm 2022, Ultralytics YOLOv5 vẫn là một thế lực thống trị trong ngành nhờ tính dễ sử dụng, độ bền và tính linh hoạt trong triển khai vượt trội. Đối với những ai đang tìm kiếm hiệu suất tối tân nhất, chúng tôi cũng khám phá cách các mô hình này mở đường cho Ultralytics YOLO11 tiên tiến.
So sánh các chỉ số hiệu suất
Bảng sau đây nêu bật sự đánh đổi về hiệu suất giữa hai kiến trúc. Trong khi YOLOv7 đẩy mạnh cho Độ chính xác trung bình cao hơn ( mAP ) , YOLOv5 mang lại những lợi thế rõ rệt về tốc độ suy luận và số lượng tham số thấp hơn cho các kích thước mô hình cụ thể.
| 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) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
YOLOv7 : Đẩy mạnh ranh giới của độ chính xác
Phát hành vào tháng 7 năm 2022, YOLOv7 được thiết kế để thiết lập một chuẩn mực mới cho các bộ phát hiện vật thể thời gian thực. Nó tập trung mạnh vào việc tối ưu hóa kiến trúc để cải thiện độ chính xác mà không làm tăng đáng kể chi phí suy luận.
Tác giả: Chien-Yao Wang, Alexey Bochkovskiy 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: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Tài liệu: https://docs. ultralytics .com/models/yolov7/
Kiến trúc và các cải tiến chính
YOLOv7 giới thiệu một số thay đổi kiến trúc phức tạp nhằm cải thiện khả năng học tính năng:
- E-ELAN (Mạng Tổng hợp Lớp Hiệu quả Mở rộng): Một cấu trúc xương sống tiên tiến giúp tăng cường khả năng học của mạng bằng cách kiểm soát các đường dẫn gradient ngắn nhất và dài nhất. Điều này cho phép mô hình học được nhiều tính năng đa dạng hơn.
- Tỷ lệ mô hình cho các mô hình dựa trên sự nối kết: Không giống như tỷ lệ tiêu chuẩn, YOLOv7 mở rộng chiều sâu và chiều rộng đồng thời cho các kiến trúc dựa trên sự nối kết, đảm bảo sử dụng tài nguyên tối ưu.
- Gói quà tặng miễn phí có thể huấn luyện: Bao gồm tích chập được tham số hóa lại theo kế hoạch (RepConv) và huấn luyện đầu phụ trợ. Các đầu phụ trợ tạo ra các nhãn phân cấp từ thô đến tinh, giúp định hướng quá trình học trong quá trình huấn luyện nhưng sẽ bị loại bỏ trong quá trình suy luận để duy trì tốc độ.
'Túi quà tặng miễn phí' là gì?
"Túi quà tặng miễn phí" đề cập đến tập hợp các phương pháp đào tạo và kỹ thuật tăng cường dữ liệu giúp cải thiện độ chính xác của mô hình phát hiện đối tượng mà không làm tăng chi phí suy luận. Trong YOLOv7 , điều này bao gồm các chiến lược phức tạp như Gán nhãn hướng dẫn từ thô đến tinh.
Các trường hợp sử dụng lý tưởng cho YOLOv7
Do tập trung vào độ chính xác cao, YOLOv7 đặc biệt phù hợp cho:
- Nghiên cứu học thuật: So sánh với các mô hình SOTA trong đó mọi phần của mAP vấn đề quan trọng.
- Triển khai GPU cao cấp: Các ứng dụng có phần cứng mạnh mẽ (như NVIDIA A100s) có thể xử lý các kích thước mô hình lớn hơn và yêu cầu về bộ nhớ.
- Phân tích tĩnh: Các tình huống mà độ trễ thời gian thực ít quan trọng hơn độ chính xác, chẳng hạn như phân tích hình ảnh vệ tinh có độ phân giải cao hoặc quét y tế.
Ultralytics YOLOv5 : Tiêu chuẩn công nghiệp
Ultralytics YOLOv5 được coi rộng rãi là một trong những mô hình phát hiện vật thể thiết thực và thân thiện với người dùng nhất hiện nay. Kể từ khi ra mắt vào năm 2020, nó đã trở thành nền tảng của vô số ứng dụng thương mại nhờ sự cân bằng giữa tốc độ, độ chính xác và tính kỹ thuật xuất sắc.
Tác giả: Glenn Jocher
Tổ chức: Ultralytics
Ngày: 26-06-2020
GitHub: https://github.com/ ultralytics / yolov5
Tài liệu: https://docs. ultralytics .com/models/ yolov5 /
Kiến trúc và lợi ích hệ sinh thái
YOLOv5 sử dụng xương sống CSP-Darknet53 với cổ PANet và đầu YOLOv3, được tối ưu hóa cho nhiều mục tiêu triển khai khác nhau. Tuy nhiên, sức mạnh thực sự của nó nằm ở hệ sinh thái Ultralytics :
- Dễ sử dụng: Được biết đến với triết lý "cài đặt và chạy", YOLOv5 cho phép các nhà phát triển bắt đầu đào tạo trên các tập dữ liệu tùy chỉnh chỉ trong vài phút. API trực quan và tài liệu hướng dẫn đầy đủ.
- Hiệu quả đào tạo: YOLOv5 thường yêu cầu ít hơn CUDA bộ nhớ trong quá trình đào tạo so với các kiến trúc mới hơn, phức tạp hơn, giúp các nhà phát triển có GPU tầm trung có thể tiếp cận được.
- Tính linh hoạt khi triển khai: Hỗ trợ xuất dữ liệu sang ONNX , TensorRT chỉ bằng một cú nhấp chuột CoreML , TFLite và hơn thế nữa, tạo điều kiện triển khai trên mọi thứ, từ máy chủ đám mây đến điện thoại di động.
- Hệ sinh thái được duy trì tốt: Với các bản cập nhật thường xuyên, sửa lỗi và cộng đồng lớn, Ultralytics đảm bảo mô hình vẫn ổn định và an toàn cho môi trường sản xuất.
Các trường hợp sử dụng lý tưởng cho YOLOv5
YOLOv5 vượt trội trong các tình huống thực tế đòi hỏi độ tin cậy và tốc độ:
- AI cạnh: Chạy trên các thiết bị như NVIDIA Jetson hoặc Raspberry Pi do Nano nhẹ (
yolov5n) và Nhỏ (yolov5s) các biến thể. - Ứng dụng di động: Tích hợp vào iOS Và Android ứng dụng thông qua CoreML Và TFLite để suy luận trên thiết bị.
- Nguyên mẫu nhanh: Các công ty khởi nghiệp và nhà phát triển cần chuyển từ khái niệm sang MVP một cách nhanh chóng sẽ được hưởng lợi từ quy trình làm việc hợp lý.
- Tự động hóa công nghiệp: Phát hiện đáng tin cậy cho các dây chuyền sản xuất nơi độ trễ và độ ổn định là tối quan trọng.
Phân tích so sánh chi tiết
Khi quyết định giữa YOLOv7 Và YOLOv5 , một số yếu tố kỹ thuật có tác dụng không chỉ mAP điểm.
1. Sự đánh đổi giữa tốc độ và độ chính xác
YOLOv7 đạt được độ chính xác đỉnh cao hơn trên tập dữ liệu COCO . Ví dụ, YOLOv7x đạt 53,1% mAP so với 50,7% của YOLOv5x. Tuy nhiên, điều này phải trả giá bằng sự phức tạp. YOLOv5 cung cấp một dải mô hình mượt mà hơn; mô hình YOLOv5n (Nano) cực kỳ nhanh (73,6ms CPU tốc độ) và nhẹ (2,6M tham số), tạo ra một thị trường ngách cho các môi trường có tài nguyên cực thấp YOLOv7 không nhắm mục tiêu rõ ràng với cùng mức độ chi tiết.
2. Kiến trúc và độ phức tạp
YOLOv7 sử dụng kiến trúc dựa trên chuỗi nối với E-ELAN, giúp tăng băng thông bộ nhớ cần thiết trong quá trình huấn luyện. Điều này có thể khiến việc huấn luyện chậm hơn và ngốn bộ nhớ hơn YOLOv5 . Ngược lại, Ultralytics YOLOv5 sử dụng kiến trúc hợp lý được tối ưu hóa cao cho hiệu quả đào tạo , cho phép hội tụ nhanh hơn và sử dụng ít bộ nhớ hơn, đây là một lợi thế đáng kể đối với các kỹ sư có ngân sách tính toán hạn chế.
3. Khả năng sử dụng và trải nghiệm của nhà phát triển
Đây là nơi Ultralytics YOLOv5 thực sự tỏa sáng. Ultralytics Khung cung cấp trải nghiệm thống nhất với công cụ mạnh mẽ để tăng cường dữ liệu , phát triển siêu tham số và theo dõi thử nghiệm.
import torch
# Example: Loading YOLOv5s from PyTorch Hub for inference
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")
# Print results
results.print()
Trong khi YOLOv7 có một kho lưu trữ, nó thiếu các quy trình CI/CD được đánh bóng, sẵn sàng sản xuất, hướng dẫn tích hợp mở rộng và hỗ trợ cộng đồng hỗ trợ Ultralytics hệ sinh thái.
4. Tính linh hoạt
Trong khi cả hai mô hình chủ yếu là kiến trúc phát hiện đối tượng , Ultralytics hệ sinh thái xung quanh YOLOv5 đã phát triển để hỗ trợ phân đoạn trường hợp và phân loại hình ảnh một cách liền mạch. YOLOv7 cũng hỗ trợ các tác vụ này nhưng thường yêu cầu các nhánh hoặc nhánh khác nhau của mã, trong khi Ultralytics cung cấp một cách tiếp cận thống nhất hơn.
Triển khai dễ dàng
Ultralytics Các mô hình hỗ trợ nhiều định dạng xuất dữ liệu ngay lập tức. Bạn có thể dễ dàng chuyển đổi mô hình đã được đào tạo của mình sang TFLite để Android , CoreML cho iOS hoặc TensorRT để tối ưu hóa GPU suy luận bằng cách sử dụng một CLI lệnh hoặc Python kịch bản.
Kết luận: Bạn nên chọn mô hình nào?
Sự lựa chọn giữa YOLOv7 Và YOLOv5 phụ thuộc vào ưu tiên dự án của bạn:
- Chọn YOLOv7 nếu ràng buộc chính của bạn là độ chính xác tối đa và bạn đang hoạt động trong môi trường nghiên cứu hoặc trên phần cứng cao cấp, nơi tốc độ suy luận và dung lượng bộ nhớ là mối quan tâm thứ yếu.
- Hãy chọn Ultralytics YOLOv5 nếu bạn cần một giải pháp đáng tin cậy, sẵn sàng cho sản xuất . Tính dễ sử dụng, đào tạo hiệu quả, độ trễ thấp trên các thiết bị biên và hệ sinh thái hỗ trợ rộng lớn khiến nó trở thành lựa chọn ưu việt cho hầu hết các ứng dụng thương mại và các nhà phát triển đang bắt đầu hành trình thị giác máy tính của họ.
Nhìn về tương lai: YOLO11
Trong khi YOLOv5 Và YOLOv7 là những mô hình tuyệt vời, lĩnh vực thị giác máy tính đang phát triển nhanh chóng. Đối với các nhà phát triển đang tìm kiếm những điều tốt nhất của cả hai thế giới—vượt qua độ chính xác của YOLOv7 và tốc độ/khả năng sử dụng của YOLOv5 —chúng tôi thực sự khuyên bạn nên khám phá Ultralytics YOLO11 .
YOLO11 đại diện cho sự phát triển mới nhất, có kiến trúc không có mỏ neo giúp đơn giản hóa quy trình đào tạo và cải thiện hiệu suất trên tất cả các tác vụ, bao gồm phát hiện, phân đoạn, ước tính tư thế và hộp giới hạn định hướng (OBB).
Khám phá các Mô hình Khác
Nếu bạn quan tâm đến việc so sánh các mô hình khác trong YOLO gia đình, hãy xem các trang liên quan sau:
- YOLOv5 so sánh với YOLOv8
- YOLOv7 so với YOLOv8
- YOLOv7 so với YOLO11
- RT-DETR so với YOLOv7
- YOLOv6 so với YOLOv7