CN112270405A - 基于范数的卷积神经网络模型的滤波器剪枝方法和系统 - Google Patents

基于范数的卷积神经网络模型的滤波器剪枝方法和系统 Download PDF

Info

Publication number
CN112270405A
CN112270405A CN202011345927.0A CN202011345927A CN112270405A CN 112270405 A CN112270405 A CN 112270405A CN 202011345927 A CN202011345927 A CN 202011345927A CN 112270405 A CN112270405 A CN 112270405A
Authority
CN
China
Prior art keywords
cluster
filter
pruning
norm
convolutional 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.)
Pending
Application number
CN202011345927.0A
Other languages
English (en)
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.)
Hunan University
Original Assignee
Hunan University
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 Hunan University filed Critical Hunan University
Priority to CN202011345927.0A priority Critical patent/CN112270405A/zh
Publication of CN112270405A publication Critical patent/CN112270405A/zh
Pending legal-status Critical Current

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于范数的卷积神经网络模型的滤波器剪枝方法,包括以下步骤:(1)将卷积神经网络模型的所有滤波器进行可视化,根据可视化输出特征图聚类为多个蔟;(2)根据每个蔟的平均范数确定该蔟的剪枝率;(3)根据每个蔟被剪枝后的模型精度损失大小,判断该蔟能否被剪枝;(4)每个卷积层剪枝后的结构,构成新的卷积神经网络模型。本发明在保证模型精度的情况下尽可能大的对模型进行压缩,在对冗余滤波器进行剪枝的同时保留了提取特定特征且范数较小的滤波器,保证了卷积神经网络模型的功能完整性。

Description

基于范数的卷积神经网络模型的滤波器剪枝方法和系统
技术领域
本发明属于计算机技术领域,更具体地,涉及基于范数的卷积神经网络模型的滤波器剪枝方法和系统。
背景技术
随着互联网技术和人工智能的发展,卷积神经网络(Convolution NeuralNetwork,简称CNN)在计算机视觉领域表现出巨大优势,但因巨大的计算代价和内存占用,很难在资源有限的平台(如移动客户端)上部署。CNN包括一系列卷积层和全连接层,每个卷积层包含了多个滤波器,对部分滤波器在保证网络模型精度的前提下,进行剪枝以实现网络模型压缩,有利于在资源有限的平台上部署。
现有的剪枝方法多以滤波器范数进行排序,用设定的阈值确定冗余的滤波器数量,从而将冗余的滤波器进行剪枝。
然而,现有的剪枝方法存在一些不可忽略的缺陷:由于其仅仅基于所有滤波器的范数排序进行剪枝,而没有从功能上对滤波器进行判断,因此容易将一类范数小而特征大的滤波器剪枝掉,从而破坏了CNN模型的功能完整性,并进而导致CNN模型由于出现精度损失而无法提取部分特征。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于范数的卷积神经网络模型的滤波器剪枝方法和系统,其目的在于,对每个卷积层滤波器聚类为多个蔟,在每个蔟内采用范数排序的剪枝方法,和采用蔟间剪枝方法,解决现有技术中容易将一类范数小而特征大的滤波器剪枝掉,从而破坏卷积神经网络模型的功能完整性,导致卷积神经网络模型精度损失而无法提取部分特征的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于范数的卷积神经网络模型的滤波器剪枝方法,包括以下步骤:
(1)对已经训练好的卷积神经网络模型的每个卷积层的所有滤波器进行可视化处理,得到每个卷积层的每个滤波器的最大激活值,根据最大激活值得到每个卷积层的每个滤波器的输出特征图,利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟,其中s∈[1,卷积神经网络模型中卷积层的总数];
(2)对于每个卷积层的Ms个蔟中的每个蔟而言,获取该蔟的每个滤波器的权值参数,根据权值参数并利用欧几里得范数公式计算每个滤波器的p范数,将该蔟中所有滤波器的p范数取均值以得到该蔟的平均范数,再根据平均范数确定该蔟的剪枝率ps,m,并按照该蔟的剪枝率ps,m在该蔟内进行剪枝,其中m∈[1,Ms];
(3)对每个卷积层而言,将其Ms个蔟按照每个蔟的平均范数进行从小到大的排序,根据卷积神经网络模型剪枝每个蔟后的模型精度损失大小,确定该卷积层中能够被剪枝的所有蔟,并对这些蔟进行剪枝,从而得到剪枝处理后的卷积层。
优选地,步骤(1)包括如下子步骤:
(1-1)获取一张带有随机噪声的图像X;
(1-2)将图像X输入已经训练好的卷积神经网络模型中,并在卷积神经网络模型中进行前向传播,以依次获得每个卷积层的每个滤波器的激活
Figure BDA0002799806120000021
其中i∈[1,卷积层中滤波器的总数];
(1-3)对每个卷积层的每个滤波器,使用反向传播算法计算步骤(1-2)得到的激活
Figure BDA0002799806120000022
的卷积核梯度,并使用得到的卷积核梯度来更新图像X,具体为:
Figure BDA0002799806120000031
其中η为反向传播算法中梯度上升的步长;
(1-4)对更新后的图像X,重复步骤(1-2)和(1-3),直至每个卷积层的每个滤波器都具有最大激活值
Figure BDA0002799806120000032
为止,具体为:
Figure BDA0002799806120000033
(1-5)对每个卷积层的每个滤波器而言,将该滤波器具有最大激活值
Figure BDA0002799806120000034
时的输出图像作为该滤波器输出的特征图
Figure BDA0002799806120000035
利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟。
优选地,步骤(1)中采用的聚类算法是K-means聚类算法。
优选地,对每个卷积层而言,步骤(2)包括如下子步骤:
(2-1)对Ms个蔟中的每个蔟而言,获取该蔟中每个滤波器的所有权值参数,根据该权值参数并利用欧几里得范数公式计算得到第m个蔟的第l个滤波器的p范数||Wm,l||2,具体为:
Figure BDA0002799806120000036
其中wmlj为第m个蔟的第l个滤波器的第j个权值参数,l∈[1,蔟中滤波器的总数],j∈[1,滤波器的权值参数总数];
(2-2)对Ms个蔟中的每个蔟而言,将该蔟中所有滤波器的p范数||Wm,l||2进行求和平均,以得到该蔟的平均范数;
(2-3)对Ms个蔟的平均范数从大到小进行排序,根据排序结果按照从小到大设置每个蔟的剪枝率为ps,m
(2-4)对Ms个蔟中的每个蔟而言,对该蔟中所有滤波器按照p范数||Wm,l||2从小到大的顺序进行剪枝,直至达到每个蔟的剪枝率ps,m时停止剪枝,得到每个蔟更新后的滤波器。
优选地,每个蔟的剪枝率ps,m的范围为0.05≤ps,m≤0.9,且满足ps,m嶨1-ps,m=0.05。
优选地,对每个卷积层而言,步骤(3)包括如下子步骤:
(3-1)设置计数器n=1,t=0;
(3-2)将Ms个蔟按照平均范数从小到大进行排序;
(3-3)获取卷积神经网络模型剪枝第n个蔟后的模型精度accn与剪枝第n个蔟前的模型精度acc0之间的差值,作为当前剪枝后的模型精度损失lossn,即lossn=accn-acc0;判断当前剪枝后的模型精度损失lossn是否大于0,如果是,则可以剪枝该蔟,设置当前可以剪枝的蔟序号c[t]=n,计数器t=t+1,进入步骤(3-5),否则进入步骤(3-4);
(3-4)判断当前剪枝后的模型精度损失lossn的绝对值是否小于预设的模型精度损失阈值,如果是,则可以剪枝该蔟,设置当前可以剪枝的蔟序号c[t]=n,计数器t=t+1,进入步骤(3-5);否则不能剪枝该蔟,进入步骤(3-5);
(3-5)设置计数器n=n+1;
(3-6)判断计数器n是否等于当前卷积层的蔟个数Ms,如果是,则进入步骤(3-7),否则,返回至步骤(3-3);
(3-7)判断计数器t是否大于等于1,如果是,则对步骤(3-2)排序后的Ms个蔟,依次将蔟序号c[t]对应的蔟剪枝掉,得到该卷积层中更新后的滤波器,过程结束;否则表示没有可以剪枝的蔟,过程结束。
优选地,步骤(3-4)中预设的模型精度损失阈值取值范围是[0.1%,0.6%],优选值是0.5%。
根据本发明的另一方面,提供了一种基于范数的卷积神经网络模型的滤波器剪枝系统,包括:
第一模块,用于对已经训练好的卷积神经网络模型的所有滤波器进行可视化处理,得到每个卷积层的每个滤波器的最大激活值,根据最大激活值得到每个卷积层的每个滤波器的输出特征图,利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟,其中s∈[1,卷积神经网络模型中卷积层的总数];
第二模块,用于对每个卷积层的Ms个蔟中的每个蔟而言,获取该蔟的每个滤波器的权值参数,根据权值参数并利用欧几里得范数公式计算每个滤波器的p范数,将该蔟中所有滤波器的p范数取均值以得到该蔟的平均范数,再根据平均范数确定该蔟的剪枝率ps,m,并按照该蔟的剪枝率ps,m在该蔟内进行剪枝,其中m∈[1,Ms];
第三模块,用于对每个卷积层而言,将其Ms个蔟按照每个蔟的平均范数进行从小到大的排序,根据卷积神经网络模型剪枝每个蔟后的模型精度损失大小,确定该卷积层中能够被剪枝的所有蔟,并对这些蔟进行剪枝,从而得到剪枝处理后的卷积层。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)本发明采用了步骤(1)中对每个卷积层的滤波器进行可视化处理,并根据可视化结果进行聚类,将每个卷积层的滤波器聚类为多个蔟,对滤波器进行了分类;结合步骤(2)中对每个蔟间进行范数排序,以此确定每个蔟的剪枝率,再在蔟内根据滤波器的范数排序确定剪枝的滤波器,这样即使平均范数最小的蔟,在对冗余滤波器进行剪枝的同时保留了提取特定特征的滤波器,保证了卷积神经网络模型的功能完整性;
(2)本发明采用了步骤(3)中剪枝每个蔟后的网络模型精度评估比较方法,判断能否剪枝整个蔟,在保证模型精度的情况下尽可能大的对模型进行压缩;
(3)本发明在性能无明显降低的前提下,使整个卷积神经网络模型得到合理的结构化剪枝压缩优化,不仅能够大大降低参数存储空间,还具备了巨大的运算优化潜力,这将节省巨大的硬件平台的存储资源,能够让卷积神经网络模型在资源受限的平台上更便捷地部署和运行。
附图说明
图1是本发明的方法流程图;
图2是本发明的方法过程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,一种基于范数的卷积神经网络模型的滤波器剪枝方法,包括以下步骤:
(1)对已经训练好的卷积神经网络模型的每个卷积层的所有滤波器进行可视化处理,得到每个卷积层的每个滤波器的最大激活值,根据最大激活值得到每个卷积层的每个滤波器的输出特征图,利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟,其中s∈[1,卷积神经网络模型中卷积层的总数];
具体而言,本步骤包括如下子步骤:
(1-1)获取一张带有随机噪声的图像X;
(1-2)将图像X输入已经训练好的卷积神经网络模型中,并在卷积神经网络模型中进行前向传播,以依次获得每个卷积层的每个滤波器的激活
Figure BDA0002799806120000061
其中i∈[1,卷积层中滤波器的总数];
(1-3)对每个卷积层的每个滤波器,使用反向传播算法计算步骤(1-2)得到的激活
Figure BDA0002799806120000062
的卷积核梯度,并使用得到的卷积核梯度来更新图像X,具体为:
Figure BDA0002799806120000071
其中η为反向传播算法中梯度上升的步长;
(1-4)对更新后的图像X,重复步骤(1-2)和(1-3),直至每个卷积层的每个滤波器都具有最大激活值
Figure BDA0002799806120000072
为止,具体为:
Figure BDA0002799806120000073
(1-5)对每个卷积层的每个滤波器而言,将该滤波器具有最大激活值
Figure BDA0002799806120000074
时的输出图像作为该滤波器输出的特征图
Figure BDA0002799806120000075
利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟;
具体而言,本步骤中采用的聚类算法是K-means聚类算法。
(2)对于每个卷积层的Ms个蔟中的每个蔟而言,获取该蔟的每个滤波器的权值参数,根据权值参数并利用欧几里得范数公式计算每个滤波器的p范数,将该蔟中所有滤波器的p范数取均值以得到该蔟的平均范数,再根据平均范数确定该蔟的剪枝率ps,m,并按照该蔟的剪枝率ps,m在该蔟内进行剪枝,如图2所示,其中m∈[1,Ms],0.05≤ps,m≤0.9;
具体而言,对每个卷积层而言,本步骤包括如下子步骤:
(2-1)对Ms个蔟中的每个蔟而言,获取该蔟中每个滤波器的所有权值参数,根据该权值参数并利用欧几里得范数公式计算得到第m个蔟的第l个滤波器的p范数||Wm,l||2,具体为:
Figure BDA0002799806120000076
其中wmlj为第m个蔟的第l个滤波器的第j个权值参数,l∈[1,蔟中滤波器的总数],j∈[1,滤波器的权值参数总数];
(2-2)对Ms个蔟中的每个蔟而言,将该蔟中所有滤波器的p范数||Wm,l||2进行求和平均,以得到该蔟的平均范数;
(2-3)对Ms个蔟的平均范数从大到小进行排序,根据排序结果按照从小到大设置每个蔟的剪枝率为ps,m
蔟的平均范数越大,说明相应蔟的重要性越高,设置的剪枝率就越低;
优选地,p1=0.05,ps,m嶨1-ps,m=0.05;
(2-4)对Ms个蔟中的每个蔟而言,对该蔟中所有滤波器按照p范数||Wm,l||2从小到大的顺序进行剪枝,直至达到每个蔟的剪枝率ps,m时停止剪枝,得到每个蔟更新后的滤波器;
步骤(1)对所有滤波器聚类为多个蔟,步骤(2)中对每个蔟按平均范数进行排序后,在每个蔟内按照设置的剪枝率进行剪枝,这样即使平均范数最小的蔟,仍保留部分滤波器,保留了每类特征的滤波器,保证了卷积神经网络模型的功能完整性。
(3)对每个卷积层而言,将其Ms个蔟按照每个蔟的平均范数进行从小到大的排序,根据卷积神经网络模型剪枝每个蔟后的模型精度损失大小,确定该卷积层中能够被剪枝的所有蔟,并对这些蔟进行剪枝,从而得到剪枝处理后的卷积层;
具体而言,对每个卷积层而言,本步骤包括如下子步骤:
(3-1)设置计数器n=1,t=0;
(3-2)将Ms个蔟按照平均范数从小到大进行排序;
(3-3)获取卷积神经网络模型剪枝第n个蔟后的模型精度accn与剪枝第n个蔟前的模型精度acc0之间的差值,作为当前剪枝后的模型精度损失lossn,即lossn=accn-acc0;判断当前剪枝后的模型精度损失lossn是否大于0,如果是,则说明剪枝该蔟后模型精度上升,可以剪枝该蔟,设置当前可以剪枝的蔟序号c[t]=n,计数器t=t+1,进入步骤(3-5),否则进入步骤(3-4);
(3-4)判断当前剪枝后的模型精度损失lossn的绝对值是否小于预设的模型精度损失阈值,如果是,则说明本次剪枝后对模型精度损失的影响较小,可以剪枝该蔟,设置当前可以剪枝的蔟序号c[t]=n,计数器t=t+1,进入步骤(3-5);否则说明该蔟的影响较大,不能剪枝该蔟,进入步骤(3-5);
在本步骤中,预设的模型精度损失阈值取值范围是[0.1%,0.6%],优选值是0.5%。
(3-5)设置计数器n=n+1;
(3-6)判断计数器n是否等于当前卷积层的蔟个数Ms,如果是,则进入步骤(3-7),否则,返回至步骤(3-3);
(3-7)判断计数器t是否大于等于1,如果是,则对步骤(3-2)排序后的Ms个蔟,依次将蔟序号c[t]对应的蔟剪枝掉,如图2所示,得到该卷积层中更新后的滤波器,过程结束;否则表示没有可以剪枝的蔟,过程结束。
在步骤(3)中,评估卷积神经网络模型剪枝每个蔟后的模型精度损失,模型精度上升,说明剪枝后对模型更有利;模型精度损失在一定范围内,说明该蔟对整个卷积神经网络模型的贡献度比较小,可以剪枝该蔟;模型精度损失较大,说明该蔟对整个卷积神经网络模型的贡献度较大,剪枝后的模型损失较大,不能对该蔟进行剪枝。通过剪枝评估处理,在保证模型精度的情况下尽可能大的对模型进行压缩。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,包括以下步骤:
(1)对已经训练好的卷积神经网络模型的每个卷积层的所有滤波器进行可视化处理,得到每个卷积层的每个滤波器的最大激活值,根据最大激活值得到每个卷积层的每个滤波器的输出特征图,利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟,其中s∈[1,卷积神经网络模型中卷积层的总数]。
(2)对于每个卷积层的Ms个蔟中的每个蔟而言,获取该蔟的每个滤波器的权值参数,根据权值参数并利用欧几里得范数公式计算每个滤波器的p范数,将该蔟中所有滤波器的p范数取均值以得到该蔟的平均范数,再根据平均范数确定该蔟的剪枝率ps,m,并按照该蔟的剪枝率ps,m在该蔟内进行剪枝,其中m∈[1,Ms]。
(3)对每个卷积层而言,将其Ms个蔟按照每个蔟的平均范数进行从小到大的排序,根据卷积神经网络模型剪枝每个蔟后的模型精度损失大小,确定该卷积层中能够被剪枝的所有蔟,并对这些蔟进行剪枝,从而得到剪枝处理后的卷积层。
2.如权利要求1所述的基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,步骤(1)包括如下子步骤:
(1-1)获取一张带有随机噪声的图像X;
(1-2)将图像X输入已经训练好的卷积神经网络模型中,并在卷积神经网络模型中进行前向传播,以依次获得每个卷积层的每个滤波器的激活
Figure FDA0002799806110000011
其中i∈[1,卷积层中滤波器的总数];
(1-3)对每个卷积层的每个滤波器,使用反向传播算法计算步骤(1-2)得到的激活
Figure FDA0002799806110000012
的卷积核梯度,并使用得到的卷积核梯度来更新图像X,具体为:
Figure FDA0002799806110000021
其中η为反向传播算法中梯度上升的步长;
(1-4)对更新后的图像X,重复步骤(1-2)和(1-3),直至每个卷积层的每个滤波器都具有最大激活值
Figure FDA0002799806110000022
为止,具体为:
Figure FDA0002799806110000023
(1-5)对每个卷积层的每个滤波器而言,将该滤波器具有最大激活值
Figure FDA0002799806110000024
时的输出图像作为该滤波器输出的特征图
Figure FDA0002799806110000025
利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟。
3.如权利要求1或2所述的基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,步骤(1)中采用的聚类算法是K-means聚类算法。
4.如权利要求1至3中任意一项所述的基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,对每个卷积层而言,步骤(2)包括如下子步骤:
(2-1)对Ms个蔟中的每个蔟而言,获取该蔟中每个滤波器的所有权值参数,根据该权值参数并利用欧几里得范数公式计算得到第m个蔟的第l个滤波器的p范数||Wm,l||2,具体为:
Figure FDA0002799806110000026
其中wmlj为第m个蔟的第l个滤波器的第j个权值参数,l∈[1,蔟中滤波器的总数],j∈[1,滤波器的权值参数总数];
(2-2)对Ms个蔟中的每个蔟而言,将该蔟中所有滤波器的p范数||Wm,l||2进行求和平均,以得到该蔟的平均范数;
(2-3)对Ms个蔟的平均范数从大到小进行排序,根据排序结果按照从小到大设置每个蔟的剪枝率为ps,m
(2-4)对Ms个蔟中的每个蔟而言,对该蔟中所有滤波器按照p范数||Wm,l||2从小到大的顺序进行剪枝,直至达到每个蔟的剪枝率ps,m时停止剪枝,得到每个蔟更新后的滤波器。
5.如权利要求1至4中任意一项所述的基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,每个蔟的剪枝率ps,m的范围为0.05≤ps,m≤0.9,且满足ps,m+1-ps,m=0.05。
6.如权利要求1所述的基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,对每个卷积层而言,步骤(3)包括如下子步骤:
(3-1)设置计数器n=1,t=0;
(3-2)将Ms个蔟按照平均范数从小到大进行排序;
(3-3)获取卷积神经网络模型剪枝第n个蔟后的模型精度accn与剪枝第n个蔟前的模型精度acc0之间的差值,作为当前剪枝后的模型精度损失lossn,即lossn=accn-acc0;判断当前剪枝后的模型精度损失lossn是否大于0,如果是,则可以剪枝该蔟,设置当前可以剪枝的蔟序号c[t]=n,计数器t=t+1,进入步骤(3-5),否则进入步骤(3-4)。
(3-4)判断当前剪枝后的模型精度损失lossn的绝对值是否小于预设的模型精度损失阈值,如果是,则可以剪枝该蔟,设置当前可以剪枝的蔟序号c[t]=n,计数器t=t+1,进入步骤(3-5);否则不能剪枝该蔟,进入步骤(3-5);
(3-5)设置计数器n=n+1;
(3-6)判断计数器n是否等于当前卷积层的蔟个数Ms,如果是,则进入步骤(3-7),否则,返回至步骤(3-3);
(3-7)判断计数器t是否大于等于1,如果是,则对步骤(3-2)排序后的Ms个蔟,依次将蔟序号c[t]对应的蔟剪枝掉,得到该卷积层中更新后的滤波器,过程结束;否则表示没有可以剪枝的蔟,过程结束。
7.如权利要求6所述的基于范数的卷积神经网络模型的滤波器剪枝方法,其特征在于,步骤(3-4)中预设的模型精度损失阈值取值范围是[0.1%,0.6%],优选值是0.5%。
8.一种基于范数的卷积神经网络模型的滤波器剪枝系统,其特征在于,包括:
第一模块,用于对已经训练好的卷积神经网络模型的所有滤波器进行可视化处理,得到每个卷积层的每个滤波器的最大激活值,根据最大激活值得到每个卷积层的每个滤波器的输出特征图,利用输出特征图采用聚类算法对每个卷积层的所有滤波器进行聚类,以得到第s个卷积层的Ms个蔟,其中s∈[1,卷积神经网络模型中卷积层的总数];
第二模块,用于对每个卷积层的Ms个蔟中的每个蔟而言,获取该蔟的每个滤波器的权值参数,根据权值参数并利用欧几里得范数公式计算每个滤波器的p范数,将该蔟中所有滤波器的p范数取均值以得到该蔟的平均范数,再根据平均范数确定该蔟的剪枝率ps,m,并按照该蔟的剪枝率ps,m在该蔟内进行剪枝,其中m∈[1,Ms];
第三模块,用于对每个卷积层而言,将其Ms个蔟按照每个蔟的平均范数进行从小到大的排序,根据卷积神经网络模型剪枝每个蔟后的模型精度损失大小,确定该卷积层中能够被剪枝的所有蔟,并对这些蔟进行剪枝,从而得到剪枝处理后的卷积层。
CN202011345927.0A 2020-11-26 2020-11-26 基于范数的卷积神经网络模型的滤波器剪枝方法和系统 Pending CN112270405A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011345927.0A CN112270405A (zh) 2020-11-26 2020-11-26 基于范数的卷积神经网络模型的滤波器剪枝方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011345927.0A CN112270405A (zh) 2020-11-26 2020-11-26 基于范数的卷积神经网络模型的滤波器剪枝方法和系统

