校准执行过程中提示“IfmrQuantWithOffset scale is illegal"
问题描述
在调用Caffe框架执行中间校准模型推理过程中,由于输入数据范围不合法,导致量化算法计算得到的scale不合理,从而校准过程失败,终止Caffe校准流程。
可能原因
- 数据范围 [-inf , +inf]:
因为昇腾模型压缩工具的量化算法需要强制过零点,所以计算出的scale也就是inf/255=inf,该情况下量化因子后续无法承载,因此量化算法会提示错误信息,不支持该数据范围,量化后scale为inf时会提示不支持并提示错误信息。
图3-6 错误信息1 - 数据范围
昇腾模型压缩工具量化支持计算得到的最大
,因为在昇腾AI处理器量化动作做的是乘法计算:
, 如果scale大于
,
会小于DBL_EPSILON,此时量化后结果就不可信。因此昇腾模型压缩工具量化算法仅支持原始数据范围在
内进行量化,否则会提示不支持并提示错误信息。
图3-7 错误信息2