一种基于相似性剪枝和高效模块的轻量化图像分类方法技术

技术编号:33960091 阅读:15 留言:0更新日期:2022-06-30 00:21
该发明专利技术公开了一种基于相似性剪枝和高效模块的轻量化图像分类方法,属于图像处理领域。本发明专利技术首先训练原始图像分类卷积神经网络,采用基于相似度的剪枝方式,优先移除图像分类卷积神经网络同一个卷积层中相同的或者相似的神经元,这种剪枝方式,相比现有剪枝方法优先去除神经网络中不重要的神经元对模型性能损伤更小;此外,该方法可以基于实际需要部署的设备的性能设置剪枝后模型的大小和计算量,从而得到特定资源限制下最优的网络模型参数;使用高效卷积模块替换标准卷积核,保证分类精度的情况下,降低图像分类卷积神经网络的参数量以及计算量。的参数量以及计算量。的参数量以及计算量。

【技术实现步骤摘要】
一种基于相似性剪枝和高效模块的轻量化图像分类方法


[0001]本专利技术属于图像分类领域,具体涉及图像分类网络轻量化方法。

技术介绍

[0002]近年来,深度神经网络成为人工智能领域的研究热点,且被广泛应用在计算机视觉、自然语言处理等许多不同的领域,并在图像分类等很多实际任务上都取得了巨大的性能提升。这些成功都依赖于深度神经网络成千上万的参数,以及具有强大性能的计算设备。然而,深度神经网络模型复杂、计算量巨大的特点阻碍了它们在内存资源低的设备或对延迟要求严格的应用中的部署,由于很多实际应用场景中并不具备很高的计算能力和存储条件,并且对实时性有硬性需求,例如移动终端和自动驾驶环境,这使得深度神经网络很难实际部署到这些低存储、低功耗的小型设备上。因而轻量化的深度神经网络设计及模型压缩具有重大的理论研究意义和实际应用价值。

技术实现思路

[0003]本专利技术要解决的问题是,针对已有的图像分类方法中分类网络由于内存和计算能力限制无法部署到边缘移动设备问题。
[0004]本专利技术提供了一种基于相似性剪枝和高效模块的轻量化图像分类方法,包括下列步骤:
[0005]步骤1:训练一个原始图像分类卷积神经网络;
[0006]步骤2:计算该图像分类卷积神经网络中所有卷积层输出特征图的平均秩,并基于平均秩计算每个卷积层内卷积核间的信息相似度is;
[0007]步骤3:计算图像分类卷积神经网络中所有卷积层中卷积核间的余弦相似度cs;
[0008]步骤4:将信息相似度is和余弦相似度cs进行加权,计算卷积神经网络中每个卷积层内卷积核间的相似度s;然后计算各个卷积核的冗余指数redu,冗余指数redu表示该卷积核与层内其余所有卷积核的像是度;
[0009]步骤5:对图像分类卷积神经网络进行剪枝;
[0010]步骤5.1:根据设定的网络每层的剪枝率计算每层需要移除的卷积核个数m;
[0011]步骤5.2:将图像分类卷积神经网络对应卷积层中冗余指数最大的m个卷积核移除;移除本层的卷积核的同时将其对应的特征图移除,还要将下一层对应的通道维度移除;
[0012]步骤6:采用步骤1相同的方法对步骤5得到的剪枝后的网络进行训练,直到收敛;
[0013]步骤7:使用高效卷积模块对步骤6得到的神经网络中的卷积核进行替换;步骤6中得到网络:输入为w*h*C
in
的输入特征图,使用C
out
个K*K*C
in
的卷积核,最终生成C
out
个输出特征图;其中,w、h、C
in
分别表示输入特征图的宽、高、通道数,K为卷积核尺寸,C
out
我输出特征图的通道数;替换为:首先使用C
in
个K*K*1的卷积核做深度卷积,结合C
out
/2个1*1*C
in
的卷积核做点卷积得到个特征图,再使用个K*K*1的卷积核对得到的个特征图做深
度卷积得到另外个特征图,最后组合为C
out
个输出特征图;
[0014]步骤8:对步骤7得到的卷积神经网络重新进行训练,直到收敛;
[0015]步骤9:采用步骤8得到的神经网络对图像进行识别。
[0016]进一步地,所述步骤1具体方法为:
[0017]步骤1.1:获取图像数据,图像数据中包含所有待识别的目标,计算图像平均尺寸,对大于平均尺寸的图像采用下采样的方式,小的图像采用双线性插值的方式实现图像的归一化;在图像归一化的过程中,保持原有图像的长宽比,不足的部分使用0像素填充;
[0018]步骤1.2:根据图像中的目标对图像添加对应的标签,将添加标签的图像分为训练数据和测试数据;
[0019]步骤1.3:根据图像分类任务需要,建立原始图像分类卷积神经网络,并采用训练数据和测试数据对图像分类卷积神经网络进行训练,直到达到设定的准确率。
[0020]进一步地,所述步骤2包含如下过程:
[0021]步骤2.1:从数据集中随机采样N张图片作为样本集,将样本集送入训练好的卷积神经网络,每个卷积核生成N张特征图,计算每个卷积核对应特征图的平均秩:
[0022][0023]其中表示将二维特征图视为二维矩阵,对其求矩阵的秩;
[0024]步骤2.2:第i层卷积神经网络的第j个卷积核和第j+1个卷积核之间的信息相似度为:
[0025][0026]进一步地,所述步骤3包含如下过程:
[0027]第i层卷积神经网络的第j个卷积核和第j+1个卷积核之间的余弦相似度为:
[0028][0029]其中,resize(
·
)表示将卷积核展开成一维向量,||x||表示x的l2范数,表示和的内积。
[0030]进一步的,所述步骤4的具体方法为:
[0031]步骤4.1:第i层卷积神经网络的第j个卷积核和第j+1个卷积核之间的相似度系数为:
[0032][0033]其中λ用来调整余弦相似度和信息相似度的权重。
[0034]步骤4.2:冗余指数衡量与第i层所有其他卷积核的相似程度:
[0035][0036]本专利技术的有益效果是,采用基于相似度的剪枝方式,优先移除图像分类卷积神经网络同一个卷积层中相同的或者相似的神经元,这种剪枝方式,相比现有剪枝方法优先去除神经网络中不重要的神经元对模型性能损伤更小;此外,该方法可以基于实际需要部署的设备的性能(如内存和计算能力)设置剪枝后模型的大小和计算量,从而得到特定资源限制下最优的网络模型参数;使用高效卷积模块替换标准卷积核,进一步降低图像分类卷积神经网络的参数量以及计算量。
附图说明
[0037]图1为本专利技术方法框架示意图;
[0038]图2为普通卷积与本专利技术高效模块的对比;
[0039]图3为本专利技术在使用Cifar

