YOLOv9 vs. PP-YOLOE+: Phân tích kỹ thuật chuyên sâu về nhận diện đối tượng hiện đại

Bối cảnh nhận diện đối tượng thời gian thực liên tục phát triển nhanh chóng, mang đến cho các kỹ sư thị giác máy tính nhiều lựa chọn để triển khai các model có độ chính xác cao trên hạ tầng edge và cloud. Hai model nổi bật trong lĩnh vực này là YOLOv9PP-YOLOE+. Mặc dù cả hai đều đẩy mạnh ranh giới về độ chính xác và tốc độ, chúng xuất phát từ các dòng nghiên cứu và hệ sinh thái phần mềm khác nhau.

So sánh kỹ thuật toàn diện này khám phá kiến trúc, phương pháp đào tạo, chỉ số hiệu suất và các ứng dụng thực tế lý tưởng của chúng. Chúng tôi cũng sẽ khám phá cách hệ sinh thái Ultralytics mang lại những lợi thế đáng kể cho các nhà phát triển ưu tiên sự dễ sử dụng, hiệu quả bộ nhớ và khả năng triển khai linh hoạt.

Nguồn gốc và Thông số kỹ thuật của Model

Việc hiểu rõ bối cảnh của các model này giúp định hình các quyết định về kiến trúc và sự phụ thuộc vào framework của chúng.

YOLOv9: Giải quyết Nút thắt Thông tin

Được giới thiệu vào đầu năm 2024, YOLOv9 giải quyết vấn đề mất dữ liệu xảy ra khi thông tin đi qua các mạng thần kinh sâu. Đây là một convolutional neural network được tối ưu hóa cao, được thiết kế để tối đa hóa hiệu suất tham số.

Tìm hiểu thêm về YOLOv9

PP-YOLOE+: Thúc đẩy hệ sinh thái Paddle

Được Baidu phát hành vào năm 2022, PP-YOLOE+ là sự cải tiến lặp đi lặp lại từ PP-YOLOv2. Nó sử dụng mô hình anchor-free và giới thiệu chiến lược gán nhãn động để cải thiện độ hội tụ và độ chính xác trong PaddlePaddle framework.

Tìm hiểu thêm về PP-YOLOE+

So sánh kiến trúc

Programmable Gradient Information so với CSPRepResStage

Sự đổi mới cốt lõi trong YOLOv9 là Programmable Gradient Information (PGI). PGI đóng vai trò như một framework giám sát phụ trợ, đảm bảo thông tin gradient quan trọng được bảo toàn và truyền chính xác trở lại các lớp nông trong quá trình đào tạo. Điều này được kết hợp với Generalized Efficient Layer Aggregation Network (GELAN), kết hợp thế mạnh của CSPNet và ELAN để mang lại độ chính xác cao trong khi giảm đáng kể chi phí tính toán (FLOPs).

PP-YOLOE+ dựa vào một backbone chuyên biệt có tên là CSPRepResStage. Nó tận dụng các kỹ thuật tái tham số hóa (tương tự như các kỹ thuật được thấy trong RepVGG) để tăng tốc suy luận bằng cách hợp nhất các lớp tích chập trong quá trình triển khai. Hơn nữa, nó sử dụng Efficient Task-aligned head (ET-head) để cân bằng các tác vụ phân loại và hồi quy.

Mặc dù PP-YOLOE+ rất mạnh mẽ, nhưng kiến trúc GELAN của YOLOv9 thường yêu cầu dấu chân bộ nhớ nhỏ hơn trong cả quá trình đào tạo và suy luận, khiến nó đặc biệt phù hợp cho các thiết bị AI cạnh.

So sánh hiệu năng

Khi đánh giá các model cho sản xuất, sự đánh đổi giữa mAP (mean Average Precision), tốc độ suy luận và kích thước model là rất quan trọng.

Modelkích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Phân tích

  • Hiệu suất tham số: YOLOv9 đạt hiệu suất cao hơn đáng kể. Ví dụ, YOLOv9c đạt mAP là 53.0% chỉ với 25.3M tham số, trong khi PP-YOLOE+l yêu cầu hơn gấp đôi số tham số (52.2M) để đạt được mAP thấp hơn một chút là 52.9%. Điều này làm giảm đáng kể yêu cầu bộ nhớ cho YOLOv9.
  • Tốc độ suy luận: Các model YOLOv9 thể hiện khả năng tối ưu hóa tuyệt vời cho các bộ tăng tốc phần cứng như TensorRT, mang lại tốc độ suy luận cạnh tranh trên các GPU NVIDIA T4, vốn rất quan trọng đối với suy luận thời gian thực.

Phương pháp huấn luyện và Hệ sinh thái

Việc lựa chọn giữa các model này thường phụ thuộc vào hệ sinh thái phần mềm.

PP-YOLOE+ và PaddlePaddle

