CN117131920B - 一种基于网络结构搜索的模型剪枝方法 - Google Patents
一种基于网络结构搜索的模型剪枝方法 Download PDFInfo
- Publication number
- CN117131920B CN117131920B CN202311396457.4A CN202311396457A CN117131920B CN 117131920 B CN117131920 B CN 117131920B CN 202311396457 A CN202311396457 A CN 202311396457A CN 117131920 B CN117131920 B CN 117131920B
- Authority
- CN
- China
- Prior art keywords
- model
- pruning
- layer
- network structure
- network
- 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 80
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000012549 training Methods 0.000 claims abstract description 37
- 230000035945 sensitivity Effects 0.000 claims abstract description 20
- 238000012360 testing method Methods 0.000 claims abstract description 20
- 238000005520 cutting process Methods 0.000 claims abstract description 7
- 238000011068 loading method Methods 0.000 claims abstract description 7
- 230000000694 effects Effects 0.000 claims abstract description 6
- 238000000547 structure data Methods 0.000 claims abstract description 4
- 238000005070 sampling Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 11
- 238000004821 distillation Methods 0.000 claims description 6
- 238000011065 in-situ storage Methods 0.000 claims description 6
- 230000006872 improvement Effects 0.000 claims description 5
- 238000012795 verification Methods 0.000 claims description 5
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 claims description 4
- 210000002569 neuron Anatomy 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 3
- 238000013434 data augmentation Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 5
- 230000008901 benefit Effects 0.000 abstract description 3
- 239000010410 layer Substances 0.000 description 56
- 230000006870 function Effects 0.000 description 9
- 238000013135 deep learning Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000002356 single layer Substances 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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)
- 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
本发明提出一种基于网络结构搜索的模型剪枝方法。该方法包括:S1采集网络结构数据,通过加载,训练改进后的模型;S2基于网络结构搜索得出每个卷积层对剪枝的敏感程度;S3确定每个卷积层对剪枝的敏感度自适应每层的剪枝比例;S4模型剪枝,根据每层的自适应剪枝比率,剪掉每层中重要性相对较低的通道和对应的滤波器;S5剪枝后模型fine‑tuning,自适应每层的裁剪率,当测试集的效果达到预期目标后,终止迭代;S6模型测试,将满足设备要求和性能需求的模型保存并输出。本发明在保证模型对性能的要求下移除冗余的通道和对应的卷积核,使模型具备尺寸小、计算复杂度低、电池耗电量低、确保网络在嵌入式设备上的可移植性。
Description
技术领域
本发明涉及深度神经网络模型压缩领域,尤其适用于解决深度神经网络模型移植到边缘移动端设备而存在的计算量和参数量过高的问题,具体为一种基于网络结构搜索的模型剪枝方法。
背景技术
计算机视觉和自然语言处理等人工智能的相关领域得益于深度学习的发展,使其性能到达了前所未有的高度。但是随着神经网络深度宽度不断地增加,带来高性能的同时也带来了高额的存储空间和庞大的计算量,这极大的阻碍了深度学习相关方法的产品化。
随着人工智能技术的日益成熟和边缘端设备计算能力的提升,移动端的AI落地也成为了可能。相比于服务器端的深度学习模型,边缘移动端模型可以减轻服务器端压力,响应速度快,稳定性较高且具有安全性。但是在边缘移动端部署深度学习模型存在着很大的挑战,移动端等嵌入式设备并不是为计算稠密任务而设计的,所以在计算能力、存储资源等方面受限,而且深度学习方法要在边缘端进行产品化就要考虑设备电池电量等方面的问题。故移动端的模型必须要满足模型尺寸小、计算复杂度低、电池耗电量低、下发更新部署灵活等条件。模型部署平台的多样性则是另一个挑战,不同移动端的硬件平台差异很大,设备的计算能力和存储能力也大不相同,不同的边缘设备有着自己所能承受的最大计算量和参数量,所以同一个任务针对不同的硬件设备可能需要不同大小的模型。
在这种情况下,亟需一种在保证模型性能的同时对深度神经网络模型进行压缩且可根据移动端平台的参数量和计算量的约束自适应网络结构的方法。
发明内容
本发明提出了一种基于网络结构搜索的模型剪枝方法,以解决现有技术中存在的不足,本发明要解决的技术问题通过以下技术方案来实现。
为实现上述目的,本发明采用下述技术方案。
一种基于网络结构搜索的模型剪枝方法,所述方法包括:
S1 网络结构数据的采集,通过加载,训练改进后的模型;
S2 基于网络结构搜索得出每个卷积层对剪枝的敏感程度;
S3 确定每个卷积层对剪枝的敏感程度自适应每层的剪枝比例;
S4 模型剪枝,根据每层的自适应剪枝比例,剪掉每层中重要性相对较低的通道和对应的滤波器;
S5 剪枝后模型fine-tuning,自适应每层的裁剪比例,当测试集的效果达到预期目标后,终止迭代;
S6 模型测试,将满足设备要求和性能需求的模型保存并输出。
进一步地,其中,所述S1的改进后的模型为:加入三明治原则和原地蒸馏以提高网络的性能,并采用共享卷积核的方式加快网络结构信息的采集;
所述S2基于网络结构搜索得出每个卷积层对剪枝的敏感程度,包括:
S2.1 对改进后的模型使用训练数据和验证数据进行迭代训练,直至收敛;
S2.2 加载所述模型,并在设定阈值内随机对每层的卷积核进行删减,记录该网络最后的相关数据,对这些数据进行整理和划分,得到不同卷积层对模型输出结果的敏感程度;
所述S4模型剪枝具体包括:将L1正则化施加到BN层的缩放因子上,使得BN层的缩放因子趋向于零,根据通道的重要性按升序排序,自适应每层的剪枝比例并剪掉每层中重要性相对较低的通道和对应的滤波器;
所述S5剪枝后模型fine-tuning,按照优化目标的绝对差值变化相对于迭代开始时的比值和对应卷积层对剪枝的敏感程度以及边缘设备对数据量和参数量的需求,自适应每层的裁剪比例;当测试集的效果达到预期目标后,终止迭代。
所述S1具体包括:
S1.1 利用摄像头进行拍照,并对其使用随机裁剪、随机反转、左右镜像处理进行数据增广,扩充数据集;
S1.2 使用标注软件对数据进行标注,原图像和标注内容存放于同一个文件夹。
所述模型改进具体包括:
(1)首先根据任务定义网络结构,设定一个网络结构搜索范围,在模型的训练中随机独立地对每一层的通道数进行采样;
(2)在对通道的随机采样过程中,着重对设定阈值的上限和下限进行采样,使模型的准确性在预设的范围之内;
(3)在网络结构搜索过程中,采用原地蒸馏的技术,用设定的剪枝上限比例来指导其他比例的训练;
(4)采用共享卷积核的方式加快对网络结构信息的采集,越靠前的卷积核重用的次数就越高。
在所述模型的训练中随机对每一层的通道数进行采样,在对通道的随机采样过程中,着重对设定阈值的上限和下限进行采样;单个神经元的输出用公式(1)表示;公式(2)为前k个通道的输出:
其中,n为输入的通道数量,yk为前k个通道的输出,k和k0表示前k个通道和前k0个通道。
所述S4模型剪枝是利用公式(3)所示的方式确定网络整体的训练损失函数,通过训练损失函数以及剪枝比例来确定每一层卷积中哪些卷积核是需要剪掉的,具体包括:
表示的是网络整体的训练损失函数,将BN层的缩放因子作为稀疏性惩罚项引入
目标函数,联合训练网络权重和这些缩放因子,使其得到的模型中缩放因子趋于0;
其中,x是网络整体的输入,y是网络整体的输出,w是神经网络整体的可训练参数,f(x,w)表示预测值,l表示的是将预测值与真值y作为输入得到的损失值,采用L1正则化|γ|作为缩放因子上的稀疏性惩罚项,λ是平衡因子。
所述S6中的模型测试具体包括:使用测试数据输入模型进行测试,比对模型在剪枝前后的对同一目标识别结果的差异。
所述S6中的模型输出具体包括:将训练后参数最优的模型输出到*.h5文件,以方便模型移植到嵌入式设备。
本发明方案相对于现有技术具有以下有益效果:
本发明为了解决深度学习方法产品化的问题,在卷积层对剪枝的敏感度,通道的重要性,以及边缘设备对参数量和计算量的要求上同时入手,对模型进行剪枝。
在保证模型对性能的要求下移除冗余的通道和对应的卷积核,使模型具备尺寸小、计算复杂度低、电池耗电量低、下发更新部署灵活等条件,确保网络在嵌入式设备上的可移植性。
附图说明
下面结合附图和具体实施方式对本发明作进一步的说明。
图1为本发明的基于网络结构搜索的模型剪枝方法的流程图;
图2为传统结构搜索的流程图;
图3为基于共享卷积核的结构搜索的流程图;
图4为传统剪枝的流程图;
图5为基于本发明的基于卷积层敏感程度的剪枝流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
本发明主要应用于基于深度学习对目标进行分类和检测的任务中,在保证准确率的同时,通过对模型计算量和参数量的限制最大程度上的压缩网络模型,本发明提供一种基于网络结构搜索的模型剪枝方法。以对传统水表的识别任务为例,该任务采用了SSD模型,本发明可将模型参数减少到原模型的0.5%,在3秒内识别准确率可达99%,可以将部署到嵌入式设备中。
图1为本发明的流程框图,下面将对本发明的具体实施进行阐述。
步骤1 数据准备:数据采集、数据标注和数据划分;
步骤1.1 利用摄像头进行大量拍照,并对其使用随机裁剪、随机反转、左右镜像等处理进行数据增广,扩充数据集。
步骤1.2 使用标注软件对数据进行标注,并将标注内容存有txt文件,原图像和标注内容存放于同一个文件夹。
步骤1.3 将图像和对应的标注信息划分为训练集、验证集和测试集,分别占比60%、20%、20%。
步骤2 模型改进:将加入三明治原则和原地蒸馏以提高网络的性能,并采用共享卷积核的方式加快网络结构信息的采集,包含以下子步骤:
步骤2.1 首先根据任务定义网络结构,设定一个结构搜索范围,在模型的训练中随机独立地对每一层的通道数进行采样。具体步骤为:对传统水表的精确识别采用SSD目标检测网络作为网络结构,并对网络结构进行调整。传统的SSD检测网络以VGG16作为主干的特征提取网络,在主干网络后添加了多层卷积以实现对目标的多尺度检测,而针对于水表的精确识别来说,因为检测的目标在不同卷积层的相似感受相差不大,所以采用单层检测即可。设定一个结构搜索的范围,即对卷积核的采样率,在传统水表的精确识别中采用的剪枝比例为[0.25,1],并且对每层进行单独采样,最大程度上加大结构搜索的范围。
步骤2.2 在对通道的随机采样过程中,着重对设定阈值的上限和下限进行采样,使模型的准确性在预设的范围之内;单个神经元的输出可用公式(1)表示,其中w和x分别为上层卷积核权重和输入的特征图,n为输入的通道数量。对于y满足公式(2)的性质即为前k个通道的输出,k和k0即是步骤2.1中所定义的结构搜索范围,一般来说神经元的个数越多越接近真实值。给定了k0之后,网络层的输出结果处在一个已界定的范围内,并且可以通过增删通道数量来直接调控网络层的性能和资源消耗之间的关系。
其中,n为输入的通道数量,yk为前k个通道的输出,k和k0表示前k个通道和前k0个通道。
步骤2.3 在网络结构搜索过程中,采用原地蒸馏的技术,用设定的剪枝上限比例来指导其他比例的训练,提高网络的性能;三明治原则进行网络结构搜索时会同时训练多个网络,最大宽度网络训练使用真实的标签,其它宽度采用最大宽度的预测标签,它可以在训练中就地的采用,没有额外的计算成本。
步骤2.4 采用共享卷积核的方式加快对网络结构信息的采集,越靠前的卷积核重用的次数就越高。
如图2所示为传统的网络结构搜索示意图。在搜索空间依照一定的搜索策略,在搜索策略和性能评估交替进行。
如图3所示本发明的网络结构搜索示意图。在搜索到所有子网络后统一进行评估。每一层的独立采样导致子网络的个数非常多,如果一一保存那么计算量并没有减少,本发明采用多个网络结构共用一个卷积核在极大程度上节约时间和计算成本。
步骤3 网络结构数据的采集:通过加载,训练改进后的模型,然后记录该模型在不同网络结构下的相关数据信息,最后总结不同卷积层对模型结果的敏感程度包含以下子步骤:
步骤3.1 对步骤2改进的模型使用训练数据和验证数据进行少量的迭代训练,直至收敛;
步骤3.2 加载步骤3.1中的模型,并在设定阈值内随机对每层的卷积核进行删减,最后记录该网络最后的相关数据(包括每层卷积核的个数,和最后的准确率)。
如图4所示为传统的模型剪枝示意图。训练一个大模型,然后依据设置的剪枝策略进行剪枝并得到多个子网络模型,然后对这些子网络模型进行fine-tuning恢复模型精度,最后评估得到最优的子网络模型作为剪枝成功的模型。如果对每个子网络做fine-tuning的话,会需要大量的计算资源和训练时间。
图5为本发明的基于卷积层敏感程度的剪枝流程示意图。
步骤2中本发明通过共享卷积核的方式,使子网络的权重也存储在对应的卷积核中,故不需要对网络权重做fine-tuning。对通道进行批归一化,BN层在训练过程中会计算均值和方差然后滑动更新这两个参数,在模型训练结束后加载模型时就会调用这两个参数。虽然共享卷积核的方式本发明不用fine-tuning来恢复模型精度,但是本发明需要对自网络进行少量的前向传播更新子网络的均值和方差。每个子网络都进行BN(BatchNormalization)层均值和方差的更新,然后记录相关数据。
步骤3.3 对这些数据进行整理和划分,得到不同卷积层对模型输出结果的敏感程度。每次只移除一个卷积层中的一个或者多个卷积核,记录每个卷积层对剪枝比例的敏感程度。
步骤4 模型剪枝,将L1正则化施加到BN层的缩放因子上,使得BN层的缩放因子趋向于零,根据通道的重要性按升序排序,参考步骤3得到的不同卷积层对结果的影响,自适应每层的剪枝比例并剪掉每层中重要性相对较低的通道和对应的滤波器。其中,L1正则化,又称为Lasso正则化,通过在模型的损失函数中增加目标参数的绝对值之和,来对模型的复杂性进行惩罚。将L1正则化施加到批量归一化(BN)层的缩放因子上,使得BN层的缩放因子趋向于零。根据通道的重要性按升序排序,自适应每层的剪枝比例并剪掉每层中重要性相对较低的通道和对应的滤波器。
步骤4.1 所述S4模型剪枝是利用公式(3)所示的方式确定网络整体的训练损失函数,通过训练损失函数以及剪枝比例来确定每一层卷积中哪些卷积核是需要剪掉的,具体包括:
表示的是网络整体的训练损失函数,将BN层的缩放因子作为稀疏性惩罚项引入
目标函数,联合训练网络权重和这些缩放因子,使其得到的模型中缩放因子趋于0;
其中,x是网络整体的输入,y是网络整体的输出,w是神经网络整体的可训练参数,f(x,w)表示预测值,l表示的是将预测值与真值y作为输入得到的损失值,采用L1正则化|γ|作为缩放因子上的稀疏性惩罚项,λ是平衡因子。
步骤4.2 将每个卷积层的BN缩放因子从大到小排列,即是通道重要性的排序,根据步骤3所确定的每个卷积层对剪枝的敏感度自适应每层的剪枝比例。在不改变原有网络层数的基础上,移除不重要的通道和对应的卷积核,得到一个更紧凑且便于移植的网络。
步骤5 裁剪后模型fine-tuning:按照优化目标的绝对差值变化相对于迭代开始时的比值和对应卷积层对剪枝的敏感程度以及边缘设备对数据量和参数量的需求,自适应每层的裁剪比例;当测试集的效果达到预期目标后,终止迭代。
步骤6 模型测试:使用测试数据输入模型进行测试,比对模型在剪枝前后的对同一目标识别结果的差异。
步骤7 模型输出:将训练后参数最优的模型输出到*.h5文件,以方便模型可移植到嵌入式设备。
应该指出,上述详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语均具有与本申请所属技术领域的普通技术人员的通常理解所相同的含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便这里描述的本申请的实施方式能够以除了在这里图示或描述的那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在上面详细的说明中,参考了附图,附图形成本文的一部分。在附图中,类似的符号典型地确定类似的部件,除非上下文以其他方式指明。在详细的说明书、附图及权利要求书中所描述的图示说明的实施方案不意味是限制性的。在不脱离本文所呈现的主题的精神或范围下,其他实施方案可以被使用,并且可以作其他改变。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于网络结构搜索的模型剪枝方法,其特征在于,所述方法包括:
S1 网络结构数据的采集,通过加载,训练改进后的模型;
S2 基于网络结构搜索得出每个卷积层对剪枝的敏感程度;
S3 确定每个卷积层对剪枝的敏感程度自适应每层的剪枝比例;
S4 模型剪枝,根据每层的自适应剪枝比例,剪掉每层中重要性相对较低的通道和对应的滤波器;
S5 剪枝后模型fine-tuning,自适应每层的剪枝比例,当测试集的效果达到预期目标后,终止迭代;
S6 模型测试,将满足设备要求和性能需求的模型保存并输出;
其中,所述S1的改进后的模型为:加入三明治原则和原地蒸馏以提高网络的性能,并采用共享卷积核的方式加快网络结构信息的采集;
所述S2基于网络结构搜索得出每个卷积层对剪枝的敏感程度,包括:
S2.1 对改进后的模型使用训练数据和验证数据进行迭代训练,直至收敛;
S2.2 加载所述模型,并在设定阈值内随机对每层的卷积核进行删减,记录该网络最后的相关数据,对这些数据进行整理和划分,得到不同卷积层对模型输出结果的敏感程度;
所述S4模型剪枝具体包括:将L1正则化施加到BN层的缩放因子上,使得BN层的缩放因子趋向于零,根据通道的重要性按升序排序,自适应每层的剪枝比例并剪掉每层中重要性相对较低的通道和对应的滤波器;
所述S5剪枝后模型fine-tuning,按照优化目标的绝对差值变化相对于迭代开始时的比值和对应卷积层对剪枝的敏感程度以及边缘设备对数据量和参数量的需求,自适应每层的剪枝比例;当测试集的效果达到预期目标后,终止迭代。
2.根据权利要求1所述的基于网络结构搜索的模型剪枝方法,其特征在于,所述S1具体包括:
S1.1 利用摄像头进行拍照,并对其使用随机裁剪、随机反转、左右镜像处理进行数据增广,扩充数据集;
S1.2 使用标注软件对数据进行标注,原图像和标注内容存放于同一个文件夹。
3.根据权利要求2所述的基于网络结构搜索的模型剪枝方法,其特征在于,所述模型改进具体包括:
(1)首先根据任务定义网络结构,设定一个网络结构搜索范围,在模型的训练中随机独立地对每一层的通道数进行采样;
(2)在对通道的随机采样过程中,着重对设定阈值的上限和下限进行采样,使模型的准确性在预设的范围之内;
(3)在网络结构搜索过程中,采用原地蒸馏的技术,用设定的剪枝上限比例来指导其他比例的训练;
(4)采用共享卷积核的方式加快对网络结构信息的采集,越靠前的卷积核重用的次数就越高。
4.根据权利要求3所述的基于网络结构搜索的模型剪枝方法,其特征在于,
在所述模型的训练中随机对每一层的通道数进行采样,在对通道的随机采样过程中,着重对设定阈值的上限和下限进行采样;单个神经元的输出用公式(1)表示;公式(2)为前k个通道的输出:
其中, n为输入的通道数量,yk为前k个通道的输出,k和k0表示前k个通道和前k0个通道。
5.根据权利要求1所述的基于网络结构搜索的模型剪枝方法,其特征在于,
所述S4模型剪枝是利用公式(3)所示的方式确定网络整体的训练损失函数,通过训练损失函数以及剪枝比例来确定每一层卷积中哪些卷积核是需要剪掉的,具体包括:
表示的是网络整体的训练损失函数,将BN层的缩放因子作为稀疏性惩罚项引入目标
函数,联合训练网络权重和这些缩放因子,使其得到的模型中缩放因子趋于0;
其中,x是网络整体的输入,y是网络整体的输出,w是神经网络整体的可训练参数,f(x,w)表示预测值,l表示的是将预测值与真值y作为输入得到的损失值,采用L1正则化|γ|作为缩放因子上的稀疏性惩罚项,λ是平衡因子。
6.根据权利要求1所述的基于网络结构搜索的模型剪枝方法,其特征在于,
所述S6中的模型测试具体包括:使用测试数据输入模型进行测试,比对模型在剪枝前后的对同一目标识别结果的差异。
7.根据权利要求1所述的基于网络结构搜索的模型剪枝方法,其特征在于,
所述S6中的模型输出具体包括:将训练后参数最优的模型输出到*.h5文件,以方便模型移植到嵌入式设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311396457.4A CN117131920B (zh) | 2023-10-26 | 2023-10-26 | 一种基于网络结构搜索的模型剪枝方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311396457.4A CN117131920B (zh) | 2023-10-26 | 2023-10-26 | 一种基于网络结构搜索的模型剪枝方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117131920A CN117131920A (zh) | 2023-11-28 |
CN117131920B true CN117131920B (zh) | 2024-01-30 |
Family
ID=88851194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311396457.4A Active CN117131920B (zh) | 2023-10-26 | 2023-10-26 | 一种基于网络结构搜索的模型剪枝方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117131920B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021164752A1 (zh) * | 2020-02-21 | 2021-08-26 | 华为技术有限公司 | 一种神经网络通道参数的搜索方法及相关设备 |
CN114330644A (zh) * | 2021-12-06 | 2022-04-12 | 华中光电技术研究所(中国船舶重工集团公司第七一七研究所) | 一种基于结构搜索和通道剪枝的神经网络模型压缩方法 |
WO2022141754A1 (zh) * | 2020-12-31 | 2022-07-07 | 之江实验室 | 一种卷积神经网络通用压缩架构的自动剪枝方法及平台 |
CN114881136A (zh) * | 2022-04-27 | 2022-08-09 | 际络科技(上海)有限公司 | 基于剪枝卷积神经网络的分类方法及相关设备 |
CN115018039A (zh) * | 2021-03-05 | 2022-09-06 | 华为技术有限公司 | 一种神经网络蒸馏方法、目标检测方法以及装置 |
CN115688908A (zh) * | 2022-09-28 | 2023-02-03 | 东南大学 | 一种基于剪枝技术的高效神经网络搜索与训练方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113011570B (zh) * | 2021-04-30 | 2023-04-07 | 电子科技大学 | 一种采用神经网络压缩系统的人脸表情识别方法 |
US20230084203A1 (en) * | 2021-09-06 | 2023-03-16 | Baidu Usa Llc | Automatic channel pruning via graph neural network based hypernetwork |
US20230153623A1 (en) * | 2021-11-18 | 2023-05-18 | GM Global Technology Operations LLC | Adaptively pruning neural network systems |
-
2023
- 2023-10-26 CN CN202311396457.4A patent/CN117131920B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021164752A1 (zh) * | 2020-02-21 | 2021-08-26 | 华为技术有限公司 | 一种神经网络通道参数的搜索方法及相关设备 |
WO2022141754A1 (zh) * | 2020-12-31 | 2022-07-07 | 之江实验室 | 一种卷积神经网络通用压缩架构的自动剪枝方法及平台 |
CN115018039A (zh) * | 2021-03-05 | 2022-09-06 | 华为技术有限公司 | 一种神经网络蒸馏方法、目标检测方法以及装置 |
CN114330644A (zh) * | 2021-12-06 | 2022-04-12 | 华中光电技术研究所(中国船舶重工集团公司第七一七研究所) | 一种基于结构搜索和通道剪枝的神经网络模型压缩方法 |
CN114881136A (zh) * | 2022-04-27 | 2022-08-09 | 际络科技(上海)有限公司 | 基于剪枝卷积神经网络的分类方法及相关设备 |
CN115688908A (zh) * | 2022-09-28 | 2023-02-03 | 东南大学 | 一种基于剪枝技术的高效神经网络搜索与训练方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117131920A (zh) | 2023-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106776842B (zh) | 多媒体数据检测方法及装置 | |
CN114037844A (zh) | 基于滤波器特征图的全局秩感知神经网络模型压缩方法 | |
CN110807757B (zh) | 基于人工智能的图像质量评估方法、装置及计算机设备 | |
CN113128355A (zh) | 一种基于通道剪枝的无人机图像实时目标检测方法 | |
CN111833322B (zh) | 一种基于改进YOLOv3的垃圾多目标检测方法 | |
CN115035418A (zh) | 一种基于改进DeepLabV3+网络的遥感图像语义分割方法及系统 | |
CN112132279A (zh) | 卷积神经网络模型压缩方法、装置、设备及存储介质 | |
CN113159115B (zh) | 基于神经架构搜索的车辆细粒度识别方法、系统和装置 | |
CN111815209A (zh) | 应用于风控模型的数据降维方法及装置 | |
CN112150497A (zh) | 基于二值神经网络的局部激活方法与系统 | |
CN110472092B (zh) | 一种街景图片的地理定位方法及系统 | |
CN117131920B (zh) | 一种基于网络结构搜索的模型剪枝方法 | |
CN114511083A (zh) | 一种模型的训练方法、装置、存储介质及电子装置 | |
CN112395952A (zh) | 一种用于铁轨缺陷检测的无人机 | |
CN114139696A (zh) | 基于算法集成平台的模型处理方法、装置和计算机设备 | |
CN112131415B (zh) | 基于深度学习提高数据采集质量的方法和装置 | |
CN111339952A (zh) | 基于人工智能的图像分类方法、装置及电子设备 | |
CN113658217B (zh) | 一种自适应目标跟踪方法、装置及存储介质 | |
CN116415144A (zh) | 一种基于循环神经网络的模型压缩和加速方法 | |
CN115018884A (zh) | 基于多策略融合树的可见光红外视觉跟踪方法 | |
CN114972956A (zh) | 一种目标检测模型训练方法、装置、设备及存储介质 | |
CN109409226B (zh) | 一种基于级联优化cnn的手指静脉图质量评估方法及其装置 | |
CN110222657B (zh) | 单步人脸检测器优化系统、方法、装置 | |
CN111813975A (zh) | 一种图像检索方法、装置及电子设备 | |
CN116992944B (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 |