一种卷积神经网络训练感知量化方法及装置制造方法及图纸

技术编号:33352642 阅读:18 留言:0更新日期:2022-05-08 10:01
本申请涉及人工智能技术领域,提供一种卷积神经网络训练感知量化方法及装置,该方法基于卷积神经网络的输入特征图、权重以及偏置,在训练的前向计算中加入多个第一量化因子,通过第一量化因子将第二量化因自限定为2的整数次幂,以对每个网络层的输入特征图、权重以及偏置分别进行量化,在硬件计算中可以通过简单的移位操作完成,还建立的量化因子的约束条件,通过各层量化因子的约束,使在训练中量化因子的值沿模型前向执行过程传播,并根据约束关系自适应对齐,进一步避免大量的浮点运算和复杂的重量化,以实现全整型量化。以实现全整型量化。以实现全整型量化。

【技术实现步骤摘要】
一种卷积神经网络训练感知量化方法及装置


[0001]本申请涉及人工智能
,具体涉及一种卷积神经网络训练感知量化方法及装置。

技术介绍

[0002]卷积神经网络通常采用32位单精度浮点精度(Full Precise,简称FP32)的数据精度来表示网络权值、偏置和每一层卷积层的特征图等参数。由于参数较多且数据量大,整个卷积计算过程需要浪费大量的资源,因此,对卷积神经网络进行低比特量化,例如将训练好的网络模型进行参数压缩,由32位单精度浮点精度压缩为8位整型(INT8),可以有效地降低模型部署时在存储、计算和通信上的开销,然而,模型量化在实际应用中仍然存在不少挑战,最为常见的问题就是准确率下降,例如在目标检测和图像分割等复杂任务上,量化带来的准确率下降更为明显。
[0003]为了能够更好地解决卷积神经网路量化的准确率问题,通过在训练阶段引入量化相关约束,即训练感知量化(Quantization

aware training,QAT),在量化的过程中对网络进行训练,从而让神经网络参数能更好地适应量化带来的信息损失。现有技术中,卷积神经网络每一层的输入、输出、偏置和权重均以张量的形式表示,不同张量的数据范围各有不同,在量化过程中,根据不同张量的数值范围确定对应张量的缩放因子(scale),利用该缩放因子将FP32表示的数据压缩至对应位宽的整型,再乘以缩放因子得到离散型FP32表示的数据。例如,一个卷积层的输入为tensor1,其包含输入特征图浮点像素值为X,将X量化至整数位宽n,缩放因子根据tensor1的数据范围确定为s,则量化后的数据X
q
采用以下模型:
[0004][0005]其中,q
min

‑2n
‑1,q
min
=2
n
‑1‑
1。
[0006]然而,在上述量化方法中,缩放因子的取值依旧为浮点数,并且卷积神经网络各层之间的缩放因子仅仅以不同张量的不同数据范围来确定,导致各层的缩放因子scale取值有较为明显的差异,依旧不可避免地需要浮点计算,以及复杂的重量化过程。

技术实现思路

[0007]本申请提供一种卷积神经网络训练感知量化方法及装置,以解决现有的方法,在量化过程中不可避免地需要浮点计算,导致计算量大以及复杂的重量化的问题。
[0008]本申请第一方面提供了一种卷积神经网络训练感知量化方法,包括:
[0009]获取卷积神经网络,所述卷积神经网络包括卷积网络层、BN归一化网络层、全连接网络层、拼接网络层和残差网络层;
[0010]在训练的前向计算中,根据当前网络层输入特征图、权重以及偏置的缩放因子,确定输入特征图、权重以及偏置各自对应的第一量化因子,其中,所述第一量化因子为整数;
[0011]利用第一量化因子对当前网络层对应的输入特征图、权重以及偏置分别进行量
化,对量化后输入特征图、权重以及偏置进行卷积计算,得到当前网络层的输出特征图;
[0012]将输出特征图作为下个层的输入特征图送往下层卷积,逐层进行后续处理,得到所有网络层的输出,计算损失函数,以及根据损失函数训练卷积神经网络直至网络模型收敛,得到训练感知量化完成的神经网络。
[0013]可选的,所述对所述卷积神经网络每个网络层的输入特征图、权重以及偏置分别进行量化,采用以下模型:
[0014][0015]式中,X为量化前的输入特征图、权重或者偏置,X
q
为量化后的输入特征图、权重或者偏置,scalem为输入特征图、权重或者偏置对应的量化因子,2

scalem
为整型缩放因子,q
min

