深度神经网络模子压缩学习条记二:离线量化算法和工具、实现原理和细节

[复制链接]
发表于 2025-12-19 19:27:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
一、离线量化底子概念

1)离线量化界说


2)离线量化优缺点


3)怎样生产一个硬件能跑的量化模子?


4)离线量化的范例

①对称量化:速率更快
②非对称量化:精度更好

5)怎样盘算scale,zero_point?

①权重weights是一个常量张量
②activation激活值的现实动态范围必须颠末数据集采样获取,一样平常把这个过程称为数据校准calibration

6)离线量化概念


7)PTQ与QAT区别


8)离线量化流程


9)校准数据的选择


10)量化模式选择


11)校准方式的选择


      
  • 差别的方式
    ①min_max:大概一些非常值会进来
    ②KL Divergence(TensorRT所利用的方法):
    ③Histogram(统计直方图):选定直方图的百分位点作为阶段之,根据百分比来调解截断值巨细
    ④MSE:利用均方毛病作为模子量化前后输出的丧失的衡量指标。此方法较为耗时,但是效果经常优于其他方法



12)量化算法的选择(展示离线量化的pipeline)


①颠末预训练的模子颠末CLE调解,使得模子更方便量化
②给模子创建更轻易量化的节点,对称性权重和非对称性激活值
③用MSE做权重的range设置
④利用数据就用AdaRound的方法,不利用数据就用Bias Correction的方法
⑤真正数据对激活值的范围做校准
13)写入量化参数


二、离线量化难点


      
  • 难点
    ①校准数据有限
    ②非常数据分布
    ③优化空间有限
    ④优化粒度选择

三、离线量化算法先容


1)标题点

①标题点一:


②标题点二:

2)Weight equalization(WE):使每个channel分布更靠近,从而更实用于per-tensor量化

特点:跨层动态范围平衡

3)Bias Correction(BC):从卷积或全毗连层的bias剪掉权重的毛病,精确率更靠近per-channel量化

方法:用量化统计数据集前后变革的偏移



4)AdaRound


      
  • 备注
    在前面data-free-quantization中,对权重和bias只是采取比力简朴的线性偏移;而AdaRound剔除的方法让weight做更机动的变更




5)Brecq:办理AdaRound逐层重修忽略层间依赖关系的标题


回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表