基于D-MobileNet神经网络图像分类方法与流程

文档序号:16631110发布日期:2019-01-16 06:34阅读:730来源:国知局
本发明设计涉及图像分类领域。本发明是基于d-mobilenet(dilated-mobilenet)神经网络的图像分类方法,由于深度神经网络其自身是一种内存密集性和高计算密集型的模型,mobilenet这种轻量级的深度卷积网络,通过改变卷积计算方式,可减少网络的参数数量和计算量,但是精度会有些损失,本发明通过加入空洞卷积,来提高mobilenet的分类精度。
背景技术
:图像分类是深度学习最早的应用领域,且已在图像分类领域取得了很好的成绩。从alexnet到vgg,googlenet,resnet等均在视觉领域竞赛上取得很好的成绩。随着神经网络的分类精度越来越高,神经网络的结构也更深、更复杂。随之而来的是数百万甚至数十亿的参数和大量的内存,且其大量的计算量需依赖gpu来实现。故提出了压缩神经网络的方法,即在尽量损失较少分类精度的前提下,减少参数数量和计算量。而mobilenet神经网络是众多压缩方法中的一种,即通过改变网络结构实现参数和计算量的减少。mobilenet通过使用深度可分离的卷积来构建轻量级的深度神经网络。其基本结构为深度可分离卷积核(depthwiseseparablefiltes),该卷积核由深度卷积核(depthwiseconvolutionfilters)和点卷积核(pointconvolutionfilter)组成。该网络通过这种结构,将本来一个参数为a*a*c的标准卷积核变为a*a+c个参数(标准卷积核大小为a*a,深度为c)。本专利通过在现有的mobilenet神经网络结构与空洞卷积结合,提高分类精度。现有的神经网络图像分类近似的专利有专利[1],通过改进自适应遗传算法的神经网络图像分类方法,此专利较好的避免了遗传算法的“早熟”收敛,提高了网络的泛化能力和图像的正确分类率。专利[2]基于线性判别分析准则的改进卷积神经网络性能的方法,此专利通过对选定的卷积层进行线性判别分析准则的正则约束,可提高卷积神经网络图像分类的精度。本发明与专利[1]和专利[2]采用不同的神经网络模型,本发明是在mobilenet轻量级的深度卷积神经网络上进行改进,与空洞卷积结合,通过提高卷积核感受野,来提高训练特征质量,进一步提高网络模型分类精度。[1]基于改进自适应遗传算法的神经网络图像分类方法,申请号/专利:cn201510846339.8,发明设计人:刘芳;马玉磊;黄光伟;周慧娟。[2]基于线性判别分析准则的改进卷积神经网络性能的方法,申请号/专利号:cn201510566529.4,发明设计人:龚怡宏;石伟伟;王进军;张世周。技术实现要素:本发明是在mobilenet网络结构的基础上引入空洞卷积。空洞卷积最先应用于图像分割领域。空洞卷积是在卷积滤波器的非零值中间插入零值,以提高该卷积滤波器的感受野。通过在mobilenet高分辨率的输入特征的深度卷积核由空洞为2的空洞卷积替代,可通过提高卷积核的感受野,提高其输出特征的质量,以达到提高分辨率的目的,具体网络结构如表一。本发明主要是使内存密集型与高度计算密集型的深度神经网络应用于低内存的、实时性高的设备中。表一:d-mobilenet在caltech-256数据集的结构图具体实施方式步骤一:数据准备准备数据集,将数据集分为训练数据集和验证数据集,本发明使用tensorflow框架,需将数据集的图片形式转换成tfrecord的形式存储,方便数据读取。步骤二:对图像进行预处理将图像从tfrecord中读取出来,并进行随机的左右翻转,随机裁剪成指定尺寸的图片大小,使得在神经网络训练完数据集的一个回合后,重新训练数据集时,可以使得重新训练的输入图片与前一次的训练图片有差异,可扩大数据集图片的数量,避免网络容易造成过拟合的问题。步骤三:搭建d-mobilenet神经网络结构通过对将mobilenet神经网络与空洞卷积相结合的改进方法对d-mobilenet神经网络进行搭建,在mobilenet神经网络的基础上加入空洞卷积的参数设置。本发明提出了两种d-mobilenet实现方法,一种是b_mobilenet,即将conv1卷积层中的卷积核用扩张率为2的扩张卷积核替代,为使得最后全局池化层的输入尺寸与mobilenet的相同,且增加最少的计算量,需在conv2卷积层中的深度可分离卷积层的卷积步长设置为2,后面卷积层不变;另一种是a_mobilenet,即将conv2卷积层中的深度可分离卷积层的卷积核用扩张率为2的扩张卷积核替代,此方法不需改变其他卷积层的超参数,也不会增加网络参数和计算量。步骤四:超参数的设置mobilenet神经网络本身已经将一些超参数如每一层隐含层中卷积核的个数、神经网络的层数、激活函数的种类等已确定,但还需设置一些超参数,如:学习率(learningrate)、最小批次(minibatch)、学习的回合数(epoch)、动量参数(momentum)等。超参数设置完成后,对网络进行训练,并进行调参,使得设置的超参数数值为该网络最适合的数值。最后进行验证,得到网络的测试精度。最后结果如表二:表二:mobilenet与两种d-mobilenet准确率网络名称mobileneta_mobilenetb_mobilenet准确率0·61160·62130·6228当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1