我将yolox的torch用tensorflow重写,并移植相同权重等到tensorflow keras模型。现在我想将keras模型转成tflite,在混合量化和半精度量化的成功,但是int8转换却只有框坐标,conf跟类别全都是0。我将int8模型用netron打开,与模型代码对比,发现是concat的问题,yolox最后检测部分代码如下:
netron打开查看:
这里的scale大于1,我推测是因为框卷积后没有sigmoid,而conf跟class有,这导致三者的量化range差异太大,使得conf跟class在后续变成了0。我的问题是:int8不能量化是上面提出的原因?如何在不改变模型情况下(移植权重的,应该不能更改吧),进行int8的量化?