YOLOv8 so với YOLOv7 : So sánh kỹ thuật toàn diện
Sự phát triển của các mô hình phát hiện đối tượng đã diễn ra nhanh chóng, với YOLO Gia đình (You Only Look Once) dẫn đầu về hiệu suất thời gian thực. Việc lựa chọn giữa YOLOv8 và YOLOv7 không chỉ liên quan đến việc tìm hiểu các số liệu thô của họ mà còn cả triết lý kiến trúc, trải nghiệm của nhà phát triển và hệ sinh thái hỗ trợ xung quanh họ. Trong khi YOLOv7 đã thiết lập những chuẩn mực ấn tượng khi phát hành, Ultralytics YOLOv8 đã tạo nên sự thay đổi lớn về khả năng sử dụng và tính linh hoạt.
Hướng dẫn này cung cấp phân tích kỹ thuật chi tiết để giúp các nhà phát triển và nhà nghiên cứu lựa chọn công cụ phù hợp cho các dự án thị giác máy tính của họ.
Phân tích hiệu suất
Khi so sánh hiệu suất, điều quan trọng là phải xem xét sự đánh đổi giữa tốc độ suy luận và độ chính xác phát hiện ( mAP ). YOLOv8 thường cung cấp sự cân bằng vượt trội, mang lại độ chính xác cao hơn cho các kích thước mô hình tương tự và tốc độ suy luận nhanh hơn trên phần cứng hiện đại.
Bảng sau đây nêu bật sự khác biệt về hiệu suất trên tập dữ liệu COCO .
| 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) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Những Điểm Chính
- Hiệu quả: Mô hình YOLOv8n (nano) đạt được tốc độ đáng chú ý (1,47 ms trên GPU ), khiến nó trở nên lý tưởng cho các ứng dụng AI biên trong đó độ trễ là yếu tố quan trọng.
- Độ chính xác: YOLOv8x vượt trội hơn YOLOv7x về độ chính xác (53,9% so với 53,1% mAP ) trong khi vẫn duy trì số lượng tham số cạnh tranh.
- Tối ưu hóa: YOLOv8 các mô hình chứng minh hiệu quả tham số tốt hơn, mang lại hiệu suất cao hơn trên mỗi FLOP, giúp giảm mức tiêu thụ năng lượng trong quá trình suy luận .
Ultralytics YOLOv8 : Tiêu chuẩn hiện đại
Được phát hành bởi Ultralytics Vào đầu năm 2023, YOLOv8 được thiết kế để trở thành công nghệ tiên tiến nhất (SOTA) không chỉ về hiệu năng mà còn về tính linh hoạt và dễ sử dụng. Nó hợp nhất nhiều tác vụ thị giác máy tính thành một khuôn khổ hợp lý, duy nhất.
- Tác giả: Glenn Jocher, Ayush Chaurasia, và Jing Qiu
- Tổ chức: Ultralytics
- Ngày: 2023-01-10
- GitHub: ultralytics / ultralytics
- Tài liệu: Tài liệu YOLOv8
Kiến trúc và Đổi mới
YOLOv8 Giới thiệu cơ chế phát hiện không cần neo , giúp đơn giản hóa quá trình huấn luyện bằng cách loại bỏ nhu cầu tính toán hộp neo thủ công. Điều này làm giảm số lượng dự đoán hộp và tăng tốc Độ triệt tiêu không tối đa ( NMS ) .
Kiến trúc này sử dụng mô-đun C2f (Cross-Stage Partial Bottleneck với hai phép tích chập), kết hợp các đặc trưng cấp cao với thông tin ngữ cảnh hiệu quả hơn so với các phiên bản trước. Điều này dẫn đến luồng gradient phong phú hơn và cải thiện khả năng hội tụ học tập. Ngoài ra, YOLOv8 sử dụng đầu tách rời , xử lý tính khách quan, phân loại và các tác vụ hồi quy một cách độc lập để có độ chính xác cao hơn.
Điểm mạnh
- Tích hợp hệ sinh thái: Tích hợp hoàn toàn với Ultralytics hệ sinh thái, cho phép đào tạo, xác thực và triển khai mô hình liền mạch thông qua một Python API hoặc CLI .
- Tính linh hoạt: Hỗ trợ Phát hiện đối tượng , Phân đoạn thực thể , Ước tính tư thế , Phân loại hình ảnh và Hộp giới hạn định hướng (OBB) .
- Trải nghiệm của nhà phát triển: Cài đặt đơn giản như
pip install ultralytics, với tài liệu mở rộng và sự hỗ trợ tích cực của cộng đồng GitHub và Discord.
YOLOv7 : Một chuẩn mực về hiệu quả
YOLOv7 đã tạo nên làn sóng đáng kể khi phát hành bằng cách giới thiệu các tối ưu hóa kiến trúc tập trung vào "túi quà tặng miễn phí" - các phương pháp tăng độ chính xác mà không làm tăng 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, Academia Sinica
- Date: 2022-07-06
- Arxiv: YOLOv7 : Túi quà tặng có thể huấn luyện thiết lập công nghệ tiên tiến mới
- GitHub: WongKinYiu/yolov7
Kiến trúc và cách tiếp cận
YOLOv7 sử dụng Mạng Tổng hợp Lớp Hiệu quả Mở rộng (E-ELAN) , kiểm soát các đường dẫn gradient ngắn nhất và dài nhất để cho phép mạng học nhiều tính năng hơn một cách hiệu quả. Nó nhấn mạnh vào việc mở rộng mô hình (thay đổi độ sâu và chiều rộng đồng thời) và giới thiệu các kỹ thuật tham số hóa lại để hợp nhất các lớp trong quá trình suy luận, tăng tốc mô hình mà không làm giảm độ chính xác khi huấn luyện.
Điểm mạnh và hạn chế
YOLOv7 là một mô hình mạnh mẽ cung cấp tỷ lệ tốc độ/độ chính xác tuyệt vời, đặc biệt là trên GPU Thiết bị. Phương pháp "túi quà tặng miễn phí" của nó đảm bảo rằng mô hình vẫn nhẹ trong quá trình triển khai. Tuy nhiên, so với YOLOv8 , nó thiếu khả năng hỗ trợ đa tác vụ thống nhất ngay khi cài đặt và đòi hỏi các quy trình thiết lập phức tạp hơn, bao gồm sao chép kho lưu trữ và quản lý các phụ thuộc theo cách thủ công. Nó chủ yếu là một chuyên gia phát hiện đối tượng , với các tác vụ khác thường yêu cầu các nhánh hoặc triển khai riêng biệt.
So sánh kỹ thuật chuyên sâu
Khả năng sử dụng và hệ sinh thái
Một trong những điểm khác biệt rõ rệt nhất nằm ở tính Dễ sử dụng . Ultralytics YOLOv8 được đóng gói theo tiêu chuẩn Python thư viện. Điều này có nghĩa là các nhà phát triển có thể tích hợp nó vào các quy trình hiện có với mã tối thiểu. Ngược lại, YOLOv7 thường hoạt động như một cơ sở mã độc lập phải được sao chép và sửa đổi.
Trải nghiệm của nhà phát triển
YOLOv8 cho phép đào tạo một mô hình chỉ trong ba dòng Python mã. Trải nghiệm người dùng hợp lý này giúp giảm đáng kể thời gian đưa các giải pháp AI ra thị trường.
from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.pt") # load a pretrained model
# Train the model
results = model.train(data="coco8.yaml", epochs=100)
Tính linh hoạt của nhiệm vụ
Các dự án thị giác máy tính hiện đại thường yêu cầu nhiều thứ hơn là chỉ các hộp giới hạn.
- YOLOv8 : Một mô hình đa nhiệm thực sự. Bạn có thể chuyển từ phát hiện sang phân đoạn hoặc ước tính tư thế chỉ bằng cách thay đổi tệp trọng số mô hình (ví dụ,
yolov8n-seg.pt). - YOLOv7 : Chủ yếu tập trung vào phát hiện. Mặc dù có nhiều tiện ích mở rộng, nhưng chúng không được tích hợp chặt chẽ hoặc duy trì trong một khuôn khổ thống nhất duy nhất.
Hiệu quả đào tạo và trí nhớ
YOLOv8 tối ưu hóa yêu cầu bộ nhớ trong quá trình đào tạo. Nó triển khai các chiến lược tăng cường dữ liệu thông minh, tự động tắt khi kết thúc quá trình đào tạo để cải thiện độ chính xác. Hơn nữa, Ultralytics Khung hỗ trợ nhiều định dạng tập dữ liệu khác nhau và xử lý việc tự động tải xuống các tập dữ liệu chuẩn, giúp hiệu quả đào tạo cao hơn đáng kể.
Các mô hình dựa trên máy biến áp thường yêu cầu một lượng lớn CUDA trí nhớ và luyện tập chậm rãi. So sánh, cả hai YOLOv7 Và YOLOv8 dựa trên CNN và hiệu quả, nhưng YOLOv8 Các lựa chọn kiến trúc hiện đại (như khối C2f) thường mang lại khả năng hội tụ nhanh hơn và hiệu quả bộ nhớ tốt hơn trên phần cứng cấp tiêu dùng.
Các trường hợp sử dụng thực tế
Quản lý bán lẻ và hàng tồn kho
Đối với phân tích bán lẻ , tốc độ là tối quan trọng. YOLOv8n có thể chạy trên các thiết bị biên như camera hoặc NVIDIA Các mô-đun Jetson để track kiểm kê theo thời gian thực. Tốc độ suy luận cao đảm bảo việc đếm sản phẩm đang di chuyển được chính xác mà không bị trễ.
Hệ thống tự động và Robot
Ngành robot đòi hỏi sự hiểu biết chính xác về không gian. YOLOv8 Khả năng phân đoạn của robot cho phép chúng phân biệt chính xác hình dạng của chướng ngại vật thay vì chỉ là một khung giới hạn. Tính linh hoạt này giúp cải thiện an toàn định hướng. Trong khi YOLOv7 có khả năng, việc triển khai phân đoạn đòi hỏi nhiều nỗ lực hơn và cơ sở mã khác biệt.
Nông nghiệp
Trong nông nghiệp chính xác , các mô hình detect bệnh cây trồng hoặc theo dõi sự tăng trưởng. Hệ sinh thái được duy trì tốt của Ultralytics có nghĩa là các nhà nghiên cứu có thể tiếp cận các trọng số được đào tạo trước và hướng dẫn cộng đồng dành riêng cho các tập dữ liệu thích hợp này, giúp giảm bớt rào cản gia nhập.
Kết luận
Trong khi YOLOv7 Vẫn là một kiến trúc đáng kính và mạnh mẽ trong lịch sử thị giác máy tính, Ultralytics YOLOv8 đại diện cho sự lựa chọn vượt trội cho phát triển hiện đại . Sự kết hợp giữa hiệu suất tiên tiến , tính linh hoạt vượt trội và hệ sinh thái ưu tiên nhà phát triển khiến nó trở thành giải pháp phù hợp cho cả nghiên cứu học thuật và triển khai doanh nghiệp.
Đối với những người đang tìm kiếm sự mới nhất tuyệt đối về hiệu quả và sự tinh tế về kiến trúc, Ultralytics cũng đã phát hành YOLO11 , một phiên bản nâng cấp vượt bậc hơn nữa. Tuy nhiên, để so sánh trực tiếp với thế hệ v7, YOLOv8 nổi bật là sản phẩm mạnh mẽ, đáng tin cậy và dễ sử dụng.
Đọc thêm
Khám phá các so sánh mô hình khác để hiểu sâu hơn về YOLO phong cảnh:
- YOLO11 so với YOLOv8 - So sánh các phiên bản mới nhất.
- YOLOv5 so với YOLOv8 - Xem kiến trúc đã phát triển như thế nào từ v5.
- YOLOv10 so với YOLOv8 - Phân tích các phương pháp kiến trúc khác nhau.
- Thuật ngữ Ultralytics - hiểu các thuật ngữ chính như mAP Và IoU .