一种基于深度卷积神经网络的大规模图像分类方法与流程

文档序号:19788171发布日期:2020-01-24 13:53阅读:182来源:国知局
一种基于深度卷积神经网络的大规模图像分类方法与流程

本发明涉及图像处理技术领域,具体涉及一种基于深度卷积神经网络的大规模图像分类方法。



背景技术:

卷积神经网络(cnn)由人工神经网络发展而来,独特的权值共享的结构减小了网络的规模,更容易训练。由于图像平移、缩放和旋转的不变性,卷积神经网络广泛应用于图像识别领域。卷积神经网络对图像的平移,缩放,旋转等形式的变形具有高度的适应性,在图像识别和目标检测等领域应用广泛,如微软利用卷积神经网络做阿拉伯文和中文的手写识别系统,谷歌使用卷积神经网络来识别街景图片中的人脸和车牌等等。

cnn的性能正在迅速提高:imagenet挑战的获胜者将分类准确率从2012年alexnet的84.7%提高到resnet-152的96.5%。然而,精度的提高是以高计算复杂度为代价的。例如,alexnet需要1.4×1010flops来处理单个224×224图像,resnet-152需要2.26×1011flops。在移动嵌入式设备端,一个最主要的挑战在于大量的运算需要过多的硬件资源并且功耗巨大。

为了解决与计算能力相关的这一系列问题,已经有大量的研究试图优化它们的性能。

这些研究工作可以分为两种:使用预先训练的模型压缩现有网络结构,以及设计新的高效的网络结构,这些结构将从头开始训练。模型压缩方法通常基于传统的压缩技术,如哈希(hashing)、赫夫曼编码(huffmancoding)、因式分解(factorization)、剪枝(pruning)和模型量化(quantization)。

实际上,第二种方法比第一种方法更早地被研究。googlenet中提出了inception模块,希望在不增加模型大小和计算成本的情况下构建更深的网络结构,然后在inception模块中通过分解卷积进一步改进。深度可分离卷积(depthwiseseparableconvolution,dwconvolution)更加体现因式分解的思想,将标准卷积分解为深度卷积(depthwiseconvolution),再用1×1卷积核进行常规卷积。mobilenet为基于dwconvolution的移动设备设计了卷积神经网络,该操作能够以较少的参数获得了较好的结果。本发明主要使用深度卷积来进一步提高参数效率。



技术实现要素:

发明目的:提供了一种基于深度卷积神经网络的大规模图像分类方法,改变了常见大规模图像分类神经网络结构,减少了网络参数,并且降低了计算成本,提高了大规模图像分类测试准确率。

本发明的一种基于深度卷积(depthwiseconvolution)神经网络的大规模图像分类方法,提出适合对大规模图像进行精准分类的psdnet卷积块(pointwise-standard-depthwise),输入的未经处理的图像依次通过1×1标准卷积(pointwiseconvolution)层、3×3标准卷积层,最后通过3×3深度卷积层,得到经过卷积处理的特征图像,并且psdnet卷积块也使用快捷连接(shortcutconnections)对输入图像进行恒等映射,在每一个卷积层之前都对图像进行批量归一化(batchnormalization)处理以及非线性函数激活处理。

技术方案:为实现上述发明目的,本发明采用以下技术方案:

一种基于深度卷积神经网络的大规模图像分类方法,包括以下步骤:

(1)将大规模图像数据集分为训练图像集和测试图像集;

(2)使用标准卷积操作对训练图像集进行卷积操作,得到标准卷积后的图像;

(3)对步骤(2)得到的标准卷积后的图像采用psd卷积块进行操作,得到psd卷积后的图像;

(4)将步骤(3)得到的psd卷积后的图像经过全局平均池化层,得到1×1的输出特征图像;

(5)将步骤(4)得到的1×1的输出特征图像通过全连接层,最后接入一个归一化指数函数层完成对训练图像的分类,即得到psdnet卷积神经网络模型;

(6)将测试图像集中的图像输入至经过步骤(2)-(5)后得到的psdnet卷积神经网络模型中,完成图像分类。

