掌桥专利:专业的专利平台
掌桥专利
首页

基于FPCC-GAN的构建轻型图像分类网络的方法及系统

文献发布时间:2023-06-19 10:48:02


基于FPCC-GAN的构建轻型图像分类网络的方法及系统

技术领域

本发明涉及深度神经网络压缩与加速中参数剪枝的技术领域,具体地说是一种基于FPCC-GAN的构建轻型图像分类网络的方法及系统。

背景技术

深度神经网络越来越广泛地应用在图像理解、自然语言处理、语音识别等许多领域,但数据存储与计算量等多种因素都会限制深度神经网络在便携、嵌入式设备上的应用。网络压缩与加速是近年来深度神经网络研究中的热点领域,其目标是减小模型存储开销和计算成本,使深度神经网络可应用于自动驾驶等实时应用,另一目的是将网络部署到移动端。如果要将深度神经网络移植到智能化移动嵌入式设备等在线学习和识别任务,实时行人监测识别系统、无人驾驶等,或要在一个板上或者一个小小的芯片上实现应用,必须压缩模型以实现落地。如实时行人监测识别系统,监控视频的画面准确识别出机动车和非机动车的种类以及行人的年龄、性别、穿着等,利用计算机视觉技术,判断图像或者视频序列中是否存在行人,并给予精确定位;将视觉定位、视觉识别等技术与人工智能技术相结合,在智能设备监控、人体行为分析、智能交通等多个方面得到了广泛应用。

深度神经网络压缩与加速的研究大致可以分为五类,具体如下:

①参数剪枝:将已训练完成的深度神经网络模型中提取冗余特征、包含少量信息的权值移除,进而压缩模型的存储空间并加速模型的计算,同时合理的剪枝能防止模型过拟合;

②低质分解:基于张量的低秩近似理论,将原始张量降维分解为两个或多个张量,并对分解后的张量进行优化调整;

③紧凑网络设计:不压缩已有的网络,重新构建小而紧凑的网络模型;

④权值量化:通过降低表示每个权值所需要的比特数来压缩原始网络;

⑤知识蒸馏:类似迁移学习,迁移学习的原理是将一个网络模型的性能迁移到另一个网络模型上,知识蒸馏将已训练好的复杂网络模型所学到的“知识”迁移到一个结构较为简单的网络模型中。

深度神经网络压缩与加速的研究重点是如何设计出更好的压缩方法,去掉冗余的网络结构以获得计算成本相对较低的神经网络模型,同时,还应保持较高的精度。虽然众多研究者做了很多工作,但目前深度神经网络压缩与加速的的研究中还存在如下问题:

(1)、非结构化剪枝成本过高:参数剪枝分为结构化剪枝和非结构化剪枝。非结构化剪枝直接修剪网络中低于阈值的权值,这种做法会造成网络非结构化稀疏,引起不规则的内存获取,因此不适合并行计算。此外网络的非结构化稀疏性使其需要使用专门的软件和硬件进行计算,实现非常困难并且造价昂贵;而结构化剪枝以通道、卷积核或滤波器为修剪单位,留下一个具有规则结构的网络模型,不依赖硬件软件,降低了计算成本,加速了推理;

(2)、范数准则局限性带来修剪范数值小但重要的滤波器的风险:如附图2所示,曲线代表网络的理想滤波器范数分布,a

1)、范数偏差小:滤波器范数分布的偏差可能太小,这意味着范数值集中在一个很小的区间内,如附图3所示,小的范数偏差会造成较小的搜索空间,导致很难找到合适的阈值来选择要修剪的滤波器;

2)、最小范数大:滤波器的最小范数值不够小,如附图4所示,在这种情况,每个滤波器都具有很高的信息量,那些因范数值相对较小而被认为是不重要的滤波器仍然对网络有重要的贡献,因此,修剪这些滤波器会对网络产生负面影响;

3)、依赖标签训练:难以利用少量标记数据或大量未标记数据进行学习,需要人工标注训练数据,增加了网络训练成本。

综上所述,如何构建用于图像分类的轻型网络,克服现有参数化剪枝成本高、范数准则局限性及依赖标签训练的缺点是目前亟待解决的技术问题。

