一种基于全连接神经网络优化的图像识别方法转让专利

申请号 : CN202210840018.7

文献号 : CN114912589B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘鑫杨志祥熊筠轲程佳斌余将其皮辉杨小涛谈俊郭朝霞许雷范俊甫蔡烨彬谢倩

申请人 : 中船重工(武汉)凌久高科有限公司

摘要 :

本发明适用于图像识别工程以及人工智能和智能优化计算技术领域,提供一种基于全连接神经网络优化的图像识别方法。本发明将训练模型精度和网络整体参数量作为两个优化目标建立多目标优化模型,然后在搜索空间内对参数范围内的网络结构进行随机组合,得到最佳深度学习神经网络结构,从而提高图像识别的精度和效率。

权利要求 :

1.一种基于全连接神经网络优化的图像识别方法,其特征在于,所述方法包括下述步骤:步骤S1、选择图像数据集作为训练样本输入至图像识别的全连接神经网络,以全连接神经网络结构及超参数作为优化目标,根据参数列表和参数取值步长构建优化目标向量;

步骤S2、根据所述优化目标向量,建立图像识别网络参数量优化目标函数,以使网络能够自适应调整隐藏层层数、减少网络整体计算量;

步骤S3、根据所述图像识别网络参数量优化目标函数并结合图像识别精度优化目标函数构建适应度函数,建立图像识别网络多目标优化模型;

步骤S4、根据所述多目标优化模型,利用遗传算法进行优化计算,得到Pareto最优面,根据输出判断得到最优全连接神经网络结构,最后进行图像识别计算;

所述步骤S1具体过程如下:

S11、选择图像数据集作为训练样本输入至图像识别的全连接神经网络,以全连接神经网络结构及超参数作为优化目标,设置参数列表;

S12、根据参数列表和参数取值步长构建优化目标向量,优化目标向量表达式为:其中, 为第 层隐藏层的神经元数量, 为第 层隐藏层选择的激活函数, 为网络选择的优化器, 为网络选择的学习率;

S13、确定优化目标向量的上下限表达式:

其中 为优化目标向量上限, 为优化目标向量下限, 和 分别为第 层隐藏层神经元数量可取范围的上下边界, 和 分别为第 层隐藏层的激活函数可取范围的上下边界, 和 为网络优化器可取范围的上下边界, 和 为网络学习率可取范围的上下边界;

S14、根据参数列表和优化目标向量,得到搜索空间计算表达式。

2.如权利要求1所述基于全连接神经网络优化的图像识别方法,其特征在于,所述步骤S2具体过程如下:S21、根据优化目标向量构建图像识别网络结构优化模型;

S22、根据优化目标向量构建图像识别网络参数量优化模型;

S23、构建图像识别网络参数量优化目标函数 ,用以描述网络整体参数量。

3.如权利要求2所述基于全连接神经网络优化的图像识别方法,其特征在于,所述步骤S3具体过程如下:S31、通过优化网络结构使得训练精度最大化,建立图像识别精度目标函数;

S32、联合图像识别精度优化目标函数和参数量优化目标函数,构建适应度函数,建立多目标优化函数 , 表示取最大值, 表示取最小值;

S33、建立图像识别网络多目标优化模型:

其中, 为原始网络精度, 为网络精度

提升目标, 为Tensorflow自适应方法的精度, 为原始网络参数量。

4.如权利要求3所述基于全连接神经网络优化的图像识别方法,其特征在于,所述步骤S4具体过程如下:S41、随机生成输入向量 ,并设置遗传算法参数;

S42、根据随机生成的输入向量 初始化个体,形成初始种群,计算种群中每个个体的适应度,根据适应度进行非支配排序,通过复制、交叉及变异操作生成下一代个体;