进一步的,步骤(1)中训练图像集中图像尺寸为n×n,n≥16。

进一步的,步骤(2)中标准卷积操作的卷积核尺寸为k×k,k≥3,输出通道为16m,m≥1,步长为s0,s0≥1,输出标准卷积后的图像尺寸为n/s0×n/s0。

进一步的,步骤(3)包括以下步骤:

(3-1)将步骤(2)得到的标准卷积后的图像经过n1个psd卷积块,n1≥1,psd卷积块中三个卷积层的输出通道数分别为16m、16m、64m,在第一个psd卷积块中3×3标准卷积操作的步长为s1,s1≥1,其余卷积层的步长为1,输出特征图像尺寸为n/(s0·s1)×n/(s0·s1);

(3-2)将步骤(3-1)得到的输出特征图像经过n2个psd卷积块,n2≥1,psd卷积块中三个卷积层的输出通道数分别为32m、32m、128m,在第一个psd卷积块中3×3标准卷积操作的步长为s2,s2≥1,其余卷积层的步长为1,输出特征图像尺寸为n/(s0·s1·s2)×n/(s0·s1·s2);

(3-3)将步骤(3-2)得到的输出特征图像经过n3个psd卷积块,n3≥1,psd卷积块中三个卷积层的输出通道数分别为64m、64m、256m,在第一个psd卷积块中3×3标准卷积操作的步长为s3,s3≥1,其余卷积层的步长为1,输出特征图尺寸为n/(s0·s1·s2·s3)×n/(s0·s1·s2·s3)。

进一步的,psd卷积块生成方法为:

(a)对步骤(2)得到的标准卷积后的图像进行批量归一化处理和非线性函数激活处理,得到psd卷积块输入特征图像;

(b)采用1×1标准卷积对输入特征图像进行标准卷积运算,通过计算输入特征图像各个通道的线性组合来获取输入特征图像的空间信息;

其中,1×1标准卷积的卷积核尺寸为1×1,通过标准卷积操作对输入特征图像的通道数进行压缩,输出特征图像的尺寸不变,通道数减少为原来的2倍;

(c)对1×1标准卷积后的特征图像进行批量归一化处理和非线性函数激活,然后再进行3×3标准卷积操作,来获取图像的空间特征;

其中,3×3标准卷积操作的卷积核尺寸为3×3,步长为s,s≥1,输出的特征图像的通道数与输入通道数相同;

(d)对3×3标准卷积后的特征图像进行批量归一化处理和非线性函数激活,然后采用3×3深度卷积进行卷积处理,进一步获取图像的空间特征;

其中,3×3深度卷积操作的卷积核尺寸为3×3,深度卷积对输入的特征图像的每一个通道进行n,n>1次卷积,以对输入特征图像的通道进行扩张,获得具有更多通道的输出特征图像;

(e)如果步骤(a)中的输出特征图像与步骤(d)中的输出特征图像的通道数不相同,则对步骤(a)中的输出特征图像进行1×1常规卷积操作,得到与步骤(d)中的输出特征图像相同通道的图像后,将该图像与步骤(d)的输出特征图像相加,若步骤(a)中的输出特征图像与步骤(d)中的输出特征图像的通道数相同,则直接将步骤(a)中的输出特征图像与步骤(d)中的输出特征图像相加,得到一个psd卷积块的输出特征图像。

更进一步的,步骤(a)中批量归一化处理的表达式为:

其中,yi为第i个输出特征图像,xi为第i个输入特征图像,μβ为训练图像集像素点均值,σβ为训练图像集像素点方差,β为输入的一个批次的图像集,ε为正整数,γ、δ为需要训练的参数;

非线性函数表达式为:

y=max(0,x)(2);

其中,y为输出特征图像,x为输入特征图像。

进一步的,步骤(4)中全局平均池化操作为将尺寸为h×w的输入特征图像的所有像素点求和,然后除以(h×w),得到图像尺寸为1×1的输出特征图像。

