CN112149805A - 基于框架搜索的深度神经网络的加速与压缩方法及系统 - Google Patents

基于框架搜索的深度神经网络的加速与压缩方法及系统 Download PDF

Info

Publication number
CN112149805A
CN112149805A CN202011016590.9A CN202011016590A CN112149805A CN 112149805 A CN112149805 A CN 112149805A CN 202011016590 A CN202011016590 A CN 202011016590A CN 112149805 A CN112149805 A CN 112149805A
Authority
CN
China
Prior art keywords
neural network
network model
weight
compressed
layer
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
Application number
CN202011016590.9A
Other languages
English (en)
Other versions
CN112149805B (zh
Inventor
郭庆北
张波
李忠涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fazheng Internet Beijing Technology Co ltd
Original Assignee
University of Jinan
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Jinan filed Critical University of Jinan
Priority to CN202011016590.9A priority Critical patent/CN112149805B/zh
Publication of CN112149805A publication Critical patent/CN112149805A/zh
Application granted granted Critical
Publication of CN112149805B publication Critical patent/CN112149805B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

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

基于框架搜索的深度神经网络的加速与压缩方法及系统
技术领域
本申请涉及可微的高效深度神经网络框架学习技术领域,特别是涉及基于框架搜索的深度神经网络的加速与压缩方法及系统。
背景技术
本部分的陈述仅仅是提到了与本申请相关的背景技术,并不必然构成现有技术。
尽管卷积神经网络已经在图像分类、目标检测和语义分割等计算机视觉任务中取得了巨大进步,但是由于模型大小、延迟和能量的限制,它们部署在许多嵌入式平台上仍然受限,像机器人、自动驾驶汽车和移动APPs和监视摄像机。许多的方法已经提出提高神经网络的效率来解决硬件资源受限的问题。这些方法大体分为三类:传统的模型压缩方法、轻量级网络设计和自动的神经框架搜索。由于深度神经网络的过参数化,传统的方法通过不同的技术启发式地压缩神经网络模型,例如裁剪、网络量化、张量分解和知识蒸馏等。通过设计高效的模块构建轻量级网络,这些模块包括组卷积、深度可分离卷积和shuffle操作等。最近,为了自动探索更大的设计空间,NAS方法利用强化学习、进化算法和基于梯度的方法获得高效的神经网络,同时收获先进的识别性能。
然而,这些方法有三个方面的问题:
(1)无论是启发式的压缩策略还是轻量级模型设计都需要领域专家探索框架空间。然而,这个空间如此之大以致于人工的方法负担不起框架搜索的代价。由于搜索空间的限制,这个搜索到的网络通常是次优的。而且,这些方法必须考虑硬件资源的限制,很难为不同资源的硬件设备匹配独立的模型。
(2)早期的NAS方法利用强化学习和进化算法自动地探索离散的搜索空间。然而,这些方法产生大量的候选神经框架,训练和评估这些候选神经网络用以指导神经框架搜索是非常浪费时间的和计算昂贵的。
(3)DNAS方法将搜索离散的神经框架问题松弛为优化随机超网的概率问题,并且允许本申请利用基于梯度的方法探索连续的搜索空间。然而,一些DNAS方法基于框架参数的分布进行采样少量的候选神经框架,并从中收获最终的神经框架。
发明内容
为了解决现有技术的不足,本申请提供了基于框架搜索的深度神经网络的加速与压缩方法及系统;
第一方面,本申请提供了基于框架搜索的深度神经网络的加速与压缩方法;
基于框架搜索的深度神经网络的加速与压缩方法,包括:
获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;
对待压缩的原始神经网络模型进行权重的优化;
对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;
对框架参数优化后的神经网络模型进行裁剪,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型,即为压缩后的神经网络模型。
第二方面,本申请提供了基于框架搜索的深度神经网络的加速与压缩系统;
基于框架搜索的深度神经网络的加速与压缩系统,包括:
获取模块,其被配置为:获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;
权重优化模块,其被配置为:对待压缩的原始神经网络模型进行权重的优化;
框架参数优化模块,其被配置为:对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;
裁剪模块,其被配置为:对框架参数优化后的神经网络模型进行裁剪,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型,即为压缩后的神经网络模型。
第三方面,本申请还提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述第一方面所述的方法。
第四方面,本申请还提供了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成第一方面所述的方法。
第五方面,本申请还提供了一种计算机程序(产品),包括计算机程序,所述计算机程序当在一个或多个处理器上运行的时候用于实现前述第一方面任意一项的方法。
与现有技术相比,本申请的有益效果是:
1.解决用于图像分类的深度卷积神经网络的压缩与加速的问题,使得压缩后的网络能够部署在嵌入式系统和移动平台上,一方面降低网络参数的存储空间和加速推断,另一方面保持网络的识别精度。为此,本申请提出了一种可微的高效深度神经网络框架学习方法,该方法通过利用连续性方法基于随机梯度下降学习高效的神经框架。
2.本申请建立了一个基于scaled sigmoid函数的新的独立模块,丰富了神经网络框架优化的模块家族;
3.本申请通过连续性方法松弛框架优化问题并且通过基于梯度的方法学习最优神经框架;
4.本申请的DNAL方法不产生任何额外的候选神经框架,因此大大提高了神经框架搜索的效率;
5.该方法可用于传统的CNN、轻量级CNN和随机超网进行自动的神经框架学习;
6.综合的实验证实了本申请的DNAL方法在各种CNN框架中收获了ImageNet数据集先进的识别性能,这些框架包括VGG16、ResNet50、MobileNetV2和ProxylessNet。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1为第一个实施例的方法流程图;
图2为第一个实施例的Scaled sigmoid函数。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
随着深度卷积神经网络(CNN)的发展,自动神经网络设计已经收到了越来越多的关注。尤其是,当深度神经网络模型部署在嵌入式或者移动平台等存储和计算资源受限的设备时,更需要紧致而高效的深度神经网络模型。而自动框架搜索(NAS)面临的最大问题是训练和评估大量的候选神经框架,尤其是早期的采用强化学习和进化算法的NAS方法。甚至,最近的一些可微的神经框架搜索(DNAS)方法仍然基于框架参数的概率分布采样少量的候选神经框架。为了解决这一问题,本申请引入一个新颖的基于scaled sigmoid函数的框架参数,并且提出一个可微的神经框架学习(DNAL)方法,该方法不需要任何额外的候选神经框架。具体地,对于传统的CNN或者随机超网,本申请建立一个新的通道方面的模块层,层中包含scaled sigmoid函数的框架参数。本申请从头训练这些深度神经模型,模型的优化可分为参数优化和框架优化两个方面,这样可有效避免它们之间的相互干扰和减轻梯度消失问题。本申请通过连续的scaled sigmoid方法求解神经框架的非凸优化问题。广泛的实验展示了本申请的DNAL方法在框架学习效率方面表现出卓越的性能,并且方法适用于传统的CNN(VGG和ResNet)、轻量级CNN(MobileNetV2)和随机超网(ProxylessNet)。在ImageNet数据集上,本申请的DNAL方法超过了其他先进方法的识别精度。
实施例一
本实施例提供了基于框架搜索的深度神经网络的加速与压缩方法;
基于框架搜索的深度神经网络的加速与压缩方法,包括:
S101:获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;
S102:对待压缩的原始神经网络模型进行权重的优化;
S103:对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;
S104:对框架参数优化后的神经网络模型进行裁剪,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型,即为压缩后的神经网络模型。
进一步地,所述方法还包括:将压缩后的神经网络模型部署到嵌入式系统中,基于嵌入式系统中的压缩后的神经网络模型对输入的图像进行图像分类。
示例性的,所述S101:待压缩的原始神经网络模型,例如是指:VGG16模型、Resnet50模型或MobileNetV2网络模型。
作为一个或多个实施例,所述S101还包括:
在待压缩的原始神经网络的批量归一化BN(Batch Normalization)层之后,在Relu函数层之前,添加一个scaled sigmoid函数层(简称SS层);所述批量归一化BN层、scaled sigmoid函数层与Relu函数层三者依次连接。
scaled sigmoid函数层,是指:
用scaledsigmoid函数作为缩放因子来缩放相应通道的输出。
scaledsigmoid函数如下:
y=sigmoid(δs)
其中,超参数δ为缩放因子来控制sigmoid函数的带宽。
当δ=1时,scaledsigmoid函数为标准的sigmoid函数;当δ减小时,scaledsigmoid函数有更大的激活区域,而当δ增大时,scaledsigmoid函数有更大的饱和区域。s为框架参数,s∈R。
scaledsigmoid函数的输出示意图,如图2所示(δ1<δ2<δ3)。
对于第l层的第i个通道,它的输出
Figure BDA0002699272530000071
经过scaledsigmoid函数的缩放转变为
Figure BDA0002699272530000072
Figure BDA0002699272530000073
通过对框架参数s的优化,如果
Figure BDA0002699272530000074
那么移除这个通道对网络没有任何影响,而如果
Figure BDA0002699272530000075
那么保留这个通道。
作为一个或多个实施例,S102:对待压缩的原始神经网络模型进行权重的优化;具体步骤包括:
对待压缩的原始神经网络模型,随机初始化其权重;
屏蔽scaled sigmoid函数层,即批量归一化BN层的输出端与Relu函数层的输入端连接;
采用随机梯度下降算法SGD,对权重进行优化。
进一步地,所述采用随机梯度下降算法SGD,对权重进行优化;具体是采用带有权重衰减的随机梯度下降算法SGD,对权重进行优化。
进一步地,采用随机梯度下降算法SGD,对权重进行优化,对应的损失函数为:
L=L0w||W||2
其中,第一项为交叉熵损失函数,第二项为权重衰减项,λw为加权系数调节第一项和第二项。
应理解的,所述权重W,是指:待压缩的原始神经网络模型的卷积层权重。
作为一个或多个实施例,S103:对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;具体步骤包括:
对权重优化后的神经网络模型,保持权重不变,恢复scaled sigmoid函数层的工作,即批量归一化BN层的输出端与scaled sigmoid函数层的输入端连接,scaled sigmoid函数层的输出端与Relu函数层的输入端连接;
初始化框架参数,初始化缩放因子;
采用随机梯度下降算法SGD,对框架参数进行优化。
进一步地,采用随机梯度下降算法SGD,对框架参数进行优化,同时缩放因子随着训练过程逐渐增大。
进一步地,采用随机梯度下降算法SGD,对框架参数进行优化,对应的损失函数为:
Figure BDA0002699272530000081
其中,L0为交叉熵损失函数,
Figure BDA0002699272530000082
为scaledsigmoid约束项,它的作用是驱动每个通道的sigmoid值趋向于0,λw为加权系数调节L0
Figure BDA0002699272530000083
应理解的,所述框架参数s,是指:对应每个通道的可训练参数,它的取值范围为实数,通过随机梯度下降SGD,对其进行优化。优化后,若某个通道框架参数的sigmoid函数值为0,则表示这个通道对网络不重要,移除这个通道对网络没有影响;若某个通道框架参数的sigmoid函数值为1,则表示这个通道对网络重要,需要保留。
作为一个或多个实施例,所述S104:对框架参数优化后的神经网络模型进行裁剪;具体步骤包括:
如果scaled sigmoid函数
Figure BDA0002699272530000091
则保留相应的输出通道。相反地,如果scaled sigmoid函数
Figure BDA0002699272530000092
则把相应的输出通道作为冗余部分移除。
作为一个或多个实施例,所述S104:对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型;具体步骤包括:
屏蔽SS层,使其不起作用;
采用随机梯度下降算法SGD,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型。
进一步地,所述S104:对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型;所对应的损失函数为:
Figure BDA0002699272530000093
其中,L0为交叉熵损失函数,
Figure BDA0002699272530000094
为权重衰减项,λw为加权系数调节L0
Figure BDA0002699272530000095
应理解的,所述权重
Figure BDA0002699272530000096
是指:裁剪后的神经网络模型的卷积层权重。
目前,尽管深度神经网络已经达到了最高水准的性能,但是由于嵌入式系统或者移动平台存储和计算资源的限制,以及深度神经网络的庞大的参数对存储的需求和大量卷积对运算的要求,因此这些神经网络模型无法直接部署在嵌入式系统和移动平台中。针对这一问题,本申请给出一个可微的神经框架学习方法,以现有的神经模型为搜索空间学习紧凑而高效的神经框架,用于深度神经模型的压缩和加速,以满足在有限资源的设备上的部署条件。下面具体给出可微的神经框架学习方法。
1、符号表示与问题定义
一个神经网络可以被参数化为两类参数:框架参数和权重,它们分别被用于表达框架和生成特征图。因此,学习高效的神经框架问题可以被公式化为:
Figure BDA0002699272530000101
这里,Rn是一个高维实数空间,它的维度与神经网络的框架有关。A是一个离散的框架空间,能够被框架参数s所表达。本申请的目的是通过优化s发现一个最优的框架a(s)∈A。本申请通过优化这个最优神经框架对应的权重wa来获得最小的损失L(a(s),wa)。
2、搜索空间
本申请建立一个通道方面的搜索空间,它包括传统CNN、轻量级CNN和随机超网。在每个层,传统CNN和轻量级CNN有唯一的操作,像卷积和池化等。本申请可以选择同样操作的不同通道作为搜索空间。
随机超网在每个层有多个并行块,每个块有不同的操作。因此,它构建了更大的搜索空间。存在的DNAS方法在每个层仅选择一个块构建层方面的搜索空间。与这些DNAS方法不同,本申请选择一个或者多个操作块,而这些操作块中选择不同的通道构建本申请的搜索空间。这样的搜索空间具有多样化的神经结构,有助于提高网络的表达能力。
这个传统CNN可以被视为一个特殊的随机超网,它在每个层只有一个操作块。为了简化描述,本申请以随机超网为例。假设一个L层随机超网,在第l层包含Ml个并行操作块,每个块有Nl个通道。每个通道的状态是一个二值采样空间,也就是{0,1}。这个0值意味着相应的通道在推断中不起作用,相反1值意味着相应的通道正常工作。因此,这个框架搜索空间包含
Figure BDA0002699272530000102
个可能的框架。以VGG16为例,所有通道的总数为4224,因此它包含24224≈101272个可能的框架。以更深的ResNet50为例,所有可能的框架数目超过107992个。这个搜索空间如此之大以致于不可能枚举所有可能的框架来获得最优神经框架。而且,求解非凸优化问题来发现最优框架,这是一个挑战性的问题。
3、可微的神经框架连续性学习方法
本申请首先引入一个通道方面的框架参数s,它被用于表达神经网络的框架。这里,s=[s1,s2,...,sL],并且对于第l层,
Figure BDA0002699272530000111
通过将框架参数s转化为二值向量b。本申请把二值函数b=binary(s)作为激活函数来实现二值化过程,如下所示,
Figure BDA0002699272530000112
其中,s∈s并且b∈b。
然而,由于二值函数是非光滑和非凸的,因此用标准的反向传播训练深度神经网络是不可行的。二值函数在0处是病态的,也就是不可微的,并且在非0处的梯度都是0。这在优化神经网络时会引起梯度消失问题。
优化带有非平滑激活函数的神经网络是一个开放的问题。受到连续性方法的激励,本申请通过平滑这个二值激活函数来解决这个带有病态梯度的优化问题。本申请发现在二值函数和scaled sigmoid函数之间存在一个至关重要的关系,如下所示,
limδ→∞sigmoid(δs)=binary(s)。 (3)
这里,p=sigmoid(δs)=1/(1+e-δs)是带有缩放因子δ的scaled sigmoid函数,δ用来控制函数的带宽。如图1所示。如果δ=1,这个函数就是标准的sigmoid函数,它是平滑的。随着缩放因子δ的增大,这个函数趋向于不平滑和饱和。幸运地,当δ趋向于+∞,这个函数转化为不平滑的二值函数。
由于scaled sigmoid函数的关键特性,通过逐渐减少scaled sigmoid函数的平滑度,本申请松弛优化神经框架问题为优化框架参数s的问题。
具体地,本申请开始用平滑的sigmoid函数优化神经框架,也就是δ0=1。通过逐渐地增大缩放因子δ,这个神经框架也逐渐地聚合为带有非平滑二值函数的最优神经框架。本申请设置最大δ为104,它足够确保收敛。因此,本申请的DNAL方法通过基于梯度的方法优化神经框架,并且没有产生任何额外的候选框架。
本申请建立一个新的通道方面的模块层来模块化scaled sigmoid激活函数,命名为SS层,并且把这个SS层置于Batch Normalization(BN)层的后面。
为了获得一个高效的神经框架,本申请定义损失函数如下,
Figure BDA0002699272530000121
其中,第一项是交叉熵损失函数,第二项驱动每个通道的scaled sigmoid激活值为0。超参数λa是一个用于平衡第一项与第二项的系数,用于收获最佳的精度和效率的折中。
在前向传播过程中,本申请计算第l层的输出
Figure BDA0002699272530000122
Figure BDA0002699272530000123
其中,⊙是Hadamard乘积符号,
Figure BDA0002699272530000124
是在第l层中第i个块的第j个通道的输出。Sigmoid函数作为一个加权系数缩放相应通道的输出,而每个块输出的合计作为层的输出。这个缩放因子δ随着训练过程指数地增长。
在反向传播过程中,本申请计算关于框架参数的梯度,如下所示,
Figure BDA0002699272530000125
因此,本申请可以使用梯度下降法更新框架参数s。由于框架参数较少,在框架优化中DNAL方法能够快速聚合。而且,本申请直接在目标任务上优化神经框架,而不是在代理任务上,例如:小数据集进行训练。这能够确保DNAL获得的神经框架在目标任务上是最优的。
在DNAL训练聚合后,如果
Figure BDA0002699272530000131
则保留相应的通道。相反地,如果
Figure BDA0002699272530000132
则把相应的通道作为冗余部分移除。
在裁剪通道之后,本申请屏蔽SS层,使其不起作用,因此最终没有引入任何特定的操作和结构。最后,本申请微调发现的最优神经框架来恢复它的表达能力。
到目前为止,仍有两个挑战性的问题。一是梯度消失问题。随着超参数δ的增加,scaled sigmoid函数有越来越大的饱和区域。这会导致效率低的反向传播,也会影响神经网络的优化。二是参数优化和框架优化之间的干扰问题。一个通道综合地受到它的权重和框架参数的影响。例如:一个通道有一个scaled sigmoid函数的近零值,但是大的权重值。把这样一个通道视为不重要的是太过随意的,因为这个通道仍然对下一层贡献相当的作用。
为了解决这两个问题,本申请将网络优化解耦合为参数优化和框架优化。在参数优化阶段,本申请屏蔽SS层,这意味着SS层没有改变原来的通道输出,不起作用。仅仅通过随机梯度下降(SGD)算法优化权重。当优化神经框架时,本申请冻结可训练的层,包括卷积层和BN层,然后通过SGD仅仅优化框架参数。采用迭代的优化策略可减轻梯度消失问题,同时减少它们之间的相互干扰。
这整个过程分为三个阶段:(1)权重的优化阶段。本申请屏蔽SS层,采用带有权重衰减的SGD方法仅仅优化权重。(2)框架参数的优化阶段。本申请冻结可训练的参数,然后采用连续性方法仅仅训练框架参数。(3)微调阶段。在裁剪sigmoid(δs)=0的通道后,本申请微调最优的神经框架收获最佳的识别精度。
可微的高效深度神经网络框架学习方法实现流程如图2所示。
为实现上述目的,本发明采用采用如下技术方案:
首先给出整体的DNAL的压缩和加速过程,具体过程如下:
第一步:给定一个带有SS层的神经网络模型N,随机初始化权重s,并且屏蔽SS层。
第二步:采用带有权重衰减的SGD优化权重,也就是损失函数L=L0w||W||2
第三步:冻结可训练的权重,使能SS层,初始化框架参数s=0,缩放因子δ=0。
第四步:采用SGD优化框架参数,损失函数
Figure BDA0002699272530000141
随着训练过程,缩放因子δ指数地从1增长到104
第五步:裁剪sigmoid(δs)=0的通道,并且屏蔽SS层,得到学习到的最优神经框架
Figure BDA0002699272530000142
第六步:采用带有权重衰减的SGD微调最优神经框架
Figure BDA0002699272530000143
也就是损失函数
Figure BDA0002699272530000144
仿真实验
ImageNet数据集:ILSVRC2012是ImageNet数据集的子集,包含1.2M训练图片和50K的验证集图片,本申请把验证集作为测试对待。所有的图片样本分为1000类,并且本申请在训练集上采取了数据扩张技术,每一个训练样本被放大到256*256的大小,或者再随机的水平翻转,然后从放大的图片中随机剪切224*224大小的图片区域作为训练样本;对测试集来说,本申请同样放大图片,但采用中心剪切的方式得到测试样本。
网络框架:本申请使用VGG16、ResNet50和MobileNetV2三个网络模型作为本申请的基线模型。
表1展示了VGG16模型在ILSVRC2012上的压缩与加速结果,以及与当前最为先进的模型进行对比的结果。很明显,在近似的FLOPs下,本申请的DNAL方法收获了相当的识别精度和更少的模型参数。
表2展示了ResNet50模型在ILSVRC2012上的压缩与加速结果,以及与当前最为先进的模型进行对比结果。很明显,在同等的FLOPs下,本申请的DNAL方法优于当前最为先进的模型。
表3展示了MobileNetV2模型在ILSVRC2012上的压缩与加速结果,以及与当前最为先进的AMC模型进行对比结果。对于高效的MobileNetV2模型,它的压缩结果更能说明压缩方法的优劣。在略低的FLOPs下,本申请的DNAL方法收获了比AMC略高的识别精度,这充分说明了本申请的DNAL方法是非常杰出的。
表1 VGG16的压缩及对比结果
Figure BDA0002699272530000151
表2 ResNet50的压缩及对比结果
Figure BDA0002699272530000161
表3 MobileNetV2的压缩及对比结果
Figure BDA0002699272530000162
实施例二
本实施例提供了基于框架搜索的深度神经网络的加速与压缩系统;
基于框架搜索的深度神经网络的加速与压缩系统,包括:
获取模块,其被配置为:获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;
权重优化模块,其被配置为:对待压缩的原始神经网络模型进行权重的优化;
框架参数优化模块,其被配置为:对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;
裁剪模块,其被配置为:对框架参数优化后的神经网络模型进行裁剪,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型,即为压缩后的神经网络模型。
此处需要说明的是,上述获取模块、权重优化模块、框架参数优化模块和裁剪模块对应于实施例一中的步骤S101至S104,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
上述实施例中对各个实施例的描述各有侧重,某个实施例中没有详述的部分可以参见其他实施例的相关描述。
所提出的系统,可以通过其他的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如上述模块的划分,仅仅为一种逻辑功能划分,实际实现时,可以有另外的划分方式,例如多个模块可以结合或者可以集成到另外一个系统,或一些特征可以忽略,或不执行。
实施例三
本实施例还提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述实施例一所述的方法。
应理解,本实施例中,处理器可以是中央处理单元CPU,处理器还可以是其他通用处理器、数字信号处理器DSP、专用集成电路ASIC,现成可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
实施例一中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元即算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
实施例四
本实施例还提供了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例一所述的方法。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.基于框架搜索的深度神经网络的加速与压缩方法,其特征是,包括:
获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;
对待压缩的原始神经网络模型进行权重的优化;
对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;
对框架参数优化后的神经网络模型进行裁剪,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型,即为压缩后的神经网络模型。
2.如权利要求1所述的方法,其特征是,所述方法还包括:将压缩后的神经网络模型部署到嵌入式系统中,基于嵌入式系统中的压缩后的神经网络模型对输入的图像进行图像分类。
3.如权利要求1所述的方法,其特征是,所述获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;还包括:
在待压缩的原始神经网络的批量归一化BN层之后,在Relu函数层之前,添加一个scaled sigmoid函数层;所述批量归一化BN层、scaled sigmoid函数层与Relu函数层三者依次连接;scaled sigmoid函数层,是指:用scaledsigmoid函数作为缩放因子来缩放相应通道的输出。
4.如权利要求1所述的方法,其特征是,对待压缩的原始神经网络模型进行权重的优化;具体步骤包括:
对待压缩的原始神经网络模型,随机初始化其权重;
屏蔽scaled sigmoid函数层,即批量归一化BN层的输出端与Relu函数层的输入端连接;
采用随机梯度下降算法SGD,对权重进行优化。
5.如权利要求1所述的方法,其特征是,对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;具体步骤包括:
对权重优化后的神经网络模型,保持权重不变,恢复scaled sigmoid函数层的工作,即批量归一化BN层的输出端与scaled sigmoid函数层的输入端连接,scaled sigmoid函数层的输出端与Relu函数层的输入端连接;
初始化框架参数,初始化缩放因子;
采用随机梯度下降算法SGD,对框架参数进行优化。
6.如权利要求1所述的方法,其特征是,对框架参数优化后的神经网络模型进行裁剪;具体步骤包括:
如果scaled sigmoid函数
Figure FDA0002699272520000021
则保留相应的输出通道;相反地,如果scaled sigmoid函数
Figure FDA0002699272520000022
则把相应的输出通道作为冗余部分移除。
7.如权利要求1所述的方法,其特征是,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型;具体步骤包括:
屏蔽SS层,使其不起作用;
采用随机梯度下降算法SGD,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型。
8.基于框架搜索的深度神经网络的加速与压缩系统,其特征是,包括:
获取模块,其被配置为:获取待压缩的原始神经网络模型,所述原始神经网络模型用于图像分类;
权重优化模块,其被配置为:对待压缩的原始神经网络模型进行权重的优化;
框架参数优化模块,其被配置为:对权重优化后的神经网络模型,保持权重固定不变,只进行框架参数优化;
裁剪模块,其被配置为:对框架参数优化后的神经网络模型进行裁剪,对裁剪后的神经网络模型进行微调,得到图像分类精度最高的神经网络模型,即为压缩后的神经网络模型。
9.一种电子设备,其特征是,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征是,用于存储计算机指令,所述计算机指令被处理器执行时,完成权利要求1-7任一项所述的方法。
CN202011016590.9A 2020-09-24 2020-09-24 基于框架搜索的深度神经网络的加速与压缩方法及系统 Active CN112149805B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011016590.9A CN112149805B (zh) 2020-09-24 2020-09-24 基于框架搜索的深度神经网络的加速与压缩方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011016590.9A CN112149805B (zh) 2020-09-24 2020-09-24 基于框架搜索的深度神经网络的加速与压缩方法及系统

Publications (2)

Publication Number Publication Date
CN112149805A true CN112149805A (zh) 2020-12-29
CN112149805B CN112149805B (zh) 2023-08-22

Family

ID=73896760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011016590.9A Active CN112149805B (zh) 2020-09-24 2020-09-24 基于框架搜索的深度神经网络的加速与压缩方法及系统

Country Status (1)

Country Link
CN (1) CN112149805B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114708270A (zh) * 2021-12-15 2022-07-05 华东师范大学 基于知识聚合与解耦蒸馏的语义分割模型压缩系统及压缩方法
CN114764614A (zh) * 2021-01-11 2022-07-19 中国移动通信有限公司研究院 神经网络压缩方法、装置和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109635936A (zh) * 2018-12-29 2019-04-16 杭州国芯科技股份有限公司 一种基于重训练的神经网络剪枝量化方法
WO2019085793A1 (zh) * 2017-11-01 2019-05-09 腾讯科技(深圳)有限公司 图像分类方法、计算机设备及计算机可读存储介质
US20190251441A1 (en) * 2018-02-13 2019-08-15 Adobe Systems Incorporated Reducing architectural complexity of convolutional neural networks via channel pruning
CN110298446A (zh) * 2019-06-28 2019-10-01 济南大学 面向嵌入式系统的深度神经网络压缩和加速方法及系统
CN110728656A (zh) * 2019-09-06 2020-01-24 西安电子科技大学 基于元学习的无参考图像质量数据处理方法、智能终端
US20200082507A1 (en) * 2018-09-10 2020-03-12 University Of Florida Research Foundation, Inc. Neural network evolution using expedited genetic algorithm for medical image denoising
CN111461322A (zh) * 2020-03-13 2020-07-28 中国科学院计算技术研究所 一种深度神经网络模型压缩方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019085793A1 (zh) * 2017-11-01 2019-05-09 腾讯科技(深圳)有限公司 图像分类方法、计算机设备及计算机可读存储介质
US20190251441A1 (en) * 2018-02-13 2019-08-15 Adobe Systems Incorporated Reducing architectural complexity of convolutional neural networks via channel pruning
US20200082507A1 (en) * 2018-09-10 2020-03-12 University Of Florida Research Foundation, Inc. Neural network evolution using expedited genetic algorithm for medical image denoising
CN109635936A (zh) * 2018-12-29 2019-04-16 杭州国芯科技股份有限公司 一种基于重训练的神经网络剪枝量化方法
CN110298446A (zh) * 2019-06-28 2019-10-01 济南大学 面向嵌入式系统的深度神经网络压缩和加速方法及系统
CN110728656A (zh) * 2019-09-06 2020-01-24 西安电子科技大学 基于元学习的无参考图像质量数据处理方法、智能终端
CN111461322A (zh) * 2020-03-13 2020-07-28 中国科学院计算技术研究所 一种深度神经网络模型压缩方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
QINGBEI GUO ET AL: "Compression of Deep Convolutional Neural Networks Using Effective Channel Pruning", 《10TH INTERNATIONAL CONFERENCE,ICIG 2019》, pages 760 - 770 *
靳丽蕾 等: "一种用于卷积神经网络压缩的混合剪枝方法", 《小型微型计算机系统》, vol. 39, no. 12, pages 2596 - 2601 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114764614A (zh) * 2021-01-11 2022-07-19 中国移动通信有限公司研究院 神经网络压缩方法、装置和存储介质
CN114708270A (zh) * 2021-12-15 2022-07-05 华东师范大学 基于知识聚合与解耦蒸馏的语义分割模型压缩系统及压缩方法
CN114708270B (zh) * 2021-12-15 2023-08-08 华东师范大学 基于知识聚合与解耦蒸馏的压缩方法在语义分割中的应用

Also Published As

Publication number Publication date
CN112149805B (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
CN111882040B (zh) 基于通道数量搜索的卷积神经网络压缩方法
US20190279088A1 (en) Training method, apparatus, chip, and system for neural network model
Mo et al. Neural architecture search for keyword spotting
CN114821238A (zh) 基于全局细节补充的卷积神经网络的图像识别方法及系统
CN113283426B (zh) 基于多目标神经网络搜索的嵌入式目标检测模型生成方法
CN111723915A (zh) 深度卷积神经网络的剪枝方法、计算机设备及应用方法
CN112149805A (zh) 基于框架搜索的深度神经网络的加速与压缩方法及系统
WO2018228399A1 (zh) 运算装置和方法
CN114419389A (zh) 一种基于神经网络架构搜索的目标检测模型构建方法
CN115936100A (zh) 用于模式识别基于压缩激励注意力的神经网络剪枝方法
CN113837376A (zh) 基于动态编码卷积核融合的神经网络剪枝方法
Naik et al. Survey on comparative study of pruning mechanism on mobilenetv3 model
CN111723203A (zh) 一种基于终生学习的文本分类方法
CN114742997A (zh) 一种面向图像分割的全卷积神经网络密度峰剪枝方法
CN114298290A (zh) 一种基于自监督学习的神经网络编码方法及编码器
CN114049527A (zh) 基于在线协作与融合的自我知识蒸馏方法与系统
CN113989655A (zh) 基于自动化深度学习的雷达或声呐图像目标检测与分类方法
Zhang et al. Learning to search efficient densenet with layer-wise pruning
CN117527495A (zh) 一种无线通信信号的调制方式识别方法及装置
KR102097724B1 (ko) 영상 인식용 cnn에서의 최악망각현상의 완화 방법 및 장치
CN116257751A (zh) 基于在线协作与特征融合的蒸馏方法与装置
Liu et al. Adapruner: Adaptive channel pruning and effective weights inheritance
US11195094B2 (en) Neural network connection reduction
CN113033653B (zh) 一种边-云协同的深度神经网络模型训练方法
WO2022104271A1 (en) Automatic early-exiting machine learning models

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230721

Address after: Room 1108, 11th Floor, Qingyun Contemporary Building, Building 9, Manting Fangyuan Community, Qingyun Li, Haidian District, Beijing, 100080

Applicant after: Fazheng Internet (Beijing) Technology Co.,Ltd.

Address before: 250022 No. 336, South Xin Zhuang West Road, Shizhong District, Ji'nan, Shandong

Applicant before: University of Jinan

GR01 Patent grant
GR01 Patent grant