グリーンチェック
クリップボードにコピーされたリンク

YOLO11ようなUltralytics YOLO モデルのベンチマーク方法

Ultralytics YOLO11ベンチマーク方法、デバイス間のパフォーマンス比較、スピード、精度、効率を最適化するためのさまざまなエクスポートフォーマットについてご紹介します。

今日、利用可能なAIモデルの数が増加しているため、特定のAIアプリケーションに最適なモデルを選択することは、正確で信頼性の高い結果を得るために不可欠です。各モデルには、速度、精度、全体的なパフォーマンスが異なります。では、どのモデルが与えられたタスクに最適かを判断するにはどうすればよいのでしょうか?これは、自律走行車、セキュリティ・ソリューション、ロボット工学など、迅速で信頼性の高い意思決定が重要なリアルタイム・システムにとって特に重要です。

ベンチマークは、さまざまな条件下でモデルを評価することで、この疑問に答えるのに役立ちます。様々なハードウェアのセットアップやコンフィギュレーションにおいて、モデルがどの程度のパフォーマンスを発揮するのかを知ることができ、より多くの情報に基づいた意思決定が可能になります。

例えば Ultralytics YOLO11は、オブジェクト検出やインスタンスのセグメンテーションなど、さまざまなビジュアルデータ分析タスクをサポートするコンピュータビジョンモデルです。その能力を完全に理解するには、さまざまなセットアップでそのパフォーマンスをベンチマークし、実世界のシナリオをどのように処理するかを確認することができます。

この記事では、YOLO11ようなUltralytics YOLO モデルをベンチマークし、様々なハードウェアでそのパフォーマンスを比較し、異なるエクスポートフォーマットがそのスピードと効率にどのような影響を与えるかを見る方法を探ります。さっそく始めましょう!

モデルベンチマークとは何か?

ビジョンAIのモデルを実世界のアプリケーションで使おうとするとき、それが十分に速く、正確で、信頼できるものであるかどうか、どうやって見分けることができるでしょうか?モデルをベンチマークすることで、これに答えるための洞察を得ることができます。モデルのベンチマークとは、さまざまなAIモデルをテストして比較し、どれが最高のパフォーマンスを発揮するかを確認するプロセスです。 

比較のためのベースラインを設定し、適切なパフォーマンス指標(精度やスピードなど)を選択し、すべてのモデルを同じ条件でテストします。その結果、各モデルの長所と短所が明らかになり、どのモデルが特定のAIソリューションに最適かを判断しやすくなります。特に、ベンチマーク・データセットは、公正な比較を提供し、異なる実世界のシナリオでモデルがどの程度うまく機能するかを評価するためによく使用されます。

図1.なぜコンピュータ・ビジョン・モデルをベンチマークするのか?画像は著者による

ベンチマークが重要である明確な例は、監視やロボット工学のようなリアルタイムアプリケーションで、わずかな遅延でも意思決定に影響を与える可能性があります。ベンチマークは、信頼性の高い予測を行いながら、モデルが画像を迅速に処理できるかどうかを評価するのに役立ちます。 

また、パフォーマンスのボトルネックを特定する上でも重要な役割を果たします。モデルの動作が遅かったり、リソースを過剰に使用している場合、ベンチマークを実施することで、その問題がハードウェアの制限に起因するものなのか、モデル構成に起因するものなのか、あるいはエクスポート形式に起因するものなのかを明らかにすることができます。これらの洞察は、最も効果的なセットアップを選択するために極めて重要です。

モデルのベンチマークとモデルの評価およびテストの比較

モデルのベンチマーク、評価、テストは、よく使われるAI用語で、一緒に使われる。似ていますが、これらは同じではなく、異なる機能を持っています。モデルテストは、テストデータセット上でモデルを実行し、精度や速度などの要素を測定することで、1つのモデルがどの程度優れているかをチェックします。一方、モデル評価ではさらに一歩進んで、結果を分析し、モデルの長所、短所、実際の状況でどの程度機能するかを理解します。どちらも、一度に1つのモデルだけに焦点を当てます。

