机器学习神经网络_第1页
机器学习神经网络_第2页
机器学习神经网络_第3页
机器学习神经网络_第4页
机器学习神经网络_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,机器学习,基于遗传算法一BP神经网络图像处理,什么是神经网络神经元:生物学上的神经元,人工神经元是对生物神经元的简化和模拟。生物神经元由细胞体、树突和轴突这三部分组成,如图所示。树突是细胞的输入端,通过细胞间连接的节点“突触”接触四周细胞传出的神经冲动,轴突相当于细胞的输出端,其端部的众多神经末梢为信号的输出端子,用于传出神经冲动。生物神经元具有兴奋和抑制两种工作状态。当传入的神经冲动,使细胞膜电位升高到阈值(约为40mV)时,细胞进入兴奋状态,产生神经冲动,由轴突输出。相反,若传入的神经冲动,使细胞膜电位降到低于阈时,细胞进入抑制状态,没有神经冲动输出。,什么是神经网络神经元模型:为了模拟生物神经元,一个简化的人工神经元如图所示。,它有三个基本要素:1一组连接权(对应于生物神经元的突触),连接强度由各连接上的权值表示,权值为正表示激励,为负值表示抑制。2一个求和单元,用于求取各输入信息的加权和(线性组合)。3一个非线性激励函数,起非线性映射作用并限制神经元输出幅度在一定的范围之内。此外还有一个阙值。阈值也被看作是一个输入分量,也就是阈值也是一个权值。在网络的设计中,偏差起着重要的作用,它使得激活函数的图形可以左右移动而增加解决问题的可能性。,什么是神经网络神经元模型:数学表达,净输入通过传递(TransferFunction)f()后,便得到第j个神经元的输出:,于是节点j的净输入可表示为:,什么是神经网络神经元模型:传递函数/激励函数,阶跃函数,Sigmoid(x)函数,BP算法由数据流的前向计算(正向传播)和误差信号的反向传播两个过程构成。正向传播时,传播方向为输入层隐层输出层,每层神经元的状态只影响下一层神经元。若在输出层得不到期望的输出,则转向误差信号的反向传播流程。通过这两个过程的交替进行,在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达到最小值,从而完成信息提取和记忆过程。,至此B-P网络就完成了n维空间向量对m维空间的近似映射。,输出层节点的输出为,定义误差函数,式中为期望输出。对于个样本,全局误差为:,输出层权值的变化,于是最终输出层各神经元的权值调整公式为:,(学习效率),BP算法理论具有依据可靠、推导过程严谨、精度较高、通用性较好等优点,但标准BP算法存在以下缺点:收敛速度缓慢;容易陷入局部极小值;难以确定隐层数和隐层节点个数。在实际应用中,BP算法很难胜任,因此出现了很多改进算法。,自适应调整学习速率:调整的基本指导思想是:在学习收敛的情况下,增大,以缩短学习时间;当偏大致使不能收敛时,要及时减小,直到收敛为止。,利用动量法改进BP算法:动量法权值调整算法的具体做法是:将上一次权值调整量的一部分迭加到按本次误差计算所得的权值调整量上,作为本次的实际权值调整量。,遗传算法(GA,GeneticAlgorithm),也称进化算法。遗传算法是受达尔文的进化论的启发,借鉴生物进化过程而提出的一种启发式搜索算法。因此在介绍遗传算法前有必要简单的介绍生物进化知识。进化论知识作为遗传算法生物背景的介绍,下面内容了解即可:种群(Population):生物的进化以群体的形式进行,这样的一个群体称为种群。个体:组成种群的单个生物。基因(Gene):一个遗传因子。染色体(Chromosome):包含一组的基因。生存竞争,适者生存:对环境适应度高的、牛B的个体参与繁殖的机会比较多,后代就会越来越多。适应度低的个体参与繁殖的机会比较少,后代就会越来越少。遗传与变异:新个体会遗传父母双方各一部分的基因,同时有一定的概率发生基因变异。简单说来就是:繁殖过程,会发生基因交叉(Crossover),基因突变(Mutation),适应度(Fitness)低的个体会被逐步淘汰,而适应度高的个体会越来越多。那么经过N代的自然选择后,保存下来的个体都是适应度很高的,其中很可能包含史上产生的适应度最高的那个个体。,具体步骤如下:1编码方式:神经网络的权值学习是一个复杂的连续参数优化问题,如果采用二进制编码,会造成编码串过长,且需要再解码为实数,使权值变化为步进,影响网络学习精度。这里我们采用了实数编码,如图34所示,神经网络的各个权值按一定的顺序级联为一个长串,串上的每一个位置对应着网络的一个权值。,3评价函数:将染色体上表示的各权值分配到给定的网络结构中,网络以训练集样本为输入输出,运行后返回误差平方和的倒数作为染色体的评价函数。,4遗传算子:对于不同的应用问题,遗传算子的形式多种多样,这里采用了权值交叉和权值变异算子。如图35所示。,其中,N是群体规模。在实际学习中,一般将适应度最大的个体无条件地遗传给下一代。,遗传算法能够收敛到全局最优解,而且遗传算法的鲁棒性较强,将遗传算法与前馈神经网络结合起来是很有意义的,不仅能发挥神经网络的非线性映射能力,而且使神经网络具有很快的收敛速度和较强的学习能力。将遗传算法用于学习神经网络权值,首先确定神经网络的结构,列出神经网络的神经元和神经元之间的连接关系,将这些连接权编码成实数码串表示的个体,随机地生成这些码串的群体;然后,进行常规的遗传算法优化计算;最后将最优个体解码,确定神经网络的权值。,在本文中设计的权值学习算法中,网络的权值是经过三个阶段的学习得到的。第一个阶段,利用BP算法进行一定次数的学习以达到选取初值的效果;第二个阶段,采用遗传算法完成接近给定精度的网络学习,完成一定精度的学习;第三个阶段,在遗传算法收敛速度较慢时,改用BP算法完成给定精度的学习。这样建立的网络模型稳定、全局收敛速度快,同时具有很强的记忆能力和推广能力。算法流程图如图所示。,有了上面的理论基础,我们现在开始构建用于图像识别的遗传BP网络分类器,其网络模型如图37所示,手写体数字识别在邮政编码识别、银行业务等方面有重要的应用,由于字体变化大,因此识别率要求较高。实验数据为美国邮政服务数据库USPS(USPostalService)中的编码集。USPS数据库以Matlab文件形式存在的。有7291个训练样本和2007个测试样本,每一个模式都以16x16的点阵形式存在,点阵的每一个元素都是-1+l之间的双精度实数。我们从训练样本中选取200个作为训练集,从测试样本中选取100个作为测试集。表32、33给出了每一个文件的结构。其中trainarg给出了每个模式的真是类别。比如说,一个数是6,那么它在6这个位置上为1,其余位置为一1。,我们分别采用遗传一BP神经网络和标准BP神经网络进行实验。网络参数设置如下:我们都采用四层神经网络,输入节点为256,输出节点设为4(经过8421编码),为了保证网络输出Ol范围内的数,隐含层和输出层神经元的传递函数均取Sigmoid函数。交叉率选为0.3,变异率选为0.1。经过实验,各个网络收敛曲线如图3-8,图39所示,从曲线中我们可以发现,在相同的误差范围内,遗传一BP网络收敛速度快,训练时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论