Publications (1)

Publication Number Publication Date
CN112270405A true CN112270405A (zh) 2021-01-26

Family

ID=74339621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011345927.0A Pending CN112270405A (zh) 2020-11-26 2020-11-26 基于范数的卷积神经网络模型的滤波器剪枝方法和系统

Country Status (1)

Country Link
CN (1) CN112270405A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113283473A (zh) * 2021-04-20 2021-08-20 中国海洋大学 一种基于cnn特征映射剪枝的快速水下目标识别方法
CN113516638A (zh) * 2021-06-25 2021-10-19 中南大学 一种神经网络内部特征重要性可视化分析及特征迁移方法
CN113657421A (zh) * 2021-06-17 2021-11-16 中国科学院自动化研究所 卷积神经网络压缩方法和装置、图像分类方法和装置
CN113743591A (zh) * 2021-09-14 2021-12-03 北京邮电大学 一种自动化剪枝卷积神经网络的方法及其系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113283473A (zh) * 2021-04-20 2021-08-20 中国海洋大学 一种基于cnn特征映射剪枝的快速水下目标识别方法
CN113283473B (zh) * 2021-04-20 2023-10-13 中国海洋大学 一种基于cnn特征映射剪枝的快速水下目标识别方法
CN113657421A (zh) * 2021-06-17 2021-11-16 中国科学院自动化研究所 卷积神经网络压缩方法和装置、图像分类方法和装置
CN113657421B (zh) * 2021-06-17 2024-05-28 中国科学院自动化研究所 卷积神经网络压缩方法和装置、图像分类方法和装置
CN113516638A (zh) * 2021-06-25 2021-10-19 中南大学 一种神经网络内部特征重要性可视化分析及特征迁移方法
CN113743591A (zh) * 2021-09-14 2021-12-03 北京邮电大学 一种自动化剪枝卷积神经网络的方法及其系统
CN113743591B (zh) * 2021-09-14 2023-12-26 北京邮电大学 一种自动化剪枝卷积神经网络的方法及其系统

