コンテンツぞスキップ

YOLOv8 実隓の远跡ず可芖化の匷化Weights & Biases

のような物䜓怜出モデルは Ultralytics YOLOv8は、倚くのコンピュヌタ・ビゞョン・アプリケヌションに䞍可欠なものずなっおいる。しかし、このような耇雑なモデルのトレヌニング、評䟡、導入にはいく぀かの課題がありたす。䞻芁なトレヌニングメトリクスの远跡、モデルバリアントの比范、モデル動䜜の分析、問題の怜出には、倧芏暡な蚈枬ず実隓管理が必芁です。

このガむドでは、次の内容を玹介したす。 Ultralytics YOLOv8 ずの統合 Weights & Biases' を䜿甚しお、実隓の远跡、モデルのチェックポむント蚭定、およびモデルのパフォヌマンスの芖芚化を匷化したす。たた、統合の蚭定、トレヌニング、埮調敎、および結果の芖芚化の手順も含たれおいたす。 Weights & Biases' むンタラクティブ機胜。

Weights & Biases

Weights & Biases 抂芁

Weights & Biasesは、機械孊習実隓の远跡、可芖化、管理のために蚭蚈された最先端のMLOpsプラットフォヌムです。実隓の完党な再珟性を実珟するトレヌニングメトリクスの自動ロギング、合理化されたデヌタ分析のためのむンタラクティブなUI、様々な環境にデプロむするための効率的なモデル管理ツヌルを備えおいたす。

YOLOv8 トレヌニングWeights & Biases

YOLOv8 トレヌニング・プロセスの効率化ず自動化のために、Weights & Biases 。

むンストヌル

必芁なパッケヌゞをむンストヌルするには

むンストヌル

# Install the required packages for YOLOv8 and Weights & Biases
pip install --upgrade ultralytics==8.0.186 wandb

むンストヌルプロセスに関する詳现な説明ずベストプラクティスに぀いおは、YOLOv8 むンストヌルガむドをご芧ください。YOLOv8 に必芁なパッケヌゞをむンストヌルする際、䜕らかの問題が発生した堎合は、解決策やヒントに぀いお「よくある問題」ガむドを参照しおください。

蚭定Weights & Biases

必芁なパッケヌゞをむンストヌルしたら、次のステップはWeights & Biases 環境のセットアップです。これにはWeights & Biases アカりントの䜜成ず、開発環境ず W&B プラットフォヌムをスムヌズに接続するために必芁な API キヌの取埗が含たれたす。

たず、ワヌクスペヌスのWeights & Biases 環境を初期化したす。以䞋のコマンドを実行し、プロンプトの指瀺に埓っおください。

SDKの初期セットアップ

# Initialize your Weights & Biases environment
import wandb
wandb.login()

Weights & Biases 認蚌ペヌゞに移動し、API キヌを䜜成しお取埗したす。このキヌを䜿甚しお、W&B でお客様の環境を認蚌したす。

䜿い方トレヌニングYOLOv8 Weights & Biases

Weights & Biases を䜿ったYOLOv8 モデル・トレヌニングの䜿い方の説明に入る前に、 Ultralytics が提䟛するYOLOv8 モデルの数々を必ずチェックしおください。これは、あなたのプロゞェクトの芁件に最も適切なモデルを遞択するのに圹立ちたす。

䜿い方トレヌニングYOLOv8 Weights & Biases

import wandb
from wandb.integration.ultralytics import add_wandb_callback

from ultralytics import YOLO

# Initialize a Weights & Biases run
wandb.init(project="ultralytics", job_type="training")

# Load a YOLO model
model = YOLO("yolov8n.pt")

# Add W&B Callback for Ultralytics
add_wandb_callback(model, enable_model_checkpointing=True)

# Train and Fine-Tune the Model
model.train(project="ultralytics", data="coco8.yaml", epochs=5, imgsz=640)

# Validate the Model
model.val()

# Perform Inference and Log Results
model(["path/to/image1", "path/to/image2"])

# Finalize the W&B Run
wandb.finish()

コヌドを理解する

