CN109325530A - 基于少量无标签数据的深度卷积神经网络的压缩方法 - Google Patents
基于少量无标签数据的深度卷积神经网络的压缩方法 Download PDFInfo
- Publication number
- CN109325530A CN109325530A CN201811046300.8A CN201811046300A CN109325530A CN 109325530 A CN109325530 A CN 109325530A CN 201811046300 A CN201811046300 A CN 201811046300A CN 109325530 A CN109325530 A CN 109325530A
- Authority
- CN
- China
- Prior art keywords
- neural networks
- convolutional neural
- layer
- depth convolutional
- tensor
- 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
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 96
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000007906 compression Methods 0.000 title claims abstract description 32
- 230000006835 compression Effects 0.000 title claims abstract description 32
- 238000013528 artificial neural network Methods 0.000 claims abstract description 12
- 238000010606 normalization Methods 0.000 claims description 27
- 230000010354 integration Effects 0.000 claims description 6
- 210000004205 output neuron Anatomy 0.000 claims description 6
- 210000002364 input neuron Anatomy 0.000 claims description 3
- 210000002569 neuron Anatomy 0.000 claims description 2
- 238000004590 computer program Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2155—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the incorporation of unlabelled data, e.g. multiple instance learning [MIL], semi-supervised techniques using expectation-maximisation [EM] or naïve labelling
-
- 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
Abstract
本发明属于深度神经网络技术领域,具体涉及一种基于少量无标签数据的深度卷积神经网络的压缩方法,旨在解决在已有全精度网络模型基础上,对深度卷积神经网络所有层进行压缩,且不进行基于原始有标注训练数据进行再训练时,性能损失较大的问题,包括:获取原始深度卷积神经网络;对原始深度卷积神经网络中各层的权值张量进行稀疏化操作,得到多个含有较多0元素的权值张量;在已压缩的权值张量基础之上,通过少量无标注数据对压缩后的深度卷积神经网络中的批数据归一化层中的统计量进行更新,获得新的深度卷积神经网络。通过本发明实施例,实现了在仅依赖于少量无标注数据的大型深度卷积神经网络的压缩,降低了性能损失。
Description
技术领域
本发明属于深度神经网络技术领域,具体涉及一种基于少量无标签数据的深度卷积神经网络的压缩方法。
背景技术
近年来卷积神经网络在目标检测识别任务上取得较大进展,其检测正确率已达到商用水平。与此同时,移动终端,智能设备的高速发展,使研究者看到了将卷积神经网络与便携设备相结合的契机。然而,基于卷积神经网络的目标识别依赖于较大内存消耗和较强的运算性能。它们往往依赖于高性能的GPU设备,难以在譬如智能手机和嵌入式设备上进行工作。运行卷积神经网络模型将迅速耗尽有限的内存资源,硬盘存储资源以及电量。这对于用户来说,显然是难以接受的。
网络模型采用稀疏化表示,对内存以及存储资源的占用将会相应减少。这对于FPGA等专用器件来说将会节省片上资源,节约传输时间。较多的0元素同时也会减少浮点数运算数目,这意味着在单位时间内,片上可以进行的运算数目将会增多。因此,大量的工作都聚焦于缩减网络规模,实现高效的网络训练以及运行时加速针对卷积神经网络的压缩问题,已有一些有效的算法被提出。这些算法中仅考虑压缩存储问题,未考虑现实应用中原始有标注训练数据不宜获取的问题。对于大型深度卷积神经网络的所有层不依赖于原始有标注训练数据同时进行压缩且对性能不造成较大损失的工作还有待研究。
发明内容
为了解决现有技术中的上述问题,即为了解决在已有全精度网络模型基础上,对深度卷积神经网络所有层进行压缩,且不进行基于原始有标注训练数据进行再训练时,性能损失较大的问题,本发明的一方面,提供了一种基于少量无标签数据的深度卷积神经网络的压缩方法,包括以下步骤:
步骤1:获取原始深度卷积神经网络;
步骤2:确定各层的权值张量的稀疏度,对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值,基于该阈值将不满足预设条件的张量元素置为0,得到多个稀疏表示的权值张量;
步骤3:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,并通过少量数据重新估计并更新深度卷积神经网络中的批数据归一化层中的统计量,获得新的深度卷积神经网络;
其中,
所述批数据归一化层中的统计量包括各个输出通道的数据均值和方差。
在一些优选实施例中,“基于该阈值将不满足预设条件的张量元素置为0”,其方法包括:
将权值张量元素减去均值除以标准差后与阈值进行比较,若小于阈值则将权值张量元素置为0,否则权值张量元素保留原始数值。
在一些优选实施例中,所述原始深度卷积神经网络中各参数层为卷积层及卷积层之间的批数据归一化层;步骤2中“对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值”,其方法为:
步骤A21:设定所述原始卷积神经网络具有G1个卷积层,每层对应于一个稀疏化权值张量,即稀疏化权值张量的数目G1,设定稀疏度为L1;其中,G1取整数;卷积层的卷积核权值Wc为N1×C1×H1×W1的四维张量,N1为卷积层中卷积核数目,C1为每一个卷积核所具有的通道数目,H1为每一个通道的高度,W1为每一个通道的宽度;
步骤A22:令n从1到N1依次取值,并按以下步骤执行:
步骤A221:计算第n个权值张量的均值和标准差
步骤A222:给定权值稀疏度要求L1;通过数值积分的方法,得到服从一维正态分布的随机变量分布于距离均值k个标准差之内的概率分布值s1;通过不断调整k的取值,得到一组不同k值所对应的s1的查找表;根据该查找表得到s1对应于L1时的k值的选取,记作k1;将第n个权值张量中与距离小于的权值参数置为0。
在一些优选实施例中,步骤3包括:
步骤A31:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,得到稀疏化权值张量的深度卷积神经网络;所述批数据归一化层的统计量参数为2×(N1×1×1×1)的两个四维张量;
步骤A32:令n从1到N1依次取值,并按以下步骤执行:
步骤A321:根据输入稀疏化权值张量的深度卷积神经网络的少量无标注数据,计算得到输入该批数据归一化层的第n个卷积核的输出特征;
步骤A322:通过无偏差估计的方式计算得到第n个统计量参数的值,即第n个卷积核的输出特征的均值和方差,进而计算得到均值μ1n和标准差σ1n。
步骤A323:通过对第n个卷积核的输出特征减去均值μ1n,再除以标准差σ1n的方式,对输出特征进行修正。
在一些优选实施例中,所述稀疏化张量除最后一层外,一一对应于G1-1个通过少量无标注数据更新得到的批数据归一化层的统计量。
在一些优选实施例中,若所述原始深度卷积神经网络中各层为全连接层及位于全连接层之间的批数据归一化层;步骤2中“对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值”,其方法为:
步骤B21:设定所述原始卷积神经网络具有G2个全连接层,每层对应于一个稀疏化权值张量,即稀疏化权值张量的数目G2,设定稀疏度为L2;所述全连接层的权值Wf为N2×C2×1×1的四维张量,N2为该全连接层输出神经元数目,C2为该全连接层输入神经元数目;
步骤B22:令n从1到N2依次取值,并按以下步骤执行:
步骤B221:计算第n个输出神经元与所有输入神经元连接的权值向量(1×C2×1×1)的均值和标准差
步骤B222:给定权值稀疏度要求L2;通过数值积分的方法,得到服从一维正态分布的随机变量分布于距离均值k个标准差之内的概率分布值s2;通过不断调整k的取值,得到一组不同k值所对应的s2的查找表;根据该查找表得到s2对应于L2时的k值的选取,记作k1;将第n个权值张量中与距离小于的权值参数置为0。
在一些优选实施例中,步骤3包括:
步骤B31:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,得到稀疏化权值张量的深度卷积神经网络;所述批数据归一化层的统计量参数为两个维度为N2×1×1×1的四维张量;
步骤B32:令n从1到N2依次取值,并按以下步骤执行:
步骤B321:根据输入稀疏化权值张量的深度卷积神经网络的少量无标注数据,计算得到输入该批数据归一化层的第n个输出节点的输出特征;
步骤B322:通过无偏差估计的方式计算得到第n个统计量参数的值,即第n个输出节点的输出特征的均值和方差,进而计算得到均值μ2n和标准差σ2n。
步骤B323:通过对第n个输出节点的输出特征减去均值μ2n,再除以标准差σ2n的方式,对输出特征进行修正。
在一些优选实施例中,所述稀疏化张量除最后一层外,一一对应于G2-1个通过少量无标注数据更新得到的批数据归一化层的统计量。
本发明的另一方面,提供了一种存储装置,其中存储有多条程序,其特征在于,所述程序适于由处理器加载并执行以实现上述的基于少量无标签数据的深度卷积神经网络的压缩方法。
本发明的第三方面,提供了一种处理装置,包括
处理器,适于执行各条程序;以及
存储设备,适于存储多条程序;
其特征在于,所述程序适于由处理器加载并执行以实现:上述的基于少量无标签数据的深度卷积神经网络的压缩方法。
与现有技术相比,上述技术方案至少具有以下有益效果:
本发明实施例提供的基于少量无标签数据的深度神经网络的压缩方法,通过对深度卷积神经网络的权值利用基于权值分布选取的阈值进行置零,并结合少量无标注数据对批数据归一化层的统计量进行更新,可以实现根据所需压缩率对阈值进行精确调整,并取得压缩后网络性能的大幅提升,从而实现大型深度卷积神经网络的压缩。
当然,实施本发明的任一产品不一定需要同时实现以上所述的所有优点。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其它优点可通过在所写的说明书、权利要求书以及附图中所特别指出的方法来实现和获得。
附图说明
附图作为本发明的一部分,用来提供对本发明的进一步的理解,本发明的示意性实施例及其说明用于解释本发明,但不构成对本发明的不当限定。显然,下面描述中的附图仅仅是一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。在附图中:
图1为本发明一实施例的基于少量无标签数据的深度卷积神经网络的压缩方法的流程示意图;
图2为本发明一实施例的深度卷积神经网络用于图像分类过程示意图;
图3为本发明一实施例的在图像分类过程中深度卷积神经网络的卷积操作示意图;
图4为本发明一实施例的稀疏化方案权值示意图;
图5为本发明一实施例的利用稀疏化后的权值张量替换对应层权值,获得新的卷积神经网络的示意图。
这些附图和文字描述并不旨在以任何方式限制本发明的构思范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
需要说明的是,在下面的描述中,为了方便理解,给出了许多具体细节。但是很明显,本发明的实现可以没有这些具体细节。
需要说明的是,在没有明确限定或不冲突的情况下,本发明中的各个实施例及其中的技术特征可以相互组合而形成技术方案。
本发明的一种基于少量无标签数据的深度卷积神经网络的压缩方法,如图1所示,包括以下步骤:
步骤1:获取原始深度卷积神经网络;
步骤2:确定各层的权值张量的稀疏度,对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值,基于该阈值将不满足预设条件的张量元素置为0,得到多个稀疏表示的权值张量;
步骤3:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,并通过少量数据重新估计并更新深度卷积神经网络中的批数据归一化层中的统计量,获得新的深度卷积神经网络;
其中,所述批数据归一化层中的统计量包括各个输出通道的数据均值和方差。
本发明实施例中“基于该阈值将不满足预设条件的张量元素置为0”,其方法包括:将权值张量元素减去均值除以标准差后与阈值进行比较,若小于阈值则将权值张量元素置为0,否则权值张量元素保留原始数值。
本发明实施例基于少量无标签数据,通过对深度卷积神经网络的权值利用基于权值分布选取的阈值进行置零,并结合少量无标注数据对批数据归一化层的统计量进行更新,可以实现根据所需压缩率对阈值进行精确调整,并取得压缩后网络性能的大幅提升,从而实现大型深度卷积神经网络的压缩。
针对不同的深度卷积神经网络,步骤2、3略有区别,下面通过两种深度卷积神经网络进行说明。
1、原始深度卷积神经网络中各参数层为卷积层及卷积层之间的批数据归一化层。
步骤2包括:
步骤A21:设定所述原始卷积神经网络具有G1个卷积层,每层对应于一个稀疏化权值张量,即稀疏化权值张量的数目G1,设定稀疏度为L1;其中,G1取整数;卷积层的卷积核权值Wc为N1×C1×H1×W1的四维张量,N1为卷积层中卷积核数目,C1为每一个卷积核所具有的通道数目,H1为每一个通道的高度,W1为每一个通道的宽度;
步骤A22:令n从1到N1依次取值,并按以下步骤执行:
步骤A221:计算第n个权值张量的均值和标准差
步骤A222:给定权值稀疏度要求L1;通过数值积分的方法,得到服从一维正态分布的随机变量分布于距离均值k个标准差之内的概率分布值s1;通过不断调整k的取值,得到一组不同k值所对应的s1的查找表;根据该查找表得到s1对应于L1时的k值的选取,记作k1;将第n个权值张量中与距离小于的权值参数置为0;
步骤A223:将权值张量元素减去均值除以标准差后与阈值进行比较,若小于阈值则将权值张量元素置为0,否则权值张量元素保留原始数值。
步骤3包括:
步骤A31:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,得到稀疏化权值张量的深度卷积神经网络;所述批数据归一化层的统计量参数为2×(N1×1×1×1)的两个四维张量;
步骤A32:令n从1到N1依次取值,并按以下步骤执行:
步骤A321:根据输入稀疏化权值张量的深度卷积神经网络的少量无标注数据,计算得到输入该批数据归一化层的第n个卷积核的输出特征;
步骤A322:通过无偏差估计的方式计算得到第n个统计量参数的值,即第n个卷积核的输出特征的均值和方差,进而计算得到均值μ1n和标准差σ1n。
步骤A323:通过对第n个卷积核的输出特征减去均值μ1n,再除以标准差σ1n的方式,对输出特征进行修正。
在一些实施例中,稀疏化张量除最后一层外,一一对应于G1-1个通过少量无标注数据更新得到的批数据归一化层的统计量。
2、原始深度卷积神经网络中各层为全连接层及位于全连接层之间的批数据归一化层。
步骤2包括:
步骤B21:设定所述原始卷积神经网络具有G2个全连接层,每层对应于一个稀疏化权值张量,即稀疏化权值张量的数目G2,设定稀疏度为L2;G2取整数,所述全连接层的权值Wf为N2×C2×1×1的四维张量,N2为该全连接层输出神经元数目,C2为该全连接层输入神经元数目;
步骤B22:令n从1到N2依次取值,并按以下步骤执行:
步骤B221:计算第n个输出神经元与所有输入神经元连接的权值向量(1×C2×1×1)的均值和标准差
步骤B222:给定权值稀疏度要求L2;通过数值积分的方法,得到服从一维正态分布的随机变量分布于距离均值k个标准差之内的概率分布值s2;通过不断调整k的取值,得到一组不同k值所对应的s2的查找表;根据该查找表得到s2对应于L2时的k值的选取,记作k1;将第n个权值张量中与距离小于的权值参数置为0。
步骤B223:将权值张量元素减去均值除以标准差后与阈值进行比较,若小于阈值则将权值张量元素置为0,否则权值张量元素保留原始数值。
步骤3包括:
步骤B31:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,得到稀疏化权值张量的深度卷积神经网络;所述批数据归一化层的统计量参数为两个维度为N2×1×1×1的四维张量;
步骤B32:令n从1到N2依次取值,并按以下步骤执行:
步骤B321:根据输入稀疏化权值张量的深度卷积神经网络的少量无标注数据,计算得到输入该批数据归一化层的第n个输出节点的输出特征;
步骤B322:通过无偏差估计的方式计算得到第n个统计量参数的值,即第n个输出节点的输出特征的均值和方差,进而计算得到均值μ2n和标准差σ2n。
步骤B323:通过对第n个输出节点的输出特征减去均值μ2n,再除以标准差σ2n的方式,对输出特征进行修正。
在本发明的一实施例中,稀疏化张量除最后一层外,一一对应于G2-1个通过少量无标注数据更新得到的批数据归一化层的统计量。
为了更清晰地对本发明技术方案进行说明,下面以图像分类为例对本发明实施例进行详细描述。
图2示例性地示出了将深度卷积神经网络用于图像分类的过程。其中,卷积神经网络包含多个卷积层和多个全连接层。输入图像经过卷积层和全连接层的处理后得到分类结果。图3示例性地示出了在图像分类过程中深度卷积神经网络中卷积层的卷积操作。其中,每个卷积层都有一组卷积核,该组卷积核共同组成该层的权值张量,例如,卷积核可以设置为3×3;卷积层的处理方式就是使用所述卷积核对该层的输入特征张量进行卷积操作(即计算每个卷积核与输入特征图的每个位置的卷积区域对应元素相乘,并求和),获得对应层的输出特征图。如图2所示,把所述卷积核记作该层的权值张量。在深度卷积神经网络为多个卷积层的情况下,卷积层的卷积核权值Wc可以是,但不限于N×C×H×W的四维张量,卷积层的输入特征张量X可以是,但不限于m×c×h×w的四维张量,所述m对应于输入所述深度卷积神经网络的样本数目;所述c对应于输入该层的特征张量的通道数目,例如第一个卷积层的输入为彩色RGB图片,则其输入特征张量的通道数目为3;所述h对应于输入该层的特征张量在每一个通道上的特征图的高度,例如第一个卷积层的输入为彩色RGB图片,则其输入特征图的高度为图片的高度;所述w对应于输入该层的特征张量在每一个通道上的特征图的宽度,例如第一个卷积层的输入为彩色RGB图片,则其输入特征图的宽度为图片的宽度。如图3所示,权值张量对应的C为4,N,H,W,均为2,输入特征张量对应的m为1;h,w均为8;c为4。其中,W维度对应卷积核的宽度;H维度对应卷积核的高度;C维度对应输入的特征张量的通道数;N维度对应于卷积核的数目。
本发明实施例可以通过以下步骤对权值张量Wc以及Wf进行稀疏化,直至所有卷积层都被遍历:
步骤S101:设定各层权值张量的稀疏度,根据正态分布的经验法则确定对应的阈值选取。
步骤S102:对权值张量的各个元素与阈值进行比较,将小于阈值的元素值置为0,而大于阈值的元素保持原值不变。
步骤S103:将稀疏化的权值参数替换原权值参数,得到新的压缩后的深度卷积神经网络。
步骤S1031:利用少量无标注数据输入压缩后的深度卷积神经网络,逐卷积层得到所述m×c×h×w维的输出的特征张量;
步骤S1032:将所述输出的特征张量在c维度上展开,即将四维张量转换成c×(m×h×w)的二维特征张量;
步骤S1033:将所述c个特征张量逐一进行无偏估计,计算其对应维度上的均值μn与标准差σn,并对批数据归一化层的统计量进行更新;
步骤S1034:对输出的特征张量减去均值μn除以标准差σn,得到更新后的特征张量,并作为下一层的输入特征张量;
图4示例性地示出了对N×C×H×W的权值张量进行稀疏化的过程。此处以约30%的稀疏度作为示意,生成包含大量0元素的稀疏化的权值张量表示。如图4所示,当压缩率确定后,通过计算约30%的数值分布在正太分布的均值附近0.5个标准差的范围之内,因此,将阈值设定为约0.5,将小于该阈值的元素置为0,而大于等于该阈值的元素值保持不变。
图5示例性地示出了稀疏化后的权值张量替换对应层权值后,获得新的卷积层。左侧表示原始的卷积核,右侧表示获得的新的卷积核;全精度浮点数表示的权值参数在图中以灰色块进行表示,原始卷积核中小于阈值的元素被置为0,在图中以白色块进行表示。在进行卷积运算时,0元素权值对应的浮点数乘法会被跳过,从而达到减少计算量的目的。同时,通过矩阵的稀疏表示,可以较大程度上压缩权值的存储空间。
在一个优选的实施例中,在原始深度卷积神经网络为多个全连接层的情况下,所有全连接层都可以看成是一种卷积层。为了表述形式的统一,把所有全连接层视为特殊形式的卷积层.例如:在图像分类应用中,第一层全连接层可以看成是卷积核与该层输入特征图大小相同的卷积层,除去第一层以外的所有全连接层都可以看成是N×C×1×1的卷积层(也就是若全连接层属于除第一层全连接层以外的其余的全连接层,则H=W=1),其中,N表示所述全连接层输出节点的个数;C表示全连接层输入节点的个数;因此对于全连接层的处理方式与卷积层的处理方式相同,相关的执行步骤及其说明可以参考针对卷积层进行处理的实施例,在此不再赘述。
本发明提供的方法可以实现对深度卷积神经网络的压缩,通过稀疏矩阵的压缩存储算法,稀疏后的卷积层占用的空间将小于原始深度卷积神经网络卷积层。全连接层可以视为特殊的卷积层,因此全连接层也具有上述特性,并且全连接层占用的空间通常远大于卷积层,通过本发明将会大大减少全连接层的空间占用,因此卷积神经网络权值的存储开销也将大大降低。
下面以一优选实施例来具体说明本发明实施例提供的方法。本优选实施例中将本发明实施例提出的方法应用于图像分类应用领域。其中,未经本发明实施例方法处理的AlexNet深度卷积神经网络占用的存储空间为238兆字节,需要使用约63兆32bit浮点数对权值进行表示。
该方法可以包括:
获取图像分类中应用的AlexNet深度卷积神经网络。
利用上述本发明实施例提供的方法对深度卷积神经网络进行处理,得到新的AlexNet深度卷积神经网络。
经过本发明实施例提供的方法进行处理后,设定卷积层的稀疏度为48%,全连接层的稀疏度为12%,新的AlexNet深度卷积神经网络占用的浮点数权值表示为9.2兆,而分类精度的相对损失仅有2%。可见,本发明实施例提供的方法可以达到约14.7%的权值稀疏度而没有引入较大的性能损失。
上述实施例中虽然将各个步骤按照上述先后次序的方式进行了描述,但是本领域技术人员可以理解,为了实现本实施例的效果,不同的步骤之间不必按照这样的次序执行,其可以同时(并行)执行或以颠倒的次序执行,这些简单的变化都在本发明的保护范围之内。
本发明一种实施例的存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的基于少量无标签数据的深度卷积神经网络的压缩方法。
本发明一种实施例的处理装置,包括处理器,适于执行各条程序;以及存储设备,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的基于少量无标签数据的深度卷积神经网络的压缩方法。
所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的存储装置、处理装置中的存储设备中存储程序对应的方法可以参考前述方法实施例中的对应过程,在此不再赘述。
以上对本发明实施例所提供的技术方案进行了详细的介绍。虽然本文应用了具体的个例对本发明的原理和实施方式进行了阐述,但是,上述实施例的说明仅适用于帮助理解本发明实施例的原理;同时,对于本领域技术人员来说,依据本发明实施例,在具体实施方式以及应用范围之内均会做出改变。
需要说明的是,本文中涉及到的流程图或框图不仅仅局限于本文所示的形式,其还可以进行划分和/或组合。
需要说明的是:附图中的标记和文字只是为了更清楚地说明本发明,不视为对本发明保护范围的不当限定。
术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。
本发明的各个步骤可以用通用的计算装置来实现,例如,它们可以集中在单个的计算装置上,例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备或者多处理器装置,也可以分布在多个计算装置所组成的网络上,它们可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。因此,本发明不限于任何特定的硬件和软件或者其结合。
本发明提供的方法可以使用可编程逻辑器件来实现,也可以实施为计算机程序软件或程序模块(其包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件或数据结构等等),例如根据本发明的实施例可以是一种计算机程序产品,运行该计算机程序产品使计算机执行用于所示范的方法。所述计算机程序产品包括计算机可读存储介质,该介质上包含计算机程序逻辑或代码部分,用于实现所述方法。所述计算机可读存储介质可以是被安装在计算机中的内置介质或者可以从计算机主体上拆卸下来的可移动介质(例如:采用热插拔技术的存储设备)。所述内置介质包括但不限于可重写的非易失性存储器,例如:RAM、ROM、快闪存储器和硬盘。所述可移动介质包括但不限于:光存储介质(例如:CD-ROM和DVD)、磁光存储介质(例如:MO)、磁存储介质(例如:磁带或移动硬盘)、具有内置的可重写非易失性存储器的媒体(例如:存储卡)和具有内置ROM的媒体(例如:ROM盒)。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (10)
1.一种基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,包括以下步骤:
步骤1:获取原始深度卷积神经网络;
步骤2:确定各层的权值张量的稀疏度,对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值,基于该阈值将不满足预设条件的张量元素置为0,得到多个稀疏表示的权值张量;
步骤3:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,并通过少量数据重新估计并更新深度卷积神经网络中的批数据归一化层中的统计量,获得新的深度卷积神经网络;
其中,
所述批数据归一化层中的统计量包括各个输出通道的数据均值和方差。
2.根据权利要求1所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,“基于该阈值将不满足预设条件的张量元素置为0”,其方法包括:
将权值张量元素减去均值除以标准差后与阈值进行比较,若小于阈值则将权值张量元素置为0,否则权值张量元素保留原始数值。
3.根据权利要求2所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,所述原始深度卷积神经网络中各参数层为卷积层及卷积层之间的批数据归一化层;步骤2中“对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值”,其方法为:
步骤A21:设定所述原始卷积神经网络具有G1个卷积层,每层对应于一个稀疏化权值张量,即稀疏化权值张量的数目G1,设定稀疏度为L1;其中,G1取整数;卷积层的卷积核权值Wc为N1×C1×H1×W1的四维张量,N1为卷积层中卷积核数目,C1为每一个卷积核所具有的通道数目,H1为每一个通道的高度,W1为每一个通道的宽度;
步骤A22:令n从1到N1依次取值,并按以下步骤执行:
步骤A221:计算第n个权值张量的均值和标准差
步骤A222:给定权值稀疏度要求L1;通过数值积分的方法,得到服从一维正态分布的随机变量分布于距离均值k个标准差之内的概率分布值s1;通过不断调整k的取值,得到一组不同k值所对应的s1的查找表;根据该查找表得到s1对应于L1时的k值的选取,记作k1;将第n个权值张量中与距离小于的权值参数置为0。
4.根据权利要求3所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,步骤3包括:
步骤A31:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,得到稀疏化权值张量的深度卷积神经网络;所述批数据归一化层的统计量参数为2×(N1×1×1×1)的两个四维张量;
步骤A32:令n从1到N1依次取值,并按以下步骤执行:
步骤A321:根据输入稀疏化权值张量的深度卷积神经网络的少量无标注数据,计算得到输入该批数据归一化层的第n个卷积核的输出特征;
步骤A322:通过无偏差估计的方式计算得到第n个统计量参数的值,即第n个卷积核的输出特征的均值和方差,进而计算得到均值μ1n和标准差σ1n。
步骤A323:通过对第n个卷积核的输出特征减去均值μ1n,再除以标准差σ1n的方式,对输出特征进行修正。
5.根据权利要求3或4所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,所述稀疏化张量除最后一层外,一一对应于G1-1个通过少量无标注数据更新得到的批数据归一化层的统计量。
6.根据权利要求2所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,若所述原始深度卷积神经网络中各层为全连接层及位于全连接层之间的批数据归一化层;步骤2中“对所述原始深度卷积神经网络中各层的权值张量计算所述稀疏度下的阈值”,其方法为:
步骤B21:设定所述原始卷积神经网络具有G2个全连接层,每层对应于一个稀疏化权值张量,即稀疏化权值张量的数目G2,设定稀疏度为L2;所述全连接层的权值Wf为N2×C2×1×1的四维张量,N2为该全连接层输出神经元数目,C2为该全连接层输入神经元数目;
步骤B22:令n从1到N2依次取值,并按以下步骤执行:
步骤B221:计算第n个输出神经元与所有输入神经元连接的权值向量(1×C2×1×1)的均值和标准差
步骤B222:给定权值稀疏度要求L2;通过数值积分的方法,得到服从一维正态分布的随机变量分布于距离均值k个标准差之内的概率分布值s2;通过不断调整k的取值,得到一组不同k值所对应的s2的查找表;根据该查找表得到s2对应于L2时的k值的选取,记作k1;将第n个权值张量中与距离小于的权值参数置为0。
7.根据权利要求6所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,步骤3包括:
步骤B31:用所述多个稀疏表示的权值张量替换所述原始深度卷积神经网络中各层的权值张量,得到稀疏化权值张量的深度卷积神经网络;所述批数据归一化层的统计量参数为两个维度为N2×1×1×1的四维张量;
步骤B32:令n从1到N2依次取值,并按以下步骤执行:
步骤B321:根据输入稀疏化权值张量的深度卷积神经网络的少量无标注数据,计算得到输入该批数据归一化层的第n个输出节点的输出特征;
步骤B322:通过无偏差估计的方式计算得到第n个统计量参数的值,即第n个输出节点的输出特征的均值和方差,进而计算得到均值μ2n和标准差σ2n。
步骤B323:通过对第n个输出节点的输出特征减去均值μ2n,再除以标准差σ2n的方式,对输出特征进行修正。
8.根据权利要求6或7所述的基于少量无标签数据的深度卷积神经网络的压缩方法,其特征在于,所述稀疏化张量除最后一层外,一一对应于G2-1个通过少量无标注数据更新得到的批数据归一化层的统计量。
9.一种存储装置,其中存储有多条程序,其特征在于,所述程序适于由处理器加载并执行以实现权利要求1-7任一项所述的基于少量无标签数据的深度卷积神经网络的压缩方法。
10.一种处理装置,包括
处理器,适于执行各条程序;以及
存储设备,适于存储多条程序;
其特征在于,所述程序适于由处理器加载并执行以实现:
权利要求1-7任一项所述的基于少量无标签数据的深度卷积神经网络的压缩方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811046300.8A CN109325530B (zh) | 2018-09-07 | 2018-09-07 | 一种图像分类方法、存储装置和处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811046300.8A CN109325530B (zh) | 2018-09-07 | 2018-09-07 | 一种图像分类方法、存储装置和处理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109325530A true CN109325530A (zh) | 2019-02-12 |
CN109325530B CN109325530B (zh) | 2021-05-04 |
Family
ID=65264626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811046300.8A Active CN109325530B (zh) | 2018-09-07 | 2018-09-07 | 一种图像分类方法、存储装置和处理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109325530B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110082821A (zh) * | 2019-03-26 | 2019-08-02 | 长江大学 | 一种无标签框微地震信号检测方法及装置 |
CN111539462A (zh) * | 2020-04-15 | 2020-08-14 | 苏州万高电脑科技有限公司 | 模仿生物视觉神经元的图像分类方法、系统、装置及介质 |
CN111597847A (zh) * | 2019-02-20 | 2020-08-28 | 中科院微电子研究所昆山分所 | 一种二维码识别方法、装置、设备及可读存储介质 |
FR3102591A1 (fr) * | 2019-10-24 | 2021-04-30 | A Tiny Wave | Prédiction d’état et commande d’un dispositif en fonction d’un état estimé |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127297A (zh) * | 2016-06-02 | 2016-11-16 | 中国科学院自动化研究所 | 基于张量分解的深度卷积神经网络的加速与压缩方法 |
CN106326868A (zh) * | 2016-08-26 | 2017-01-11 | 江苏华通晟云科技有限公司 | 基于余弦相似度度量学习的人脸识别方法 |
US20170272751A1 (en) * | 2002-05-21 | 2017-09-21 | Innotive Corporation | Transferring system for huge and high quality images on network and method thereof |
CN107480770A (zh) * | 2017-07-27 | 2017-12-15 | 中国科学院自动化研究所 | 可调节量化位宽的神经网络量化与压缩的方法及装置 |
CN107516129A (zh) * | 2017-08-01 | 2017-12-26 | 北京大学 | 基于维度自适应的Tucker分解的深度网络压缩方法 |
CN107644221A (zh) * | 2017-10-31 | 2018-01-30 | 南京航空航天大学 | 基于参数压缩的卷积神经网络交通标志识别方法 |
US20180046919A1 (en) * | 2016-08-12 | 2018-02-15 | Beijing Deephi Intelligence Technology Co., Ltd. | Multi-iteration compression for deep neural networks |
CN107944555A (zh) * | 2017-12-07 | 2018-04-20 | 广州华多网络科技有限公司 | 神经网络压缩和加速的方法、存储设备和终端 |
US20180174047A1 (en) * | 2016-12-15 | 2018-06-21 | WaveOne Inc. | Data compression for machine learning tasks |
CN108322221A (zh) * | 2017-01-18 | 2018-07-24 | 华南理工大学 | 一种用于深度卷积神经网络模型压缩的方法 |
-
2018
- 2018-09-07 CN CN201811046300.8A patent/CN109325530B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170272751A1 (en) * | 2002-05-21 | 2017-09-21 | Innotive Corporation | Transferring system for huge and high quality images on network and method thereof |
CN106127297A (zh) * | 2016-06-02 | 2016-11-16 | 中国科学院自动化研究所 | 基于张量分解的深度卷积神经网络的加速与压缩方法 |
US20180046919A1 (en) * | 2016-08-12 | 2018-02-15 | Beijing Deephi Intelligence Technology Co., Ltd. | Multi-iteration compression for deep neural networks |
CN106326868A (zh) * | 2016-08-26 | 2017-01-11 | 江苏华通晟云科技有限公司 | 基于余弦相似度度量学习的人脸识别方法 |
US20180174047A1 (en) * | 2016-12-15 | 2018-06-21 | WaveOne Inc. | Data compression for machine learning tasks |
CN108322221A (zh) * | 2017-01-18 | 2018-07-24 | 华南理工大学 | 一种用于深度卷积神经网络模型压缩的方法 |
CN107480770A (zh) * | 2017-07-27 | 2017-12-15 | 中国科学院自动化研究所 | 可调节量化位宽的神经网络量化与压缩的方法及装置 |
CN107516129A (zh) * | 2017-08-01 | 2017-12-26 | 北京大学 | 基于维度自适应的Tucker分解的深度网络压缩方法 |
CN107644221A (zh) * | 2017-10-31 | 2018-01-30 | 南京航空航天大学 | 基于参数压缩的卷积神经网络交通标志识别方法 |
CN107944555A (zh) * | 2017-12-07 | 2018-04-20 | 广州华多网络科技有限公司 | 神经网络压缩和加速的方法、存储设备和终端 |
Non-Patent Citations (4)
Title |
---|
ALEXANDER NOVIKOV 等: "Tensorizing Neural Networks", 《ARXIV: 1509.06569V2》 * |
JIAN CHENG 等: "Recent advances in efficient computation of deep convolutional neural networks", 《FRONTIES OF INFORMATION TECHNOLOGY & ELECTRONIC ENGINEERING》 * |
SONG HAN 等: "Deep Compression: Compressing deep neural network with pruning, trained quantization and huffman coding", 《ARXIV:1510.00149V5》 * |
雷杰 等: "深度网络模型压缩综述", 《软件学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111597847A (zh) * | 2019-02-20 | 2020-08-28 | 中科院微电子研究所昆山分所 | 一种二维码识别方法、装置、设备及可读存储介质 |
CN110082821A (zh) * | 2019-03-26 | 2019-08-02 | 长江大学 | 一种无标签框微地震信号检测方法及装置 |
CN110082821B (zh) * | 2019-03-26 | 2020-10-02 | 长江大学 | 一种无标签框微地震信号检测方法及装置 |
FR3102591A1 (fr) * | 2019-10-24 | 2021-04-30 | A Tiny Wave | Prédiction d’état et commande d’un dispositif en fonction d’un état estimé |
CN111539462A (zh) * | 2020-04-15 | 2020-08-14 | 苏州万高电脑科技有限公司 | 模仿生物视觉神经元的图像分类方法、系统、装置及介质 |
CN111539462B (zh) * | 2020-04-15 | 2023-09-19 | 苏州万高电脑科技有限公司 | 模仿生物视觉神经元的图像分类方法、系统、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109325530B (zh) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109325530A (zh) | 基于少量无标签数据的深度卷积神经网络的压缩方法 | |
US11836615B2 (en) | Bayesian nonparametric learning of neural networks | |
CN109816009A (zh) | 基于图卷积的多标签图像分类方法、装置及设备 | |
Chavan et al. | Vision transformer slimming: Multi-dimension searching in continuous optimization space | |
CN110245741A (zh) | 多层神经网络模型的优化和应用方法、装置及存储介质 | |
CN109902222A (zh) | 一种推荐方法及装置 | |
CN109360097A (zh) | 基于深度学习的股票预测方法、装置、设备及存储介质 | |
CN110175628A (zh) | 一种基于自动搜索与知识蒸馏的神经网络剪枝的压缩算法 | |
CN110210618A (zh) | 动态修剪深度神经网络权重和权重共享的压缩方法 | |
CN107704070A (zh) | 应用清理方法、装置、存储介质及电子设备 | |
CN108229536A (zh) | 分类预测模型的优化方法、装置及终端设备 | |
CN108875693A (zh) | 一种图像处理方法、装置、电子设备及其存储介质 | |
CN113128478A (zh) | 模型训练方法、行人分析方法、装置、设备及存储介质 | |
CN109726291A (zh) | 分类模型的损失函数优化方法、装置及样本分类方法 | |
CN114511042A (zh) | 一种模型的训练方法、装置、存储介质及电子装置 | |
CN110531955A (zh) | 用在深度神经网络的指数运算方法、计算机装置、记录介质 | |
CN110533459A (zh) | 一种基于梯度提升算法的终端更换概率预测方法及装置 | |
CN109359542A (zh) | 基于神经网络的车辆损伤级别的确定方法及终端设备 | |
CN112668455A (zh) | 人脸年龄识别方法、装置、终端设备及存储介质 | |
CN112819157A (zh) | 神经网络训练的方法及装置、智能行驶控制的方法及装置 | |
CN109872183A (zh) | 智能服务评价方法、计算机可读存储介质和终端设备 | |
CN113378866B (zh) | 图像分类方法、系统、存储介质及电子设备 | |
US20200372363A1 (en) | Method of Training Artificial Neural Network Using Sparse Connectivity Learning | |
CN113935407A (zh) | 一种异常行为识别模型确定方法及装置 | |
CN110245706B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |