文档详情

神经网络与MATLAB神经网络工具箱-liu精品.ppt

发布:2018-04-23约1.1万字共55页下载文档
文本预览下载声明
3.3.2 BP网络在样本含量估计中的应用 程序: %通过主要成分分析 load choles_all %matlab中有一个choles_all.mat文件它包含了本问题需要的原始数据 [pn,meanp,stdp,tn,meant,stdt]=prestd(p,t); % prestd?函数对样本数据作归一化处理 [ptrans,sransMat]=prepca(pn,0.001);% 利用?prepca?函数对归一化后的样本数据进行主元分析 %通过主要成分分析,由结果知原始数据有着很大的冗余度,因此自选少部分指标就行。现将这些数据分成3个部分,1/2用于训练、1/4验证和1/4测试。 iitst=2:4:Q; iival=4:4:Q; iitr=[1:4:Q 3:4:Q]; val.P=ptrans(:,iival);val.T=tn(:,iival); test.P=ptrans(:,iitst);test.T=tn(:,iitst); ptr=ptrans(:,iitr);ttr=tn(:,iitr); 3.3.2 BP网络在样本含量估计中的应用 %创建网络 net=newff(minmax(ptr),[5 3],{‘tansig’ ‘purelin’},‘trainlm’); %设置训练参数 net.trainParam.show=5; %训练、验证、并测试 [net,tr]=train(net,ptr,ttr,[],[],val,test); plot(tr.epoch,tr.perf,‘-, tr.epoch,tr.vperf,:,tr.epoch,tr.tperf,-.) legend(Training,Validation,Test,-1); ylabel(平方差); xlabel(时间) 3.3.2 BP网络在样本含量估计中的应用 %输出结果回归分析 an=sim(net,ptrans); a=poststd(an,meant,stdt); for i=1:3 figure(i) [m(i),b(i),r(i)]=postreg(a(i,:),t(i,:)); %postreg( )将三组输出进行线性回归分析 End 结论: 改变隐含层数值,比较输出结果与标准值之间差异。其中当隐层神经元为五个时,前面两个输出期望值的跟踪较好,相应的R值几乎达到了0.9,而第三个输出则吻合得不是很理想,作进一步研究,在当隐层数据为15时,较第一种情况,它的输出更加接近于期望值。比较可知,当隐层数目越多,则测试得到的样本水平越接近于期望值。 2.2人工神经元与神经网络 神经网络按连接 形式分类有以下几种基本形式: 前向网络 网络中的神经元是分层排列的,每个神经元只与前一层的神经元相连接。神经元分层排列,分别组成输入层、中间层(也称为隐含层,可以由若干层组成)和输出层。每一层的神经元只接受来自前一层神经元的输入,后面的层对前面的层没有信号反馈。输入模式经过各层次的顺序传播,最后在输出层上得到输出。感知器网络和BP网络均属于前向网络。 2.2人工神经元与神经网络 前向网络结构: 2.2人工神经元与神经网络 从输出到输入有反馈的前向网络 输出层对输入层有信息反馈,这种网络可用于存储某种模式序列,如神经认知机和回归BP网络都属于这种类型。 层内互连前向网络 通过层内神经元的相互结合,可以实现同一层神经元之间的横向抑制或兴奋机制。这样可以限制每层内可以同时动作的神经元素,或者把每层内的神经元分为若干组,让每一组作为一个整体进行运作。例如,可利用横向抑制机理把某层内的具有最大输出的神经元挑选出来,从而抑制其他神经元,使之处于无输出状态。 2.2人工神经元与神经网络 相互结合型网络 相互结合型网络结构如图2.7所示,这种网络在任意两个神经元之间都可能有连接。Hopfield 网络和Boltzmann 机均属于这种类型。在无反馈的前向网络中,信号一旦通过某神经元,该神经元的处理就结束了。而在相互结合网络中,信号要在神经元之间反复传递,网络处于一种不断变化状态的动态之中。信号从某初始状态开始,经过若干次变化,才会达到某种平衡状态。根据网络的结构和神经元的特性,网络的运行还有可能进入周期振荡或其他如混沌平衡状态。 2.2人工神经元与神经网络 2.2. 2人工神经元模型 生物神经元是一个多输入、单输出单元。模拟生物神经元,常用的人工神经元模型如下: 输入和输出的关系可表示为: ? 2.2. 2人工神经元模型 神经元的传递函数 f(X)是激发函数;它可以是线性函数,也可以是非线性函数.例如,若取激发函数为符号函数 2.2. 2人
显示全部
相似文档