S43、开始遗传流程设置迭代MAX_GEN代,若迭代过程未满MAX_GEN代则更新种群中个体适应度,进行快速非支配排序,并计算拥挤度,利用拥挤度进行种群内选择,保留精英并产生下一代种群;若迭代过程已满MAX_GEN代则输出进化生成的Pareto最优面解集;S44、如果进化生成的模型的网络识别精度以及网络参数量均满足多目标优化模型的三个限定条件,则输出当前网络结构为最优全连接神经网络结构,否则继续步骤S43的遗传流程,直至得到图像识别最优全连接神经网络结构;

S45、选择目标识别图像,将目标识别图像输入至所述最优全连接神经网络进行图像识别计算。

说明书 :

一种基于全连接神经网络优化的图像识别方法

技术领域

[0001] 本发明属于图像识别工程以及人工智能和智能优化计算技术领域,尤其涉及一种基于全连接神经网络优化的图像识别方法。

背景技术

[0002] 图像识别技术是信息时代的一门重要的技术,其产生目的是为了让计算机代替人类去处理大量的物理信息。随着计算机技术的发展,人类对图像识别技术的认识越来越深刻。神经网络图像识别技术是一种比较新型的图像识别技术,是在传统的图像识别方法和基础上融合神经网络算法的一种图像识别方法。在神经网络图像识别技术中,遗传算法与BP网络相融合的神经网络图像识别模型是非常经典的,在很多领域都有它的应用。在图像识别系统中利用神经网络系统,一般会先提取图像的特征,再利用图像所具有的特征映射到神经网络进行图像识别分类。
[0003] 而深度学习是一种能够拟合复杂非线性函数的神经网络模型,已经逐渐成为人工智能领域的主流研究方向。不同类型神经网络的准确性和收敛性依赖于超参数,这些参数通常是任意选择的。Motta等人对网络的超参数进行调整,使图像识别的准确率从76%提高到93%,可以看出超参数的选择能够显著影响算法的性能。因此可知通过优化超参数可以提升图像识别准确率。早期的深度神经网络结构多依靠人工经验进行设计,但随着深度神经网络的不断发展,大量的超参数选择和组合增加了人工设计网络的难度,故而对超参数的自动优化有了强烈的需求。此外,随着研究的不断深入,网络模型逐渐复杂,参数的计算量也逐渐增大。因此,图像识别神经网络中,超参数的选择及减少网络整体参数量是网络优化中需要解决的一个重要问题。
[0004] 目前的深度神经网络的优化主要实现特定网络结构的超参数优化,不能保证参数优化达到全局最优,又因为网络结构是预先设定的,也限制了网络处理特定需求问题的能力。常见的算法都只能用向量表示网络超参数组合,不能将网络隐藏层层数及隐藏层神经元数量等网络结构结合在一起用向量表示并进行优化计算。因此,现有图像识别神经网络的网络结构和网络参数不能同时优化,以及计算量过大,不利于提高图像识别精度和识别效率。

发明内容

