




免费预览已结束,剩余55页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
神经网络及其应用,崔丽数学科学学院2012.7.2,神经元介绍和数学描述人工神经网络的关键点BP神经网络原理算法步骤BP神经网络算法实现Matlab工具箱介绍举例:1.语音分类2.非线性函数拟合思考题:黄瓜疾病分类练习题:储油罐变位问题,主要内容,神经细胞(神经元)树突是信号的输入通路轴突是信号的输出通路,神经组织的基本特征,信号从一个神经细胞经过突触传递到另一个细胞是一个相当复杂的生物物理及生物化学过程。信号传递过程有两个效果:激发态和抑制态接受信号的一方电位升高,或者电位降低由处于激发态的神经细胞产生的脉冲输出,通过神经末梢传向下游的每一个与之相连的神经元,不同的下游神经元,信号引起的电位变化不同,因而引起不同的反应不同的神经元之间有不同的作用强度(连接强度)神经元之间的连接强度并不是一成不变的,两个神经元之间的连接强度,随着激发与抑制行为相关性的时间平均值正比变化。,一个神经网络是一个由简单处理单元构成的规模宏大的并行分布式处理器。天然具有存储经验知识和使之可用的特性。神经网络在两方面与人脑相似。1.神经网络获取的知识是从外部环境中学习得来的。2.互连神经元的连接强度,即突触权值,用于存储获取的知识。用于完成学习过程的程序称为学习算法,其功能是以有序的方式改变网络的突触权值以获得想要的设计目标,人工神经网络,非线性性输入输出的映射适应性容错性,优点,聚类分析,信号分类非线性函数拟合回归预测分析建模自变量的降维,适于解决的问题,神经元是神经网络操作的基本信息处理单位。神经元模型的基本元素:突触或者连接链;加法器;激活函数。,神经元模型非线性模型,另一种非线性模型,突触权值,激活函数,输入信号的线性组合器的输出,偏置,输出。,神经元模型数学描述,突触权值:一般有一个范围;加法器:加权和线性组合器;激活函数:用于限制神经元输出振幅。它也称为压制函数。由它将输出信号压制到允许的范围之内的一定值。注意:偏置bk的作用是根据其为正还是负,相应的增加或者降低激活函数的网络输入。也就是模仿神经细胞的激活抑制阈值。,1.阈值函数:2.分段线性函数:3.Sigmoid函数:,激活函数的类型,单层前馈网络;多层前馈网;递归网络。,网络结构,BP神经网络(前馈型),信号前向传递误差反向传递即:每一层的神经元状态只影响下一层神经元状态如果输出层得不到期望输出,则转入反向传播根据预测误差调整突触权值和偏置从而使BP神经网络预测输出不断逼近期望输出,特点:,三层网络结构:输入层,隐含层,输出层网络节点数:输入层隐含层输出层连接权值隐含层的激活函数f。激活阈值,人工神经网络的原理,隐含层输出神经网络输出误差的能量,人工神经网络的原理,应该满足的方程:最速下降法求E(w)的极小(局部):从任何一个初始点出发,计算在该点的负梯度方向,这是函数在该点下降最快的方向;只要就可以沿着该方向移动一小步,达到一个新点是一个参数学习率,只要它足够小,能保证不断重复,一定能到达E的一个(局部)极小值点。,权值训练过程最速下降法,能量:修正量,训练中权值修正,1.网络初始化:根据输入输出序列(X,Y)确定:网络输入节点数n,隐含层节点数l,输出节点数m;初始化连接权值;初始化偏置(阈值)a,b;给定学习速率和神经元激活函数;,训练步骤,2.隐含层的输出计算.根据输入向量X,输入层和隐含层间连接权值wij及隐含层阈值a,计算隐含层输出H。其中l是隐含层节点数;f为隐含层的激活函数,Sigmoid函数。性质:f(x)=f(x)(1-f(x),3.输出层输出计算。根据隐含层输出H,连接权值和阈值b,计算BP神经网络预测输出。,4.误差计算根据网络预测输出与期望输出Y,计算网络预测误差e。,5.权值更新。根据网络预测误差e更新网络连接权值wij,wjk。为学习率。,6.阈值更新。根据网络预测误差e更新网络节点阈值a,b。,7.判断算法迭代是否结束,若没有结束,返回步骤2.,1.隐含层节点数:最佳隐含层节点选择,参考如下公式(不是同时满足):其中c为010之间的常数。确定节点数的大概范围,然后用试凑法确定最佳节点数。,注意:,2.激活函数选择:阶跃函数,准线性函数,双曲正切函数,Sigmoid函数,小波函数;作用:光滑化,归一化,阈值化,3.变学习率法。取值在0,1之间,学习率越大,对权值的修改越大,网络学习速度越快。过大的学习率将使权值学习过程中产生震荡,过小的学习率使网络收敛过慢,权值难以趋于稳定。变学习率法:在BP网络进化初期较大,网络收敛迅速,随着学习过程的进行,学习率不断减小,网络趋于稳定。,4.附加动量方法。原因:采用梯度修正法对权值和阈值的方法,从网络预测误差的负梯度方向修正权值和阈值,没有考虑以前经验的积累,学习过程收敛缓慢。采用附加动量法来解决:其中a为动量学习率。,将数据转化为0,1之间。1)最大最小法2)平均数方差法,神经网络数据预处理数据的归一化,命令:mapminmaxinputn,inputps=mapminmax(input_train);inputn归一化的数据,inputps归一化得到的结构体,包含数据的最大值,最小值和平均值等信息。测试数据的归一化和反归一化。input_test=mapminmax(apply,input_test,inputps);%归一化Bpoutput=mapminmax(reverse,an,outputs);%反归一化。,Matlab归一化函数,包括的网络有感知器,线性网络,BP神经网络,径向基网络,自组织网络和回归网络等。BP神经网络包括三个函数newff,sim,train1.建立BP网络函数:newffnet=newff(P,T,S,TF,BTF,BLF,PF,IPF,OPF,DDF)P:输入数据矩阵;T:输出矩阵数据;S:隐含节点数;TF:节点传递函数hardlim,hardlims,purelin,tansig,logsig;BTF:训练函数,梯度下降法,包括traingd,traingdm等;BLF:网络学习函数,学习规则learngd,learngdm;PF:性能分析函数,绝对误差mae,均方误差mse;IPF:输入处理函数;OPF:输出处理函数;DDF:验证数据划分函数,Matlab工具箱,2.BP神经网络训练函数:trainnet,tr=train(NET,X,T,Pi,Ai);NET:待训练网络X:输入函数矩阵;T:输出数据矩阵;Pi:初始化输入层条件;Ai:初始化输出层条件;net:训练好的网络;tr:训练过程记录。,3.BP神经网络预测函数:sim用训练好的BP神经网络预测函数输出。y=sim(net,x);net训练好的网络;x:输入数据;y:网络预测数据,nntool,神经网络工具箱,500组24维语音特征信号,用BP网络实现对民歌,古筝,摇滚,流行四类不音乐的有效分类。原始信号,例1:语音信号分类,语音识别流程,预处理,信号提取,模式匹配,判别规则,参考模式,语音信号,识别结果,包括BP神经网络构建,BP神经网络训练和BP神经网络分类。,模型建立,BP神经网络构建根据系统输入输出数据特点确定结构。语音信号的特征是24维,要分成四类,于是选择2425424个输入节点,25个隐含层节点,4个输出层节点。BP神经网络训练训练数据:从500*4=2000组中随机选择1500组数据进行训练,其余500组作为测试数据测试网络分类能力。BP神经网络分类用训练好的神经网络对测试数据所属语音类别进行分类。,1.数据选择和归一化。从数据中提取类别标识(在第1维),后24维是语音特征。随机选取1500组,500组作为测试数据,并对训练数据进行归一化处理。根据类别标识设定每组语音信号的期望输出值,如标识为1,则输出向量1000;%训练数据预测数据提取及归一化%下载四类语音信号loaddata1c1loaddata2c2loaddata3c3loaddata4c4%四个特征信号矩阵合成一个矩阵data(1:500,:)=c1(1:500,:);data(501:1000,:)=c2(1:500,:);data(1001:1500,:)=c3(1:500,:);data(1501:2000,:)=c4(1:500,:);,Matlab实现,%输入输出数据input=data(:,2:25);output1=data(:,1);%把输出从1维变成4维fori=1:2000switchoutput1(i)case1output(i,:)=1000;case2output(i,:)=0100;case3output(i,:)=0010;case4output(i,:)=0001;endend,%从1到2000间随机排序k=rand(1,2000);m,n=sort(k);%随机提取1500个样本为训练样本,500个样本为预测样本input_train=input(n(1:1500),:);output_train=output(n(1:1500),:);input_test=input(n(1501:2000),:);output_test=output(n(1501:2000),:);%输入数据归一化inputn,inputps=mapminmax(input_train);,2.BP神经网络初始化%网络结构初始化innum=24;midnum=25;outnum=4;%权值初始化w1=rands(midnum,innum);b1=rands(midnum,1);w2=rands(midnum,outnum);b2=rands(outnum,1);w2_1=w2;w2_2=w2_1;w1_1=w1;w1_2=w1_1;b1_1=b1;b1_2=b1_1;b2_1=b2;b2_2=b2_1;%学习率xite=0.1alfa=0.01;,3.BP神经网络训练forii=1:10E(ii)=0;fori=1:1:1500%网络预测输出x=inputn(:,i);%隐含层输出forj=1:1:midnumI(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;forj=1:1:midnumS=1/(1+exp(-I(j);FI(j)=S*(1-S);endfork=1:1:innumforj=1:1:midnumdw1(k,j)=FI(j)*x(k)*(e(1)*w2(j,1)+e(2)*w2(j,2)+e(3)*w2(j,3)+e(4)*w2(j,4);db1(j)=FI(j)*(e(1)*w2(j,1)+e(2)*w2(j,2)+e(3)*w2(j,3)+e(4)*w2(j,4);endend%权值阈值更新和结果保存w1=w1_1+xite*dw1;b1=b1_1+xite*db1;w2=w2_1+xite*dw2;b2=b2_1+xite*db2;w1_2=w1_1;w1_1=w1;w2_2=w2_1;w2_1=w2;b1_2=b1_1;b1_1=b1;b2_2=b2_1;b2_1=b2;endend,4.BP神经网络分类%语音特征信号分类inputn_test=mapminmax(apply,input_test,inputps);forii=1:1fori=1:500%隐含层输出forj=1:1:midnumI(j)=inputn_test(:,i)*w1(j,:)+b1(j);Iout(j)=1/(1+exp(-I(j);endfore(:,i)=w2*Iout+b2;endend,%根据网络输出找出数据属于哪类fori=1:500output_fore(i)=find(fore(:,i)=max(fore(:,i);end%BP网络预测误差error=output_fore-output1(n(1501:2000);,神经网络的分类误差,统计正确率等。全部的matlab文件,见BP.m,结果分析,1.数据归一化预处理如前。2.BP神经网络构建net=newff(inputn,outputn,25);3.BP神经网络训练%网络参数配置(迭代次数,学习率,目标)net.trainParam.epochs=100;%最大训练次数net,trainParam.lr=0.1;net.trainParam.goal=0.001;%训练精度%BP神经网络训练net,tr=train(net,inputn,outputn);,另外一种方法,4.BP神经网络预测%预测数据归一化inputn_test=mapminmax(apply,input_test,inputps);%BP神经网络预测输出fore=sim(net,inputn_test);5.结果分析,要拟合一组数据,函数关系未知y=f(x1,x2,xn)可以设计BP神经网络:x1,x2,xn输入层,y是输出层中间建立隐含层,节点数可以是n+1。用已知数据拟合,完成网络训练,最后可以实现网络预测,即确定了该组数据符合的函数关系。,例2:非线性拟合,若要拟合的函数:y=x_12+x_22;,总数据2000组,存储在data.mat文件中。从中选出1900组作为网络训练数据,100组数据作为网络测试训练数据。对训练数据进行归一化处理。Matlab程序:%下载输入输出数据loaddatainputoutput%从1到2000间随机排序k=rand(1,2000);m,n=sort(k);,数据选择和归一化,%找出训练数据和预测数据input_train=input(n(1:1900),:);output_train=output(n(1:1900);input_test=input(n(1901:2000),:);output_test=output(n(1901:2000);%样本输入输出数据归一化inputn,inputps=mapminmax(input_train);outputn,outputps=mapminmax(output_train);,用训练数据建立神经网络,并训练。Matlab程序%BP网络训练%初始化网络结构net=newff(inputn,outputn,5);net.trainParam.epochs=100;net.tr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 与兼职会计合同范本
- 简单的生意合同范本
- 快递装卸服务合同范本
- 农村加固工程合同范本
- 辽宁住宅租赁合同范本
- 隔离酒店合同范本
- 框架采购合同范本
- 问题公关合同范本
- 冷库存货合同范本
- 超市协议书范本6篇
- 反应釜泄漏事故应急处置卡
- GA/T 1556-2019道路交通执法人体血液采集技术规范
- GA 1800.5-2021电力系统治安反恐防范要求第5部分:太阳能发电企业
- 《大众传播学研究方法导论(第二版)》课件第一章 导论
- 2023年方正县林业系统事业单位招聘笔试题库及答案解析
- 《基于EXCEL动态模型的定量与定性分析【3000字论文】》
- 新编剑桥商务英语(初级)学生用书-答案
- 中级会计《经济法》最新精编必刷550题(后附答案解析)
- 新计算国民经济评价
- 三年级上册信息技术教学计划(电子工业出版社)
- 旅行管家实务全套ppt课件最全电子教案完整版教学教程整套全书课件ppt
评论
0/150
提交评论