⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fuzzy_control_to_imitate_function.txt

📁 用神经网络训练来逼近函数:y=8+2*exp(1-x.^2).*cos(2*pi*x)
💻 TXT
字号:
x=[-0.4:0.04:3.6]; 
y=8+2*exp(1-x.^2).*cos(2*pi*x); 
net=newff(minmax(x),[20,1],{'tansig','purelin'}); 
y1=sim(net,x); 
net.trainParam.epochs=50; 
net.trainParam.goal=0.01; 
net=train(net,x,y); 
y2=sim(net,x); 
figure; 
plot(x,y,'-',x,y1,'-',x,y2,'--'); 
title('原函数与网络训练前后的确仿真结果比较'); 
text(2,12,'原函数y'); 
text(2,11,'-未训练网络的仿真结果y1'); 
text(2,10,'--训练后网络的仿真结果y2'); 
这个程序如何转化成 
训练BP神经网络连接权值的源代码(matlab) 

Ir=0.05; %Ir为学习速率 
err_goal=0.001;%期望最小误差值 
max_epoch=10000; 
X=[0.75 1 0 1;0.25 0 0.55 0;0 0 0.45 0;0 0 0 0;0 0 0 0;1 1 1 1;0.5 0 0.5 0.5;0.5 0 0.5 0.5;0 1 0 0;1 1 1 1;0 0 0 0;0 0 0 0;0 0 0 0;0 0 0 0;1 1 1 1]; 
T=[0 0 0 0;0 1 1 1;0 0 0 0;1 0 0 0];%提供4组15输入4输出训练集和目标集 
[M,N]=size(X);q=10;[L,N]=size(T); 
Wij=rand(q,M); 
Wki=rand(L,q); 
b1=zeros(q,1);b2=zeros(L,1);—随机给定隐含层、输出层偏值 
for epoch=1:max_epoch 
Oi=tansig(Wij*X,b1); 
Ok=purelin(Wki*Oi,b2); 
E=T-Ok; 
deltak=deltalin(Ok,E);%计算输出层的delta 
deltai=deltatan(Oi,deltak,Wki);%计算隐含层的deita 
[dWki,db2]=learnbp(Oi,deltak,Ir);%调整输出层加权系数 
Wki=Wki+dWki;b2=b2+db2; 
[dWij,db1]=learnbp(X,deltai,Ir); 
Wij=Wij+dWij;b1=b1+db1; 
SSE=sumsqr(T-purelin(Wki*tansig(Wij*X,b1),b2)); 
if(SSE<err_goal) break;end 
end 
epoch %显示计算次数 
X1=X; 
Oi=tansig(Wij*X1,b1);%各隐含层输出 
Ok=purelin(Wki*Oi,b2);%显示网络输出层的输出 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -