【模型量化】

2023-10-30

文章认为量化会使网络激活值的均值发生偏移,通过对偏移进行修正,可以有效提高量化模型的性能。

首先考虑“激活值的均值偏移”。

网络BN会统计出数据经过某层后的均值和方差信息。
而网络在经过量化后,同样的数据经过该层后,其均值已经不符合原BN统计出的均值,也即数据分布发生了变化(注意BN存在于多个层,这里说的数据分布是泛指各个层的激活,而不仅仅指第一层网络的输入)。

如上图所示,是32张图片经过MobileNet某层某channel后激活值分布情况,Q是量化模型,FP是float模型,可以看到两个数据分布是不一样的,均值会发生偏移。
在这里插入图片描述

其次感性上理解这个过程:某个channel的均值发生偏移,感性上可以理解为量化模型在该channel上计算出的值会偏大或偏小。那么既然我们知道量化模型某层的激活会偏大或偏小,那么我们就可以对其进行修正。

IBC方法:使用calibration数据,逐层迭代,逐channel进行偏差修正,具体如下:

# IBC伪代码
for:对网络层数进行遍历:
    for:对该层channel进行遍历:
         偏差deta = 该channel float网络激活值 - 该channel量化网络激活值
         量化网络的bias += 偏差deta
     end
end   

# 注意“该channel float网络激活值”和“该channel量化网络激活值”都是在全部calibration
# 数据下计算出平均激活值,calibration数据集文章说只需要8-64张;

目前在网络量化上,偏差修正已经成了一个较为常见的操作,涨点明显。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【模型量化】 的相关文章

  • 数据结构之排序:快速排序

    快速排序 Quick Sort 由 C A Hoare 在1962年提出 是冒泡排序的一种改进 采用了分治策略 将原问题划分成若干个规模更小但与原问题相似的子问题 然后递归方法解决 合并问题的解 基本思想 通过一趟排序将序列分割成独立的两个

