CN110598731B - 一种基于结构化剪枝的高效图像分类方法 - Google Patents

一种基于结构化剪枝的高效图像分类方法 Download PDF

Info

Publication number
CN110598731B
CN110598731B CN201910701012.XA CN201910701012A CN110598731B CN 110598731 B CN110598731 B CN 110598731B CN 201910701012 A CN201910701012 A CN 201910701012A CN 110598731 B CN110598731 B CN 110598731B
Authority
CN
China
Prior art keywords
weight
model
sparse
regularization
pruning
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.)
Active
Application number
CN201910701012.XA
Other languages
English (en)
Other versions
CN110598731A (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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201910701012.XA priority Critical patent/CN110598731B/zh
Publication of CN110598731A publication Critical patent/CN110598731A/zh
Priority to US16/945,626 priority patent/US11301727B2/en
Application granted granted Critical
Publication of CN110598731B publication Critical patent/CN110598731B/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/2163Partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • 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/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4023Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/513Sparse representations

Landscapes

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

Abstract

本发明公开了一种基于结构化剪枝的高效图像分类方法,其结合基于增量正则化的空间剪枝方法,包括图像数据预处理、图像送入神经网络、网络模型剪枝及重训练、新图像类别预测及分类等步骤。本发明采用一种结构化剪枝的方法对原始网络模型中不重要的权重参数进行修剪,以减少网络模型在进行图像分类时产生的不必要计算量和内存消耗,达到简化图像分类器的效果,最后,利用稀疏后的网络模型对新的图像进行类别的预测与分类。本发明提出的简化方法相比原始网络在图像分类算法中的分类效率提升了近2倍,同时内存消耗减少约30%,并获得了更好的分类效果。

Description

一种基于结构化剪枝的高效图像分类方法
本发明涉及图像处理、计算机视觉领域,特别涉及一种基于结构化剪枝的高效图像分类方法。
背景技术
近年来,深度学习通过分层式结构的多层信息处理来进行非监督的特征学习和图像分类,模拟人脑学习和分析的能力,形成一个神经网络结构,从而像人脑一样对外界输入事物进行分析和理解,相对于通过浅层学习获得图像底层特征的传统图像分类方法,深度学习利用设定好的网络结构,完全从训练数据中学习图像的层级结构性特征,能够提取更加接近图像高级语义的抽象特征,因此在图像分类上的表现远远超过传统方法。
深度卷积神经网络(Convolutional Neural Network,CNN)在特征表示上具有极大的优越性,模型提取的特征随着网络深度的增加越来越抽象,越来越越能表现图像主题语义。所以,CNN通过对图像交替进行卷积核池化操作,逐渐提取图像的高层特征,再使用神经网络对特征分类,以此来实现对图像进行分类的功能,在图像分类领域表现出了极大的优势。然而,随着对图像分类性能需求的增加,基于深度卷积神经网络的图像分类算法成为高性能图像分类体系结构设计的基础。但CNN通常会产生大量的计算和存储消耗,特别是利用大量数据学习得到的大规模网络在进行图像分类时效率较低,同时会产生较大的内存消耗,占用过多的计算和存储资源,大大阻碍了CNN在图像分类算法中的应用。
发明内容
为了解决上述问题,本发明提供了一种基于结构化剪枝的高效图像分类方法,通过对网络模型中不重要的权重参数进行修剪,来减少网络模型在进行图像分类时产生的不必要的计算量和存储消耗,使得稀疏后的网络模型可以更加高效的对图像进行分类,并获得更好的分类效果,同时产生较小的内存消耗,从而有效节省计算和存储资源,使CNN可以更好地应用到图像分类算法中。
本发明的目的可以通过以下的技术方法实现:一种基于结构化剪枝的高效图像分类方法,具体包括以下步骤:
(1)获取图像的训练集和测试集,对训练集和测试集中的图像进行类别标注;
(2)对所有训练集和测试集中的图像进行预处理操作:
(3)采用预训练好的神经网络模型作为原始的图像分类器,然后将步骤(2)预处理后的图像批量送入神经网络,进行迭代训练,在训练的过程中对原始网络模型进行修剪,剪枝主要包含以下步骤:
(3.1)对于模型的各个卷积层,对四维权值张量WN*C*H*W进行建模,其中N表示卷积核的个数,C表示卷积核的通道数,H、W分别表示卷积核的高和卷积核的宽;
(3.2)根据H和W的空间维度划分卷积核的权重组,将某一卷积层内所有卷积核的所有通道中相同空间位置的权重作为一个独立的权重组g;
(3.3)根据用户对模型设定的压缩或加速比例,确定网络模型各层所需设定的目标稀疏率,并对所有权重组设置统一的正则化上限target_reg,为每个独立的权重组分配正则化因子λg并将所有的λg初始化为0;
(3.4)为网络权重矩阵中的每个权重组设定稀疏的重要性标准,并根据该标准对各个权重组进行升序排序,得到各权重组的重要性排名;
(3.5)根据各个权重组g的相对重要性不同,逐步将不同的正则化增量Δλg分配给不同的权重组,并不断迭代更新各个权重组的正则化因子λg,直到某个权重组的正则化因子λg达到预先设定的正则化上限target_reg时,该权重组的权重将被永久删除;
(3.6)通过空间正则化的方法对空间剪枝所得到的不规则形状的稀疏卷积核进行重塑,使其变为规则的稀疏卷积核;
(3.7)对输入特征图中与规则稀疏卷积核中已删除权重相同方向上的像素进行裁剪,保证输出特征图的大小不变;
(3.8)当某一层的稀疏度达到预先指定的稀疏率时,该层自动停止正则化剪枝,直到所有层达到其预先设定的稀疏率时,结束剪枝;
(4)对剪枝后的网络模型进行重训练,固定已经删除的权重不再更新,而其他参数进行网络的迭代训练,当再训练模型准确率不再上升时,停止重训练,输出稀疏网络模型;
(5)将稀疏网络模型作为新的图像分类器,然后通过对测试集类别标签的预测进行新图像的分类。
进一步的,所述步骤(2)中,预处理操作具体为,首先将所有图像的尺寸进行统一,通过resize操作使其变换为224×224,然后进行图像的去均值,对于待训练的每一张图片特征都减去全部训练集图像的特征均值,最后通过归一化操作将图像的各个特征尺度控制在相同的范围内。
进一步的,所述步骤(3.2)的具体流程为,根据四维权值张量中卷积核的高H和宽W两个维度对权重组进行划分,将所有卷积核的所有通道中同一空间位置的权重(N,C,:,:)组合成一个独立的权重组,因此共有H*W个权重组。
进一步的,所述步骤(3.3)中确定网络模型各层所需设定的目标稀疏率具体为,在设定模型的参数压缩比例时,首先计算模型中各个参数层的参数量N*C*H*W以及模型的总参数量P,得到模型各层参数量占总参数量的比例αl,然后利用设定的参数压缩比计算该模型需要减少的参数量P′,并通过αl*P′得到各参数层所需减少的参数量Pl′,从而得到网络模型各层所需设定的目标稀疏率,同理,在指定模型的加速比例时,先计算模型各个参数层的浮点操作次数FLOPs以及该模型总的FLOPs,然后根据指定的加速比例来确定该模型需要减少的FLOPs,并通过计算得到各层所需减少的FLOPs,从而确定各层的目标稀疏率。
进一步的,所述步骤(3.4)中稀疏的重要性标准采用Ln-norm的平均排名,在每一次迭代中,首先对各个权重组按照Ln-norm进行升序排序,然后利用函数
Figure GDA0003051984240000031
对前N次迭代获得的排名进行平均,并对平均后的排名
Figure GDA0003051984240000038
再次排序,得到各个权重组最终的重要性排名r。
进一步的,所述步骤(3.5)中正则化增量Δλg的具体分配方式为,根据重要性排名r确定对应权重组的正则化增量,通过连续中心对称函数
Figure GDA0003051984240000032
为不同的权重组分配相应的正则化增量Δλg(r),其中,A和u是需要手动设置的超参数,分别代表每一次权重组排名中排名最小的权重组获得的惩罚以及每一次权重组排名中刚好位于临界排名RNg的权重组获得的惩罚占A的比重,α和Nc为已知量,α代表该函数曲线的弯曲程度,可以通过公式
Figure GDA0003051984240000033
得到,Nc代表该函数的对称中心,可以通过公式
Figure GDA0003051984240000034
得到。
进一步的,所述步骤(3.5)中正则化因子λg的具体更新方式为,在每一次迭代中,通过将各权重组的正则化增量Δλg与对应的正则化因子相加的方式逐步更新该权重组的正则化因子λg,得到各个权重组新的正则化因子
Figure GDA0003051984240000035
Figure GDA0003051984240000036
达到预先设定的正则化上限target_reg时,对应参数组将被删除,得到稀疏后的模型。
进一步的,所述步骤(3.6)中空间正则化的方法具体为,对于稀疏模型中产生的不规则形状卷积核,通过寻找与其具有最小差异的规则形状的稀疏卷积核对不规则形状卷积核进行重塑,用函数
Figure GDA0003051984240000037
来定义两者的差异,其中,S表示权重组的个数,即S=H×W,M(s)表示不规则形状稀疏卷积核空间位置s的mask值,m(i)(s)表示规则形状卷积核中第i个子矩形在空间位置s的mask值,通过最小化V(i)即可找到对应规则形状的稀疏卷积核。
进一步的,所述步骤(3.7)具体为,将规则的稀疏卷积核在空间维度上分为上、下、左、右四个方向,同样的,将输入特征图在空间维度上分为上、下、左、右四个方向,然后根据规则稀疏卷积核中被删除权重在空间维度上的方向,对输入特征图中与其对应方向上的像素删除,使得输出特征图的大小在卷积核大小改变的情况下不发生变化。
进一步的,所述步骤(4)的具体流程为,对于稀疏后的网络,通过mask对已删除权重组中的权重进行标注,同时对反向传播过程中相应权重组的各权重梯度进行mask标注,确保在整个重训练过程中被删除权重组中的权重不再更新,而对其余权重组中的权重进行迭代更新,并在训练过程中对模型的准确率进行监测,当再训练的模型准确率不再上升时,停止重训练,输出最高准确率的稀疏网络模型。
与现有技术相比,本发明具有如下优点:
(1)本发明提供的图像分类方法属于一种基于深度卷积神经网络的图像分类方法,主要通过图像空间信息减少训练参数数量来提高模型训练,并利用设定好的网络结构,从训练数据中学习图像的层级结构性特征,能够提取更加接近图像高级语义的抽象特征,相对于传统的图像分类方法可以进一步提高图像分类的准确度,具有更好的分类效果;
(2)本发明在进行简化图像分类器时,通过去除网络模型中冗余的权重参数达到降低图像分类算法中产生过多计算量与内存消耗的效果,此方法可以应用于绝大多数深度神经网络模型的修剪上,从而有效改善图像分类器的空间复杂度,以获得更好的图像分类效果;
(3)本发明在剪枝过程中为神经网络某一卷积层中不同的权重组分配不同的正则化因子,根据各个权重组之间的相对重要性不同,逐步将不同的正则化增量分配给不同的权重组,然后不断更新各个权重组的正则化因子。只有权重组的正则化因子达到指定的正则化上限时,权重才会被永久删除,从而更准确的修剪网络中不重要的权重;
(4)本发明在剪枝部分提出的空间正则化方法,可以将空间剪枝产生的不规则形状的稀疏卷积核重塑为规则形状的稀疏卷积核,使稀疏后的网络模型能够直接应用现成的深度学习库进行加速,可以更加显著的提高图像分类的效率;
(5)本发明在剪枝部分对于剪枝基本单元的选取,除了选取卷积核的空间维度,也可以基于张量展开,选取二维权值矩阵的参数行或参数列,具有更多的选择空间,也具有较大的灵活性。
附图说明
图1为本发明实施例中整体方法流程图;
图2为本发明实施例中模型稀疏化流程图;
图3为本发明实施例中卷积核空间剪枝图;
图4为本发明实施例中不规则形状的稀疏卷积核重塑图;
图5为本发明实施例中输入特征图裁剪图。
具体实施方式
结合下面的实施例子,对本发明进行进一步的详细说明。
本发明提供一种基于结构化剪枝的高效图像分类方法,其整体流程如图1所示。
(1)准备训练的数据集、网络结构配置文件、训练过程配置文件等,其中训练的数据集采用ImageNet-2012数据集中约120万张、共1000类图像,测试用的数据集采用不同于训练数据集的新图像数据,共5000张、1000类图像,并准备相应数据集的标签文件,其中每个图像都被标记为1000类中的某一个类别,预训练模型选用VGG-16,所使用的网络结构配置等文件均为VGG-16原模型所使用的文件(VGG-16下载链接:https://cloud6.pkuml.org/f/2a41fd0cbdc34d6d99d5/)。
(2)对所有输入图像进行预处理操作,首先将所有图像的尺寸进行统一,通过resize操作使其变换为224×224,然后进行图像的去均值,对于待训练的每一张图片特征都减去全部训练集图像的特征均值,最后通过归一化操作将图像的各个特征尺度控制在相同的范围内,并将这些原始图像数据转换为caffe所支持的数据格式;
(3)采用预训练好的神经网络模型(VGG-16)作为原始的图像分类器,然后将步骤(2)预处理后的图像批量送入神经网络,通过迭代训练的方式来学习各个类别的外部特征,并在训练的过程中对原始网络模型进行修剪,去除对分类准确率不产生影响的权重,减少网络模型的计算量和参数量,简化图像分类器,对于网络模型的剪枝部分,其流程图如图2所示,主要包含以下步骤:
(3.1)对于模型的各个卷积层,对四维张量WN*C*H*W进行建模。其中N表示卷积核的个数,C表示卷积核的通道数,H、W分别表示卷积核的高和宽,然后根据H和W的维度划分卷积核的权重组,将某一卷积层内所有卷积核的所有通道中同一空间位置的权重(N,C,:,:)组合成一个独立的权重组g,如图3所示,颜色加深的位置为某个权重组的示例,对于一个3×3的卷积核,可以在其空间维度上划分为9个权重组,每个权重组包含N*C个权重参数。
(3.2)根据模型指定要压缩或加速的比例,确定网络模型各层所需设定的目标稀疏率。在本实验中,经指定2倍加速比例的情况下,计算并设置模型各层的目标稀疏率为0.35。然后对所有权重组设置统一的正则化上限target_reg,为每个独立的权重组分配正则化因子λg并将所有的λg初始化为0。
(3.3)对剪枝算法中的超参数进行设置,主要包括3个超参数,即连续中心对称函数中的A、u以及各权重组的正则化上限target_reg。A和u的设置反映了剪枝的“精细”程度。一方面,A越小表示剪枝越“精细”,剪枝过程越平稳,从而给网络更多自我调整、修复的时间,最终效果也会更好。但另一方面,A又控制着剪枝的总时间,A越小使得参数组的正则化慢慢增加,所以整个剪枝过程的时间就会增加。u的设置类似于A。通常情况下,u是固定的,A设置为原权重衰减的一半,target_reg设置为le4*A。在本实验中,为了保证剪枝的效果,又不至于剪枝时间太长,u固定为0.25,A设置为0.00025,target_reg设置为2.5。
(3.4)根据网络权重矩阵中各个权重组的相对重要性确定其删除的先后顺序。在本实验中,采用L1-norm作为衡量权重重要性的准则,在每一次迭代中,首先按照L1-norm进行升序排序,得到每个权重组的排名,然后将前N次迭代的排名进行平均,即
Figure GDA0003051984240000061
最后,对平均排名
Figure GDA0003051984240000062
再次排序,得到各权重组的重要性排名r。另外,此方法可以很容易的推广到L2-norm、泰勒展开等其他重要性准则。
(3.5)一般来说,不重要的权重应该受到更多惩罚,根据(3.4)中得到的各个权重组的重要性排名r,并通过连续中心对称函数
Figure GDA0003051984240000063
为相应的权重组分配正则化增量Δλg,即该函数的自变量为r,因变量为Δλg。可以看出,排名越大的权重组的重要性越大,则相应的惩罚越少,所以该权重组分配到的正则化增量越小。反之,排名越小的权重组的重要性越小,则相应的惩罚越大,分配到的正则化增量就越大。然后对各权重组的正则化因子λg进行更新,在每一次迭代中,通过将各权重组的正则化增量Δλg与对应的正则化因子相加的方式逐步更新该权重组的正则化因子λg,得到各个权重组新的正则化因子
Figure GDA0003051984240000064
Figure GDA0003051984240000065
达到预先设定的正则化上限target_reg时,对应参数组将被删除,得到稀疏后的模型。(3.6)采用空间正则化的方法对稀疏模型中产生的不规则形状稀疏卷积核进行重塑,通过函数
Figure GDA0003051984240000066
寻找与不规则形状稀疏卷积核具有最小差异的规则形状的稀疏卷积核,其中,S表示权重组的个数,即S=H×W,如图4所示,对于5×5的卷积核,可以将其在空间位置上划分为25个权重组,左图中颜色加深的位置表示空间剪枝留下的权重,空白位置表示被剪掉的权重,M(s)表示不规则形状稀疏卷积核空间位置s的mask值,m(i)(s)表示规则形状的卷积核中第i个子矩形在空间位置s的mask值。在本实验中,将不规则形状稀疏卷积核中被剪枝位置的mask设置为0,即M(s)=0,未被剪枝位置的mask设置为1,即即M(s)=1,而对于右图中的规则形状卷积核,假设共有I个子矩形位于该卷积核内部,则对于对于5×5的卷积核共有225个子矩形,即I=225,将规则形状卷积核中第i个子矩形的所有空间位置s的mask值设置为1,而将大卷积核中子矩形之外的空间位置的mask设置为0,即对于图4的右图中颜色加深区域的子矩形而言,深色位置m(i)(s)=1,空白位置m(i)(s)=0,最后,通过最小化V(i)即可找到对应规则形状的稀疏卷积核并对不规则形状的稀疏卷积核进行替换,从而实现对不规则形状稀疏卷积核的重塑。
(3.7)当卷积核的大小由3×3被修剪为2×2时,虽然可以在例如Caffe等深度学习平台上对卷积核的大小进行改变以获得实际的加速,但在实施的过程中,可能会导致输出特征图的大小发生改变,从而影响卷积的计算。为了确保输出特征图的大小不会因为卷积核大小的改变而受到影响,首先将规则的稀疏卷积核在空间维度上分为上、下、左、右四个方向,同样的,将输入特征图在空间维度上分为上、下、左、右四个方向,然后根据规则稀疏卷积核中被删除权重在空间维度上的方向,对输入特征图中与其对应方向上的像素删除,如图5所示,3×3的卷积核被剪掉了左和上两个方向上的权重,得到了2×2的卷积核,所以其对应的输入特征图中左和上两个方向的像素将被去掉,以保证输出特征图的大小不被改变。
(3.8)当某一层的稀疏度达到预先设定的目标稀疏率时,该层自动停止空间剪枝,直到所有层达到其预先设定的稀疏率时,结束剪枝。
(4)对稀疏后的网络模型进行重训练,固定已经删除的权重不再更新,而其他参数进行网络的迭代训练,并用验证集对模型所达到的图像分类准确率进行监测,当再训练模型对验证集图像分类的准确率不再上升时,停止重训练,输出稀疏网络模型。
(5)将稀疏后的网络模型作为新的图像分类器,然后通过对一组新图像类别标签的预测来实现对新图像的分类。在本实验中,选用ImageNet测试集的5000张、共1000类高分辨率图像作为新的图像数据,通过稀疏网络模型对新的图像数据进行预测并分类,得到分类结果。
实验结果表明,原始的VGG-16网络模型在ImageNet测试集上的分类准确率为90.1%,经本发明方法简化后的稀疏网络模型在ImageNet测试集上的分类准确率为90.3%,同时,稀疏网络模型在进行图像分类时的运行时间较原始模型减少近2倍,并在存储资源的利用上节省约30%。因此,本发明方法通过去除对分类准确率不产生影响的权重来简化图像分类器,从而有效减少图像分类时间,显著提升图像分类效率,并在一定程度上获得了节省存储资源的作用,同时也获得了更好的分类效果。
本发明通过上述实施例来说明本发明的详细方法,但本发明并不局限于上述详细方法,即不意味着本发明必须依赖上述详细方法才能实施。所属技术领域的技术人员应该明了,对本发明的任何改进,对本发明产品各原料的等效替换及辅助成分的添加、具体方式的选择等,均落在本发明的保护范围和公开范围之内。

Claims (10)

1.一种基于结构化剪枝的高效图像分类方法,其特征在于,具体包括以下步骤:
(1)获取图像的训练集和测试集,对训练集和测试集中的图像进行类别标注;
(2)对所有训练集和测试集中的图像进行预处理操作;
(3)采用预训练好的神经网络模型作为原始的图像分类器,然后将步骤(2)预处理后的图像批量送入神经网络,进行迭代训练,在训练的过程中对原始网络模型进行修剪,剪枝主要包含以下步骤:
(3.1)对于模型的各个卷积层,对四维权值张量WN*C*H*W进行建模,其中N表示卷积核的个数,C表示卷积核的通道数,H、W分别表示卷积核的高和卷积核的宽;
(3.2)根据H和W的空间维度划分卷积核的权重组,将某一卷积层内所有卷积核的所有通道中相同空间位置的权重作为一个独立的权重组g;
(3.3)根据用户对模型设定的压缩或加速比例,确定网络模型各层所需设定的目标稀疏率,并对所有权重组设置统一的正则化上限target_reg,为每个独立的权重组分配正则化因子λg并将所有的λg初始化为0;
(3.4)为网络权重矩阵中的每个权重组设定稀疏的重要性标准,并根据该标准对各个权重组进行升序排序,得到各权重组的重要性排名;
(3.5)根据各个权重组g的相对重要性不同,逐步将不同的正则化增量Δλg分配给不同的权重组,并不断迭代更新各个权重组的正则化因子λg,直到某个权重组的正则化因子λg达到预先设定的正则化上限target_reg时,该权重组的权重将被永久删除;
(3.6)通过空间正则化的方法对空间剪枝所得到的不规则形状的稀疏卷积核进行重塑,使其变为规则的稀疏卷积核;
(3.7)对输入特征图中与规则稀疏卷积核中已删除权重相同方向上的像素进行裁剪,保证输出特征图的大小不变;
(3.8)当某一层的稀疏度达到预先指定的稀疏率时,该层自动停止正则化剪枝,直到所有层达到其预先设定的稀疏率时,结束剪枝;
(4)对剪枝后的网络模型进行重训练,固定已经删除的权重不再更新,而其他参数进行网络的迭代训练,当再训练模型准确率不再上升时,停止重训练,输出稀疏网络模型;
(5)将稀疏网络模型作为新的图像分类器,然后通过对测试集类别标签的预测进行新图像的分类。
2.根据权利要求1所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(2)中,预处理操作具体为,首先将所有图像的尺寸进行统一,通过resize操作使其变换为224×224,然后进行图像的去均值,对于待训练的每一张图片特征都减去全部训练集图像的特征均值,最后通过归一化操作将图像的各个特征尺度控制在相同的范围内。
3.根据权利要求1所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.2)的具体流程为,根据四维权值张量中卷积核的高H和宽W两个维度对权重组进行划分,将所有卷积核的所有通道中同一空间位置的权重(N,C,:,:)组合成一个独立的权重组,因此共有H*W个权重组。
4.根据权利要求1所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.3)中确定网络模型各层所需设定的目标稀疏率具体为,在设定模型的参数压缩比例时,首先计算模型中各个参数层的参数量N*C*H*W以及模型的总参数量P,得到模型各层参数量占总参数量的比例αl,然后利用设定的参数压缩比计算该模型需要减少的参数量P′,并通过αl*P′得到各参数层所需减少的参数量Pl',从而得到网络模型各层所需设定的目标稀疏率,同理,在指定模型的加速比例时,先计算模型各个参数层的浮点操作次数FLOPs以及该模型总的FLOPs,然后根据指定的加速比例来确定该模型需要减少的FLOPs,并通过计算得到各层所需减少的FLOPs,从而确定各层的目标稀疏率。
5.根据权利要求1所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.4)中稀疏的重要性标准采用Ln-norm的平均排名,在每一次迭代中,首先对各个权重组按照Ln-norm进行升序排序,然后利用函数
Figure FDA0003051984230000021
对前N次迭代获得的排名进行平均,并对平均后的排名
Figure FDA0003051984230000022
再次排序,得到各个权重组最终的重要性排名r。
6.根据权利要求5所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.5)中正则化增量Δλg的具体分配方式为,根据重要性排名r确定对应权重组的正则化增量,通过连续中心对称函数
Figure FDA0003051984230000023
为不同的权重组分配相应的正则化增量Δλg(r),其中,A和u是需要手动设置的超参数,分别代表每一次权重组排名中排名最小的权重组获得的惩罚以及每一次权重组排名中刚好位于临界排名RNg的权重组获得的惩罚占A的比重,α和Nc为已知量,α代表该函数曲线的弯曲程度,可以通过公式
Figure FDA0003051984230000024
得到,Nc代表该函数的对称中心,可以通过公式
Figure FDA0003051984230000025
得到。
7.根据权利要求6所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.5)中正则化因子λg的具体更新方式为,在每一次迭代中,通过将各权重组的正则化增量Δλg与对应的正则化因子相加的方式逐步更新该权重组的正则化因子λg,得到各个权重组新的正则化因子
Figure FDA0003051984230000031
Figure FDA0003051984230000032
达到预先设定的正则化上限target_reg时,对应参数组将被删除,得到稀疏后的模型。
8.根据权利要求7所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.6)中空间正则化的方法具体为,对于稀疏模型中产生的不规则形状卷积核,通过寻找与其具有最小差异的规则形状的稀疏卷积核对不规则形状卷积核进行重塑,用函数
Figure FDA0003051984230000033
来定义两者的差异,其中,S表示权重组的个数,即S=H×W,M(s)表示不规则形状稀疏卷积核空间位置s的mask值,m(i)(s)表示规则形状卷积核中第i个子矩形在空间位置s的mask值,通过最小化V(i)即可找到对应规则形状的稀疏卷积核。
9.根据权利要求8所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(3.7)具体为,将规则的稀疏卷积核在空间维度上分为上、下、左、右四个方向,同样的,将输入特征图在空间维度上分为上、下、左、右四个方向,然后根据规则稀疏卷积核中被删除权重在空间维度上的方向,对输入特征图中与其对应方向上的像素删除,使得输出特征图的大小在卷积核大小改变的情况下不发生变化。
10.根据权利要求1所述的一种基于结构化剪枝的高效图像分类方法,其特征在于,所述步骤(4)的具体流程为,对于稀疏后的网络,通过mask对已删除权重组中的权重进行标注,同时对反向传播过程中相应权重组的各权重梯度进行mask标注,确保在整个重训练过程中被删除权重组中的权重不再更新,而对其余权重组中的权重进行迭代更新,并在训练过程中对模型的准确率进行监测,当再训练的模型准确率不再上升时,停止重训练,输出最高准确率的稀疏网络模型。
CN201910701012.XA 2019-07-31 2019-07-31 一种基于结构化剪枝的高效图像分类方法 Active CN110598731B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910701012.XA CN110598731B (zh) 2019-07-31 2019-07-31 一种基于结构化剪枝的高效图像分类方法
US16/945,626 US11301727B2 (en) 2019-07-31 2020-07-31 Efficient image classification method based on structured pruning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910701012.XA CN110598731B (zh) 2019-07-31 2019-07-31 一种基于结构化剪枝的高效图像分类方法