PP-YOLOE+ được kết nối chặt chẽ với bộ công cụ PaddleDetection. Mặc dù mạnh mẽ, nó yêu cầu người dùng phải điều hướng trong môi trường nặng về cấu hình và điều khiển bằng dòng lệnh. Đối với các đội ngũ đã nhúng sâu vào hệ sinh thái PyTorch hoặc TensorFlow, việc chuyển sang PaddlePaddle sẽ gây ra sự bất tiện đáng kể và đường cong học tập dốc hơn.

Lợi thế từ Ultralytics: Quy trình làm việc tinh gọn

Ngược lại, YOLOv9 vận hành trong hệ sinh thái Ultralytics được trau chuốt kỹ lưỡng. Được thiết kế cho các nhà phát triển và nghiên cứu, Ultralytics ưu tiên sự dễ sử dụng vượt trội. Python API của chúng tôi hoàn toàn loại bỏ mã boilerplate phức tạp.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

# Train on a custom dataset effortlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)

# Run inference and visualize results
results = model("https://ultralytics.com/images/bus.jpg")

# Export to ONNX for production deployment
model.export(format="onnx")

Quy trình làm việc này nêu bật Hiệu quả đào tạo vượt trội của các model Ultralytics. Hỗ trợ gốc cho tăng cường dữ liệu, đào tạo phân tán và tự động ghi nhật ký vào các nền tảng như Weights & Biases hoặc MLflow là tiêu chuẩn.

Khám phá những điều mới nhất trong Vision AI

Mặc dù YOLOv9 mang lại hiệu suất vượt trội, chúng tôi đặc biệt khuyến nghị cân nhắc Ultralytics YOLO26 mới được phát hành cho các dự án mới. YOLO26 có thiết kế End-to-End NMS-Free gốc, đơn giản hóa việc triển khai một cách đáng kể. Với DFL Removal (loại bỏ Distribution Focal Loss để xuất đơn giản hơn và tương thích tốt hơn với các thiết bị cạnh/công suất thấp), nó mang lại tốc độ suy luận CPU nhanh hơn tới 43% cho điện toán cạnh. Được hỗ trợ bởi MuSGD Optimizer, nó đảm bảo đào tạo ổn định và hội tụ nhanh. Ngoài ra, ProgLoss + STAL cung cấp các hàm mất mát được cải thiện với những cải tiến đáng chú ý trong việc nhận diện vật thể nhỏ, rất quan trọng cho IoT, robot và hình ảnh trên không.

Tính linh hoạt và hỗ trợ tác vụ

Các dự án thị giác máy tính hiện đại hiếm khi dừng lại ở các bounding box đơn giản.

PP-YOLOE+ chủ yếu được thiết kế cho nhận diện đối tượng tiêu chuẩn. Việc điều chỉnh kiến trúc của nó cho các tác vụ khác đòi hỏi kỹ thuật tùy chỉnh sâu rộng.

Ngược lại, framework Ultralytics là một cỗ máy đa tác vụ. Bằng cách sử dụng API thống nhất, các nhà phát triển có thể dễ dàng chuyển từ nhận diện đối tượng tiêu chuẩn sang Instance Segmentation phức tạp, Pose Estimation có độ chính xác cao, nhận diện Oriented Bounding Box (OBB) cho hình ảnh trên không và Classification hình ảnh. Sự linh hoạt vô song này là lý do tại sao các đội ngũ doanh nghiệp luôn chọn các model Ultralytics như YOLOv9, YOLO11 và YOLO26.

Các trường hợp sử dụng và ứng dụng lý tưởng

  • Phân tích thành phố thông minh & Quản lý giao thông: Hiệu suất tham số cao và độ trễ thấp của YOLOv9 (và các phiên bản tiếp theo như YOLO26) làm cho chúng trở nên lý tưởng để triển khai trên phần cứng cạnh bị giới hạn (như thiết bị NVIDIA Jetson) để giám sát lưu lượng giao thông và an ninh đô thị.
  • Hệ thống quản lý kho bán lẻ: Để phát hiện các cấu hình dày đặc của các mặt hàng nhỏ trên kệ, PGI của YOLOv9 duy trì hiệu quả các chi tiết không gian hạt mịn, vượt trội hơn PP-YOLOE+ trong các tác vụ phát hiện đối tượng nhỏ.
  • Triển khai kế thừa: PP-YOLOE+ vẫn là một lựa chọn khả thi đối với các đội ngũ được chỉ định rõ ràng phải sử dụng stack phần mềm Baidu/PaddlePaddle trong cơ sở hạ tầng cũ hiện có.

Đối với các nhà nghiên cứu đang khám phá các kiến trúc dựa trên Transformer, Ultralytics cũng hỗ trợ gốc RT-DETR trong cùng một API dễ sử dụng, đảm bảo bạn luôn có quyền truy cập vào model tối ưu cho các yêu cầu triển khai cụ thể của mình.

Bình luận