一种卷积神经网络优化方法技术

技术编号:14777982 阅读:163 留言:0更新日期:2017-03-09 13:59
本发明专利技术公开了一种卷积神经网络优化方法,在卷积神经网络训练过程中,通过选出效果较差的滤波器组和效果较好的滤波器组,通过把较差滤波器组中的部分系数用较好滤波器组中的部分系数进行替换,从而实现卷积层滤波器之间的参数更新,用修改之后的网络进行训练,训练一定次数后,对比修改后和修改前的网络产生的误差大小,判断先前实现的滤波器参数更新是否有效,从两个网络中进行选择,保留性能好的网络用于后面的训练,通过不断地重复这个过程,最终可以训练出一个性能优异的网络,该网络的特征提取能力比传统的网络要有所提升。

【技术实现步骤摘要】

本专利技术涉及卷积神经网络研究领域,具体地,涉及一种卷积神经网络优化方法
技术介绍
深度学习是人工智能领域的一个研究热点。近几年,深度学习在机器视觉领域取得了突破性进展。在多种深度学习方法中,卷积神经网络的研究成果最为突出。自Alex等人凭借卷积神经网络在2012年的ILSVRC图像识别竞赛中以明显的性能优势超越传统方法获得第一名以来,卷积神经网络在机器视觉领域掀起了研究热潮。工业界也投入大量资金,将卷积神经网络相关的研究成果应用于机器视觉和人工智能相关的产品中。卷积神经网络对机器视觉领域相关的学术研究和工业应用产生了深远的影响。卷积神经网络由多个交替的卷积层(convolutionallayer)、池化层(poolinglayer),以及最后的全连接层(fullyconnectedlayer)组成。卷积神经网络通过反向传播方法(BackPropagation,BP)将网络损失传递到网络的所有层,参数更新学习过程通过随机梯度下降(StochasticGradientDescent,SGD)算法来实现。卷积神经网络与传统神经网络最大的区别在于,其卷积层采用了一种权值共享局部连接网络,而不是传统的权值独立全连接网络,这使得在层数相同的情况下,卷积神经网络的连接数目要远少于传统神经网络。卷积层的二维数据结构使得卷积神经网络非常适合于处理图像数据信息。此外,池化层的加入使得卷积神经网络对输入数据的几何变化(平移、缩放、旋转等)具有一定程度的鲁棒性。由于其强大的数据特征提取能力和非线性学习能力,卷积神经网络在性能上超越了大多数传统的机器视觉算法。目前在图像分类、目标识别等领研究和应用领域,卷积神经网络已经成为主流方法。卷积层的滤波器是卷积神经网络的核心部件之一,这些滤波器负责从输入中提取特征,滤波器的特性可以通过学习算法从数据中自动得到。浅层卷积层的滤波器用来提取图像的细节信息(边缘、颜色等),深层卷积层的滤波器用来提取图像的语义信息(目标类别,目标位置等)。滤波器的特性决定了卷积神经网络提取到的输入特征,而这些特征最终会影响到卷积神经网络的工作性能。虽然卷积神经网络可以通过自主地从输入数据中学习数据特性来更新滤波器,不过这些滤波器中有一定数量的滤波器提取出来的信息是冗余的,此外还有一些滤波器会提取出不正确或不期望得到的特征。以上这些因素会干扰后面网络层的工作,进而影响到卷积神经网络的性能表现。传统的网络优化方法只能通过逐层传递误差值来更新滤波器的参数,这些优化方法对于解决刚才提到的滤波器特性具有的问题则无能为力,因而网络的性能无法得到进一步提升。综上所述,专利技术人在实现本申请所阐述的专利技术技术方案的过程中,发现上述技术至少存在如下技术问题:在现有技术中,现有的卷积神经网络存在性能无法进一步提升的技术问题。
技术实现思路
本专利技术提供了一种卷积神经网络优化方法,解决了现有的卷积神经网络存在性能无法进一步提升的技术问题,实现了对卷积神经网络进行了优化,提升了卷积神经网络性能的技术效果。为解决上述技术问题,本申请提供了一种卷积神经网络优化方法,所述方法包括:步骤1:构建卷积神经网络,并在卷积神经网络的末端添加用于计算损失函数的损失层;步骤2:构建数据集,数据集包括:训练集、测试集,并设定卷积神经网络参数;步骤3:开始训练卷积神经网络,当训练次数达到预设次数后,暂停训练,把当前的卷积神经网络作为第一卷积神经网络进行存储;步骤4:将卷积神经网络损失层计算得到的损失传递到预设卷积层,然后计算每个滤波器对卷积神经网络损失的贡献度;步骤5:将滤波器对卷积神经网络损失的贡献度,按照从小到大的顺序进行排序,基于排序结果,选取出特征提取效果最优的滤波器和特征提取效果最差的滤波器;步骤6:分别从步骤5中选取的每个滤波器中随机选取出滤波器系数,然后进行滤波器系数更新;步骤7:修改卷积神经网络每一层的学习率缩放因子,对修改之后的卷积神经网络进行训练,训练过程进行预设次数后暂停,然后然后存储修改之后的网络为第二卷积神经网络,并分别获得第一卷积神经网络和第二卷积神经网络的损失;步骤8:通过损失比较第一卷积神经网络和第二卷积神经网络的性能,选择出较优的卷积神经网络。进一步的,所述构建卷积神经网络具体包括:构建卷积神经网络,将卷积层、池化层和全连接层按照一定的次序进行连接,并设置参数,具体参数如下:卷积层:滤波器大小为[wf,hf],滤波器移动步长为sf,滤波器个数为nf,滤波器初始化取值为Hinit,滤波器系数学习率缩放因子为kf;池化层:池化区域大小为[wp,hp],池化区域移动步长为sp;全连接层:输出值个数为nc,连接参数学习率缩放因子为kc,连接参数初始化值为Winit。进一步的,损失函数选择softmaxloss,具体计算公式为:其中,N为计算损失时所用的样本个数,K为数据类别个数,y(n)为第n个样本的预测类别(标签);1{y(n)=k本文档来自技高网
...
一种卷积神经网络优化方法

【技术保护点】
一种卷积神经网络优化方法,其特征在于,所述方法包括:步骤1:构建卷积神经网络,并在卷积神经网络的末端添加用于计算损失函数的损失层;步骤2:构建数据集,数据集包括:训练集、测试集,并设定卷积神经网络参数;步骤3:开始训练卷积神经网络,当训练次数达到预设次数后,暂停训练,把当前的卷积神经网络作为第一卷积神经网络进行存储;步骤4:将卷积神经网络损失层计算得到的损失传递到预设卷积层,然后计算每个滤波器对卷积神经网络损失的贡献度;步骤5:将滤波器对卷积神经网络损失的贡献度,按照从小到大的顺序进行排序,基于排序结果,选取出特征提取效果最优的滤波器和特征提取效果最差的滤波器;步骤6:分别从步骤5中选取的每个滤波器中随机选取出滤波器系数,然后对滤波器系数进行更新;步骤7:修改卷积神经网络每一层的学习率缩放因子,对修改之后的卷积神经网络进行训练,训练过程进行预设次数后暂停,然后存储修改之后的网络为第二卷积神经网络,并分别获得第一卷积神经网络和第二卷积神经网络的损失;步骤8:通过损失比较第一卷积神经网络和第二卷积神经网络的性能,选择出较优的卷积神经网络。

【技术特征摘要】
1.一种卷积神经网络优化方法,其特征在于,所述方法包括:步骤1:构建卷积神经网络,并在卷积神经网络的末端添加用于计算损失函数的损失层;步骤2:构建数据集,数据集包括:训练集、测试集,并设定卷积神经网络参数;步骤3:开始训练卷积神经网络,当训练次数达到预设次数后,暂停训练,把当前的卷积神经网络作为第一卷积神经网络进行存储;步骤4:将卷积神经网络损失层计算得到的损失传递到预设卷积层,然后计算每个滤波器对卷积神经网络损失的贡献度;步骤5:将滤波器对卷积神经网络损失的贡献度,按照从小到大的顺序进行排序,基于排序结果,选取出特征提取效果最优的滤波器和特征提取效果最差的滤波器;步骤6:分别从步骤5中选取的每个滤波器中随机选取出滤波器系数,然后对滤波器系数进行更新;步骤7:修改卷积神经网络每一层的学习率缩放因子,对修改之后的卷积神经网络进行训练,训练过程进行预设次数后暂停,然后存储修改之后的网络为第二卷积神经...

【专利技术属性】
技术研发人员:李宏亮陈啸宇黄超
申请(专利权)人:成都快眼科技有限公司
类型:发明
国别省市:四川;51

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

1