PP-YOLOE+ so với YOLOv9: So sánh kỹ thuật
Việc lựa chọn mô hình phát hiện đối tượng phù hợp bao gồm sự đánh đổi quan trọng giữa độ chính xác, tốc độ và chi phí tính toán. Trang này cung cấp so sánh kỹ thuật chi tiết giữa PP-YOLOE+ của Baidu và YOLOv9, hai trình phát hiện một giai đoạn mạnh mẽ. Chúng tôi sẽ phân tích sự khác biệt về kiến trúc, số liệu hiệu suất và các trường hợp sử dụng lý tưởng của chúng để giúp bạn chọn mô hình tốt nhất cho các dự án thị giác máy tính của mình. Mặc dù cả hai mô hình đều có khả năng cao, nhưng chúng xuất phát từ các triết lý và hệ sinh thái thiết kế riêng biệt, khiến so sánh này trở nên cần thiết để đưa ra quyết định sáng suốt.
PP-YOLOE+: Độ chính xác cao trong hệ sinh thái PaddlePaddle
PP-YOLOE+ (Practical PaddlePaddle You Only Look One-level Efficient Plus) là một mô hình phát hiện đối tượng được phát triển bởi Baidu, thuộc bộ công cụ PaddleDetection. Nó được giới thiệu để mang lại sự cân bằng tốt giữa độ chính xác và hiệu quả, đặc biệt được tối ưu hóa cho PaddlePaddle, một nền tảng deep learning.
- Tác giả: Các tác giả của PaddlePaddle
- Tổ chức: Baidu
- Date: 2022-04-02
- Arxiv: https://arxiv.org/abs/2203.16250
- GitHub: https://github.com/PaddlePaddle/PaddleDetection/
- Tài liệu: https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
Kiến trúc và các tính năng chính
PP-YOLOE+ là một detector không neo, một giai đoạn, được xây dựng dựa trên kiến trúc YOLO với một số cải tiến quan trọng. Nó sử dụng một backbone và neck có thể mở rộng, cùng với một head căn chỉnh tác vụ hiệu quả, để cải thiện hiệu suất. Mô hình được thiết kế để có tính thực tế và hiệu quả cao, nhưng tối ưu hóa chính của nó là cho framework PaddlePaddle, đây có thể là một cân nhắc quan trọng đối với các nhà phát triển làm việc bên ngoài hệ sinh thái đó.
Điểm mạnh
- Cân bằng hiệu suất mạnh mẽ: PP-YOLOE+ cung cấp sự đánh đổi đáng khen ngợi giữa tốc độ và độ chính xác, làm cho nó trở thành một lựa chọn khả thi cho các ứng dụng thời gian thực khác nhau.
- Các mô hình có khả năng mở rộng: Nó có nhiều kích cỡ (t, s, m, l, x), cho phép các nhà phát triển chọn một mô hình phù hợp với các hạn chế tài nguyên cụ thể của họ.
- Được tối ưu hóa cho PaddlePaddle: Đối với các nhóm đã đầu tư vào hệ sinh thái Baidu PaddlePaddle, PP-YOLOE+ mang đến trải nghiệm liền mạch và được tối ưu hóa cao.
Điểm yếu
- Sự phụ thuộc vào hệ sinh thái: Mô hình được liên kết chặt chẽ với framework PaddlePaddle, framework này có cơ sở người dùng và cộng đồng nhỏ hơn so với PyTorch. Điều này có thể dẫn đến những thách thức trong việc tích hợp, triển khai và tìm kiếm hỗ trợ từ cộng đồng.
- Tính linh hoạt hạn chế: PP-YOLOE+ chủ yếu tập trung vào phát hiện đối tượng. Ngược lại, các mô hình trong hệ sinh thái Ultralytics, như YOLOv8, cung cấp một framework thống nhất cho nhiều tác vụ, bao gồm phân đoạn, phân loại và ước tính tư thế.
- Hiệu quả thấp hơn: Như được hiển thị trong bảng hiệu suất, các mô hình PP-YOLOE+ thường yêu cầu nhiều tham số và FLOP hơn để đạt được mức độ chính xác tương đương với các kiến trúc mới hơn như YOLOv9.
Các trường hợp sử dụng lý tưởng
PP-YOLOE+ phù hợp nhất cho các nhà phát triển và tổ chức được tích hợp sâu vào hệ sinh thái Baidu PaddlePaddle. Đây là một lựa chọn vững chắc cho các tác vụ phát hiện đối tượng tiêu chuẩn, nơi môi trường phát triển đã phù hợp với các công cụ của Baidu.
YOLOv9: Thông tin Gradient có thể lập trình để tăng cường khả năng học
Ultralytics YOLOv9 đánh dấu một bước tiến đáng kể trong nhận diện đối tượng theo thời gian thực bằng cách giải quyết các thách thức cơ bản về mất thông tin trong mạng nơ-ron sâu. Nó giới thiệu các khái niệm đột phá như 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) để tăng cường cả độ chính xác và hiệu quả.
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức: Viện Khoa học Thông tin, Academia Sinica, Đà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 và các tính năng chính
Những đổi mới cốt lõi của YOLOv9, PGI và GELAN, tạo nên sự khác biệt cho nó. PGI đảm bảo rằng thông tin gradient đáng tin cậy có sẵn để cập nhật mạng bằng cách giảm thiểu vấn đề tắc nghẽn thông tin, điều này rất quan trọng để đào tạo các mạng sâu. GELAN cung cấp một kiến trúc hiệu quả cao, tối ưu hóa việc sử dụng tham số và tốc độ tính toán.
Mặc dù nghiên cứu ban đầu đến từ Academia Sinica, nhưng việc tích hợp nó vào hệ sinh thái Ultralytics mang lại những lợi thế vô song:
- Dễ sử dụng: YOLOv9 đi kèm với trải nghiệm người dùng được tối ưu hóa, Python API đơn giản và tài liệu phong phú, giúp cả người mới bắt đầu và chuyên gia đều có thể tiếp cận.
- Hệ sinh thái được duy trì tốt: Hưởng lợi từ quá trình phát triển tích cực, sự hỗ trợ mạnh mẽ từ cộng đồng, cập nhật thường xuyên và tích hợp với các công cụ như Ultralytics HUB để đào tạo không cần code và MLOps.
- Hiệu quả huấn luyện: Mô hình cung cấp quy trình huấn luyện hiệu quả với các trọng số đã được huấn luyện trước có sẵn, cho phép chu kỳ phát triển và triển khai nhanh chóng.
- Yêu cầu bộ nhớ thấp hơn: Giống như các mô hình Ultralytics YOLO khác, YOLOv9 được thiết kế để tiết kiệm bộ nhớ trong quá trình huấn luyện và suy luận, đây là một lợi thế đáng kể so với các kiến trúc đòi hỏi nhiều tài nguyên hơn như Transformer.
Điểm mạnh
- Độ chính xác vượt trội: YOLOv9 đặt ra một tiêu chuẩn mới về độ chính xác trên các chuẩn đánh giá như COCO, vượt trội hơn các mô hình trước đó.
- Hiệu quả vượt trội: Nhờ PGI và GELAN, YOLOv9 đạt được độ chính xác cao hơn với số lượng tham số và tài nguyên tính toán (FLOPs) ít hơn đáng kể so với PP-YOLOE+ và các đối thủ khác.
- Bảo toàn thông tin: PGI giải quyết hiệu quả vấn đề mất thông tin trong các mạng sâu, dẫn đến khả năng tổng quát hóa và hiệu suất mô hình tốt hơn.
- Tính linh hoạt: Kiến trúc mạnh mẽ của YOLOv9, kết hợp với khuôn khổ Ultralytics, có tiềm năng cho các ứng dụng đa tác vụ, một dấu ấn của các mô hình như YOLOv8 và YOLO11.
Điểm yếu
- Mô hình mới hơn: Là một bản phát hành gần đây, phạm vi hướng dẫn do cộng đồng đóng góp và tích hợp công cụ của bên thứ ba vẫn đang mở rộng, mặc dù việc áp dụng nó được thúc đẩy nhanh chóng bởi hệ sinh thái Ultralytics.
- Tài nguyên huấn luyện: Mặc dù có hiệu suất rất cao, việc huấn luyện các biến thể YOLOv9 lớn nhất (như YOLOv9-E) vẫn có thể đòi hỏi sức mạnh tính toán đáng kể.
Các trường hợp sử dụng lý tưởng
YOLOv9 là lựa chọn lý tưởng cho các ứng dụng đòi hỏi độ chính xác và hiệu quả cao nhất. Nó vượt trội trong các tình huống phức tạp như lái xe tự động, hệ thống an ninh tiên tiến và robotics có độ chính xác cao. Thiết kế hiệu quả của nó cũng làm cho các biến thể nhỏ hơn trở nên hoàn hảo để triển khai trên các thiết bị biên có tài nguyên hạn chế.
So sánh hiệu suất trực tiếp
Khi so sánh trực tiếp các mô hình, YOLOv9 thể hiện một lợi thế rõ ràng về hiệu quả và độ chính xác. Ví dụ: mô hình YOLOv9-C đạt được mAP cao hơn (53.0) so với mô hình PP-YOLOE+l (52.9) trong khi sử dụng khoảng một nửa số tham số (25.3M so với 52.2M) và ít FLOPs hơn (102.1B so với 110.07B). Hiệu quả tham số và tính toán vượt trội này có nghĩa là YOLOv9 có thể mang lại hiệu suất tốt hơn với yêu cầu phần cứng thấp hơn, làm cho nó trở thành một giải pháp hiệu quả về chi phí và có khả năng mở rộng hơn.
Mô hình | Kích thước (pixels) |
mAPval 50-95 |
Tốc độ CPU ONNX (ms) |
Tốc độ T4 TensorRT (ms) |
Tham số (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
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 |
Kết luận và Đề xuất
Mặc dù PP-YOLOE+ là một mô hình có năng lực trong hệ sinh thái PaddlePaddle gốc của nó, YOLOv9 nổi lên như một lựa chọn vượt trội cho phần lớn các nhà phát triển và ứng dụng. Các cải tiến kiến trúc của nó mang lại độ chính xác hiện đại với hiệu quả tính toán đáng kể.
Điểm khác biệt chính là hệ sinh thái. Bằng cách chọn YOLOv9, bạn có được quyền truy cập vào hệ sinh thái Ultralytics toàn diện và thân thiện với người dùng. Điều này bao gồm tài liệu phong phú, hỗ trợ cộng đồng tích cực, API đơn giản và các công cụ mạnh mẽ như Ultralytics HUB, tất cả cùng nhau hợp lý hóa toàn bộ quy trình phát triển và triển khai.
Đối với các nhà phát triển đang tìm kiếm sự cân bằng tốt nhất giữa hiệu suất, tính dễ sử dụng và tính linh hoạt, chúng tôi khuyên bạn nên khám phá các mô hình Ultralytics. Mặc dù YOLOv9 là một lựa chọn tuyệt vời cho nhu cầu độ chính xác cao, bạn cũng có thể quan tâm đến Ultralytics YOLOv8 vì thành tích đã được chứng minh và khả năng đa nhiệm của nó, hoặc Ultralytics YOLO11 mới nhất để có hiệu suất tiên tiến trên một loạt các tác vụ AI thị giác.