CN112766484A - 浮点神经网络模型量化系统和方法 - Google Patents
浮点神经网络模型量化系统和方法 Download PDFInfo
- Publication number
- CN112766484A CN112766484A CN202011609407.6A CN202011609407A CN112766484A CN 112766484 A CN112766484 A CN 112766484A CN 202011609407 A CN202011609407 A CN 202011609407A CN 112766484 A CN112766484 A CN 112766484A
- Authority
- CN
- China
- Prior art keywords
- neural network
- network model
- point neural
- value
- calibration algorithm
- 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.)
- Pending
Links
- 238000013139 quantization Methods 0.000 title claims abstract description 185
- 238000003062 neural network model Methods 0.000 title claims abstract description 146
- 238000000034 method Methods 0.000 title claims description 50
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 152
- 238000013528 artificial neural network Methods 0.000 claims abstract description 104
- 238000005457 optimization Methods 0.000 claims abstract description 25
- 230000004913 activation Effects 0.000 claims description 149
- 238000005070 sampling Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 7
- 241001440820 Zethes Species 0.000 claims 1
- 238000011002 quantification Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 102100030148 Integrator complex subunit 8 Human genes 0.000 description 4
- 101710092891 Integrator complex subunit 8 Proteins 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000001172 regenerating effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009466 transformation Effects 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
-
- 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/04—Architecture, e.g. interconnection topology
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)
- Image Analysis (AREA)
Abstract
本发明公开了一种浮点神经网络模型的量化系统,包括:组合校准算法单元,所述组合校准算法单元包括多种校准算法单元,组合校准算法单元为各个浮点神经网络模型或者一个浮点神经网络模型中的各个激活值分配不同的校准算法,以便获得量化参数,并对浮点神经网络进行量化,得到定点神经网络模型;自检优化单元,所述自检优化单元在校准数据集的一个子集上,推演浮点神经网络模型和定点神经网络模型,计算浮点神经网络模型和定点神经网络模型的结果的余弦相似度作为基准余弦相似度;自检优化单元微调初始量化参数,生成经微调的定点神经网络模型,计算浮点神经网络模型和经微调的定点神经网络模型的结果的余弦相似度;判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种浮点神经网络模型量化系统和方法。
背景技术
人工神经网络的应用在很多方面都取得了很大的进展,例如在模式识别、智能机器人、自动控制、预测估计、生物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题,表现出了良好的智能特性。
随着模型预测(predication)越来越准确,网络越来越深,神经网络消耗的计算和内存资源成为问题,尤其是在移动设备上。例如,如果部署相对较小的ResNet-50网络来分类,运行网络模型就需要3GB/s的内存带宽,在网络运行时,内存、CPU和电池会都在飞速消耗,使设备变得智能化需要付出昂贵的代价。随着神经网络的发展,大型神经网络具有越来越多的层级和数据量,这为神经网络的部署带来了巨大的挑战。
针对这些问题,一方面可通过设计更有效的网络架构,用相对较小的模型尺寸达到可接受准确度;另一方面,可通过压缩、编码等方式减小网络规模。量化是最广泛采用的压缩方法之一。
例如,目前常见的神经网络框架为了高效地推演神经网络模型往往采用量化方式将浮点神经网络模型转换为定点神经网络模型,具体方法为:首先,通过在一定规模的数据集上对浮点模型进行推演,收集每个中间结果的浮点范围,来确定定点神经网络模型的量化参数;然后通过收集到的量化参数,量化浮点神经网络模型,得到定点神经网络模型。
然而,常见的神经网络框架中,收集中间结果浮点范围,并计算得到神经网络量化参数的校准算法往往比较单一且简单,对复杂的神经网络进行量化后,可能产生比较严重的性能损失。使用者也无法通过比较不同算法的性能优劣来选择合适的校准算法。
另外,常见的神经网络框架中,进行完模型量化后,缺乏评估量化性能并对收集到的量化参数进行自检和优化的部分。
发明内容
针对现有技术中存在的问题,根据本发明的一个实施例,提供一种浮点神经网络模型的量化系统,包括:
组合校准算法单元,所述组合校准算法单元包括多种校准算法单元,组合校准算法单元为各个浮点神经网络模型或者一个浮点神经网络模型中的各个激活值分配不同的校准算法,以便获得量化参数,并对浮点神经网络进行量化,得到定点神经网络模型;
自检优化单元,所述自检优化单元在校准数据集的一个子集上,推演浮点神经网络模型和定点神经网络模型,计算浮点神经网络模型和定点神经网络模型的输出值的余弦相似度作为基准余弦相似度;自检优化单元微调初始量化参数,生成经微调的定点神经网络模型,计算浮点神经网络模型和经微调的定点神经网络模型的输出值的余弦相似度;判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度。
在本发明的一个实施例中,所述组合校准算法单元包括:极值校准算法单元、均值校准算法单元、交叉熵校准算法单元、覆盖范围校准算法单元、和/或均方差校准算法单元。
在本发明的一个实施例中,所述极值校准算法单元采用极值校准算法获得量化参数,极值校准算法在一定规模的数据集上对浮点神经网络进行推演,并记录每个激活值在这个数据集内取到的最大值和最小值,并作为这一个激活值的量化参数;
所述均值校准算法单元采用均值校准算法获得量化参数,均值校准算法在一定规模的数据集D={d1,d2,…,dn}上对浮点神经网络进行推演,记录每个激活值在所有数据集D内的单个数据di上的最大值和最小值,并求出这些最大值和最小值均值,作为这一个激活值的量化参数;
交叉熵校准算法单元采用交叉熵校准算法获得量化参数,交叉熵校准算法:对于神经网络的每一层的激活值,按照采样数得到该激活值分布的直方图序列P,根据P所覆盖的范围(min,max)枚举得到所有候选量化参数N,N中包含n组候选量化参数,分别表示为(min1,max1),(min2, max2),…,(minn,maxn),利用N中的每组候选量化参数量化激活值的分布直方图序列P,得到量化后的激活值直方图分布Q,然后将P和Q 归一化,并计算归一化后的P和Q的交叉熵,选择计算得到交叉熵最小的一组后选量化参数作为激活值的量化参数;
覆盖范围校准算法单元采用覆盖范围校准算法获得量化参数,覆盖范围校准算法在极值校准算法的基础上,将收集到的最大值和最小值乘上一个溃缩系数C,作为该激活值的量化参数;
均方差校准算法单元采用均方差校准算法获得量化参数,均方差校准算法:对于神经网络的每一层的激活值P,使用此激活值P的最大值和最小值作为初始量化参数,并计算得到用于量化浮点数的缩放尺度scale0以及零点位置zeropoint;利用scale0和zeropoint对激活值P进行量化反量化,得到伪浮点激活值Q,计算P和Q的均方差m0;按照一定的采样数n等分 scale0,得到Δscale=scale0÷n,以采样数n为循环,每次将scale0减去Δscale,得到scalei=scale0-i*△scale,利用scalei作为新的缩放尺度和zeropoint一起再次对激活值P进行量化反量化,得到伪浮点激活值Qi,并计算P和Qi的均方差mi;结束采样数循环后,选择均方差最小的一组缩放尺度和零点 zeropoing一起作为该激活值的量化参数。
在本发明的一个实施例中,组合校准算法单元包括配置单元,所述配置单元对每个激活值的校准方法进行单独设置,在校准每个激活值时,通过索引该激活值的名称寻找该激活值对应的校准算法名称,然后使用相应的校准算法来校准该激活值。
在本发明的一个实施例中,所述自检优化单元用于:从定点神经网络模型的最后一层开始;
A)微调当前一层的量化参数;
B)计算浮点神经网络模型和经微调的定点神经网络模型的结果的余弦相似度;
C)判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度;
D)将定点神经网络模型的当前层的前一层更新为当前层,重复步骤A) 至C),遍历整个定点神经网络模型,直到连续多次微调不再提高余弦相似度,或余弦相似度高于用户设定的目标余弦相似度结束优化过程。
在本发明的一个实施例中,所述微调是多种微调的组合,根据以下公式获得一组候选缩放系数序列factor,来缩放量化参数:
factor[i]=1-Seedi,factor[i+1]=1+seedi,i∈[1,n]
其中,factor是缩放系数序列,seed是缩放系数种子,n是缩放次数, i是属于[1,n]的所有正整数。
在本发明的一个实施例中,余弦相似度的计算公式如下:
其中,Ai,Bi分别为浮点神经网络模型和定点神经网络模型输出值序列 A和B中的元素。
根据本发明的另一个实施例,提供一种浮点神经网络模型的量化方法,包括:
获取数据集,并逐层地推演整个浮点神经网络模型,通过推演得到的每一层的激活值,作为校准数据集;
使用组合校准算法中的一种或多种对校准数据集进行量化,得到完整神经网络模型的量化参数;
基于上述量化参数,对浮点神经网络进行量化,得到定点神经网络模型;以及
对量化后定点神经网络模型进行动态优化。
在本发明的另一个实施例中,组合校准算法包括:极值校准算法、均值校准算法、交叉熵校准算法、覆盖范围校准算法、和/或均方差校准算法。
在本发明的另一个实施例中,所述极值校准算法在一定规模的数据集上对浮点神经网络进行推演,并记录每个激活值在这个数据集内取到的最大值和最小值,并作为这一个激活值的量化参数;
所述均值校准算法在一定规模的数据集D={d1,d2,…,dn}上对浮点神经网络进行推演,记录每个激活值在所有数据集D内的单个数据di上的最大值和最小值,并求出这些最大值和最小值均值,作为这一个激活值的量化参数;
覆盖范围校准算法:在极值校准算法的基础上,将收集到的最大值和最小值乘上一个溃缩系数C,作为该激活值的量化参数。
在本发明的另一个实施例中,交叉熵校准算法:对于神经网络的每一层的激活值,按照采样数得到该激活值分布的直方图序列P,根据P所覆盖的范围(min,max)枚举得到所有候选量化参数N,N中包含n组候选量化参数,分别表示为(min1,max1),(min2,max2),…,(minn,maxn),利用N中的每组候选量化参数量化激活值的分布直方图序列P,得到量化后的激活值直方图分布Q,然后将P和Q归一化,并计算归一化后的P和 Q的交叉熵,选择计算得到交叉熵最小的一组后选量化参数作为激活值的量化参数;
在本发明的另一个实施例中,均方差校准算法:对于神经网络的每一层的激活值P,使用此激活值P的最大值和最小值作为初始量化参数,并计算得到用于量化浮点数的缩放尺度scale0以及零点位置zeropoint;利用 scale0和zeropoint对激活值P进行量化反量化,得到伪浮点激活值Q,计算P和Q的均方差m0;按照一定的采样数n等分scale0,得到Δscale=scale0÷n,以采样数n为循环,每次将scale0减去Δscale,得到scalei=scale0-i*△scale,利用scalei作为新的缩放尺度和zeropoint一起再次对激活值P进行量化反量化,得到伪浮点激活值Qi,并计算P和Qi的均方差mi;结束采样数循环后,选择均方差最小的一组缩放尺度和零点zeropoing一起作为该激活值的量化参数。
在本发明的另一个实施例中,通过配置文件对每个激活值的校准方法进行单独设置,在校准每个激活值时,通过索引该激活值的名称寻找该激活值对应的校准算法名称,然后使用相应的校准算法来校准该激活值。
在本发明的另一个实施例中,对量化后定点神经网络模型进行动态优化包括:
获取浮点神经网络、定点神经网络、输入数据集,设定目标余弦相似度;
分别推演浮点神经网络模型和定点神经网络模型,获得浮点神经网络的结果和定点神经网络的结果;
提取定点神经网络的量化参数;
基于浮点神经网络的结果和定点神经网络的结果,计算基准余弦相似度;
判断基准余弦相似度是否小于目标余弦相似度;
如果余弦相似度小于目标余弦相似度,则对定点神经网络的量化参数进行微调;
基于浮点神经网络的结果和经微调的定点神经网络的结果,计算经微调的余弦相似度;
如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络、和基准余弦相似度。
在本发明的另一个实施例中,从定点神经网络模型的最后一层开始,
A)微调当前一层的量化参数;
B)计算浮点神经网络模型和经微调的定点神经网络模型的结果的余弦相似度;
C)判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度;
D)将定点神经网络模型的当前层的前一层更新为当前层,重复步骤A) 至C),遍历整个定点神经网络模型,直到连续多次微调不再提高余弦相似度,或余弦相似度高于用户设定的目标余弦相似度结束优化过程。
本发明的实施例通过使用多种算法组合,并加入自检优化,提升了定点神经网络模型的性能,缩小了定点神经网络模型与浮点神经网络模型之间的性能差异,让神经网络推演在获得定点化带来的速度提升同时,避免了性能牺牲。
附图说明
为了进一步阐明本发明的各实施例的以上和其它优点和特征,将参考附图来呈现本发明的各实施例的更具体的描述。可以理解,这些附图只描绘本发明的典型实施例,因此将不被认为是对其范围的限制。在附图中,为了清楚明了,相同或相应的部件将用相同或类似的标记表示。
图1示出浮点数向定点数量化的示意图。
图2示出根据本发明的一个实施例的浮点神经网络模型量化系统的示意框图。
图3示出配置单元的示意框图。
图4示出根据本发明的一个实施例的自检优化过程的流程图。
图5示出根据本发明的一个实施例的浮点神经网络模型量化方法的流程图。
具体实施方式
在以下的描述中,参考各实施例对本发明进行描述。然而,本领域的技术人员将认识到可在没有一个或多个特定细节的情况下或者与其它替换和/或附加方法、材料或组件一起实施各实施例。在其它情形中,未示出或未详细描述公知的结构、材料或操作以免使本发明的各实施例的诸方面晦涩。类似地,为了解释的目的,阐述了特定数量、材料和配置,以便提供对本发明的实施例的全面理解。然而,本发明可在没有特定细节的情况下实施。此外,应理解附图中示出的各实施例是说明性表示且不一定按比例绘制。
在本说明书中,对“一个实施例”或“该实施例”的引用意味着结合该实施例描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。在本说明书各处中出现的短语“在一个实施例中”并不一定全部指代同一实施例。
需要说明的是,本发明的实施例以特定顺序对步骤进行描述,然而这只是为了方便区分各步骤,而并不是限定各步骤的先后顺序,在本发明的不同实施例中,可根据具体的流程的调节来调整各步骤的先后顺序。
神经网络可包括各类神经网络模型,例如,深度神经网络、卷积神经网络、循环神经网络等等。以卷积神经网络为例,卷积神经网络由输入层、输出层和多个隐藏层串联组成。卷积的第一层读取输入值,例如输入图像,并输出一系列的激活值(也可称为特征图)。下面的层读取由上一层产生的激活值,并输出新的激活值。最后一个分类器(classifier)输出该输入图像可能属于的每一类别的概率。卷积神经网络中的层包括带权重的层(如卷积层、全连接层、批量归一化层等)和不带权重的层(如池化层、ReLU层、Softmax层等)。卷积层以一系列特征图作为输入,并以卷积内核卷积获得输出激活值。池化层通常与卷积层相连,用于输出每个特征图中的每个分区(sub area)的最大值或平均值,由此通过亚采样降低计算量,同时保持某种程度的位移、尺度和形变不变性。全连接层通过应用于输入特征向量上的线性变换,得到包括多个特征值的一维向量输出。
神经网络由浮点运算构成,计算复杂度高、数据量大,并且存在部分冗余计算。因此,广泛采用量化对神经网络的计算进行压缩。通过量化方式将浮点神经网络模型转换为定点神经网络模型。
定点和浮点都是数值的表示,它们区别在于,将整数部分和小数部分分开的点的位置。定点保留特定位数的整数和小数,而浮点保留特定位数的有效数字和指数。在以下实施例中,使用8位整数INT8表示定点,32位浮点FP32 表示浮点为例进行描述。然而,本领域的技术人员应该清楚,在本发明的描述中INT8和FP32仅仅作为示例示出,本发明的系统和方法不限于上述具体数值,相反可以适用于其他位数的的定点和浮点数值的转换,因此各种长度的定点和浮点数值的神经网络模型转换都应落入本发明的保护范围。
由于INT8使用的比特数只有FP32的25%,在INT8和FP32之间转换数值的方法非常重要,因为它会显着影响预测精度。
浮点神经网络的量化包括激活值的量化和权重的量化。对于激活值和权重,本发明的实施例在量化方式上均采用8比特非对称量化方式,即将浮点数据范围[min,max]映射到8比特正整数范围[0,255],并用一个浮点数scale 来表征数据从浮点范围向8比特映射的尺度;一个8比特正整数zeropoint来表征0值的位置,若将量化后得到的8比特值记为q,真实浮点值记为f,则量化公式如下:
f=scale×(q-zeropoint) [1]
当浮点运算结果不等于整数时,需要额外的舍入步骤。范围[min,max] 以外的浮点数可以映射到8比特正整数0或255,例如,小于min的浮点数映射到8比特正整数0,大于max的浮点数映射到8比特正整数255。
图1示出浮点数向定点数量化的示意图。如图1所示,浮点数的量化区间为最大值max和最小值min之间的范围。
在量化过程中,对于权重,因为其范围固定,因此,可以直接使用它的真实浮点范围作为量化区间进行映射,得到量化后的8比特正整数权重。
而对于激活值,则应该使用尽可能多的数据进行校准,并采取一定策略来决定数据从浮点向8比特正整数的映射范围,是提高8比特量化神经网络模型精度的重要方法,因此本申请旨在提供一套丰富且可靠的算法集合,来优化量化过程。基于上述现有方案的问题或者缺点,本申请设计了多种校准算法,并将这些校准算法进行整合,使用者可以自由按照需求为每个神经网络模型或者一个神经网络模型中的每个激活值分配不同的校准算法。在校准过程中,本申请统一地采用一个分布较为均匀数据集(记为D,包含{d1,d2,…,dn}),并逐层地推演整个浮点神经网络模型,通过推演得到的每一层的激活值,来作为校准算法的输入,以得到量化范围,下面将展开介绍本申请公开的浮点神经网络模型量化系统和方法及其中采用的各种校准算法。
图2示出根据本发明的一个实施例的浮点神经网络模型量化系统的示意框图。
如图2所示,浮点神经网络模型量化系统200包括组合校准算法单元 210和自检优化单元220。
组合校准算法单元210可包括极值校准算法单元211、均值校准算法单元212、交叉熵校准算法单元213、覆盖范围校准算法单元214、均方差校准算法单元215。组合校准算法单元210还可以包括其他类似的校准算法单元。本发明的保护范围不限于上述列出的校准算法单元。
在校准过程中,首先获取数据集D,包含{d1,d2,…,dn},并逐层地推演整个浮点神经网络模型230,通过推演得到的每一层的激活值,作为校准数据集240输入组合校准算法单元210。
组合校准算法单元210可以按照需求为各个浮点神经网络模型或者一个神经网络模型中的各个激活值分配不同的校准算法。首先展开介绍各种校准算法单元的校准算法。
极值校准算法单元211采用极值校准算法获得量化参数。极值校准算法在一定规模的数据集D上对浮点神经网络进行推演,并记录每个激活值在这个数据集内取到的最大值max和最小值min,并作为这一个激活值的量化参数;其公式可以表达为:
其中uint8(0)和uint8(255)表示8比特正整数范围[0,255]
均值校准算法单元212采用均值校准算法获得量化参数,均值校准算法在一定规模的数据集D={d1,d2,…,dn}上对浮点神经网络进行推演,记录每个激活值在所有数据集D内的单个数据di上的最大值和最小值,并求出这些最大值max和最小值min均值,作为这一个激活值的量化参数;其公式可以表达为:
交叉熵校准算法单元213采用交叉熵校准算法获得量化参数,交叉熵校准算法:在一定规模的数据集D上对浮点神经网络进行推演,对每个激活值进行枚举,从它的最大值和最小值开始,不断缩小范围,并使用每一组枚举出的量化参数对该激活值进行量化反量化,得到伪浮点激活值;计算伪浮点激活值与真实激活值的交叉熵;在完成所有枚举和交叉熵计算后,选择交叉熵最小的一组枚举结果作为该激活值的量化参数;其具体算法步骤为:
其中,对于任意两个离散的序列A,B而言,它们之间的交叉熵KLdivergence的公式如下:
其中,Ai,Bi分别为序列A和B中的元素。
具体而言,对于神经网络每一层的激活值,按照采样数得到该激活值分布的直方图序列P,P所覆盖的范围即为该激活值浮点值的真实覆盖范围 (min,max)。根据P所覆盖的范围(min,max)枚举得到所有候选量化参数,记为N,N中包含大量的候选量化参数,可以分别表示为(min1, max1),(min2,max2),…,(minn,maxn),共有n组,n称之为候选量化参数的枚举数量。具体得到这些候选量化参数的枚举方法为将(min, 0)和(0,max)分别等分为n个区间,然后分别(min,0)和(0,max) 中取第i个区间的中值得到(mini,maxi)。利用N中的每组候选量化参数量化激活值的分布直方图序列P,得到量化后的激活值直方图分布Q,然后将P和Q归一化,并计算它们的交叉熵KLdivergence(P,Q)。在对所有后选量化参数进行完如上处理后,选择计算得到交叉熵最小的一组后选量化参数作为该激活值的量化参数。按照如上方法,对神经网络的所有层的所有激活值进行处理,即可得到整个神经网络的量化参数。
覆盖范围校准算法单元214采用覆盖范围校准算法获得量化参数,覆盖范围校准算法在极值校准算法的基础上,将收集到的最大值和最小值乘上一个溃缩系数C,作为该激活值的量化参数;其公式可以表达为:
在本发明的一些实施例中,溃缩系数C可以为0.99995。
均方差校准算法单元215采用均方差校准算法获得量化参数,均方差校准算法类似于交叉熵校准算法,使用每组枚举量化参数对中间结果进行量化反量化得到伪浮点激活值,并计算伪浮点激活值与真实激活值的均方差;完成所有枚举后选择均方差最小的一组枚举结果作为该激活值的量化参数;其算法步骤为:
其中,对于任意两个离散的序列A,B而言,它们之间的均方差计算公式可以表示为:
其中,Ai,Bi分别为序列A和B中的元素。
具体而言,对于神经网络的每一层的激活值P,使用此激活值P的最大值和最小值作为初始量化参数,并计算得到用于量化浮点数的缩放尺度 scale,记为scale0,以及零点位置zeropoint;利用scale0和zeropoint对激活值P进行量化反量化,得到伪浮点激活值Q,计算P和Q的均方差MSE(P, Q),记为m0。按照一定的采样数n(由程序缺省的给出,一般为500)等分scale0,得到Δscale=scale0÷n。以采样数n为循环,每次将scale0减去Δscale,得到scalei=scale0-i*△scale。利用scalei作为新的量化参数,和 zeropoint一起再次对激活值P进行量化反量化,得到伪浮点激活值Qi,并计算P和Qi的均方差MSE(P,Qi),记为mi;结束采样数循环后,选择均方差最小的一组缩放尺度,和零点zeropoing一起作为该激活值的量化参数。按照如上方法,对神经网络的所有层的所有激活值进行处理,即可得到整个神经网络的量化参数。
组合校准算法单元210可以在整个浮点神经网络模型上使用某一种校准方法,也可以灵活的对每个激活值的校准方法进行设置和混用。
因此,组合校准算法单元210可以包括配置单元(图2中未示出)。图3示出配置单元的示意框图。通过配置单元对每个激活值的校准方法进行单独设置。配置单元可以是一种配置文件。在校准每个激活值时,通过索引该激活值的名称(这些名称都是独立且不相同的),在配置文件中寻找该激活值对应的校准算法名称,然后使用相应的校准算法来校准该激活值。
在完成所有激活值的校准后,得到完整神经网络模型的量化参数,并对浮点神经网络进行量化,得到定点神经网络模型。
在得到量化后的定点神经网络模型后,为了提高量化模型与量化前模型的相似度,自检优化单元220对量化后模型进行动态优化。自检优化单元220 在校准数据集的一个子集250上,推演浮点神经网络模型和定点神经网络模型,通过计算它们最终输出值(或者,称为浮点神经网络模型和定点神经网络模型的结果)的余弦相似度,来判断两个模型的相似度;然后微调校准得到的量化参数,重新生成定点神经网络模型,再次计算余弦相似度;通过不断提高余弦相似度,实现定点神经网络模型的动态优化。
在本发明的一个实施例中,自检优化单元220的算法步骤如下:
对于任意两个离散的序列A,B而言,它们的余弦相似度计算公式可以表示为:
其中,Ai,Bi分别为序列A和B中的元素。
具体而言,图4示出根据本发明的一个实施例的自检优化过程的流程图。首先在步骤410,获取浮点神经网络netfloat、定点神经网络netuint8、输入数据集 D,设定目标余弦相似度target;在步骤420,分别推演浮点神经网络模型和定点神经网络模型,获得浮点神经网络的结果resultfloat=Inference(netfloat,D) 和定点神经网络的结果resultuint8=Inference(netuint8,D);在步骤430,提取定点神经网络netuint8的量化参数Q;在步骤440,根据公式[7],计算余弦相似度co=cosinesim(resultfloat,resultuint8);在步骤450,判断余弦相似度co是否小于目标余弦相似度target;如果余弦相似度co小于目标余弦相似度target,则在步骤460,需要对定点神经网络netuint8的量化参数Q进行微调;在步骤470,得到经微调的量化参数经微调的定点神经网络结果经微调的定点神经网络的余弦相似度在步骤480,如果经微调的定点神经网络的余弦相似度大于余弦相似度co,则在步骤490利用经微调的量化参数经微调的定点神经网络经微调的余弦相似度更新量化参数Q、定点神经网络netuint8、和余弦相似度co。
在步骤460,从定点神经网络模型的最后一层开始作为当前层,微调这一层的量化参数,微调后重复步骤470至490,即,将得到的余弦相似度与基准余弦相似度co比较,若大于基准余弦相似度,则更新定点神经网络的量化参数,同时也更新基准余弦相似度;将定点神经网络模型的当前层的前一层更新为当前层,重复步骤460至490,遍历整个定点神经网络模型,直到连续多次微调不再提高余弦相似度,或余弦相似度高于用户设定的目标余弦相似度 target。
在本发明的一个实施例中,步骤460中的微调可以是微调组合N,对于微调组合N中的每一种微调n,进行步骤470至步骤490,之后返回步骤460,继续对定点神经网络netuint8的量化参数Q进行下一种微调。在获得所有微调组合的方法上,自检优化单元220采用缩放法,即按照一定规则生成一个缩放序列,遍历这个序列,对量化参数进行缩放。例如,缩放序列的具体生成方法如下:
具体而言,对于一组给定的量化参数(min,max),算法利用一个小于1 的缩放系数种子seed(默认为0.5)和缩放次数n(默认为5)来迭代得到所有的缩放系数,并将量化参数按照这些缩放系数进行缩放,作为候选的微调组合,参与到量化参数微调过程中;设立一个基础系数a=1,以缩放次数为循环,每次将a乘上缩放系数种子seed,并计算1+a和1-a,将计算结果加入到候选缩放系数序列factor中;完成所有循环后,得到一组候选缩放系数序列factor,来缩放量化参数。由于缩放系数种子seed小于1,因此在整个候选缩放系数序列中,候选缩放系数是逐渐趋近于1的。
其公式可以表达为:
factor[i]=1-seedi,factor[i+1]=1+seedi,i∈[1,n] [8]
其中,factor是缩放系数序列,seed是缩放系数种子,n是缩放次数, i是属于[1,n]的所有正整数。
通过使得定点神经网络的输出结果在余弦相似度上与浮点神经网络模型达到使用者期待的阈值,动态优化算法保证了神经网络在量化前后的相似度,从而缩小了量化后定点神经网络模型在对应任务上能力与浮点神经网络模型的差距,提高了神经网络量化方法的适用性。
可以把各实施例提供为可包括其上存储有机器可执行指令的一个或多个机器可读介质的计算机程序产品,这些指令在由诸如计算机、计算机网络或其他电子设备等的一个或多个机器执行时,可以引起一个或多个机器执行根据本发明的各实施例的操作。机器可读介质可以包括但不限于软盘、光盘、CD-ROM (紧致盘只读存储器)和磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、 EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁或光卡、闪速存储器或适用于存储机器可执行指令的其他类型的介质/机器可读介质。
此外,可以作为计算机程序产品下载各实施例,其中,可以经由通信链路 (例如,调制解调器和/或网络连接)由载波或其他传播介质实现和/或调制的一种或多种数据信号把程序从远程计算机(例如,服务器)传输给请求计算机 (例如,客户机)。因此,在此所使用的机器可读介质可以包括这样的载波,但对此不作要求。
图5示出根据本发明的一个实施例的浮点神经网络模型量化方法的流程图。
首先,在步骤510,使用组合校准算法对浮点神经网络进行量化,得到定点神经网络模型。
在本发明的一个实施例中,组合校准算法可包括极值校准算法、均值校准算法、交叉熵校准算法、覆盖范围校准算法、均方差校准算法以及其他校准算法。
在量化过程中,对于权重,因为其范围固定,因此直接使用它的真实浮点范围作为量化区间进行映射,得到量化后的8比特正整数权重;而对于激活值,则应该使用尽可能多的数据进行校准,并采取一定策略来决定数据从浮点向8比特正整数的映射范围,是提高8比特量化神经网络模型精度的重要方法。
在校准过程中,首先获取数据集D,包含{d1,d2,…,dn},并逐层地推演整个浮点神经网络模型,通过推演得到的每一层的激活值,作为校准数据集,使用组合校准算法中的一种或多种对校准数据集进行量化。可以按照需求为各个浮点神经网络模型或者一个浮点神经网络模型中的各个激活值分配不同的校准算法。
可以在整个浮点神经网络模型上使用某一种校准方法,也可以灵活的对每个激活值的校准方法进行设置和混用。通过配置文件对每个激活值的校准方法进行单独设置。在校准每个激活值时,通过索引该激活值的名称 (这些名称都是独立且不相同的),在配置文件中寻找该激活值对应的校准算法名称,然后使用相应的校准算法来校准该激活值。
在完成所有激活值的校准后,得到完整神经网络模型的量化参数,并对浮点神经网络进行量化,得到定点神经网络模型。
在步骤520,对量化后定点神经网络模型进行动态优化。
在校准数据集的一个子集上,推演浮点神经网络模型和定点神经网络模型,通过计算它们最终输出值的余弦相似度,来判断两个模型的相似度;然后微调校准得到的量化参数,重新生成定点神经网络模型,再次计算余弦相似度;通过不断提高余弦相似度,实现定点神经网络模型的动态优化。具体的动态优化过程与上文参照算法3、算法4及图4的流程图及相关描述类似,为了简化本申请的描述,不再赘述。
尽管上文描述了本发明的各实施例,但是,应该理解,它们只是作为示例来呈现的,而不作为限制。对于相关领域的技术人员显而易见的是,可以对各个实施例做出各种组合、变型和改变而不背离本发明的精神和范围。因此,此处所公开的本发明的宽度和范围不应被上述所公开的示例性实施例所限制,而应当仅根据所附权利要求书及其等同替换来定义。
Claims (15)
1.一种浮点神经网络模型的量化系统,包括:
组合校准算法单元,所述组合校准算法单元包括多种校准算法单元,组合校准算法单元为各个浮点神经网络模型或者一个浮点神经网络模型中的各个激活值分配不同的校准算法,以便获得量化参数,并对浮点神经网络进行量化,得到定点神经网络模型;
自检优化单元,所述自检优化单元在校准数据集的一个子集上,推演浮点神经网络模型和定点神经网络模型,计算浮点神经网络模型和定点神经网络模型的输出值的余弦相似度作为基准余弦相似度;自检优化单元微调初始量化参数,生成经微调的定点神经网络模型,计算浮点神经网络模型和经微调的定点神经网络模型的输出值的余弦相似度;判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度。
2.如权利要求1所述的浮点神经网络模型的量化系统,其特征在于,所述组合校准算法单元包括:极值校准算法单元、均值校准算法单元、交叉熵校准算法单元、覆盖范围校准算法单元、和/或均方差校准算法单元。
3.如权利要求2所述的浮点神经网络模型的量化系统,其特征在于,
所述极值校准算法单元采用极值校准算法获得量化参数,极值校准算法在一定规模的数据集上对浮点神经网络进行推演,并记录每个激活值在这个数据集内取到的最大值和最小值,并作为这一个激活值的量化参数;
所述均值校准算法单元采用均值校准算法获得量化参数,均值校准算法在一定规模的数据集D={d1,d2,…,dn}上对浮点神经网络进行推演,记录每个激活值在所有数据集D内的单个数据di上的最大值和最小值,并求出这些最大值和最小值均值,作为这一个激活值的量化参数;
交叉熵校准算法单元采用交叉熵校准算法获得量化参数,交叉熵校准算法:对于神经网络的每一层的激活值,按照采样数得到该激活值分布的直方图序列P,根据P所覆盖的范围(min,max)枚举得到所有候选量化参数N,N中包含n组候选量化参数,分别表示为(min1,max1),(min2,max2),…,(minn,maxn),利用N中的每组候选量化参数量化激活值的分布直方图序列P,得到量化后的激活值直方图分布Q,然后将P和Q归一化,并计算归一化后的P和Q的交叉熵,选择计算得到交叉熵最小的一组后选量化参数作为激活值的量化参数;
覆盖范围校准算法单元采用覆盖范围校准算法获得量化参数,覆盖范围校准算法在极值校准算法的基础上,将收集到的最大值和最小值乘上一个溃缩系数C,作为该激活值的量化参数;
均方差校准算法单元采用均方差校准算法获得量化参数,均方差校准算法:对于神经网络的每一层的激活值P,使用此激活值P的最大值和最小值作为初始量化参数,并计算得到用于量化浮点数的缩放尺度scale0以及零点位置zeropoint;利用scale0和zeropoint对激活值P进行量化反量化,得到伪浮点激活值Q,计算P和Q的均方差m0;按照一定的采样数n等分scale0,得到Δscale=scale0÷n,以采样数n为循环,每次将scale0减去Δscale,得到scalei=scale0-i*△scale,利用scalei作为新的缩放尺度和zeropoint一起再次对激活值P进行量化反量化,得到伪浮点激活值Qi,并计算P和Qi的均方差mi;结束采样数循环后,选择均方差最小的一组缩放尺度和零点zeropoing一起作为该激活值的量化参数。
4.如权利要求2所述的浮点神经网络模型的量化系统,其特征在于,所述组合校准算法单元包括配置单元,所述配置单元对每个激活值的校准方法进行单独设置,在校准每个激活值时,通过索引该激活值的名称寻找该激活值对应的校准算法名称,然后使用相应的校准算法来校准该激活值。
5.如权利要求1所述的浮点神经网络模型的量化系统,其特征在于,所述自检优化单元用于:从定点神经网络模型的最后一层开始;
A)微调当前一层的量化参数;
B)计算浮点神经网络模型和经微调的定点神经网络模型的结果的余弦相似度;
C)判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度;
D)将定点神经网络模型的当前层的前一层更新为当前层,重复步骤A)至C),遍历整个定点神经网络模型,直到连续多次微调不再提高余弦相似度,或余弦相似度高于用户设定的目标余弦相似度结束优化过程。
6.如权利要求1所述的浮点神经网络模型的量化系统,其特征在于,所述微调是多种微调的组合,根据以下公式获得一组候选缩放系数序列factor,来缩放量化参数:
factor[i]=1-seedi,factor[i+1]=1+seedi,i∈[1,n]
其中,factor是缩放系数序列,seed是缩放系数种子,n是缩放次数,i是属于[1,n]的所有正整数。
8.一种浮点神经网络模型的量化方法,包括:
获取数据集,并逐层地推演整个浮点神经网络模型,通过推演得到的每一层的激活值,作为校准数据集;
使用组合校准算法中的一种或多种对校准数据集进行量化,得到完整神经网络模型的量化参数;
基于上述量化参数,对浮点神经网络进行量化,得到定点神经网络模型;以及
对量化后定点神经网络模型进行动态优化。
9.如权利要求8所述的浮点神经网络模型的量化方法,其特征在于,所述组合校准算法包括:极值校准算法、均值校准算法、交叉熵校准算法、覆盖范围校准算法、和/或均方差校准算法。
10.如权利要求9所述的浮点神经网络模型的量化系统,其特征在于,
所述极值校准算法在一定规模的数据集上对浮点神经网络进行推演,并记录每个激活值在这个数据集内取到的最大值和最小值,并作为这一个激活值的量化参数;
所述均值校准算法在一定规模的数据集D={d1,d2,…,dn}上对浮点神经网络进行推演,记录每个激活值在所有数据集D内的单个数据di上的最大值和最小值,并求出这些最大值和最小值均值,作为这一个激活值的量化参数;
覆盖范围校准算法:在极值校准算法的基础上,将收集到的最大值和最小值乘上一个溃缩系数C,作为该激活值的量化参数。
11.如权利要求9所述的浮点神经网络模型的量化系统,其特征在于,所述交叉熵校准算法:对于神经网络的每一层的激活值,按照采样数得到该激活值分布的直方图序列P,根据P所覆盖的范围(min,max)枚举得到所有候选量化参数N,N中包含n组候选量化参数,分别表示为(min1,max1),(min2,max2),…,(minn,maxn),利用N中的每组候选量化参数量化激活值的分布直方图序列P,得到量化后的激活值直方图分布Q,然后将P和Q归一化,并计算归一化后的P和Q的交叉熵,选择计算得到交叉熵最小的一组后选量化参数作为激活值的量化参数;
12.如权利要求9所述的浮点神经网络模型的量化系统,其特征在于,所述均方差校准算法:对于神经网络的每一层的激活值P,使用此激活值P的最大值和最小值作为初始量化参数,并计算得到用于量化浮点数的缩放尺度scale0以及零点位置zeropoint;利用scale0和zeropoint对激活值P进行量化反量化,得到伪浮点激活值Q,计算P和Q的均方差m0;按照一定的采样数n等分scale0,得到Δscale=scale0÷n,以采样数n为循环,每次将scale0减去Δscale,得到scalei=scale0-i*△scale,利用scalei作为新的缩放尺度和zeropoint一起再次对激活值P进行量化反量化,得到伪浮点激活值Qi,并计算P和Qi的均方差mi;结束采样数循环后,选择均方差最小的一组缩放尺度和零点zeropoing一起作为该激活值的量化参数。
13.如权利要求9所述的浮点神经网络模型的量化方法,其特征在于,通过配置文件对每个激活值的校准方法进行单独设置,在校准每个激活值时,通过索引该激活值的名称寻找该激活值对应的校准算法名称,然后使用相应的校准算法来校准该激活值。
14.如权利要求8所述的浮点神经网络模型的量化方法,其特征在于,对量化后定点神经网络模型进行动态优化包括:
获取浮点神经网络、定点神经网络、输入数据集,设定目标余弦相似度;
分别推演浮点神经网络模型和定点神经网络模型,获得浮点神经网络的结果和定点神经网络的结果;
提取定点神经网络的量化参数;
基于浮点神经网络的结果和定点神经网络的结果,计算基准余弦相似度;
判断基准余弦相似度是否小于目标余弦相似度;
如果余弦相似度小于目标余弦相似度,则对定点神经网络的量化参数进行微调;
基于浮点神经网络的结果和经微调的定点神经网络的结果,计算经微调的余弦相似度;
如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络、和基准余弦相似度。
15.如权利要求14所述的浮点神经网络模型的量化方法,其特征在于,从定点神经网络模型的最后一层开始,
A)微调当前一层的量化参数;
B)计算浮点神经网络模型和经微调的定点神经网络模型的结果的余弦相似度;
C)判断经微调的余弦相似度是否大于基准余弦相似度,如果经微调的余弦相似度大于基准余弦相似度,则利用经微调的量化参数、经微调的定点神经网络、经微调的余弦相似度更新量化参数、定点神经网络和基准余弦相似度;
D)将定点神经网络模型的当前层的前一层更新为当前层,重复步骤A)至C),遍历整个定点神经网络模型,直到连续多次微调不再提高余弦相似度,或余弦相似度高于用户设定的目标余弦相似度结束优化过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011609407.6A CN112766484A (zh) | 2020-12-30 | 2020-12-30 | 浮点神经网络模型量化系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011609407.6A CN112766484A (zh) | 2020-12-30 | 2020-12-30 | 浮点神经网络模型量化系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112766484A true CN112766484A (zh) | 2021-05-07 |
Family
ID=75697502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011609407.6A Pending CN112766484A (zh) | 2020-12-30 | 2020-12-30 | 浮点神经网络模型量化系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112766484A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113238988A (zh) * | 2021-06-08 | 2021-08-10 | 中科寒武纪科技股份有限公司 | 优化深度神经网络的参数的处理系统、集成电路及板卡 |
CN113743593A (zh) * | 2021-09-27 | 2021-12-03 | 上海齐感电子信息科技有限公司 | 神经网络量化方法、系统、存储介质及终端 |
CN113747155A (zh) * | 2021-09-06 | 2021-12-03 | 中国电信股份有限公司 | 特征量化方法和装置、编码器、通信系统 |
WO2023060959A1 (zh) * | 2021-10-13 | 2023-04-20 | 山东浪潮科学研究院有限公司 | 神经网络模型量化方法、系统、装置及计算机可读介质 |
CN116543419A (zh) * | 2023-07-06 | 2023-08-04 | 浙江大学金华研究院 | 基于嵌入式平台的酒店卫勤人员穿戴检测方法及系统 |
-
2020
- 2020-12-30 CN CN202011609407.6A patent/CN112766484A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113238988A (zh) * | 2021-06-08 | 2021-08-10 | 中科寒武纪科技股份有限公司 | 优化深度神经网络的参数的处理系统、集成电路及板卡 |
CN113747155A (zh) * | 2021-09-06 | 2021-12-03 | 中国电信股份有限公司 | 特征量化方法和装置、编码器、通信系统 |
CN113743593A (zh) * | 2021-09-27 | 2021-12-03 | 上海齐感电子信息科技有限公司 | 神经网络量化方法、系统、存储介质及终端 |
CN113743593B (zh) * | 2021-09-27 | 2023-08-22 | 上海齐感电子信息科技有限公司 | 神经网络量化方法、系统、存储介质及终端 |
WO2023060959A1 (zh) * | 2021-10-13 | 2023-04-20 | 山东浪潮科学研究院有限公司 | 神经网络模型量化方法、系统、装置及计算机可读介质 |
CN116543419A (zh) * | 2023-07-06 | 2023-08-04 | 浙江大学金华研究院 | 基于嵌入式平台的酒店卫勤人员穿戴检测方法及系统 |
CN116543419B (zh) * | 2023-07-06 | 2023-11-07 | 浙江大学金华研究院 | 基于嵌入式平台的酒店卫勤人员穿戴检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112766484A (zh) | 浮点神经网络模型量化系统和方法 | |
Choi et al. | Pact: Parameterized clipping activation for quantized neural networks | |
US6058205A (en) | System and method for partitioning the feature space of a classifier in a pattern classification system | |
CN110969251B (zh) | 基于无标签数据的神经网络模型量化方法及装置 | |
CN111783961A (zh) | 基于激活定点拟合的卷积神经网络训练后量化方法及系统 | |
CN114241779B (zh) | 一种城市快速路交通流短时预测方法、计算机及存储介质 | |
CN112766456B (zh) | 浮点型深度神经网络的量化方法、装置、设备及存储介质 | |
CN115952832A (zh) | 自适应模型量化方法及装置、存储介质及电子装置 | |
CN112686384A (zh) | 一种自适应比特位宽的神经网络量化方法及其装置 | |
CN114202017A (zh) | 基于条件生成对抗网络的sar光学图像映射模型轻量化方法 | |
CN108154186B (zh) | 一种模式识别方法和装置 | |
CN113660113A (zh) | 面向分布式机器学习的自适应稀疏参数模型设计与量化传输方法 | |
CN117473430A (zh) | 一种非侵入式负荷分类方法及装置 | |
CN112613604A (zh) | 神经网络的量化方法及装置 | |
De Stefano et al. | A GA-based feature selection algorithm for remote sensing images | |
CN116543259A (zh) | 一种深度分类网络噪声标签建模与纠正方法、系统及存储介质 | |
CN114611665A (zh) | 基于权重振荡影响度的多精度分层量化方法及装置 | |
CN115730646A (zh) | 一种基于部分量化的混合专家网络优化方法 | |
CN114757353A (zh) | 一种机器学习模型的压缩方法、压缩装置和可读存储介质 | |
CN115457638A (zh) | 模型训练方法、数据检索方法、装置、设备及存储介质 | |
CN115438784A (zh) | 一种用于混合位宽超网络的充分训练方法 | |
CN113177627B (zh) | 优化系统、重新训练系统及其方法及处理器和可读介质 | |
CN114611620A (zh) | 一种面向无标签多维时序数据的模式发现方法、系统及终端 | |
CN112200224A (zh) | 医学图像特征处理方法和装置 | |
CN112766537A (zh) | 一种短期电负荷预测方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210507 |
|
RJ01 | Rejection of invention patent application after publication |