免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
%BP神经网络用于系统辨识训练预测程序clear allclc%产生随机序列作为系统输入A=6; x0=1; M=255; f=2; N=60;Q=2*N/3;H=N-Q-1; %初始化for k=1:N x2=A*x0; %分别用x2和x0表示xi和xi-1 x1=mod (x2,M); %x2除以M的余数给x1 v1=x1/256; %x1除以256得到小于1的随机数给v1 if v1-0.5=0 u(:,k)=v1*f-1;%如果随机数v1大于0.5,就乘以系数f减去1,将结 else %果存于U的第k列中 u(:,k)=v1-1; %不满足条件的运算结果存于矩阵U中 end x0=x1;%xi-1=xi v0=v1;%vi-1=viendz=zeros(1,N); %输出长度v=rand(1,N); %随机噪声for k=3:N z(k)=1.5*z(k-1)-0.7*z(k-2)+1.1*u(k-1)+0.3*u(k-2)-v(k-1)+0.2*v(k-2); end %理想输出作为观察值for k=1:N-2 hl(k,:)=-z(k+1),-z(k),u(k+1),u(k),v(k+1),v(k);%样本矩阵HL赋值 zl(k)=z(k+2); %给样本矩阵ZL赋值endHL=(hl-min(min(hl)/(max(max(hl)-min(min(hl); %数据归一化ZL=(zl-min(zl)/(max(zl)-min(zl); %数据归一化p=HL(1:Q,:); %训练样本输入p1=HL(Q:N-2,:); %测试样本输入b1=ones(Q,1);b2=ones(H,1); %初始化P=p,b1; %增广训练样本P1=p1,b2; %增广测试样本T=ZL(1,1:Q); %训练样本理想输出T1=ZL(1,Q:N-2); %测试样本理想输出inputNums=6; %网络输入层节点数outputNums=1; %网络输出层节点数hideNums=10; %网络隐层节点数lc=0.03; %学习率max_epoch=3000; %最大循环次数error_goal=0.00001; %期望误差最小值B1=randn(1,hideNums); %输入层到隐含层的阈值初始化B2=randn(1,outputNums); %隐含层到输出层的阈值初始化w1=randn(inputNums,hideNums); %输入层到隐含层的权值初始化w2=randn(hideNums,outputNums); %隐含层到输出层的权值初始化W1=w1;B1; %输入层到隐含层的增广权矩阵W2=w2;B2; %隐含层到输出层的增广权矩阵error=zeros(1,max_epoch); %训练误差%训练样本集P对BP神经网络进行训练for k=1:max_epoch for i=1:Q %单个样本的输入 for j=1:hideNums net=P(i,:)*W1(:,j); %隐含层神经元的输入 y(i,j)=1/(1+exp(-net); %隐含层输出 end Y(i,:)=y(i,:),1; %带阈值隐含层输出 for j=1:outputNums net=Y(i,:)*W2(:,j); %输出层神经元的输入 O(i,j)=1/(1+exp(-net); %输出层输出 end E=T(i)-O(i); %单个样本训练误差 SSE=0.5*E2; %均方误差 if SSE=error_goal for c=1:hideNums for j=1:outputNums DW2(c,j)=(T(i,j)-O(i,j)*O(i,j)*(1-O(i,j); %输出层误差偏导 W2(c,j)=W2(c,j)+lc*DW2(c,j)*Y(i,c); %输出层权值阈值的调整 sumDW1=0; sumDW1=sumDW1+W2(c,j)*DW2(c,j); %输出层对前一层的误差 end end for m=1:inputNums for n=1:hideNums DW1(m,n)=Y(i,n)*(1-Y(i,n)*sumDW1; %隐含层误差偏导 W1(m,n)=W1(m,n)+lc*DW1(m,n)*P(i,m); %隐含层权值阈值的调整 end end endende=T-O;error(:,k)=sumsqr(e)/(2*Q); %样本集训练误差endw1=W1(1:inputNums,:) %输入层到隐含层的权值B1=W1(end,:) %输入层到隐含层的阈值w2=W2(1:hideNums,:) %隐含层到输出层的权值B2=W2(end,:) %隐含层到输出层的阈值%测试样本集P1用于BP神经网络预测for i=1:H for j=1:hideNums net=P1(i,:)*W1(:,j); %隐含层的输入 y(i,j)=1/(1+exp(-net); %隐含层神经元输出 end Y(i,:)=y(i,:),1; for j=1:outputNums net=Y(i,:)*W2(:,j); %输出层的输入 O1(i,j)=1/(1+exp(-net); %BP网络实际输出 endendfigure(1);k=1:max_epoch;plot(k,error); %每次训练产生的均方误差xlabel(k);ylabel(error);figure(2);k=1:H;plot(k,T1,k,O1,*); %期望输出值和BP网络实际输出值xlabel(k);ylabel(T1andO1);title(BP simulation);legend(T1 is desired output ,O1 is Network real output);程序运行结果:网络调整后的权值和阈值:w1 = -1.8970 -0.3536 -0.7324 -0.2796 -0.8915 -2.5360 -1.4659 -0.8267 1.3088 -2.9194 0.2206 0.3110 -0.4352 1.9239 0.2798 2.2846 2.3745 1.0050 1.9195 1.6357 0.3982 1.2206 -0.3522 0.3303 0.1851 0.4378 0.6983 0.7763 1.0435 1.6692 -0.0396 -0.0303 0.1196 2.5735 1.9985 0.5372 0.7766 0.2509 0.3865 -0.1207 -2.0508 -0.2577 -1.1566 -0.4017 -0.2822 -0.7683 -0.8974 -0.7947 -2.8680 -2.8010 0.5775 0.2247 -1.8290 1.2246 -1.2297 0.4094 -2.0787 -0.0308 1.4659 0.6319B1 = -0.0626 1.3940 -0.6442 -2.4781 0.4005 -0.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位工勤技能-甘肃-甘肃客房服务员四级(中级工)历年参考题库含答案详解
- 2026事业单位工勤技能-湖南-湖南动物检疫员三级(高级工)历年参考题库含答案详解
- 2026事业单位工勤技能-广西-广西舞台技术工五级(初级工)历年参考题库含答案详解
- 项目19 HMI控制电动机星三角启动及变频器三段速控制实训
- 刚体转动动力学基础
- 头颈部的主要组织器官
- 头颈外护理查房
- 制造型企业车间生产管理
- 公务员考试之语言理解与表达
- 高阶导数在流行病学中的传染率变化
- 统编版(2024)八年级上册历史全册教材问题参考答案
- 《无人机飞行控制技术》全套教学课件
- 卡西欧手表 PRG-130(3206)说明书
- 建伍对讲机TH-K2-K4AT中文使用说明书
- 工程勘察设计收费标准(2024年修订本)完整版
- 高等代数一课程教学大纲
- (正式版)SHT 3115-2024 石油化工管式炉轻质浇注料衬里工程技术规范
- 机场运行指挥员职业技能考试基础知识大纲
- 公司TRD施工方案
- FZ/T 81007-2022单、夹服装
- LY/T 2328-2014木荷防火林带营建技术规程
评论
0/150
提交评论