matlab在调用newff出错,错误使用newff

clear,clc

close all

a=load('Q3.txt');

z=a([1:10:900],[1:4]);

z=z';

P=z([1:3],[1:end]);

[PN,PS1]=mapminmax(P);

T=z(4,[1:end]);

[TN,PS2]=mapminmax(T);

EPOCHS=1000;

GOAL=0.000001;

s=3:15;

res=zeros(size(s));

for i=1:length(s)

net=newff(TN,[s(i),1.],{'tansig','purelin'},'trainlm');

net.iw{1,1}=zeros(size(net.iw{1,1}))+0.5;

net.iw{2,1}=zeros(size(net.iw{2,1}))+0.75;

net.b{1,1}=zeros(size(net.b{1,1}))+0.5;

net.b{2,1}=zeros(size(net.b{2,1}))+0.1;

net.trainParam.epochs=EPOCHS;

net.trainParam.goal=GOAL;

net=train(net,PN,TN);

y=sim(net,PN);

e=T-y;

error=mse(e,net);

res(i)=norm(error);

end

number=find(res==min(res));

if(length(number)>1)

no=number(1)

else no=number

end

clear  error res;

net=newff(minmax(PN),[no,1],{'tansig','purelin'},'trainlm');

net.iw{1,1}=zeros(size(net.iw{1,1}))+0.5;

net.iw{2,1}=zeros(size(net.iw{2,1}))+0.75;

net.b{1,1}=zeros(size(net.b{1,1}))+0.5;

net.b{2,1}=zeros(size(net.b{2,1}));

net.trainParam.epochs=EPOCHS;

net.trainParam.goal=GOAL;

net=train(net,PN,TN);

y=sim(net,PN);

e=tn-y;

error=mse(e,net);

data1=load('Q31.txt');

data1=data1';

N=data1(4,[1:99]);

M=data1([1:3],[1:99]);

MN=mapminmax('apply',M,PS1);

YM1=sim(net1,MN);

YR=mapminmax('reverse',YM1,PS2)

MSE2=mean((YR-N).^2)

error=abs(YR-N);

figure

plot(error,'-*')

title('神经网络预测误差')

figure

plot(YR,':og');

hold on

plot(N,'-*');

legend('预测输出','期望输出','fontsize',12)

title('BP网络预测输出','fontsize',12)

xlabel('样本','fontsize',12)

ylabel('输出','fontsize',12)

错误使用 newff>new_5p1 (line 165)

Layer sizes is not a row vector of positive integers.

出错 newff>create_network (line 129)

net = new_5p1(varargin{:});

出错 newff (line 101)

out1 = create_network(varargin{:});

>>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值