䞊蚘の䜿甚コヌドスニペットで玹介されおいる手順を理解したしょう。

  • ステップ 1Weights & Biases ランの初期化プロゞェクト名ずゞョブタむプを指定し、Weights & Biases 実行を初期化するこずから始める。このランは、モデルのトレヌニングおよび怜蚌プロセスを远跡および管理したす。

  • ステップ 2:YOLOv8 モデルずデヌタセットを定矩する䜿甚したいモデル・バリアントずデヌタセットを指定する。YOLO モデルが、指定されたモデル・ファむルで初期化されたす。

  • ステップ 3Weights & Biases Ultralytics のコヌルバックを远加するこのステップは、トレヌニング・メトリクスず怜蚌結果の自動ロギングをWeights & Biases 、モデルのパフォヌマンスの詳现なビュヌを提䟛するため、非垞に重芁です。

  • ステップ4モデルの蚓緎ず埮調敎指定されたデヌタセット、゚ポック数、画像サむズでモデルのトレヌニングを開始したす。トレヌニング・プロセスには、各゚ポックの終了時にメトリクスず予枬倀のロギングが含たれ、モデルの孊習進捗の包括的なビュヌを提䟛したす。

  • ステップ5モデルの怜蚌トレヌニングの埌、モデルを怜蚌する。このステップは、未知のデヌタに察するモデルのパフォヌマンスを評䟡し、その汎化可胜性を確保するために極めお重芁である。

  • ステップ6掚論の実行ず結果のログモデルは指定された画像に察しお予枬を実行したす。これらの予枬は、芖芚的なオヌバヌレむず掞察ずずもに、むンタラクティブな探玢のためにW&Bテヌブルに自動的に蚘録されたす。

  • ステップ 7: W&B の実行を確定したすこのステップでデヌタロギングを終了し、モデルのトレヌニングず怜蚌プロセスの最終状態をW&Bダッシュボヌドに保存したす。

アりトプットを理解する

䞊蚘のコヌド・スニペットを実行するず、次のような䞻な出力が期埅できる

  • トレヌニングプロセスの開始を瀺す䞀意のIDを持぀新しいランのセットアップ。
  • レむダヌやパラメヌタの数など、モデルの構造の簡朔な抂芁。
  • 各トレヌニング゚ポックにおいお、box loss、cls loss、dfl loss、precision、recall、mAPスコアなどの重芁なメトリクスが定期的に曎新される。
  • トレヌニングの最埌には、モデルの掚論速床や党䜓的な粟床のメトリクスを含む詳现なメトリクスが衚瀺されたす。
  • トレヌニングプロセスの詳现な分析ず芖芚化のためのWeights & Biases ダッシュボヌドぞのリンク、およびロヌカルのログファむルの堎所に関する情報。

Weights & Biases ダッシュボヌドの衚瀺

䜿甚法のコヌド・スニペットを実行した埌、出力にある提䟛されたリンクからWeights & Biases (W&B) ダッシュボヌドにアクセスするこずができたす。このダッシュボヌドでは、YOLOv8 を䜿ったモデルのトレヌニングプロセスを包括的に芋るこずができたす。

Weights & Biases ダッシュボヌドの䞻な機胜

  • リアルタむムのメトリクス远跡損倱、粟床、怜蚌スコアなどのメトリクスがトレヌニング䞭にどのように倉化するかを芳察し、モデルチュヌニングのための掞察を即座に提䟛したす。 Weights & Biases を 䜿甚した実隓の远跡方法をご芧ください。

  • ハむパヌパラメヌタの最適化:Weights & Biases は、孊習率やバッチサむズなどの重芁なパラメヌタを埮調敎し、YOLOv8 のパフォヌマンスを向䞊させるのに圹立ちたす。

  • 比范分析このプラットフォヌムでは、さたざたなモデル構成の圱響を評䟡するために䞍可欠な、異なるトレヌニング実行の暪䞊び比范が可胜です。

  • トレヌニング進捗の芖芚化䞻芁なメトリクスをグラフィカルに衚瀺するこずで、゚ポックにわたるモデルのパフォヌマンスを盎感的に理解するこずができたす。 Weights & Biases が怜蚌結果の芖芚化にどのように圹立぀かをご芧ください。

  • リ゜ヌスのモニタリングトレヌニングプロセスの効率を最適化するために、CPU 、GPU 、メモリ䜿甚量を远跡したす。

  • モデル成果物の管理モデルのチェックポむントにアクセスしお共有し、展開やコラボレヌションを容易にしたす。

  • 画像オヌバヌレむによる掚論結果の衚瀺Weights & Biases のむンタラクティブなオヌバヌレむを䜿甚しお、画像䞊で予枬結果を芖芚化。Weights & Biases' 画像オヌバヌレむ機胜の詳现に぀いおは、こちらのリンクをご芧ください。 Weights & Biases' 画像オヌバヌレむがモデルの掚論をどのように芖芚化するかをご芧ください。

これらの機胜を䜿甚するこずで、YOLOv8 モデルのトレヌニングを効果的に远跡、分析、最適化し、最高のパフォヌマンスず効率を実珟するこずができたす。

抂芁

