神经网络+数学建模模型及算法简介_第1页
神经网络+数学建模模型及算法简介_第2页
神经网络+数学建模模型及算法简介_第3页
神经网络+数学建模模型及算法简介_第4页
神经网络+数学建模模型及算法简介_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

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

文档简介

神经网络算法

简介一、引例

1981年生物学家格若根(W.Grogan)和维什(W.Wirth)发现了两类蚊子(或飞蠓midges).他们测量了这两类蚊子每个个体的翼长和触角长,数据如下:翼长触角长类别

1.641.38Af1.821.38Af1.901.38Af1.701.40Af1.821.48Af1.821.54Af2.081.56Af翼长触角长类别1.781.14Apf1.961.18Apf1.861.20Apf1.721.24Af2.001.26Apf2.001.28Apf1.961.30Apf1.741.36Af问:若抓到三只新的蚊子,它们的触角长和翼长分别为(1.24,1.80);

(1.28,1.84);(1.40,2.04).问它们应分别属于哪一个种类?

把翼长作纵坐标,触角长作横坐标;那么每个蚊子的翼长和触角决定了坐标平面的一个点.其中6个蚊子属于APf类;用黑点“·”表示;9个蚊子属Af类;用小圆圈“。”表示.得到的结果见图1图1飞蠓的触角长和翼长一、引例

1989年美国大学生数学建模问题思路:例如;取A=(1.44,2.10)和B=(1.10,1.16),过AB两点作一条直线:

y=1.47x-0.017其中x表示触角长;y表示翼长.

分类规则:设一个蚊子的数据为(x,y)

如果y≥1.47x-0.017,则判断蚊子属Apf类;

如果y<1.47x-0.017;则判断蚊子属Af类.

一、引例

作一直线将两类飞蠓分开分类结果:(1.24,1.80),(1.28,1.84)属于Af类;(1.40,2.04)属于Apf类.图2分类直线图

一、引例

•缺陷:根据什么原则确定分类直线?

若取A=(1.46,2.10),B=(1.1,1.6)不变,则分类直线变为y=1.39x+0.071分类结果变为:(1.24,1.80),(1.40,2.04)属于Apf类;(1.28,1.84)属于Af类

哪一分类直线才是正确的呢?

一、引例

A=(1.44,2.10)再如,如下的情形能不能用分类直线的办法呢?

新思路:将问题看作一个系统,飞蠓的数据作为输入,飞蠓的类型作为输出,研究输入与输出的关系。一、引例

方法:马氏距离判别法、Bayes判别法等人工神经网络模型前言所谓人工神经网络就是基于模仿生物大脑的结构和功能而构成的一种信息处理系统。粗略地讲,大脑是由大量神经细胞或神经元组成的。每个神经元可看作是一个小的处理单元,这些神经元按某种方式连接起来,形成大脑内部的生理神经元网络。这种神经元网络中各神经元之间联结的强弱,按外部的激励信号做自适应变化,而每个神经元又随着所接收到的多个接收信号的综合大小而呈现兴奋或抑制状态。生物神经网基本工作机制:一个神经元有两种状态——兴奋和抑制平时处于抑制状态的神经元,当接收到其它神经元经由突触传来的冲击信号时,多个输入在神经元中以代数和的方式叠加。进入突触的信号会被加权,起兴奋作用的信号为正,起抑制作用的信号为负。如果叠加总量超过某个阈值,神经元就会被激发进入兴奋状态,发出输出脉冲,并由轴突的突触传递给其它神经元。人工神经网络的生物学基础人工神经网络的生物学基础信息输入信息传播与处理信息传播与处理(整合)信息传播与处理结果:兴奋与抑制信息输出神经网络的基本思想人工神经元的基本构成:人工神经元-信息处理单元人工神经元-信息处理单元信息输入人工神经元-信息处理单元信息传播与处理:加权求和人工神经元-信息处理单元信息传播人工神经元-信息处理单元信息传播与处理人工神经元-信息处理单元信息输出神经元的传递函数f(X)是激发函数;它可以是线性函数,也可以是非线性函数.例如,若取激发函数为符号函数