[0005] 鉴于上述问题,本发明的目的在于提供一种基于全连接神经网络优化的图像识别方法,旨在解决现有神经网络图像识别识别精度和识别效率均不高的技术问题。
[0006] 本发明采用如下技术方案:
[0007] 所述基于全连接神经网络优化的图像识别方法,包括下述步骤:
[0008] 步骤S1、选择图像数据集作为训练样本输入至图像识别的全连接神经网络,以全连接神经网络结构及超参数作为优化目标,根据参数列表和参数取值步长构建优化目标向量;
[0009] 步骤S2、根据所述优化目标向量,建立图像识别网络参数量优化目标函数,以使网络能够自适应调整隐藏层层数、减少网络整体计算量;
[0010] 步骤S3、根据所述图像识别网络参数量优化目标函数并结合图像识别精度优化目标函数构建适应度函数,建立图像识别网络多目标优化模型;
[0011] 步骤S4、根据所述多目标优化模型,利用遗传算法进行优化计算,得到Pareto最优面,根据输出判断得到最优全连接神经网络结构,最后进行图像识别计算。
[0012] 进一步的,所述步骤S1具体过程如下:
[0013] S11、选择图像数据集作为训练样本输入至图像识别的全连接神经网络,以全连接网络结构及超参数作为优化目标,设置参数列表;
[0014] S12、根据参数列表和参数取值步长构建优化目标向量,优化目标向量表达式为:
[0015]
[0016] 其中, 为第 层隐藏层的神经元数量, 为第 层隐藏层选择的激活函数,为网络选择的优化器, 为网络选择的学习率;
[0017] S13、确定优化目标向量的上下限表达式:
[0018]
[0019] 其中 为优化目标向量上限, 为优化目标向量下限, 和 分别为第层隐藏层神经元数量可取范围的上下边界, 和 分别为第 层隐藏层的激活函数可取范围的上下边界, 和 为网络优化器可取范围的上下边界, 和 为网络学习率可取范围的上下边界;
[0020] S14、根据参数列表和优化目标向量,得到搜索空间计算表达式。
[0021] 进一步的,所述步骤S2具体过程如下:
[0022] S21、根据优化目标向量构建图像识别网络结构优化模型;
[0023] S22、根据优化目标向量构建图像识别网络参数量优化模型;
[0024] S23、构建图像识别网络参数量优化目标函数 ,用以描述网络整体参数量。
[0025] 进一步的,所述步骤S3具体过程如下:
[0026] S31、通过优化网络结构使得训练精度最大化,建立图像识别精度目标函数;
[0027] S32、联合图像识别精度优化目标函数和参数量优化目标函数,构建适应度函数,建立多目标优化函数 , 表示取最大值, 表示取最小值;
[0028] S33、建立图像识别网络多目标优化模型:
[0029]
[0030] 其中, 为原始网络精度, 为网络精度提升目标, 为Tensorflow自适应方法的精度, 为原始网络参数量。
[0031] 进一步的,所述步骤S4具体过程如下:
[0032] S41、随机生成输入向量 ,并设置遗传算法参数;
[0033] S42、根据随机生成的输入向量 初始化个体,形成初始种群,计算种群中每个个体的适应度,根据适应度进行非支配排序,通过复制、交叉及变异操作生成下一代个体;
[0034] S43、开始遗传流程设置迭代MAX_GEN代,若迭代过程未满MAX_GEN代则更新种群中个体适应度,进行快速非支配排序,并计算拥挤度,利用拥挤度进行种群内选择,保留精英并产生下一代种群;若迭代过程已满MAX_GEN代则输出进化生成的Pareto最优面解集;
[0035] S44、如果进化生成的模型的网络识别精度以及网络参数量均满足多目标优化模型的三个限定条件,则输出当前网络结构为最佳深度学习网络结构,否则继续步骤S43的遗传流程,直至得到图像识别最优全连接神经网络结构;
[0036] S45、选择目标识别图像,将目标识别图像输入至所述最优全连接神经网络进行图像识别计算。
[0037] 本发明的有益效果是:
[0038] 1、针对现有图像识别中深度神经网络优化的向量表示方法无法同时包含网络结构和超参数问题,本发明提供了一种方便计算的优化网络结构的多目标向量表示方法,使网络能够同时对网络结构及网络超参数进行优化。
[0039] 2、针对现有图像识别中深度神经网络优化大多为单目标优化问题,本发明构建了一种网络优化的多目标优化函数,形成以训练模型精度和网络整体参数量为优化目标的多目标优化模型,解决了网络结构和网络参数不能同时优化以及网络优化整体参数量过大导致的网络搜索计算量较大的问题。
[0040] 3、本发明提供的基于全连接神经网络优化的图像识别方法能够针对特定的需求问题,在搜索空间内对参数范围内的网络结构进行随机组合,得到最优全连接神经网络结构,从而提高图像识别的精度和效率。

附图说明