しかし、モデルのベンチマークは、同じテストとデータセットを使って複数のモデルを並べて比較します。モデル間の精度、スピード、効率の違いを明らかにすることで、特定のタスクに最適なモデルを見つけるのに役立ちます。テストや評価が単一のモデルに焦点を当てるのに対し、ベンチマークはさまざまな選択肢を公平に比較することで、正しいモデル(または最良のモデル)を選ぶのに役立ちます。

図2.モデルのベンチマークと評価やテストとの違い。画像は筆者による

Ultralytics YOLO11概要

Ultralytics YOLO11 11は、様々なコンピュータビジョンタスクを正確に実行するように設計された、信頼性の高いビジョンAIモデルです。以前のYOLO モデルのバージョンを改良し、実世界の問題を解決するのに役立つ機能が満載されています。例えば、物体の検出、画像の分類、領域の分割、動きの追跡などに使用できます。また、セキュリティからオートメーション、分析に至るまで、さまざまな業界のアプリケーションで使用できます。

図3.YOLO11 使用して画像内の人物をセグメント化した例。

Ultralytics YOLO11 主な利点の1つは、その使いやすさです。わずか数行のコードで、複雑な設定や高度な技術的専門知識を扱うことなく、誰でもAIプロジェクトに統合することができます。 

また、CPU(中央演算処理装置)、GPU(グラフィックス・プロセッシング・ユニット)、その他の特殊なAIアクセラレータ上で効率的に動作し、異なるハードウェア間でスムーズに機能します。エッジデバイスでもクラウドサーバーでも、強力なパフォーマンスを発揮します。 

YOLO11 様々なモデルサイズがあり、それぞれ異なるタスクに最適化されています。ベンチマークは、どのバージョンがお客様の特定のニーズに最も適しているかを判断するのに役立ちます。例えば、ベンチマークによって明らかになる1つの重要な洞察は、nanoやsmallのような小さなモデルは、より速く動作する傾向があるが、精度を犠牲にする可能性があるということである。

YOLO11ようなYOLO モデルをベンチマークする方法

さて、ベンチマークとは何か、その重要性は理解できたと思います。YOLO11 ようなYOLO モデルをどのようにベンチマークし、その効率を評価し、貴重な洞察を集めることができるかを説明しよう。

まずは、ターミナルまたはコマンドプロンプトで以下のコマンドを実行して、Ultralytics Python パッケージをインストールしてください:"pip installultralytics".インストール中に何か問題が発生した場合は、トラブルシューティングのヒントとしてよくある問題ガイドをご覧ください。

パッケージがインストールされれば、数行のPython コードで簡単に YOLO11ベンチマークできる:

from ultralytics.utils.benchmarks import benchmark

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

上に示したコードを実行すると、モデルが画像を処理する速度、1秒間に処理できるフレーム数、オブジェクトを検出する精度が計算される。 

コード中に "coco8.yaml "とあるのは、COCO8(Common Objects in Context)データセットに基づくデータセット設定ファイルのことである。

YOLO11 交通監視や医療画像などの特定の用途でテストする場合、関連するデータセット(交通データセットや医療データセットなど)を使用すると、より正確な洞察が得られます。COCOを使ったベンチマークは、性能の一般的なアイデアを提供しますが、最良の結果を得るためには、実際のユースケースを反映したデータセットを選択することができます。

YOLO11 ベンチマーク出力の理解

YOLO11 ベンチマークが完了したら、次は結果の解釈だ。ベンチマークを実行すると、結果にさまざまな数値が表示されます。これらの指標は、YOLO11 正確さとスピードの面でどの程度のパフォーマンスを発揮しているかを評価するのに役立ちます。 

