Ultralytics
2 minute read
Ultralytics は、画像分類、オブジェクト検出、画像セグメンテーション、姿勢推定などのタスクのための、最先端のコンピュータビジョン モデルの本拠地です。リアルタイムオブジェクト検出モデルの YOLO シリーズの最新版である YOLOv8 をホストするだけでなく、SAM (Segment Anything Model)、RT-DETR、YOLO-NAS などの他の強力なコンピュータビジョン モデルもホストしています。これらのモデルの実装を提供するだけでなく、Ultralytics は、使いやすい API を使用してこれらのモデルをトレーニング、ファインチューン、および適用するための、すぐに使える ワークフローも提供します。
始めましょう
-
ultralytics
とwandb
をインストールします。```shell pip install --upgrade ultralytics==8.0.238 wandb # or # conda install ultralytics ```
```bash !pip install --upgrade ultralytics==8.0.238 wandb ```
開発チームは、
ultralyticsv8.0.238
以下のバージョンとの インテグレーションをテストしました。インテグレーションに関する問題点を報告するには、yolov8
タグを付けて GitHub issue を作成してください。
実験管理の追跡と検証結果の可視化
このセクションでは、トレーニング、ファインチューン、および検証に Ultralytics モデルを使用し、W&B を使用して実験管理の追跡、モデルのチェックポイント、およびモデルのパフォーマンスの可視化を実行する典型的なワークフローを示します。
この レポートで インテグレーションについて確認することもできます。W&B で Ultralytics を強化する
Ultralytics で W&B インテグレーションを使用するには、wandb.integration.ultralytics.add_wandb_callback
関数をインポートします。
import wandb
from wandb.integration.ultralytics import add_wandb_callback
from ultralytics import YOLO
選択した YOLO
モデルを初期化し、モデルで推論を実行する前に、そのモデルで add_wandb_callback
関数を呼び出します。これにより、トレーニング、ファインチューン、検証、または推論を実行すると、実験 ログと画像が自動的に保存され、W&B 上の コンピュータビジョン タスクのインタラクティブなオーバーレイ を使用して、グラウンドトゥルースとそれぞれの予測結果が重ねられ、追加の洞察が wandb.Table
にまとめられます。
# Initialize YOLO Model
model = YOLO("yolov8n.pt")
# Add W&B callback for Ultralytics
add_wandb_callback(model, enable_model_checkpointing=True)
# Train/fine-tune your model
# At the end of each epoch, predictions on validation batches are logged
# to a W&B table with insightful and interactive overlays for
# computer vision tasks
model.train(project="ultralytics", data="coco128.yaml", epochs=5, imgsz=640)
# Finish the W&B run
wandb.finish()
Ultralytics のトレーニングまたはファインチューン ワークフローのために W&B を使用して追跡された実験は、次のようになります。
YOLO Fine-tuning Experiments
W&B Table を使用して、エポックごとの検証結果を可視化する方法を次に示します。
WandB Validation Visualization Table
予測結果の可視化
このセクションでは、推論に Ultralytics モデルを使用し、W&B を使用して結果を可視化する典型的なワークフローを示します。
Google Colab でコードを試すことができます:Open in Colab。
この レポートで インテグレーションについて確認することもできます。W&B で Ultralytics を強化する
Ultralytics で W&B インテグレーションを使用するには、wandb.integration.ultralytics.add_wandb_callback
関数をインポートする必要があります。
import wandb
from wandb.integration.ultralytics import add_wandb_callback
from ultralytics.engine.model import YOLO
インテグレーションをテストするために、いくつかの画像をダウンロードします。静止画像、ビデオ、またはカメラ ソースを使用できます。推論ソースの詳細については、Ultralytics のドキュメント を確認してください。
!wget https://raw.githubusercontent.com/wandb/examples/ultralytics/colabs/ultralytics/assets/img1.png
!wget https://raw.githubusercontent.com/wandb/examples/ultralytics/colabs/ultralytics/assets/img2.png
!wget https://raw.githubusercontent.com/wandb/examples/ultralytics/colabs/ultralytics/assets/img4.png
!wget https://raw.githubusercontent.com/wandb/examples/ultralytics/colabs/ultralytics/assets/img5.png
次に、wandb.init
を使用して W&B run を初期化します。
# Initialize W&B run
wandb.init(project="ultralytics", job_type="inference")
次に、目的の YOLO
モデルを初期化し、モデルで推論を実行する前に、そのモデルで add_wandb_callback
関数を呼び出します。これにより、推論を実行すると、コンピュータビジョン タスクのインタラクティブなオーバーレイ でオーバーレイされた画像が自動的にログに記録され、追加の洞察が wandb.Table
にまとめられます。
# Initialize YOLO Model
model = YOLO("yolov8n.pt")
# Add W&B callback for Ultralytics
add_wandb_callback(model, enable_model_checkpointing=True)
# Perform prediction which automatically logs to a W&B Table
# with interactive overlays for bounding boxes, segmentation masks
model(
[
"./assets/img1.jpeg",
"./assets/img3.png",
"./assets/img4.jpeg",
"./assets/img5.jpeg",
]
)
# Finish the W&B run
wandb.finish()
トレーニングまたはファインチューン ワークフローの場合、wandb.init()
を使用して run を明示的に初期化する必要はありません。ただし、コードに予測のみが含まれる場合は、run を明示的に作成する必要があります。
インタラクティブな bbox オーバーレイは次のようになります。
WandB Image Overlay
W&B 画像オーバーレイの詳細については、こちら を参照してください。
その他のリソース
[i18n] feedback_title
[i18n] feedback_question
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.