神经网络已知输入输出,怎么获得输入对输出的权重。
Show older comments
神经网络已知输入输出(多输入对应一个输出),怎么获得输入对输出的权重?请大神不吝赐教{: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的值');
新手一个,希望多多指导!
Accepted Answer
More Answers (0)
Categories
Find more on Deep Learning Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!