Weights & Biases を使用したYOLO実験のトラッキングと可視化
物体検出モデル(Ultralytics YOLO11など)は、多くのコンピュータビジョンアプリケーションに不可欠なものとなっています。ただし、これらの複雑なモデルのトレーニング、評価、およびデプロイには、いくつかの課題があります。主要なトレーニング指標の追跡、モデルのバリアントの比較、モデルの動作の分析、および問題の検出には、重要な計測と実験管理が必要です。
見る: Ultralytics YOLO11をWeights and Biasesとともに使用する方法
このガイドでは、実験の追跡、モデルのチェックポイント、モデルのパフォーマンスの視覚化を強化するために、Ultralytics YOLO11 と Weights & Biases の統合を紹介します。また、Weights & Biases のインタラクティブな機能を使用して、統合の設定、トレーニング、微調整、および結果の視覚化を行うための手順も含まれています。
Weights & Biases
Weights & Biasesは、機械学習実験の追跡、視覚化、および管理のために設計された、最先端のMLOpsプラットフォームです。完全な実験の再現性のためのトレーニングメトリックの自動ロギング、合理化されたデータ分析のためのインタラクティブなUI、およびさまざまな環境全体にデプロイするための効率的なモデル管理ツールを備えています。
Weights & Biasesを使用したYOLO11トレーニング
Weights & Biasesを使用して、YOLO11のトレーニングプロセスに効率と自動化をもたらすことができます。この統合により、実験の追跡、モデルの比較、およびデータに基づいた意思決定を行い、コンピュータビジョンプロジェクトを改善できます。
インストール
必要なパッケージをインストールするには、以下を実行します:
インストール
# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb
# Enable W&B logging for Ultralytics
yolo settings wandb=True
インストールプロセスに関する詳細な手順とベストプラクティスについては、YOLO11インストールガイドを必ずご確認ください。YOLO11に必要なパッケージのインストール中に問題が発生した場合は、よくある問題ガイドで解決策とヒントを参照してください。
Weights & Biasesの設定
必要なパッケージをインストールした後、次のステップはWeights & Biases環境の設定です。これには、Weights & Biasesアカウントの作成と、開発環境とW&Bプラットフォーム間のスムーズな接続に必要なAPIキーの取得が含まれます。
まず、ワークスペースで Weights & Biases 環境を初期化します。これを行うには、次のコマンドを実行し、表示される指示に従います。
SDKの初期設定
import wandb
# Initialize your Weights & Biases environment
wandb.login(key="YOUR_API_KEY")
# Initialize your Weights & Biases environment
wandb login YOUR_API_KEY
Weights & Biasesの認証ページに移動して、APIキーを作成し、取得してください。このキーを使用して、W&Bで環境を認証します。
使用方法: Weights & Biases を用いた YOLO11 のトレーニング
Weights & Biasesを使用したYOLO11モデルのトレーニングに関する使用方法の説明に入る前に、Ultralyticsが提供するYOLO11モデルの範囲を必ず確認してください。これは、プロジェクトの要件に最適なモデルを選択するのに役立ちます。
使用方法: Weights & Biases を用いた YOLO11 のトレーニング
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo11n.pt")
# Train and Fine-Tune the Model
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
# Train a YOLO11 model with Weights & Biases
yolo train data=coco8.yaml epochs=5 project=ultralytics name=yolo11n
W&B引数
引数 | デフォルト | 説明 |
---|---|---|
プロジェクト | None |
ローカルおよびW&Bに記録されるプロジェクトの名前を指定します。これにより、複数の実行をグループ化できます。 |
名前 | None |
トレーニング実行の名前。これは、サブフォルダーの作成に使用される名前と、W&B ロギングに使用される名前を決定します。 |
Weights & Biasesの有効化または無効化
UltralyticsでWeights & Biasesのログ記録を有効または無効にするには、以下を使用できます。 yolo settings
コマンドを使用します。デフォルトでは、Weights & Biasesのログ記録は無効になっています。
# Enable Weights & Biases logging
yolo settings wandb=True
# Disable Weights & Biases logging
yolo settings wandb=False
出力の理解
上記のサンプルコードを実行すると、次の主要な出力が予想されます。
- 新しい実行のセットアップと、トレーニングプロセスの開始を示す一意のID。
- レイヤー数やパラメータなど、モデルの構造の簡潔な概要。
- 各トレーニングエポック中の、box loss、cls loss、dfl loss、precision、recall、mAPスコアなどの重要な指標の定期的な更新。
- トレーニングの最後に、モデルの推論速度や全体的な精度メトリクスを含む詳細なメトリクスが表示されます。
- 詳細な分析と学習過程の可視化のためのWeights & Biasesダッシュボードへのリンクと、ローカルログファイルの場所に関する情報。
Weights & Biasesダッシュボードの表示
使用コードスニペットを実行した後、出力に表示されるリンクからWeights & Biases(W&B)ダッシュボードにアクセスできます。このダッシュボードでは、YOLO11を使用したモデルのトレーニングプロセスの包括的なビューを提供します。
Weights & Biasesダッシュボードの主な特徴
-
リアルタイムメトリクストラッキング: トレーニング中に損失、精度、検証スコアなどのメトリクスがどのように変化するかを観察し、モデル調整のための即時の洞察を提供します。Weights & Biases を使用して実験がどのように追跡されるかをご覧ください。
-
ハイパーパラメータ最適化: Weights & Biases は、学習率、バッチサイズなどの重要なパラメータの微調整を支援し、YOLO11 のパフォーマンスを向上させます。これにより、特定のデータセットとタスクに最適な構成を見つけることができます。
-
比較分析: このプラットフォームでは、さまざまなトレーニング実行を並べて比較できます。これは、さまざまなモデル構成の影響を評価し、どの変更がパフォーマンスを向上させるかを理解するために不可欠です。
-
トレーニングの進捗状況の可視化: 主要な指標をグラフィカルに表現することで、エポック全体のモデルのパフォーマンスを直感的に理解できます。Weights & Biasesが検証結果の可視化にどのように役立つかをご覧ください。
-
リソース監視: トレーニングプロセスの効率を最適化し、ワークフローの潜在的なボトルネックを特定するために、CPU、GPU、およびメモリの使用状況を追跡します。
-
モデルアーティファクト管理:モデルチェックポイントにアクセスして共有し、複雑なプロジェクトでの簡単なデプロイメントとチームメンバーとのコラボレーションを促進します。
-
画像オーバーレイによる推論結果の表示: Weights & Biasesのインタラクティブなオーバーレイを使用して、画像上の予測結果を視覚化し、実際のデータに対するモデルのパフォーマンスを明確かつ詳細に表示します。詳細については、Weights & Biasesの画像オーバーレイ機能を参照してください。
これらの機能を使用することで、YOLO11モデルのトレーニングを効果的に追跡、分析、最適化し、物体検出タスクで可能な限り最高のパフォーマンスと効率を確保できます。
概要
このガイドは、Ultralytics YOLOとWeights & Biasesの統合について説明しました。これは、この統合がモデルのトレーニングと予測の結果を効率的に追跡および視覚化する能力を示しています。W&Bの強力な機能を活用することで、機械学習ワークフローを合理化し、データに基づいた意思決定を行い、モデルのパフォーマンスを向上させることができます。
使用法の詳細については、Weights & Biases の公式ドキュメントにアクセスするか、YOLO VISION 2023 での Soumik Rakshit によるこの統合に関するプレゼンテーションをご覧ください。
また、Ultralytics統合ガイドページも必ずチェックして、MLflowやComet MLなどのさまざまなエキサイティングな統合について詳しく学んでください。
よくある質問
Weights & BiasesをUltralytics YOLO11と統合するにはどうすればよいですか?
Weights & BiasesをUltralytics YOLO11と統合するには:
-
必要なパッケージをインストール:
pip install -U ultralytics wandb yolo settings wandb=True
-
Weights & Biasesアカウントにログイン:
import wandb wandb.login(key="YOUR_API_KEY")
-
W&Bロギングを有効にしてYOLO11モデルを学習させます。
from ultralytics import YOLO model = YOLO("yolo11n.pt") model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
これにより、メトリクス、ハイパーパラメータ、およびモデルアーティファクトが自動的にW&Bプロジェクトに記録されます。
YOLO11とWeights & Biasesを統合した場合の主な特徴は何ですか?
主な機能は次のとおりです。
- トレーニング中のリアルタイムメトリクストラッキング
- ハイパーパラメータ最適化ツール
- 異なるトレーニング実行の比較分析
- グラフによるトレーニングの進捗状況の可視化
- リソース監視(CPU、GPU、メモリ使用量)
- モデルアーティファクトの管理と共有
- 画像オーバーレイによる推論結果の表示
これらの機能は、実験の追跡、モデルの最適化、およびYOLO11プロジェクトでのより効果的なコラボレーションに役立ちます。
YOLO11トレーニングのWeights & Biasesダッシュボードを表示するにはどうすればよいですか?
W&B統合でトレーニングスクリプトを実行した後:
- W&B ダッシュボードへのリンクは、コンソール出力に表示されます。
- リンクをクリックするか、wandb.aiにアクセスしてアカウントにログインしてください。
- プロジェクトに移動して、詳細なメトリクス、視覚化、およびモデルのパフォーマンスデータを表示します。
ダッシュボードでは、モデルのトレーニングプロセスに関する洞察が得られ、YOLO11モデルを効果的に分析および改善できます。
YOLO11 のトレーニングで Weights & Biases のログ記録を無効にできますか?
はい、W&Bのログ記録は、次のコマンドで無効にできます。
yolo settings wandb=False
ログ記録を再度有効にするには、以下を使用します:
yolo settings wandb=True
これにより、トレーニングスクリプトを変更せずに、W&Bロギングを使用するタイミングを制御できます。
Weights & Biasesは、YOLO11モデルの最適化にどのように役立ちますか?
Weights & Biases は、次の方法で YOLO11 モデルの最適化を支援します。
- トレーニング指標の詳細な可視化を提供します
- 異なるモデルバージョン間の簡単な比較を可能にする
- ハイパーパラメータ調整のためのツールを提供
- モデルパフォーマンスの共同分析が可能
- モデルのアーティファクトと結果を容易に共有
これらの機能は、研究者や開発者がより迅速に反復し、データに基づいた意思決定を行って、YOLO11モデルを改善するのに役立ちます。