Loading [MathJax]/jax/output/CommonHTML/jax.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >HAWQ-V2:基于Hessian迹的混合比特量化策略

HAWQ-V2:基于Hessian迹的混合比特量化策略

作者头像
AI异构
发布于 2020-12-08 03:14:59
发布于 2020-12-08 03:14:59
1.7K0
举报
文章被收录于专栏:AI异构AI异构

HAWQ-V2

本文为 UC Berkeley 大学发表在 NeurIPS 2020 上的混合精度量化论文,是之前 HAWQ 论文的升级版本。

  • 论文题目:HAWQ-V2: Hessian Aware trace-Weighted Quantization of Neural Networks
  • 论文链接:https://papers.nips.cc/paper/2020/file/d77c703536718b95308130ff2e5cf9ee-Paper.pdf
  • 由于本文牵扯到的数学公式与证明较多,感兴趣可以自行阅读原文。这里只做一个大概的分析导读。

摘要

量化是减少神经网络的内存占用和推理时间的有效方法。但是,超低精度量化可能会导致模型精度显着下降。解决此问题的一种有前途的方法是执行混合精度量化,其中更敏感的层保持更高的精度。但是,用于混合精度量化的搜索空间的层数是指数级的。HAWQ 提出了一个新颖的基于 Hessian 的框架,其目的是通过使用二阶信息来减少这种指数搜索空间。尽管有前途,但这项先前的工作具有三个主要局限性:

  • HAWQ 仅使用基于最高海森特征值的启发式度量作为敏感度的度量,而未考虑其余的海森频谱;
  • HAWQ 的方法仅提供不同层的相对灵敏度,因此需要手动选择混合精度设置
  • HAWQ 没有考虑混合精度激活量化

在这里,本文介绍解决这些缺点的HAWQ-V2,解决对应HAWQ的三个问题,如下:

  • HAWQ-V2 从理论上证明了正确的敏感度度量是平均Hessian迹,而不只是顶部的Hessian特征值
  • HAWQ-V2 实现了一种基于 Pareto 边界的方法,无需任何人工干预即可自动选择不同层的比特精度
  • HAWQ-V2 实现了第一个基于Hessian的混合精度激活量化分析,这对于对象检测非常有益

通过证明,HAWQ-V2在各种任务上均达到了最新水平。尤其是,本文展示了InceptionV3(7.57MB,精度为75:98%),ResNet50(7.99MB,精度为75:92%)和SqueezeNext(1MB,精度为68:68%)的量化结果,所有这些都没有任何手动位选择。此外,本文在Microsoft COCO上提供了对象检测的结果,与最近提出的FQN方法相比,获得了比直接均匀量化高2.6的mAP和比直接均匀量化高1.6的mAP,模型尺寸更小17.9MB。

方法

自动化的位宽选择

混合精度搜索示意图

帕累托边界搜索示意图

Hutchinson快速求解Hessian迹

Hessian迹的公式求解如下所示:

根据 Hutchinson 算法近似可以得到

Hutchinson快速估计算法

上图展示了当增加用于 Hessian迹 估计的迭代次数时,Hutchinson 算法的收敛图。可以清楚地看到,随着在512个数据点上增加数据点的数量,迹快速收敛,在该点上计算二次采样的 Hessian。可以看到,进行 50 次 Hutchinson 迭代足以实现低方差的精确逼近。基于收敛性分析,在ResNet50模型中能够在30分钟内使用4个GPU计算所有平均Hessian迹线,即54个块相对应平均每块33s。除自动位宽精度选择外,Hutchinson 算法还使 HAWQ-V2 成为一种比以前基于搜索的算法快得多的算法。

敏感度指标分析

敏感度指标分析示意图

基于最小描述长度(MDL)理论,在给定的阈值下,指定一个平坦区域所需的比特数较少,反之,指定一个具有尖锐曲率的区域所需的比特数较多。更通俗的解释,平坦区域的不精确位置所产生的噪声不会被放大,使得它更容易被量化。而尖锐区域则相反,即使是小的舍去误差也会被放大。因此,预计具有较高 Hessian 迹的层(即较大的特征值)对量化更敏感。

激活的混合精度量化

激活的混合精度量化

实验结果

ResNet50 on ImageNet

