メインコンテンツへスキップ
サポート・ナレッジベース

OpenVINO™・ツールキットで変換および推論検出ron2* およびレイアウト LM* モデルを変換する手順

コンテンツタイプ: トラブルシューティング   |   記事 ID: 000095500   |   最終改訂日: 2023/06/23

環境

OpenVINO™・ツールキット 2022.3 LTS Ubuntu* 20.04 LTS Python* 3.8.10

詳細

Detectron2*、および Layout-LM* モデルを中間表現 (IR) にOpenVINO™し、CPU プラグインで推論する方法を決定できません。

解決方法

Detectron2 モデルを変換するには、Colab チュートリアル従って、PyTorch* による Detectron2* モデルのトレーニングと推論を行い、また、以下の手順に従ってモデルを ONNX* フォーマットに変換してから IR フォーマットに変換します。

  1. トレース機能とexport_model.py を使用して公式の Detectron2、colab2 チュートリアルを参照して、Detectron2* PyTorch* モデルを ONNX* フォーマットにエクスポートします。

    $ python export_model.py --config-file ./output.yaml --sample-image ./new.jpg --output ./model/ --export-method トレース --format onnx MODEL。重み ./出力/model_final.pth モデル。DEVICE CPU

  2. output.yaml では、Colab チュートリアルで次の行を追加して構成ファイルを作成します。

    print (cfg.dump())
    open ("output.yaml"、"w") を f:
    f.write (cfg.dump())

  3. インストール pip* によるOpenVINO:

    $ pip インストール openvino-dev

  4. 変換 ONNX* モデルから中間表現 (IR):

    $ mo --input_model ./model/model.onnx

  5. OpenVINOを使用して推論にbenchmark_appを実行します。

    ONNX* モデルの場合:
    $ benchmark_app -m model.onnx -d CPU -niter 100 -api 非同期 -hint スループット
    $ benchmark_app -m model.onnx -d CPU -niter 100 -api 非同期 -hint レイテンシー

    IRモデル付き:
    $ benchmark_app -m model.xml -d CPU -niter 100 -api 非同期 -hint スループット
    $ benchmark_app -m model.xml -d CPU -niter 100 -api async -hint レイテンシー

レイアウト LM モデルを変換します。以下の手順に従って、Layout-LM モデルを変換し、OpenVINO™による推論を行います。

  1. Convert PyTorch* モデルから ONNX* モデル形式:

    $ pip はトランスフォーマーをインストールします[onnx]
    $ python3 -m transformers.onnx --model=microsoft/layoutlm-base-uncased onnx

  2. インストール pip* によるOpenVINO:

    $ pip インストール openvino-dev

  3. 変換 ONNX* モデルから中間表現 (IR):

    $ mo --input_model ./onnx/model.onnx

  4. OpenVINOを使用して推論にbenchmark_appを実行します。

    ONNX* モデルの場合:
    $ benchmark_app -m onnx/model.onnx -d CPU -niter 100 -api async -hint throughput -data_shape input_ids[1,1]、bbox[1,1,4]、attention_mask[1,1]、token_type_ids[1,1]
    $ benchmark_app -m onnx/model.onnx -d CPU -niter 100 -api async -hint latency -data_shape input_ids[1,1]、bbox[1,1,4]、attention_mask[1,1]、token_type_ids[1,1]

    IRモデル付き:
    $ benchmark_app -m model.xml -d CPU -niter 100 -api async -hint スループット -data_shape input_ids[1,1]、bbox[1,1,4]、attention_mask[1,1]、token_type_ids[1,1]
    $ benchmark_app -m model.xml -d CPU -niter 100 -api async-hint レイテンシー -data_shape input_ids[1,1]、bbox[1,1,4]、attention_mask[1,1]、token_type_ids[1,1]

    メモ

    上記のコマンドで -data_shape で定義される入力シェイプは、ユースケースによって異なる場合があります。

関連製品

本記事は、3 製品に適用します。
インテル® Xeon Phi™ プロセッサー・ソフトウェア OpenVINO™ ツールキット パフォーマンス・ライブラリー

免責条項

このページのコンテンツは、元の英語のコンテンツを人力翻訳および機械翻訳したものが混在しています。このコンテンツはお客様の便宜と一般的な情報のみを目的として提供されており、情報の正確さと完全性を保証するものではありません。このページの英語版と翻訳の間に矛盾がある場合は、英語版に準拠します。 このページの英語版をご覧ください。