神经网络已知输入输出,怎么获得输入对输出的权重。
Mostra commenti meno recenti
神经网络已知输入输出(多输入对应一个输出),怎么获得输入对输出的权重?请大神不吝赐教{:soso__10169062262133571330_1:}
我用的代码如下:
clc
clear all
A=xlsread('data.xlsx');
%选择输入输出数据
p=[A(:,1) A(:,2) A(:,3)];
t=A(:,4);
%数据归一化
[pn,minp,maxp]=premnmx(p); %按行归一化
[tn,mint,maxt]=premnmx(t);%
%[m n]=size(p);
%dx=zeros(m,2);
%dx(:,1)=-1;
%dx(:,2)=1;
dx=[-1,1;-1,1;-1,1];
%BP网络训练
net=newff(dx,[5,3,1],{'tansig','logsig','purelin'},'traingdx');
net.trainParam.show=1000;
%每1000轮回显示一次结果
net.trainParam.Lr=0.01;
%学习速率为0.01
net.trainParam.epochs=30000;
%循环1000次
net.trainParam.goal=1e-7;
%均方误差
net=train(net,pn',tn');
%对原数据进行仿真
an=sim(net,pn');
a=postmnmx(an,mint,maxt);
%还原仿真得到的数据
%与实际数据对比
x=p;
newk=a(1,:);
figure;
plot(x,newk,'r-o',x,t,'b--+')
legend('预测值','实际值');
xlabel('时间');
ylabel('cpi的值');
新手一个,希望多多指导!
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Deep Learning Toolbox in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!