Bỏ qua nội dung

Mô hình chuẩn với Ultralytics YOLO

Ultralytics YOLO hệ sinh thái và tích hợp

Hình ảnh chuẩn mực

Làm mới trình duyệt

Bạn có thể cần phải làm mới trang để xem biểu đồ chính xác do có thể xảy ra sự cố về cookie.











Giới thiệu

Sau khi mô hình của bạn được đào tạo và xác thực, bước hợp lý tiếp theo là đánh giá hiệu suất của nó trong nhiều tình huống thực tế khác nhau. Chế độ chuẩn trong Ultralytics YOLO11 phục vụ mục đích này bằng cách cung cấp một khuôn khổ mạnh mẽ để đánh giá tốc độ và độ chính xác của mô hình của bạn trên nhiều định dạng xuất.



Đồng hồ: Điểm chuẩn Ultralytics YOLO11 Mô hình | Làm thế nào để so sánh hiệu suất mô hình trên các phần cứng khác nhau?

Tại sao việc đánh giá chuẩn lại quan trọng?

  • Quyết định sáng suốt: Tìm hiểu sâu hơn về sự đánh đổi giữa tốc độ và độ chính xác.
  • Phân bổ tài nguyên: Hiểu cách các định dạng xuất khác nhau hoạt động trên các phần cứng khác nhau.
  • Tối ưu hóa: Tìm hiểu định dạng xuất nào mang lại hiệu suất tốt nhất cho trường hợp sử dụng cụ thể của bạn.
  • Hiệu quả về chi phí: Sử dụng hiệu quả hơn các tài nguyên phần cứng dựa trên kết quả chuẩn.

Các số liệu chính trong chế độ chuẩn

Định dạng xuất được hỗ trợ

  • ONNX : Để tối ưu CPU hiệu suất
  • TensorRT : Cho tối đa GPU hiệu quả
  • OpenVINO : Dành cho Intel tối ưu hóa phần cứng
  • CoreML , TensorFlow SavedModel và nhiều hơn nữa: Dành cho nhiều nhu cầu triển khai khác nhau.

Mẹo

  • Xuất khẩu sang ONNX hoặc OpenVINO lên đến 3x CPU tăng tốc.
  • Xuất khẩu sang TensorRT lên đến 5x GPU tăng tốc.

Ví dụ sử dụng

Chạy chuẩn YOLO11n trên tất cả các định dạng xuất được hỗ trợ bao gồm ONNX , TensorRT v.v. Xem phần Đối số bên dưới để biết danh sách đầy đủ các đối số xuất.

Ví dụ

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolo11n.pt data='coco8.yaml' imgsz=640 half=False device=0

Lập luận

Những lập luận như model, data, imgsz, half, device, Và verbose cung cấp cho người dùng sự linh hoạt để tinh chỉnh các chuẩn mực theo nhu cầu cụ thể của họ và dễ dàng so sánh hiệu suất của các định dạng xuất khác nhau.

Chìa khóa Giá trị mặc định Sự miêu tả
model None Chỉ định đường dẫn đến tệp mô hình. Chấp nhận cả hai .pt.yaml định dạng, ví dụ, "yolo11n.pt" dành cho các mô hình được đào tạo trước hoặc các tệp cấu hình.
data None Đường dẫn đến tệp YAML xác định tập dữ liệu để đánh giá chuẩn, thường bao gồm đường dẫn và cài đặt cho dữ liệu xác thực. Ví dụ: "coco8.yaml".
imgsz 640 Kích thước hình ảnh đầu vào cho mô hình. Có thể là một số nguyên duy nhất cho hình ảnh vuông hoặc một bộ (width, height) đối với không vuông góc, ví dụ, (640, 480).
half False Cho phép suy luận FP16 (nửa độ chính xác), giảm mức sử dụng bộ nhớ và có thể tăng tốc độ trên phần cứng tương thích. Sử dụng half=True để kích hoạt.
int8 False Kích hoạt lượng tử hóa INT8 để có hiệu suất được tối ưu hóa hơn nữa trên các thiết bị được hỗ trợ, đặc biệt hữu ích cho các thiết bị biên. Đặt int8=True để sử dụng.
device None Xác định các thiết bị tính toán để đánh giá chuẩn, chẳng hạn như "cpu" hoặc "cuda:0".
verbose False Kiểm soát mức độ chi tiết trong đầu ra ghi nhật ký. Một giá trị boolean; thiết lập verbose=True để biết nhật ký chi tiết hoặc để xác định ngưỡng lỗi.

Định dạng xuất khẩu

Điểm chuẩn sẽ cố gắng chạy tự động trên tất cả các định dạng xuất có thể có bên dưới.

Định dạng format Lý lẽ Người mẫu Siêu dữ liệu Lập luận
PyTorch - yolo11n.pt -
TorchScript torchscript yolo11n.torchscript imgsz, optimize, batch
ONNX onnx yolo11n.onnx imgsz, half, dynamic, simplify, opset, batch
OpenVINO openvino yolo11n_openvino_model/ imgsz, half, int8, batch
TensorRT engine yolo11n.engine imgsz, half, dynamic, simplify, workspace, int8, batch
CoreML coreml yolo11n.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolo11n_saved_model/ imgsz, keras, int8, batch
TF GraphDef pb yolo11n.pb imgsz, batch
TF Nhẹ tflite yolo11n.tflite imgsz, half, int8, batch
TF Bờ rìa TPU edgetpu yolo11n_edgetpu.tflite imgsz
TF .js tfjs yolo11n_web_model/ imgsz, half, int8, batch
PaddlePaddle paddle yolo11n_paddle_model/ imgsz, batch
MNN mnn yolo11n.mnn imgsz, batch, int8, half
NCNN ncnn yolo11n_ncnn_model/ imgsz, half, batch
IMX500 imx yolov8n_imx_model/ imgsz, int8

