量子化スキーム#
量子化スキームの主な手順:
低精度のトランスフォーメーション:
FakeQuantize
分解により、低精度の出力で量子化して、逆量子化します。詳細は、量子化分解を参照してください。低精度のトランスフォーメーション: 操作を通じて逆量子化を移動します。詳細は、主なトランスフォーメーションを参照してください。
プラグイン: 低精度の量子化と推論による操作を融合します。
量子化スキームの特徴:
量子化操作は、スケールとシフト以上の操作を伴う
FakeQuantize
操作によって表現されます。詳細は、FakeQuantize-1 を参照してください。FakeQuantize
の入力間隔と出力間隔が同じ場合、FakeQuantize
は乗算、減算、変換 (スケールとシフト) に退化します。逆量子化操作は、要素ごとの変換、減算、乗算操作によって表現されます。変換と減算はオプションです。これらの操作は、融合したり別の要素に変換したりするなど、一般的な要素ごとの操作として処理できます。
OpenVINO プラグインは、低精度操作の後に逆量子化操作と量子化操作を融合しますが、低精度操作の前に量子化を融合することはありません。
これは、CPU プラグインで 2 つの畳み込み演算を使用してモデルの一部に適用される int8 量子化スキームの例です。