| 查看: 1959 | 回复: 3 | |||
[交流]
《MATLAB智能算法30个案例》中,遗传算法优化BP神经网络部分运行出错 已有3人参与
|
|
运行时出现: 错误使用 network/subsasgn>network_subsasgn (line 553) 无法从 double 转换为 cell。 出错 network/subsasgn (line 13) net = network_subsasgn(net,subscripts,v,netname); 出错 Bpfun (line 33) net.b(1)=reshape(B1,hiddennum,1); 源代码:function err=Bpfun(x,P,T,hiddennum,P_test,T_test) %%训练与测试BP网络 %%输入 %x:一个个体的初始权值和阈值 %P:训练样本输入 %T:训练样本输出 %hiddennum:隐含层神经元数 %P_test:测试样本输入 %T_test:测试样本期望输出 %%输出 %err:预测样本的预测误差的范数 inputnum=size(P,1); %输入层神经元的个数 outputnum=size(T,1); %输出层神经元的个数 %新建BP网络 net=newff(P,T,[hiddennum,outputnum],{'tansig','logsig'},'trainlm'); %%设置网络参数;训练次数为1000,训练目标为0.011,学习速率为0.1 net.trainParam.epochs=1000; net.trainParam.goal=0.01; Lp.lr=0.1; %BP神经网络初始权值和阈值 w1num=inputnum*hiddennum; %输入层到隐含层的权值个数 w2num=outputnum*hiddennum; %隐含层到输出层的权值个数 w1=x(1:w1num); %初始输入层到隐含层的权值 B1=x(w1num+1:w1num+hiddennum); %隐含层神经元阈值 w2=x(w1num+hiddennum+1:w1num+hiddennum+w2num); %初始隐含层到输入层的权值 B2=x(w1num+hiddennum+w2num+1:w1num+hiddennum+w2num+outputnum); %输出层阈值 net.iw{1,1}=reshape(w1,hiddennum,inputnum); net.lw{2,1}=reshape(w2,outputnum,hiddennum); net.b(1)=reshape(B1,hiddennum,1); net.b(2)=reshape(B2,outputnum,1); %训练网络 net=train(net,P,T); %测试网络 Y=sim(net,P_test); err=norm(Y-T_test) 求各位大神帮帮小弟,感激不尽 |
» 猜你喜欢
不自信的我
已经有10人回复
磺酰氟产物,毕不了业了!
已经有8人回复
求助:我三月中下旬出站,青基依托单位怎么办?
已经有10人回复
26申博(荧光探针方向,有机合成)
已经有4人回复
要不要辞职读博?
已经有3人回复
论文终于录用啦!满足毕业条件了
已经有26人回复
2026年机械制造与材料应用国际会议 (ICMMMA 2026)
已经有4人回复
Cas 72-43-5需要30g,定制合成,能接单的留言
已经有8人回复
北京211副教授,35岁,想重新出发,去国外做博后,怎么样?
已经有8人回复
自荐读博
已经有3人回复
怀梦星空攀
新虫 (职业作家)
- 应助: 0 (幼儿园)
- 金币: 7556.2
- 散金: 2655
- 红花: 4
- 沙发: 7
- 帖子: 4223
- 在线: 225.5小时
- 虫号: 7757462
- 注册: 2018-01-11
- 性别: GG
- 专业: 制造系统与自动化
2楼2018-03-07 22:53:13
3楼2018-03-11 10:14:06
4楼2018-08-02 00:35:05












回复此楼