Toybrick

rknn误差累计,rknn算子不支持问题

殷艳坤

注册会员

积分
65
楼主
发表于 2023-7-19 17:32:35    查看: 2772|回复: 4 | [复制链接]    打印 | 只看该作者
测试第一个卷积的输出,中间网络输出和最后卷积输出,发现第一层卷积误差还可接受,如下:
-657.5 :-657.50885
-627 :-626.8629
-631.5 :-631.6764
-618 :-617.80115
-623.5 :-623.65155
-635 :-635.0591
...
但是最后卷积输出
12.476562:35.552456
23.921875:15.237753
30.8125:116.114006
35.6875:70.52029
-0.017471313:0.0
5.2851562:15.401582

网络如下:
rknn网络算子有哪些是不支持吗????

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

jefferyzhang

版主

积分
13572
沙发
发表于 2023-7-20 15:53:29 | 只看该作者
用文档的方法测试余弦误差,算子不支持转换时候就会报错。
量化精度问题需要系统分析,
最简单做法就是某一层精度差就直接混合量化那层不量化,
最佳做法就是直接做训练量化,用量化后的模型转rknn
回复

使用道具 举报

殷艳坤

注册会员

积分
65
板凳
 楼主| 发表于 2023-7-21 10:47:37 | 只看该作者
jefferyzhang 发表于 2023-7-20 15:53
用文档的方法测试余弦误差,算子不支持转换时候就会报错。
量化精度问题需要系统分析,
最简单做法就是某一 ...

我现在转rknn是非量化的转的,但是训练模型的时候不是fp16混合精度训练的,是不是因为这个原因造成的精度误差累计?
回复

使用道具 举报

jefferyzhang

版主

积分
13572
地板
发表于 2023-7-21 11:05:33 | 只看该作者
殷艳坤 发表于 2023-7-21 10:47
我现在转rknn是非量化的转的,但是训练模型的时候不是fp16混合精度训练的,是不是因为这个原因造成的精度 ...

不会有这么大误差,你这个已经不是叫误差了,是直接算错了
回复

使用道具 举报

殷艳坤

注册会员

积分
65
5#
 楼主| 发表于 2023-7-21 14:09:42 | 只看该作者
jefferyzhang 发表于 2023-7-21 11:05
不会有这么大误差,你这个已经不是叫误差了,是直接算错了

那有可能是网络结构什么不支持呢,中间结果没问题,最后输出就差异大,但是这个网络结构都是类似的,有最可能在哪层呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表