CN116451771A - 图像分类卷积神经网络压缩方法及芯粒器件数据分配方法 - Google Patents
图像分类卷积神经网络压缩方法及芯粒器件数据分配方法 Download PDFInfo
- Publication number
- CN116451771A CN116451771A CN202310701555.8A CN202310701555A CN116451771A CN 116451771 A CN116451771 A CN 116451771A CN 202310701555 A CN202310701555 A CN 202310701555A CN 116451771 A CN116451771 A CN 116451771A
- Authority
- CN
- China
- Prior art keywords
- filter
- input
- influence
- neural network
- output
- 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
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims abstract description 54
- 239000007771 core particle Substances 0.000 title claims abstract description 49
- 230000006835 compression Effects 0.000 title claims abstract description 20
- 238000007906 compression Methods 0.000 title claims abstract description 20
- 239000013598 vector Substances 0.000 claims abstract description 67
- 238000013138 pruning Methods 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims abstract description 27
- 238000010606 normalization Methods 0.000 claims abstract description 16
- 238000012216 screening Methods 0.000 claims abstract description 12
- 238000004364 calculation method Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 4
- 238000012549 training Methods 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000012805 post-processing Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 claims description 2
- 239000000523 sample Substances 0.000 claims 13
- 239000000758 substrate Substances 0.000 claims 2
- 238000013528 artificial neural network Methods 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 238000003062 neural network model Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000008188 pellet Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- 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
- Image Analysis (AREA)
Abstract
本发明涉及图像分类识别技术领域,特别涉及一种图像分类卷积神经网络压缩方法及芯粒器件数据分配方法,其中压缩方法包括:获取原始卷积神经网络模型;根据预设的第一剪枝率,对原始卷积神经网络模型中的滤波器进行随机剪枝;针对每个滤波器,分别计算各输入维对滤波器的输入影响因子,并进行归一化处理;针对每个滤波器,分别计算滤波器对各输出维的输出影响因子,并进行归一化处理;拼接归一化处理后的输入影响因子和输出影响因子,得到影响向量;基于各滤波器对应的影响向量,筛选待剪除的滤波器;剪除筛选出的滤波器,得到压缩后的图像分类卷积神经网络。本发明能够压缩卷积神经网络规模,为实现神经网络在移动端设备应用提供技术支持。
Description
技术领域
本发明实施例涉及图像分类识别技术领域,特别涉及一种图像分类卷积神经网络压缩方法及芯粒器件数据分配方法。
背景技术
卷积神经网络(CNN)是深度学习中的常见模型,可用于执行图像分类识别任务,如识别图像目标类型。为提高模型性能,通常会设置多层网络,即增加网络深度,但这会增加模型所需存储空间及计算成本,限制神经网络在移动端设备上的使用。
研究表明,深度卷积神经网络模型中通常存在大量冗余滤波器,这些滤波器彼此相似,相互之间可替代性较高。神经网络压缩旨在通过删减可替代的滤波器,降低模型复杂度,能够为实现神经网络在移动端设备应用提供技术支持。
发明内容
针对上述至少一部分不足之处,本发明实施例提供了一种图像分类卷积神经网络压缩方法,能够对卷积神经网络进行剪枝以实现网络压缩,为实现神经网络在移动端设备应用提供技术支持。
第一方面,本发明实施例提供了一种图像分类卷积神经网络压缩方法,包括:
获取已经训练好的用于进行图像分类的原始卷积神经网络模型;
根据预设的第一剪枝率,对所述原始卷积神经网络模型中的滤波器进行随机剪枝;所述第一剪枝率包括每层网络的剪枝率;
针对每个滤波器,分别计算各输入维对滤波器的输入影响因子,并对所有滤波器的输入影响因子进行归一化处理;
针对每个滤波器,分别计算滤波器对各输出维的输出影响因子,并对所有滤波器的输出影响因子进行归一化处理;
针对每个滤波器,拼接归一化处理后的输入影响因子和输出影响因子,得到影响向量;
基于各滤波器对应的影响向量,筛选待剪除的滤波器;
剪除筛选出的滤波器,得到压缩后的图像分类卷积神经网络。
可选地,输入维对滤波器的输入影响因子通过如下方式计算:
确定用于计算影响因子的输入数据样本集X={};其中/>表示所述输入数据样本集X中的第n个数据样本,所述输入数据样本集X所包括的数据样本类型不少于用于训练所述原始卷积神经网络模型的数据集所包括的数据样本类型,且不同类型的数据样本数量相同;
基于所述输入数据样本集X,确定不能使用所述输入数据样本集X第i个输入维信息的数据集Y={};其中第n个数据样本/>的表达式为:
和/>分别表示数据样本/>的第i个和第l个输入维,/>和/>分别表示数据样本/>的第m个和第l个输入维,n2表示数据样本的维度数,n1表示输入所述数据样本集X的数据样本总数;
计算不能使用第i个输入维信息所造成的第k个滤波器输出的平方根差异,作为第i个输入维对第k个滤波器的输入影响因子,表达式为:
其中,表示输入所述输入数据样本集X中的第n个数据样本/>时第k个滤波器的输出,/>表示输入数据集Y中的第n个的数据样本/>时第k个滤波器的输出;
所述对所有滤波器的输入影响因子进行归一化处理,包括:
计算归一化处理后第i个输入维对第k个滤波器的输入影响因子,表达式为:
。
可选地,滤波器对输出维的输出影响因子通过如下方式计算:
计算不能使用第k个滤波器输出信息所造成的第j个输出维的平方根差异,作为第k个滤波器对第j个输出维的输出影响因子,表达式为:
其中,表示输入所述输入数据样本集X中的第n个数据样本/>时模型的第j个输出维,/>表示输入所述输入数据样本集X中的第n个数据样本/>但将第k个滤波器的输出由/>修改为/>后模型的第j个输出维;
所述对所有滤波器的输出影响因子进行归一化处理,包括:
计算归一化后第k个滤波器对第j个输出维的输出影响因子,表达式为:
。
可选地,所述基于各滤波器对应的影响向量,筛选待剪除的滤波器,包括:
根据影响向量中各元素的数值大小及第一数值阈值进行筛选,若存在影响向量的各元素的数值均小于对应的第一数值阈值,则将该影响向量对应的滤波器选为待剪除的滤波器;所述第一数值阈值包括每个元素对应的阈值。
可选地,所述基于各滤波器对应的影响向量,筛选待剪除的滤波器,还包括:
基于预设的第二剪枝率判断是否继续筛选,是则继续,否则执行剪除滤波器步骤;所述第二剪枝率为相对模型整体的剪枝率;
根据影响向量之间的相似度,对滤波器进行聚类,得到聚类结果;
根据得到的所述聚类结果为各聚类类别分配剪除滤波器指标,分配的剪除滤波器指标与相应聚类类别中滤波器的数量成正比;
根据分配的剪除滤波器指标,在对应的聚类类别中选择待剪除滤波器。
可选地,影响向量之间的相似度根据影响向量之间的欧式距离或马氏距离确定。
可选地,所述根据分配的剪除滤波器指标,在对应的聚类类别中选择待剪除滤波器,包括,针对每个聚类类别执行如下操作:
根据各元素数值大小,对该聚类类别对应的所有影响向量进行从小到大的排序;
统计影响向量的所有排名,若存在滤波器,其对应的影响向量各元素排名之和小于预设的排名阈值,则将该滤波器选为待剪除滤波器;
判断待剪除滤波器数量是否满足分配的剪除滤波器指标,是则结束,否则去除待剪除滤波器对应的影响向量,返回对影响向量进行从小到大的排序的步骤。
第二方面,本发明实施例还提供了一种芯粒器件数据分配方法,包括:
应用于芯粒器件;所述芯粒器件包括输入输出端、集中缓存区、微控制器和多个芯粒资源单元;所述输入输出端用于交互数据,所述集中缓存区用于缓存数据,所述微控制器用于根据输入指令控制芯粒资源单元的连接关系,多个所述芯粒资源单元呈阵列式排布;
该芯粒器件数据分配方法包括如下步骤:
获取待分配芯粒器件的算力资源统计表;所述算力资源统计表的记载信息包括各芯粒资源单元的尺寸、位置、连接关系及算力大小;
基于如上述任一项所述的图像分类卷积神经网络压缩方法得到压缩后的图像分类卷积神经网络,划分运算任务集;
基于划分的所述运算任务集和所述算力资源统计表,为各芯粒资源单元分配计算任务;若一个子集对应的运算能够在同一芯粒资源单元中执行,则将该子集的运算集中于同一芯粒资源单元;
监控芯粒器件的工作状态,并定期基于芯粒器件的工作状态重新为各芯粒资源单元分配计算任务。
第三方面,本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的图像分类卷积神经网络压缩方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的图像分类卷积神经网络压缩方法。
本发明实施例提供了一种图像分类卷积神经网络压缩方法、电子设备及存储介质,本发明先对卷积神经网络模型进行随机剪枝以压缩网络规模,再根据每个滤波器对卷积神经网络模型输入-输出映射关系的影响程度对滤波器进行筛选,确定待剪除的滤波器;本发明能够得到性能较佳且规模较小的神经网络模型,有效减少图像分类卷积神经网络所需算力,为其在移动端等设备上应用提供技术支持。
本发明实施例还提供了一种芯粒器件数据分配方法,用于根据滤波器对输入-输出映射关系的影响程度将压缩后的卷积神经网络模型运算任务分配给不同的芯粒单元执行,能够实现数据的并行处理,减少相同或相似数据跨单元交互,提高处理效率,为在移动端等设备上使用深度卷积神经网络提供了技术支持。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种图像分类卷积神经网络压缩方法流程图;
图2是本发明一实施例提供的一种芯粒器件结构示意图;
图3是本发明一实施例提供的一种芯粒器件数据分配方法流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如前所述,深度卷积神经网络模型中通常存在大量冗余滤波器,这些滤波器彼此相似,相互之间可替代性较高。适当剪除部分冗余滤波器,能够节省模型所需存储空间及计算成本,提高处理效率,使得神经网络可以在移动端设备上应用。如何有效筛选出冗余滤波器而尽量不影响网络精度,成为神经网络压缩的关键。有鉴于此,本发明针对每个滤波器,分别计算各输入维对滤波器的输入影响及滤波器对各输出维的输出影响,以反映滤波器对模型图像分类识别任务的贡献程度,从而筛选并压缩贡献程度低的滤波器。
下面描述以上构思的具体实现方式。
请参考图1,本发明实施例提供了一种图像分类卷积神经网络压缩方法,该方法包括:
步骤100,获取已经训练好的用于进行图像分类的原始卷积神经网络模型;
卷积神经网络模型通常用于多目标分类任务,输入数据及输出数据均包括多个维度;
步骤102,根据预设的第一剪枝率,对所述原始卷积神经网络模型中的滤波器进行随机剪枝;所述第一剪枝率包括每层网络的剪枝率;
步骤104,针对每个滤波器,分别计算各输入维对滤波器的输入影响因子,并对所有滤波器的输入影响因子进行归一化处理;
步骤106,针对每个滤波器,分别计算滤波器对各输出维的输出影响因子,并对所有滤波器的输出影响因子进行归一化处理;
步骤108,针对每个滤波器,拼接归一化处理后的输入影响因子和输出影响因子,得到影响向量;
步骤110,基于各滤波器对应的影响向量,筛选待剪除的滤波器;
步骤112,剪除筛选出的滤波器,得到压缩后的图像分类卷积神经网络。
本发明实施例先对原始卷积神经网络模型进行随机剪枝以压缩部分滤波器,深度神经网络具有较高的鲁棒性,随机剪枝简单有效,能够快速压缩网络规模,且压缩后的网络再进行后续处理过程,所需算力显著降低;本发明针对每个滤波器,计算各输入维对滤波器的输入影响因子及滤波器对各输出维的输出影响因子,进而得到影响向量,并利用影响向量表征各滤波器在模型输入-输出映射之间的贡献程度,也即对模型图像分类识别任务的贡献程度,从而筛选出对输入-输出映射影响小、可替代性高的滤波器进行剪除,以便在尽量保持网络精度的前提下减少滤波器,实现高质量神经网络压缩。
下面描述图1所示的各个步骤的执行方式。
可选地,针对步骤100,训练所述原始卷积神经网络模型的数据集优选包括多种目标类型的数据样本,且不同类型的样本数量相同,避免单类型样本的特征过度影响滤波器性能;卷积神经网络的具体训练过程可参考现有技术,在此不再赘述。
可选地,针对步骤102,所述第一剪枝率中,每层网络的剪枝率可以相同也可以不同。优选地,网络层级越深,即越靠近模型的输出端,相应的剪枝率可以更高,以提高整体模型压缩率。
进一步地,步骤102还包括:
确定随机剪枝后的卷积神经网络模型的识别准确率相比所述原始卷积神经网络模型的识别准确率,是否下降超过预设的准确性阈值;
若是,则调整所述第一剪枝率后,重新对所述原始卷积神经网络模型进行随机剪枝;
若否,则继续执行后续步骤。
此步骤102优选以全新的数据集测试随机剪枝后的卷积神经网络模型。采用上述实施例,可避免在随机剪枝的阶段模型精度下降过快,避免剪除重要的滤波器。
可选地,针对步骤104,一个输入维对一个滤波器的输入影响因子,可通过如下方式计算:
确定用于计算影响因子的输入数据样本集X={};其中/>表示所述输入数据样本集X中的第n个数据样本,所述输入数据样本集X所包括的数据样本类型不少于用于训练所述原始卷积神经网络模型的数据集所包括的数据样本类型,且所述输入数据样本集X中不同类型的数据样本数量相同;
基于所述输入数据样本集X,确定不能使用所述输入数据样本集X第i个输入维信息的数据集Y={};其中第n个数据样本/>的第i个输入维为所述输入数据样本集X的数据样本均值,其他输入维相对数据样本/>不变,第n个数据样本/>的表达式为:
和/>分别表示数据样本/>的第i个和第l个输入维,/>和/>分别表示数据样本/>的第m个和第l个输入维,当/>、/>等输入维本身为向量,则∑求和表示向量中对应元素求和,n2表示数据样本/>的维度数,m=1,...,n2,l=1,...,n2且l≠i,n1表示所述输入数据样本集X的数据样本总数,n=1,...,n1;
计算不能使用第i个输入维信息所造成的第k个滤波器输出的平方根差异,作为第i个输入维对第k个滤波器的输入影响因子,表达式为:
其中,表示模型输入所述输入数据样本集X中的第n个数据样本/>时第k个滤波器的输出,/>表示模型输入数据集Y中的第n个的数据样本/>时第k个滤波器的输出。
上述实施例以不能使用第i个输入维信息所造成的第k个滤波器输出的平方根差异,作为评价输入数据对滤波器影响程度的因子。为简化计算,用于计算影响因子的输入数据样本集X可以是用于训练所述原始卷积神经网络模型的数据集的子集,但为了更加准确地反映滤波器对输入-输出映射造成的影响,输入数据样本集X应包括尽可能多类型的数据样本,以免单一类型的数据样本对输入影响因子的数值造成较大的干扰。采用上述方式得到影响因子,能够用于评价滤波器的重要程度,若输入影响因子很小,即表示滤波器对于第i个输入维不敏感,不能有效提取输入数据中第i个输入维的信息。
然后,对所有滤波器的输入影响因子进行归一化处理,包括:
计算归一化处理后第i个输入维对第k个滤波器的输入影响因子,表达式为:
其中表示所有输入影响因子中的最小值,/>表示所有输入影响因子中的最大值。
进一步地,针对步骤106,一个滤波器对一个输出维的输出影响因子,可通过如下方式计算:
计算不能使用第k个滤波器输出信息所造成的第j个输出维的平方根差异,作为第k个滤波器对第j个输出维的输出影响因子,表达式为:
其中,表示模型输入所述输入数据样本集X中的第n个数据样本/>时模型的第j个输出维,/>表示模型输入所述输入数据样本集X中的第n个数据样本/>但计算过程中将第k个滤波器的输出由/>修改为/>后模型的第j个输出维,n3表示模型输出结果的维度数,j=1,...,n3。
上述实施例以不能使用第k个滤波器输出信息所造成的第j个输出维的平方根差异,作为评价滤波器对输出结果影响程度的因子,若输出影响因子很小,即表示滤波器对于第j个输出维影响很小,也就是对于模型输出的部分最终结果影响较小。
然后,所述对所有滤波器的输出影响因子进行归一化处理,包括:
计算归一化后第k个滤波器对第j个输出维的输出影响因子,表达式为:
其中表示所有输出影响因子中的最小值,/>表示所有输出影响因子中的最大值。
采用上述实施例,对所有滤波器的输入影响因子和输出影响因子分别进行归一化处理,目的是平等地表征输入维对滤波器的影响和滤波器对输出维的影响,以便筛选出对输入-输出映射影响小的滤波器。
步骤108拼接归一化处理后的输入影响因子和输出影响因子,对于第k个滤波器,其影响向量={/>},对于1≤r≤n2,/>=/>,对于n2+1≤r≤n2+n3,/>=/>。
可选地,步骤110进一步包括:
步骤110-0,根据影响向量中各元素的数值大小及第一数值阈值进行筛选,若存在影响向量的各元素的数值均小于对应的第一数值阈值,则将该影响向量对应的滤波器选为待剪除的滤波器;所述第一数值阈值包括每个元素对应的阈值。
影响向量中各元素的数值均偏小,则表明该影响向量对应的滤波器既无法有效提取输入信息,也不对输出结果造成明显影响,其作用可以被其他滤波器替代,因而可以将其删除,以压缩神经网络。所述第一数值阈值可根据实际需要预先设置,也可根据得到的所有影响向量的平均值确定,也就是说,若一个影响向量各元素数值均低于所有影响向量对应元素数值的平均值,则可认为其是冗余的滤波器。
进一步地,步骤110还包括:
步骤110-2,基于预设的第二剪枝率判断是否继续筛选,是则继续,否则执行剪除滤波器步骤,即步骤112;所述第二剪枝率为相对图像分类卷积神经网络模型整体的剪枝率;
步骤110-4,根据影响向量之间的相似度,对滤波器进行聚类,得到聚类结果;
步骤110-6,根据得到的所述聚类结果为各聚类类别分配剪除滤波器指标,分配的剪除滤波器指标与相应聚类类别中滤波器的数量成正比;
步骤110-8,根据分配的剪除滤波器指标,在对应的聚类类别中选择待剪除滤波器。
根据影响向量中各元素的数值大小进行筛选后,若已选定足够的待剪除的滤波器,即选出的待剪除滤波器相对于模型滤波器总数已经达到第二剪枝率,则可直接执行下一步骤112,若仅根据元素的数值大小进行筛选,无法选定滤波器或选定的滤波器数量偏少,则可通过上述方式进一步筛选滤波器。上述实施例根据影响向量之间的相似度对滤波器进行聚类,认为同一聚类类别的滤波器执行的图像目标分类任务相似,而针对同一目标分类任务,影响向量数值更低的滤波器可替代性更高,因此针对各聚类类别分配剪除滤波器指标,从确定的、较为相似的滤波器之间挑选待剪除滤波器。
进一步地,影响向量之间的相似度可根据影响向量之间的欧式距离或马氏距离(马哈拉诺比斯距离)确定。
两个影响向量对应的各元素数值相差越小,表明两个滤波器在图像目标分类任务中的作用越相似。其他实施例中,也可采用其他方式来衡量两个影响向量之间的相似度。
进一步地,步骤110-8包括,针对每个聚类类别执行如下操作:
步骤S1、根据各元素数值大小,对该聚类类别对应的所有影响向量进行从小到大的排序;
步骤S2、统计影响向量的所有排名,若存在滤波器,其对应的影响向量各元素排名之和小于预设的排名阈值,则将该滤波器选为待剪除滤波器;
步骤S3、判断待剪除滤波器数量是否满足分配的剪除滤波器指标,是则结束,否则去除待剪除滤波器对应的影响向量,返回对影响向量进行从小到大的排序的步骤,即返回步骤S1。
上述实施例在各个聚类类别中根据各元素数值大小对聚类类别对应的所有影响向量进行排名,以便筛选出该聚类类别中多项元素数值相对偏小的影响向量。假设对于聚类类别A,有四个滤波器,对应的影响向量分别为A1=(0.1,0.2,0.1,0.2,0.2),A2=(0.2,0.3,0.0,0.4,0.2),A3=(0.3,0.3,0.6,0.6,0.4),A4=(0.0,0.3,0.6,0.6,0.5),则对于影响向量A1,各元素排名之和可表示为2+1+2+1+1=7,若预设排名阈值大于7,则认为影响向量A1对应的滤波器为待剪除滤波器。根据影响向量进行聚类后,认为同一聚类类别下的滤波器所执行的图像目标分类任务相似,在执行相似任务的一类滤波器中进一步挑选影响向量多项元素数值相对偏小的滤波器,能够更为精准、有效地发现冗余滤波器,同时保证有更重要的滤波器能够承担被剪除滤波器的任务。
可选地,针对步骤112,得到压缩的图像分类卷积神经网络后,可对其进行重训练,以提高模型精度。
剪枝后的卷积神经网络模型更加稀疏,所需算子显著减少,也更加有利于拆分神经网络的运算任务。芯粒器件采用多个封装在一起的芯粒单元相互配合实现复杂芯片的功能,各芯片单元执行拆分后的运算任务,能够实现数据的并行处理,提高处理效率,为在移动端等设备上使用深度卷积神经网络提供了技术支持。如图2和图3所示,本发明还提供了一种芯粒器件数据分配方法,应用于芯粒器件;如图2所示,所述芯粒器件包括输入输出端、集中缓存区、微控制器和多个芯粒资源单元;所述输入输出端用于交互数据,所述集中缓存区用于缓存数据,所述微控制器用于根据输入指令控制芯粒资源单元的连接关系,多个所述芯粒资源单元呈阵列式排布;
该芯粒器件数据分配方法包括如下步骤:
步骤300,获取待分配芯粒器件的算力资源统计表;所述算力资源统计表的记载信息包括各芯粒资源单元的尺寸、位置、连接关系及算力大小;
步骤302,基于如上述任一项实施例所述的图像分类卷积神经网络压缩方法得到压缩后的图像分类卷积神经网络,划分运算任务集;
步骤304,基于划分的所述运算任务集和所述算力资源统计表,为各芯粒资源单元分配计算任务;若一个子集对应的运算能够在同一芯粒资源单元中执行,则将该子集的运算集中于同一芯粒资源单元;优选地,若一个子集对应的运算无法在同一芯粒资源单元中执行,则优先分配相邻的芯粒资源单元执行;
步骤306,监控芯粒器件的工作状态,并定期基于芯粒器件的工作状态重新为各芯粒资源单元分配计算任务。
本发明提供的芯粒器件数据分配方法能够利用芯粒器件实现图像分类卷积神经网络功能,相对于大型芯片,芯粒器件有利于进一步优化算力分配,提升处理速度。
优选地,可认为聚类结果中同一聚类类别的滤波器所执行的图像目标分类任务相似。步骤302中,划分所述运算任务集时,优选将同一聚类类别的滤波器划分在同一子集中。芯粒器件将执行任务相似的滤波器放在相同或相近的芯粒单元,能够实现数据的并行处理,减少相同或相似数据跨单元交互,提高处理效率。
本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种图像分类卷积神经网络压缩方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种图像分类卷积神经网络压缩方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种图像分类卷积神经网络压缩方法,其特征在于,包括:
获取已经训练好的用于进行图像分类的原始卷积神经网络模型;
根据预设的第一剪枝率,对所述原始卷积神经网络模型中的滤波器进行随机剪枝;所述第一剪枝率包括每层网络的剪枝率;
针对每个滤波器,分别计算各输入维对滤波器的输入影响因子,并对所有滤波器的输入影响因子进行归一化处理;
针对每个滤波器,分别计算滤波器对各输出维的输出影响因子,并对所有滤波器的输出影响因子进行归一化处理;
针对每个滤波器,拼接归一化处理后的输入影响因子和输出影响因子,得到影响向量;
基于各滤波器对应的影响向量,筛选待剪除的滤波器;
剪除筛选出的滤波器,得到压缩后的图像分类卷积神经网络。
2.根据权利要求1所述的方法,其特征在于,
输入维对滤波器的输入影响因子通过如下方式计算:
确定用于计算影响因子的输入数据样本集X={};其中/>表示所述输入数据样本集X中的第n个数据样本,所述输入数据样本集X所包括的数据样本类型不少于用于训练所述原始卷积神经网络模型的数据集所包括的数据样本类型,且不同类型的数据样本数量相同;
基于所述输入数据样本集X,确定不能使用所述输入数据样本集X第i个输入维信息的数据集Y={};其中第n个数据样本/>的表达式为:
和/>分别表示数据样本/>的第i个和第l个输入维,/>和/>分别表示数据样本/>的第m个和第l个输入维,n2表示数据样本/>的维度数,n1表示输入所述数据样本集X的数据样本总数;
计算不能使用第i个输入维信息所造成的第k个滤波器输出的平方根差异,作为第i个输入维对第k个滤波器的输入影响因子,表达式为:
其中,表示输入所述输入数据样本集X中的第n个数据样本/>时第k个滤波器的输出,/>表示输入数据集Y中的第n个的数据样本/>时第k个滤波器的输出;
所述对所有滤波器的输入影响因子进行归一化处理,包括:
计算归一化处理后第i个输入维对第k个滤波器的输入影响因子,表达式为:
。
3.根据权利要求2所述的方法,其特征在于,
滤波器对输出维的输出影响因子通过如下方式计算:
计算不能使用第k个滤波器输出信息所造成的第j个输出维的平方根差异,作为第k个滤波器对第j个输出维的输出影响因子,表达式为:
其中,表示输入所述输入数据样本集X中的第n个数据样本/>时模型的第j个输出维,/>表示输入所述输入数据样本集X中的第n个数据样本/>但将第k个滤波器的输出由/>修改为/>后模型的第j个输出维;
所述对所有滤波器的输出影响因子进行归一化处理,包括:
计算归一化后第k个滤波器对第j个输出维的输出影响因子,表达式为:
。
4.根据权利要求3所述的方法,其特征在于,
所述基于各滤波器对应的影响向量,筛选待剪除的滤波器,包括:
根据影响向量中各元素的数值大小及第一数值阈值进行筛选,若存在影响向量的各元素的数值均小于对应的第一数值阈值,则将该影响向量对应的滤波器选为待剪除的滤波器;所述第一数值阈值包括每个元素对应的阈值。
5.根据权利要求4所述的方法,其特征在于,
所述基于各滤波器对应的影响向量,筛选待剪除的滤波器,还包括:
基于预设的第二剪枝率判断是否继续筛选,是则继续,否则执行剪除滤波器步骤;所述第二剪枝率为相对模型整体的剪枝率;
根据影响向量之间的相似度,对滤波器进行聚类,得到聚类结果;
根据得到的所述聚类结果为各聚类类别分配剪除滤波器指标,分配的剪除滤波器指标与相应聚类类别中滤波器的数量成正比;
根据分配的剪除滤波器指标,在对应的聚类类别中选择待剪除滤波器。
6.根据权利要求5所述的方法,其特征在于,
影响向量之间的相似度根据影响向量之间的欧式距离或马氏距离确定。
7.根据权利要求6所述的方法,其特征在于,
所述根据分配的剪除滤波器指标,在对应的聚类类别中选择待剪除滤波器,包括,针对每个聚类类别执行如下操作:
根据各元素数值大小,对该聚类类别对应的所有影响向量进行从小到大的排序;
统计影响向量的所有排名,若存在滤波器,其对应的影响向量各元素排名之和小于预设的排名阈值,则将该滤波器选为待剪除滤波器;
判断待剪除滤波器数量是否满足分配的剪除滤波器指标,是则结束,否则去除待剪除滤波器对应的影响向量,返回对影响向量进行从小到大的排序的步骤。
8.一种芯粒器件数据分配方法,其特征在于,应用于芯粒器件;所述芯粒器件包括输入输出端、集中缓存区、微控制器和多个芯粒资源单元;所述输入输出端用于交互数据,所述集中缓存区用于缓存数据,所述微控制器用于根据输入指令控制芯粒资源单元的连接关系,多个所述芯粒资源单元呈阵列式排布;
该芯粒器件数据分配方法包括如下步骤:
获取待分配芯粒器件的算力资源统计表;所述算力资源统计表的记载信息包括各芯粒资源单元的尺寸、位置、连接关系及算力大小;
基于如权利要求1-7中任一项所述的图像分类卷积神经网络压缩方法得到压缩后的图像分类卷积神经网络,划分运算任务集;
基于划分的所述运算任务集和所述算力资源统计表,为各芯粒资源单元分配计算任务;若一个子集对应的运算能够在同一芯粒资源单元中执行,则将该子集的运算集中于同一芯粒资源单元;
监控芯粒器件的工作状态,并定期基于芯粒器件的工作状态重新为各芯粒资源单元分配计算任务。
9.一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如权利要求1-7中任一项所述的图像分类卷积神经网络压缩方法。
10.一种存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项所述的图像分类卷积神经网络压缩方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310701555.8A CN116451771B (zh) | 2023-06-14 | 2023-06-14 | 图像分类卷积神经网络压缩方法及芯粒器件数据分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310701555.8A CN116451771B (zh) | 2023-06-14 | 2023-06-14 | 图像分类卷积神经网络压缩方法及芯粒器件数据分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116451771A true CN116451771A (zh) | 2023-07-18 |
CN116451771B CN116451771B (zh) | 2023-09-15 |
Family
ID=87134084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310701555.8A Active CN116451771B (zh) | 2023-06-14 | 2023-06-14 | 图像分类卷积神经网络压缩方法及芯粒器件数据分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116451771B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263841A (zh) * | 2019-06-14 | 2019-09-20 | 南京信息工程大学 | 一种基于滤波器注意力机制和bn层缩放系数的动态结构化网络剪枝方法 |
CN111079899A (zh) * | 2019-12-05 | 2020-04-28 | 中国电子科技集团公司信息科学研究院 | 神经网络模型压缩方法、系统、设备及介质 |
CN112288087A (zh) * | 2020-11-11 | 2021-01-29 | 上海依图网络科技有限公司 | 一种神经网络剪枝方法、装置、电子设备及存储介质 |
CN112800977A (zh) * | 2021-01-30 | 2021-05-14 | 北京工业大学 | 基于多粒度卷积神经网络剪枝的教师板书动作识别方法 |
US20210265018A1 (en) * | 2020-02-20 | 2021-08-26 | Illumina, Inc. | Knowledge Distillation and Gradient Pruning-Based Compression of Artificial Intelligence-Based Base Caller |
US20220036189A1 (en) * | 2020-07-30 | 2022-02-03 | Vanessa COURVILLE | Methods, systems, and media for random semi-structured row-wise pruning in neural networks |
CN114118406A (zh) * | 2021-10-28 | 2022-03-01 | 哈尔滨工业大学 | 一种卷积神经网络的量化压缩方法 |
CN114330714A (zh) * | 2022-03-08 | 2022-04-12 | 北京环境特性研究所 | 卷积神经网络剪枝优化方法、装置、电子设备及存储介质 |
JP2022079947A (ja) * | 2020-11-17 | 2022-05-27 | 株式会社日立ソリューションズ・テクノロジー | プルーニング管理装置、プルーニング管理システム及びプルーニング管理方法 |
WO2023005085A1 (zh) * | 2021-07-29 | 2023-02-02 | 浪潮电子信息产业股份有限公司 | 一种神经网络的剪枝方法、装置、设备及存储介质 |
-
2023
- 2023-06-14 CN CN202310701555.8A patent/CN116451771B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263841A (zh) * | 2019-06-14 | 2019-09-20 | 南京信息工程大学 | 一种基于滤波器注意力机制和bn层缩放系数的动态结构化网络剪枝方法 |
CN111079899A (zh) * | 2019-12-05 | 2020-04-28 | 中国电子科技集团公司信息科学研究院 | 神经网络模型压缩方法、系统、设备及介质 |
US20210265018A1 (en) * | 2020-02-20 | 2021-08-26 | Illumina, Inc. | Knowledge Distillation and Gradient Pruning-Based Compression of Artificial Intelligence-Based Base Caller |
US20220036189A1 (en) * | 2020-07-30 | 2022-02-03 | Vanessa COURVILLE | Methods, systems, and media for random semi-structured row-wise pruning in neural networks |
CN112288087A (zh) * | 2020-11-11 | 2021-01-29 | 上海依图网络科技有限公司 | 一种神经网络剪枝方法、装置、电子设备及存储介质 |
JP2022079947A (ja) * | 2020-11-17 | 2022-05-27 | 株式会社日立ソリューションズ・テクノロジー | プルーニング管理装置、プルーニング管理システム及びプルーニング管理方法 |
CN112800977A (zh) * | 2021-01-30 | 2021-05-14 | 北京工业大学 | 基于多粒度卷积神经网络剪枝的教师板书动作识别方法 |
WO2023005085A1 (zh) * | 2021-07-29 | 2023-02-02 | 浪潮电子信息产业股份有限公司 | 一种神经网络的剪枝方法、装置、设备及存储介质 |
CN114118406A (zh) * | 2021-10-28 | 2022-03-01 | 哈尔滨工业大学 | 一种卷积神经网络的量化压缩方法 |
CN114330714A (zh) * | 2022-03-08 | 2022-04-12 | 北京环境特性研究所 | 卷积神经网络剪枝优化方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
AKIHIRO IMAMURA;NANA ARIZUMI: "Gabor Filter Incorporated CNN for Compression", IEEE * |
任虹珊: "基于深度压缩的卷积神经网络压缩算法研究", 硕士电子期刊 * |
Also Published As
Publication number | Publication date |
---|---|
CN116451771B (zh) | 2023-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110263673B (zh) | 面部表情识别方法、装置、计算机设备及存储介质 | |
WO2023024407A1 (zh) | 基于相邻卷积的模型剪枝方法、装置及存储介质 | |
WO2019214248A1 (zh) | 一种风险评估方法、装置、终端设备及存储介质 | |
US20170161409A1 (en) | System and Method for Modelling Time Series Data | |
CN109189767B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN114330714B (zh) | 卷积神经网络剪枝优化方法、装置、电子设备及存储介质 | |
CN116402117B (zh) | 图像分类卷积神经网络剪枝方法及芯粒器件数据分配方法 | |
WO2023226423A1 (zh) | 一种芯片辅助设计方法、装置、设备及非易失性存储介质 | |
CN107168995B (zh) | 一种数据处理方法及服务器 | |
CN110826618A (zh) | 一种基于随机森林的个人信用风险评估方法 | |
CN110083639A (zh) | 一种基于聚类分析的数据血缘智能溯源的方法及装置 | |
CN108629375B (zh) | 电力客户分类方法、系统、终端及计算机可读存储介质 | |
CN111898675B (zh) | 信贷风控模型生成方法、装置、评分卡生成方法、机器可读介质及设备 | |
CN112036476A (zh) | 基于二分类业务的数据特征选择方法、装置及计算机设备 | |
CN117236278B (zh) | 一种基于数字孪生技术的芯片生产仿真方法及系统 | |
CN110956277A (zh) | 一种交互式的迭代建模系统及方法 | |
CN111461815B (zh) | 订单识别模型生成方法、识别方法、系统、设备和介质 | |
CN105426425A (zh) | 一种基于移动信令的大数据营销方法 | |
CN109255368B (zh) | 随机选取特征的方法、装置、电子设备及存储介质 | |
CN112395273A (zh) | 一种数据处理方法及装置、存储介质 | |
CN116451771B (zh) | 图像分类卷积神经网络压缩方法及芯粒器件数据分配方法 | |
CN112199388A (zh) | 陌电识别方法、装置、电子设备及存储介质 | |
CN110047509B (zh) | 一种两级子空间划分方法及装置 | |
CN116527398A (zh) | 物联网卡风险识别方法、装置、设备及存储介质 | |
CN115423600B (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 |