Publications (2)

Publication Number Publication Date
CN110598731A CN110598731A (zh) 2019-12-20
CN110598731B true CN110598731B (zh) 2021-08-20

Family

ID=68853190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910701012.XA Active CN110598731B (zh) 2019-07-31 2019-07-31 一种基于结构化剪枝的高效图像分类方法

Country Status (2)

Country Link
US (1) US11301727B2 (zh)
CN (1) CN110598731B (zh)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111191583B (zh) * 2019-12-30 2023-08-25 郑州科技学院 基于卷积神经网络的空间目标识别***及方法
CN111401516B (zh) * 2020-02-21 2024-04-26 华为云计算技术有限公司 一种神经网络通道参数的搜索方法及相关设备
CN111429415B (zh) * 2020-03-18 2020-12-08 东华大学 基于网络协同剪枝的产品表面缺陷高效检测模型构建方法
CN111598218B (zh) * 2020-05-08 2024-04-16 Oppo广东移动通信有限公司 基于卷积神经网络的图像数据处理方法和装置、存储介质
CN111753787A (zh) * 2020-07-01 2020-10-09 江苏金海星导航科技有限公司 一种分离式的交通标志检测与识别方法
KR20220009126A (ko) 2020-07-15 2022-01-24 삼성전자주식회사 뉴럴 네트워크 연산 처리 장치 및 방법
CN112101364B (zh) * 2020-09-10 2023-10-20 西安电子科技大学 基于参数重要性增量学习的语义分割方法
CN112132062B (zh) * 2020-09-25 2021-06-29 中南大学 一种基于剪枝压缩神经网络的遥感图像分类方法
CN112418393A (zh) * 2020-10-23 2021-02-26 联想(北京)有限公司 一种模型裁剪方法及设备
CN112036512B (zh) * 2020-11-03 2021-03-26 浙江大学 基于网络裁剪的图像分类神经网络架构搜索方法和装置
CN112101313B (zh) * 2020-11-17 2021-03-19 北京蒙帕信创科技有限公司 一种机房机器人巡检方法及***
CN112561054B (zh) * 2020-12-03 2023-03-31 中国科学院光电技术研究所 一种基于批量特征热图的神经网络滤波器剪枝方法
CN112668630B (zh) * 2020-12-24 2022-04-29 华中师范大学 一种基于模型剪枝的轻量化图像分类方法、***及设备
CN113111889A (zh) * 2021-03-10 2021-07-13 国网浙江省电力有限公司宁波供电公司 用于边缘计算端的目标检测网络处理方法
CN112860411A (zh) * 2021-03-12 2021-05-28 中国人民解放军93114部队 一种基于模型压缩和服务分发的边缘计算方法及***
CN112785663B (zh) * 2021-03-17 2024-05-10 西北工业大学 一种基于任意形状卷积核的图像分类网络压缩方法
CN113139577B (zh) * 2021-03-22 2024-02-23 广东省科学院智能制造研究所 一种基于可变形卷积网络的深度学习图像分类方法及***
CN113012046B (zh) * 2021-03-22 2022-12-16 华南理工大学 一种基于动态分组卷积的图像超分辨率重构方法
CN113033804B (zh) * 2021-03-29 2022-07-01 北京理工大学重庆创新中心 一种面向遥感图像的卷积神经网络压缩方法
CN113065558B (zh) * 2021-04-21 2024-03-22 浙江工业大学 一种结合注意力机制的轻量级小目标检测方法
CN113190678B (zh) * 2021-05-08 2023-10-31 陕西师范大学 基于参数稀疏共享的中国方言语种分类***
CN113411583B (zh) * 2021-05-24 2022-09-02 西北工业大学 基于维度拆分的图像压缩方法
CN113240090B (zh) * 2021-05-27 2024-05-14 北京达佳互联信息技术有限公司 图像处理模型生成方法、图像处理方法、装置及电子设备
CN113239899B (zh) * 2021-06-17 2024-05-28 阿波罗智联(北京)科技有限公司 用于处理图像和生成卷积核的方法、路侧设备和云控平台
CN113657421B (zh) * 2021-06-17 2024-05-28 中国科学院自动化研究所 卷积神经网络压缩方法和装置、图像分类方法和装置
CN113610211B (zh) * 2021-06-30 2024-01-23 山东云海国创云计算装备产业创新中心有限公司 一种卷积计算方法、***、计算机设备及可读存储介质
CN113554084B (zh) * 2021-07-16 2024-03-01 华侨大学 基于剪枝和轻量卷积的车辆再辨识模型压缩方法及***
CN113516230B (zh) * 2021-07-20 2023-06-02 华侨大学 基于平均秩重要性排序的自动化卷积神经网络剪枝方法
CN113554104B (zh) * 2021-07-28 2022-09-30 哈尔滨工程大学 一种基于深度学习模型的图像分类方法
CN114049514B (zh) * 2021-10-24 2024-03-19 西北工业大学 一种基于参数重新初始化的图像分类网络压缩方法
CN114022714B (zh) * 2021-11-11 2024-04-16 哈尔滨工程大学 一种基于Harris的数据增强图像分类方法及***
CN114155602B (zh) * 2021-12-02 2024-04-26 青岛大学 一种人体姿态估计模型稀疏化剪枝方法
CN114445688B (zh) * 2022-01-14 2024-06-04 北京航空航天大学 一种分布式多相机球形无人***目标检测方法
CN114549926A (zh) * 2022-01-24 2022-05-27 北京百度网讯科技有限公司 目标检测与目标检测模型的训练方法、装置
CN114495237A (zh) * 2022-02-14 2022-05-13 南京邮电大学 一种基于特征修复和自增强的人脸表情识别方法
CN114330714B (zh) * 2022-03-08 2022-06-14 北京环境特性研究所 卷积神经网络剪枝优化方法、装置、电子设备及存储介质
CN114553611A (zh) * 2022-04-25 2022-05-27 中用科技有限公司 一种物联网设备与物联网终端的绑定方法
CN114820326B (zh) * 2022-05-25 2024-05-31 厦门大学 基于可调节核稀疏化的高效单帧图像超分方法
CN114913441B (zh) * 2022-06-28 2024-04-16 湖南大学 通道剪枝方法、目标检测方法及遥感图像车辆检测方法
CN116304677A (zh) * 2023-01-30 2023-06-23 格兰菲智能科技有限公司 模型的通道剪枝方法、装置、计算机设备和存储介质
CN115829024B (zh) * 2023-02-14 2023-06-20 山东浪潮科学研究院有限公司 一种模型训练方法、装置、设备及存储介质
CN117152542B (zh) * 2023-10-30 2024-01-30 武昌理工学院 一种基于轻量化网络的图像分类方法和***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107665364A (zh) * 2016-07-28 2018-02-06 三星电子株式会社 神经网络方法和设备
KR20180013674A (ko) * 2016-07-28 2018-02-07 삼성전자주식회사 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치
CN109754077A (zh) * 2017-11-08 2019-05-14 杭州海康威视数字技术股份有限公司 深度神经网络的网络模型压缩方法、装置及计算机设备
CN109886397A (zh) * 2019-03-21 2019-06-14 西安交通大学 一种针对卷积层的神经网络结构化剪枝压缩优化方法
CN109948794A (zh) * 2019-02-28 2019-06-28 清华大学 神经网络结构化剪枝方法、剪枝装置和电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11651223B2 (en) * 2017-10-27 2023-05-16 Baidu Usa Llc Systems and methods for block-sparse recurrent neural networks
US11010638B2 (en) * 2018-02-05 2021-05-18 The Regents Of The University Of California Local binary pattern networks methods and systems
US10891537B2 (en) * 2019-03-20 2021-01-12 Huawei Technologies Co., Ltd. Convolutional neural network-based image processing method and image processing apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107665364A (zh) * 2016-07-28 2018-02-06 三星电子株式会社 神经网络方法和设备
KR20180013674A (ko) * 2016-07-28 2018-02-07 삼성전자주식회사 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치
CN109754077A (zh) * 2017-11-08 2019-05-14 杭州海康威视数字技术股份有限公司 深度神经网络的网络模型压缩方法、装置及计算机设备
CN109948794A (zh) * 2019-02-28 2019-06-28 清华大学 神经网络结构化剪枝方法、剪枝装置和电子设备
CN109886397A (zh) * 2019-03-21 2019-06-14 西安交通大学 一种针对卷积层的神经网络结构化剪枝压缩优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Structured Pruning for Efficient ConvNets via Incremental Regularization;Wang Huan et al.;《IJCNN 2019. International Joint Conference on Neural Networks》;20190719;第1-6页 *

