CN105279555B - 一种基于进化算法的自适应学习神经网络实现方法 - Google Patents
一种基于进化算法的自适应学习神经网络实现方法 Download PDFInfo
- Publication number
- CN105279555B CN105279555B CN201510714025.2A CN201510714025A CN105279555B CN 105279555 B CN105279555 B CN 105279555B CN 201510714025 A CN201510714025 A CN 201510714025A CN 105279555 B CN105279555 B CN 105279555B
- Authority
- CN
- China
- Prior art keywords
- layer
- evolution algorithm
- individual
- network
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 29
- 230000003044 adaptive effect Effects 0.000 title claims abstract description 15
- 230000007935 neutral effect Effects 0.000 claims abstract description 40
- 210000000349 chromosome Anatomy 0.000 claims abstract description 30
- 230000001537 neural effect Effects 0.000 claims abstract description 8
- 230000004927 fusion Effects 0.000 claims abstract description 5
- 238000012549 training Methods 0.000 claims description 45
- 108090000623 proteins and genes Proteins 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 16
- 238000013135 deep learning Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 239000000284 extract Substances 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 10
- 238000013527 convolutional neural network Methods 0.000 claims description 9
- 230000002068 genetic effect Effects 0.000 claims description 7
- 210000004218 nerve net Anatomy 0.000 claims description 4
- 101150090192 how gene Proteins 0.000 claims description 3
- 230000000644 propagated effect Effects 0.000 claims description 3
- 230000006978 adaptation Effects 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 3
- 210000001519 tissue Anatomy 0.000 abstract 1
- 230000006399 behavior Effects 0.000 description 6
- 238000004088 simulation Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 238000005352 clarification Methods 0.000 description 1
- 238000000205 computational method Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000946 synaptic effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本发明属于神经网络计算技术领域,为一种基于进化算法的自适应学习神经网络实现方法,以某种或者某几种已知的神经网络作为进化算法的最初父代,通过进化算法整合作为所述最初父代的各个神经网络的特点,从而得到最优的输出值,本发明通过对神经网络实现的电路进行二进制编码,将编码所得到的结果作为一个个体的染色体,各个染色体构成生物体的原始种群,即最初父代,本发明突破以往只是利用进化算法对神经网络权值进行寻优的情形,实现利用进化算法对神经网络组织形式、网络间的连接权值和网络计算方法等方式同时进行寻优,增强网络自由度,扩大寻优范围;初始得到一个较为简单的网络,在后天学习中,通过算法加大网络的复杂度。
Description
技术领域
本发明属于神经网络计算技术领域,涉及多种可学习神经网络结构的实现与及进化算法在网络计算中的优化,特别涉及一种基于进化算法的自适应学习神经网络实现方法。
背景技术
目前对神经网络的研究大概可分为三种主流结构模式:感知型神经网络(Perceptron neural network)、反馈型神经网络(Back-propagate neural network)和深度学习神经网络(Deep Learning neural network)。每种网络都有其自身的特点,就总体性能上来说深度学习网络在图片识别中的表现性能优于其他两种。
感知型神经网络只有三层结构,第一层通常人为的对目标的特征进行抽象,第二层为计算网络,通过学习算法来改变第一层抽象出的特征的权值来实现对象识别,第三层作为输出层,输出计算结果。其优点是学习算法简单,从硬件上易于实现,但它本身有个先天性的缺陷,即只能实现目标特征可分离的问题,无法实现一些复杂逻辑。第二种是反向传播网络。相比于感知型网络,该结构可以实现更为复杂的算法,网络深度也有所增加。该结构通过输出反向调节前一层的突触权值,使得最后得到一个收敛的结果。然而这种结构存在学习时间对电路参数选择过于敏感的问题,如果参数选择不当,很可能得不到一个稳定的收敛结果。目前这种结构的神经网络已经运用于模式识别、系统仿真、故障智能诊断等方面。第三种是深度学习网络。随着人类对大脑的深入理解,生物学家发现,大脑处理问题的过程是通过层层特征提取,本级的输出结果为对上一级的抽象结果。深度学习的实质,是通过构建具有多个隐藏层的学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类或预测的准确性。“深度模型”是手段,“特征学习”是目的。区别于传统的浅层学习,深度学习的不同在于:首先,其强调模型结构的深度,通常有5-6层,甚至有更多层的隐藏节点;其次,其明显突出了特征学习的重要性,也就是说,通过逐层特征变换,将样本在原空间的特征表示变换到一个新特征空间,从而使分类或预测更加容易。但就实现结构上来说深度学习网络的复杂度比较高,识别准确度与训练次数有很大关系。
进化算法是通过模仿自然界的选择与遗传的机理来寻找最优解。进化算法有三个基本算子:选择、交叉和变异。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种基于进化算法的自适应学习神经网络实现方法,通过进化算法来控制某种或者某几种已知的神经网络算法形成的电路,实现在神经网络间的寻优;对于上述算法的硬件验证,本发明利用现场可编程门阵列(FPGA)完成,FPGA内部大部分都包括两种可配置逻辑模单元,一种是具有存储和逻辑运算功能的逻辑片(SLICEM),另一种是只含有逻辑运算功能的逻辑片(SLICEL),为了加快开发效率,本发明将使用FPGA模拟器仿真FPGA行为,由于真实的FPGA的运行速率与工作频率有关,但通过模拟器就可以克服这些不良因素。通过模拟器得到最终所需电路的连接方式后,再映射到实际的FPGA硬件上。
为了实现上述目的,本发明采用的技术方案是:
一种基于进化算法的自适应学习神经网络实现方法,以某种或者某几种已知的神经网络作为进化算法的最初父代,通过进化算法整合作为所述最初父代的各个神经网络的特点,从而得到最优的输出值。
其中,所述最初父代的获取方法为:通过对神经网络实现的电路进行二进制编码,将编码所得到的结果作为一个个体的染色体,从而实现了从硬件结构到算法原始数据的抽象,各个染色体构成生物体的原始种群,即最初父代。
进一步地,以每个神经网络的算法分别实现对特定物体的识别,将识别训练完成后得到的信息抽象成为一段二进制编码,将该编码视为生物的基因编码,作为一个个体的染色体。
所述进化算法步骤如下:
步骤1.评估每条染色体所对应个体的适应度;
步骤2.遵照适应度越高,选择概率越大的原则,从种群中选择若干个个体作为父代;
步骤3.抽取父母双方的染色体,进行交叉,产生子代;
步骤4.对子代的染色体进行变异;
步骤5.重复2,3,4步骤,直到新种群的产生,运行N代,从中选出表现最优的输出值。
本发明以训练感知型、反馈型、深度学习三种神经网络作为进化算法的最初父代,对其进行训练,使其具备初步识别图片中特定目标的功能,训练过程在FPGA模拟器上完成,识别完成后得到这三个网络的配置信息,将该配置信息抽象成为一段二进制编码,将该编码视为生物的基因编码,即三个个体的染色体。
所述最初父代的获取基于FPGA实现,包括如下步骤:
步骤1.利用C++编写的vertex7系FPGA模拟器模拟FPGA硬件结构,利用该模拟器分别搭建训练感知型、反馈型、深度学习三种神经网络并且训练,训练最终结果为得到三种神经网络对应的电路配置信息;
具体地,利用C++编写的vertex7系FPGA模拟器模拟FPGA各个功能单元的行为,从而实现对FPGA电路行为的模拟。
步骤2.感知型神经网络分三层,第一层为输入层,第二层为隐藏层,第三层为输出层,层与层之间有一个权值矩阵W1,通过识别图片中的特定物体来训练权值矩阵W1,最终得到一个稳定的输出结果,该训练过程主要通过不断输入图像特征信息,然后不断微调权值信息,最后得到所需要的输出,则完成训练过程,最后提取出训练完成时对应的配置信息;
步骤3.反馈型神经网络前向传播有三层,第一层输入层,第二层为隐藏层,第三层为输出层,在每层网络间有权值矩阵W2,通过输入图像特征训练得到最终的配置信息,该训练过程通过调节反馈的权值来使得得到稳定的输出,最后提取出训练完成时对应的配置信息;
在每层网络间有权值矩阵W2,通过输入图像特征训练得到最终的配置信息,该训练过程通过调节反馈的权值来使得得到稳定的输出,最后提取出训练完成时对应的配置信息;
步骤4.深度学习神经网络采用七层的卷积神经网络,前五层采用局部连接,后两层采用全连的方式,通过层层训练每层的权值信号W3,得到稳定的网络结构,最后提取出训练完成时对应的配置信息。
所述卷积神经网络的训练采用分层训练法,每一层网络单独训练,下一层网络在上一层网络的输出基础上进行训练,最后得到预期的输出结果。
利用得到的三种神经网络的配置信息,通过如下算法求解一个最优的电路结构:
步骤1.将得到的配置信息编码为二进制的基因序列;
步骤2.编码完成后,确定进化算法的适应函数F,用于评价每个个体对当前环境的适应度G,G用于确定哪些个体可以被留下,哪些被淘汰,通过概率来表征个体存在的可能性,从而确定哪些基因可以被遗传给下一代,其中:
Yi为当前网络的输出值,第i次输入得到的网络输出结果为Yi,y为预期的输出值,Fj为从y中选择最适合目标预期的一组Y,此时Yi与输出y的方差最小,j的取值为1或2或3,表示三种网络所对应的输出F,F包含Fj的所有值,为Fj的一组向量,F越大表示其适应环境的能力越强,通过适应度G的大小确定可被遗传给下一代的概率,即G越大,遗传给下一代的概率越大;
步骤3.通过遗传算子确定基因如何遗传给下一代,完成第一代个体的进化;
步骤4.将得到的新的个体重复到步骤2中,重新计算每个个体的适应函数F,同时确定每个个体的适应度G,进化到N代时,停止算法,选出其中表现最优的个体,确定该个体的基因编码,将该编码通过所述FPGA映射成电路。
所述步骤2中设定:如果概率小于0.1则将该个体淘汰;所述步骤4中设定进化到50代时,停止算法。
所述步骤3中遗传算子为交叉和变异,所述交叉采用随机交叉策略,每次交叉的地方都有计算机产生的随机数确定,同时变异也采用随机变异,交叉的概率定为0.7,变异的概率定为0.02。
所述步骤1中,利用C++编写的vertex7系FPGA模拟器模拟FPGA各个功能单元的行为,从而实现对FPGA电路行为的模拟。
与现有技术相比,本发明通过进化算法改变神经网络结构,可同时实现对神经网络的组织形式,连接权重,计算方法等,进行调节,本发明以某种或者某几种已知的神经网络作为进化算法的最初父代,通过进化算法整合三种网络的特点,从而得到最优的输出值。
目前对神经网络的探索基本都集中在对于其中某个特定网络的优化。本发明引入进化算法作为中介,通过进化算法来整合几种网络优点,从而得到一个更优的网络。通过进化算法来整合神经网络的方式可以不用知道网络的具体结构,从而避免人为因素所引入的一些先念影响,让网络往全局最优的方向进化。
利用进化算法整合网络结构的核心问题在于通过何种方式让神经网络和遗传算法联系到一起。本发明通过对神经网络实现的电路进行二进制编码,将编码所得到的结果作为一个个体的染色体,此处编码就实现了从硬件结构到算法原始数据的抽象。本发明中利用了三种典型方法实现神经网络,所以可以得到三组染色体。这三组染色体就构成了生物体的原始种群,即最初父代。之后就可以采用进化算法的一般步骤。
附图说明
图1是本发明实施例中vertex7可编程器件的逻辑片(slice)原理图。
图2是整个实施过程的流程图。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式。
本发明一种基于进化算法的自适应学习神经网络实现方法,以某种或者某几种已知的神经网络作为进化算法的最初父代,通过进化算法整合作为所述最初父代的各个神经网络的特点,从而得到最优的输出值,其中,所述最初父代的获取方法为:通过对神经网络实现的电路进行二进制编码,将编码所得到的结果作为一个个体的染色体,从而实现了从硬件结构到算法原始数据的抽象,各个染色体构成生物体的原始种群,即最初父代。
本实施例中,以每个神经网络的算法分别实现对特定物体的识别,将识别训练完成后得到的信息抽象成为一段二进制编码,将该编码视为生物的基因编码,作为一个个体的染色体。
之后采用进化算法的一般步骤:
步骤1.评估每条染色体所对应个体的适应度;
步骤2.遵照适应度越高,选择概率越大的原则,从种群中选择若干个个体作为父代;
步骤3.抽取父母双方的染色体,进行交叉,产生子代;
步骤4.对子代的染色体进行变异;
步骤5.重复步骤2,3,4,直到新种群的产生,运行N代,从中选出表现最优的输出值。
本实施例中,以训练感知型、反馈型、深度学习三种神经网络作为进化算法的最初父代,对其进行训练,使其具备初步识别图片中特定目标的功能,训练过程在FPGA模拟器上完成,识别完成后得到这三个网络的配置信息,将该配置信息抽象成为一段二进制编码,将该编码视为生物的基因编码,即三个个体的染色体。利用FPGA实现主要包括如下步骤:
步骤1,模拟vertex7系FPGA的硬件结构,FPGA中逻辑片(slice)的基本结构如图1所示,利用C++实现FPGA的模拟器,即模拟FPGA各个功能单元的行为,从而实现对FPGA电路行为的模拟;
步骤2,由于FPGA实现电路的本质是通过改变比特文件(二进制文件)去得到所需的电路,所以一种电路结构即对应一组二进制信号。在该FPGA模拟器上分别实现感知型、反馈型和深度学习神经网络,并从模拟器中提取出形成网络的配置信息。由此得到三组二进制信号,将这三组二进制信号等效为个体的染色体。
步骤3,在步骤2中得到的染色体上,采用进化算法对电路的编码进行优化,最后选出一个最优的结果。
步骤4,将步骤3中的得到的结果即一组二进制的配置文件,配置到实际的FPGA中,得到可运作的硬件电路。
具体地,为具体对图像中的特定目标进行识别学习,首先需要训练感知型、反馈型、深度学习三种神经网络的网络结构,让这三个网络具有初步识别图片中特定目标的功能。这三个神经网络训练的训练过程均在FPGA模拟器上完成,这样有利于加快模拟速度。识别完成后得到这三个网络的配置信息,即三组基因编码,也可称为三个个体的染色体,再利用进化算法进行相关优化。
具体地,包括以下两大步骤:
步骤一,在FPGA模拟器平台上搭建三种神经网络结构,分别学习识别同一图像中特定物体,并得到相应的三组染色体编码。
1.利用C++编写的vertex7系FPGA模拟器模拟FPGA硬件结构,利用该模拟器分别搭建这三种神经网络并且训练,训练最终结果为得到三种神经网络对应的电路配置信息。
2.感知型神经网络可分三层,第一层为输入层,第二层为隐藏层,第三层为输出层。层与层之间有一个权值矩阵W1,通过识别图片中的特定物体来训练权值矩阵W1,最终得到一个稳定的输出结果。该训练过程主要通过不断输入图像特征信息,然后不断微调权值信息,最后得到想要的输出,则完成训练过程。提取出训练完成时网络对应的配置信息。
3.反馈型神经网络前向传播同样也有三层,但不同的是有一层反馈传播层。同样在每层网络间也有权值矩阵W2,通过输入图像特征训练得到最终的配置信息。本次训练过程与感知型网络训练最大的不同在于,需通过调节反馈的权值来使得最后得到稳定的输出。同样地,需提取出训练完成时网络对应的配置信息。
4.深度学习神经网络包含两种卷积神经网络(Convolutional Neural Networks)和深度信任神经网络(Deep Belief Networks),由于本发明主要进行图像识别,所以采用卷积神经网络结构。本实施例采用七层的卷积神经网络,前面五层采用局部连接,后面两层采用全连的方式。通过层层训练每层的权值信号W3,得到稳定的网络结构,最后提取出相应的配置信息。对于卷积神经网络的训练采用分层训练法,每一层网络单独训练,下一层网络在上一层网络的输出基础上进行训练,最后得到预期的输出结果。则该网络训练完成。同样地,需提取出训练完成时网络对应的配置信息。
5.通过上述方法得到三种神经网络对应的配置信息后,转入步骤二。
步骤二,利用进化算法求解一个最优的电路结构,使得识别效率达到最高。
1.将步骤一中得到的配置信息,编码为二进制的基因编码。由于FPGA的配置信息本身就为一些二进制信号,所以可以直接利用配置信息作为基因编码,不需要过多复杂的编码过程。
2.编码完成后,确定进化算法的适应函数F,用于评价每个个体对当前环境的适应度G,G用于确定哪些个体可以被留下,哪些被淘汰,通过概率来表征个体存在的可能性,从而确定哪些基因可以被遗传给下一代,其中:
Yi为当前网络的输出值,第i次输入得到的网络输出结果为Yi,y为预期的输出值,Fj为从y中选择最适合目标预期的一组Y,此时Yi与与输出y的方差最小,j的取值为1或2或3,表示三种网络所对应的输出F,F包含Fj的所有值,为Fj的一组向量,函数F越大表示其适应环境的能力越强,G函数公式为“赌轮”算法的一种表达式,通过适应度G的大小确定可被遗传给下一代的概率,其中G为最终的到的遗传概率,即G越大,遗传给下一代的概率越大;在本实施例中设定如果概率小于0.1则将该个体淘汰。
3.通过上面两步已经可以确定哪些基因可以被遗传给下一代。下一步将确定这些基因如何遗传给下一代,即通过遗传算子。遗传算子主要为交叉和变异。此处采用随机交叉策略,每次交叉的地方都由计算机产生的随机数确定,同时变异也采用随机变异。交叉的概率定为0.7,变异的概率定为0.02.下面给出一个交叉和变异的实例:
交叉情况:如有两个体:
S1=10100011 S2=01001100
如果计算机产生的随机数为4,则在第四个位置发生交叉得到新的序列,新个体为:
S1=01000011 S2=10101100
变异情况:如有个体S=10011010,若计算机产生随机数4,则在第四个位置发生变异,从而得到新的个体S=10001010。
该步骤完成后,则第一代个体的进化完成。
4.将得到的新的个体重复到步骤2中,重新计算每个个体的适应函数,同时确定每个个体的适应度,进化到50代时,停止算法。选出其中表现最优的个体,确定该个体的基因编码。将该编码通过实际的FPGA映射成电路。
上述过程为本发明采用FPGA验证实例,同时可说明通过本发明可得到优化结果。这也说明了将进化算法作为一个对神经网络算法群寻优是确实可行的。此外如果想要得到一个更优的优化结果有两种方法可以对上述结果进行优化:第一,扩大初始个体的数量,本发明只提及了利用三个个体作为初始值,但实际上只要方案可行,可以加入任意大小的初始个体;第二,加大进化的代数N,本发明设定为50代,如果需要更高的精确度,可以设定更多的代数。
综上,本发明首先以某种或者某几种已知的神经网络算法分别实现对特定物体的识别,将识别训练完成后得到上述网络抽象成为一段二进制编码。其后,将该二进制编码视为生物的基因编码。将上述生物基因视为进化算法的初始种群大小,即进化算法的第一代。之后确定相应的适应函数、交叉变异规则、交叉变异概率与及相应的淘汰机制。进化若干代后(进化代数可根据实际精度需求来确定,代数越多则精度越高)停止。从最后一代中选出表现最优的基因。将该基因转译为FPGA的配置信息,利用该信息完成对实际FPGA硬件的配置。
以上仅为本发明较佳实例,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求所界定的保护范围为准。
Claims (8)
1.一种基于进化算法的自适应学习神经网络实现方法,以某几种已知的神经网络作为进化算法的最初父代,通过进化算法整合作为所述最初父代的各个神经网络的特点,从而得到最优的输出值,其特征在于,所述最初父代的获取方法为:通过对神经网络实现的电路进行二进制编码,将编码所得到的结果作为一个个体的染色体,从而实现了从硬件结构到算法原始数据的抽象,各个染色体构成生物体的原始种群,即最初父代;
所述进化算法步骤如下:
步骤1.评估每条染色体所对应个体的适应度;
步骤2.遵照适应度越高,选择概率越大的原则,从种群中选择若干个个体作为父代;
步骤3.抽取父母双方的染色体,进行交叉,产生子代;
步骤4.对子代的染色体进行变异;
步骤5.重复2,3,4步骤,直到新种群的产生,运行N代,从中选出表现最优的输出值。
2.根据权利要求1所述基于进化算法的自适应学习神经网络实现方法,其特征在于,以每个神经网络的算法分别实现对特定物体的识别,将识别训练完成后得到的信息抽象成为一段二进制编码,将该编码视为生物的基因编码,作为一个个体的染色体。
3.根据权利要求1所述基于进化算法的自适应学习神经网络实现方法,其特征在于,根据最初父代,由初始较为简单的神经网络,逐步增减新的连接方式,得到新的复杂的神经网络。
4.根据权利要求1所述基于进化算法的自适应学习神经网络实现方法,其特征在于,以训练感知型、反馈型、深度学习三种神经网络作为进化算法的最初父代,对其进行训练,使其具备初步识别图片中特定目标的功能,训练过程在FPGA模拟器上完成,识别完成后得到这三个网络的配置信息,将该配置信息抽象成为一段二进制编码,将该编码视为生物的基因编码,即三个个体的染色体。
5.根据权利要求4所述基于进化算法的自适应学习神经网络实现方法,其特征在于,所述最初父代的获取基于FPGA实现,包括如下步骤:
步骤1.利用C++编写的vertex7系FPGA模拟器模拟FPGA硬件结构,利用该模拟器分别搭建训练感知型、反馈型、深度学习三种神经网络并且训练,训练最终结果为得到三种神经网络对应的电路配置信息;
步骤2.感知型神经网络分三层,第一层为输入层,第二层为隐藏层,第三层为输出层,层与层之间有一个权值矩阵W1,通过识别图片中的特定物体来训练权值矩阵W1,最终得到一个稳定的输出结果,该训练过程主要通过不断输入图像特征信息,然后不断微调权值信息,最后得到所需要的输出,则完成训练过程,最后提取出训练完成时对应的配置信息;
步骤3.反馈型神经网络前向传播有三层,第一层输入层,第二层为隐藏层,第三层为输出层,在每层网络间有权值矩阵W2,通过输入图像特征训练得到最终的配置信息,该训练过程通过调节反馈的权值来使得得到稳定的输出,最后提取出训练完成时对应的配置信息;
步骤4.深度学习神经网络采用七层的卷积神经网络,前五层采用局部连接,后两层采用全连的方式,通过层层训练每层的权值信号W3,得到稳定的网络结构,最后提取出训练完成时对应的配置信息。
6.根据权利要求5所述基于进化算法的自适应学习神经网络实现方法,其特征在于,所述卷积神经网络的训练采用分层训练法,每一层网络单独训练,下一层网络在上一层网络的输出基础上进行训练,最后得到预期的输出结果。
7.根据权利要求5所述基于进化算法的自适应学习神经网络实现方法,其特征在于,利用得到的三种神经网络的配置信息,通过如下算法求解一个最优的电路结构:
步骤1.将得到的配置信息编码为二进制的基因序列;
步骤2.编码完成后,确定进化算法的适应函数F,用于评价每个个体对当前环境的适应度G,G用于确定哪些个体可以被留下,哪些被淘汰,通过概率来表征个体存在的可能性,从而确定哪些基因可以被遗传给下一代,其中:
<mrow>
<msub>
<mi>F</mi>
<mi>j</mi>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>Y</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mrow>
<mrow>
<mi>G</mi>
<mo>=</mo>
<mfrac>
<msub>
<mi>F</mi>
<mi>j</mi>
</msub>
<mrow>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mn>3</mn>
</msubsup>
<msub>
<mi>F</mi>
<mi>j</mi>
</msub>
</mrow>
</mfrac>
</mrow>
Yi为当前网络的输出值,第i次输入得到的网络输出结果为Yi,y为预期的输出值,Fj为从y中选择最适合目标预期的一组Y,此时Yi与输出y的方差最小,j的取值为1或2或3,表示三种网络所对应的输出F,F包含Fj的所有值,为Fj的一组向量,F越大表示其适应环境的能力越强,通过适应度G的大小确定可被遗传给下一代的概率,即G越大,遗传给下一代的概率越大;
步骤3.通过遗传算子确定基因如何遗传给下一代,完成第一代个体的进化;
步骤4.将得到的新的个体重复到步骤2中,重新计算每个个体的适应函数F,同时确定每个个体的适应度G,进化到N代时,停止算法,选出其中表现最优的个体,确定该个体的基因编码,将该编码通过所述FPGA映射成电路。
8.根据权利要求7所述基于进化算法的自适应学习神经网络实现方法,其特征在于,所述步骤2中设定:如果概率小于0.1则将该个体淘汰;所述步骤4中设定进化到50代时,停止算法;所述步骤3中遗传算子为交叉和变异,交叉采用随机交叉策略,每次交叉的地方都由计算机产生的随机数确定,同时变异也采用随机变异,交叉的概率定为0.7,变异的概率定为0.02。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510714025.2A CN105279555B (zh) | 2015-10-28 | 2015-10-28 | 一种基于进化算法的自适应学习神经网络实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510714025.2A CN105279555B (zh) | 2015-10-28 | 2015-10-28 | 一种基于进化算法的自适应学习神经网络实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279555A CN105279555A (zh) | 2016-01-27 |
CN105279555B true CN105279555B (zh) | 2017-10-17 |
Family
ID=55148535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510714025.2A Active CN105279555B (zh) | 2015-10-28 | 2015-10-28 | 一种基于进化算法的自适应学习神经网络实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105279555B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106291234B (zh) * | 2016-07-29 | 2019-07-23 | 武汉大学 | 一种基于卷积神经网络的输电线路区内外故障判断及故障选相方法 |
CN107124327B (zh) * | 2017-04-11 | 2019-04-02 | 千寻位置网络有限公司 | Jt808车载终端模拟器反检测的方法 |
CN107609648B (zh) * | 2017-07-21 | 2021-02-12 | 哈尔滨工程大学 | 一种结合堆叠降噪稀疏自动编码器的遗传算法 |
CN108196447B (zh) * | 2017-12-25 | 2020-05-12 | 清华大学 | 一种利用基于学习遗传进化算法的机器人双轴孔装配方法 |
CN108334949B (zh) * | 2018-02-11 | 2021-04-13 | 浙江工业大学 | 一种基于优化深度卷积神经网络结构快速进化的图像分类器构建方法 |
CN108446534A (zh) * | 2018-03-13 | 2018-08-24 | 腾讯科技(深圳)有限公司 | 选择神经网络超参数的方法、装置和计算机可读存储介质 |
CN108776834B (zh) * | 2018-05-07 | 2021-08-06 | 上海商汤智能科技有限公司 | 系统增强学习方法和装置、电子设备、计算机存储介质 |
CN108846477B (zh) * | 2018-06-28 | 2022-06-21 | 上海浦东发展银行股份有限公司信用卡中心 | 一种基于反射弧的智慧大脑决策系统及决策方法 |
CN109255163A (zh) * | 2018-08-23 | 2019-01-22 | 佛山市顺德区中山大学研究院 | 基于追踪编码和遗传算法的电路结构优化方法 |
CN111105029B (zh) * | 2018-10-29 | 2024-04-16 | 北京地平线机器人技术研发有限公司 | 神经网络的生成方法、生成装置和电子设备 |
CN109299142B (zh) * | 2018-11-14 | 2020-10-27 | 中山大学 | 一种基于进化算法的卷积神经网络结构搜索方法及系统 |
CN111371983A (zh) * | 2018-12-26 | 2020-07-03 | 清华大学 | 一种视频在线稳定方法及系统 |
CN110147884A (zh) * | 2019-04-02 | 2019-08-20 | 佛山市顺德区中山大学研究院 | 一种高效电路拓扑结构进化方法及其系统 |
CN110135498A (zh) * | 2019-05-17 | 2019-08-16 | 电子科技大学 | 一种基于深度进化神经网络的图像识别方法 |
CN110609478B (zh) * | 2019-10-21 | 2023-03-03 | 常州大学 | 一种基于改进遗传算法的气压自适应在线pid整定方法 |
CN111191769B (zh) * | 2019-12-25 | 2024-03-05 | 中国科学院苏州纳米技术与纳米仿生研究所 | 自适应的神经网络训练与推理装置 |
CN111611891B (zh) * | 2020-05-14 | 2024-03-08 | 龙立强人工智能科技(苏州)有限公司 | 应用神经网络深度学习的整体性智能识别方法 |
CN113887636B (zh) * | 2021-10-09 | 2023-04-07 | 四川大学 | 基于遗传算法的可选择数据增强方法及系统 |
CN114299344A (zh) * | 2021-12-31 | 2022-04-08 | 江南大学 | 一种针对图像分类的神经网络结构低成本自动搜索方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593703A (zh) * | 2013-11-26 | 2014-02-19 | 上海电机学院 | 基于遗传算法的神经网络优化系统及方法 |
CN104504442A (zh) * | 2014-12-30 | 2015-04-08 | 湖南强智科技发展有限公司 | 神经网络优化方法 |
CN104915195A (zh) * | 2015-05-20 | 2015-09-16 | 清华大学 | 一种基于现场可编程门阵列实现神经网络计算的方法 |
-
2015
- 2015-10-28 CN CN201510714025.2A patent/CN105279555B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593703A (zh) * | 2013-11-26 | 2014-02-19 | 上海电机学院 | 基于遗传算法的神经网络优化系统及方法 |
CN104504442A (zh) * | 2014-12-30 | 2015-04-08 | 湖南强智科技发展有限公司 | 神经网络优化方法 |
CN104915195A (zh) * | 2015-05-20 | 2015-09-16 | 清华大学 | 一种基于现场可编程门阵列实现神经网络计算的方法 |
Non-Patent Citations (2)
Title |
---|
A neural network method for identification of prokaryotic and eukaryotic signal peptides and prediction of their cleavage sites;Henrik Nielsen etal.;《International Journal of Neural System》;20111231;第8卷(第5-6期);第581-599页 * |
FPGA implementation of the multilayer neural network for the speed estimation of the two-mass drive system;Orlowska-Kowalasks T etal.;《IEEE Transactions on Industrial Informatics》;20111231;第7卷(第3期);第436-445页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105279555A (zh) | 2016-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105279555B (zh) | 一种基于进化算法的自适应学习神经网络实现方法 | |
CN104751842B (zh) | 深度神经网络的优化方法及系统 | |
CN104899431B (zh) | 基于蚁群和粒子群集成的lssvm脉动风速预测方法 | |
CN106548190A (zh) | 模型训练方法和设备以及数据识别方法 | |
CN106503802A (zh) | 一种利用遗传算法优化bp神经网络系统的方法 | |
CN107145943A (zh) | 混沌背景中基于改进教学优化算法的检测回声状态网络微弱信号的方法 | |
CN109242149A (zh) | 一种基于教育数据挖掘的学生成绩早期预警方法及系统 | |
CN111931902A (zh) | 一种生成对抗网络模型、及利用该生成对抗网络模型的车辆轨迹预测方法 | |
Ahmad et al. | Genetic algorithm-artificial neural network (GA-ANN) hybrid intelligence for cancer diagnosis | |
US11514327B2 (en) | Apparatus and method for utilizing a parameter genome characterizing neural network connections as a building block to construct a neural network with feedforward and feedback paths | |
Ahmadi et al. | Learning fuzzy cognitive maps using imperialist competitive algorithm | |
CN110490320A (zh) | 基于预测机制和遗传算法融合的深度神经网络结构优化方法 | |
CN109492748A (zh) | 一种基于卷积神经网络的电力系统的中长期负荷预测模型建立方法 | |
CN108594793A (zh) | 一种改进的rbf飞控系统故障诊断网络训练方法 | |
CN106097351A (zh) | 一种基于多目标的自适应阈值图像分割方法 | |
CN101673354A (zh) | 操作条件反射自动机及其在仿生自主学习控制中的应用 | |
KR100850914B1 (ko) | 게임 캐릭터 제어방법 | |
CN107886163A (zh) | 基于agn及cnn的单目标优化问题寻优方法及装置 | |
De Campos et al. | Automatic design of neural networks with l-systems and genetic algorithms-a biologically inspired methodology | |
US11379731B2 (en) | Relating complex data | |
Lizhe et al. | BP network model optimized by adaptive genetic algorithms and the application on quality evaluation for class teaching | |
CN112525194A (zh) | 一种基于海马-纹状体内源性和外源性信息的认知导航方法 | |
CN106529672A (zh) | 基于人工蜂群算法的选择性神经网络集成算法 | |
WO2019246116A1 (en) | Apparatus and method for utilizing a parameter genome characterizing neural network connections as a building block to construct a neural network with feedforward and feedback paths | |
CN102789594B (zh) | 一种基于diva神经网络模型的语音生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190704 Address after: 361022 Unit 0206, Unit 109, 62 Chengyi North Street, Xiamen Software Park Phase III, Fujian Province Patentee after: Xiamen Semiconductor Industry Technology Research and Development Co., Ltd. Address before: 100084 Beijing Haidian District 100084 box 82 box, Tsinghua University Patent Office Patentee before: Tsinghua University |
|
TR01 | Transfer of patent right |