更进一步的,步骤(5)中将步骤(4)得到的尺寸为1×1的输出特征图像通过全连接层,输出z个节点,z为图像数据集的总类别数,每个节点的输出值为xi,1≤i≤z,i表示输入图像属于图像集第i类,即每个节点对应一种类别,将得到的z个节点的值xi通过归一化指数函数层,输出z个概率值pi,最大的概率值pi所对应的那种类别就是该输入图像所对应的类别,得到psdnet卷积神经网络模型。

其中,归一化指数函数表达式为:

有益效果:与现有技术相比,本发明方法将常见的卷积网络中1×1标准卷积操作替换为3×3卷积核的深度卷积操作来对特征图像的通道进行扩张。提出psd卷积网络结构,可以更好的提取特征图像的空间特征,使用了更少的参数,提高了卷积神经网络的计算效率,加快了神经网络的传播速度,并且测试结果有明显提高。实验结果表明,这种方法得到的大规模图像的分类准确率更高,证明提取图像的空间信息比组合图像的通道信息更为重要。

附图说明

图1为本发明的深度卷积操作示意图;

图2为本发明方法流程图;

图3为本发明用于图像分类的psdnet卷积神经网络模型训练方法流程图;

图4为本发明的psd卷积块生成方法流程图。

具体实施方式

下面结合附图和具体实施例对本发明的技术方案进行详细说明。

深度卷积操作如图1所示,深度卷积和标准卷积操作类似,可用来提取特征,但相比于常规卷积操作,其参数量和运算成本较低。对于有m个输入通道的宽为w高为h特征图像,深度卷积操作过程是将输入的特征图像的每一个通道都分开,为每一个通道设置一个卷积核,因此需要m个卷积核,将每一个卷积核和对应的通道进行卷积计算,可以得到m个通道,最后将这m个通道合并得到一张尺寸为w×h×m的特征图像,参数与标准卷积相比明显减少,并且与1×1卷积操作相比,提取了特征图像的空间特征。

如图2所示,一种基于深度卷积神经网络的大规模图像分类方法,包括如下步骤:

(1)将大规模图像数据集分为训练图像集和测试图像集;

其中,训练图像集和测试图像集中图像尺寸为n×n(n≥16)。

(2)使用标准卷积操作对训练图像集进行卷积操作,得到标准卷积后的图像;

标准卷积操作的卷积核尺寸为k×k(k≥3),输出通道为16m(m≥1),步长为s0(s0≥1),输出标准卷积后的图像尺寸为n/s0×n/s0。

(3)对步骤(2)得到的标准卷积后的图像采用psd卷积块进行操作,得到psd卷积后的图像;

(3-1)将步骤(2)得到的标准卷积后的图像经过n1(n1≥1)个psd卷积块,psd卷积块中三个卷积层的输出通道数分别为16m、16m、64m,在第一个psd卷积块中3×3标准卷积操作的步长为s1(s1≥1),其余卷积层的步长为1,输出特征图像尺寸为n/(s0·s1)×n/(s0·s1);

(3-2)将步骤(3-1)得到的输出特征图像经过n2(n2≥1)个psd卷积块,psd卷积块中三个卷积层的输出通道数分别为32m、32m、128m,在第一个psd卷积块中3×3标准卷积操作的步长为s2(s2≥1),其余卷积层的步长为1,所以经过(3-2)步骤输出特征图像尺寸为n/(s0·s1·s2)×n/(s0·s1·s2);

(3-3)将步骤(3-2)得到的输出特征图像经过n3(n3≥1)个psd卷积块,psd卷积块中三个卷积层的输出通道数分别为64m、64m、256m,在第一个psd卷积块中3×3标准卷积操作的步长为s3(s3≥1),其余卷积层的步长为1,所以经过(3-3)步骤输出特征图尺寸为n/(s0·s1·s2·s3)×n/(s0·s1·s2·s3)。

