精度チェッカー用のカスタム・エバリュエーター¶
標準精度チェッカーの検証パイプライン: アノテーションの読み取り -> データの読み取り -> 前処理 -> 推論 -> 後処理 -> メトリック。状況によっては、それが不適切である可能性があります (例: モデルのシーケンスがある場合)。独自のエバリュエーターを使用して検証パイプラインをカスタマイズできます。検証アプローチを説明する Python モジュールの作成に基づく推奨アプローチ
実装¶
新しい評価プロセスの追加は、ツール内の他のエンティティーの追加と同様です。カスタムエバリュエーターは BaseCustomEvaluator を継承して、エバリュエーターに必要なメソッドを上書きするクラスです。
上書きに最も重要な方法は次のとおりです。
from_configs
- 構成辞書を使用して新しいインスタンスを作成します。_process
- データセット内のすべてのデータバッチでの検証サイクルを決定します。
構成¶
各カスタム評価構成はキーワード evaluation
で始まり、次の内容を含む必要があります。
name
- モデル名-
module
- ロード用の評価モジュール。実行する前に、モジュールのプリフィクスが Python パスに追加されていることを確認するか、設定でpython_path
パラメーターを指定してください。オプションで、カスタム・エバリュエーターの構成を含むmodule_config
セクションを提供できます (実装に応じて、エバリュエーター固有のパラメーターを含めることができます)。
例¶
-
Sequential Action Recognition Evaluator は、エンコーダー + デコーダー・アーキテクチャーを使用して行動認識モデルを実行する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/sequential_action_recognition_evaluator.py
。設定ファイルの例:<omz_dir>/models/intel/action-recognition-0001/accuracy-check.yml
。 -
MTCNN エバリュエーター は、MTCNN モデルを実行する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/mtcnn_evaluator.py
。 -
テキスト・スポッティング・エバリュエーターは、精度チェッカーを介して
text-spotting-0005
モデルを評価する方法を示します。エバリュエーター・コード:<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/text_spotting_evaluator.py
。設定ファイルの例:<omz_dir>/models/intel/text-spotting-0005/accuracy-check.yml
。 -
自動音声認識エバリュエーターは、音声認識パイプライン (エンコーダー + デコーダー) を評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/asr_encoder_decoder_evaluator.py
。 -
3 ウェイ自動音声認識エバリュエーターは、音声認識パイプライン (エンコーダー + 予測 + ジョイント) を評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/asr_encoder_prediction_joint_evaluator.py
。 -
Im2latex 式認識は、画像から Latex 式を抽出するエンコーダー/デコーダーモデルを実行する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/custom_text_recognition_evaluator.py
。設定ファイルの例:<omz_dir>/models/intel/formula-recognition-medium-scan-0001/accuracy-check.yml
。 -
I3D エバリュエーターは、2 ストリーム I3D モデル (RGB + フロー) を評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/i3d_evaluator.py
。 -
テキスト読み上げエバリュエーターは、Forward Tacotron および MelGAN アップサンプラーのテキスト読み上げパイプラインを評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/text_to_speech_evaluator.py
。 -
LPCNet エバリュエーターは、LPCNet ボコーダー・パイプラインを評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/lpcnet_evaluator.py
。 -
ビデオ SR エバリュエーターは、モデル出力から次のステップのモデル入力へのフィードバック・データを使用して超解像度モデルを評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/sr_evaluator.py
。 -
Tacotron2 エバリュエーターは、テキスト読み上げタスクのカスタム Tacotron2 モデルを評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/tacotron2_evaluator.py
-
Open-NMT エバリュエーターは、テキスト翻訳タスクの Open-NMT モデルを評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/opennmt_encoder_decoder_generator_evaluator.py
-
StableDiffusion エバリュエーターは、安定拡散モデルファミリーの画像生成を評価する方法を示します。エバリュエーター・コード:
<omz_dir>/tools/accuracy_checker/accuracy_checker/evaluators/custom_evaluators/stable_diffusion_evaluator.py