YOLOv8 So sánh với PP-YOLOE+: Khám phá chuyên sâu về phát hiện đối tượng hiệu năng cao
Trong bối cảnh thị giác máy tính đang phát triển nhanh chóng, việc lựa chọn kiến trúc phát hiện đối tượng phù hợp là rất quan trọng để cân bằng giữa độ chính xác, tốc độ và tính khả thi triển khai. Hướng dẫn này cung cấp một so sánh kỹ thuật toàn diện giữa Ultralytics YOLOv8 và PP-YOLOE+ , phân tích những cải tiến về kiến trúc, các chỉ số hiệu suất và sự phù hợp của chúng với các ứng dụng thực tế.
Tổng quan mô hình
Ultralytics YOLOv8
YOLOv8 đánh dấu một bước tiến đáng kể trong lĩnh vực này. YOLO Dòng sản phẩm này giới thiệu một khung thống nhất cho việc phát hiện đối tượng, phân đoạn thể hiện và ước tính tư thế. Được xây dựng trên nền tảng tốc độ và độ chính xác cao, nó có tính năng đầu phát hiện không cần neo mới và một hàm mất mát mới.
- Tác giả: Glenn Jocher, Ayush Chaurasia, và Jing Qiu
- Tổ chức:Ultralytics
- Ngày: 2023-01-10
- GitHub:https://github.com/ultralytics/ultralytics
- Tài liệu:https://docs.ultralytics.com/models/yolov8/
PP-YOLOE+
PP-YOLOE+ là phiên bản nâng cấp của dòng sản phẩm PP-YOLOE từ Baidu. PaddlePaddle đội. Nó tập trung vào việc hoàn thiện cơ chế không cần neo và cải thiện các chiến lược huấn luyện để đạt được hiệu suất cạnh tranh, đặc biệt là trong phạm vi PaddlePaddle hệ sinh thái.
- Tác giả: Các tác giả của PaddlePaddle
- Tổ chức:Baidu
- Ngày: 2022-04-02
- Arxiv:https://arxiv.org/abs/2203.16250
- GitHub:https://github.com/PaddlePaddle/PaddleDetection/
- Tài liệu: Cấu hình PaddleDetection PP-YOLOE+
So sánh hiệu suất
Khi đánh giá các bộ phát hiện đối tượng, cần xem xét sự đánh đổi giữa tốc độ suy luận (độ trễ) và độ chính xác trung bình (Average Precision) ( mAP Điều này vô cùng quan trọng. Biểu đồ bên dưới minh họa mối quan hệ này, tiếp theo là bảng số liệu chi tiết.
| 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) |
|---|---|---|---|---|---|---|
| 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 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
Lưu ý: Các chỉ số hiệu năng cho thấy mặc dù PP-YOLOE+ thể hiện hiệu quả FLOPs lý thuyết mạnh mẽ, YOLOv8 thường mang lại hiệu suất thực tế và hiệu quả tham số vượt trội, đặc biệt là trên CPU các thiết bị biên dựa trên.
Sự khác biệt về kiến trúc
Ultralytics YOLOv8 Ngành kiến trúc
YOLOv8 Giới thiệu một hệ thống phát hiện không cần neo hiện đại. Không giống như các phiên bản trước đây dựa vào các hộp neo được xác định trước, YOLOv8 Dự đoán trực tiếp tâm của các đối tượng. Điều này đơn giản hóa quá trình huấn luyện và cải thiện khả năng khái quát hóa trên các tập dữ liệu đa dạng như COCO .
Các tính năng kiến trúc chính bao gồm:
- Mô-đun C2f: Thay thế mô-đun C3, mô-đun C2f (Cross-Stage Partial Bottleneck with two convolutions) cải thiện luồng gradient và làm phong phú thêm biểu diễn đặc trưng trong khi vẫn duy trì kích thước nhỏ gọn.
- Phân tách đầu xử lý: Các tác vụ phân loại và hồi quy được xử lý bởi các nhánh riêng biệt, cho phép mô hình tập trung vào các loại đặc trưng cụ thể cho từng tác vụ, dẫn đến độ chính xác cao hơn.
- Công cụ gán nhãn phù hợp với nhiệm vụ: Một chiến lược gán nhãn tinh vi, tự động căn chỉnh các mẫu tích cực với dữ liệu thực tế dựa trên điểm số phân loại và hồi quy.
Kiến trúc PP-YOLOE+
PP-YOLOE+ được xây dựng dựa trên khung PP-YOLOE, sử dụng kiến trúc xương sống CSPResNet và phần cổ mạng Path Aggregation Network (PANet) được đơn giản hóa. Nó nhấn mạnh vào việc tái tham số hóa và gán nhãn hiệu quả.
Các tính năng kiến trúc chính bao gồm:
- RepResBlock: Sử dụng các kỹ thuật tái tham số hóa để hợp nhất nhiều lớp thành một phép tích chập duy nhất trong quá trình suy luận, giảm độ trễ mà không làm giảm dung lượng huấn luyện.
- TAL (Học tập theo sự phù hợp nhiệm vụ): Tương tự như YOLOv8 Nó sử dụng phương pháp học căn chỉnh nhiệm vụ để tối ưu hóa việc căn chỉnh điểm neo.
- Huấn luyện trước trên Object365: Dấu "+" trong PP-YOLOE+ biểu thị việc sử dụng huấn luyện trước quy mô lớn trên tập dữ liệu Objects365 , góp phần vào hiệu suất cao của nó. mAP nhưng làm tăng độ phức tạp của quá trình đào tạo đối với những người dùng muốn tái tạo kết quả từ đầu.
Hệ sinh thái và Dễ sử dụng
Lợi thế của Ultralytics
Một trong những yếu tố khác biệt quan trọng nhất của YOLOv8 là Hệ sinh thái Ultralytics mạnh mẽ. Mô hình này không chỉ là kho lưu trữ mã nguồn mà còn là một sản phẩm được hỗ trợ đầy đủ, tích hợp vào quy trình làm việc liền mạch.
- API thống nhất: Các nhà phát triển có thể chuyển đổi giữa các tác vụ — Phát hiện , Phân đoạn , Ước tính tư thế , OBB và Phân loại — chỉ bằng cách thay đổi một đối số chuỗi duy nhất.
- Nền tảng Ultralytics : Nền tảng Ultralytics cho phép quản lý tập dữ liệu, huấn luyện mô hình và triển khai dễ dàng trực tiếp từ trình duyệt.
- Tích hợp toàn diện: Hỗ trợ gốc cho các công cụ MLOps như Weights & Biases , Comet và MLflow đảm bảo việc theo dõi thử nghiệm diễn ra dễ dàng như cắm và chạy.
Giao diện python đơn giản
Thực hiện suy luận với YOLOv8 Chỉ cần một vài dòng mã:
from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.pt")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Hệ sinh thái PP-YOLOE+
PP-YOLOE+ được tích hợp sâu vào hệ sinh thái PaddlePaddle . Mặc dù mạnh mẽ, điều này có thể tạo ra một quá trình học hỏi khó khăn hơn đối với các nhà phát triển đã quen với... PyTorch hoặc TensorFlow Việc triển khai thường dựa vào PaddleLite hoặc chuyển đổi các mô hình sang... ONNX thông qua Paddle2ONNX, điều này làm tăng thêm một bước so với khả năng xuất trực tiếp của Ultralytics mô hình.
Hiệu quả huấn luyện và trí nhớ
Huấn luyện Hiệu quả
YOLOv8 Được thiết kế để tối ưu hiệu quả đào tạo . Nó hỗ trợ xác định kích thước nhóm tự động và nhiều chức năng khác nhau. GPU Huấn luyện ngay sau khi cài đặt. Kiến trúc của nó được tối ưu hóa để tiêu thụ ít VRAM hơn trong quá trình huấn luyện so với các mô hình dựa trên Transformer như RT-DETR , cho phép người dùng huấn luyện các mô hình lớn hơn trên phần cứng cấp độ người tiêu dùng.
Trọng số được huấn luyện trước
Ultralytics PP-YOLOE+ cung cấp một loạt các trọng số được huấn luyện trước cho nhiều nhiệm vụ và kích thước khác nhau (từ Nano đến X-Large). Các mô hình này có sẵn ngay lập tức và được tự động tải xuống khi sử dụng lần đầu, giúp tăng tốc đáng kể chu kỳ phát triển cho các dự án học chuyển giao. Ngược lại, để tận dụng tối đa sức mạnh của PP-YOLOE+ thường cần phải điều hướng các cấu hình cụ thể của thư viện PaddleDetection.
Các trường hợp sử dụng và Khuyến nghị
Khi nào nên chọn YOLOv8
Ultralytics YOLOv8 là lựa chọn được khuyến nghị cho phần lớn các nhà phát triển và doanh nghiệp nhờ tính linh hoạt và dễ sử dụng.
- Triển khai tại biên: Lý tưởng để chạy trên các thiết bị như Raspberry Pi hoặc điện thoại di động sử dụng TFLite hoặc CoreML .
- Các tác vụ đa phương thức: Nếu dự án của bạn yêu cầu phân đoạn hoặc ước lượng tư thế cùng với phát hiện, YOLOv8 Cung cấp một giải pháp thống nhất.
- Tạo mẫu nhanh: Phương pháp đơn giản CLI Và Python API cho phép lặp lại nhanh chóng, điều này làm cho nó trở nên hoàn hảo cho các công ty khởi nghiệp và các cuộc thi hackathon.
- Hỗ trợ cộng đồng: Với cộng đồng lớn mạnh trên GitHub và Discord , việc tìm kiếm giải pháp cho các vấn đề trở nên nhanh chóng và đáng tin cậy.
Khi nào nên chọn PP-YOLOE+
PP-YOLOE+ là một ứng cử viên sáng giá nếu bạn đã đầu tư vào cơ sở hạ tầng của Baidu .
- PaddlePaddle Legacy: Công cụ thiết yếu cho các nhóm có quy trình sản xuất được xây dựng hoàn toàn dựa trên PaddlePaddle. PaddlePaddle .
- Máy chủ tính toán hiệu năng cao: Mô hình này hoạt động tốt trong môi trường có sẵn GPU cao cấp để tận dụng tối đa kiến trúc phức tạp của nó. mAP , bất kể độ phức tạp của việc triển khai.
Tương lai: YOLO26
Trong khi YOLOv8 vẫn là một tiêu chuẩn vững chắc trong ngành. Ultralytics Tiếp tục vượt qua những giới hạn của thị giác máy tính. YOLO26 vừa được ra mắt đại diện cho thế hệ hiệu quả tiếp theo.
YOLO26 giới thiệu thiết kế không cần NMS từ đầu đến cuối , loại bỏ nhu cầu xử lý hậu kỳ bằng phương pháp loại bỏ cực đại không tương thích (Non-Maximum Suppression). Điều này giúp suy luận nhanh hơn và logic triển khai đơn giản hơn. Hơn nữa, những cải tiến như bộ tối ưu hóa MuSGD và loại bỏ DFL giúp YOLO26 nhanh hơn tới 43% trên CPU so với các thế hệ trước, củng cố vị thế là lựa chọn hàng đầu cho điện toán biên.
Đối với các nhà phát triển bắt đầu các dự án mới ngày nay, việc đánh giá YOLO26 cùng với... YOLOv8 Điều này rất được khuyến khích để đảm bảo ứng dụng của bạn có thể đáp ứng được nhu cầu trong tương lai.
Kết luận
Cả hai YOLOv8 PP-YOLOE+ và YOLOV8 đều là những mô hình phát hiện đối tượng xuất sắc. Tuy nhiên, Ultralytics YOLOv8 nổi bật hơn cả nhờ thiết kế hướng đến người dùng, tài liệu đầy đủ và tính linh hoạt vượt trội. Bằng cách giảm thiểu rào cản gia nhập trong khi vẫn duy trì hiệu năng hàng đầu, YOLOv8 —và phiên bản kế nhiệm YOLO26—cho phép các nhà phát triển xây dựng các giải pháp AI phức tạp với mức độ khó khăn tối thiểu.
Để tìm hiểu thêm về so sánh các mô hình, hãy xem các phân tích của chúng tôi về YOLOv8 so với EfficientDet và YOLOv8 so với YOLOv6 .