クラス VitisQuantizer の構築関数です。
vitis_quantize.VitisQuantizer(
float_model,
quantize_strategy='pof2s',
custom_quantize_strategy=None,
custom_objects={})
引数
- float_model
- 量子化の設定を含む
tf.keras.Modelオブジェクト。 - quantize_strategy
- 量子化ストラテジのタイプを指定する文字列オブジェクト。有効な値は、
pof2s、pof2s_tqt、fsおよびfsxです。pof2sは DPU のデフォルト ストラテジです。これは、QAT に 2 のべき乗スケールのクオンタイザーとストレート スルー エスティメーターを使用します。pof2s_tqtは Vitis AI 1.4 で導入された QAT 専用ストラテジでクオンタイザーのトレーニング済みしきい値を使用します。これにより、2 のべき乗スケールの QAT の結果が改善することがあります。fsは、Vitis AI 2.5 で導入された量子化ストラテジです。これは、Conv2D、DepthwiseConv2D、Conv2DTranspose、および Dense レイヤーの入力と重みに対して浮動小数点スケールの量子化を実行します。fsx量子化ストラテジは、fs 量子化ストラテジよりも多くのレイヤー タイプ (Add、MaxPooling2D および AveragePooling2D など) に対して量子化を実行します。さらに、バイアスとアクティベーションも量子化します。注記: pof2s_tqt ストラテジは QAT でのみ使用してください。init_quant=Trueと組み合わせると、最大限の性能が得られます。注記:fsおよびfsxストラテジは、浮動小数点をサポートするターゲット デバイス向けに設計されています。DPU は現在、浮動小数点をサポートしていないため、これらの量子化ストラテジで量子化されたモデルは DPU で運用できません。 - custom_quantize_strategy
- 文字列。カスタム量子化ストラテジ JSON ファイルのファイル パス。
- custom_objects
- Dict。名前 (文字列) をカスタム クラスまたは関数にマップします。