Closed 2050airobert closed 8 months ago
您好,我们已经收到了您的问题,会安排技术人员尽快解答您的问题,请耐心等待。请您再次检查是否提供了清晰的问题描述、复现代码、环境&版本、报错信息等。同时,您也可以通过查看官网文档、常见问题、历史Issue来寻求解答。祝您生活愉快~
Hi! We've received your issue and please be patient to get responded. We will arrange technicians to answer your questions as soon as possible. Please make sure that you have posted enough message to demo your request. You may also check out the API,FAQ and Github Issue to get the answer.Have a nice day!
tinypose_0524.zip 模型补充在这里 请使用
啊
主要是由于量化模型本身精度较低导致的,@yingshengBD 关注下量化训练是否能解决该问题
hi,hong 量化模型精度低,只会影响arm fp32模型和对应的arm int8模型的输出结果差异。而你可以仔细看,这里发现的arm int8 模型执行后结果跟npu int8模型的输出有差异,这个问题完全是 lite部分可能导致的问题,麻烦您再次核实下,然后给出原因,多谢! BR
hi,hong 量化模型精度低,只会影响arm fp32模型和对应的arm int8模型的输出结果差异。而你可以仔细看,这里发现的arm int8 模型执行后结果跟npu int8模型的输出有差异,这个问题完全是 lite部分可能导致的问题,麻烦您再次核实下,然后给出原因,多谢! BR
我想先和你确认下,你贴的上下两张图的结果分别是什么模型跑在什么平台上的? 你这个量化模型我猜是@yingshengBD给你的,对吧?这个全量化模型我们内部测试过,在 arm 和 npu上跑的都是第1个结果,第2个结果是fp32模型的。 如果你确定能基于这个全量化模型在arm 上跑出第2个图的结果,我们可以安排@yingshengBD再验证下。
不好意思,我漏发了一张,这张是同样的那个int8量化模型在 vim3 npu a311d上运行的结果,确实跟arm上的结果很相似,但是依然有个别的点偏差太明显。理论上应该不会存在明显的偏差的。同一个量化模型 计算用的都是int8 cpu到npu结果理论一致,除非有bug? 问题在哪呢? 是否可以帮忙找到,多谢!
不好意思,我漏发了一张,这张是同样的那个int8量化模型在 vim3 npu a311d上运行的结果,确实跟arm上的结果很相似,但是依然有个别的点偏差太明显。理论上应该不会存在明显的偏差的。同一个量化模型 计算用的都是int8 cpu到npu结果理论一致,除非有bug? 问题在哪呢? 是否可以帮忙找到,多谢!
这个理论上是正常的,因为arm int8只有conv2d和fc是跑在int8上的,其它算子还是跑在fp32上,而npu则不同,大部分算子都是跑在int8上的,所以结果存在差异是能理解的。目前这个case主要问题出在量化模型本身的精度上。
Sounds reasonable, look forward to the final conclusion, tks
版本、环境信息: Paddle Lite develop主干最新前天 slim2.2.2 paddlepaddle-gpu2.3 linux arm64 ubuntu20.04
模型信息 1)tinypose 128x96 2) https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.3/configs/keypoint/tiny_pose
模型文件如下 tinypose_0524.zip
用这个量化后的模型,分别在vim3 arm和npu上运行tinypose int8模型,结果不同,具体如下 结论就是 arm和npu上关键点检测结果有明显差异,不能被接受。 一定是npu和arm lite的执行模型逻辑出错了,请帮忙debug并解决,多谢
BR