随机推荐

  • C++ & QT 琐碎知识点

    此文仅记录C 和QT 学习过程中一些琐碎知识点 shadow build 是将源码路径和构建路径分开 主要将makefile和其它生成的文件分开 保证源码文件的清洁 qmke和cmake都有采用 pro user 用于记录打开工程的路径 所
  • SpringCloud Stream消息驱动

    目录 一 SpringCloud Stream概述 二 Binder 三 Consumer Groups 针对消费者 四 Publish Subscribe 介绍一下yml配置的含义 五 消息分组 六 消息分区 1 生产者方配置 2 消费者
  • osgEarth的Rex引擎原理分析(三十五)osgEarth地球椭球体ellipsoid 大地基准面datum 地图投影Projection详解

    目标 二十九 中的问题83 地球椭球体的中心为地心 形状为椭球体 大地基准面是适应某一区域的椭球体 球体中心不一定在地心 地图投影是球面和平面映射关系的方法 Horizontal Datum A datum is a reference p
  • 学Transformer前,你需要了解的Attention机制(基于注意力机制的Seq2seq可视化神经机器翻译模型)

    在我们开始学习transformer之前 应该了先解下什么是attention注意力机制 相关内容获取 欢迎关注公众号 AI技术星球 发送 222 序列到序列 Sequence to sequence 模型已经在机器翻译 文本摘要和图像字幕
  • ubuntu18.04 配置nfs服务

    1 安装nfs服务器软件 sudo apt install nfs kernel server 2 修改配置文件 添加nfs server上用于共享的目录 并设置允许访问该目录的客户机IP 及其读写权限 sudo vim etc expor
  • YOLOV5 和 Yolov5s各个版本的 发展史、论文、各个版本代码资源分享合集 !!!

    点击上方 码农的后花园 选择 星标 公众号 精选文章 第一时间送达 2020年2月份YOLO之父Joseph Redmon宣布退出计算机视觉的研究的时候 很多人都以为目标检测神器YOLO系列就此终结 没想到的是 2020年4月份曾经参与YO
  • 后台获取数据库时间出现的格式问题记录

    问题描述 要从数据库获取时间类型然后传给前台页面 数据库中的时间格式是yyyy MM dd HH mm ss 如图所示 但是获取出来时格式就变成了Mon Dec 13 10 04 16 CST 2021这种 解决 可以在前端或者后端解决 后
  • MYSQL数据库和表

    一 安装MYSQL数据库时生成系统使用的数据库 1 显示数据库 2 创建数据库 3 选择数据库 mysql gt use stusys Database changed 4 修改数据库 mysql gt alter database stu
  • win32应用程序_不是有效的win32应用程序怎么解决

    在日常办公中经常用到电脑 有许多使用技巧 本次给大家介绍不是有效的win32应用程序怎么办 快来看看吧 方法一 不是有效的win32应用程序表示这个应用程序和系统不兼容 用户可以在计算机属性页面查看系统是32位还是64位 之后下载相对应的应
  • 【源码】贝叶斯变化点检测与时间序列分解

    BEAST 突变 季节性和趋势的贝叶斯估计器 是一种快速 通用的贝叶斯模型平均算法 用于将时间序列或1D序列数据分解为单个组件 例如突变 趋势和周期 季节性变化 如Zhao等人 2019 所述 BEAST可用于变化点检测 即断点或结构中断
  • mysql进阶1——proxysql中间件

    文章目录 一 基本了解 二 安装部署 三 proxysql管理配置 3 1 内置库 3 1 1 main库表 3 1 2 stats库表 3 1 3 monitor库 3 2 常用管理变量 3 2 1 添加管理用户 3 2 2 添加普通用户
  • WSL无法访问网络的解决办法

    今天在用WSL的时候突然网络抽风 域名解析出了问题 apt update都用不了 网上查了很多方法 什么vEthernet的IP啊 ifconfigip啊 ip route add default啥的 都不管用 最后还是看了一下 etc r
  • 多益网络提前批前端面试(凉)

    题外话 面试时间是晚上7点多 多益还是加班严重啊 这点哈哈哈哈 下面正文 自我介绍 问项目 问看过的书籍 这里就是挖坑了 尽量找自己会的说 XHR HTTP1和HTTP2的区别 隐藏一个HTML标签 v for 为什么不能用index做ke
  • QT基础部件学习笔记

    目录 一 QT程序开发流程 二 QT基础部件分类 1 按钮类 普通 工具 单选 复选 命令连接 编辑 编辑 2 布局类 水平 垂直 网格 两列 该类的实例具体与其他类同时使用 编辑 3 输出类 标签 文本浏览器 日历 七段数码管 进度条 4
  • 反编译解析数组为什么可以使用foreach

    反编译解析数组为什么可以使用foreach 一 说明 二 集合使用foreach 三 数组使用foreach 四 数组使用for 五 javap反编译程序 5 1 TestCollection结果 5 2 TestArray结果 5 3 T
  • 阿里云mysql gtid_阿里云RDS mysql报错:Statement violates GTID consistency

    近日有用户反馈使用RDS mysql8 0时 在执行语句 create table select时报错了 主要错误是 Statement violates GTID consistency 字面理解是语句违反GTID一致性 报错截图 Sta
  • 图像增强 cnn

    目录 实时图像增强 基于 间距自适应查找表 的方法 CVPR 2022 Image Adaptive 3DLUT 水下图像增强UWCNN wtf 直方图均衡化 CycleGan增强 2个项目 实时图像增强 基于 间距自适应查找表 的方法 C
  • Qt基础:四、多窗口切换

    这是一个测试多窗口切换的程序 点击主界面上得按键 然后弹出一个新的对话框窗口 1 在主界面添加一个按键 2 实现按键的槽函数 void MyWidget on showChildButton clicked QDialog dialog n
  • 优化Java应用程序性能:解决高GC耗时问题

    优化Java应用程序性能 解决高GC耗时问题 在开发和维护Java应用程序时 我们经常遇到性能问题 其中之一是高GC 垃圾收集 耗时 垃圾收集是Java虚拟机 JVM 的一项重要任务 用于自动管理内存和释放不再使用的对象 然而 当GC耗时过
  • 【模型量化】

    文章认为量化会使网络激活值的均值发生偏移 通过对偏移进行修正 可以有效提高量化模型的性能 首先考虑 激活值的均值偏移 网络BN会统计出数据经过某层后的均值和方差信息 而网络在经过量化后 同样的数据经过该层后 其均值已经不符合原BN统计出的均