CN110969251A - 基于无标签数据的神经网络模型量化方法及装置 - Google Patents
基于无标签数据的神经网络模型量化方法及装置 Download PDFInfo
- Publication number
- CN110969251A CN110969251A CN201911189663.1A CN201911189663A CN110969251A CN 110969251 A CN110969251 A CN 110969251A CN 201911189663 A CN201911189663 A CN 201911189663A CN 110969251 A CN110969251 A CN 110969251A
- Authority
- CN
- China
- Prior art keywords
- neural network
- network model
- layer
- quantized
- representing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003062 neural network model Methods 0.000 title claims abstract description 238
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000011002 quantification Methods 0.000 title claims abstract description 11
- 238000013139 quantization Methods 0.000 claims abstract description 97
- 230000006870 function Effects 0.000 claims description 31
- 230000008859 change Effects 0.000 claims description 29
- 238000005457 optimization Methods 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 abstract description 23
- 230000006835 compression Effects 0.000 abstract description 5
- 238000007906 compression Methods 0.000 abstract description 5
- 238000012549 training Methods 0.000 abstract description 4
- 238000012545 processing Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000001994 activation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 241000282414 Homo sapiens Species 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000013140 knowledge distillation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及图像处理技术领域,具体涉及一种基于无标签数据的神经网络模型量化方法及装置。为了解决现有技术需要依赖训练集才能实现对神经网络压缩的问题,本发明提出一种基于无标签数据的神经网络模型量化方法,包括基于第一预设量化位宽对原始神经网络模型的权重进行量化,获取第一量化神经网络模型;基于原始神经网络模型的输出和第一量化神经网络模型的输出,对第一量化神经网络模型的每一层不同通道的量化位宽进行优化,获取第二量化神经网络模型;基于原始神经网络模型的特征和第二量化神经网络模型的特征,对第二量化神经网络模型的权重进行优化,获取目标神经网络模型。本发明的方法能够通过少量无标签数据对神经网络模型进行量化。
Description
技术领域
本发明涉及图像处理技术领域,具体涉及一种基于无标签数据的神经网络模型量化方法及装置。
背景技术
深度神经网络在计算机视觉、语音识别等领域取得了巨大成功,深度神经网络的应用也越加广泛。深度神经网络的结构在近年来得到极大发展,甚至在一些任务上识别的准确率超过了人类,但是与此同时,深度神经网络需要巨大的参数量和计算量,导致深度神经网络的应用受到了较大限制,例如,将神经网络部署到移动设备上。
随着今年深度神经网络的压缩和加速成为学术界和工业界的研究热点,涌现了大量的深度神经网络量化方法,例如模型量化、网络剪枝、低秩分解、知识蒸馏、轻量化模型等。其中,模型量化能够实现较高的压缩比,在定制硬件上能够实现较高的加速比。
但是现有的深度神经网络量化方法均需要依赖训练集才能实现对深度神经网络的压缩,并且整个量化过程十分耗时。在实际应用中,例如医学图像分析等,因为隐私等各种原因,导致无法获得大量的训练数据,也就限制了现有的深度神经网络量化方法的应用。
因此,如何提出一种解决现有技术问题的方案是本领域技术人员需要解决的技术问题。
发明内容
为了解决现有技术中的上述问题,即为了解决现有技术需要依赖训练集才能实现对深度神经网络压缩的问题,本发明的第一方面提供了一种基于无标签数据的神经网络模型量化方法,所述方法包括:
基于第一预设量化位宽对原始神经网络模型的权重进行量化,获取第一量化神经网络模型;
其中,所述原始神经网络模型为预先设定并训练好的神经网络模型,所述原始神经网络模型的权重为浮点型参数;
基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化,获取第二量化神经网络模型;
其中,所述原始神经网络模型的输出是将预先获取的无标签数据输入所述原始神经网络模型获得的最后一层的输出,所述第一量化神经网络模型的输出是将所述无标签数据输入所述第一量化神经网络模型获得的最后一层的输出;
基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,对所述第二量化神经网络模型的权重进行优化,获取目标神经网络模型;
其中,所述原始神经网络模型的特征是将所述无标签数据输入所述原始神经网络模型获得的中间层和最后一层的输出,所述第二量化神经网络模型的特征是将所述无标签数据输入所述第二量化神经网络模型获得的中间层和最后一层的输出。
优选地,“基于第一预设量化位宽对原始神经网络模型的权重进行量化”,其方法包括按照如下公式所示的方法对所述原始神经网络模型的权重进行量化,得到第一量化神经网络模型的权重:
wq=round(wf/Δ)Δ
Δ=(max-min)/(2n-1)
其中,wf表示所述原始神经网络模型的权重,wq表示所述第一量化神经网络模型的权重,f表示所述神经网络模型,q表示所述第一量化神经网络模型,round()表示四舍五入函数,Δ表示量化步长,max表示所述原始神经网络模型的每一层通道中最大的权重,min表示所述原始神经网络模型的每一层通道中最小的权重,n表示所述量化位宽。
优选地,“基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化”,其方法包括:
基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,获取所述原始神经网络模型和所述第一量化神经网络模型的输出差异值;
基于所述输出差异值,通过反向传播算法优化所述输出差异值,分别获取所述第一量化神经网络模型的每一层通道的权重的相对变化率;
根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,为每一层不同通道的权重分配对应的量化位宽,以完成对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化。
优选地,“基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,获取所述原始神经网络模型和所述第一量化神经网络模型的输出差异值”,其方法包括按照如下公式所示的方法获取所述输出差异值:
Ls=MSE(u,v)
其中,Ls表示所述输出差异值,u表示所述原始神经网络模型的输出,v表示所述第一量化神经网络模型的输出,MSE表示均方误差函数;
“基于所述输出差异值,通过反向传播算法优化所述输出差异值,分别获取所述第一量化神经网络模型的每一层通道的权重的相对变化率”,其方法包括按照如下公式所示的方法获取权重的相对变化率:
优选地,“根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,为每一层不同通道的权重分配对应的量化位宽”,其方法包括:
根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,计算每一层不同通道的相对变化率均值,计算每一层不同通道的相对变化率均值,获取所述第一量化神经网络模型中各层的通道的权重相对变化率的排序结果;
根据所述排序结果,为所述第一量化神经网络模型每一层中排序结果位于第一预设阈值之前的通道的权重分配第二预设量化位宽,为排序结果位于第二预设阈值之后的通道的权重分配第三预设量化位宽,为剩余通道的权重分配所述第一预设量化位宽。
优选地,“基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,对所述第二量化神经网络模型的权重进行优化”,其方法包括:
基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,获取所述第二量化神经网络模型的目标损失函数;
基于所述目标损失函数,通过反向传播算法优化所述目标损失函数,并通过随机梯度下降算法优化所述目标损失函数,以实现对所述第二量化神经网络模型的权重进行优化。
优选地,“基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,获取所述第二量化神经网络模型的目标损失函数”,其方法包括按照如下公式所示的方法获取所述第二量化神经网络模型的目标损失函数:
其中,Lkd表示所述目标损失函数,l表示用于优化的网络层数,βi表示第i层的影响因子,MSE表示均方误差函数,ui表示所述原始神经网络模型的第i层的输出,vi表示所述第二量化神经网络模型的第i层的输出。
本发明的另一方面还提供了一种基于无标签数据的神经网络模型量化装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行如前述所述的基于无标签数据的神经网络模型量化方法。
本发明的另一方面还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前述所述的基于无标签数据的神经网络模型量化方法。
本发明提供的基于无标签数据的神经网络模型量化方法能够针对神经网络采用层次化的表达、不同层和不同通道的重要性不同的特点,通过优化每一层不同通道的量化位宽,提高神经网络模型的表达能力。通过少量无标签数据,优化神经网络模型每一层不同通道的位宽分配,能够在不增加消耗的条件下,增加神经网络模型的表达能力,提高模型性能。
附图说明
图1是本发明的基于无标签数据的神经网络模型量化方法的流程示意图;
图2是本发明的实施例利用无标签数据进行通道位宽优化的框架示意图;
图3是本发明的实施例利用无标签数据进行量化模型优化的框架示意图。
具体实施方式
为使本发明的实施例、技术方案和优点更加明显,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所述的实施例是本发明的一部分实施例,而不是全部实施例。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
人工神经网络可指用于产生人工神经元(或者神经元模型)的互连集合的计算器件或由计算器件执行的方法。人工神经元可通过对输入数据执行简单的运算来产生输出数据,且输出数据可以被传送到其他人工神经元。作为人工神经网络的实例,深度神经网络或深度学习架构具有多层式结构,且特定层的输出可以作为下一层的输入。在这种多层式结构中,可根据多个样本对每一层进行训练。
为了降低计算复杂度,可以对深度神经网络进行量化。其中,量化是指将输入值映射到数目比输入值数目小的值的过程,例如通过舍入将实数映射到整数。在深度神经网络中,量化是涉及将浮点神经网络转化成固定点神经网络的过程。举例来说,在人工神经网络中,可以对层激活、权重、偏置等应用量化。
由于在神经网络中的结果准确性与计算复杂度之间存在折中的关系,因此,深度神经网络的量化可能导致其准确性降低,并且准确性降低的程度取决于量化方法的类型。
如图1所示,图1示例性地示出了本申请基于无标签数据的神经网络模型量化方法的流程示意图。本申请基于无标签数据的神经网络模型量化方法包括如下步骤:
步骤S101:基于第一预设量化位宽对原始神经网络模型的权重进行量化,获取第一量化神经网络模型。
其中,所述原始神经网络模型为预先设定并训练好的神经网络模型,所述原始神经网络模型的权重为浮点型参数。
其中,“基于第一预设量化位宽对原始神经网络模型的权重进行量化”,其方法包括按照如下公式(1)所示的方法对所述原始神经网络模型的权重进行量化:
公式(1):
wq=round(wf/Δ)Δ
Δ=(max-min)/(2n-1)
其中,wf表示所述原始神经网络模型的权重,f表示所述神经网络模型,wq表示所述第一量化神经网络模型的权重,q表示所述第一量化神经网络模型,round()表示四舍五入函数,Δ表示量化步长,max表示所述原始神经网络模型的每一层通道中最大的权重,min表示所述原始神经网络模型的每一层通道中最小的权重,n表示所述量化位宽。
需要说明的是,原始神经网络模型可以是已经训练好的全精度(32位浮点型)神经网络模型。原始神经网络模型可以叫做预训练模型,第一量化神经网络模型可以叫做初始量化模型。
实际应用中,原始神经网络模型的权重以通道为单位进行量化。举例来说,对于神经网络模型,其卷积层的权重是一个四维张量(n×c×h×w),其中,n表示输出通道数,c表示输入通道数,h、w分别表示卷积核的高和宽,对神经网络模型进行量化时,c×h×w个权重为一个量化单元。
示例性地,可以对原始神经网络模型进行n比特量化。n比特量化是指将原始神经网络模型中原来32位的浮点数用n比特的定点数进行表示,其中,n的值可以根据实际需要进行设定,n比特的参数可以表示2n个值。举例来说,4比特定点数可以表示为0000、0001、……、1111,一个浮点型权重可以近似表示为F≈Δ*Q,其中,F表示浮点数,Δ表示量化步长,Q表示定点数。
步骤S102:基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化,获取第二量化神经网络模型。
其中,所述原始神经网络模型的输出是将预先获取的无标签数据输入所述原始神经网络模型获得的最后一层的输出,所述第一量化神经网络模型的输出是将所述无标签数据输入所述第一量化神经网络模型获得的最后一层的输出;
如图2所示,图2是本发明的实施例利用无标签数据进行通道位宽优化的框架示意图。
在一种可能的实现方式中,步骤S102还可以包括:基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,获取所述原始神经网络模型和所述第一量化神经网络模型的输出差异值;
基于所述输出差异值,通过反向传播算法优化所述输出差异值,分别获取所述第一量化神经网络模型的每一层通道的权重的相对变化率;
根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,为每一层不同通道的权重分配对应的量化位宽,以完成对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化。
在一种可能的实现方式中,“基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,获取所述原始神经网络模型和所述第一量化神经网络模型的输出差异值”,其方法包括按照如下公式(2)所示的方法获取所述输出差异值:
公式(2):
Ls=MSE(u,v)
其中,Ls表示所述输出差异值,u表示所述原始神经网络模型的输出,v表示所述第一量化神经网络模型的输出,MSE表示均方误差函数。
在一种可能的实现方式中,“基于所述输出差异值,通过反向传播算法优化所述输出差异值,分别获取所述第一量化神经网络模型的每一层通道的权重的相对变化率”,其方法包括按照如下公式(3)所示的方法获取权重的相对变化率:
公式(3):
在一种可能的实现方式中,步骤S102还可以包括:“根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,为每一层不同通道的权重分配对应的量化位宽”,其方法包括:
根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,计算每一层不同通道的相对变化率均值,计算每一层不同通道的相对变化率均值,获取所述第一量化神经网络模型中各层的通道的权重相对变化率的排序结果;
根据所述排序结果,为所述第一量化神经网络模型每一层中排序结果位于第一预设阈值之前的通道的权重分配第二预设量化位宽,为排序结果位于第二预设阈值之后的通道的权重分配第三预设量化位宽,为剩余通道的权重分配所述第一预设量化位宽。
具体地,可以根据第一量化神经网络模型中不同通道的权重对量化的敏感程度,优化不同通道的量化位宽。可选地,对比例为p的高敏感度通道,可以分配n+1比特的位宽,对比例为p的低敏感度通道,分配n-1比特的位宽,其余通道的量化位宽则保持n比特;其中,p的取值可以为10%。相应地,高敏感度通道可以是排序结果为前10%的通道,低敏感度通道可以是排序结果为最后10%的通道。
所述优化不同通道的量化位宽,以每一层为单位,分析每一层中各个通道的参数对量化的敏感程度,不同层之间的位宽优化互不影响。所述第一量化神经网络模型权重梯度,只用作评估第一量化神经网络模型不同通道的参数对量化的敏感程度,不用于参数更新,在整个量化位宽优化过程中,第一量化神经网络模型的权重保持不变。
步骤S103:基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,对所述第二量化神经网络模型的权重进行优化,获取目标神经网络模型。
其中,所述原始神经网络模型的特征是将所述无标签数据输入所述原始神经网络模型获得的中间层和最后一层的输出,所述第二量化神经网络模型的特征是将所述无标签数据输入所述第二量化神经网络模型获得的中间层和最后一层的输出。
如图3所示,图3是本发明的实施例利用无标签数据进行量化模型优化的框架示意图,第二量化神经网络模型可以叫做位宽优化的量化模型。
在一种可能的实现方式中,步骤S103还可以包括:基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,获取所述第二量化神经网络模型的目标损失函数;
基于所述目标损失函数,通过反向传播算法优化所述目标损失函数,并通过随机梯度下降算法优化所述目标损失函数,以实现对所述第二量化神经网络模型的权重进行优化。
在一种可能的实现方式中,“基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,获取所述第二量化神经网络模型的目标损失函数”,其方法包括按照如下公式(4)所示的方法获取所述第二量化神经网络模型的目标损失函数:
公式(4):
其中,Lkd表示所述目标损失函数,l表示用于优化的网络层数,βi表示第i层的影响因子,MSE表示均方误差函数,ui表示所述原始神经网络模型的第i层的输出,vi表示所述第二量化神经网络模型的第i层的输出。
需要说明的是,本申请公开的方法中在步骤S103的优化过程需要保存浮点型参数,根据计算得到的梯度更新浮点型参数,然后对浮点型参数进行量化,得到更新的量化权重。
此外,针对步骤S103的方法,在优化过程中,需要限制模型的搜索空间,具体包括:优化过程中,第二量化神经网络模型的每层激活的输出范围保持不变;对包含数据归一化层的模型,数据归一化层的均值、方差和原始神经网络模型一致,在优化过程中保持固定;对于包含Dropout层的神经网络模型,Dropout层与推理阶段保持一致。
得到目标神经网络模型之后,在应用阶段将目标神经网络模型的数据归一化层和卷积层或者全连接层进行融合,以减少计算量。
本申请的另一方面还提供了一种基于无标签数据的神经网络模型量化装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行如前述所述的方法。
本申请的另一方面还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前述所述的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
综上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (9)
1.一种基于无标签数据的神经网络模型量化方法,其特征在于,所述方法包括:
基于第一预设量化位宽对原始神经网络模型的权重进行量化,获取第一量化神经网络模型;
其中,所述原始神经网络模型为预先设定并训练好的神经网络模型,所述原始神经网络模型的权重为浮点型参数;
基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化,获取第二量化神经网络模型;
其中,所述原始神经网络模型的输出是将预先获取的无标签数据输入所述原始神经网络模型获得的最后一层的输出,所述第一量化神经网络模型的输出是将所述无标签数据输入所述第一量化神经网络模型获得的最后一层的输出;
基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,对所述第二量化神经网络模型的权重进行优化,获取目标神经网络模型;
其中,所述原始神经网络模型的特征是将所述无标签数据输入所述原始神经网络模型获得的中间层和最后一层的输出,所述第二量化神经网络模型的特征是将所述无标签数据输入所述第二量化神经网络模型获得的中间层和最后一层的输出。
2.根据权利要求1所述的方法,其特征在于,“基于第一预设量化位宽对原始神经网络模型的权重进行量化”,其方法包括按照如下公式所示的方法对所述原始神经网络模型的权重进行量化,得到第一量化神经网络模型的权重:
wq=round(wf/Δ)Δ
Δ=(max-min)/(2n-1)
其中,wf表示所述原始神经网络模型的权重,f表示所述神经网络模型,wq表示所述第一量化神经网络模型的权重,q表示所述第一量化神经网络模型,round()表示四舍五入函数,Δ表示量化步长,max表示所述原始神经网络模型的每一层通道中最大的权重,min表示所述原始神经网络模型的每一层通道中最小的权重,n表示所述量化位宽。
3.根据权利要求1所述的方法,其特征在于,“基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化”,其方法包括:
基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,获取所述原始神经网络模型和所述第一量化神经网络模型的输出差异值;
基于所述输出差异值,通过反向传播算法优化所述输出差异值,分别获取所述第一量化神经网络模型的每一层通道的权重的相对变化率;
根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,为每一层通道的权重分配对应的量化位宽,以完成对所述第一量化神经网络模型的每一层不同通道的量化位宽进行优化。
4.根据权利要求3所述的方法,其特征在于,“基于所述原始神经网络模型的输出和所述第一量化神经网络模型的输出,获取所述原始神经网络模型和所述第一量化神经网络模型的输出差异值”,其方法包括按照如下公式所示的方法获取所述输出差异值:
Ls=MSE(u,v)
其中,Ls表示所述输出差异值,u表示所述原始神经网络模型的输出,v表示所述第一量化神经网络模型的输出,MSE表示均方误差函数;
“基于所述输出差异值,通过反向传播算法优化所述输出差异值,分别获取所述第一量化神经网络模型的每一层通道的权重的相对变化率”,其方法包括按照如下公式所示的方法获取权重的相对变化率:
5.根据权利要求3所述的方法,其特征在于,“根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,为每一层通道的权重分配对应的量化位宽”,其方法包括:
根据所述第一量化神经网络模型的每一层通道的权重的相对变化率,计算每一层不同通道的相对变化率均值,获取所述第一量化神经网络模型中各层的通道的权重相对变化率的排序结果;
根据所述排序结果,为所述第一量化神经网络模型每一层中排序结果位于第一预设阈值之前的通道的权重分配第二预设量化位宽,为排序结果位于第二预设阈值之后的通道的权重分配第三预设量化位宽,为剩余通道的权重分配所述第一预设量化位宽。
6.根据权利要求1所述的方法,其特征在于,“基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,对所述第二量化神经网络模型的权重进行优化”,其方法包括:
基于所述原始神经网络模型的特征和所述第二量化神经网络模型的特征,获取所述第二量化神经网络模型的目标损失函数;
基于所述目标损失函数,通过反向传播算法优化所述目标损失函数,并通过随机梯度下降算法优化所述目标损失函数,以实现对所述第二量化神经网络模型的权重进行优化。
8.一种基于无标签数据的神经网络模型量化装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行如权利要求1至7中任意一项所述的方法。
9.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至7中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911189663.1A CN110969251B (zh) | 2019-11-28 | 2019-11-28 | 基于无标签数据的神经网络模型量化方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911189663.1A CN110969251B (zh) | 2019-11-28 | 2019-11-28 | 基于无标签数据的神经网络模型量化方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110969251A true CN110969251A (zh) | 2020-04-07 |
CN110969251B CN110969251B (zh) | 2023-10-31 |
Family
ID=70031960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911189663.1A Active CN110969251B (zh) | 2019-11-28 | 2019-11-28 | 基于无标签数据的神经网络模型量化方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110969251B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563589A (zh) * | 2020-04-14 | 2020-08-21 | 中科物栖(北京)科技有限责任公司 | 一种神经网络模型的量化方法及装置 |
CN111582476A (zh) * | 2020-05-09 | 2020-08-25 | 北京百度网讯科技有限公司 | 自动量化策略搜索方法、装置、设备以及存储介质 |
CN111639745A (zh) * | 2020-05-13 | 2020-09-08 | 北京三快在线科技有限公司 | 一种数据处理方法及装置 |
CN111667054A (zh) * | 2020-06-05 | 2020-09-15 | 北京百度网讯科技有限公司 | 生成神经网络模型的方法、装置、电子设备以及存储介质 |
CN112115825A (zh) * | 2020-09-08 | 2020-12-22 | 广州小鹏自动驾驶科技有限公司 | 神经网络的量化方法、装置、服务器和存储介质 |
CN113065638A (zh) * | 2021-02-27 | 2021-07-02 | 华为技术有限公司 | 一种神经网络压缩方法及其相关设备 |
WO2022011237A1 (en) * | 2020-07-09 | 2022-01-13 | Truera, Inc. | System and method for evaluating machine learning model behavior over data segments |
WO2022021868A1 (zh) * | 2020-07-29 | 2022-02-03 | 苏州浪潮智能科技有限公司 | 一种数据处理的方法、系统、设备及可读存储介质 |
CN114065913A (zh) * | 2021-10-28 | 2022-02-18 | 深圳云天励飞技术股份有限公司 | 模型量化方法、装置及终端设备 |
CN114169513A (zh) * | 2022-02-11 | 2022-03-11 | 深圳比特微电子科技有限公司 | 神经网络的量化方法、装置、存储介质及电子设备 |
WO2022222649A1 (zh) * | 2021-04-23 | 2022-10-27 | Oppo广东移动通信有限公司 | 神经网络模型的训练方法、装置、设备及存储介质 |
WO2022246986A1 (zh) * | 2021-05-27 | 2022-12-01 | 腾讯云计算(北京)有限责任公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
CN117077740A (zh) * | 2023-09-25 | 2023-11-17 | 荣耀终端有限公司 | 模型量化方法和设备 |
WO2024158174A1 (ko) * | 2023-01-25 | 2024-08-02 | 삼성전자주식회사 | 모델의 연산과 관련된 오퍼레이터의 양자화를 위한 전자 장치 및 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480770A (zh) * | 2017-07-27 | 2017-12-15 | 中国科学院自动化研究所 | 可调节量化位宽的神经网络量化与压缩的方法及装置 |
US20190050710A1 (en) * | 2017-08-14 | 2019-02-14 | Midea Group Co., Ltd. | Adaptive bit-width reduction for neural networks |
CN110276451A (zh) * | 2019-06-28 | 2019-09-24 | 南京大学 | 一种基于权重归一化的深度神经网络压缩方法 |
-
2019
- 2019-11-28 CN CN201911189663.1A patent/CN110969251B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480770A (zh) * | 2017-07-27 | 2017-12-15 | 中国科学院自动化研究所 | 可调节量化位宽的神经网络量化与压缩的方法及装置 |
US20190050710A1 (en) * | 2017-08-14 | 2019-02-14 | Midea Group Co., Ltd. | Adaptive bit-width reduction for neural networks |
CN110276451A (zh) * | 2019-06-28 | 2019-09-24 | 南京大学 | 一种基于权重归一化的深度神经网络压缩方法 |
Non-Patent Citations (1)
Title |
---|
陈桂林;马胜;郭阳;李艺煌;徐睿;: "通过K-means算法实现神经网络的加速和压缩", 计算机工程与科学, no. 05 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563589A (zh) * | 2020-04-14 | 2020-08-21 | 中科物栖(北京)科技有限责任公司 | 一种神经网络模型的量化方法及装置 |
CN111563589B (zh) * | 2020-04-14 | 2024-01-16 | 中科物栖(南京)科技有限公司 | 一种神经网络模型的量化方法及装置 |
CN111582476A (zh) * | 2020-05-09 | 2020-08-25 | 北京百度网讯科技有限公司 | 自动量化策略搜索方法、装置、设备以及存储介质 |
CN111639745A (zh) * | 2020-05-13 | 2020-09-08 | 北京三快在线科技有限公司 | 一种数据处理方法及装置 |
CN111639745B (zh) * | 2020-05-13 | 2024-03-01 | 北京三快在线科技有限公司 | 一种数据处理方法及装置 |
CN111667054B (zh) * | 2020-06-05 | 2023-09-01 | 北京百度网讯科技有限公司 | 生成神经网络模型的方法、装置、电子设备以及存储介质 |
CN111667054A (zh) * | 2020-06-05 | 2020-09-15 | 北京百度网讯科技有限公司 | 生成神经网络模型的方法、装置、电子设备以及存储介质 |
WO2022011237A1 (en) * | 2020-07-09 | 2022-01-13 | Truera, Inc. | System and method for evaluating machine learning model behavior over data segments |
WO2022021868A1 (zh) * | 2020-07-29 | 2022-02-03 | 苏州浪潮智能科技有限公司 | 一种数据处理的方法、系统、设备及可读存储介质 |
CN112115825A (zh) * | 2020-09-08 | 2020-12-22 | 广州小鹏自动驾驶科技有限公司 | 神经网络的量化方法、装置、服务器和存储介质 |
CN112115825B (zh) * | 2020-09-08 | 2024-04-19 | 广州小鹏自动驾驶科技有限公司 | 神经网络的量化方法、装置、服务器和存储介质 |
CN113065638A (zh) * | 2021-02-27 | 2021-07-02 | 华为技术有限公司 | 一种神经网络压缩方法及其相关设备 |
WO2022222649A1 (zh) * | 2021-04-23 | 2022-10-27 | Oppo广东移动通信有限公司 | 神经网络模型的训练方法、装置、设备及存储介质 |
WO2022246986A1 (zh) * | 2021-05-27 | 2022-12-01 | 腾讯云计算(北京)有限责任公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
CN114065913A (zh) * | 2021-10-28 | 2022-02-18 | 深圳云天励飞技术股份有限公司 | 模型量化方法、装置及终端设备 |
CN114169513A (zh) * | 2022-02-11 | 2022-03-11 | 深圳比特微电子科技有限公司 | 神经网络的量化方法、装置、存储介质及电子设备 |
WO2024158174A1 (ko) * | 2023-01-25 | 2024-08-02 | 삼성전자주식회사 | 모델의 연산과 관련된 오퍼레이터의 양자화를 위한 전자 장치 및 방법 |
CN117077740A (zh) * | 2023-09-25 | 2023-11-17 | 荣耀终端有限公司 | 模型量化方法和设备 |
CN117077740B (zh) * | 2023-09-25 | 2024-03-12 | 荣耀终端有限公司 | 模型量化方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110969251B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110969251B (zh) | 基于无标签数据的神经网络模型量化方法及装置 | |
Huang et al. | Learning to prune filters in convolutional neural networks | |
US12112256B2 (en) | Loss-error-aware quantization of a low-bit neural network | |
KR102589303B1 (ko) | 고정 소수점 타입의 뉴럴 네트워크를 생성하는 방법 및 장치 | |
EP3270330B1 (en) | Method for neural network and apparatus performing same method | |
US20190340492A1 (en) | Design flow for quantized neural networks | |
JP2022066192A (ja) | ディープニューラルネットワークの動的適応 | |
CN110175628A (zh) | 一种基于自动搜索与知识蒸馏的神经网络剪枝的压缩算法 | |
US20220414432A1 (en) | Method and system for splitting and bit-width assignment of deep learning models for inference on distributed systems | |
CN110852439A (zh) | 神经网络模型的压缩与加速方法、数据处理方法及装置 | |
CN108805257A (zh) | 一种基于参数范数的神经网络量化方法 | |
CN112200296A (zh) | 网络模型量化方法、装置、存储介质及电子设备 | |
CN108734266A (zh) | 深度神经网络模型的压缩方法及装置、终端、存储介质 | |
EP3921781A1 (en) | Efficient binary representations from neural networks | |
KR20210039921A (ko) | 신경망 모델을 최적화하도록 구성된 심층 신경망 시스템의 동작 방법 | |
CN114462591A (zh) | 一种动态量化神经网络的推理方法 | |
CN113361707A (zh) | 一种模型压缩方法、系统及计算机可读介质 | |
CN117217280A (zh) | 神经网络模型优化方法、装置及计算设备 | |
Joseph et al. | A programmable approach to model compression | |
Moradipari et al. | Feature and parameter selection in stochastic linear bandits | |
Huai et al. | Latency-constrained DNN architecture learning for edge systems using zerorized batch normalization | |
CN113408704A (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN116976461A (zh) | 联邦学习方法、装置、设备及介质 | |
CN115983362A (zh) | 一种量化方法、推荐方法以及装置 | |
de Moura et al. | Skipping CNN convolutions through efficient memoization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |