在本文中,我们研究了DNN培训中量化的影响。我们假设重量量化是正则化的一种形式,正则化的量与量化水平(精度)相关。我们通过提供分析研究和经验结果来证实我们的假设。通过将重量量化为重量噪声的一种形式,我们探讨了该噪声在训练时如何通过网络传播。然后,我们表明该噪声的大小与量化水平相关。为了确认我们的分析研究,我们在本文中进行了广泛的实验列表,其中我们表明,在各种数据集中,在各种视觉任务和模型中可以看到量化的正则化效果。基于我们的研究,我们建议8位量化在不同的视觉任务和模型中提供了一种可靠的正则化形式。
translated by 谷歌翻译
随着最近在移动和边缘设备上部署神经网络模型的需求,希望提高模型对看不见的测试数据的普遍性,以及提高模型在固定点量化下的稳健性,以实现有效部署。然而,最大限度地减少培训损失在泛化和量化性能上提供了一些保证。在这项工作中,我们通过在改善模型对界限重量扰动的框架下理论上统一它们的理论上统一并最小化模型权重的稳健性并最小化了模型权重的框架的框架,同时履行泛化和量化性能。因此,我们提出了HESSIAN增强的鲁棒优化方法,以通过基于梯度的训练过程最小化Hessian特征值,同时提高泛化和量化性能。 HERO在测试准确性上高达3.8%,高度高达30%,在80%的培训标签扰动下的准确性高达30%,以及各种精度范围内的最佳训练后量化精度,包括在SGD上的高精度改善> 10%在各种数据集上的共同模型架构培训模型。
translated by 谷歌翻译
Quantization has become a predominant approach for model compression, enabling deployment of large models trained on GPUs onto smaller form-factor devices for inference. Quantization-aware training (QAT) optimizes model parameters with respect to the end task while simulating quantization error, leading to better performance than post-training quantization. Approximation of gradients through the non-differentiable quantization operator is typically achieved using the straight-through estimator (STE) or additive noise. However, STE-based methods suffer from instability due to biased gradients, whereas existing noise-based methods cannot reduce the resulting variance. In this work, we incorporate exponentially decaying quantization-error-aware noise together with a learnable scale of task loss gradient to approximate the effect of a quantization operator. We show this method combines gradient scale and quantization noise in a better optimized way, providing finer-grained estimation of gradients at each weight and activation layer's quantizer bin size. Our controlled noise also contains an implicit curvature term that could encourage flatter minima, which we show is indeed the case in our experiments. Experiments training ResNet architectures on the CIFAR-10, CIFAR-100 and ImageNet benchmarks show that our method obtains state-of-the-art top-1 classification accuracy for uniform (non mixed-precision) quantization, out-performing previous methods by 0.5-1.2% absolute.
translated by 谷歌翻译
当通过模拟量化训练神经网络时,我们观察到,量化的权重可以意外地在两个网格点之间振荡。这种效果的重要性及其对量化感知培训(QAT)的影响并未在文献中得到充分理解或研究。在本文中,我们更深入地研究了重量振荡现象,并表明由于推理过程中错误估计的批次纳入统计量和训练期间的噪声增加,它可能导致明显的准确性降解。这些效果在低位($ \ leq $ 4位)的高效网络中尤其明显,具有深度可分开的层,例如mobilenets和效率网络。在我们的分析中,我们研究了一些先前提出的QAT算法,并表明其中大多数无法克服振荡。最后,我们提出了两种新型的QAT算法来克服训练期间的振荡:振荡衰减和迭代重量冻结。我们证明,我们的算法对于低位(3&4位)的重量(3&4位)的最新精度以及有效体系结构的激活量化,例如MobilenetV2,MobilenetV3和Imagenet上的EfficentNet-Lite。我们的源代码可在{https://github.com/qualcomm-ai-research/oscillations-qat}上获得。
translated by 谷歌翻译
深神经网络(DNN)的庞大计算和记忆成本通常排除了它们在资源约束设备中的使用。将参数和操作量化为较低的位精确,为神经网络推断提供了可观的记忆和能量节省,从而促进了在边缘计算平台上使用DNN。量化DNN的最新努力采用了一系列技术,包括渐进式量化,步进尺寸的适应性和梯度缩放。本文提出了一种针对边缘计算的混合精度卷积神经网络(CNN)的新量化方法。我们的方法在模型准确性和内存足迹上建立了一个新的Pareto前沿,展示了一系列量化模型,可提供低于4.3 MB的权重(WGTS。)和激活(ACTS。)。我们的主要贡献是:(i)用张量学的学习精度,(ii)WGTS的靶向梯度修饰,(i)硬件感知的异质可区分量化。和行为。为了减轻量化错误,以及(iii)多相学习时间表,以解决从更新到学习的量化器和模型参数引起的学习不稳定性。我们证明了我们的技术在Imagenet数据集上的有效性,包括高效网络lite0(例如,WGTS。的4.14MB和ACTS。以67.66%的精度)和MobilenEtV2(例如3.51MB WGTS。 % 准确性)。
translated by 谷歌翻译
权重和激活的量化是减少深神经网络(DNN)训练的计算占地面积的主要方法之一。当前方法使得4位量化的前向阶段。但是,这仅构成了培训过程的三分之一。减少整个训练过程的计算占地面积需要定量神经梯度,即相对于中间神经层的输出的损耗梯度。在这项工作中,我们研究了在量化神经网络训练中具有无偏差值的重要性,以及如何维护它,以及如何。基于此,我们建议一个$ \ texit {logarithic unbiased量化} $(luq)方法,以将前向和向后阶段量化为4位,实现最先进的导致4位训练,没有开销。例如,在Imagenet的Reset50中,我们实现了1.18%的降级。我们进一步改善了这一点以降解仅在高精度微调的单一时期与差异减少方法结合后的单一时期 - 均增加与先前建议的方法相当的开销。最后,我们建议使用低精度格式的方法来避免在训练过程的三分之二期间乘法,从而减少乘法器使用的5倍。
translated by 谷歌翻译
Although weight and activation quantization is an effective approach for Deep Neural Network (DNN) compression and has a lot of potentials to increase inference speed leveraging bit-operations, there is still a noticeable gap in terms of prediction accuracy between the quantized model and the full-precision model. To address this gap, we propose to jointly train a quantized, bit-operation-compatible DNN and its associated quantizers, as opposed to using fixed, handcrafted quantization schemes such as uniform or logarithmic quantization. Our method for learning the quantizers applies to both network weights and activations with arbitrary-bit precision, and our quantizers are easy to train. The comprehensive experiments on CIFAR-10 and ImageNet datasets show that our method works consistently well for various network structures such as AlexNet, VGG-Net, GoogLeNet, ResNet, and DenseNet, surpassing previous quantization methods in terms of accuracy by an appreciable margin. Code available at https://github.com/Microsoft/LQ-Nets
translated by 谷歌翻译
神经网络量化旨在将特定神经网络的高精度权重和激活转变为低精度的权重/激活,以减少存储器使用和计算,同时保留原始模型的性能。但是,紧凑设计的主链体系结构(例如Mobilenets)通常用于边缘设备部署的极端量化(1位重量/1位激活)会导致严重的性能变性。本文提出了一种新颖的量化感知训练(QAT)方法,即使通过重点关注各层之间的权重之间的重量间依赖性,也可以通过极端量化有效地减轻性能退化。为了最大程度地减少每个重量对其他重量的量化影响,我们通过训练一个依赖输入依赖性的相关矩阵和重要性向量来对每一层的权重进行正交转换,从而使每个权重都与其他权重分开。然后,我们根据权重量化的重要性来最大程度地减少原始权重/激活中信息丢失的重要性。我们进一步执行从底层到顶部的渐进层量化,因此每一层的量化都反映了先前层的权重和激活的量化分布。我们验证了我们的方法对各种基准数据集的有效性,可针对强神经量化基线,这表明它可以减轻ImageNet上的性能变性,并成功地保留了CIFAR-100上具有紧凑型骨干网络的完整精确模型性能。
translated by 谷歌翻译
深度学习一直是近来最具破坏性的技术进步之一。深度学习模型的高性能以高度计算,存储和功率要求为代价。感知到加速和压缩这些模型以提高设备性能的直接需求,我们引入了Deeplite Neutrino,以便对模型的生产优化和Deeplite运行时进行介绍,以在基于ARM的平台上部署超低位量化模型。我们为ARMV7和ARMV8架构实施低级量化内核,可在32位和64位基于ARM的设备上进行部署。通过使用矢量化,并行化和平铺的有效实现,与具有XNNPACK后端的TensorFlow Lite相比,我们在分类和检测模型上分别实现了高达2倍和2.2倍的速度。与ONNX运行时相比,我们还获得了高达5倍和3.2倍的显着加速,分别用于分类和检测模型。
translated by 谷歌翻译
内存处理(PIM)是一种越来越多地研究的神经形态硬件,承诺能量和吞吐量改进以进行深度学习推断。 PIM利用大量平行,有效的模拟计算在内存内部,绕过传统数字硬件中数据移动的瓶颈。但是,需要额外的量化步骤(即PIM量化),通常由于硬件约束而导致的分辨率有限,才能将模拟计算结果转换为数字域。同时,由于不完善的类似物到数字界面,PIM量化中的非理想效应广泛存在,这进一步损害了推理的准确性。在本文中,我们提出了一种培训量化网络的方法,以合并PIM量化,这对所有PIM系统无处不在。具体而言,我们提出了PIM量化意识培训(PIM-QAT)算法,并通过分析训练动力学以促进训练收敛,从而在向后传播期间引入重新传播技术。我们还提出了两种技术,即批处理归一化(BN)校准和调整精度训练,以抑制实际PIM芯片中涉及的非理想线性和随机热噪声的不利影响。我们的方法在三个主流PIM分解方案上进行了验证,并在原型芯片上进行了物理上的验证。与直接在PIM系统上部署常规训练的量化模型相比,该模型没有考虑到此额外的量化步骤并因此失败,我们的方法提供了重大改进。它还可以在CIFAR10和CIFAR100数据集上使用各种网络深度来获得最受欢迎的网络拓扑结构,在CIFAR10和CIFAR100数据集上,在PIM系统上达到了可比的推理精度。
translated by 谷歌翻译
量化和修剪是用于降低深神经网络的推理成本的核心技术。目前,最先进的量化技术适用于权重和激活;然而,大量修剪通常仅应用于网络的权重。在这项工作中,我们在训练期间共同应用了新颖的均匀量化和非结构化修剪方法,对深神经网络的重量和激活。使用我们的方法,我们凭经验评估当前接受的Prune-Deatizy范式在各种计算机视觉任务中,并在应用于深度神经网络的权重和激活时观察非换向性质。通过这些观察来了解,我们阐明了非换向假设:对于针对特定任务接受培训的给定深度神经网络,存在精确的培训计划,其中可以引入量化和修剪来优化网络性能。我们确定不仅存在的最佳排序,而且在识别和生成的任务中也有所不同。在我们的培训框架内使用最佳培训计划,我们通过现有解决方案展示了每个内存足迹的性能提高。
translated by 谷歌翻译
训练后量化(PTQ)由于其在部署量化的神经网络方面的便利性而引起了越来越多的关注。 Founding是量化误差的主要来源,仅针对模型权重进行了优化,而激活仍然使用圆形至最终操作。在这项工作中,我们首次证明了精心选择的激活圆形方案可以提高最终准确性。为了应对激活舍入方案动态性的挑战,我们通过简单的功能适应圆形边框,以在推理阶段生成圆形方案。边界函数涵盖了重量误差,激活错误和传播误差的影响,以消除元素误差的偏差,从而进一步受益于模型的准确性。我们还使边境意识到全局错误,以更好地拟合不同的到达激活。最后,我们建议使用Aquant框架来学习边界功能。广泛的实验表明,与最先进的作品相比,Aquant可以通过可忽略不计的开销来取得明显的改进,并将Resnet-18的精度提高到2位重量和激活后训练后量化下的精度最高60.3 \%。
translated by 谷歌翻译
为了以计算有效的方式部署深层模型,经常使用模型量化方法。此外,由于新的硬件支持混合的位算术操作,最近对混合精度量化(MPQ)的研究开始通过搜索网络中不同层和模块的优化位低宽,从而完全利用表示的能力。但是,先前的研究主要是在使用强化学习,神经体系结构搜索等的昂贵方案中搜索MPQ策略,或者简单地利用部分先验知识来进行位于刻度分配,这可能是有偏见和优势的。在这项工作中,我们提出了一种新颖的随机量化量化(SDQ)方法,该方法可以在更灵活,更全球优化的空间中自动学习MPQ策略,并具有更平滑的梯度近似。特别是,可区分的位宽参数(DBP)被用作相邻位意选择之间随机量化的概率因素。在获取最佳MPQ策略之后,我们将进一步训练网络使用熵感知的bin正则化和知识蒸馏。我们广泛评估了不同硬件(GPU和FPGA)和数据集的多个网络的方法。 SDQ的表现优于所有最先进的混合或单个精度量化,甚至比较低的位置量化,甚至比各种重新网络和Mobilenet家族的全精度对应物更好,这表明了我们方法的有效性和优势。
translated by 谷歌翻译
通过移除昂贵的乘法操作并将连续权重量化成低比特离散值来减少计算复杂性,与传统的神经网络相比,这是快速且节能的低比特离散值。然而,现有的换档网络对重量初始化敏感,并且还产生由消失梯度和重量率冻结问题引起的降级性能。为了解决这些问题,我们提出了一种低点重新参数化,这是一种用于训练低位换档网络的新技术。我们的方法以符号稀疏偏移3倍的方式分解离散参数。以这种方式,它有效地学习了一个低比特网络,其权重动力学类似于全精密网络并对重量初始化不敏感。我们所提出的培训方法推动移位神经网络的界限,并以在想象中的前1个精度方面显示出3位换档网络。
translated by 谷歌翻译
量化的神经网络通常需要较小的内存占用和较低的计算复杂性,这对于有效部署至关重要。然而,量化不可避免地导致原始网络的分布分发,这通常会降低性能。为了解决这个问题,已经制定了大规模的努力,但大多数现有方法缺乏统计因素,依赖于几种手动配置。在本文中,我们提出了一种自适应映射量化方法,以学习模型内固有的最佳潜在子分布,并用混凝土高斯混合物(GM)平稳地近似。特别地,网络权重被符合GM - 近似的子分布。该子分布随着直接任务客观优化引导的共同调整模式中的重量更新而发展。在各种现代架构上的图像分类和物体检测的充分实验证明了所提出的方法的有效性,泛化性能和可转移性。此外,开发了用于移动CPU的有效部署流,在Octa-Core ARM CPU上实现高达7.46 $ \ Times $推理加速。代码在https://github.com/runpeidong/dgms公开发布。
translated by 谷歌翻译
当量化神经网络以进行有效推断时,低位整数是效率的首选格式。但是,低位浮点数具有额外的自由度,分配了一些以指数级的工作。本文深入研究了神经网络推断的浮点格式的这种好处。我们详细介绍了可以为FP8格式做出的选择,包括对Mantissa和Exponent的位数的重要选择,并通过分析显示这些选择可以提供更好的性能。然后,我们展示了这些发现如何转化为真实网络,为FP8模拟提供有效的实现,以及一种新算法,该算法能够学习比例参数和FP8格式中的指数位数。我们的主要结论是,在对各种网络进行培训后量化时,就准确性而言,FP8格式优于INT8,并且指数位数量的选择是由网络中异常值的严重性驱动的。我们还通过量化感知训练进行实验,在训练网络以降低离群值的效果时,格式的差异消失。
translated by 谷歌翻译
强大的量化提高了网络对各种实现的公差,从而允许在不同的位宽度或零散的低精度算术中可靠的输出。在这项工作中,我们进行了广泛的分析以确定量化误差的来源,并提出了三个见解以鲁棒化的网络,以防止量化:减少误差传播,范围夹紧误差最小化以及遗传的稳健性,以抗量化。基于这些见解,我们提出了两种称为对称正则化(Symreg)和饱和非线性(SATNL)的新方法。在培训期间应用提出的方法可以增强对现有训练后量化(PTQ)和量化感知培训(QAT)算法的量化的任意神经网络的鲁棒性各种条件。我们对CIFAR和Imagenet数据集进行了广泛的研究,并验证了所提出的方法的有效性。
translated by 谷歌翻译
Adder Neural Network (AdderNet) provides a new way for developing energy-efficient neural networks by replacing the expensive multiplications in convolution with cheaper additions (i.e.l1-norm). To achieve higher hardware efficiency, it is necessary to further study the low-bit quantization of AdderNet. Due to the limitation that the commutative law in multiplication does not hold in l1-norm, the well-established quantization methods on convolutional networks cannot be applied on AdderNets. Thus, the existing AdderNet quantization techniques propose to use only one shared scale to quantize both the weights and activations simultaneously. Admittedly, such an approach can keep the commutative law in the l1-norm quantization process, while the accuracy drop after low-bit quantization cannot be ignored. To this end, we first thoroughly analyze the difference on distributions of weights and activations in AdderNet and then propose a new quantization algorithm by redistributing the weights and the activations. Specifically, the pre-trained full-precision weights in different kernels are clustered into different groups, then the intra-group sharing and inter-group independent scales can be adopted. To further compensate the accuracy drop caused by the distribution difference, we then develop a lossless range clamp scheme for weights and a simple yet effective outliers clamp strategy for activations. Thus, the functionality of full-precision weights and the representation ability of full-precision activations can be fully preserved. The effectiveness of the proposed quantization method for AdderNet is well verified on several benchmarks, e.g., our 4-bit post-training quantized adder ResNet-18 achieves an 66.5% top-1 accuracy on the ImageNet with comparable energy efficiency, which is about 8.5% higher than that of the previous AdderNet quantization methods.
translated by 谷歌翻译
Mixed-precision quantization has been widely applied on deep neural networks (DNNs) as it leads to significantly better efficiency-accuracy tradeoffs compared to uniform quantization. Meanwhile, determining the exact precision of each layer remains challenging. Previous attempts on bit-level regularization and pruning-based dynamic precision adjustment during training suffer from noisy gradients and unstable convergence. In this work, we propose Continuous Sparsification Quantization (CSQ), a bit-level training method to search for mixed-precision quantization schemes with improved stability. CSQ stabilizes the bit-level mixed-precision training process with a bi-level gradual continuous sparsification on both the bit values of the quantized weights and the bit selection in determining the quantization precision of each layer. The continuous sparsification scheme enables fully-differentiable training without gradient approximation while achieving an exact quantized model in the end.A budget-aware regularization of total model size enables the dynamic growth and pruning of each layer's precision towards a mixed-precision quantization scheme of the desired size. Extensive experiments show CSQ achieves better efficiency-accuracy tradeoff than previous methods on multiple models and datasets.
translated by 谷歌翻译
如何训练深度神经网络(DNNS)很好地概括了深度学习的核心问题,尤其是对于当今严重的过度参数化网络。在本文中,我们提出了一种有效的方法来通过对优化过程中损失函数的梯度规范进行惩罚来改善模型的概括。我们证明,限制损失功能的梯度规范可以帮助引导优化者找到平坦的最小值。我们利用一阶近似来有效地实现相应的梯度,以适应梯度下降框架。在我们的实验中,我们确认使用我们的方法时,可以在不同的数据集中改善各种模型的概括性能。另外,我们表明,最近的清晰度最小化方法(Foret等,2021)是我们方法的特殊情况,但不是最好的情况,我们方法的最佳情况可以给出新的最先进的性能在这些任务上。代码可从{https://github.com/zhaoyang-0204/gnp}获得。
translated by 谷歌翻译