如图4所示,本发明所用的psd卷积块获取方法,首先对输入的特征图像x进行批量归一化处理,然后用非线性函数进行激活处理。再用1×1卷积对输入的特征图像进行标准卷积运算,通过计算输入通道的线性组合来获取输入特征图像的通道信息。1×1卷积后的图像再经过批量归一化处理,然后用非线性函数进行激活处理,然后用3×3卷积核进行标准卷积操作,来获取输入图像的空间信息,步长为s(s≥1),输出特征图像的通道数与输入的通道数相同;同样的,3×3卷积后的输出图像先经过批量归一化处理,然后用非线性函数进行激活处理,之后用深度卷积对激活后的特征图像进行卷积操作,卷积核尺寸为3×3,并扩张特征图像通道数,得到输出特征图像f,如果输入特征图像x与输出特征图像f的通道数不相同,则对输入特征图像x进行1×1常规卷积操作,得到与输出图像f相同通道的图像后,将该图像与输出特征图像f相加,若输入特征图像x与输出特征图像f的通道数相同,则直接将输入特征图像x与输出特征图像f相加,得到一个卷积块的输出特征图像。以上步骤构建了一个卷积块,称之为pointwise-standard-depthwise(psd)卷积块。具体包括以下步骤:

(a)对步骤(2)得到的标准卷积后的图像进行批量归一化处理和非线性函数激活处理,得到psd卷积块输入特征图像,批量归一化处理的表达式如公式(1)所示,非线性函数激活处理的激活函数如公式(2)所示:

其中,yi为第i个输出特征图像,xi为第i个输入特征图像,μβ为训练图像集像素点均值,σβ为训练图像集像素点方差,β为输入的一个批次的图像集,ε为正整数,γ、δ为需要训练的参数。

y=max(0,x)(2);

其中,y为输出特征图像,x为输入特征图像。

(b)采用1×1标准卷积对输入特征图像进行标准卷积运算,通过计算输入特征图像各个通道的线性组合来获取输入特征图像的空间信息;

1×1标准卷积的卷积核尺寸为1×1,通过标准卷积操作对于输入特征图像的通道数进行压缩,输出特征图像的尺寸不变,通道数减少为原来的2倍,来获取输入图像的通道信息。

(c)对1×1标准卷积后的特征图像进行批量归一化处理和非线性函数激活,然后再进行3×3标准卷积操作,来获取图像的空间特征;

3×3标准卷积操作的卷积核尺寸为3×3,步长为s(s≥1),输出的特征图像的通道数与输入通道数相同,来获取图像的空间特征。

(d)对3×3标准卷积后的特征图像进行批量归一化处理和非线性函数激活,然后采用3×3深度卷积进行卷积处理,进一步获取图像的空间特征;

3×3深度卷积操作的卷积核尺寸为3×3,深度卷积对输入的特征图像的每一个通道进行n(n>1)次卷积,以对输入特征图像的通道进行扩张,获得具有更多通道的输出特征图像,进一步构建输入图像的空间信息。

这里将常见的卷积网络中1×1标准卷积操作替换为3×3卷积核的深度卷积操作来对特征图像的通道进行扩张,对于输入通道数为m,输出通道为n×m(n>1)的卷积操作,1×1标准卷积操作所需参数为n×m2,而深度卷积操作所需参数是9n×m,比值为m/9,而m一般为大于9的正整数,所以使用深度卷积操作可以减少参数。

(e)如果步骤(a)中的输出特征图像与步骤(d)中的输出特征图像的通道数不相同,则对步骤(a)中的输出特征图像进行1×1常规卷积操作,得到与步骤(d)中的输出特征图像相同通道的图像后,将该图像与步骤(d)的输出特征图像相加,若步骤(a)中的输出特征图像与步骤(d)中的输出特征图像的通道数相同,则直接将步骤(a)中的输出特征图像与步骤(d)中的输出特征图像相加,得到一个psd卷积块的输出特征图像。

(4)步骤(3)得到的psd卷积后的图像经过全局平均池化层,得到1×1的输出特征图像,全局平均池化操作为将尺寸为h×w的输入特征图像的所有像素点求和,然后除以(h×w),得到图像尺寸为1×1的输出特征图像;