10数据集对VGG16模型上的剪枝结果与其它方法的比较。Top

Acc表示模型精度,Para.表示模型的参数量,单位为MB,括号内CR表示参数压缩率,FLOPs表示模型推理的乘加次数,单位为M,括号内SR表示推理加速比;
[0040]图4为Cifar

10上VGG16模型Loss收敛曲线
[0041]图5为VGG16模型13个卷积层三种不同情况的各层剪枝率;
[0042]图6为本专利技术具体实施方式中VGG16网络结构。
具体实施方式
[0043]下面结合本专利技术实施例的附图,对本专利技术的方法的具体实施方式进一步阐述,需要说明的是,下面的实验及相关结果仅用于说明本专利技术,而不限制本专利技术的范围。
[0044]本专利技术实施例在TITAN X服务器上进行实现,采用Pytorch深度学习框架,在Cifar

10数据集上对VGG

16模型进行轻量化,轻量化流程图如图1所示,本专利技术实本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于相似性剪枝和高效模块的轻量化图像分类方法,包括下列步骤:步骤1:训练一个原始图像分类卷积神经网络;步骤2:计算该图像分类卷积神经网络中所有卷积层输出特征图的平均秩,并基于平均秩计算每个卷积层内卷积核间的信息相似度is;步骤3:计算图像分类卷积神经网络中所有卷积层中卷积核间的余弦相似度cs;步骤4:将信息相似度is和余弦相似度cs进行加权,计算卷积神经网络中每个卷积层内卷积核间的相似度s;然后计算各个卷积核的冗余指数redu,冗余指数redu表示该卷积核与层内其余所有卷积核的像是度;步骤5:对图像分类卷积神经网络进行剪枝;步骤5.1:根据设定的网络每层的剪枝率计算每层需要移除的卷积核个数m;步骤5.2:将图像分类卷积神经网络对应卷积层中冗余指数最大的m个卷积核移除;移除本层的卷积核的同时将其对应的特征图移除,还要将下一层对应的通道维度移除;步骤6:采用步骤1相同的方法对步骤5得到的剪枝后的网络进行训练,直到收敛;步骤7:使用高效卷积模块对步骤6得到的神经网络中的卷积核进行替换;步骤6中得到网络:输入为w*h*C
in
的输入特征图,使用C
out
个K*K*C
in
的卷积核,最终生成C
out
个输出特征图;其中,w、h、C
in
分别表示输入特征图的宽、高、通道数,K为卷积核尺寸,C
out
我输出特征图的通道数;替换为:首先使用C
in
个K*K*1的卷积核做深度卷积,结合C
out
/2个1*1*C
in
的卷积核做点卷积得到个特征图,再使用个K*K*1的卷积核对得到的个特征图做深度卷积得到另外个特征图,最后组合为C
out
个输出特征图;步骤8:对步骤7得到的卷积神经...

【专利技术属性】
技术研发人员:苏冬颜庆义樊杰
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1