このガむドは、探玢に圹立ちたした Ultralytics' YOLOv8 ずの統合 Weights & Biases.これは、モデルのトレヌニングず予枬の結果を効率的に远跡および芖芚化するこの統合の機胜を瀺しおいたす。

䜿い方の詳现に぀いおは、Weights & Biases'公匏ドキュメントをご芧ください。

たた、Ultralytics の統合ガむドペヌゞで、さたざたな゚キサむティングな統合に぀いお詳しくご芧ください。

よくあるご質問

YOLOv8 ずWeights & Biases に必芁なパッケヌゞのむンストヌル方法は

YOLOv8 ずWeights & Biases に必芁なパッケヌゞをむンストヌルするには、コマンドラむンむンタヌフェむスを開いお実行する

pip install --upgrade ultralytics==8.0.186 wandb

むンストヌル手順の詳现に぀いおは、YOLOv8 むンストヌルガむドを参照しおください。問題が発生した堎合、トラブルシュヌティングのヒントに぀いおは、「よくある問題」ガむドを参照しおください。

Ultralytics YOLOv8 をWeights & Biases ず統合する利点は

Ultralytics YOLOv8 をWeights & Biases ず統合するず、以䞋のような利点がある

  • リアルタむムのメトリクス远跡トレヌニング䞭の指暙の倉化を芳察し、即座に掞察を埗るこずができたす。
  • ハむパヌパラメヌタの最適化孊習率やバッチサむズなどを埮調敎するこずで、モデルのパフォヌマンスを向䞊させたす。
  • 比范分析異なるトレヌニングの実行を䞊べお比范。
  • リ゜ヌス監芖 CPU,GPU, メモリ䜿甚量を远跡。
  • モデル成果物の管理モデルのチェックポむントに簡単にアクセスし、共有するこずができたす。

これらの機胜の詳现に぀いおは、䞊蚘のWeights & Biases ダッシュボヌドのセクションを参照しおください。

YOLOv8 トレヌニング甚にWeights & Biases を蚭定するにはどうすればよいですか

YOLOv8 トレヌニング甚にWeights & Biases を蚭定するには、以䞋の手順に埓う

  1. Weights & Biases を初期化するコマンドを実行する
    import wandb
    wandb.login()
    
  2. Weights & Biases りェブサむトからAPIキヌを取埗したす。
  3. APIキヌを䜿甚しお開発環境を認蚌したす。

詳现な蚭定方法は、䞊蚘の「Weights & Biases の蚭定」セクションに蚘茉されおいたす。

Weights & Biases を䜿っおYOLOv8 モデルをトレヌニングするには

Weights & Biases を䜿甚しおYOLOv8 モデルをトレヌニングするには、Python スクリプトで以䞋の手順を䜿甚する

import wandb
from wandb.integration.ultralytics import add_wandb_callback

from ultralytics import YOLO

# Initialize a Weights & Biases run
wandb.init(project="ultralytics", job_type="training")

# Load a YOLO model
model = YOLO("yolov8n.pt")

# Add W&B Callback for Ultralytics
add_wandb_callback(model, enable_model_checkpointing=True)

# Train and Fine-Tune the Model
model.train(project="ultralytics", data="coco8.yaml", epochs=5, imgsz=640)

# Validate the Model
model.val()

# Perform Inference and Log Results
model(["path/to/image1", "path/to/image2"])

# Finalize the W&B Run
wandb.finish()

このスクリプトは、Weights & Biases を初期化し、モデルをセットアップし、トレヌニングし、結果をログに蚘録したす。詳现に぀いおは、䞊蚘の䜿甚法のセクションをご芧ください。

なぜ他のプラットフォヌムではなく、Weights & Biases でUltralytics YOLOv8 を䜿うべきなのですか

Ultralytics YOLOv8 Weights & Biases 

  • 高効率トレヌニング指暙をリアルタむムで远跡し、パフォヌマンスを最適化。
  • 拡匵性堅牢なリ゜ヌス監芖および利甚ツヌルにより、倧芏暡なトレヌニングゞョブを容易に管理できたす。
  • むンタラクティブ性デヌタの可芖化ずモデル管理のためのナヌザヌフレンドリヌなむンタラクティブUI。
  • コミュニティずサポヌト匷力な統合ドキュメントずコミュニティサポヌト、柔軟なカスタマむズず拡匵オプション。

Comet やClearML のような他のプラットフォヌムずの比范に぀いおは、Ultralytics 統合 を参照。



䜜成日2023-12-28 曎新日2024-07-05
䜜成者glenn-jocher(10),ambitious-octopus(1),IvorZhu331(1),abirami-vina(1)

コメント