‑2n
‑1,q
min
=2
n
‑1‑
1,n为量化至的整数位宽。
[0016]可选的,所述根据当前网络层输入特征图、权重以及偏置的缩放因子,确定输入特征图、权重以及偏置各自对应的第一量化因子,包括:
[0017]获取当前网络层输入特征图的分布范围、权重的分布范围以及偏置的分布范围;
[0018]根据输入特征图的分布范围确定输入特征图对应的缩放因子,根据权重的分布范围确定权重对应的缩放因子,根据偏置的分布范围确定偏置对应的缩放因子;
[0019]根据输入特征图、权重以及偏置对应的缩放因子,确定各自对应的第一量化因子,以使第一量化因子对应的第二量化因子和缩放因子之间的差小于预设阈值。
[0020]可选的,在所述根据输入特征图、权重以及偏置对应的缩放因子,确定各自对应的第一量化因子之前,还包括建立量化因子的约束条件,结合约束条件和缩放因子,确定第一量化因子的取值,其中,所述约束条件包括:
[0021]在所述卷积网络层、所述BN归一化网络层和所述全连接网络层中,偏置参数对应的第一量化因子小于或等于输入特征图对应的第一量化因子与权重对应的第一量化因子之和;
[0022]在所述卷积网络层、所述BN归一化网络层和所述全连接网络层中,输入特征图对应的第一量化因子与权重对应的第一量化因子之和大于或等于输出特征图对应的第一量化因子,其中,所述输出特征图对应的第一量化因子为下个层输入特征图对应的第一量化因子;
[0023]在所述拼接层和所述残差网络层中,对应的两个特征图所对应的第一量化因子相等。
[0024]可选的,在所述卷积网络层、所述BN归一化网络层和所述全连接网络层中,偏置参数对应的第一量化因子大于或等于输入特征图对应的第一量化因子与权重对应的第一量化因子之和减去15;
[0025]在所述卷积网络层、所述BN归一化网络层和所述全连接网络层中,输入特征图对应的第一量化因子与权重对应的第一量化因子之和小于或等于输出特征图对应的第一量化因子加上15;
[0026]在所述拼接层和所述残差网络层中,对应的两个特征图所对应的第一量化因子均为4。
[0027]可选的,所述对量化后每个网络层的输入特征图、权重以及偏置进行卷积计算,得
到各个层的输出特征图,包括:
[0028]对量化后每个网络层的输入特征图以及量化后的权重进行乘法运算;
[0029]对所述乘法运算的结果与量化后的偏置进行加法运算,得到输出特征图。
[0030]可选的,所述根据损失函数训练卷积神经网络直至网络模型收敛,包括:
[0031]采用STE模型实现梯度的反向传播,所述STE模型具体为:
[0032][0033]本申请第二方面提供一种卷积神经网络训练感知量化装置,所述装置包括:
[0034]获取模块,用于获取卷积神经网络,所述卷积神经网络包括卷积网络层、BN归一化网络层、全连接网络层、拼接网络层和残差网络层;
[0035]量化因子模块,用于在训练的前向计算中,根据当前网络层输入特征图、权重以及偏置的缩放因子,确定输入特征图、权重以及偏置各自对应的第一量化因子,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种卷积神经网络训练感知量化方法,其特征在于,包括:获取卷积神经网络,所述卷积神经网络包括卷积网络层、BN归一化网络层、全连接网络层、拼接网络层和残差网络层;在训练的前向计算中,根据当前网络层输入特征图、权重以及偏置的缩放因子,确定输入特征图、权重以及偏置各自对应的第一量化因子,其中,所述第一量化因子为整数;利用第一量化因子对当前网络层对应的输入特征图、权重以及偏置分别进行量化,对量化后输入特征图、权重以及偏置进行卷积计算,得到当前网络层的输出特征图;将输出特征图作为下个层的输入特征图送往下层卷积,逐层进行后续处理,得到所有网络层的输出,计算损失函数,以及根据损失函数训练卷积神经网络直至网络模型收敛,得到训练感知量化完成的神经网络。2.根据权利要求1所述的一种卷积神经网络训练感知量化方法,其特征在于,所述利用第一量化因子对当前网络层对应的输入特征图、权重以及偏置分别进行量化,采用以下模型:式中,X为量化前的输入特征图、权重或者偏置,X
q
为量化后的输入特征图、权重或者偏置,scalem为输入特征图、权重或者偏置对应的第一量化因子,2

scalem
为第二量化因子,q
min

‑2n
‑1,q
min
=2
n
‑1‑
1,n为量化至的整数位宽。3.根据权利要求2所述的一种卷积神经网络训练感知量化方法,其特征在于,所述根据当前网络层输入特征图、权重以及偏置的缩放因子,确定输入特征图、权重以及偏置各自对应的第一量化因子,包括:获取当前网络层输入特征图的分布范围、权重的分布范围以及偏置的分布范围;根据输入特征图的分布范围确定输入特征图对应的缩放因子,根据权重的分布范围确定权重对应的缩放因子,根据偏置的分布范围确定偏置对应的缩放因子;根据输入特征图、权重以及偏置对应的缩放因子,确定各自对应的第一量化因子,以使第一量化因子对应的第二量化因子和缩放因子之间的差小于预设阈值。4.根据权利要求3所述的一种卷积神经网络训练感知量化方法,其特征在于,在所述根据输入特征图、权重以及偏置对应的缩放因子,确定各自对应的第一量化因子之前,还包括建立量化因子的约束条件,结合约束条件和缩放因子,确定第一量化因子的取值,其中,所述约束条件包括:在所述卷积网络层、所述BN归一化网络层和所述全连接网络层中,偏置参数对应的第一量化因子小于或等于输入特征图对应的第一量化因子与权重对应的第一量化因子之和;在所述卷积网络层、所述BN归一化网络层和所述全连接网络层中,输入特征图对应的第一量化因子与权重...

【专利技术属性】
技术研发人员:刘阳鲁金铭
申请(专利权)人:南京风兴科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1