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 设计的默认策略。它使用 2 的幂值比例的量化器和 Straight-Through-Estimator(直通式估算器)来执行 QAT。pof2s_tqt是 Vitis AI 1.4 中引入的仅适用于 QAT 的策略,在量化器中使用经训练的阈值,这样可能会为 2 的幂值比例的 QAT 生成更好的结果。fs是 Vitis AI 2.5 版本中新引入的量化策略。它会对 Conv2D、DepthwiseConv2D、Conv2DTranspose 和 Dense 层的输入和权重执行浮点比例量化。相比于 fs 量化策略,fsx量化策略会对更多类型的层执行量化,例如,Add、MaxPooling2D 和 AveragePooling2D。此外,它还会量化偏差和激活。注释: pof2s_tqt 策略只能用于 QAT,并且应与init_quant=True一起使用以获得最佳性能。注释:fs和fsx策略都是专为具有浮点支持的目标器件设计的。DPU 当前不支持浮点,因此以这些量化策略进行量化的模型无法部署到 DPU。 - custom_quantize_strategy
- string。表示定制量化策略 JSON 文件的文件路径。
- custom_objects
- dict。用于将名称(字符串)映射到定制类或函数。