注目すべきYOLO11 ベンチマーク指標をいくつか紹介しよう:

  • mAP50-95:物体の検出精度を測定します。値が高いほど、モデルの物体認識能力が高いことを意味する。
  • accuracy_top5:分類タスクによく使われる。これは、正しいラベルが上位5つの予測に現れる頻度を示す。
  • 推論時間:1枚の画像を処理するのにかかる時間で、単位はミリ秒。値が小さいほど処理が速い。
図4.YOLO11ベンチマーク性能を示すグラフ。

YOLO11ベンチマークする際に考慮すべきその他の要因 

ベンチマークの結果だけを見ても、ストーリーの一部しかわかりません。パフォーマンスをよりよく理解するためには、さまざまな設定やハードウェアオプションを比較することが役に立つ。以下に、見るべき重要な点をいくつか挙げます:

  • GPU CPU比較: GPUはCPUよりもはるかに高速に画像を処理できます。ベンチマークを使えば、CPU 十分速いのか、GPU使った方が得なのかがわかります。
    ‍。
  • 精度設定(FP32、FP16、INT8): これらはモデルの数値処理方法を制御します。精度を低くすると(FP16やINT8など)、モデルの動作が速くなり、メモリ使用量も少なくなりますが、精度が若干低下する可能性があります。
  • エクスポート形式: モデルをTensorRT ようなフォーマットに変換することで、特定のハードウェア上でより高速に実行できるようになります。これは、特定のデバイスで速度を最適化する場合に便利です。

YOLO11 異なるハードウェアでベンチマークする方法

Ultralytics Python パッケージは、YOLO11 モデルを、特定のハードウェア上でより効率的に動作する異なるフォーマットに変換し、速度とメモリ使用量の両方を向上させることができます。各エクスポートフォーマットは、異なるデバイス用に最適化されています。 

一方では、ONNX フォーマットは様々な環境でパフォーマンスを高速化することができる。一方、OpenVINO Intel ハードウェアでの効率を向上させ、CoreML TF SavedModel ようなフォーマットはAppleデバイスやモバイルアプリケーションに最適です。 

YOLO11 特定のフォーマットでベンチマークする方法を見てみよう。以下のコードは、CPUとGPUの両方でAIモデルを実行するために広く使われているONNX フォーマットでYOLO11 ベンチマークしています。

from ultralytics.utils.benchmarks import benchmark  

# Benchmark a specific export format (e.g., ONNX)  
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, format="onnx")  

ベンチマークの結果だけでなく、適切なフォーマットを選択するかどうかは、システムの仕様や展開の必要性に左右される。例えば、自動運転車には高速な物体検出が必要です。パフォーマンスを高速化するためにNVIDIA GPUを使用する予定であれば、TensorRT フォーマットは、NVIDIA GPU上でYOLO11 実行するのに理想的な選択です。

図5.自動運転車の物体検出にYOLO11 使用。

要点

Ultralytics Python パッケージは、性能テストを処理する簡単なコマンドを提供することで、YOLO11 ベンチマークを簡単にします。いくつかのステップを踏むだけで、異なるセットアップがモデルのスピードと精度にどのような影響を与えるかを見ることができ、深い技術的な専門知識を必要とせずに、十分な情報に基づいた選択をするのに役立ちます。

また、適切なハードウェアと設定によっても大きな違いが生まれます。モデルサイズやデータセットなどのパラメーターを調整することで、ハイエンドGPU 実行する場合でも、エッジデバイスでローカルに実行する場合でも、YOLO11 微調整して最高のパフォーマンスを得ることができます。

私たちのコミュニティとつながり、GitHubリポジトリで最先端のAIプロジェクトを探索してください。農業における AI の影響と、製造業におけるコンピュータビジョンの役割について、当社のソリューションページで学んでください。当社のライセンスプランを検討し、今すぐAIの旅を始めましょう!

リンクトインのロゴツイッターのロゴFacebookのロゴコピー・リンク・シンボル

このカテゴリの続きを読む

AIの未来
を一緒に作りましょう!

機械学習の未来への旅を始めよう

OSZAR »