Presentation is loading. Please wait.

Presentation is loading. Please wait.

3.2 基于遗传算法的神经网络优化方法.

Similar presentations


Presentation on theme: "3.2 基于遗传算法的神经网络优化方法."— Presentation transcript:

1 3.2 基于遗传算法的神经网络优化方法

2 概述 BP算法是人工神经网络中应用最广泛的算法,但是存在着一些缺陷: 一是学习收敛速度太慢; 二是不能保证收敛到全局最小点;
三是网络结构不易确定。 BP算法优化后仍存在一定的问题 网络结构确定 初始连接权值选取 阈值的选择 遗传算法应用于神经网络 优化人工神经网络(ANN)的结构, 学习神经网络的权值,也就是用遗传算法取代一些传统的学习算法。

3 概述 遗传算法(Genetic Algorithm, GA)是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型。
由美国密执根(Michigan)大学的J.Holland教授于1975年首先提出。 Hello,I’m John Holland

4 遗传算法简介 算法原理 首先将问题求解表示成基因型(如常用的二进制编码串),从中选取适应环境的个体,淘汰不好的个体,把保留下来的个体复制再生,通过交叉、变异等遗传算子产生新一染色体群。依据各种收敛条件,从新老群体中选出适应环境的个体,一代一代不断进步,最后收敛到适应环境个体上,求得问题最优解

5 3.2.2 遗传算法简介 生物遗传学概念与遗传算法中概念的对应关系 生物遗传学概念 遗传算法中的作用 适者生存
遗传算法简介 生物遗传学概念与遗传算法中概念的对应关系 生物遗传学概念 遗传算法中的作用 适者生存 在算法停止时,最优目标值的解有最大的可能被留住 个体(individual) 目标函数的解 染色体(chromosome) 解的编码(向量) 基因(gene) 解中的每一分量的特征(或值) 适应性(fitness) 适应度函数 群体(population) 选定的一组解(其中解的个数为群体的规模) 种群(reproduction) 根据适应函数选取的一组解 交配(crossover) 按交配原则产生一组新解的过程 变异(mutation) 编码的某一分量发生变化的过程

6 3.2.2 遗传算法简介 算法步骤 1.随机产生一定数目的初始个体(染色体) 2.用评价函数来评价每个染色体的优劣 3.基于适应值的选择策略
遗传算法简介 算法步骤 1.随机产生一定数目的初始个体(染色体) 这些随机产生的染色体组成一个种群,种群中的染色体数目称为种群的规模或大小(pop-size)。 2.用评价函数来评价每个染色体的优劣 染色体对环境的适应程度(称为适应度),并用作以后遗传操作的依据。 3.基于适应值的选择策略 从当前种群中选取一定的染色体作为新一代的染色体,染色体的适应度越高,其被选择的机会越大。 4.对这个新生成的种群进行交叉(交配)操作、变异操作。 变异操作的目的使种群中的个体具有多样性,防止陷入局部最优解,这样产生的染色体群(种群)称为后代。 5.判断是否达到预定的迭代次数,是则结束,否则返回2进入下一轮迭代操作

7 遗传算法的流程图 执行杂交 GEN=0 产生初始群体 是否满足停止准则 指定结果 结 束 计算每个个体的适应度 i=0 i=N ?
结 束 计算每个个体的适应度 i=0 i=N ? 以概率选择遗传算子 GEN=GEN+1 选择一个个体 选择两个个体 执行复制 i=i+1 执行变异 复制到新群体 执行杂交 插入到新群体 将两个子代串插入到新群体 pr pc pm GEN—当前代数 N—群体规模 遗传算法的流程图

8 3.2.3 遗传算法工具箱 编码和种群生成 指令格式: 参数说明:
遗传算法工具箱 编码和种群生成 指令格式: Function[pop]=initializega(populationSize,variableBounds,evalFN,evalOps,options) 参数说明: pop:随机生成的初始种群 populatoinSize:种群大小即种群中个体的数目 variableBounds:表示变量边界的矩阵 evalFN:适应度函数 evalOps:传给适应度函数的参数 options:选择编码形式:1为浮点编码,0为二进制编码

9 遗传算法工具箱 进行遗传操作 指令格式: function [x,endPop,bPop,traceInfo]=ga(bounds,evalFN,evalOps,startPop,opts, termFN,termOps,selectFN,selectOps,xOverFNs,xOverOps,mutFNs,mutOps) 参数说明: (1)输出参数 X:求得的最优解 endPop:得到的最终种群 bPop:最优种群的搜索轨迹 traceInfo:每代的最优值和均值矩阵 (2)输入参数 Bounds:代表变量上下界的矩阵 startPop:可以从初始化函数中得到的初始解矩阵 evalFN:适应度函数 termFN:终止函数的名称 termOps:终止函数的参数 selectFN:选择函数名 selectOpts:选择参数 xOverFNS:交叉函数名 xOverOps:交叉参数 mutFNs:变异函数名 mutOps:变异参数

10 3.2.4 用遗传算法优化神经网络权值的学习过程 以2.3.2中的BP网络为例,其遗传算法学习权值步骤如下 1)初始化种群P
用遗传算法优化神经网络权值的学习过程 以2.3.2中的BP网络为例,其遗传算法学习权值步骤如下 1)初始化种群P 包括交叉规模、交叉概率Pc、突变概率Pm以及权值初始化 2)计算每一个个体评价函数,并将其排序,可按下式概率值选择网络个体 为个体 的适应度,可用误差平方和来衡量,即 以交叉概率Pc对个体 和 进行交叉操作,产生新个体 和 ,没有进行交叉操作的个体直接进行复制。

11 用遗传算法优化神经网络权值的学习过程 4)利用变异概率Pm突变产生 的新个体 。 5)将新个体插入到种群P中,并计算新个体的评价函数。 6)判断算法是否结束。如果找到了满意的个体或已经达到最大的迭代次数则结束,否则转3)进入下一轮迭代。 算法结束,如达到预先设定的性能指标后,将最终群体中的最优个体解码即可得到优化后的网络连接权值系数。 用遗传算法优化神经网络的MATLAB实现请参阅4.5.3节

12 小结 概述 遗传算法简介 遗传算法工具箱函数 用遗传算法优化BP神经网络权值的学习过程

13 谢谢!


Download ppt "3.2 基于遗传算法的神经网络优化方法."

Similar presentations


Ads by Google