Caffe ランチャーの構成方法#
Caffe ランチャーは、精度チェッカーツール内でモデルを簡単に起動するためにサポートされるラッパーの 1 つです。このランチャーを使用すると、推論バックエンドに Caffe* フレームワークを使用してモデルを実行できます。
Caffe ランチャーを有効にするには、構成ファイルの launchers セクションに framework: caffe を追加し、次のパラメーターを指定する必要があります:
device- 推論に使用するデバイス (cpu、gpu_0など) を指定します。model- トポロジーの Caffe モデルを含む prototxt ファイルへのパス。(オプション。指定しない場合はモデルの検索が実行されます)weights- トポロジーの重みを含む caffemodel ファイルへのパス。(オプション。指定しない場合、caffemodel の検索は prototxt が存在するディレクトリーと同じディレクトリーで実行されます)adapter- 生の出力がデータセットの表現にどのように変換されるかという問題に対処するため、一部のアダプターはフレームワークに固有であることがあります。アダプターの使用方法の詳細な説明は、こちらでご覧いただけます。
また、batch を使用してモデルのバッチサイズを指定し、特定のパラメーター allow_reshape_input (デフォルト値は False) を使用して入力レイヤーをデータ形状に再形成できるようにすることもできます。
config でモデル入力を指定#
モデルに複数の入力がある場合、inputs キーを使用してランチャー設定セクションに入力レイヤーのリストを提供する必要があります。各入力の説明には次の情報が含まれている必要があります:
name- ネットワーク内のレイヤー名を入力しますtype- 入力値のタイプに応じて、入力ポリシーに影響します。次のオプションが利用できます:CONST_INPUT- 入力は、構成で提供される定数で埋められます。valueの提供も必要です。IMAGE_INFO- 入力形状の情報をレイヤーに設定する特定のキー (高速 RCNN ベースのトポロジーで使用)。valueは実行時に計算されるため、指定の必要はありません。形式値は[H, W, S]形式のN要素からなるリストです。Nはバッチサイズ、H- 元の画像の高さ、W- 元の画像の幅、S- 元の画像のスケール (デフォルトは 1) です。ORIG_IMAGE_INFO- 前処理前の元の画像サイズの情報を設定する特定のキー。PROCESSED_IMAGE_INFO- 前処理後の入力サイズの情報を設定する特定のキー。SCALE_FACTOR- 画像スケール係数の情報を設定する特定のキーは[SCALE_Y, SCALE_X]として定義されます。ここで、SCALE_Y=<resized_image_height>/<original_image_height、SCALE_X=<resized_image_width> / <original_image_width>INPUT- メイン・データ・ストリームのネットワーク入力 (画像など)。複数のデータ入力がある場合、特定のvalueでどのデータを提供するかを指定する値として識別子の正規表現を提供する必要があります。IGNORE_INPUT- 評価中は空のままにしておく必要がある入力。
オプションで、入力の形状 (実際には使用されません。Caffe ランチャーはネットワークから与えられた情報を使用します)、モデルが非標準のデータレイアウトでトレーニングされた場合のレイアウト (Caffe のデフォルトレイアウトは
NCHW)、精度 (サポートされている精度) を決定できます:FP32- float、FP16- signed shot、U8- unsigned char、U16- unsigned short int、I8- signed char、I16- short int、I32- int、I64- long int)。
Caffe ランチャーの構成例:
launchers:
- framework: caffe
device: CPU
model: path_to_model/alexnet.prototxt
weights: path_to_weights/alexnet.caffemodel
adapter: classification batch: 4