精度チェッカー用のカスタム・エバリュエーター

標準精度チェッカーの検証パイプライン: アノテーションの読み取り -> データの読み取り -> 前処理 -> 推論 -> 後処理 -> メトリック。状況によっては、それが不適切である可能性があります (例: モデルのシーケンスがある場合)。独自のエバリュエーターを使用して検証パイプラインをカスタマイズできます。検証アプローチを説明する 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