YOLOv7 so với PP-YOLOE+: So sánh kỹ thuật để phát hiện đối tượng
Việc lựa chọn kiến trúc phát hiện đối tượng tối ưu là một quyết định then chốt trong quá trình phát triển thị giác máy tính , ảnh hưởng lớn đến hiệu suất và hiệu quả của các ứng dụng hạ nguồn. Phân tích này cung cấp cái nhìn sâu sắc về mặt kỹ thuật của YOLOv7 và PP-YOLOE+ , hai mô hình nổi tiếng đã định hình bối cảnh phát hiện thời gian thực. Chúng tôi xem xét những đổi mới về kiến trúc, phương pháp đào tạo và số liệu hiệu suất của chúng để hướng dẫn các nhà nghiên cứu và kỹ sư đưa ra lựa chọn sáng suốt.
YOLOv7 : Xác định tốc độ và độ chính xác thời gian thực
YOLOv7 nổi lên như một cột mốc quan trọng trong quá trình phát triển của dòng sản phẩm You Only Look Once, được thiết kế để thúc đẩy tốc độ và độ chính xác cho các ứng dụng thời gian thực. Nó giới thiệu các chiến lược kiến trúc giúp cải thiện khả năng học thuộc tính mà không làm tăng chi phí suy luận, thiết lập một chuẩn mực tiên tiến mới ngay khi ra mắt.
- 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
- Date: 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/
Đổi mới kiến trúc
Cốt lõi của YOLOv7 Thiết kế của 'E-ELAN là Mạng Tổng hợp Lớp Hiệu quả Mở rộng (E-ELAN) . Kiến trúc xương sống mới này kiểm soát các đường dẫn gradient ngắn nhất và dài nhất để học các đặc điểm một cách hiệu quả mà không làm gián đoạn luồng gradient. Bằng cách tối ưu hóa đường dẫn gradient, mạng đạt được khả năng học sâu hơn mà vẫn duy trì hiệu suất.
Ngoài ra, YOLOv7 áp dụng chiến lược "túi quà tặng miễn phí" trong quá trình đào tạo. Đây là các phương pháp tối ưu hóa giúp tăng cường độ chính xác mà không làm tăng chi phí tính toán trong giai đoạn suy luận . Các kỹ thuật bao gồm tham số hóa lại mô hình, hợp nhất các mô-đun riêng biệt thành một mô-đun duy nhất để triển khai, và suy hao dẫn hướng từ thô đến tinh cho giám sát đầu phụ trợ.
Điểm mạnh và Điểm yếu
- Điểm mạnh: YOLOv7 mang lại tỷ lệ tốc độ/độ chính xác vượt trội, giúp nó cực kỳ hiệu quả cho việc suy luận thời gian thực trên GPU. Phương pháp tiếp cận dựa trên neo của nó được tinh chỉnh tốt cho các tập dữ liệu tiêu chuẩn như COCO .
- Nhược điểm: Là một bộ phát hiện dựa trên neo , nó yêu cầu cấu hình hộp neo được xác định trước, điều này có thể không tối ưu cho các tập dữ liệu tùy chỉnh có tỷ lệ khung hình đối tượng bất thường. Việc mở rộng mô hình hiệu quả trên các ràng buộc phần cứng rất khác nhau cũng có thể phức tạp so với các phiên bản mới hơn.
PP-YOLOE+: Kẻ thách thức không neo đậu
PP-YOLOE+ là phiên bản nâng cấp của PP-YOLOE, được Baidu phát triển như một phần của bộ PaddleDetection. Điểm nổi bật của nó là kiến trúc không neo, nhằm mục đích đơn giản hóa quy trình phát hiện và giảm số lượng siêu tham số mà các nhà phát triển cần điều chỉnh.
- 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
Đổi mới kiến trúc
PP-YOLOE+ sử dụng cơ chế phát hiện không cần neo , loại bỏ nhu cầu phân cụm hộp neo. Nó sử dụng xương sống CSPRepResNet và thiết kế đầu đọc đơn giản. Điểm mấu chốt trong hiệu suất của nó là Học Căn Chỉnh Nhiệm Vụ (TAL) , tự động gán các mẫu dương tính dựa trên sự căn chỉnh của chất lượng phân loại và định vị.
Mô hình cũng tích hợp VariFocal Loss , một hàm mất mát chuyên biệt được thiết kế để ưu tiên việc huấn luyện các ví dụ chất lượng cao. Phiên bản "+" bao gồm các cải tiến cho cấu trúc cổ và đầu, tối ưu hóa kim tự tháp đặc trưng để phát hiện đa thang đo tốt hơn.
Điểm mạnh và Điểm yếu
- Ưu điểm: Thiết kế không có điểm neo giúp đơ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 nhiều hình dạng vật thể khác nhau. Thiết kế này có khả năng mở rộng tốt trên nhiều kích thước khác nhau (s, m, l, x) và được tối ưu hóa mạnh mẽ cho PaddlePaddle khung.
- Điểm yếu: Sự phụ thuộc chủ yếu vào PaddlePaddle Hệ sinh thái có thể tạo ra sự bất đồng quan điểm giữa các nhóm được thành lập trong hệ sinh thái PyTorch hoặc TensorFlow . Hỗ trợ cộng đồng và công cụ của bên thứ ba bên ngoài Trung Quốc thường kém phổ biến hơn so với toàn cầu. YOLO cộng đồng.
So sánh hiệu suất
Khi so sánh các mô hình này, điều quan trọng là phải xem xét sự cân bằng giữa Độ chính xác trung bình ( mAP ) và độ trễ suy luận. Bảng dưới đây nêu bật các số liệu chính về COCO tập dữ liệu.
| 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 |
| 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 |
Phân tích
Như đã quan sát, YOLOv7l thể hiện hiệu quả ấn tượng, đạt 51,4% mAP với một TensorRT tốc độ 6,84 ms. Ngược lại, PP-YOLOE+l đạt tốc độ cao hơn một chút là 52,9% mAP nhưng ở tốc độ chậm hơn là 8,36 ms và với các thông số cao hơn đáng kể (52,2M so với 36,9M). Điều này làm nổi bật YOLOv7 Hiệu quả vượt trội trong việc sử dụng tham số và tốc độ suy luận cho các bậc độ chính xác tương đương. Mặc dù PP-YOLOE+x vượt qua giới hạn độ chính xác, nhưng nó phải trả giá bằng việc tăng gần gấp đôi số tham số của các bậc độ chính xác tương đương. YOLO các mô hình.
Hiệu quả là quan trọng
Đối với các triển khai AI biên giới nơi bộ nhớ và tính toán bị hạn chế, số lượng tham số thấp hơn và FLOPs của YOLO Kiến trúc này thường giúp hoạt động mát hơn và tiêu thụ điện năng thấp hơn so với các giải pháp thay thế nặng hơn.
Các Ultralytics Ưu điểm: Tại sao phải hiện đại hóa?
Trong khi YOLOv7 và PP-YOLOE+ là những mô hình có khả năng, lĩnh vực thị giác máy tính phát triển nhanh chóng. Áp dụng công nghệ mới nhất Ultralytics các mô hình như YOLO11 mang lại những lợi thế riêng biệt vượt xa các số liệu thô.
1. Trải nghiệm người dùng được sắp xếp hợp lý
Ultralytics ưu tiên tính dễ sử dụng . Không giống như các tệp cấu hình phức tạp và quản lý phụ thuộc thường được yêu cầu bởi các nền tảng khác, Ultralytics các mô hình có thể được sử dụng với một vài dòng Python . Điều này làm giảm rào cản gia nhập cho các nhà phát triển và tăng tốc chu kỳ triển khai mô hình .
2. Hệ sinh thái thống nhất và tính linh hoạt
Hiện đại Ultralytics Các mô hình không chỉ giới hạn ở việc phát hiện đối tượng. Chúng hỗ trợ sẵn một loạt các tác vụ trong một khuôn khổ duy nhất:
- Phân đoạn phiên bản : Che giấu đối tượng chính xác đến từng pixel.
- Ước tính tư thế : Phát hiện các điểm chính trên cơ thể người hoặc động vật.
- Phát hiện đối tượng định hướng (OBB) : Xử lý các đối tượng xoay như tàu thuyền trong hình ảnh trên không.
- Phân loại : Phân loại toàn bộ hình ảnh.
Tính linh hoạt này cho phép các nhóm chuẩn hóa trên một thư viện cho nhiều tác vụ thị giác máy tính , giúp đơn giản hóa việc bảo trì.
3. Hiệu quả đào tạo và trí nhớ
Ultralytics Các mô hình được thiết kế để tối ưu hóa hiệu suất bộ nhớ . Chúng thường yêu cầu ít VRAM hơn trong quá trình đào tạo so với các kiến trúc cũ hơn hoặc các mô hình dựa trên bộ biến đổi như RT-DETR . Điều này cho phép đào tạo các lô lớn hơn trên GPU tiêu dùng tiêu chuẩn, giúp việc tạo mô hình hiệu suất cao dễ tiếp cận hơn với nhiều nhà nghiên cứu.
4. Ví dụ về mã: Cách hiện đại
Chạy suy luận với một hiện đại Ultralytics Mô hình này rất trực quan. Dưới đây là một ví dụ hoàn chỉnh, có thể chạy được bằng cách sử dụng YOLO11 , chứng minh chỉ cần ít dòng mã để tải một mô hình được đào tạo trước và chạy dự đoán.
from ultralytics import YOLO
# Load the YOLO11n model (nano version for speed)
model = YOLO("yolo11n.pt")
# Run inference on a local image
# This automatically downloads the model weights if not present
results = model("https://ultralytics.com/images/bus.jpg")
# Process results
for result in results:
boxes = result.boxes # Boxes object for bbox outputs
result.show() # Display results on screen
result.save(filename="result.jpg") # Save results to disk
5. Hệ sinh thái được duy trì tốt
Lựa chọn Ultralytics đồng nghĩa với việc tham gia vào một cộng đồng năng động. Với các bản cập nhật thường xuyên, tài liệu hướng dẫn chi tiết và tích hợp với các công cụ MLOps như Ultralytics HUB , các nhà phát triển được hỗ trợ trong suốt vòng đời của dự án AI.
Kết luận
Cả YOLOv7 và PP-YOLOE+ đều có những đóng góp đáng kể cho lĩnh vực phát hiện đối tượng. YOLOv7 xuất sắc trong việc cung cấp suy luận tốc độ cao về GPU phần cứng thông qua kiến trúc E-ELAN hiệu quả của nó. PP-YOLOE+ cung cấp một giải pháp thay thế mạnh mẽ không cần neo, đặc biệt mạnh mẽ trong PaddlePaddle hệ sinh thái.
Tuy nhiên, đối với các nhà phát triển đang tìm kiếm một giải pháp bền vững, cân bằng giữa hiệu suất tiên tiến với khả năng sử dụng dễ dàng vượt trội, Ultralytics YOLO11 là lựa chọn được khuyến nghị. Việc tích hợp vào một hệ sinh thái toàn diện, hỗ trợ các tác vụ đa phương thức và hiệu suất vượt trội khiến nó trở thành nền tảng lý tưởng để xây dựng các ứng dụng thị giác máy tính có khả năng mở rộng vào năm 2025 và sau đó.
Khám phá các Mô hình Khác
Mở rộng hiểu biết của bạn về bối cảnh phát hiện đối tượng với những so sánh sau:
- YOLOv7 so với YOLOv8
- PP-YOLOE+ so với YOLOv8
- RT-DETR so với YOLOv7
- YOLOX so với YOLOv7
- Khám phá những tính năng mới nhất của YOLO11 .