PaddleOCR

PaddleOCR と W&B を統合する方法。

PaddleOCR は、多言語対応で素晴らしく、実用的でユーザーがより良いモデルをトレーニングし、PaddlePaddleで実践的に適用できるOCRツールの作成を目指しています。PaddleOCRはOCRに関連するさまざまな最先端のアルゴリズムをサポートし、産業用ソリューションを開発しました。PaddleOCRにはWeights & Biasesのインテグレーションがあり、トレーニングと評価メトリクスをログに記録し、対応するメタデータとともにモデルのチェックポイントを保存できます。

例: ブログ & Colab

PaddleOCRでICDAR2015データセットを使ってモデルをトレーニングする方法を知るには、こちらをお読みください。さらにGoogle Colabも提供されており、対応するライブW&Bダッシュボードはこちらで利用できます。このブログの中国語バージョンもこちらで利用できます: W&B对您的OCR模型进行训练和调试

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

APIキーは、W&Bへの認証に使われます。APIキーはユーザーのプロファイルから生成できます。

  1. 右上のユーザープロファイルアイコンをクリックします。
  2. User Settingsを選択し、API Keysセクションまでスクロールします。
  3. Revealをクリックします。表示された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()

config.ymlファイルにwandbを追加する

PaddleOCRでは設定変数をyamlファイルで提供する必要があります。設定yamlファイルの最後に次のスニペットを追加することで、すべてのトレーニングおよびバリデーションメトリクスをW&Bダッシュボードに自動的にログ記録するとともに、モデルのチェックポイントも保存されます:

Global:
    use_wandb: True

wandb.initに渡したい追加の任意の引数は、yamlファイルのwandbヘッダーの下に追加することもできます:

wandb:  
    project: CoolOCR  # (optional) これはwandbプロジェクト名です
    entity: my_team   # (optional) wandbチームを使っている場合、ここでチーム名を渡すことができます
    name: MyOCRModel  # (optional) これはwandb runの名前です

config.ymlファイルをtrain.pyに渡す

yamlファイルは、PaddleOCRリポジトリ内で利用可能なトレーニングスクリプトへの引数として提供されます。

python tools/train.py -c config.yml

Weights & Biasesをオンにしてtrain.pyファイルを実行するとき、W&Bダッシュボードへのリンクが生成されます:

W&B Dashboard for the Text Detection Model

フィードバックや問題点

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