资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第二十八章,MATLAB,优化算法案例分析与应用,第,28,章,基于,BP,的数据分类,第二十八章,MATLAB,优化算法案例分析与应用,28.1 BP,神经网络基本原理,人工神经网络(,artificial neural network,,,ANN,)是模仿生物神经网络功能的一种经验模型。生物神经元受到传入的刺激,其反应又从输出端传到相联的其它神经元,输入和输出之间的变换关系一般是非线性的。神经网络是由若干简单(通常是自适应的)元件及其层次组织,以大规模并行连接方式构造而成的网络,按照生物神经网络类似的方式处理输入的信息。模仿生物神经网络而建立的人工神经网络,对输入信号有功能强大的反应和处理能力。,人脑大约由,10,12,个神经元组成,神经元互相连接成神经网络。神经元是大脑处理信息的基本单元,以细胞体为主体,由许多向周围延伸的不规则树枝状纤维构成的神经细胞,其形状很像一棵枯树的枝干。它主要由细胞体、树突、轴突和突触组成。如图,28.1,所示。,第二十八章,MATLAB,优化算法案例分析与应用,28.1 BP,神经网络基本原理,图,28-1,生物神经元,第二十八章,MATLAB,优化算法案例分析与应用,28.1 BP,神经网络基本原理,BP,(,Back Propagation,)神经网络是一种神经网络学习算法。其由输入层、中间层、输出层组成的阶层型神经网络,中间层可扩展为多层。相邻层之间各神经元进行全连接,而每层各神经元之间无连接,网络按有教师示教的方式进行学习,当一对学习模式提供给网络后,各神经元获得网络的输入响应产生连接权值(,Weight,)。然后按减小希望输出与实际输出误差的方向,从输出层经各中间层逐层修正各连接权,回到输入层。此过程反复交替进行,直至网络的全局误差趋向给定的极小值,即完成学习的过程。,第二十八章,MATLAB,优化算法案例分析与应用,28.2 BP,神经网络算法步骤,BP,算法是一种有监督式的学习算法,其主要思想是:输入学习样本,使用反向传播算法对网络的权值和偏差进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成,保存网络的权值和偏差。,具体步骤如下:,(,1,)初始化,随机给定各连接权及阀值;,(,2,)由给定的输入输出模式对计算隐层、输出层各单元输出;,(,3,)计算新的连接权及阀值;,(,4,)选取下一个输入模式对返回第,2,步反复训练直到网络设输出误差达到要求结束训练。,第二十八章,MATLAB,优化算法案例分析与应用,28.2 BP,神经网络算法步骤,传统的,BP,算法,实质上是把一组样本输入,/,输出问题转化为一个非线性优化问题,并通过负梯度下降算法,利用迭代运算求解权值问题的一种学习方法,但其收敛速度慢且容易陷入局部极小,为此一般应用中常采用高斯消元法进行,BP,网络的学习和训练,即:,对给定的样本模式对,随机选定一组自由权,作为输出层和隐含层之间固定权值,通过传递函数计算隐层的实际输出,再将输出层与隐层间的权值作为待求量,直接将目标输出作为等式的右边建立方程组来求解。,具体步骤如下:,(,1,)随机给定隐层和输入层间神经元的初始权值。,(,2,)由给定的样本输入计算出隐层的实际输出。,(,3,)计算输出层与隐层间的权值。以输出层的第,r,个神经元为对象,由给定的输出目标值作为等式的多项式值建立方程。,(,4,)重复第三步就可以求出输出层,m,个神经元的权值,以求的输出层的权矩阵加上随机固定的隐层与输入层的权值就等于神经网络最后训练的权矩阵。,第二十八章,MATLAB,优化算法案例分析与应用,28.3 BP,网络的语音信号识别,语音特征信号识别是语音识别研究领域中的一个重要方面,一般采用模式匹配的原理解决。语音识别的运算过程为:首先,待识别语音转化为电信号后输入识别系统,经过预处理后用数学方法提取语音特征信号,提取出的语音特征信号可以看成该段语音的模式。然后将该段语音模型同已知参考模式相比较,获得最佳匹配的参考模式为该段语音的识,.,洲结果。语音识别流程如图,28-2,所示。,图,28-2,语音识别流程图,BP,神经网络构,.,建根据系统输人输出数据特点确定,BP,神经网络的结构,由丁语音特征输入信号有,24,维,待分类的语音信号共有,4,类,所以,BP,神经网络的结构为,24-25-4,,即输人层有,24,个节点,隐含层有,25,个节点,输出层有,4,个节点。,第二十八章,MATLAB,优化算法案例分析与应用,28.3 BP,网络的语音信号识别,%,网络预测输出,x=inputn(:,i);,%,隐含层输出,for j=1:1:midnum,I(j)=inputn(:,i)*w1(j,:)+b1(j);,Iout(j)=1/(1+exp(-I(j);,end,%,输出层输出,yn=w2*Iout+b2;,%,权值阀值修正,%,计算误差,e=output_train(:,i)-yn;,E(ii)=E(ii)+sum(abs(e);,%,计算权值变化率,dw2=e*Iout;,db2=e;,第二十八章,MATLAB,优化算法案例分析与应用,28.3 BP,网络的语音信号识别,图,28-3,预测信号,第二十八章,MATLAB,优化算法案例分析与应用,28.3 BP,网络的语音信号识别,图,28-4,误差信号,第二十八章,MATLAB,优化算法案例分析与应用,28.4 BP,网络的蝴蝶花分类预测,算法步骤,:,Step 1,,初始化数据,设定各层节点数、学习效率等值;,Step 2,,输入层,FA,输入样品,计算出隐层,FB,活动;,b(ki)=logsig(a*V(:,ki)+Pi(ki),Step 3,,计算出输出层,FC,活动;,c(kj)=logsig(b*W(:,kj)+Tau(kj),Step 4,,网络输出和期望输出相比较,计算出输出层,FC,的错误;,d=c.*(1-c).*(ck-c),Step 5,,反传,计算出隐层,FB,的错误;,e=b.*(1-b).*(d*W),Step 6,,修改,FC,层和,FB,之间的权值,wij,;,DeltaW(ki,kj)=Alpha*b(ki)*d(kj)+Gamma*DeltaWOld(ki,kj),W=W+DeltaW,Step 7,,修改,FA,层和,FB,之间的权值,vhj,;,DeltaV(kh,ki)=Beta*a(kh)*e(ki),V=V+DeltaV,Step 8,,修改偏差。,第二十八章,MATLAB,优化算法案例分析与应用,28.4 BP,网络的蝴蝶花分类预测,%calculate the hidden nodes activation,for ki=1:i,b(ki)=logsig(a*V(:,ki)+Pi(ki);,end;,%calculate the output nodes activation,for kj=1:j,c(kj)=logsig(b*W(:,kj)+Tau(kj);,end;,%calculate error in output Layer FC,d=c.*(1-c).*(ck-c);,%calculate error in hidden layer FB,e=b.*(1-b).*(d*W);,%adjust weights Wij between FB and FC,for ki=1:i,for kj=1:j,DeltaW(ki,kj)=Alpha*b(ki)*d(kj)+Gamma*DeltaWOld(ki,kj);,end,end;,W=W+DeltaW;,第二十八章,MATLAB,优化算法案例分析与应用,28.4 BP,网络的蝴蝶花分类预测,图,28-5,误差图,第二十八章,MATLAB,优化算法案例分析与应用,28.4 BP,网络的蝴蝶花分类预测,图,28-6,预测值和期望值,第二十八章,MATLAB,优化算法案例分析与应用,28.4 BP,网络的蝴蝶花分类预测,图,28-15,误差图,h=4,,,i=100,,,j=3,,,Alpha=0.99,,,Beta=0.99,第二十八章,MATLAB,优化算法案例分析与应用,28.4 BP,网络的蝴蝶花分类预测,图,28-16,预测值和期望值,h=4,,,i=100,,,j=3,,,Alpha=0.99,,,Beta=0.99,
点击显示更多内容>>

最新DOC

最新PPT

最新RAR

收藏 下载该资源
网站客服QQ:3392350380
装配图网版权所有
苏ICP备12009002号-6