人工神经网络学号:7学生所在学院:信息工程学院学生姓名:李建建任课教师:聂文滨教师所在学院:信息工程学院2009年12月目录第一部分:绪论31.1人工神经网络的定义31.2人工神经网络的基本原理31.3生物神经元31.4人工神经元模型41.5人工神经网络模型51.6.常见神经元响应函数71.7.神经网络基本学习算法81.7.1有教师学习(监督学习)81.7.2无教师学习(无监督学习)81.7.3强化学习(再励学习)8第二部分:反向传播网络92.1 BP网络92.1.1BP网络主要应用:92.1.2BP网络特点92.1.3多层BP网络简介102.2三层BP网络102.2.1三层BP网络结构图102.2.2三层BP网络学习算法112.2.3三层BP网络设计需要考虑的问题11 第三部分:自适应竞争神经网络123.1自组织网络123.1.1网络类型123.1.2网络学习规则133.2竞争网络133.2.1网络结构133.2.2竞争网络原理143.2.3网络工作方式143.2.4 网络训练153.2.5竞争网络的局限性15第四部分:地震预报的MATLAB实现154.1基于人工神经网络的地震预测研究背景154.2模型的建立164.3自适应竞争网络对地震等级进行预测164.3.1数据处理164.3.2自适应竞争网络设计174.4BP网络对地震的大小进行预测184.4.1数据处理184.4.2BP网络的设计19第五部分:作业21第一部分:绪论1.1人工神经网络的定义人工神经网络的定义不是统一的,T.Koholen对人工神经网络的定义:“人工神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。
”1.2人工神经网络的基本原理人工神经网络(articles neural network,ANN)结构和工作机理基本上以人脑的组织结构(大脑神经元网络)和活动规律为背景的,它反映了人脑的某些基本特征,但并不是要对人脑部分的真实再现,可以说它是某种抽象、简化或模仿。
1.3生物神经元神经元是大脑处理信息的基本单元,人脑大约由1011个神经元组成,神经元互相连接成神经网络。
神经元以细胞体为主体,由许多向周围延伸的不规则树枝状纤维构成的神经细胞,其形状很像一棵枯树的枝干。
主要由细胞体、树突、轴突和突触(Synapse,又称神经键)组成。
图1.1 生物神经元的示意图生物神经元传递信息的过程为多输入、单输出,神经元各组成部分的功能来看,信息的处理与传递主要发生在突触附近,当神经元细胞体通过轴突传到突触前膜的脉冲幅度达到一定强度,即超过其阈值电位后,突触前膜将向突触间隙释放神经传递的化学物质,突触有两种类型,兴奋性突触和抑制性突触。
前者产生正突触后电位,后者产生负突触后电位。
1.4人工神经元模型1通用模型P1 P2 P n W1W2W na Σθf2求和操作)(∑ℜ-=iWiPi f a θ3响应函数 y=σ(s)1.5人工神经网络模型1前向网络 (a)2从输出到输入有反馈的前向网络 (b)3用来存储某种模式序列,层内互连前向网络(c)4限制层内同时动作的神经元;分组功能相互结合型网络(d)1.6.常见神经元响应函数a)阈值单元σ(s)=⎩⎨⎧<≥001s s(b)线性单元 y=σ(s)=s(c)非线性单元:Sigmoid 函数 (1)se s -+=11)(σ(2))tanh()(s s βσ=1.7.神经网络基本学习算法1.7.1有教师学习(监督学习)1.7.2无教师学习(无监督学习)1.7.3强化学习(再励学习)a期望输出第二部分:反向传播网络2.1BP网络反向传播网络(Back-Propagation Network,简称BP网络)是将W-H学习规则一般化,对非线性可微分函数进行权值训练的多层网络。
权值的调整采用反向传播(Back-propagation)的学习算法,它是一种多层前向反馈神经网络,其神经元的变换函数是S型函数。
输出量为0到1之间的连续量,它可实现从输入到输出的任意的非线性映射。
2.1.1BP网络主要应用:(1)函数逼近:用输入矢量和相应的输出矢量训练一个网络逼近一个函数(2)模式识别和分类:用一个特定的输出矢量将它与输入矢量联系起来;把输入矢量以所定义的合适方式进行分类;(3)数据压缩:减少输出矢量维数以便于传输或存储(4)具有将强泛化性能:使网络平滑地学习函数,使网络能够合理地响应被训练以外的输入泛化性能只对被训练的输入/输出对最大值范围内的数据有效,即网络具有内插值特性,不具有外插值性。
超出最大训练值的输入必将产生大的输出误差2.1.2BP网络特点(1)输入和输出是并行的模拟量(2)网络的输入输出关系是各层连接的权因子决定,没有固定的算法(3)权因子通过学习信号调节。
学习越多,网络越聪明(4)隐含层越多,网络输出精度越高,且个别权因子的损坏不会对网络输出产生大的影响只有当希望对网络的输出进行限制,如限制在0和1之间,那么在输出层应当包含S型激活函数。
在一般情况下,均是在隐含层采用S型激活函数,而输出层采用线性激活函数。
2.1.3多层BP网络简介多层BP网络是一种具有三层或三层以上的多层神经网络,每一层都由若干个神经元组成,如图2-1所示,它的左、右各层之间各个神经元实现全连接,即左层的每个神经元与右层的每个神经元都由连接,而上下神经元无连接。
2-1多层BP网络BP网络按有教师学习方式进行训练,当一对学习模式提供给网络以后,其神经元的激活值将从输入层经中间层向输出层传播,在输出层的各神经元输出对应于输入模式的网络响应。
然后,按减少希望输出与实际输出误差的原则,从输出层经中间层,最后回到输入层逐层修正个连接权。
由于这种修正过程是从输出到输入逐层进行的,所以称它为“误差逆传播算法”。
随着这种误差逆传播训练的不断进行,网络对输入模式响应的正确率也将不断提高。
由于BP网络有处于中间位置的隐含层,并有相应的学习规则可循,可训练这种网络,使其具有对非线性模式的识别能力。
图2-2用于多指标综合评价的三层BP神经网络2.2三层BP网络2.2.1三层BP网络结构图r ir ir imO1O2O m图2-2三层BP网络结构图2.2.2三层BP网络学习算法为了使BP网络具有某种功能,完成某项任务,必须调整层间连接权值和节点阈值,使所有样品的实际输出和期望输出之间的误差稳定在一个较小的值以内。
在训练BP网络算法中,误差反向传播算法是最有效最常用的一种方法。
BP网的学习过程主要有以下四个部分组成。
1)输入模式顺传播(输入模式由输入层经中间层向输出层传播计算)。
2)输出误差逆传播(输出的误差由输出层经中间层传向输入层)。
3)循环记忆训练(模式顺传播与误差逆传播的计算过程反复交替循环进行)。
4)学习结果判别(判定全局误差是否趋向极小值)。
2.2.3三层BP网络设计需要考虑的问题在进行BP网络的设计时,应从网络的层数、每层中的神经元数、初始值及学习速率等几个方面考虑。
1)网络的层数已经证明:三层BP网络可以实现多维单位立方体R m到R n的映射,即能够逼近任何有理函数。
这实际上给了一个设计BP网络的基本原则。
增加层数可以更进一步降低误差,提高精度,但同时也使网络复杂化,从而增加网络权值的训练时间。
而误差精度的提高实际上可以通过增加隐含层的神经元数目来获得,其训练结果也比增加层数更容易观察和调整。
所以一般情况下,应优先考虑增加隐含层的神经元个数。
2)隐含层的神经元数网络训练精度的提高,可以通过采用一个隐含层而增加神经元数的方法来获得。
这在结构的实现上要比增加更多的隐含层简单的多。
在具体设计时,比较实际的做法是隐含层取输入层的两倍,然后适当地加上一点余量。
评价一个网络设计的好坏,首先是它的精度,再是它的训练时间。
时间包含两层含义:一层是循环次数,二是每一次循环所花的时间。
3)初值权值的选取由于系统是非线性的,初始值的选取对于学习是否达到局部最小,是否能够收敛以及训练时间的长短有很大关系。
初始值过大、过小都会影响学习速度,因此权值的初始值应选为均匀分布的小数经验值,一般取初始权值在(-1,1)之间的随机数,也有选取在[-2.4/F,2.4/F]之间的随机数的,其中F为输入特征个数。
为避免每一步权值的调整方向是同向的,应将初始值设为随机数。
4)学习速率学习速率决定每一次循环中所产生的权值变化量。
快的学习速率可能导致系统的不稳定。
但慢的学习速率导致较长的训练时间,可能收敛很满,不过能保证网络的误差值跳出误差表面的低谷而最终趋于最小误差值。
所以在一般情况下,倾向于选择较慢的学习速率以保证系统的稳定性。
学习速率的选择范围在0.01-0.8之间。
如同初始权值的选取过程一样,在一个神经网络的设计中,网络要经过几个不同的学习速率的训练,通过观察每一次训练后的误差平方和∑e2的下降速率来判断所选定的学习速率是否合适,若∑e2下降很快,则说明学习速率合适,若∑e2出现振荡现象,则说明学习速率过快。
对于每一个具体网络都存在一个合适的学习速率,但对于较复杂网络,在误差曲面的不同部位可能需要不同的学习速率。
为了减少寻找学习速率的训练次数和训练时间,比较合适的方法是采用变化的自适应学习速率,使网络的训练在不同的阶段自动设置不同的学习速率。
一般说,学习速率越快,收敛越快,但容易振荡;而学习速率越慢,收敛越慢。
5)期望误差的选取在网络的训练过程中,期望误差值也应当通过对比训练后确定一个合适的值。
所谓“合适”,是相对所需要的隐含层的节点数来确定,因为较小的期望误差要靠增加隐含层的节点以及训练时间来获得。
一般情况下,作为对比,可以同时对两个不同期望误差的网络进行训练,最后通过综合因素的考虑来确定采用其中一个网络。
尽管含有隐含层的神经网络能实现任意连续函数的逼近,但在训练过程中如果一些参数选取合适,可以加快神经网络的训练,缩短神经网络的训练时间和取得满意的训练结果。
对训练过程影响较大的是权系数的初值、学习速率等。
1)调整量与误差成正比,即误差越大,调整的幅度就越大。
2)调整量与输入值的大小成正比,由于输入值越大,在这次学习过程中就显得越活跃,所以与其相连的权值的调整幅度就应该越大。
3)调整量与学习系数成正比。
通常学习系数在0.01-0.8之间,为使整个学习过程加快,又不引起振荡,可采用变学习率的方法,即在学习初期取较大的学习系数,随着学习过程的进行会逐渐减少其值。
第三部分:自适应竞争神经网络3.1自组织网络自组织神经网络可以自动向环境学习,不需要教师指导;而前面所讲到的前向网络、反馈网络均需要教师指导学习与BP网络相比,这种自组织自适应的学习能力进一步拓宽了人工神经网络在模式识别、分类方面的应用思想基础生物的神经网络中,如人的视网膜中,存在着一种“侧抑制”现象,即一个神经细胞兴奋后,通过它的分支会对周围其他神经细胞产生抑制借鉴上述思想,自组织网络能够对输入模式进行自组织训练和判断,并将输入模式分为不同的类型。