神经元的传递函数S型传递函数注:一个神经元含有与输入向量维数相同个数的权系数,若将阈值看作是一个权系数,-1是一个固定的输入,另有n-1个正常的输入,则式也可表示为:

参数识别:假设函数形式已知,则可以从已有的输入输出数据确定出权系数及阈值。

ojx1-1x2简单原理人工神经网络是根据人的认识过程而开发出的一种算法。假如我们现在只有一些输入和相应的输出,而对如何由输入得到输出的机理并不清楚,那么我们可以把输入与输出之间的未知过程看成是一个“网络”,通过不断地给这个网络输入和相应的输出来“训练”这个网络,网络根据输入和输出不断地调节自己的各节点之间的权值来满足输入和输出。这样,当训练结束后,我们给定一个输入,网络便会根据自己已调节好的权值计算出一个输出。这就是神经网络的简单原理。神经网络的作用网络说话人们把一本教科书用网络把它读出来(当然需要通过光电,电声的信号转换);开始网络说的话像婴儿学语那样发出“巴、巴、巴”的声响;但经过B-P算法长时间的训练竟能正确读出英语课本中90%的词汇.从此用神经网络来识别语言和图象形成一个新的热潮。人工神经网络基本特点

(1)可处理非线性

(2)并行结构.对神经网络中的每一个神经元来说;其运算都是同样的.这样的结构最便于计算机并行处理.

(3)具有学习和记忆能力.一个神经网络可以通过训练学习判别事物;学习某一种规律或规则.(4)对数据的可容性大.在神经网络中可以同时使用量化数据和质量数据(如好、中、差、及格、不及格等).(5)神经网络可以用大规模集成电路来实现.如美国用256个神经元组成的神经网络组成硬件用于识别手写体的邮政编码.人工神经网络的分类按网络连接的拓扑结构分类:层次型结构:将神经元按功能分成若干层,如输入层、中间层(隐层)和输出层,各层顺序相连单纯型层次型结构人工神经网络的分类按网络内部的信息流向分类:前馈型网络:网络信息处理的方向是从输入层到各隐层再到输出层逐层进行前馈型网络神经网络的学习规则

关键在于如何决定每一神经元的权值。

常用的学习规则有以下几种:Hebb规则Delta规则(最小均方差规则

)反向传播学习方法Kohonen学习规则(用于无指导训练网络)Grosberg学习方法神经网络常用模型共70多种,具有代表性的有:(1)感知器(Perceptron)

(2)多层前馈(BP)网络

(3)Hopfield网络(优化)(4)Boltzmann机(在BP中加入噪声)(5)双向联想记忆网络(快速存储)……人工神经网络的工作原理人工神经网络的工作原理到底是怎样的,我们可以从一个最简单的网络来剖析,一定程度上打开这个黑匣子。1958年,美国心理学家FrankRosenblatt提出一种具有单层计算单元的神经网络,称为Perceptron,即感知器。感知器是模拟人的视觉接受环境信息,并由神经冲动进行信息传递的层次型神经网络。单层感知器的结构与功能都非常简单,以至于在解决实际问题时很少采用,但由于它在神经网络研究中具有重要意义,是研究其它网络的基础,常作为学习神经网络的起点。人工神经网络的工作原理感知器模型(单层前向神经网络)j=1,2,…,m

输出类别指示输入样本人工神经网络的工作原理感知器模型净输入:输出为:Tj为阀值,sgn为符号函数人工神经网络的工作原理(C.)感知器模型具体的:设输入向量X=(x1,x2)T输出:则由方程w1jx1+w2jx2-Tj=0确定了二维平面上的一条分界线ojx1-1x2人工神经网络的工作原理感知器模型具体的:则由方程w1jx1+w2jx2-Tj=0确定了二维平面上的一条分界线(Why?)w1jx1+w2jx2–Tj

=0w1jx1=Tj

-w2jx2x1=(Tj

-w2jx2)/w1j

