PaddleDetection

PaddleDetection と W&B の統合方法。

PaddleDetection は、PaddlePaddle に基づくエンドツーエンドの オブジェクト検出開発キットです。ネットワークコンポーネント、データ拡張、損失などの構成可能なモジュールを使用して、さまざまな主流のオブジェクトを検出し、インスタンスをセグメント化し、キーポイントを追跡および検出します。

PaddleDetection には、すべての トレーニング および 検証 メトリクスに加えて、モデル チェックポイント とそれに対応する メタデータ をログに記録する、組み込みの W&B インテグレーションが含まれています。

PaddleDetection WandbLogger は、トレーニング 中にトレーニング および 評価 メトリクス を Weights & Biases に ログ 記録するだけでなく、モデル チェックポイント も ログ 記録します。

W&B の ブログ 記事を読む。この記事では、COCO2017 データセット の サブセット で、YOLOX モデル を PaddleDetection と 統合 する方法について説明します。

サインアップ して APIキー を作成する

APIキー は、W&B に対して マシン を 認証 します。APIキー は、 ユーザー プロフィールから生成できます。

  1. 右上隅にある ユーザー プロフィール アイコンをクリックします。
  2. ユーザー 設定 を選択し、APIキー セクションまでスクロールします。
  3. 表示 をクリックします。表示された APIキー をコピーします。APIキー を非表示にするには、ページをリロードしてください。

wandb ライブラリ を インストール して ログイン する

wandb ライブラリ をローカルに インストール して ログイン するには:

  1. WANDB_API_KEY 環境変数 を APIキー に設定します。

    export WANDB_API_KEY=<your_api_key>
    
  2. wandb ライブラリ を インストール して ログイン します。

    pip install wandb
    
    wandb login
    
pip install wandb
import wandb
wandb.login()
!pip install wandb

import wandb
wandb.login()

トレーニング スクリプト で WandbLogger をアクティブにする

PaddleDetectiontrain.py への 引数 を介して wandb を使用するには:

  • --use_wandb フラグを追加します
  • 最初の wandb 引数 は -o を前に付ける必要があります (これは一度だけ渡す必要があります)
  • 個々の wandb 引数 には、プレフィックス wandb- が含まれている必要があります。たとえば、wandb.init に渡される 引数 には、wandb- プレフィックス が付きます。
python tools/train.py 
    -c config.yml \ 
    --use_wandb \
    -o \ 
    wandb-project=MyDetector \
    wandb-entity=MyTeam \
    wandb-save_dir=./logs

wandb キー の下の config.yml ファイル に wandb 引数 を追加します。

wandb:
  project: MyProject
  entity: MyTeam
  save_dir: ./logs

train.py ファイル を実行すると、W&B ダッシュボード への リンク が生成されます。

A Weights & Biases Dashboard

フィードバック または 問題点

Weights & Biases インテグレーション に関する フィードバック や 問題 がある場合は、PaddleDetection GitHub で 問題 を提起するか、support@wandb.com にメールを送信してください。