事前定義された構成ファイルの使用方法¶
注: 2022.1 以降、提供されているすべての Open Model Zoo 構成ファイルは、OpenVINO™ API 2.0 で動作するように切り替えられました。API 1.0 でモデルを起動するには、追加のアクションが必要になる場合があります。構成の移行ガイドを参照してください。
構造¶
構成ファイルは検証プロセスを定義します。すべてのモデルが models
リストにエントリーを持つ必要があります。各エントリーには、個別の name/span>
、launchers
、および datasets
のセクションが含まれている必要があります。
例:
models:
- name: model_name
launchers:
- framework: openvino
adapter: adapter_name
datasets:
- name: dataset_name
また、複数のパーツ (モデル) で構成される複合モデルもあり、精度の測定にはこれらのパーツからパイプラインを構築する必要があります。したがって、評価は一連のモデルを順次実行することによって実行され、モデルを独立して評価することはできません。それぞれの複合モデルには evaluations
リストにエントリーが必要です。各エントリーには、個別の name
、module
、および module_config
が含まれている必要があります。module_config
は、network_info
、launchers
、および datasets
フィールドで構成されている必要があります。このようなモデルにはカスタム・エバリュエーターが使用されます。独自のエバリュエーターまたは既存のエバリュエーターの定義と使用の詳細については、カスタム・エバリュエーター・ガイドを参照してください。
例:
evaluations:
- name: model_name
module: name_of_class_with_custom_evaluators
module_config:
network_info:
encoder: {}
decoder:
adapter: adapter_name
launchers:
- framework: openvino
datasets:
- name: dataset_name
場所¶
各 Open Model Zoo モデルの事前定義された構成ファイル accuracy-check.yml
は、モデル・ディレクトリーにあります。
<model_name>.yml
ファイルは現在の configs
フォルダーにあり、<model_name>
モデルの accuracy-check.yml
へのリンクです。
例:
<omz_dir>/tools/accuracy_checker/configs/densenet-121-tf.yml
は、densenet-121-tf モデルの設定ファイル <omz_dir>/models/public/densenet-121-tf/accuracy-check.yml
へのリンクです。
オプション¶
構成を実行するには、必要な構成ファイルへのパスを
-c, --config
コマンドラインに指定します。設定ファイルには、モデルと重みへのパスは含まれません。モデルと重みは、
-m, --models
コマンドライン・オプションで指定されたパス内のモデルの名前によって自動的に検索されます。重複を避けるため使用されるデータセット変換パラメーターを含むグローバル構成ファイルがあります。グローバル定義は、データセット名によってランタイムの評価構成とマージされます。global_definitions を使用すると、コマンドライン引数
-d, --definitions
を通じてこのファイルへのパスを指定できます。トレーニング後の最適化ツールキットによる量子化で定義ファイルを使用する場合は、環境変数DEFINITIONS_FILE
を使用して定義へのパスを指定する必要があります。data_source
が指定される相対パスは、-s, --source
コマンドラインで指定できます。既知のデータセットを使用してモデルを評価するには、検証データセットを含むフォルダーを特定の方法で整理する必要があります。データセットを準備する詳細については、データセットの準備ガイドを参照してください。トレーニング後の最適化ツールキットによる量子化でデータソースを使用する場合は、環境変数DATA_DIR
を使用して、データセットのあるディレクトリーのルートパスを指定する必要があります。annotation
とdataset_meta
が指定される相対パスは、-a, --annotations
コマンドラインで指定します。アノテーションと dataset_meta (必要な場合) は、存在しない場合はアノテーション変換ステップの後にこのディレクトリーに保存され、次回の実行でアノテーション変換をスキップできます。アノテーション変換の詳細については、アノテーション変換ガイドを参照してください。一部のモデルには、評価用の追加ファイル (NLP モデルの語彙ファイルなど) があり、通常はモデル属性という名前が付けられます。必要に応じて、モデル固有の属性 (語彙ファイル、マージファイルなど) への相対パスを構成ファイルに指定できます。これらのパス・プリフィクスは、
--model_attributes
コマンドライン・オプションで渡す必要があります (通常、これはモデル・ディレクトリーです)。推論するデバイスを指定するには、
-td、--target_devices
コマンドライン・オプションを使用します。複数のデバイスはスペースで区切ります (例: -td CPU GPU)。オプションで、構成ファイルに複数のフレームワークが指定されている場合は、
-tf、--target_framework
コマンドライン・オプションを使用して評価用の推論フレームワークを指定できます。それ以外では、オプションが提供されていない場合、評価は構成ファイルに記述されているすべてのフレームワークで起動されます。
使用例¶
densenet-121-tf モデルの事前定義された構成ファイルを使用してモデルを評価する方法を参照してください。
OMZ_ROOT
- Open Model Zoo プロジェクトのルートDATASET_DIR
- データセットのあるルート・ディレクトリーMODEL_DIR
- モデルのあるルート・ディレクトリー
最初に、データセット準備ガイドに従ってデータセットを準備します
-
モデル・ダウンローダーを使用して、オンラインソースからオリジナルのモデルファイルをダウンロードします
omz_downloader --name densenet-121-tf --output_dir MODEL_DIR
-
モデル・コンバーターからモデル・オプティマイザーを使用してモデルを OpenVINO IR 形式に変換します
omz_converter --name densenet-121-tf --download_dir MODEL_DIR
-
精度チェッカーを使用して FP32 精度でモデルの評価を実行します
accuracy_check -c OMZ_ROOT/models/public/densenet-121-tf/accuracy-check.yml -s DATASET_DIR -m MODEL_DIR/public/densenet-121-tf/FP32 -d OMZ_ROOT/tools/accuracy_checker/dataset_definitions.yml -td CPU
同様に、FP16 精度でモデルの評価を実行できます
accuracy_check -c OMZ_ROOT/models/public/densenet-121-tf/accuracy-check.yml -s DATASET_DIR -m MODEL_DIR/public/densenet-121-tf/FP16 -d OMZ_ROOT/tools/accuracy_checker/dataset_definitions.yml -td GPU