=-(w2j/w1j)x2+Tj

/w1j=a

x2+c人工神经网络的工作原理感知器模型具体的:这样的话,我们就可以得到

思路:例如;取A=(1.44,2.10)和B=(1.10,1.16),过AB两点作一条直线:

y=1.47x-0.017其中x表示触角长;y表示翼长.

分类规则:设一个蚊子的数据为(x,y)

如果y≥1.47x-0.017,则判断蚊子属Apf类;

如果y<1.47x-0.017;则判断蚊子属Af类.

一、引例

作一直线将两类飞蠓分开人工神经网络的工作原理感知器模型一个最简单的单计算节点感知器具有分类功能。其分类原理是将分类知识存储于感知器的权向量(包含了阈值)中,由权向量确定的分类判决界面将输入模式分为两类。ojx1-1x2单层感知器的局限性是:仅对线性可分问题具有分类能力。神经网络研究的发展(1)第一次热潮(40-60年代未)1943年,美国心理学家W.McCulloch和数学家W.Pitt在提出了一个简单的神经元模型,即MP模型。1958年,F.Rosenblatt等研制出了感知机(Perceptron)。(2)低潮(70-80年代初):(3)第二次热潮1982年,美国物理学家J.J.Hopfield提出Hopfield模型,它是一个互联的非线性动力学网络,他解决问题的方法是一种反复运算的动态过程,这是符号逻辑处理方法所不具备的性质.1987年首届国际ANN大会在圣地亚哥召开,国际ANN联合会成立,创办了多种ANN国际刊物。经典的人工神经网络算法BP算法BP(ErrorBackProragation,BP)误差反向传播算法它是有指导训练的前馈多层网络训练算法,是靠调节各层的加权,使网络学会由输入输出对组成的训练组执行优化的方法是梯度下降法BP算法是使用非常广泛的一种算法,最常用的转移函数是Sigmoid函数梯度法考虑无约束问题,其中函数f(x)一阶连续可导,梯度指对各个自变量的偏导数依次排列所成的向量。梯度法就是在点x处以f(x)的负梯度方向进行搜索的一种优化方法,其迭代公式,其中,是从出发的搜索方向,取最速下降方向经典的人工神经网络算法BP算法BP网络模型输入层隐层输出层网络学习的目的是要使网络产生尽可能逼近理想的反应。网络受训练时,不断将网络的输出数据与理想数据相比较,并按学习规格改变权重,直到网络的输出数据对所有训练数据与理想输出数据之差在要求的误差范围之内。BP神经网络模型

简单网络经典的人工神经网络算法BP算法学习的过程:正向传播:输入样本---输入层---各隐层---输出层判断是否转入反向传播阶段:若输出层的实际输出与期望的输出(教师信号)不符误差反传误差以某种形式在各层表示--修正各层单元的权值网络输出的误差减少到可接受的程度进行到预先设定的学习次数为止假设有P个训练样本,即有P个输入输出对(Ip,Tp),p=1,…,P,其中输入向量为目标输出向量为(理论上的)

网络输出向量为

(实际上的)

简单网络的B-P算法(p=1,…,P)

(2)

通常理论与实际有误差,网络学习则是指不断比较,并根据极小原则修改参数wij,使误差平方和达最小:记Delta学习规则:

(4)

(3)

表示递推一次的修改量,则有称为学习的速率一般取值为0.1~0.3

简单网络的B-P算法记wij为从输入向量的第j(j=1,…,m)个分量到输出向量的第i(i=1,…,n)个分量的权重。ipm=-1,wim=(第i个神经元的阈值)(5)注:由(1)式,第i个神经元的输出可表示为特别当f是线性函数时

(6)简单网络的B-P算法训练用的性能指标为最小求E的最小值,只需考虑EP达到最小的递推算法求E的最小值的梯度下降法就是Delta学习规则。多层前馈网络

(l)输入层不计在层数之内,它有N0个神经元.设网络共有L层;输出层为第L层;第k层有Nk个神经元.假设:(2)

