YOLO Vision 2025にご期待ください!
2025年9月25日
10:00 — 18:00(英国夏時間)
ハイブリッドイベント
Yolo Vision 2024

Ultralytics YOLOモデルでトレーニング、検証、予測、エクスポート、およびベンチマークを行う方法

Nuvola Ladi

3分で読めます

2024年7月24日

Ultralytics YOLOモデルを使用した学習、検証、予測、エクスポート、およびベンチマークの方法を学びます。

Ultralyticsの世界に飛び込み、さまざまなYOLOモデルで利用できるさまざまなモードを探ってみましょう。カスタムの物体検出モデルをトレーニングする場合でも、セグメンテーションに取り組む場合でも、これらのモードを理解することは重要なステップです。早速始めましょう!

Ultralyticsのドキュメントを通じて、モデルで使用できるいくつかのモードが見つかります。それは、トレーニング検証予測エクスポートベンチマーク、または追跡です。これらの各モードは、独自の目的を果たし、モデルのパフォーマンスとデプロイメントを最適化するのに役立ちます。

学習モード

まず、trainモードを見てみましょう。ここでは、モデルを構築および改良します。詳細な手順とビデオガイドはドキュメントに記載されており、カスタムモデルのトレーニングを簡単に開始できます。

モデルトレーニングでは、モデルに新しいデータセットを提供し、さまざまなパターンを学習させます。トレーニングが完了すると、モデルはリアルタイムで使用して、トレーニングされた新しいオブジェクトを検出できます。トレーニングプロセスを開始する前に、データセットにYOLO形式でアノテーションを付けることが重要です。

検証モード

次に、validateモードについて詳しく見ていきましょう。検証は、ハイパーパラメータを調整し、モデルが適切に機能することを保証するために不可欠です。Ultralyticsは、自動設定、マルチメトリックサポート、Python APIとの互換性など、さまざまな検証オプションを提供します。以下のコマンドを使用して、コマンドラインインターフェース(CLI)から直接検証を実行することもできます。

なぜ検証するのか?

検証は以下にとって重要です:

  • Precision(精度):モデルがオブジェクトを正確に検出することを保証します。
  • 利便性: 検証プロセスを効率化します。
  • 柔軟性: 複数の検証方法を提供します。
  • ハイパーパラメータ調整: より良いパフォーマンスのためにモデルを最適化します。

Ultralyticsは、Pythonスクリプトにコピー&ペーストできるユーザーの例も提供しています。これらの例には、画像サイズ、バッチサイズ、デバイス(CPUまたはGPU)、Intersection over Union(IoU)などのパラメータが含まれています。

予測モード

モデルのトレーニングと検証が完了したら、予測を行います。予測モードでは、新しいデータで推論を実行し、モデルの動作を確認できます。このモードは、実際のデータでモデルのパフォーマンスをテストするのに最適です。

以下のPythonコードスニペットを使用すると、画像で予測を実行できます。

エクスポートモード

検証と予測の後、モデルをデプロイする必要がある場合があります。エクスポートモードを使用すると、モデルをONNXやTensorRTなどのさまざまな形式に変換できるため、さまざまなプラットフォームへのデプロイが容易になります。

ベンチマークモード

最後に、ベンチマークモードがあります。ベンチマークは、さまざまなシナリオでモデルのパフォーマンスを評価するために不可欠です。このモードは、リソースの割り当て、最適化、およびコスト効率に関する情報に基づいた意思決定を行うのに役立ちます。

ベンチマークの方法

ベンチマークを実行するには、ドキュメントに記載されているユーザーの例を使用できます。これらの例では、主要な指標と、ONNXやTensorRTなどのエクスポート形式について説明しています。また、整数量子化(INT8)や浮動小数点量子化(FP16)などのパラメータを指定して、さまざまな設定がパフォーマンスにどのように影響するかを確認することもできます。

実世界のベンチマーク例

ベンチマークの実際の例を見てみましょう。PyTorchモデルをベンチマークすると、RTX 3070 GPUで68ミリ秒の推論速度が得られます。TorchScriptにエクスポートすると、推論速度は4ミリ秒に低下し、大幅な改善が見られます。

ONNXモデルの場合、21ミリ秒の推論速度を達成しています。これらのモデルをCPU(Intel i9第13世代)でテストすると、結果は異なります。TorchScriptは115ミリ秒で実行されますが、ONNXは84ミリ秒でより優れたパフォーマンスを発揮します。最後に、Intelハードウェア向けに最適化されたOpenVINOは、驚異的な23ミリ秒を達成します。

__wf_reserved_inherit
図1. Nicolai NielsenがUltralytics YOLOモデルでベンチマークを実行する方法を実演しています。

ベンチマークの重要性

ベンチマークは、異なるハードウェアおよびエクスポート形式がモデルのパフォーマンスにどのように影響するかを示します。特にカスタムハードウェアまたはエッジデバイスにデプロイする場合は、モデルをベンチマークすることが重要です。このプロセスにより、モデルがターゲット環境に最適化され、可能な限り最高のパフォーマンスが提供されます。

結論

要約すると、Ultralyticsドキュメントのモードは、YOLOモデルをトレーニング、検証、予測、エクスポート、およびベンチマークするための強力なツールです。各モードは、モデルを最適化し、デプロイメントの準備をする上で重要な役割を果たします。

ぜひ、当社のコミュニティを探求し、参加して、提供されているコードスニペットをあなたのプロジェクトで試してみてください。これらのツールを使用することで、高性能なモデルを作成し、あらゆる環境で効率的に実行できるようになります。

AIの未来を
共に築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。

無料ではじめる
クリップボードにコピーしました