|
这些你要自行深入研究下,可以提供几个思路:
1. 同一个模型同一个精度下,不管什么框架运行结果都一定一样,不一样就有问题需要调试
2.rknn可以先尝试不量化跑fp16看下结果是否和onnx一致,这里的一致是指绝对一致,包括小数点后面的几位都完全一致
3. 如果上一步一致,那就可以开始量化,量化后结果会有所不一样,但不会差别很大,如果量化后结果不一致,就要开始调量化,具体调的方式请看rknntoolkit文档,可以输出每一层量化前后精度对比。
YOLO比较经典的量化失效情况就是他最后会把两个数值范围完全不一样的节点concat在一起输出,例如一个是[0,1],另一个是[0,1000],那么concat成一个节点后0,1的组就会永远为0了。这样就需要做分组量化,或者手动拆成两个输出节点来量化。
具体问题具体研究,rknn也提供了modelzone供大家学习 |
|