(5)将步骤(4)得到的尺寸为1×1的输出特征图像通过全连接层,输出z个节点,z为图像数据集的总类别数,每个节点的输出值为xi(1≤i≤z),i表示步骤(2)中输入的图像属于图像集第i类,即每个节点对应一种类别。然后将这z个节点的值xi通过归一化指数函数(softmax)层,输出z个概率值pi,最大的概率值pi所对应的那种类别就是步骤(2)输入图像所对应的类别,从而得到psdnet卷积神经网络模型,softmax函数表达式如下:

以上步骤(2)-(5)的流程图如图3所示。

(6)测试阶段,将测试图像输入经过步骤(2)-(5)处理后得到的psdnet卷积神经网络模型,完成图像分类,得到测试图像数据集分类准确率的测试结果。

实施例:

本发明所提出的psdnet神经网络结构正是由psd卷积块组成。

本发明使用tensorflow深度学习神经网络框架来搭建提出的psdnet卷积神经网络结构,训练cifar-10与cifar-100大规模图像数据集。cifar-10图像数据集是由10个类别的60000个32×32彩色图像组成,分为50000个训练图像和10000个测试图像,每个类别有6000个图像,每类分为5000个训练图像和1000个测试图像;cifar-100由100个类别的60000个32×32彩色图像组成,分为50000个训练图像和10000个测试图像,每个类有600个图像,每类分为500个训练图像和100个测试图像。本发明提出的psdnet卷积神经网络结构请参阅表1,具体操作如下,首先按批次输入训练图像,图像尺寸是32×32,通道数是3,在阶段1,使用标准卷积操作,卷积核尺寸为7×7,输出通道为32,步长为1,输出尺寸为32×32,所用参数为3×7×7×32=4704;在第2阶段,经过5个图2所述的psd卷积块,卷积块中三个卷积层的输出通道数分别为32、32、128,步长为1,输出尺寸仍为32×32,本阶段所用参数为73344;第3阶段,经过6个psd卷积块,卷积块中三个卷积层的输出通道数分别为64、64、256,在第一个psd卷积块中第二个3×3标准卷积操作的步长为2,所以经过第3阶段输出特征图像尺寸为16×16,本阶段所用参数为357888;第4阶段,经过5个psd卷积块,卷积块中三个卷积层的输出通道数分别为128、128、512,在第一个psd卷积块中第二个3×3标准卷积操作的步长为2,所以经过第4阶段输出特征图尺寸为8×8,本阶段所用参数为1186304;第5阶段,经过全局平均池化层,输出特征图像尺寸为1×1,输出通道数仍为512,对于cifar-10图像集最后一个全连接层的输出通道数为10,对应着十种图像类别;对于cifar-100图像集最后一个全连接层的输出通道数为100,对应着100种图像类别。最后接入一个归一化指数函数(softmax)层完成图像分类。在经过164轮训练之后,得到psdnet卷积神经网络的连接权值和偏置值。测试阶段,将测试图像输入经过164轮训练之后得到的psdnet卷积神经网络模型,得到图像数据集分类准确率的测试结果。

表1改进的psdnet50网络与常见resnet50网络结构对比

通过本发明基于深度卷积神经网络的大规模图像分类方法,所构建的网络结构psdnet50,通过训练cifar-10与cifar-100大规模图像数据集,在经过164轮训练之后,得到psdnet卷积神经网络的连接权值和偏置值。测试阶段,将测试图像输入经过164轮训练之后得到的psdnet卷积神经网络,得到图像数据集分类准确率的测试结果如表2,并与常见的resnet50网络结构相比,发现本发明提出的psdnet卷积神经网络结构所用参数更少,测试准确率更高,说明发明提出的基于深度卷积神经网络的大规模图像分类方法可以更加高效的对大规模图像进行精准分类。

表2网络模型对比大规模图像分类准确率测试结果

以上仅是本发明的优选实施方式,应当指出以上实施列对本发明不构成限定,相关工作人员在不偏离本发明技术思想的范围内,所进行的多样变化和修改,均落在本发明的保护范围内。

本发明基于深度卷积神经网络的大规模图像分类方法使用了更少的参数,计算成本降低,却可以更好的提取图像的空间特征,实验结果表明,可以更加高效的对大规模图像进行精准分类。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1