设表示第k层第i神经元所接收的信息

wk(i,j)表示从第k-1层第j个元到第k层第i个元的权重,

表第k层第i个元的输出

有些文献将输入层作为一层(3)设层与层间的神经元都有信息交换(否则,可设它们之间的权重为零);但同一层的神经元之间无信息传输.(4)设信息传输的方向是从输入层到输出层方向;因此称为前向网络.没有反向传播信息.(5)表示输入的第j个分量.假设:在上述假定下网络的输入输出关系可以表示为:(7)

其中θk(i)表示第k层第i个元的阈值.,f为S函数定理

对于具有多个隐层的前馈神经网络;设激发函数为S函数;且指标函数取

则每个训练循环中按梯度下降时;其权重迭代公式为其中证明思路与简单模型相同。不同的是这里具有隐层2层前馈神经网络单个神经元节点反向一层传播反向二层传播某一隐层节点受所有输出层节点影响B-P算法的学习过程如下:(1)选择一组训练样例,每一个样例由输入信息和期望的输出结果两部分组成。(2)从训练样例集中取一样例,把输入信息输入到网络中。(3)分别计算经神经元处理后的各层节点的输出。(4)计算网络的实际输出和期望输出的误差。反向传播模型及其学习算法(5)从输出层反向计算到第一个隐层,并按照某种能使误差向减小方向发展的原则,调整网络中各神经元的连接权值。(6)对训练样例集中的每一个样例重复3—5的步骤,直到对整个训练样例集的误差达到要求时为止。在以上的学习过程中,第(5)步是最重要的,如何确定一种调整连接权值的原则,使误差沿着减小的方向发展,是B-P学习算法必须解决的问题。反向传播模型及其学习算法应用

已知的两类蚊子的数据如表1:

翼长触角长类别1.781.14Apf1.961.18Apf1.861.20Apf1.721.24Af2.001.26Apf2.001.28Apf1.961.30Apf1.741.36Af目标值0.90.90.90.10.90.90.90.1

翼长触角长类别1.641.38Af1.821.38Af1.901.38Af1.701.40Af1.821.48Af1.821.54Af2.081.56Af目标t0.10.10.10.10.10.10.1

BP采用S函数,输出不宜设为1或0,可设为0.9或0.1。输入数据有15个建模:两层神经网络建立神经网络规定目标为:当t(1)=0.9时表示属于Apf类,t(2)=0.1表示属于Af类。设两个权重系数矩阵为:为阈值

其中分析如下:

为第一层的输出,同时作为第二层的输入。其中,为阈值,为传递函数若令

(作为一固定输入)(阈值作为固定输入神经元相应的权系数)

则有:取传递函数为=则同样,取

(1)随机给出两个权矩阵的初值;例如用MATLAB软件时可以用以下语句:

令p=0具体算法如下:=rand(2,3);=rand(1,3);(2)根据输入数据利用公式算出网络的输出

=取(3)计算因为所以

L=2计算

(5)计算

j=1,2,3,i=1,2,3,j=1,2,3(4)取

(或其他正数,可调整大小)

(6)p=p+1,转(2)

注:仅计算一圈(p=1,2,…,15)是不够的,直到当各权重变化很小时停止,本例中,共计算了147圈,迭代了2205次。最后结果是:如何分类?规定目标为:当t(1)=0.9时表示属于叉类,t(2)=0.1表示属于圆点类。22对训练样本(1)随机给出两个权矩阵的初值;例如用MATLAB软件时可以用以下语句:

令p=0具体算法如下:=rand(2,3);=rand(1,3);(2)根据输入数据利用公式算出网络的输出

=取(3)计算因为所以

L=2计算

(5)计算

j=1,2,3,i=1,2,3,j=1,2,3(4)取

(或其他正数,可调整大小)

直到当各权重变化很小时停止,本例中,共计算了200圈,迭代了4400次。最后结果是:数学建模中有很多题目都可以用神经网络加

温馨提示

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

评论

0/150

提交评论