量化总结2-tensorrt、ncnn的后量化方式

1、Tensorrt的量化方式/ncnn

对称的饱和量化,从ncnn的源码来看,使用的是逐通道量化,tensorrt没看源码就不知道了(应该也是):

 

问题的核心转化为如何寻找一个最优值T,是的饱和量化能够精度最小,转化为最优化的问题。

英伟达使用kl散度来比较量化前后两个分布的差异,即相对熵,则问题转化为求相对熵的最小值。1、从信息熵的角度来解释,kl散度最小则代表两个分布差异最小。2、将log换为以2为底的数,则代表信息的编码字组组成,编码信息量的差异。

量化流程(尽量去简化理解,其实很简单):

  • 准备一个校准数据集,收集校准表,对每一层:
  1. 收集激活值的直方图
  2. 基于不同的阈值(浮点的截断阈值)产生不同的量化分布
  3. 计算每个分布与原分布的相对熵,选择min值,则得到最像原分布的1个。

此时,便选出了阈值,也就得到了scale。

量化流程伪代码

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值