Similar Documents

Publication Publication Date Title
CN112270405A (zh) 基于范数的卷积神经网络模型的滤波器剪枝方法和系统
CN108764471B (zh) 基于特征冗余分析的神经网络跨层剪枝方法
CN109615014B (zh) 一种基于kl散度优化的3d物体数据分类系统与方法
CN109272500B (zh) 基于自适应卷积神经网络的织物分类方法
CN106991047B (zh) 一种用于对面向对象软件缺陷进行预测的方法及系统
CN111242180B (zh) 一种基于轻量化卷积神经网络的图像识别方法及系统
CN112685504B (zh) 一种面向生产过程的分布式迁移图学习方法
CN113283473B (zh) 一种基于cnn特征映射剪枝的快速水下目标识别方法
CN113657421B (zh) 卷积神经网络压缩方法和装置、图像分类方法和装置
CN108280236A (zh) 一种基于LargeVis的随机森林可视化数据分析方法
CN115035418A (zh) 一种基于改进DeepLabV3+网络的遥感图像语义分割方法及系统
CN113822419B (zh) 一种基于结构信息的自监督图表示学习运行方法
CN112288087A (zh) 一种神经网络剪枝方法、装置、电子设备及存储介质
Yue et al. Face recognition based on histogram equalization and convolution neural network
CN111523483A (zh) 中餐菜品图像识别方法及装置
CN113554084A (zh) 基于剪枝和轻量卷积的车辆再辨识模型压缩方法及系统
CN110991554B (zh) 一种基于改进pca的深度网络图像分类方法
CN115049941A (zh) 一种改进的ShuffleNet卷积神经网络及其遥感图像的分类方法
CN115908833A (zh) 一种基于改进YOLOv3的轻量级垃圾检测方法
CN108960326B (zh) 一种基于深度学习框架的点云快速分割方法及其系统
CN114417095A (zh) 一种数据集划分方法及装置
CN112132207A (zh) 基于多分支特征映射目标检测神经网络构建方法
CN111582442A (zh) 一种基于优化深度神经网络模型的图像识别方法
CN111062418A (zh) 一种基于最小生成树的无参数化聚类算法及系统
CN116071331A (zh) 一种基于改进ssd算法的工件表面缺陷检测方法

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Li Kenli

Inventor after: Ding Haotao

Inventor after: Liu Chubo

Inventor after: Xiao Guoqing

Inventor after: Yang Wangdong

Inventor after: Zhou Xu

Inventor after: Tang Zhuo

Inventor after: Li Keqin

Inventor before: Liu Chubo

Inventor before: Ding Haotao

Inventor before: Li Kenli

Inventor before: Xiao Guoqing

Inventor before: Yang Wangdong

Inventor before: Zhou Xu

Inventor before: Tang Zhuo

Inventor before: Li Keqin

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210126