コンテンツへスキップ

Ultralytics YOLOv8 モード

Ultralytics YOLO エコシステムと統合

はじめに

Ultralytics YOLOv8 は単なる物体検出モデルではなく、データの取り込みやモデルのトレーニングから、検証、デプロイメント、実世界での追跡まで、機械学習モデルのライフサイクル全体をカバーするように設計された汎用性の高いフレームワークです。それぞれのモードは特定の目的に対応し、異なるタスクやユースケースに必要な柔軟性と効率性を提供するように設計されています。



見るんだ: Ultralytics モードチュートリアル:トレーニング、検証、予測、エクスポート、ベンチマーク。

モード一覧

Ultralytics YOLOv8 がサポートするさまざまなモードを理解することは、モデルを最大限に活用するために非常に重要です:

  • Trainモード:カスタムまたはプリロードされたデータセットでモデルを微調整します。
  • Valモード:モデルのパフォーマンスを検証するためのトレーニング後のチェックポイント。
  • 予測モード:実世界のデータからモデルの予測力を引き出します。
  • エクスポートモード:モデルを様々なフォーマットでデプロイできるようにします。
  • 追跡モード:オブジェクト検出モデルをリアルタイムの追跡アプリケーションに拡張します。
  • ベンチマークモード:様々な展開環境でモデルの速度と精度を分析します。

この包括的なガイドは、各モードの概要と実践的な洞察を提供し、YOLOv8 の可能性を最大限に活用できるようにすることを目的としています。

電車

Trainモードは、カスタムデータセットでYOLOv8 モデルの学習に使用します。このモードでは、指定されたデータセットとハイパーパラメータを使用してモデルがトレーニングされます。学習プロセスでは、画像内のオブジェクトのクラスと位置を正確に予測できるように、モデルのパラメータを最適化します。

列車の例

バル

Valモードは、YOLOv8 モデルが学習された後の検証に使用される。このモードでは、モデルの精度と汎化性能を測定するために、モデルが検証集合で評価される。このモードは、モデルの性能を向上させるために、モデルのハイパーパラメータを調整するために使用できます。

バルの例

予測する

Predict(予測)モードは、新しい画像やビデオに対して学習されたYOLOv8 モデルを使用して予測を行うために使用されます。このモードでは、モデルはチェックポイントファイルからロードされ、ユーザーは推論を実行するために画像やビデオを提供することができます。モデルは、入力画像またはビデオ内のオブジェクトのクラスと位置を予測します。

例を予測する

輸出

エクスポートモードは、YOLOv8 のモデルを配備に使用できる形式にエクスポートするために使用します。このモードでは、モデルは他のソフトウェア・アプリケーションやハードウェア・デバイスで使用できる形式に変換されます。このモードは、モデルを本番環境に配備する際に便利です。

輸出の例

トラック

トラックモードは、YOLOv8 モデルを使ってリアルタイムでオブジェクトを追跡するために使用されます。このモードでは、モデルはチェックポイントファイルからロードされ、ユーザーはライブビデオストリームを提供してリアルタイムのオブジェクトトラッキングを実行することができます。このモードは、監視システムや自動運転車などのアプリケーションに便利です。

トラック例

ベンチマーク

ベンチマークモードは、YOLOv8 の様々なエクスポートフォーマットの速度と精度のプロファイリングに使用されます。ベンチマークは、エクスポートされたフォーマットのサイズ、その mAP50-95 メトリクス(物体検出、セグメンテーション、ポーズ用)または accuracy_top5 メトリックス(分類用)、およびONNX,OpenVINO,TensorRT などの様々なエクスポート・フォーマットにおける画像ごとの推論時間(ミリ秒)。この情報は、ユーザーが速度と精度の要件に基づいて、特定のユースケースに最適なエクスポート形式を選択するのに役立ちます。

ベンチマーク例

よくあるご質問

Ultralytics YOLOv8 を使ってカスタムオブジェクト検出モデルをトレーニングするには?

Ultralytics YOLOv8 でカスタムオブジェクト検出モデルをトレーニングするには、train モードを使用します。画像と対応するアノテーションファイルを含む、YOLO フォーマットのデータセットが必要です。以下のコマンドを使用して学習プロセスを開始します:

from ultralytics import YOLO

# Train a custom model
model = YOLO("yolov8n.pt")
model.train(data="path/to/dataset.yaml", epochs=100, imgsz=640)
yolo train data=path/to/dataset.yaml epochs=100 imgsz=640

より詳細な手順については、Ultralytics Train Guideをご参照ください。

Ultralytics YOLOv8 は、モデルのパフォーマンスを検証するためにどのような指標を使用していますか?

Ultralytics YOLOv8 は、モデルの性能を評価するために、検証プロセスでさまざまなメトリクスを使用する。これには以下のようなものがある:

  • mAP(平均平均精度):物体検出の精度を評価する。
  • IOU(Intersection over Union):予測されたバウンディングボックスとグランドトゥルースのバウンディングボックスの重なりを測定する。
  • 精度と再現率:プレシジョンは検出された陽性の総数に対する真陽性検出の比率を測定し、リコールは実際の陽性の総数に対する真陽性検出の比率を測定する。

以下のコマンドを実行して検証を開始することができる:

from ultralytics import YOLO

# Validate the model
model = YOLO("yolov8n.pt")
model.val(data="path/to/validation.yaml")
yolo val data=path/to/validation.yaml

詳細はバリデーションガイドを参照。

デプロイ用にYOLOv8 モデルをエクスポートするにはどうすればよいですか?

Ultralytics YOLOv8 にはエクスポート機能があり、学習済みモデルをONNX,TensorRT,CoreML などのさまざまな展開形式に変換することができます。モデルをエクスポートするには、以下の例を使用します:

from ultralytics import YOLO

# Export the model
model = YOLO("yolov8n.pt")
model.export(format="onnx")
yolo export model=yolov8n.pt format=onnx

各エクスポートフォーマットの詳細な手順は、エクスポートガイドに記載されています。

Ultralytics YOLOv8 のベンチマークモードの目的は何ですか?

Ultralytics YOLOv8 のベンチマーク・モードは、ONNX 、TensorRT 、OpenVINO などのさまざまなエクスポート形式の速度と精度を分析するために使用されます。モデル・サイズのようなメトリクスを提供します、 mAP50-95 オブジェクト検出、推論時間など、さまざまなハードウェア・セットアップに対応し、導入ニーズに最適なフォーマットを選択できます。

from ultralytics.utils.benchmarks import benchmark

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

詳細はベンチマークガイドを参照。

Ultralytics YOLOv8 を使ってリアルタイムのオブジェクト・トラッキングを行うには?

リアルタイムのオブジェクト追跡は、Ultralytics YOLOv8 のトラックモードを使用して実現できます。このモードは、オブジェクト検出機能を拡張し、ビデオフレームまたはライブフィード全体にわたってオブジェクトを追跡します。トラッキングを有効にするには、以下の例を使用します:

from ultralytics import YOLO

# Track objects in a video
model = YOLO("yolov8n.pt")
model.track(source="path/to/video.mp4")
yolo track source=path/to/video.mp4

詳しい説明はトラックガイドをご覧ください。



作成日:2023-11-12 更新日:2024-07-04
作成者:glenn-jocher(6)

コメント