ResNet50 on ImageNet

Inception-V3 on ImageNet

Inception-V3 on ImageNet

SqueezeNext on ImageNet

SqueezeNext on ImageNet

RetinaNet-ResNet50 on COCO

RetinaNet-ResNet50 On COCO

消融实验

首先,证明为什么选择导致模型扰动最小的位精度设置非常重要,如下表所示,其中消融行模型使用的位精度设置为较大扰动。可以看到,HAWQ-V2方法模型以较小扰动,在SqueezeNext上实现了1%以上的精度提升。

模型扰动

其次,证明了使用海森矩阵的迹加上权重的 L2 范数作为敏感度度量

)的有效性。如下表所示,其中消融行模型仅使用模型参数与量化差值的 L2 敏感度度量。可以看到,HAWQ-V2提出的敏感度度量方法在SqueezeNext上实现了0.85%的精度提升。

敏感度度量消融实验

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI异构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
HAWQ:基于 Hessian 的混合精度神经网络量化
在许多应用程序中部署神经网络时,模型大小和推理速度/功率已成为主要挑战。解决这些问题的一种有前途的方法是量化。但是,将模型统一量化为超低精度会导致精度显着下降。一种新颖的解决方案是使用混合精度量化,因为与其他层相比,网络的某些部分可能允许较低的精度。但是,没有系统的方法来确定不同层的精度。对于深度网络,蛮力方法不可行,因为混合精度的搜索空间在层数上是指数级的。另一个挑战是在将模型量化到目标精度时用于确定逐块微调顺序复杂度是阶乘级别的。本文介绍了 Hessian AWare 量化(HAWQ),这是一种解决这些问题的新颖的二阶量化方法。HAWQ 根据Block块的 Hessian 最大特征值选择各层的相对量化精度。而且,HAWQ基于二阶信息为量化层提供了确定性的微调顺序。本文使用 ResNet20 在 Cifar-10 上以及用Inception-V3,ResNet50 和 SqueezeNext 模型在 ImageNet 上验证了方法的结果。将HAWQ 与最新技术进行比较表明,与 DNAS 相比,本文在 ResNet20 上使用 8 倍的激活压缩率可以达到相似/更好的精度,并且与最近提出的RVQuant和HAQ的方法相比,在ResNet50 和 Inception-V3 模型上,当缩小 14% 模型大小的情况下可以将精度提高 1%。此外,本文证明了可以将 SqueezeNext 量化为仅 1MB 的模型大小,同时在 ImageNet 上实现 Top-1 精度超过 68%。
AI异构
2020/12/08
3K0
ZeroQ:基于Data-Free的30秒快速量化方法
量化是减少神经网络推理时间和减少内存占用的一种有前途的方法。但是,大多数现有的量化方法都需要访问原始训练数据集以在量化期间进行再训练。例如,由于隐私和安全性考虑,对于具有敏感或专有数据的应用程序通常是不可能的。现有的zero-shot量化方法使用不同的启发式方法来解决此问题,但是它们导致性能不佳,尤其是在量化到超低精度时。在这里,我们提出ZeroQ,这是一种新颖的zero-shot量化框架,可以解决这一问题。ZeroQ允许混合精度量化,而无需访问训练或验证数据。这是通过优化“蒸馏数据集”来实现的,该数据集经设计可匹配网络不同层上的批标准化的统计数据。ZeroQ支持统一和混合精度量化。对于后者,我们引入了一种新颖的基于Pareto边界的方法,可以自动确定所有图层的混合精度位设置,而无需进行手动搜索。我们在各种模型上广泛测试了我们提出的方法,包括ImageNet上的ResNet18/50/152,MobileNetV2,ShuffleNet,SqueezeNext和InceptionV3,以及Microsoft COCO数据集上的RetinaNet-ResNet50。特别是,我们证明,与最近提出的DFQ方法相比,ZeroQ在MobileNetV2上可以实现1.71%的量化精度提高。重要的是,ZeroQ的计算开销非常低,它可以在不到30秒的时间内完成整个量化过程(ImageNet上ResNet50的一个epoch训练时间的0.5%)。
AI异构
2020/09/22
2.1K0
​AdaRound:训练后量化的自适应舍入
在对神经网络进行量化时,主要方法是将每个浮点权重分配给其最接近的定点值。本文发现,这不是最佳的量化策略。本文提出了 AdaRound,一种用于训练后量化的更好的权重舍入机制,它可以适应数据和任务损失。AdaRound 速度很快,不需要对网络进行微调,仅需要少量未标记的数据。本文首先从理论上分析预训练神经网络的舍入问题。通过用泰勒级数展开来逼近任务损失,舍入任务被视为二次无约束二值优化问简化为逐层局部损失,并建议通过软松弛来优化此损失。AdaRound 不仅比舍入取整有显著的提升,而且还为几种网络和任务上的训练后量化建立了新的最新技术。无需进行微调,本文就可以将 Resnet18 和 Resnet50 的权重量化为 4 位,同时保持 1% 的精度损失。
AI异构
2021/03/09
2.3K0
AAAI 2020 | 超低精度量化BERT,UC伯克利提出用二阶信息压缩神经网络
上周四,加州大学伯克利分校 Zhewei Yao 博士分享了他的 AAAI 论文《Q-BERT: Hessian Based Ultra Low Precision Quantization of BERT》,本文对此论文进行了详细解读。该研究介绍了一种使用二阶信息进行模型压缩的新型系统性方法,能够在图像分类、目标检测和自然语言处理等一系列具有挑战性的任务中产生前所未有的小模型。
机器之心
2020/02/14
1K0
AAAI 2020 | 超低精度量化BERT,UC伯克利提出用二阶信息压缩神经网络
南京大学提出量化特征蒸馏方法QFD | 完美结合量化与蒸馏,让AI落地更进一步!!!
本文首发于 【集智书童】,白名单账号转载请自觉植入本公众号名片并注明来源,非白名单账号请先申请权限,违者必究。
集智书童公众号
2023/09/04
1.4K0
南京大学提出量化特征蒸馏方法QFD | 完美结合量化与蒸馏,让AI落地更进一步!!!
北京大学提出 PTQ4ViT | 双均匀量化+Hessian引导度量,推进Transformer模型落地
自注意力模块是Transformer的基本构建块,用于捕捉全局信息。受到Transformer在自然语言处理(NLP)任务上的成功启发,研究人员将自注意力模块引入了计算机视觉。他们用自注意力模块替代了卷积神经网络(CNNs)中的卷积层,将这些网络称为视觉Transformer。视觉Transformer在许多计算机视觉任务上与CNNs相媲美,有巨大的潜力用于各种应用。
集智书童公众号
2023/11/01
1.3K0
北京大学提出 PTQ4ViT | 双均匀量化+Hessian引导度量,推进Transformer模型落地
华为诺亚Transformer后量化技术:效率百倍提升,视觉&NLP性能不减
大型预训练模型在计算机视觉和自然语言处理中展现了巨大的潜力,但是模型大、参数多的问题也给它们的商业化落地带来了很大挑战。模型压缩技术是当前的研究热点,模型量化是其中的一个重要分支。
机器之心
2022/02/23
8740
华为诺亚Transformer后量化技术:效率百倍提升,视觉&NLP性能不减
Transformer | 详细解读Transformer怎样从零训练并超越ResNet?
Vision Transformers(ViTs)和MLPs标志着在用通用神经架构替换手动特征或归纳偏置方面的进一步努力。现有工作通过大量数据为模型赋能,例如大规模预训练和/或重复的强数据增广,并且还报告了与优化相关的问题(例如,对初始化和学习率的敏感性)。
集智书童公众号
2021/07/07
1.7K0
模型进化狂飙,DetectGPT能否识别最新模型生成结果?
---- 新智元报道   来源:智源社区 作者:李灿 【新智元导读】语言模型给我们的生产生活带来了极大便利,但同时不少人也利用他们从事作弊工作。如何规避这些难辨真伪的文字所产生的负面影响也成为一大难题。 在3月9日智源Live第33期活动「DetectGPT:判断文本是否为机器生成的工具」中,主讲人Eric为我们讲解了DetectGPT工作背后的思路——一种基于概率曲率检测的用于检测模型生成文本的工具,它可以帮助我们更好地分辨文章的来源和可信度,对保护信息真实、防止欺诈等方面具有重要意义。本次报告主要
新智元
2023/05/09
2580
模型进化狂飙,DetectGPT能否识别最新模型生成结果?
模型部署系列 | 卷积Backbone量化技巧集锦
本文首发于 【集智书童】,白名单账号转载请自觉植入本公众号名片并注明来源,非白名单账号请先申请权限,违者必究。
集智书童公众号
2023/09/04
8580
模型部署系列 | 卷积Backbone量化技巧集锦
CVPR 2021 | LCQ:基于低比特量化精度提升的可学习压扩量化方法
量化深度神经网络是一种有效的减少内存消耗和提高推理速度的方法,因此适用于资源受限的设备。然而,极低位模型仍然很难达到与全精度模型相当的精度。为了解决这个问题,本文提出了可学习扩展量化 (LCQ) 作为一种新的非均匀量化方法用于 2-bit、3-bit 和 4-bit 模型量化。LCQ 联合优化模型权重和可学习的压扩函数,这些函数可以灵活而非均匀地控制权值和激活的量化级别。本文还提出了一种新的权重归一化技术,允许更稳定的量化训练。实验结果表明,在图像分类和目标检测任务中,LCQ 优于传统最先进的方法,缩小了量化模型和全精度模型之间的差距。值得注意的是,ImageNet 上的2-bit ResNet-50 模型达到了最高的 75.1% 的精度,并将差距缩小到 1.7% ,使 LCQ 能够进一步挖掘非均匀量化的潜力。
AI异构
2021/04/13
2.6K0
CVPR 2021 | LCQ:基于低比特量化精度提升的可学习压扩量化方法
ResNet 高精度预训练模型在 MMDetection 中的最佳实践
ResNet 高精度预训练 + Faster R-CNN,性能最高能提升 3.4 mAP!
OpenMMLab 官方账号
2022/05/25
3.3K1
ResNet 高精度预训练模型在 MMDetection 中的最佳实践
AdaQuant:改进训练后神经网络量化:分层校准和整数编程
训练后量化方法使用简单,并且只需要少量未标记的校准集,因此引起了相当大的关注。在没有明显过拟合的情况下,这个小的数据集不能用于微调模型。相反,这些方法仅使用校准集来设置激活的动态范围。但是,当使用低于8位的格式时(除非在小型数据集上使用),此类方法始终会导致精度显着下降。本文旨在突破8位的障碍。为此,通过在校准集上优化每一层的参数,分别最小化每一层的量化误差。本文从实验角度证明这种方法:(1)与标准的微调方法相比,对过拟合的敏感度要低得多,并且即使在非常小的校准集上也可以使用;(2)比以前的方法(仅能设置激活的动态范围)更强大。此外,本文提出一种新颖的整数编程公式,在为每层精确分配位宽的同时,限制了精度的降低。最后,本文建议对全局统计信息进行模型调整,以纠正量化期间引入的偏差。这些方法结合在视觉和文本任务上取得了SOTA的结果。例如,在ResNet50上,实现了所有层权重和激活4-bit量化,且精度下降不到1%。
AI异构
2021/04/13
3.2K0
AdaQuant:改进训练后神经网络量化:分层校准和整数编程
学界 | 模型的泛化能力仅和Hessian谱有关吗?
经验表明,通过训练深度神经网络得到的不同局部最优值往往并不能以相同的方式泛化到未知数据集上,即使取得了相同的训练损失。近年来,这一问题日益受到经验和理论深度学习研究社区的关注。从理论的角度来看,大多数用来解释这种现象的泛化边界只考虑了最差的情况,因此忽略了不同解的泛化能力。在本文中,我们将重点探讨下面的问题:
机器之心
2018/10/22
8890
学界 | 模型的泛化能力仅和Hessian谱有关吗?
动态 | 百度发布 Paddle Fluid v1.3 版本,带来多项重要更新
AI 科技评论按:日前,百度 PaddlePaddle 更新至 Fluid v1.3 版本,一如既往地, Fluid v1.3 版本在基础框架、预测引擎、模型建设、分布式训练各个方向上都实现了多项更新,而其中比较重要的更新包括:
AI科技评论
2019/11/01
5750
寻找最佳的神经网络架构,韩松组两篇论文解读
第二篇则是利用强化学习自动寻找在特定 latency 标准上精度最好的量化神经网络结构,它分别为网络的每一层搜索不同 bit 的权值和激活,得到一个经过优化的混合精度模型。两篇文章的相同之处在于,都直接从特定的硬件获得反馈信息,如 latency,energy 和 storage,而不是使用代理信息,再利用这些信息直接优化神经网络架构 (或量化 bit 数) 搜索算法。这也许会成为工业界未来的新范式。
机器之心
2019/09/09
1.3K0
寻找最佳的神经网络架构,韩松组两篇论文解读
精度无损,体积压缩70%以上,百度PaddleSlim为你的模型瘦身
PaddleSlim 是一个无论是新手还是经验者都可以很方便用来优化模型以进行部署的模型压缩库:在普通的模型训练上,只需要两行 python 代码,构造一个 Compressor 对象,即可调用。PaddleSlim 实现了目前主流的网络量化、剪枝、蒸馏三种压缩策略,并可快速配置多种压缩策略组合使用。针对体积已经很小的 MobileNet 模型,在模型效果不损失的前提下实现 70% 以上的体积压缩。
机器之心
2019/05/15
8200
精度无损,体积压缩70%以上,百度PaddleSlim为你的模型瘦身
PaddlePaddle重磅升级,Paddle Fluid v1.4版本发布
继上个版本发布后,PaddlePaddle添加了很多新的特性和工具组件,目前已发展为集核心框架、工具组件和服务平台为一体的端到端开源深度学习平台。
用户1386409
2019/06/06
1.5K0
Timm助力ResNet焕发“第二春”,无蒸馏且无额外数据,性能高达80.4%
code: https://github.com/rwightman/pytorch-image-models
AIWalker
2021/10/12
1.9K0
论文推荐:TResNet改进ResNet 实现高性能 GPU 专用架构并且效果优于 EfficientNet
TResNet: High Performance GPU-Dedicated Architecture 来自阿里的达摩院,发布于2021 WACV,该论文引入了一系列架构修改,旨在提高神经网络的准确性,同时保持其 GPU 训练和推理效率。
deephub
2022/11/11
1.1K0
论文推荐:TResNet改进ResNet 实现高性能 GPU 专用架构并且效果优于 EfficientNet
推荐阅读
HAWQ:基于 Hessian 的混合精度神经网络量化
3K0
ZeroQ:基于Data-Free的30秒快速量化方法
2.1K0
​AdaRound:训练后量化的自适应舍入
2.3K0
AAAI 2020 | 超低精度量化BERT,UC伯克利提出用二阶信息压缩神经网络
1K0
南京大学提出量化特征蒸馏方法QFD | 完美结合量化与蒸馏,让AI落地更进一步!!!
1.4K0
北京大学提出 PTQ4ViT | 双均匀量化+Hessian引导度量,推进Transformer模型落地
1.3K0
华为诺亚Transformer后量化技术:效率百倍提升,视觉&NLP性能不减
8740
Transformer | 详细解读Transformer怎样从零训练并超越ResNet?
1.7K0
模型进化狂飙,DetectGPT能否识别最新模型生成结果?
2580
模型部署系列 | 卷积Backbone量化技巧集锦
8580
CVPR 2021 | LCQ:基于低比特量化精度提升的可学习压扩量化方法
2.6K0
ResNet 高精度预训练模型在 MMDetection 中的最佳实践
3.3K1
AdaQuant:改进训练后神经网络量化:分层校准和整数编程
3.2K0
学界 | 模型的泛化能力仅和Hessian谱有关吗?
8890
动态 | 百度发布 Paddle Fluid v1.3 版本,带来多项重要更新
5750
寻找最佳的神经网络架构,韩松组两篇论文解读
1.3K0
精度无损,体积压缩70%以上,百度PaddleSlim为你的模型瘦身
8200
PaddlePaddle重磅升级,Paddle Fluid v1.4版本发布
1.5K0
Timm助力ResNet焕发“第二春”,无蒸馏且无额外数据,性能高达80.4%
1.9K0
论文推荐:TResNet改进ResNet 实现高性能 GPU 专用架构并且效果优于 EfficientNet
1.1K0
相关推荐
HAWQ:基于 Hessian 的混合精度神经网络量化
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档