当前位置: 首页 > news >正文

[NeurIPS 2022] Leveraging Inter-Layer Dependency for Post-Training Quantization

Contents

  • Introduction
  • Method
  • Experiments
  • References

Introduction

  • 作者提出一种端到端的 PTQ 训练策略 Network-Wise Quantization (NWQ),并通过 Annealing Softmax (ASoftmax) 和 Annealing Mixup (AMixup) 改进了 AdaRound,降低了训练收敛难度

Method

  • Activation Regularization (AR). 采用端到端而非 layer/block-wise 优化每个 block 的量化损失
    在这里插入图片描述

  • Annealing Softmax (ASoftmax). 类似于 AdaRound,采用 Adaptive Rounding,但不同的是作者采用 Softmax 而非 Sigmoid,这使得 rounding 范围由 0~1 扩展到了 n n n~ m m m,但相应得训练参数量也增加到了原来的 m − n + 1 m-n+1 mn+1 倍 (不过作者默认采用 n = 0 , m = 1 n=0,m=1 n=0,m=1,所以 ASoftmax 的优势很大可能来自与 AdaRound 的第二点不同,也就是加速模型收敛;如果扩展 m , n m,n m,n,那么随着训练参数量的增加,如果校准数据比较少,模型容易过拟合)
    在这里插入图片描述在这里插入图片描述在这里插入图片描述此外,不同于 AdaRound 采用正则项促使 h ( V ) h(\mathbf V) h(V) 趋近 0/1,而作者认为这个正则项和量化损失其实是冲突的 (量化损失会促使 h ( V ) h(\mathbf V) h(V) 趋近 w s − ⌊ w s ⌋ \frac{\mathbf w}{s}-\lfloor\frac{\mathbf w}{s}\rfloor swsw),这会导致 AdaRound 不容易收敛;对此,作者借助 softmax temperature 帮助模型更好收敛
    在这里插入图片描述其中, τ t \tau^t τt 代表 iter t t t 时刻的 temperature,从 1 线性衰减到 0.01;作者还给出了 V i \mathbf V_i Vi初始化策略 V i = log ⁡ ( σ ′ ( V ) i ) \mathbf V_i=\log(\sigma'(\mathbf V)_i) Vi=log(σ(V)i),这样可以使得初始 rounding 与原始权重尽可能接近,证明可参考附录 A
    在这里插入图片描述

  • Annealing Mixup (AMixup). 采用 mixup 混合全精度模型输出和量化模型输出,作为 AR 中的优化目标 a l a_l al,其中全精度模型输出在 iter t t t 所占比例从 P s = 0.5 P_s=0.5 Ps=0.5 线性衰减到 P e = 0 P_e=0 Pe=0 从而帮助模型更好收敛
    在这里插入图片描述

Experiments

  • Comprehensive Comparison.
    在这里插入图片描述
  • Ablation Study. (1) AR.
    在这里插入图片描述(2) ASoftmax.
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述(3) AMixup.
    在这里插入图片描述在这里插入图片描述

References

  • Zheng, DanDan, Yuanliu Liu, and Liang Li. “Leveraging inter-layer dependency for post-training quantization.” Advances in Neural Information Processing Systems 35 (2022): 6666-6679.

相关文章:

[NeurIPS 2022] Leveraging Inter-Layer Dependency for Post-Training Quantization

Contents IntroductionMethodExperimentsReferences Introduction 作者提出一种端到端的 PTQ 训练策略 Network-Wise Quantization (NWQ),并通过 Annealing Softmax (ASoftmax) 和 Annealing Mixup (AMixup) 改进了 AdaRound,降低了训练收敛难度 Metho…...

ubuntu+ROS推视频流至网络

目录 概述 工具 ros_rtsp 接受流 web_video_server 源码安装 二进制安装 ros接收rtsp视频流 总结 概述 ros_rtsp功能包可以将ros视频流以rtsp形式推送 web_video_server功能包可以将ros视频话题推HTTP流 rocon_rtsp_camera_relay可以接受同一网段下的rtsp视频流输出为…...

PHP 去掉特殊不可见字符 “\u200e“

描述 最近在排查网站业务时,发现有数据匹配失败的情况 肉眼上完全看不出问题所在 当把字符串 【M24308/23-14F‎】复制出来发现 末尾有个不可见的字符 使用删除键或左右移动时才会发现 最后测试通过 var_dump 打印 发现这个"空字符"占了三个长度 &#xf…...

深度学习—BP算法梯度下降及优化方法Day37

梯度下降 1.公式 w i j n e w w i j o l d − α ∂ E ∂ w i j w_{ij}^{new} w_{ij}^{old} - \alpha \frac{\partial E}{\partial w_{ij}} wijnew​wijold​−α∂wij​∂E​ α为学习率 当α过小时,训练时间过久增加算力成本,α过大则容易造成越过最…...

elasticsearch8.16 docker-compose 多机器集群安装

在网上找了一圈, 发现要么就是单机版的部署了多个节点, 很少有多台机器部署集群的, 有些就拿官网的例子写一写, 没有实战经验, 下面分享一个教程, 实实在在的多台机器, 每台机器部署2个节点的例子 先上.env , docker-compose.yml文件, 这个文件是核心, 里面掺杂太多坑, 已经帮你…...

Flink--API 之 Source 使用解析

目录 一、Flink Data Sources 分类概览 (一)预定义 Source (二)自定义 Source 二、代码实战演示 (一)预定义 Source 示例 基于本地集合 基于本地文件 基于网络套接字(socketTextStream&…...

uniapp在小程序连接webScoket实现余额支付

webScoket文档:uni.connectSocket(OBJECT) | uni-app官网 /plugins/event.js const Dep function() {this.Evens Object.create(null); } class Event {constructor({dep new Dep()} {}) {if (dep.constructor Object && Object.keys(dep).length 0…...

Spring Boot【三】

自动注入 xml中可以在bean元素中通过autowire属性来设置自动注入的方式&#xff1a; <bean id"" class"" autowire"byType|byName|constructor|default" /> byName&#xff1a;按照名称进行注入 byType&#xff1a;按类型进行注入 constr…...

R 因子

R 因子 引言 在金融领域&#xff0c;风险管理和投资策略的优化一直是核心议题。传统的风险度量工具&#xff0c;如波动率、Beta系数等&#xff0c;虽然在一定程度上能够帮助投资者理解市场的波动和资产的相对风险&#xff0c;但它们往往无法全面捕捉到市场动态的复杂性。因此…...

【博主推荐】C# Winform 拼图小游戏源码详解(附源码)

文章目录 前言摘要1.设计来源拼图小游戏讲解1.1 拼图主界面设计1.2 一般难度拼图效果1.3 普通难度拼图效果1.4 困难难度拼图效果1.5 地域难度拼图效果1.6 内置五种拼图效果 2.效果和源码2.1 动态效果2.2 源代码 源码下载结束语 前言 在数字浪潮汹涌澎湃的时代&#xff0c;程序开…...

深入解析 MySQL 启动方式:`systemctl` 与 `mysqld` 的对比与应用

目录 前言1. 使用 systemctl 启动 MySQL1.1 什么是 systemctl1.2 systemctl 启动 MySQL 的方法1.3 应用场景1.4 优缺点优点缺点 2. 使用 mysqld 命令直接启动 MySQL2.1 什么是 mysqld2.2 mysqld 启动 MySQL 的方法2.3 应用场景2.4 优缺点优点缺点 3. 对比分析结语 前言 MySQL …...

【python】windows pip 安装 module 提示 Microsoft Visual C++ 14.0 is required 处理方法

参考链接&#xff1a;https://blog.csdn.net/qzzzxiaosheng/article/details/12511900 1.问题引入 在使用pip 安装一些module经常会出现报错&#xff1a; Microsoft Visual C 14.0 is required. Get it with “Microsoft Visual C Build Tools很明显这是缺少C的编译的相关依…...

python爬虫案例——猫眼电影数据抓取之字体解密,多套字体文件解密方法(20)

文章目录 1、任务目标2、网站分析3、代码编写1、任务目标 目标网站:猫眼电影(https://www.maoyan.com/films?showType=2) 要求:抓取该网站下,所有即将上映电影的预约人数,保证能够获取到实时更新的内容;如下: 2、网站分析 进入目标网站,打开开发者模式,经过分析,我…...

go sync.WaitGroup

1、数据结构 type WaitGroup struct {noCopy noCopystate atomic.Uint64 // high 32 bits are counter, low 32 bits are waiter count.sema uint32 } 计数器&#xff1a;原子变量&#xff0c;高32位用于为协程计数&#xff0c;低32位为等待计数&#xff08;被Wait阻塞等待&a…...

Libevent库-http通信不同请求方式的处理

做项目的时候用到了http通信&#xff0c;同事用libevent库写的&#xff0c;特此记录后端从前端拿到消息后的处理方式 void CHTTPTest::request(const std::any & data) {// data 是从前端拿到的数据void *obj std::any_cast<void *>(data); // std::any是C17新标准…...

关于node全栈项目打包发布linux项目问题总集

1.用pm2部署nest 说明&#xff1a;如果一开始将nest直接打包放到linux服务器上用pm2执行则会报错&#xff0c;这是因为tsconfig.build.tsbuildinfo文件的路径以及相关依赖问题。 报错会为&#xff1a;什么东西找不到.... 所以建议以下为步骤一步一步配置 将整个nest添加压缩包直…...

常见的上、下采样方法

常见的‌上采样方法‌ ‌‌反卷积&#xff08;Deconvolution&#xff09;或‌转置卷积&#xff08;Transpose Convolution&#xff09;‌&#xff1a;通过学习可逆卷积核来进行上采样&#xff0c;增加特征图的尺寸。‌‌插值&#xff08;Interpolation&#xff09;‌&#xff…...

如何解决 java.rmi.NotBoundException: RMI 中没有绑定的对象问题?亲测有效的解决方法!

java.rmi.NotBoundException 是 Java RMI&#xff08;Remote Method Invocation&#xff09;中的一个常见异常&#xff0c;它通常出现在远程方法调用过程中&#xff0c;表示在 RMI 注册表中找不到指定的绑定对象。换句话说&#xff0c;当客户端尝试查找一个远程对象&#xff08…...

设计模式:14、抽象工厂模式(配套)

目录 0、定义 1、抽象工厂模式的四种角色 2、抽象工厂的UML类图 3、示例代码 0、定义 提供一个创建一系列或相互依赖对象的接口&#xff0c;而无须指定它们具体的类。 1、抽象工厂模式的四种角色 抽象产品&#xff08;Product&#xff09;&#xff1a;一个抽象类或接口&a…...

Linux环境基础开发工具使用

目录 1. Linux软件包管理器yum 1.1 什么是软件包 1.2 Linux软件生态 1.3 关于rzsz 1.4 注意事项 1.5 查看软件包 2. Linux编辑器-vim使用 2.1 vim的基本概念 2.2 vim的基本操作 2.3 简单vim配置 3. 编译器gcc/g 3.1 背景知识 3.2 gcc编译选项 3.2.1 预处理…...

医学影像融合避坑指南:如何避免MRI-PET配准中的常见伪影问题

医学影像融合避坑指南&#xff1a;如何避免MRI-PET配准中的常见伪影问题 在精准医疗时代&#xff0c;多模态医学影像融合已成为临床诊断和科研分析的重要工具。当我们将功能显像的PET与高分辨率解剖结构的MRI相结合时&#xff0c;理想情况下应该获得"11>2"的互补优…...

5个超实用网络转发技巧:用socat-windows解决90%的连接难题

5个超实用网络转发技巧&#xff1a;用socat-windows解决90%的连接难题 【免费下载链接】socat-windows unofficial windows build of socat http://www.dest-unreach.org/socat/ 项目地址: https://gitcode.com/gh_mirrors/so/socat-windows 在现代网络架构中&#xff0…...

Linux新手必看:Deepin、Mint、Fedora等主流发行版安装镜像获取全攻略

Linux新手必看&#xff1a;Deepin、Mint、Fedora等主流发行版安装镜像获取全攻略 当你第一次踏入Linux世界的大门&#xff0c;面对众多发行版的选择&#xff0c;获取正确的安装镜像往往是第一步。就像选择一把合适的钥匙&#xff0c;镜像的质量和来源直接关系到系统安装的成败。…...

MUSE快速入门指南:5步完成英语-西班牙语词向量映射

MUSE快速入门指南&#xff1a;5步完成英语-西班牙语词向量映射 【免费下载链接】MUSE A library for Multilingual Unsupervised or Supervised word Embeddings 项目地址: https://gitcode.com/gh_mirrors/mu/MUSE MUSE&#xff08;Multilingual Unsupervised or Super…...

从LDF文件看LIN调度:为什么说‘可预测性’是汽车低端总线的灵魂?

从LDF文件看LIN调度&#xff1a;为什么说‘可预测性’是汽车低端总线的灵魂&#xff1f; 当你按下车窗按钮时&#xff0c;那个瞬间发生的升降动作背后&#xff0c;隐藏着一套精密的通信协议在默默运作。不同于高端车载网络CAN总线的复杂仲裁机制&#xff0c;LIN总线以其独特的&…...

深入解析acts-as-taggable-on:Rails标签系统的终极实现指南

深入解析acts-as-taggable-on&#xff1a;Rails标签系统的终极实现指南 【免费下载链接】acts-as-taggable-on A tagging plugin for Rails applications that allows for custom tagging along dynamic contexts. 项目地址: https://gitcode.com/gh_mirrors/ac/acts-as-tagg…...

终极bilibili视频解析指南:三步实现免费高效下载方案

终极bilibili视频解析指南&#xff1a;三步实现免费高效下载方案 【免费下载链接】bilibili-parse bilibili Video API 项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-parse bilibili视频解析工具bilibili-parse为技术爱好者和普通用户提供了一套完整的视频资源…...

如何快速上手Archivy:5分钟搭建个人知识管理系统

如何快速上手Archivy&#xff1a;5分钟搭建个人知识管理系统 【免费下载链接】archivy Archivy is a self-hostable knowledge repository that allows you to learn and retain information in your own personal and extensible wiki. 项目地址: https://gitcode.com/gh_mi…...

告别网线乱绕!实测Windows 10/11的‘移动热点’与‘网络共享’到底哪个更适合给开发板共享网络

Windows网络共享方案深度评测&#xff1a;移动热点 vs 适配器共享 每次在工作室调试开发板时&#xff0c;最头疼的就是网线缠绕的问题。作为嵌入式开发者&#xff0c;我们经常需要为各种开发板&#xff08;比如STM32、树莓派或者RK3588套件&#xff09;提供网络连接。Windows系…...

码农专用,轻松拥有小金库

作为天天和代码、BUG、项目进度死磕的程序员&#xff0c;咱们这辈子靠理性思维、逻辑推演解决了无数技术难题&#xff0c;可一碰到理财这件事&#xff0c;几乎全员踩坑&#xff1a;要么没时间研究&#xff0c;要么怕风险不敢下手&#xff0c;最后只能把辛苦攒下的工资、年终奖丢…...