发明内容

本发明的技术任务是提供一种基于FPCC-GAN的构建轻型图像分类网络的方法及系统,来解决如何构建用于图像分类的轻型网络,克服现有参数化剪枝成本高、范数准则局限性及依赖标签训练的缺点的问题。

本发明的技术任务是按以下方式实现的,一种基于FPCC-GAN的构建轻型图像分类网络的方法,该方法具体如下:

将数据集图像随机输入预训练好的分类网络,得到包含准确语义信息的特征图;

随机初始化网络参数:按正态分布随机初始化待剪枝的分类网络与对抗判别器中的参数,将数据集图像输入网络模型;

训练待剪枝的分类网络与判别器的网络参数,通过L2距离约束,使其生成特征图的语义信息逐步与预训练网络产生的正确语义之间欧氏距离介于0.06-0.2;

计算待剪枝的分类网络中每层卷积层中滤波器的聚类中心,根据各卷积层中滤波器距离聚类中心的距离,按照剪枝比例去除距离小于阀值的滤波器;

迭代进行参数更新与网络剪枝,直至达到规定迭代次数且已获得数据集图像对应的正确语义,得到此时剪枝后的网络参数;其中,预训练网络的特征图和剪枝后网络的特征图的欧氏距离小于0.2;

根据预先设定的参数剪枝率λ,输出参数量为原来(1-λ)%、浮点运算量为原分类网络70%以下的新网络,且新网络输出的图像分类准确率与原分类网络输出的分类准确率的误差在1%以内。

作为优选,所述特征图形成过程如下:

数据集中包括现实场景中各类图像,随机选取图像输入预训练好的网络,经过卷积层提取出与目标种类相关的纹理或结构特征形成特征图。

作为优选,所述预训练好的分类网络包括VGG-16、VGG-19、GoogLeNet、ResNet-56、ResNet-20、ResNet-34或ResNet-110;

所述数据集包括CIFAR-10、MNIST和SVHN。

作为优选,所述待剪枝的分类网络的目标优化函数为:

其中,L

其中,p

L

其中,n表示批次的大小。

更优地,计算待剪枝的分类网络中每层卷积层中滤波器的聚类中心,根据各卷积层中滤波器距离聚类中心的距离,按照剪枝比例去除距离小于阀值的滤波器具体如下:

设一个剪枝网络有L层,N

