You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
7.1 KiB
7.1 KiB
comments | description | keywords |
---|---|---|
true | YOLOv8を様々なエクスポート形式でスピードと精度をプロファイリングする方法を学び、mAP50-95、accuracy_top5のメトリクスなどの洞察を得る。 | Ultralytics, YOLOv8, ベンチマーク, スピードプロファイリング, 精度プロファイリング, mAP50-95, accuracy_top5, ONNX, OpenVINO, TensorRT, YOLOエクスポート形式 |
Ultralytics YOLO でのモデルベンチマーク
はじめに
モデルがトレーニングされ、検証された後、次の論理的なステップは、さまざまな現実世界のシナリオでのパフォーマンスを評価することです。Ultralytics YOLOv8 のベンチマークモードは、さまざまなエクスポート形式でモデルのスピードと精度を評価するための頑健なフレームワークを提供します。
ベンチマークが重要な理由は?
- 情報に基づいた決定: スピードと精度のトレードオフについての洞察を得る。
- リソース割り当て: 異なるハードウェアで異なるエクスポート形式がどのように動作するかを理解する。
- 最適化: 特定のユースケースで最高のパフォーマンスを提供するエクスポート形式を学ぶ。
- コスト効率: ベンチマーク結果に基づいてハードウェアリソースをより効率的に使用する。
ベンチマークモードでの主要なメトリクス
- mAP50-95: 物体検出、セグメンテーション、ポーズ推定に使用。
- accuracy_top5: 画像分類に使用。
- 推論時間: 各画像に要する時間(ミリ秒)。
サポートされるエクスポート形式
- ONNX: 最適なCPUパフォーマンスのために
- TensorRT: 最大限のGPU効率のために
- OpenVINO: Intelハードウェアの最適化のために
- CoreML, TensorFlow SavedModel など: 多様なデプロイメントニーズに。
!!! tip "ヒント"
* CPUスピードアップのためにONNXまたはOpenVINOにエクスポートする。
* GPUスピードアップのためにTensorRTにエクスポートする。
使用例
ONNX、TensorRTなど、すべてのサポートされるエクスポート形式でYOLOv8nベンチマークを実行します。完全なエクスポート引数のリストについては、以下のArgumentsセクションを参照してください。
!!! example ""
=== "Python"
```python
from ultralytics.utils.benchmarks import benchmark
# GPUでベンチマーク
benchmark(model='yolov8n.pt', data='coco8.yaml', imgsz=640, half=False, device=0)
```
=== "CLI"
```bash
yolo benchmark model=yolov8n.pt data='coco8.yaml' imgsz=640 half=False device=0
```
引数
model
、data
、imgsz
、half
、device
、verbose
などの引数は、特定のニーズに合わせてベンチマークを微調整し、さまざまなエクスポート形式のパフォーマンスを容易に比較するためにユーザーに柔軟性を提供します。
キー | 値 | 説明 |
---|---|---|
model |
None |
モデルファイルへのパス、例: yolov8n.pt, yolov8n.yaml |
data |
None |
ベンチマークデータセットを参照するYAMLへのパス(val ラベルの下) |
imgsz |
640 |
画像サイズをスカラーまたは(h, w)リストで、例: (640, 480) |
half |
False |
FP16量子化 |
int8 |
False |
INT8量子化 |
device |
None |
実行デバイス、例: cuda device=0 または device=0,1,2,3 または device=cpu |
verbose |
False |
エラー時に続行しない(bool)、またはval床しきい値(float) |
エクスポート形式
以下の可能なすべてのエクスポート形式で自動的にベンチマークを試みます。
形式 | format 引数 |
モデル | メタデータ | 引数 |
---|---|---|---|---|
PyTorch | - | yolov8n.pt |
✅ | - |
TorchScript | torchscript |
yolov8n.torchscript |
✅ | imgsz , optimize |
ONNX | onnx |
yolov8n.onnx |
✅ | imgsz , half , dynamic , simplify , opset |
OpenVINO | openvino |
yolov8n_openvino_model/ |
✅ | imgsz , half |
TensorRT | engine |
yolov8n.engine |
✅ | imgsz , half , dynamic , simplify , workspace |
CoreML | coreml |
yolov8n.mlpackage |
✅ | imgsz , half , int8 , nms |
TF SavedModel | saved_model |
yolov8n_saved_model/ |
✅ | imgsz , keras |
TF GraphDef | pb |
yolov8n.pb |
❌ | imgsz |
TF Lite | tflite |
yolov8n.tflite |
✅ | imgsz , half , int8 |
TF Edge TPU | edgetpu |
yolov8n_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolov8n_web_model/ |
✅ | imgsz |
PaddlePaddle | paddle |
yolov8n_paddle_model/ |
✅ | imgsz |
ncnn | ncnn |
yolov8n_ncnn_model/ |
✅ | imgsz , half |
エクスポートページでさらに詳しいexport
の詳細をご覧ください。