コンテンツへスキップ

モデル・ベンチマークUltralytics YOLO

Ultralytics YOLO エコシステムと統合

ベンチマークの可視化

ブラウザの更新

クッキーの問題が発生する可能性があるため、グラフを正しく表示するにはページを更新する必要があります。











はじめに

モデルの学習と検証が完了したら、次の論理的なステップは、さまざまな実世界のシナリオでそのパフォーマンスを評価することです。Ultralytics YOLO11 のベンチマークモードは、様々なエクスポートフォーマットでモデルのスピードと精度を評価するための堅牢なフレームワークを提供することで、この目的に役立ちます。



見るんだ: ベンチマークUltralytics YOLO11 モデル|異なるハードウェアでモデルのパフォーマンスを比較するには?

なぜベンチマーキングが重要なのか?

  • 情報に基づいた決断:スピードと精度のトレードオフに関する洞察を得る。
  • リソースの割り当て:異なるエクスポート・フォーマットが異なるハードウェア上でどのように動作するかを理解する。
  • 最適化:特定のユースケースに最適なパフォーマンスを提供するエクスポート形式をご覧ください。
  • コスト効率:ベンチマークの結果に基づき、ハードウェアリソースをより効率的に使用します。

ベンチマークモードでの主要指標

  • mAP50-95: 物体検出、セグメンテーション、姿勢推定用。
  • accuracy_top5: 画像分類用。
  • 推論時間:各画像にかかった時間(ミリ秒単位)。

対応エクスポート形式

  • ONNX:最適なCPU パフォーマンスのために
  • TensorRT: GPU 効率を最大化する
  • OpenVINO: Intel ハードウェアの最適化
  • CoreML TensorFlow SavedModel など:多様な展開ニーズに対応

チップ

  • ONNX またはOpenVINO にエクスポートして、CPU を最大3倍高速化。
  • TensorRT にエクスポートして、GPU を最大5倍高速化。

使用例

YOLO11n ベンチマークを、ONNX 、TensorRT など、サポートされているすべてのエクスポートフォーマットで実行します。エクスポート引数の完全なリストについては、以下の引数のセクションを参照してください。

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

議論

などの議論がある。 model, data, imgsz, half, deviceそして verbose は、ベンチマークを特定のニーズに合わせて微調整し、異なるエクスポート形式のパフォーマンスを簡単に比較できる柔軟性をユーザーに提供します。

キー デフォルト値 説明
model None モデルファイルへのパスを指定します。以下の両方を受け入れます。 .pt そして .yaml などの形式がある、 "yolo11n.pt" 訓練済みモデルや設定ファイル
data None ベンチマーク用のデータセットを定義するYAMLファイルへのパス。 検証データ.例 "coco8.yaml".
imgsz 640 モデルの入力画像サイズ。正方形画像の場合は1つの整数,正方形画像の場合は1つのタプルになります. (width, height) 非正方形の場合、 (640, 480).
half False FP16(半精度)推論を有効にし、メモリ使用量を削減し、互換性のあるハードウェアでは速度を向上させることができる。使用方法 half=True を有効にする。
int8 False INT8 量子化を有効にすることで、サポートされているデバイスのパフォーマンスがさらに最適化されます。設定 int8=True を使用する。
device None ベンチマーク用の計算デバイスを定義します。 "cpu" または "cuda:0".
verbose False ロギング出力の詳細レベルを制御する。ブール値。 verbose=True は詳細なログを、float は閾値エラーを表示する。

輸出フォーマット

ベンチマークは、以下のすべての可能なエクスポートフォーマットで自動的に実行されます。

フォーマット format 議論 モデル メタデータ 議論
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 ライト tflite yolo11n.tflite imgsz, half, int8, batch
TF エッジ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

詳細を見る export 詳細は 輸出 ページを参照されたい。

よくあるご質問

Ultralytics を使ってYOLO11 モデルのパフォーマンスをベンチマークするには?

Ultralytics YOLO11 には、さまざまなエクスポート形式でモデルのパフォーマンスを評価するためのベンチマーク・モードがあります。このモードでは、平均平均精度(mAP50-95)、精度、推論時間(ミリ秒)などの主要なメトリックスに関する洞察を得ることができます。ベンチマークを実行するには、Python またはCLI コマンドを使用します。たとえば、GPU でベンチマークを実行するには、 コマンドを使用します:

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

ベンチマークの引数の詳細については、引数のセクションをご覧ください。

YOLO11 モデルをさまざまなフォーマットにエクスポートする利点は何ですか?

YOLO11 、ONNX 、TensorRT 、OpenVINO など、さまざまな形式にモデルをエクスポートすることで、展開環境に応じてパフォーマンスを最適化することができます。例えば

  • ONNX: CPU 、最大3倍のスピードアップを実現。
  • TensorRT: GPU 、最大5倍のスピードアップを実現。
  • OpenVINO:特にIntel ハードウェアに最適化されている。

これらのフォーマットは、モデルのスピードと精度の両方を向上させ、様々な実世界でのアプリケーションをより効率的にします。詳細については、エクスポートのページをご覧ください。

YOLO11 モデルの評価においてベンチマーキングが極めて重要なのはなぜか?

YOLO11 モデルのベンチマーキングは、いくつかの理由から不可欠である:

  • 情報に基づいた決断:スピードと精度のトレードオフを理解する。
  • リソースの割り当て:さまざまなハードウェアオプションのパフォーマンスを測定します。
  • 最適化:特定のユースケースに最適なパフォーマンスを提供するエクスポート形式を決定します。
  • コスト効率:ベンチマークの結果に基づいてハードウェアの使用を最適化します。

mAP50-95、トップ5精度、推論時間などの主要メトリクスは、これらの評価に役立ちます。詳細については、キー・メトリクスのセクションを参照してください。

YOLO11 でサポートされているエクスポート形式とその利点は?

YOLO11 は、特定のハードウェアやユースケースに合わせた様々なエクスポートフォーマットをサポートしています:

  • ONNX: CPU パフォーマンスに最適。
  • TensorRT: GPU 効率を上げるのに最適。
  • OpenVINO: Intel ハードウェアに最適化。
  • CoreML &TensorFlow:iOS や一般的なMLアプリケーションに役立つ。

サポートされているフォーマットの完全なリストとそれぞれの利点については、サポートされているエクスポートフォーマットのセクションをご覧ください。

YOLO11 ベンチマークを微調整するには、どのような引数を使えばいいのか?

ベンチマークを実行する際、いくつかの引数を特定のニーズに合わせてカスタマイズすることができる:

  • モデル:モデルファイルへのパス(例:"yolo11n.pt")。
  • データ:data: データセットを定義するYAMLファイルへのパス(例:"coco8.yaml")。
  • imgsz:入力画像のサイズ。整数またはタプル。
  • 半分:FP16 推論を有効にしてパフォーマンスを向上。
  • int8:エッジデバイスのINT8量子化を有効にする。
  • デバイスを指定する:計算デバイスを指定する(例: "cpu", "cuda:0")。
  • 冗長:ロギングの詳細レベルを制御する。

引数の一覧は「引数」のセクションを参照。

📅作成:1年前 ✏️更新 13日前

コメント