Xem đầy đủ export chi tiết trong Xuất khẩu trang.

CÂU HỎI THƯỜNG GẶP

Làm thế nào để tôi đánh giá chuẩn của tôi YOLO11 hiệu suất của mô hình sử dụng Ultralytics ?

Ultralytics YOLO11 cung cấp chế độ Benchmark để đánh giá hiệu suất của mô hình của bạn trên các định dạng xuất khác nhau. Chế độ này cung cấp thông tin chi tiết về các số liệu chính như Độ chính xác trung bình (mAP50-95), độ chính xác và thời gian suy luận tính bằng mili giây. Để chạy chuẩn, bạn có thể sử dụng Python hoặc CLI lệnh. Ví dụ, để đánh giá chuẩn trên một GPU :

Ví dụ

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolo11n.pt data='coco8.yaml' imgsz=640 half=False device=0

Để biết thêm chi tiết về các đối số chuẩn mực, hãy truy cập phần Đối số .

Lợi ích của việc xuất khẩu là gì? YOLO11 mô hình sang các định dạng khác nhau?

Xuất khẩu YOLO11 các mô hình thành các định dạng khác nhau như ONNX , TensorRT , Và OpenVINO cho phép bạn tối ưu hóa hiệu suất dựa trên môi trường triển khai của bạn. Ví dụ:

  • ONNX : Cung cấp tới 3x CPU tăng tốc.
  • TensorRT : Cung cấp lên đến 5x GPU tăng tốc.
  • OpenVINO : Được tối ưu hóa đặc biệt cho Intel phần cứng.

Các định dạng này tăng cường cả tốc độ và độ chính xác của mô hình, giúp chúng hiệu quả hơn cho nhiều ứng dụng thực tế khác nhau. Truy cập trang Xuất để biết thông tin chi tiết đầy đủ.

Tại sao chuẩn mực lại quan trọng trong việc đánh giá YOLO11 mô hình?

Đánh giá chuẩn của bạn YOLO11 mô hình là cần thiết vì một số lý do:

  • Quyết định sáng suốt: Hiểu được sự đánh đổi giữa tốc độ và độ chính xác.
  • Phân bổ tài nguyên: Đánh giá hiệu suất trên các tùy chọn phần cứng khác nhau.
  • Tối ưu hóa: Xác định định dạng xuất nào mang lại hiệu suất tốt nhất cho các trường hợp sử dụng cụ thể.
  • Hiệu quả về chi phí: Tối ưu hóa việc sử dụng phần cứng dựa trên kết quả chuẩn.

Các số liệu chính như mAP50-95, độ chính xác Top-5 và thời gian suy luận giúp đưa ra những đánh giá này. Tham khảo phần Số liệu chính để biết thêm thông tin.

Những định dạng xuất nào được hỗ trợ bởi YOLO11 và ưu điểm của chúng là gì?

YOLO11 hỗ trợ nhiều định dạng xuất khác nhau, mỗi định dạng được thiết kế riêng cho phần cứng và trường hợp sử dụng cụ thể:

  • ONNX : Tốt nhất cho CPU hiệu suất.
  • TensorRT : Lý tưởng cho GPU hiệu quả.
  • OpenVINO : Tối ưu hóa cho Intel phần cứng.
  • CoreML & TensorFlow : Hữu ích cho iOS và các ứng dụng ML nói chung.

Để biết danh sách đầy đủ các định dạng được hỗ trợ và ưu điểm tương ứng của chúng, hãy xem phần Định dạng xuất được hỗ trợ .

Tôi có thể sử dụng những lập luận nào để tinh chỉnh? YOLO11 chuẩn mực?

Khi chạy chuẩn mực, một số đối số có thể được tùy chỉnh để phù hợp với nhu cầu cụ thể:

  • model: Đường dẫn đến tệp mô hình (ví dụ: "yolo11n.pt").
  • dữ liệu: Đường dẫn đến tệp YAML xác định tập dữ liệu (ví dụ: "coco8.yaml").
  • imgsz: Kích thước hình ảnh đầu vào, có thể là một số nguyên hoặc một bộ.
  • một nửa: Kích hoạt suy luận FP16 để có hiệu suất tốt hơn.
  • int8: Kích hoạt lượng tử hóa INT8 cho các thiết bị biên.
  • thiết bị: Chỉ định thiết bị tính toán (ví dụ: " cpu ", " cuda :0").
  • chi tiết: Kiểm soát mức độ chi tiết của việc ghi nhật ký.

Để biết danh sách đầy đủ các lập luận, hãy tham khảo phần Lập luận .

📅 Được tạo ra cách đây 1 năm ✏️ Đã cập nhật cách đây 16 ngày

Bình luận