24小时热门版块排行榜    

查看: 3716  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

oeheng

木虫 (初入文坛)

[求助] 请问关于matlab神经网络工具箱的问题 已有1人参与

请问使用nntool优化出来的权值和阈值如何用于自编的网络函数中?
同样的一组权值和阈值,使用matlab自带的sim函数是没问题的,但是同样的网络结构和参数,使用自编的网络程序输出的结果就是错的,难道是nntool在优化时对input和output数据做了什么预处理?导致我用同样的input通过自编的网络程序输出时,要先进行同样的预处理才能得到相同的结果?
先谢谢各位了~
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

oeheng

木虫 (初入文坛)

送红花一朵
引用回帖:
7楼: Originally posted by eleven_xia at 2018-04-22 22:40:01
你是不是想说你用nntool训练bp神经网络得到的权值和阈值,现在想通过自己编程序得到与工具箱相同的权值和阈值啊,这样是不行的,因为由数据训练得到的神经网络参数是随机的,所以你不可能得到相同的结果,那个mapm ...

我自己编的程序没有训练功能,只是把权值和阈值设定后,通过网络输入给出相应的输出。但是我把nntool优化好的参数设定给我自己编的网络后,同样的输入确给出错误的输出,所以我怀疑nntool给出的网络参数是把输入输出作了某种变换后训练出来的,但是我找不到相关的说明…

发自小木虫Android客户端
8楼2018-04-23 08:26:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

eleven_xia

至尊木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
没有代码没有错误提示不好说啊,是不是因为你的input和output数组的维数不对啊……

发自小木虫Android客户端
人生只有一种成功,就是按照自己的意愿活下去。
2楼2018-04-21 22:08:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

oeheng

木虫 (初入文坛)

引用回帖:
2楼: Originally posted by eleven_xia at 2018-04-21 22:08:13
没有代码没有错误提示不好说啊,是不是因为你的input和output数组的维数不对啊……

例如我自己编了一个BP网络函数mybp(),用于给定权值和阈值后输出结果,下面采用两种方法得到mybp中的参数:
方法一:
x=[-10:0.15:10];
y=atan(x);
net=newff(x,y,10,{'tansig','purelin'}','trainlm');
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-6;
[net,tr]=train(net,x,y);

方法二:
x=[-10:0.15:10];
y=atan(x);
net=newff(minmax(x),[10 1],{'tansig','purelin'}','trainlm');
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-6;
[net,tr]=train(net,x,y);


输入同样的x,我的程序mybp的仿真结果用方法二的参数输出结果是正确的,但是用方法一得到的参数就不对。
3楼2018-04-21 23:26:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

eleven_xia

至尊木虫 (职业作家)

方法二不是用了minmax这个归一化函数嘛,经过了预处理得到的结果当然不一样。

发自小木虫Android客户端
人生只有一种成功,就是按照自己的意愿活下去。
4楼2018-04-22 08:22:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见