matlab程序出错~~
在matlab里输入如下代码:[Pn,minP,maxP]=premnmx(P);%输入样本的归一化[Tn,minT,maxT]=premnmx(T);%输出样本的归一化...
在matlab里输入如下代码:
[Pn,minP,maxP]=premnmx(P); %输入样本的归一化
[Tn,minT,maxT]=premnmx(T); %输出样本的归一化
net=netff(minmax(Pn),[10,1],{purelin,purelin},trainlm,learngdm,msereg); %创建BP网络
net.trainParam.show=5;
net.trainParam.epochs=5000;
net.trainParam.goal=0.005; %训练参数设置
[net,tr]=train(net,Pn,Tn); %进行网络训练
An=sin(net,Pn); %网络仿真测试
E=msereg(Tn-An); %计算网络误差
A=postmnmx(An,minT,maxT); %仿真测试结果的反归一化
save k19830 net; %测试符合要求后,保存网络
%从EXCEL中导入检验样本P1
[P1n]=tramnmx(P1,minP,maxP); %检验样本的归一化
Bn=sim(net,P1n); %检验样本的仿真预测
B=postmnmx(Bn,minT,maxT); %检验样本仿真预测结果的反归一化
%将结果导出至EXCEL,保存
然后运行后出现如下字样:
Warning: Some maximums and minimums are equal. Those inputs won't be transformed.
> In D:\MATLAB6p5\toolbox\nnet\nnet\premnmx.m at line 61
??? Error using ==> tansig
Not enough arguments.
这是什么问题啊?怎么解决? 展开
[Pn,minP,maxP]=premnmx(P); %输入样本的归一化
[Tn,minT,maxT]=premnmx(T); %输出样本的归一化
net=netff(minmax(Pn),[10,1],{purelin,purelin},trainlm,learngdm,msereg); %创建BP网络
net.trainParam.show=5;
net.trainParam.epochs=5000;
net.trainParam.goal=0.005; %训练参数设置
[net,tr]=train(net,Pn,Tn); %进行网络训练
An=sin(net,Pn); %网络仿真测试
E=msereg(Tn-An); %计算网络误差
A=postmnmx(An,minT,maxT); %仿真测试结果的反归一化
save k19830 net; %测试符合要求后,保存网络
%从EXCEL中导入检验样本P1
[P1n]=tramnmx(P1,minP,maxP); %检验样本的归一化
Bn=sim(net,P1n); %检验样本的仿真预测
B=postmnmx(Bn,minT,maxT); %检验样本仿真预测结果的反归一化
%将结果导出至EXCEL,保存
然后运行后出现如下字样:
Warning: Some maximums and minimums are equal. Those inputs won't be transformed.
> In D:\MATLAB6p5\toolbox\nnet\nnet\premnmx.m at line 61
??? Error using ==> tansig
Not enough arguments.
这是什么问题啊?怎么解决? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询