Also Published As

Publication number Publication date
CN110598731A (zh) 2019-12-20
US11301727B2 (en) 2022-04-12
US20210049423A1 (en) 2021-02-18

Similar Documents

Publication Publication Date Title
CN110598731B (zh) 一种基于结构化剪枝的高效图像分类方法
US11645493B2 (en) Flow for quantized neural networks
CN109726045B (zh) 用于块稀疏递归神经网络的***和方法
CN110135580B (zh) 一种卷积网络全整型量化方法及其应用方法
US20190340499A1 (en) Quantization for dnn accelerators
CN110659725B (zh) 神经网络模型的压缩与加速方法、数据处理方法及装置
CN110852439A (zh) 神经网络模型的压缩与加速方法、数据处理方法及装置
CN111695494A (zh) 一种基于多视角卷积池化的三维点云数据分类方法
US11526760B2 (en) Training system for artificial neural networks having a global weight constrainer
US20230131518A1 (en) Model Generation Method and Apparatus, Object Detection Method and Apparatus, Device, and Storage Medium
CN113919484A (zh) 基于深度卷积神经网络模型的结构化剪枝方法和装置
WO2020195940A1 (ja) ニューラルネットワークのモデル縮約装置
CN114742997A (zh) 一种面向图像分割的全卷积神经网络密度峰剪枝方法
CN112288084B (zh) 基于特征图通道重要性的深度学习目标检测网络压缩方法
CN113408802A (zh) 能耗预测网络的训练、能耗预测方法、装置和计算机设备
CN116778339A (zh) 局部视图辅助判别高光谱波段选择方法及***
JP5552023B2 (ja) クラスタリング・システム、方法及びプログラム
CN116721305A (zh) 一种基于神经网络结构搜索的混合精度量化感知训练方法
Zhao et al. A high-performance accelerator for super-resolution processing on embedded GPU
KR102507014B1 (ko) 에너지 보존을 통한 심층 신경망 경량화 기법 및 장치
CN111738298B (zh) 一种基于深宽可变多核学习的mnist手写数字数据的分类方法
CN114399653A (zh) 一种基于锚点图的快速多视图离散聚类方法及***
CN114781207A (zh) 基于不确定性和半监督学习的热源布局温度场预测方法
CN113469129A (zh) 一种基于卷积神经网络的小麦杂质图像检测方法
US20180189326A1 (en) Classification technique for multi-band raster data for sorting and processing of colorized data for display

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