MiCoPro:基于硬件感知代理模型的端到端混合精度软硬件协同设计
摘要
MiCoPro 提出了一种用于混合精度量化的端到端软硬件协同设计框架,利用硬件感知代理模型在延迟约束下搜索最优的逐层位宽,并直接部署到边缘硬件,在准确率下降不到3%的情况下,实现了最高40%的延迟降低。
arXiv:2608.06916v1 公告类型:新
摘要:低位宽的量化神经网络(QNN)在边缘设备上实现高效存储与计算方面已展现出巨大潜力。为了在最大化加速的同时缓解精度下降,逐层混合精度量化(MPQ)成为一种流行的解决方案。然而,现有探索MPQ方案的算法在灵活性和效率上存在局限。理解不同MPQ方案对训练后量化和量化感知训练结果的复杂影响,对传统方法而言是一大挑战。此外,现有工作中缺少一个用于MPQ模型优化与部署的端到端框架。
为解决这些挑战,我们提出了MiCo框架,一个面向边缘AI应用的整体化MPQ探索与部署框架。该框架采用一种新颖的优化算法,在严格的延迟约束下搜索精度最优的量化配置。我们进一步将该框架扩展为MiCoPro,其中引入了一个鲁棒的硬件感知代理(HAP)模型,以提升预测准确性和硬件通用性。通过利用目标特定的延迟建模,MiCoPro能够实现从PyTorch模型到裸机C代码的快速探索和直接部署。我们在BitFusion加速器和带SIMD扩展的RISC-V处理器上展示了该框架的通用性,在准确率下降不到3%的情况下,实现了最高40%的延迟降低。
查看缓存全文
缓存时间: 2026/08/10 08:04
# MiCoPro:面向硬件感知代理模型的端到端混合精度软硬件协同设计 来源:https://arxiv.org/html/2608.06916 Zijun Jiang 和 Yangdi Lyu 任职于香港科技大学(广州)微电子学域,中国广州 511453(邮箱:[email protected]; [email protected];)。 ###### 摘要 采用低位宽数据的量化神经网络(QNN)已被证明在边缘设备上的高效存储和计算方面具有巨大潜力。为了在最大化加速效果的同时减轻精度下降,分层混合精度量化(MPQ)成为一种流行的解决方案。然而,现有的MPQ方案探索算法在灵活性和效率上仍然有限。理解不同MPQ方案对训练后量化(PTQ)和量化感知训练(QAT)结果的复杂影响,对传统方法而言是一个挑战。此外,现有工作缺乏一个用于MPQ模型优化和部署的端到端框架。针对这些挑战,我们提出了MiCo框架,这是一个面向边缘AI应用的整体式MPQ探索与部署框架。该框架采用一种新颖的优化算法,在严格的延迟约束下搜索精度最优的量化配置。我们进一步将该框架扩展为MiCoPro,引入了一个鲁棒的硬件感知代理(HAP)模型,以增强预测精度和硬件通用性。通过利用目标特定的延迟建模,MiCoPro能够实现从PyTorch模型到裸机C代码的快速探索和直接部署。我们在BitFusion加速器和支持SIMD扩展的RISC-V处理器上展示了该框架的多功能性,实现了高达40%的延迟降低,同时精度下降不到3%。 ## I 引言 微型机器学习(ML)和边缘人工智能(AI)在当今AI生态系统中正变得越来越重要和有价值。然而,由于严格的资源约束,在边缘设备上部署AI模型面临挑战。为此,将高精度浮点数据转换为低精度整数数据的量化技术被广泛采用,以降低内存成本并提升边缘AI模型的性能。对于许多AI应用,神经网络量化甚至可以将数据位宽降至4位以下的极低范围,同时仍保持可接受的精度。分层混合精度量化(MPQ)并非对所有层使用统一的位宽,而是为每个模型层分配不同的精度,以实现更好的精度和效率。为了在加速量化模型推理的同时保持精度,必须考虑层敏感性和计算成本来设计MPQ方案。随着现代AI模型中层数不断增加,手动分析和分配MPQ方案变得不切实际。现有的基于启发式优化和机器学习技术的搜索算法已被开发用于探索MPQ方案。然而,MPQ搜索空间的高维性以及层间和层内复杂的相关性使得高效探索颇具挑战。此外,随着位宽变小,执行量化感知训练(QAT)变得必要,而其耗时的特性限制了在有限搜索预算内可评估的方案数量。除了高效探索MPQ方案之外,在特定硬件平台上部署MPQ模型还带来了另一项挑战。现有的混合精度硬件设计已探索了多种架构和执行机制,从专用加速器到处理器扩展不等。专用加速器通过支持灵活精度计算提供高性能,但通常会引入额外的硬件复杂性和有限的可移植性。对于面积和能耗约束严格的边缘设备,使用混合精度指令和优化内核扩展通用处理器提供了一种更实用的解决方案。近期工作已经证明了基于RISC-V的扩展和SIMD风格执行在加速低位宽神经网络方面的有效性。然而,支持MPQ推理需要部署栈中多个层的协调,包括量化方案选择、算子实现、数据打包和运行时支持。现有的部署框架主要面向固定精度推理,而特定硬件的解决方案通常针对单个架构进行优化。因此,一个能够根据硬件特性高效探索MPQ方案并在不同混合精度平台上部署所得模型的统一框架仍然是一个开放挑战。 为了解决MPQ领域的这些挑战,在本工作中,我们旨在开发一个开源框架^1[github.com/HKUSTGZ-MICS-LYU/MiCo-python](https://github.com/HKUSTGZ-MICS-LYU/MiCo-python),用于在搜索预算限制内为给定的AI模型探索最优MPQ方案,并更好地感知底层硬件。本工作的主要贡献如下: - • 一种针对神经网络MPQ方案的新型探索算法,可在特定约束下工作。通过结合集成学习模型(随机森林)和专门设计的采样策略,我们的方法能够高效探索MPQ方案,从而在相同约束下实现更低的精度下降。 - • 一种能够适应不同硬件目标的硬件感知延迟代理建模方法。与传统的位操作数(BOPs)指标相比,所提出的代理模型生成的延迟估计能更准确地反映真实硬件的性能,从而有效引导MPQ探索朝向能够带来真正加速的方案。 - • 一个整体式框架,用于探索MPQ模型并将其部署到各种硬件平台,包括支持混合精度加速的加速器和CPU。我们通过两个不同硬件平台上的案例研究来说明该框架,其中MPQ模型在精度下降极小的情况下实现了加速。 ## II 背景 ### II-A 量化 量化将高精度连续值(权重和激活)映射到一个由精度约束定义的有限离散值集合。在面向硬件的设计中,对称均匀量化被广泛采用,因为它直接将零映射到零,无需零点偏移,从而简化了算术逻辑。 #### II-A1 通用整数量化(≥2位) 对于浮点值\(x\),其\(b\)位有符号整数表示\(x_{q}\)可表示为: \[ x_{q}=\text{clamp}\left(\left\lfloor\frac{x}{S}\right\rceil,q_{\min},q_{\max}\right) \tag{1} \] 其中\(\lfloor\cdot\rceil\)表示四舍五入取整运算符,\(\text{clamp}(v,a,b)=\max(a,\min(v,b))\),并且\(q_{\min},q_{\max}\)定义整数范围。对于标准的\(b\)位有符号整数表示,\(q_{\min}=-2^{b-1}\)且\(q_{\max}=2^{b-1}-1\)。这里,尺度因子\(S\)表示相邻离散电平之间的量化步长,由\(x\)的动态范围决定: \[ S=\frac{\max(|x|)}{q_{\max}} \tag{2} \] #### II-A2 极低位宽量化(三值与二值) 当精度降至2位以下时,量化更自然地通过阈值化来表述。 - • 三值量化。值被约束为\(\{-1,0,+1\}\)。其三个量化电平产生有效位宽\(\log_{2}3\approx 1.58\)位。\(S\)被设置为\(x\)的平均绝对值。因此,通用的舍入和钳位操作简化如下: \[ x_{q}=\begin{cases} +1,&x\geq S/2\\ -1,&x\leq -S/2\\ 0,&otherwise\\ \end{cases} \tag{3} \] - • 二值量化。值根据符号严格映射到\(\{-1,+1\}\)。 \[ x_{q}=\text{sign}(x)=\begin{cases} +1,&x>0\\ -1,&x\leq 0 \end{cases} \tag{4} \] 这种极端量化主要应用于权重,而激活则保留相对较高的位宽以保持网络的表示能力[34](https://arxiv.org/html/2608.06916#bib.bib23)。然而,以往的工作如[24](https://arxiv.org/html/2608.06916#bib.bib24)、[42](https://arxiv.org/html/2608.06916#bib.bib25)也已将二值化应用于面向图像分类的网络的激活。 #### II-A3 混合精度量化(MPQ) 传统量化对所有层分配统一位宽(如INT8或INT4),而单个网络层对数值扰动的鲁棒性各不相同,导致要么精度下降过度,要么效率提升未被充分挖掘。因此,引入逐层混合精度量化,即为各层分配不同精度,以提高QNN的灵活性和效率。每一层的配置记作W\(x\)A\(y\),其中\(x\)和\(y\)分别是权重和激活位宽(\(b_{w}\),\(b_{a}\));例如,W4A8表示4位权重和8位激活。 ### II-B PTQ 与 QAT 随着网络层数的增加,MPQ方案的搜索空间呈指数增长。搜索这一广阔空间需要评估大量候选层配置,这凸显了训练后量化(PTQ)与量化感知训练(QAT)之间的关键权衡。PTQ直接使用所选方案量化预训练模型,速度快但精度往往较低;QAT则重新训练量化模型,计算和时间成本更高,但通常能获得更高的精度。先前关于低精度敏感性的研究[41](https://arxiv.org/html/2608.06916#bib.bib44)表明,低位宽方案(如INT4和INT2)在PTQ下会遭受严重的量化噪声。为了在我们的设置中确定QAT成为必要的精确转换点,我们在CIFAR-10/CIFAR-100数据集上,针对文献[19](https://arxiv.org/html/2608.06916#bib.bib32)中的卷积神经网络(CNN)模型和ResNet-18[13](https://arxiv.org/html/2608.06916#bib.bib41),评估了其第二层被量化为不同权重和激活精度时的QAT–PTQ精度差距。 W4A8 W4A4 W2A4 W2A2 W1A2 W1A1 0.2 0.2 0.4 0.4 0.6 0.6 0.8 0.8 Top-1 Accuracy CNN PTQ CNN QAT Recovery ResNet-18 PTQ ResNet-18 QAT Recovery 图1:PTQ精度与QAT恢复 如图1所示,对于4位以上的位宽(如W4A8和W4A4),QAT与PTQ之间的精度差异很小,但对于4位以下的位宽,差异变得显著。这一结果启发了一种分叉式MPQ评估策略:对4位及以上的候选方案利用快速PTQ估计,而对低于4位的配置应用QAT以保持高精度。 ### II-C 硬件感知的MPQ探索 为了高效探索MPQ方案,估计候选模型的硬件成本至关重要。直接延迟评估依赖于周期精确仿真或设备上剖析,根据目标架构和模型复杂度可能需要数秒到数分钟的时间。因此,诸如位操作数(BOPs)之类的分析指标被广泛用于近似混合精度模型的计算成本,而无需重复调用昂贵的硬件评估[2](https://arxiv.org/html/2608.06916#bib.bib2)。第\(i\)层的BOPs定义为: \[ \mathrm{BOPs}_{i}=b_{w_{i}}b_{a_{i}}\mathrm{MACs}_{i}, \tag{5} \] 其中\(b_{w_{i}}\)和\(b_{a_{i}}\)分别表示权重和激活位宽,\(\mathrm{MACs}_{i}\)是第\(i\)层的MAC操作数。更一般地,硬件感知的MPQ探索可以表述为: \[ \displaystyle \mathrm{Accuracy}(M_{Q}), \tag{6} \] 约束条件: \[ \displaystyle C_{\mathcal{H}}(Q)\leq C_{\mathrm{constr}}, \] 其中\(M_{Q}\)是使用方案\(Q=[(b_{w_{1}},b_{a_{1}}),...,(b_{w_{L}},b_{a_{L}})]\)量化的模型,\(C_{\mathcal{H}}(Q)\)表示其在目标硬件\(\mathcal{H}\)上的硬件成本,可以使用分析指标或目标特定的性能估计来实例化。在以往的MPQ框架[38](https://arxiv.org/html/2608.06916#bib.bib1)、[31](https://arxiv.org/html/2608.06916#bib.bib15)、[40](https://arxiv.org/html/2608.06916#bib.bib3)中,它通常被定义为总BOPs,即\(\sum_{i=1}^{L}\mathrm{BOPs}_{i}\),因为其评估开销低。尽管BOPs作为一种高效的硬件成本代理,但它主要捕捉理论上的算术复杂度,并未捕捉量化算子在目标硬件上的执行方式。实际上,真实世界的执行收益受到硬件特性的影响,例如混合精度处理宽度和并行度、SIMD/向量通道利用率、操作数在寄存器中的打包、内存访问和总线宽度,以及数据打包/解包开销。这些因素决定了位宽减少能否转化为更高的有效并行性和更低的内存流量。因此,相同的BOPs减少在不同硬件目标上可能导致截然不同的端到端延迟改善。 参见图注(a) BitFusion上的VGG7 参见图注(b) 扩展CPU上的LeNet 图2:BOPs与实际延迟之间的相关性。 我们随机采样了VGG7[29](https://arxiv.org/html/2608.06916#bib.bib31)和LeNet[20](https://arxiv.org/html/2608.06916#bib.bib33)的64种MPQ方案,并在BitFusion[28](https://arxiv.org/html/2608.06916#bib.bib30)和VexiiMiCo[16](https://arxiv.org/html/2608.06916#bib.bib51)上测量了它们的实际延迟。如图2所示,BOPs与延迟正相关,但较低的\(R^{2}\)值表明它并未完全捕捉目标特定的端到端性能,这促使了后面引入的硬件感知代理(HAP)模型。 ## III 相关工作 ### III-A 混合精度量化探索 现有的MPQ探索方法大致可分为分析优化、基于学习的搜索和可微优化方法。代表性MPQ探索方法的比较总结在表I中。 表 I:与现有算法的比较 - • BB:可能的权重/激活位宽组合数量 分析优化方法估计逐层的量化敏感性,并将MPQ分配表述为约束优化问题。HAWQ-V3[38](https://arxiv.org/html/2608.06916#bib.bib1)采用基于Hessian的敏感性分析和整数线性规划(ILP)来确定硬件约束下的位宽分配。基于ww的方法[40](https://arxiv.org/html/2608.06916#bib.bib3)对量化对每层的影响进行建模,并使用非线性规划(NLP)求解所得的MPQ分配问题。这些方法通过利用逐层统计量有效降低了搜索成本。然而,它们通常依赖于预定义的敏感性指标,并且在探索独立的权重和激活精度方面灵活性有限。 基于学习的方法将MPQ探索视为黑盒优化问题,并学习量化方案与模型精度之间的关系。HAQ[35](http://
相似文章
NANQ:面向模拟存内计算的噪声底感知混合精度非均匀量化
本文提出了NANQ,一种面向模拟存内计算(CIM)系统的噪声底感知混合精度非均匀量化框架,它根据硬件噪声特性调整量化精度,并在低位宽约束下提高模型精度。
Colla-Q:通过最小最大精度平衡在MoE量化中实现协作专家
本文介绍了Colla-Q,一种基于激活熵的比特分配框架,用于量化混合专家模型,以平衡专家性能,提高整体模型效率并减少对校准数据集的依赖。
MixQuant:大语言模型的自适应混合精度量化
MixQuant提出了一种针对大语言模型的自适应混合精度量化框架,通过边缘化随机上游配置下的层失真来处理可变内存预算,在多个模型和预算下均优于现有方法。
GEMQ:面向MoE大语言模型的全局专家级混合精度量化方法
提出GEMQ,一种面向MoE大语言模型的全局专家级混合精度量化方法,利用线性规划和路由器微调来减少内存占用并加速推理,同时将精度损失降至最低。
dMX: 面向低精度浮点格式的可微分混合精度分配
dMX 是一个可微分混合精度量化框架,能够为大型语言模型逐层学习最优的浮点位宽分配,目标是由 OCP 标准定义的 MXFP 系列格式。它采用基于温度的退火策略和预算感知的正则化项进行连续优化,在 Llama、Qwen3 和 SmolLM2 模型上始终优于基于 KL 散度的启发式方法。