[0041] 图1是本发明实施例提供的基于全连接神经网络优化的图像识别方法;
[0042] 图2是本发明实施例提供的步骤S3中神经网络结构示意图;
[0043] 图3是本发明实施例提供的步骤S4的实现流程图;
[0044] 图4是本发明实施例提供的步骤S4的实例最优解集选择图。

具体实施方式

[0045] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0046] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0047] 图1示出了本发明实施例提供的基于全连接神经网络优化的图像识别方法的流程,为了便于说明仅示出了与本发明实施例相关的部分。
[0048] 如图1所示,本实施例提供的基于全连接神经网络优化的图像识别方法包括下述步骤:
[0049] 步骤S1、选择图像数据集作为训练样本输入至图像识别的全连接神经网络,以全连接神经网络结构及超参数作为优化目标,根据参数列表和参数取值步长构建优化目标向量。
[0050] 背景技术中有描述,可优化图像识别的神经网络以提高图像识别准确率和效率。目前传统的优化方法都只能用向量表示网络超参数组合,不能将网络隐藏层层数及隐藏层神经元数量等网络结构结合在一起用向量表示并进行优化计算。因此本步骤通过以网络结构及超参数作为优化目标设计优化目标向量。具体的,本步骤过程实现过程如下:
[0051] S11、选择图像数据集作为训练样本输入至图像识别的全连接神经网络,以全连接网络结构及超参数作为优化目标,设置参数列表。
[0052] 比如设置的参数列表包括五个可自适应的参数:隐藏层层数、隐藏层神经元数量、隐藏层激活函数、网络优化器和网络学习率。参数列表具体如下:
[0053]
[0054] 其中, 为网络隐藏层的数量, 为每层隐藏层的神经元数量, 为第 层隐藏层的神经元数量, 为可选激活函数列表, 为可选的第 种激活函数, 为 中任意一种激活函数, 为可选优化器列表, 为可选的第 种优化器, 为 中任意一种优化器, 为可选学习率列表, 为可选的第 种学习率, 为 中任意一种学习率。以手写数字图像MNIST数据集为例,可以选择如下参数: ,
, ,
,  。
[0055] S12、根据参数列表和参数取值步长构建优化目标向量,优化目标向量表达式为:
[0056]
[0057] 其中, 为第 层隐藏层的神经元数量, 为第 层隐藏层选择的激活函数,为网络选择的优化器, 为网络选择的学习率。
[0058] 网络隐藏层最大为 层时,优化目标向量 由长度为 的列表表示。 是复杂变量组合形成的向量,向量表示为:
[0059]
[0060] 其中, 为隐藏层神经元数量 , 为第 层隐藏层的神经元数量, 为隐藏层选择的激活函数 , 为第 层隐藏
层选择的激活函数, 为该网络选择的优化器 , 为该网络选择的优化器, 为该网络选择的学习率 , 为该网络选择的学习率。因此优化目标向量 又可表示为:
[0061] 。
[0062] S13、确定优化目标向量的上下限表达式:
[0063]
[0064] 其中 为优化目标向量上限, 为优化目标向量下限, 和 分别为第[0065] 层隐藏层神经元数量可取范围的上下边界, 和 分别为第 层隐藏层的激活函数可取范围的上下边界, 和 为网络优化器可取范围的上下边界, 和 为网络学习率可取范围的上下边界。
[0066] S14、根据参数列表和优化目标向量,得到搜索空间计算表达式:
[0067]
[0068] 其中, , 为优化器的种类数, 为学习率的种类数, 为激活函数的种类数, 为每层隐藏层的可选神经元数, 和 为第 层隐藏层神经元数量可取范围的上下边界,为取值间隔即步长, 表示取整。以上述MNIST图像数据集所选参数为例,搜索空间为:

[0069] 步骤S2、根据所述优化目标向量,建立图像识别网络参数量优化目标函数,以使网络能够自适应调整隐藏层层数、减少网络整体计算量;
[0070] 本步骤设计一种参数优化规则建立参数目标优化函数,以实现网络能够自适应调整隐藏层层数,减少网络整体计算量。本步骤具体实现过程如下:
[0071] S21、根据优化目标向量构建图像识别网络结构优化模型。
[0072] 为了自动优化隐藏层数,设置隐藏层的神经元取值可以取到零或负值,取到零或负值的隐藏层意表示此层及以后的隐藏层都不会添加到网络中,达到网络层数自动优化的效果。网络结构优化模型的网络层数变换规则为:
[0073] 当 且 ,此时 ,。比如,设定 ,且隐藏层神经元取值范
围为: , 。当隐藏层神经元取值为
时,隐藏层表示为
[0074] ;当隐藏层神经元取值为 时,隐藏层表示为 ,即只取一层隐藏层,且隐藏层神经元数量为30个。因此,为了保证至少有 个隐藏层,后续遗传算中可以设置染色体前 个参数始终大于零。
[0075] S22、根据优化目标向量构建图像识别网络参数量优化模型。
[0076] 网络随机输入向量 :
[0077]
[0078] 设置随机输入向量与网络参数对应关系为:
[0079]
[0080] 其中, 为随即输入向量, 为取值间隔即步长, 表示取整。 中的取值除以步长后取整,得到的整数为相应参数列表的索引值。 为隐藏层神经元个数,若值小于等于零,则此层不会添加到网络中; 为激活函数参数列表对应索引值; 为优化器参数列表对应索引值; 为学习率参数列表对应索引值。向量参数为取值范围中离散的数值,因此用循环在每个区间种随机生成一个离散值,根据网络层数变化规则,最终计算出的输入向量为:
[0081]
[0082] 显然 , , , 。
[0083]  S23、构建图像识别网络参数量优化目标函数 ,用以描述网络整体参数量。
[0084] 以全连接神经网络为例,参数优化目标函数 为:
[0085]
[0086] 其中, 为第 层隐藏层的神经元数量, 为输入图片的长度, 为输入图片的宽度。
[0087] 步骤S3、根据所述图像识别网络参数量优化目标函数并结合图像识别精度优化目标函数构建适应度函数,建立图像识别网络多目标优化模型。
[0088] 本步骤主要通过图像识别网络参数量优化目标函数和精度优化目标函数建立图像识别网络多目标优化模型,具体实现过程如下:
[0089] S31、通过优化网络结构使得训练精度最大化,建立图像识别精度目标函数。
[0090] 如图2所示网络结构,网络的输入为 ,隐藏层的神经元为,其计算式为 ,输出层的神经元为 ,其计
算式为 。其中, 为输入层的第 个神经元的输入变量, 为
从输入层第 个神经元指向第一层的第 个神经元的权重,
[0091] 为从隐藏层第 层第 个神经元指向第 层的第 个神经元的权重,为从隐藏层第 层第 个神经元指向输出层的权重, 为隐藏层第 层的第 个神经元, 为第 层隐藏层神经元的个数, 为激活函数。
[0092] 优化网络结构的目的之一是为了使训练精度最大化,本步骤建立精度目标函数[0093] ,用以描述网络的训练精度。其中, 为预测正确的结果,
[0094] 为预测错误的结果。
[0095] S32、联合图像识别精度优化目标函数和参数量优化目标函数,构建适应度函数,建立多目标优化函数 , 表示取最大值, 表示取最小值。
[0096] S33、建立图像识别网络多目标优化模型:
[0097]
[0098] 其中, 为原始网络精度, 为网络精度提升目标, 为Tensorflow自适应方法的精度, 为原始网络参数量。
[0099] 步骤S4、根据所述多目标优化模型,利用遗传算法进行优化计算,得到Pareto最优面,根据输出判断得到最优全连接神经网络结构,最后进行进行图像识别计算。
[0100] 结合图3所示,本步骤具体过程如下:
[0101] S41、随机生成输入向量 ,并设置遗传算法参数。
[0102] 本实施例中,按照上述参数列表,可选择的输入向量包括网络隐藏层数取值范围、隐藏层的神经元数量取值范围、隐藏层的激活函数取值范围、网络的优化器取值范围、网络的学习率取值范围。设置的遗传算法参数包括种群规模、交叉概率、变异概率、倒位概率、最大代数、最佳个体列表规模等。
[0103] 以MNIST图像数据集为例,选择参数为 时,网络识别精度为96.27%,网络整体参数量为30063;选择参数为 时,网络识别精度为96.22%,网络整体参数量为29775;选择参数为 时,网络识别精度为96.44%,网络整体参数量为27555。因此选择全部参数作为输入向量。
[0104] S42、根据随机生成的输入向量 初始化个体,形成初始种群,计算种群中每个个体的适应度,根据适应度进行非支配排序,通过复制、交叉及变异操作生成下一代个体。
[0105] S43、开始遗传流程设置迭代MAX_GEN代,若迭代过程未满MAX_GEN代则更新种群中个体适应度,进行快速非支配排序,并计算拥挤度,利用拥挤度进行种群内选择,保留精英并产生下一代种群;若迭代过程已满MAX_GEN代则输出进化生成的Pareto最优面解集。
[0106] 本实施例神经网络优化的本质是将待优化参数进行枚举,根据图像数据集的训练样本,每种参数情况都进行训练,然后测试精度,这是机器学习优化的基本步骤。本步骤遗传流程中迭代的过程就是枚举训练的过程,正因为枚举次数太多,也就是搜索空间太大,故而利用遗传算法自动寻优,找到相对优的解。以MNIST图像数据集为例,输出的Pareto最优面解集如图4所示,当精度优化目标函数 提高时,参数量优化目标函数 对应增加;当精度优化目标函数 减小时,参数量优化目标函数 对应减小。菱形标志的结果为解集中最大时的最优解,但优化的目标是得到较大的精度优化目标函数 和较低的参数量优化目标函数 ,从图中可以看出一个目标函数的提升伴随着另一个目标函数的牺牲,因此根据实际输出要求 大于0.95且 小于33000,即虚线所示右下角范围,五角星标志的结果为最优解。
[0107] S44、如果进化生成的模型的网络精度以及网络参数量均满足多目标优化模型的三个限定条件,则输出当前网络结构为最优全连接神经网络结构,否则继续步骤S43的遗传流程,直至得到最优全连接神经网络结构。
[0108] 经过前述S43遗传流程后,对进化生成的模型进行判断。若进化生成的模型精度在经验设置的模型精度 基础上提高了一定程度,如提高了 ,且比Tensorflow框架自动优化的模型适应度 高,且进化生成的模型网络参数量 比经验设置的模型网络参数量 减少了一定程度,如减少了10%,则认定满足多目标优化模型的三个限定条件,输出该网络结构为最佳网络结构,反之则继续S43中的操作。因此最终可以得到最优全连接神经网络结构。
[0109] 步骤S45、选择目标识别图像,将目标识别图像输入至所述最优全连接神经网络进行图像识别计算。
[0110] 当建立好最优全连接神经网络后,对于需要识别的目标识别图像,将图像输入至最优全连接神经网络中,通过神经网络的图像识别计算,即可输出目标识别结果。由于此全连接申请网络是通过网络结构和网络参数同时优化的神经网络,因此可明显提高图像的识别精度和效率。
[0111] 综上,现有技术中的遗传算法是一种常见的随机搜索与优化算法,针对深度神经网络的结构优化问题,本发明基于图像识别领域提供一种基于全连接神经网络的优化方法,解决了网络结构和网络参数不能同时优化的问题和网络优化整体参数量过大导致的网络搜索计算量较大的问题。对于大型神经网络,如YOLOv5等,可以截取其网络结构中的部分卷积网络模块进行网络优化操作,并将优化后的网络结构替换到整体结构中,能够降低网络训练所需资源,提高网络训练效率。
[0112] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。