使用K-means算法求出{F

k=K×N

其中,K是聚类中心比例,k向上取整;

计算第j*∈[1,k]簇中剩余滤波器到聚类中心

P=λ×(N

将P对应的距离作为距离阈值d

一种基于FPCC-GAN的构建用于图像分类的轻型网络的系统,该系统包括,

对照模块,用于将数据集图像随机输入预训练好的网络,经过卷积层提取出与目标种类相关的纹理或结构特征形成特征图,得到包含准确语义信息的特征图;其中,数据集中包括现实场景中各类图像;

随机初始化模块,用于按正态分布随机初始化待剪枝的分类网络与对抗判别器中的参数,将数据集图像输入网络模型;

网络剪枝模块,用于计算待剪枝的分类网络中每层卷积层中滤波器的聚类中心,根据各卷积层中滤波器距离聚类中心的距离,按照剪枝比例去除距离小于阀值的滤波器;

参数更新模块,用于训练待剪枝的分类网络与判别器的网络参数,通过L2距离约束,使其生成特征图的语义信息逐步与预训练网络产生的正确语义之间欧氏距离介于0.06-0.2;

迭代模块,用于迭代进行网络剪枝与参数更新模块,直至达到设定迭代次数且已获得数据集图像对应的正确语义,得到剪枝后的分类网络参数;其中,预训练网络的特征图和剪枝后网络的特征图的欧氏距离小于0.2;

输出模块,用于根据预先设定的参数剪枝率λ,输出参数量为原来(1-λ)%、浮点运算量为原分类网络70%以下的新网络,且新网络输出的图像分类准确率与原分类网络输出的分类准确率的误差在1%以内。

作为优选,所述待剪枝的分类网络的目标优化函数为:

其中,L

其中,p

L

其中,n表示批次的大小。

更优地,所述剪枝模块的工作过程具体如下:

设一个剪枝网络有L层,N

使用K-means算法求出{F

k=K×N

其中,K是聚类中心比例,k向上取整;

计算第j*∈[1,k]簇中剩余滤波器到聚类中心

P=λ×(N

将P对应的距离作为距离阈值d

一种电子设备,包括:存储器和至少一个处理器;

其中,所述存储器上存储有计算机程序;

所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的基于FPCC-GAN的构建轻型图像分类网络的方法。

一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的基于FPCC-GAN的构建轻型图像分类网络的方法。

本发明的基于FPCC-GAN的构建轻型图像分类网络的方法及系统具有以下优点:本发明不仅去除范数准则局限性,对含有冗余信息、最可替换的滤波器进行修剪,提取保留最具代表性的特征,而且加入生成对抗学习,实现无标签训练剪枝。

附图说明

下面结合附图对本发明进一步说明。

附图1为基于FPCC-GAN的构建轻型图像分类网络的方法的示意图;

附图2为背景技术中滤波器理想范数分布图;

附图3为背景技术中滤波器范数的理想分布图;

附图4为背景技术中滤波器范数的实际分布图;

附图5为同剪枝比例对Accuracy的影响图;

附图6为不同剪枝比例对FLOPs的影响图;

附图7为聚类中心比例对Accuracy的影响图。

具体实施方式

参照说明书附图和具体实施例对本发明的基于FPCC-GAN的构建轻型图像分类网络的方法及系统作以下详细地说明。

实施例1:

本发明的基于FPCC-GAN的构建轻型图像分类网络的方法,该方法具体如下:

S1、将数据集图像随机输入预训练好的分类网络,得到包含准确语义信息的特征图;

S2、随机初始化网络参数:按正态分布随机初始化待剪枝的分类网络与对抗判别器中的参数,将数据集图像输入网络模型;

S3、训练待剪枝的分类网络与判别器的网络参数,通过L2距离约束,使其生成特征图的语义信息逐步逼近预训练网络产生的正确语义,目标使两网络特征图之间欧氏距离介于0.06-0.2;

S4、计算待剪枝的分类网络中每层卷积层中滤波器的聚类中心,根据各卷积层中滤波器距离聚类中心的距离,按照剪枝比例去除距离小于阀值的滤波器;

S5、迭代循环步骤S3和步骤S4,直至达到规定迭代次数且已获得数据集图像对应的正确语义(步骤S3中两网络特征图欧氏距离小于0.2),得到此时剪枝后的网络参数。

S6、根据预先设定的参数剪枝率λ,输出参数量为原来(1-λ)%、浮点运算量为原分类网络70%以下的新网络,且新网络输出的图像分类准确率与原分类网络输出的分类准确率的误差在1%以内。

本实施例中步骤S1中的特征图形成过程如下:

数据集中包括现实场景中各类图像,随机选取图像输入预训练好的网络,经过卷积层提取出与目标种类相关的纹理或结构特征形成特征图。

本实施例中步骤S3中待剪枝的分类网络的目标优化函数为:

其中,L

其中,p

L

其中,n表示批次的大小。

本实施例中步骤S4中的计算待剪枝的分类网络中每层卷积层中滤波器的聚类中心,根据各卷积层中滤波器距离聚类中心的距离,按照剪枝比例去除距离小于阀值的滤波器具体如下:

S401、设一个剪枝网络有L层,N

S402、使用K-means算法求出{F

k=K×N

其中,K是聚类中心比例,k向上取整;

S403、计算第j*∈[1,k]簇中剩余滤波器到聚类中心

P=λ×(N

S404、将P对应的距离作为距离阈值d

本实施例中本发明在CIFAR-10、MNIST和SVHN三个数据集上进行了评估。如表所示,CIFAR-10数据集含有60,000张32×32像素的彩色图片,并分为10个类别,其中包括50,000幅训练图片和10,000幅测试图片。SVHN数据集是Google街景图片中的门牌号数字,所有数字为32×32像素的固定分辨率,训练集中包含73,257个数字,测试集中包含26,032个数字。MNIST数据集是机器学习领域中非常经典的一个数据集,由60,000个训练样本和10,000个测试样本组成,每个样本都是28×28像素的灰度手写数字图片。

数据集

实施例2:

如附图1所示,将剪枝网络作为生成器(Generator),把图片分别输入预训练网络(Pretrained net)和随机初始化的剪枝网络。剪枝网络内的方框代表某一卷积层的滤波器(Filter)和滤波器聚类中心(CC),虚线框代表离CC较近的滤波器,将这些滤波器修剪后右边相应的特征图(Feature map)也会被修剪,不再提取冗余特征。为对齐预训练网络和剪枝网络,将两个网络的输出特征(Feature)做MSE损失,并将输出特征分别输入判别器(Discriminator),判别器判断输入是来自预训练网络还是剪枝网络,使用生成对抗学习迭代训练;具体如下:

(1)、假设一个剪枝网络有L层,用N

k=K×N

其中K是聚类中心比例,k向上取整。

计算第j*∈[1,k]簇中剩余滤波器到聚类中心

P=λ×(N

将P对应的距离作为距离阈值d

(2)、FPCC-GAN方法的目标优化函数为:

其中L

p

另外,L

其中n是批次的大小。

实验结果对比如附图5/6和7所示,具体结果如下表所示:

在CIFAR-10数据集上的实验结果:

在SVHN数据集上的实验结果:

在MNIST数据集上的实验结果:

针对参数剪枝中范数准则的局限性,非结构化剪枝的种种弊端以及剪枝训练过程中依赖标签等问题,本发明构建用于图像分类的轻型网络,克服现有参数化剪枝成本高、范数准则局限性及依赖标签训练的缺点,并提出了使用K-means聚类算法按卷积层将滤波器逐层聚类、例化修剪各簇内离聚类中心较近的滤波器,确保修剪提取冗余特征的滤波器以及使用生成对抗学习迭代训练,。

实施例3:

本发明的基于FPCC-GAN的构建用于图像分类的轻型网络的系统,该系统包括,

对照模块,用于将数据集图像随机输入预训练好的网络,经过卷积层提取出与目标种类相关的纹理或结构特征形成特征图,得到包含准确语义信息的特征图;其中,数据集中包括现实场景中各类图像;

随机初始化模块,用于按正态分布随机初始化待剪枝的分类网络与对抗判别器中的参数,将数据集图像输入网络模型;

网络剪枝模块,用于计算待剪枝的分类网络中每层卷积层中滤波器的聚类中心,根据各卷积层中滤波器距离聚类中心的距离,按照剪枝比例去除距离小于阀值的滤波器;

参数更新模块,用于更新现有网络中的参数,通过L2距离约束,使其生成的特征图与预训练网络产生的特征图欧氏距离介于0.06-0.2之间;

迭代模块,用于迭代进行网络剪枝与参数更新模块,直至达到设定迭代次数且已获得数据集图像对应的正确语义,得到剪枝后的分类网络参数;其中,预训练网络的特征图和剪枝后网络的特征图的欧氏距离小于0.2;

输出模块,用于根据预先设定的参数剪枝率λ,输出参数量为原来(1-λ)%、浮点运算量为原分类网络70%以下的新网络,且新网络输出的图像分类准确率与原分类网络输出的分类准确率的误差在1%以内。

该系统的整体算法流程如下所示:

实施例4:

本发明实施例还提供了一种电子设备,包括:存储器和至少一个处理器;

其中,所述存储器存储计算机执行指令;

所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行本发明任一实施例中的基于FPCC-GAN的构建轻型图像分类网络的方法。

实施例5:

本发明实施例还提供了一种计算机可读存储介质,其中存储有多条指令,指令由处理器加载,使处理器执行本发明任一实施例中的基于FPCC-GAN的构建轻型图像分类网络的方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。

在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。

用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RYM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。

此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。

此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

相关技术
  • 基于FPCC-GAN的构建轻型图像分类网络的方法及系统
  • 一种基于原型网络少样本学习的图像分类器构建、图像识别方法及系统
技术分类

06120112684591