CN116992945B - 一种基于贪心策略反向通道剪枝的图像处理方法及装置 - Google Patents
一种基于贪心策略反向通道剪枝的图像处理方法及装置 Download PDFInfo
- Publication number
- CN116992945B CN116992945B CN202311257346.5A CN202311257346A CN116992945B CN 116992945 B CN116992945 B CN 116992945B CN 202311257346 A CN202311257346 A CN 202311257346A CN 116992945 B CN116992945 B CN 116992945B
- Authority
- CN
- China
- Prior art keywords
- pruning
- layer
- channel
- image processing
- feature extraction
- 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
Links
- 238000013138 pruning Methods 0.000 title claims abstract description 181
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000000605 extraction Methods 0.000 claims abstract description 75
- 238000013139 quantization Methods 0.000 claims abstract description 75
- 238000012545 processing Methods 0.000 claims abstract description 67
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000012549 training Methods 0.000 claims abstract description 35
- 238000010187 selection method Methods 0.000 claims abstract description 25
- 230000008569 process Effects 0.000 claims abstract description 20
- 230000000295 complement effect Effects 0.000 claims description 6
- 239000013598 vector Substances 0.000 claims description 6
- 238000005259 measurement Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 10
- 238000009825 accumulation Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000009966 trimming Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 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/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Neurology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于贪心策略反向通道剪枝的图像处理方法及装置,该方法包括:获取图像数据集和待剪枝图像处理网络,对待剪枝图像处理网络进行预训练,得到预训练模型,其中预训练过程中所使用的图像集与图像数据集分布相似或相同;将预训练模型划分为特征提取量化模块和输出模块,其中特征提取量化模块作为剪枝对象;根据基于贪心策略的通道选择方法对特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;对进行反向的逐层通道剪枝后的预训练模型在图像数据集上进行一定轮次的微调,得到微调后的图像处理模型;将微调后的图像处理模型部署于终端,以通过微调后的图像处理模型进行图像处理。
Description
技术领域
本发明属于深度学习模型压缩与推理加速领域,尤其涉及一种基于贪心策略反向通道剪枝的图像处理方法及装置。
背景技术
深度学习是通过构建人工神经网络对样本数据的内在规律和表示层次进行学习的算法,它通过数据驱动使机器学习样本特征来替代传统的人工提取特征。它目前尤其被广泛应用在图像处理领域。深度学习通过提高模型复杂度来满足图像处理任务对精度的要求,但是通常会同时造成更多的模型参数、需要更大的运行内存以及极大的运算量,最终导致模型难以部署到资源受限的计算平台,也难以满足如自动驾驶任务对实时性的要求。
模型剪枝通过移除模型中大量冗余参数在几乎不损失精度的情况下减少模型所需的资源,提高图像处理任务的实时性能。传统的按照从输入层到输出层的逐层剪枝方法会造成剪枝造成的误差逐渐积累,使得位置上越靠后的卷积层受到更多误差的影响。但是靠近输出的卷积层通常包含更多的卷积核和更大的感受野,能够捕捉更广阔的上下文信息,并且可以将前面层次提取的特征进行组合和整合,形成更加复杂的高级特征表示。因此,靠近输出的卷积层可能对最终的效果产生更为显著的影响。为了减小靠近输出卷积层受剪枝误差的影响,本发明提出基于贪心策略从输出层到输入层的反向通道剪枝方法。
发明内容
针对现有技术存在的问题,本申请实施例的目的是提供一种基于贪心策略反向通道剪枝的图像处理方法及装置,从特征提取量化模块最后一层开始指导前一层的通道剪枝。
根据本申请实施例的第一方面,提供一种基于贪心策略反向通道剪枝的图像处理方法,包括:
获取图像数据集和待剪枝图像处理网络,对所述待剪枝图像处理网络进行预训练,得到预训练模型;
将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;
对进行反向的逐层通道剪枝后的预训练模型在所述图像数据集上进行预定轮的微调,得到微调后的图像处理模型;
将所述微调后的图像处理模型部署于终端,以通过所述微调后的图像处理模型进行图像处理。
进一步地,步骤(1)中,所述图像数据集中,每个图像样本表示为,其中,n为所述图像数据集中图像样本的数量,/>表示图像的像素值,/>表示图像对应的标签。
进一步地,所述特征提取量化模块为所述预训练模型中用于处理模型的输入并输出抽象化的向量表示特征的模块,所述输出模块为所述预训练模型中用于将所述特征提取量化模块输出的向量处理为应用场景下的输出类型。
进一步地,根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,具体为:
从所述特征提取量化模块的最后一层开始,按从后往前的顺序依次将每一层作为操作层,并对所述操作层通过基于贪心策略的通道选择方法进行剪枝,直至所述特征提取量化模块的第一层剪枝完毕。
进一步地,对于第i层剪枝时,所述基于贪心策略的通道选择方法包括:
(a)初始化剪枝集合、保留集合并设置剪枝比率;
(b)判断所述剪枝集合中的通道数占第i层总通道数的比率是否达到所述剪枝比率;
(c)若未达到,则通过计算通道剪枝前后的误差,找出所述剪枝集合的补集中剪枝前后影响最小的通道,将该通道移动至所述剪枝集合中,返回至步骤(b);
(d)若已达到,则在第i层中移除所述剪枝集合中的所有通道。
进一步地,根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,具体为:
将所述特征提取量化模块的最后一层作为操作层,根据基于贪心策略的通道选择方法对所述操作层进行剪枝;
将当前操作层的上一层更新为操作层,根据基于贪心策略的通道选择方法对所述操作层进行剪枝,直至完成对整个特征提取量化模块的剪枝。
进一步地,通过计算通道剪枝前后的误差,找出所述剪枝集合的补集中剪枝前后影响最小的通道,将该通道移动至所述剪枝集合中,包括:
对于保留集合中的每个通道,计算移除/>之后每个图像样本的特征提取量化模块输出/>;
根据,计算特征提取量化模块移除/>前后的L2范数作为通道/>重要性的衡量指标s:
选择使得最小的/>作为本次迭代过程中移除的通道,即将该通道从保留集合移动到剪枝集合。
根据本申请实施例的第二方面,提供一种基于贪心策略反向通道剪枝的图像处理装置,包括:
获取模块,用于获取图像数据集和待剪枝图像处理网络,对所述待剪枝图像处理网络进行预训练,得到预训练模型;
划分模块,用于将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
剪枝模块,用于根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;
微调模块,用于对进行反向的逐层通道剪枝后的预训练模型在所述图像数据集上进行预定轮的微调,得到微调后的图像处理模型;
部署模块,用于将所述微调后的图像处理模型部署于终端,以通过所述微调后的图像处理模型进行图像处理。
根据本申请实施例的第三方面,提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
由上述实施例可知,本申请考虑到通道选择中重要性评估的前向过程与逐层剪枝方向相同造成误差积累,提出了基于贪心策略的反向通道剪枝方法,一方面减少前述两者方向相同造成的积累效应,另一方面保证靠近输出层的卷积层受到更小的误差影响,以保证靠后卷积层的精确剪枝从而维持图像处理任务的精度并提高实时性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种基于贪心策略反向通道剪枝的图像处理方法的流程图。
图2是根据一示例性实施例示出的模型功能模块划分的示意图。
图3是根据一示例性实施例示出的LeNet模型功能模块划分的示意图。
图4是根据一示例性实施例示出的一种基于贪心策略的反向通道剪枝装置的框图。
图5是根据一示例性实施例示出的一种电子设备的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1是根据一示例性实施例示出的一种基于贪心策略的反向通道剪枝方法的流程图,如图1所示,该方法应用于终端中,可以包括以下步骤:
步骤S11:获取图像数据集和待剪枝图像处理网络,对所述待剪枝图像处理网络进行预训练,得到预训练模型;
步骤S12:将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
步骤S13:根据所述的基于贪心策略的通道选择方法对特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;
步骤S14:对反向逐层剪枝后的模型在数据集上进行预定轮的微调得到最终训练后模型。
步骤S15:将所述训练后模型部署于终端,以通过所述训练后模型进行图像处理。
由上述实施例可知,本申请考虑到通道选择中重要性评估的前向过程与逐层剪枝方向相同造成误差积累,提出了基于贪心策略的反向通道剪枝方法,一方面减少前述两者方向相同造成的积累效应,另一方面保证靠近输出层的卷积层受到更小的误差影响,以保证靠后处理层的精确剪枝从而维持图像处理任务的精度并提高实时性能。
在步骤S11的具体实施中,获取图像样本集合和图像处理模型,对所述待训练图像处理模型进行预训练,得到预训练模型,其中预训练过程中所使用的图像集与所述图像数据集分布相似或相同。其中,此处的分布相似或相同表示图像具有相似或相同的颜色、形状、纹理等特征,包含的意义相同或相似,例如两个样本集合都包含人脸图像、动物图像、自然风景图像等;
具体地,所收集的图像样本集合表示为由图像和标签组成的二元组,其中图像表示为一个矩阵,标签为该图像对应的类别或者其他属性。其中,每个样本可表示为,其中/>,n为所述图像数据集中图像样本的数量,/>为一个三维矩阵,表示图像的像素值,各个维度分别对应图像的高、宽以及通道数,/>为图像对应的标签。
具体地,在图像分类任务方面,使用AlexNet、VGG、ResNet等模型,数据集使用MNIST、CIFAR-10、ImageNet等;在目标检测任务方面,使用RCNN、YOLO等模型,数据集使用PASCAL VOC、COCO等。
在步骤S12的具体实施中,将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
具体地,深度学习通过数据驱动使机器学习样本特征来替代传统的人工提取特征。如图2所示,从整体结构上,大部分流行的深度学习模型可以划分为特征提取量化模块和输出模块两部分。两者都包含复杂结构或多重非线性变换并构成多个处理层。从作用上看两者存在的不同是:所述特征提取量化模块为所述预训练模型中用于处理模型的输入并输出抽象化的向量表示特征的模块,所述输出模块为所述预训练模型中用于将所述特征提取量化模块输出的向量处理为应用场景下的输出类型。
对特征提取量化模块通道剪枝的必要性在于,一方面,因为深度学习的核心就是代替人工来提取特征,故而特征提取量化模块明显比输出模块更重要;另一方面,特征提取量化模块具有比输出模块更复杂以及更多的处理层,后者往往是一个不包含较复杂操作的简单全连接网络(Fully Connect Network,FCN),而且最重要的是卷积操作一般只存在于特征提取量化模块中。综上所述,对深度学习模型进行通道剪枝的目标应当集中在特征提取量化模块。
获取特征提取量化模块。在对待剪枝模型的结构进行分析后,删除待剪枝模型中输出模块的所有层,使模型中仅保留特征提取量化模块的特征层作为剪枝操作的对象。具体的:
对于具有层的待剪枝模型/>,若/>层为特征提取量化模块,层为输出模块,则将/>层定义为剪枝操作对象模型/>,其中第/>层的输出作为/>的输出。
具体地,以AlexNet模型为例,它由5个卷积层和3个全连接层构成,其特征提取量化模块为前5层(全部为卷积层)以及紧接着的1个全连接层构成;其输出模块由最后3层(全部为全连接层)构成。需要注意的是,AlexNet中从前到后顺序的第一个全连接层由特征提取量化模块和输出模块两者共享,它是前者的输出层,后者的输入层;
在步骤S13的具体实施中,根据所述的基于贪心策略的通道选择方法对特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调。需要说明的是,本发明实施在图像处理的卷积神经网络上;
具体地,通道剪枝方法的首要任务和核心在于评估所有通道的重要程度,在此基础上保留部分相对重要的通道来达到模型压缩与推理加速的目的。本申请使用逐层剪枝的策略对上述特征提取量化模块进行通道剪枝,对每一层进行通道剪枝的原则在于:对于特征提取量化模块中第层剪枝时,如果可以使用第/>层输入通道集合/>(/>表示第/>层的输出通道集合,同时也是第/>层的输入通道集合)的子集/>来近似得到第/>层的输出,那么集合/>在/>中的补集/>就可以被移除。将/>称为保留集合,/>称为剪枝集合,两者之间的关系如下:
,
由于第层每个输入通道对应于第/>层中的一个卷积核,则可以移除第/>层中剪枝集合/>相应的卷积核。也就是在对第/>层剪枝前,首先统计数据集中所有样本在第/>层的输入和输出值,之后基于该统计数据对地/>层的输入通道(等价于第/>层的输出通道)进行重要性评估,最终根据重要性和剪枝程度对第/>层进行剪枝。具体地,基于贪心策略进行通道选择。每层的剪枝程度由剪枝比率/>(/>)表示,第/>层的最佳/>作为超参数按照压缩需求手动给出;
此外,为了避免一次性移除大量通道对效果造成过大损伤而提高优化难度,剪枝集合
并非一次得出,而是基于贪心策略通过迭代的方式从保留集合中不断将影响最小的通道移动到剪枝集合/>直至达到剪枝目标,即:
此外,在每一层剪枝完成后进行两轮的微调进一步降低对效果的损伤。因此,对于第i层剪枝时,所述基于贪心策略的通道选择方法包括:
(a)初始化剪枝集合并设置剪枝比率;
具体地,初始化剪枝集合,保留集合/>,剪枝比率/>。
(b)判断所述剪枝集合中的通道数占第i层总通道数的比率是否达到所述剪枝比率;
具体地,判断是否成立。
(c)若不成立,则通过计算通道剪枝前后的误差,找出中剪枝前后影响最小的通道,将该通道移动至剪枝集合/>中,返回至步骤(b)。本发明中,对于评估/>中每个通道的重要程度方法/>,通过L2范数计算前后误差来得到,本质上是为了让特征提取量化模块的输出在剪枝前后的欧氏距离最小,确保输出模块获取的一维数组在空间上受剪枝的影响尽可能小;
具体地,在剪枝前,对所有样本,/>,计算它们在特征提取量化模块的输出值/>,样本集转换为/>,/>。
对于中的每个通道/>,计算移除/>之后每个样本的特征提取量化模块输出/>,即:
其中,,/>是本次迭代过程剪枝前所有参与运算的通道,/>是特征提取量化模块/>的数学函数表征,该函数的第一个参数表示选取哪些通道参与计算,第二个参数是样本输入。计算特征提取量化模块/>移除/>前后的L2范数作为通道/>重要性的衡量指标s:
选择使得最小的/>作为本次迭代过程中移除的通道,即将该通道从保留集合/>移动到剪枝集合/>,即:
迭代式地将影响最小的通道从/>中移动到/>能够有效考虑到先前移除的通道对后续通道重要性评估的影响。考虑到移除一个通道后会改变剩下通道的重要性评估结果,本发明通过迭代移除到剪枝比率而非一次大量移除来避免这种影响。
(d)若成立,则在第i层中移除所述剪枝集合中的所有通道。
考虑到第层的剪枝结果会影响到后续剪枝过程中各层的重要程度评估结果,在
第层完成剪枝之后,对模型进行两轮微调。在第层剪枝完成后,通过两轮的微调,即将
第层剪枝后得到的模型在原数据集上再训练两轮,一方面,可以将最终的微调过程分布到
各层剪枝后,降低整个模型剪枝完成后通过微调恢复精度的难度;另一方面,第层剪枝后
会对后续剪枝过程中各层的重要性评估产生影响,可以通过两轮的微调将第层的剪枝影
响传播到后续剪枝的层,保证重要性评估结果的准确性。
在具体实施中,前向逐层剪枝会造成误差积累。如上所述贪心策略的通道选择方法在每一个处理层剪枝完成后微调两轮以减小误差,若第层的保留集合为/>,在剪枝并微调后其误差为/>,那么第/>层剪枝后的卷积操作可表示为:
第层在剪枝前的卷积操作表示为:
由于在第层剪枝前第/>层的卷积操作为:
那么在第/>层剪枝前对其造成的误差为:
定义如下:
则有:
其中表示第i+1层的偏置,/>是第i层剪枝前后的误差函数表示,其自变量x是样本的输入,/>表示样本 x 在经过前 i - 1 层的处理后在第 i 层的输入值,K为卷积核大小。
可以看出,第层剪枝并微调后依然存在的误差会对第/>层的通道选择造成影响,而后者所受的影响又会对第/>层的通道选择造成误差,其中部分的原因是通道选择中重要性评估的前向过程与逐层剪枝的方向相同,造成了靠前的处理层剪枝误差传递并积累到靠后处理层。
因此需要对整个模型反向逐层剪枝。从模型结构层面讲,越靠近特征提取量化模块输出层的处理层对结果的影响越大;从模型可解释角度来说,越靠后的处理层处理越抽象的信息。综上所述,本申请尽可能保证靠后处理层的精确剪枝,以减小误差。具体为:将所述特征提取量化模块的最后一层作为操作层,根据基于贪心策略的通道选择方法对所述操作层进行剪枝;将当前操作层的上一层更新为操作层,根据基于贪心策略的通道选择方法对所述操作层进行剪枝,直至完成对整个特征提取量化模块的剪枝。对待剪枝图像处理网络具体的反向剪枝过程如下:
a.初始化操作层;
b.若,执行步骤d,否则执行步骤c;
c.对第层通过上述贪心策略的通道剪枝方法进行剪枝,之后更新/>,返回步骤b;
d.对最终得到的剪枝后模型(包含剪枝后的特征提取量化模块与输出模块)进行微调得到剪枝后模型。
在步骤S14的具体实施中,对进行反向的逐层通道剪枝后的预训练模型在所述图像数据集上进行预定轮的微调,得到训练后模型;
具体地,保留模型中未剪枝部分的参数,对该模型在所述图像数据集上训练适当轮次来调整模型参数以进一步减少误差并得到最终模型。
具体地,经过逐层的剪枝后,最终剪枝后模型已经产生,模型结构已经确定,前述过程中在每层剪枝后两轮的微调并不能保证最终模型的效果,因此,为了将剪枝后模型恢复到原模型的图像处理效果,还需要对所有层都已经剪枝后的最终模型做预定轮的微调。具体地,将剪枝得到的最终模型放在原数据集上再训练预定轮以恢复到原模型的效果水平。
下面以在Fashion-MNIST数据集上训练后的LeNet模型(如图3所示)为例,对步骤S13进行进一步详细说明。该任务识别图像中的手写字体,属于图像分类任务。所述对特征提取量化模块进行反向的逐层通道剪枝,包括:
步骤1,对Fashion-MNIST数据集中所有样本输入特征提取量化模块得到池化层(16@5*5)的输出;
步骤2,根据剪枝比率0.3得到卷积层(16@10*10)需要移除的通道数为;
步骤3,计算卷积层(16@10*10)中每个通道移除后池化层(16@5*5)的输出相比原输出的误差,移除误差最小的通道,重复该过程直到移除的通道数为5;
步骤4,对特征提取量化模块进行两轮微调;
步骤5,对Fashion-MNIST数据集中所有样本输入特征提取量化模块得到池化层(6@14*14)的输出;
步骤6,根据剪枝比率0.3得到卷积层(6@28*28)需要移除的通道数为;
步骤7,计算卷积层(6@28*28)中每个通道移除后池化层(6@14*14)的输出相比原输出的误差,移除误差最小的通道,重复该过程直到移除的通道数为2;
步骤8,对特征提取量化模块进行两轮微调;
步骤9,对整个模型(包括剪枝后的特征提取量化模块与输出模块)进行20轮微调得到剪枝后模型。
在本实施例中,所述对反向逐层剪枝后的模型的微调轮数在本实例中为20;所述模型剪枝比率在本实例中为0.3。
与前述的基于贪心策略反向通道剪枝的图像处理方法的实施例相对应,本申请还提供了基于贪心策略反向通道剪枝的图像处理装置的实施例。
图4是根据一示例性实施例示出的一种基于贪心策略反向通道剪枝的图像处理装置框图。参照图4,该装置可以包括:
获取模块21,用于获取图像数据集和待剪枝图像处理网络,对所述待剪枝图像处理网络进行预训练,得到预训练模型;
划分模块22,用于将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
剪枝模块23,用于根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;
微调模块24,用于对进行反向的逐层通道剪枝后的预训练模型在所述图像数据集上进行预定轮的微调,得到微调后的图像处理模型;
部署模块25,用于将所述微调后的图像处理模型部署于终端,以通过所述微调后的图像处理模型进行图像处理。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
相应的,本申请还提供一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的基于贪心策略反向通道剪枝的图像处理方法。如图5所示,为本发明实施例提供的一种基于贪心策略反向通道剪枝的图像处理方法所在任意具备数据处理能力的设备的一种硬件结构图,除了图5所示的处理器、内存、DMA控制器、磁盘、以及非易失内存之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
相应的,本申请还提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如上述的基于贪心策略反向通道剪枝的图像处理方法。所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是风力发电机的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。
Claims (9)
1.一种基于贪心策略反向通道剪枝的图像处理方法,其特征在于,包括:
获取图像数据集和待剪枝图像处理网络,对所述待剪枝图像处理网络进行预训练,得到预训练模型;
将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;
对进行反向的逐层通道剪枝后的预训练模型在所述图像数据集上进行预定轮的微调,得到微调后的图像处理模型;
将所述微调后的图像处理模型部署于终端,以通过所述微调后的图像处理模型进行图像处理;
其中,对于第i层剪枝时,所述基于贪心策略的通道选择方法包括:
(a)初始化剪枝集合、保留集合并设置剪枝比率;
(b)判断所述剪枝集合中的通道数占第i层总通道数的比率是否达到所述剪枝比率;
(c)若未达到,则通过计算通道剪枝前后的误差,找出所述剪枝集合的补集中剪枝前后影响最小的通道,将该通道移动至所述剪枝集合中,返回至步骤(b);
(d)若已达到,则在第i层中移除所述剪枝集合中的所有通道。
2.根据权利要求1所述的方法,其特征在于,步骤(1)中,所述图像数据集中,每个图像样本表示为,其中/>,n为所述图像数据集中图像样本的数量,/>表示图像的像素值,/>表示图像对应的标签。
3.根据权利要求1所述的方法,其特征在于,所述特征提取量化模块为所述预训练模型中用于处理模型的输入并输出抽象化的向量表示特征的模块,所述输出模块为所述预训练模型中用于将所述特征提取量化模块输出的向量处理为应用场景下的输出类型。
4.根据权利要求1所述的方法,其特征在于,根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,具体为:
从所述特征提取量化模块的最后一层开始,按从后往前的顺序依次将每一层作为操作层,并对所述操作层通过基于贪心策略的通道选择方法进行剪枝,直至所述特征提取量化模块的第一层剪枝完毕。
5.根据权利要求1所述的方法,其特征在于,根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,具体为:
将所述特征提取量化模块的最后一层作为操作层,根据基于贪心策略的通道选择方法对所述操作层进行剪枝;
将当前操作层的上一层更新为操作层,根据基于贪心策略的通道选择方法对所述操作层进行剪枝,直至完成对整个特征提取量化模块的剪枝。
6.根据权利要求1所述的方法,其特征在于,通过计算通道剪枝前后的误差,找出所述剪枝集合的补集中剪枝前后影响最小的通道,将该通道移动至所述剪枝集合中,包括:
对于保留集合中的每个通道,计算移除/>之后每个图像样本的特征提取量化模块输出/>;
根据,计算特征提取量化模块移除/>前后的L2范数作为通道/>重要性的衡量指标s:
,
选择使得最小的/>作为本次迭代过程中移除的通道,即将该通道从保留集合移动到剪枝集合。
7.一种基于贪心策略反向通道剪枝的图像处理装置,其特征在于,包括:
获取模块,用于获取图像数据集和待剪枝图像处理网络,对所述待剪枝图像处理网络进行预训练,得到预训练模型;
划分模块,用于将所述预训练模型划分为特征提取量化模块和输出模块,其中所述特征提取量化模块作为剪枝对象;
剪枝模块,用于根据基于贪心策略的通道选择方法对所述特征提取量化模块进行反向的逐层通道剪枝,并在每层剪枝完成后进行预定轮次的微调;
微调模块,用于对进行反向的逐层通道剪枝后的预训练模型在所述图像数据集上进行预定轮的微调,得到微调后的图像处理模型;
部署模块,用于将所述微调后的图像处理模型部署于终端,以通过所述微调后的图像处理模型进行图像处理;
其中,对于第i层剪枝时,所述基于贪心策略的通道选择方法包括:
(a)初始化剪枝集合、保留集合并设置剪枝比率;
(b)判断所述剪枝集合中的通道数占第i层总通道数的比率是否达到所述剪枝比率;
(c)若未达到,则通过计算通道剪枝前后的误差,找出所述剪枝集合的补集中剪枝前后影响最小的通道,将该通道移动至所述剪枝集合中,返回至步骤(b);
(d)若已达到,则在第i层中移除所述剪枝集合中的所有通道。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311257346.5A CN116992945B (zh) | 2023-09-27 | 2023-09-27 | 一种基于贪心策略反向通道剪枝的图像处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311257346.5A CN116992945B (zh) | 2023-09-27 | 2023-09-27 | 一种基于贪心策略反向通道剪枝的图像处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116992945A CN116992945A (zh) | 2023-11-03 |
CN116992945B true CN116992945B (zh) | 2024-02-13 |
Family
ID=88530648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311257346.5A Active CN116992945B (zh) | 2023-09-27 | 2023-09-27 | 一种基于贪心策略反向通道剪枝的图像处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116992945B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018053835A1 (en) * | 2016-09-26 | 2018-03-29 | Intel Corporation | Method and apparatus for reducing parameter density of deep neural network (dnn) |
WO2018217863A1 (en) * | 2017-05-23 | 2018-11-29 | Intel Corporation | Methods and apparatus for enhancing a binary weight neural network using a dependency tree |
CN111931914A (zh) * | 2020-08-10 | 2020-11-13 | 北京计算机技术及应用研究所 | 一种基于模型微调的卷积神经网络通道剪枝方法 |
CN112906853A (zh) * | 2019-12-03 | 2021-06-04 | 中国移动通信有限公司研究院 | 模型自动优化的方法及装置、设备、存储介质 |
CN113255912A (zh) * | 2021-06-08 | 2021-08-13 | 深圳市商汤科技有限公司 | 神经网络的通道剪枝方法及装置、电子设备和存储介质 |
CN113255910A (zh) * | 2021-05-31 | 2021-08-13 | 浙江宇视科技有限公司 | 卷积神经网络的剪枝方法、装置、电子设备和存储介质 |
CN114330714A (zh) * | 2022-03-08 | 2022-04-12 | 北京环境特性研究所 | 卷积神经网络剪枝优化方法、装置、电子设备及存储介质 |
WO2022141754A1 (zh) * | 2020-12-31 | 2022-07-07 | 之江实验室 | 一种卷积神经网络通用压缩架构的自动剪枝方法及平台 |
WO2022179492A1 (zh) * | 2021-02-27 | 2022-09-01 | 华为技术有限公司 | 一种卷积神经网络的剪枝处理方法、数据处理方法及设备 |
WO2023024407A1 (zh) * | 2021-08-24 | 2023-03-02 | 平安科技(深圳)有限公司 | 基于相邻卷积的模型剪枝方法、装置及存储介质 |
CN115810128A (zh) * | 2022-12-21 | 2023-03-17 | 杭州电子科技大学 | 一种基于贪心策略的图像分类模型的压缩方法 |
CN116167413A (zh) * | 2023-04-20 | 2023-05-26 | 国网山东省电力公司济南供电公司 | 深度卷积神经网络量化剪枝联合优化的方法及系统 |
WO2023098544A1 (zh) * | 2021-12-03 | 2023-06-08 | 中科视语(北京)科技有限公司 | 基于局部稀疏约束的结构化剪枝方法和装置 |
CN116502698A (zh) * | 2023-06-29 | 2023-07-28 | 中国人民解放军国防科技大学 | 网络通道剪枝率自适应调整方法、装置、设备和存储介质 |
-
2023
- 2023-09-27 CN CN202311257346.5A patent/CN116992945B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018053835A1 (en) * | 2016-09-26 | 2018-03-29 | Intel Corporation | Method and apparatus for reducing parameter density of deep neural network (dnn) |
WO2018217863A1 (en) * | 2017-05-23 | 2018-11-29 | Intel Corporation | Methods and apparatus for enhancing a binary weight neural network using a dependency tree |
CN112906853A (zh) * | 2019-12-03 | 2021-06-04 | 中国移动通信有限公司研究院 | 模型自动优化的方法及装置、设备、存储介质 |
CN111931914A (zh) * | 2020-08-10 | 2020-11-13 | 北京计算机技术及应用研究所 | 一种基于模型微调的卷积神经网络通道剪枝方法 |
WO2022141754A1 (zh) * | 2020-12-31 | 2022-07-07 | 之江实验室 | 一种卷积神经网络通用压缩架构的自动剪枝方法及平台 |
WO2022179492A1 (zh) * | 2021-02-27 | 2022-09-01 | 华为技术有限公司 | 一种卷积神经网络的剪枝处理方法、数据处理方法及设备 |
CN113255910A (zh) * | 2021-05-31 | 2021-08-13 | 浙江宇视科技有限公司 | 卷积神经网络的剪枝方法、装置、电子设备和存储介质 |
CN113255912A (zh) * | 2021-06-08 | 2021-08-13 | 深圳市商汤科技有限公司 | 神经网络的通道剪枝方法及装置、电子设备和存储介质 |
WO2023024407A1 (zh) * | 2021-08-24 | 2023-03-02 | 平安科技(深圳)有限公司 | 基于相邻卷积的模型剪枝方法、装置及存储介质 |
WO2023098544A1 (zh) * | 2021-12-03 | 2023-06-08 | 中科视语(北京)科技有限公司 | 基于局部稀疏约束的结构化剪枝方法和装置 |
CN114330714A (zh) * | 2022-03-08 | 2022-04-12 | 北京环境特性研究所 | 卷积神经网络剪枝优化方法、装置、电子设备及存储介质 |
CN115810128A (zh) * | 2022-12-21 | 2023-03-17 | 杭州电子科技大学 | 一种基于贪心策略的图像分类模型的压缩方法 |
CN116167413A (zh) * | 2023-04-20 | 2023-05-26 | 国网山东省电力公司济南供电公司 | 深度卷积神经网络量化剪枝联合优化的方法及系统 |
CN116502698A (zh) * | 2023-06-29 | 2023-07-28 | 中国人民解放军国防科技大学 | 网络通道剪枝率自适应调整方法、装置、设备和存储介质 |
Non-Patent Citations (3)
Title |
---|
代价敏感深度学习方法研究综述;吴雨茜;王俊丽;杨丽;余淼淼;;计算机科学(05);全文 * |
吴雨茜 ; 王俊丽 ; 杨丽 ; 余淼淼 ; .代价敏感深度学习方法研究综述.计算机科学.2019,(05),全文. * |
智能汽车决策中的驾驶行为语义解析关键技术;李国法;陈耀昱;吕辰;陶达;曹东璞;成波;;汽车安全与节能学报(04);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116992945A (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111795704B (zh) | 一种视觉点云地图的构建方法、装置 | |
CN108681752B (zh) | 一种基于深度学习的图像场景标注方法 | |
CN106845621B (zh) | 基于深度卷积神经网络的密集人群人数计数方法及系统 | |
CN111950656B (zh) | 图像识别模型生成方法、装置、计算机设备和存储介质 | |
CN111723915B (zh) | 一种基于深度卷积神经网络的目标检测方法 | |
CN113160062B (zh) | 一种红外图像目标检测方法、装置、设备及存储介质 | |
CN110148117B (zh) | 基于电力图像的电力设备缺陷识别方法、装置与存储介质 | |
CN111833322B (zh) | 一种基于改进YOLOv3的垃圾多目标检测方法 | |
CN112699941B (zh) | 植物病害严重程度图像分类方法、装置、设备和存储介质 | |
CN114429208A (zh) | 基于残差结构剪枝的模型压缩方法、装置、设备及介质 | |
CN112597919A (zh) | 基于YOLOv3剪枝网络和嵌入式开发板的实时药盒检测方法 | |
CN109190505A (zh) | 基于视觉理解的图像识别方法 | |
CN116992945B (zh) | 一种基于贪心策略反向通道剪枝的图像处理方法及装置 | |
CN111696122A (zh) | 农作物表型参数提取方法及装置 | |
CN113344182A (zh) | 一种基于深度学习的网络模型压缩方法 | |
CN111126501A (zh) | 一种图像识别方法、终端设备及存储介质 | |
CN115661618A (zh) | 图像质量评估模型的训练方法、图像质量评估方法及装置 | |
CN114742221A (zh) | 深度神经网络模型剪枝方法、系统、设备及介质 | |
Treboux et al. | Towards retraining of machine learning algorithms: an efficiency analysis applied to smart agriculture | |
CN109165587A (zh) | 智能图像信息抽取方法 | |
Deng et al. | A paddy field segmentation method combining attention mechanism and adaptive feature fusion | |
CN114202694A (zh) | 基于流形混合插值和对比学习的小样本遥感场景图像分类方法 | |
CN116992944B (zh) | 基于可学习重要性评判标准剪枝的图像处理方法及装置 | |
CN115908260B (zh) | 模型训练方法、人脸图像质量评价方法、设备及介质 | |
Rungyaem et al. | The 3-dimensional Plant Organs Point Clouds Classification for the Phenotyping Application based on CNNs. |
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 |