[问题] 类神经网络 sim 与取出权重实现

楼主: antineo (帕拉丁)   2014-04-13 18:17:40
请教各位先进
我将资料分成两组,一组300个,一组作为训练,一组作为验证
主要的作法,是参考于http://blog.sina.com.cn/s/blog_64b046c70101cko4.html
网络设定1个隐藏层,10个神经元,传递函数都是tansig,训练方法是tainlm
net=newff(Input,OutputTest,10,{'tansig','tansig'},'trainlm');
net = train(net,Input,OutputTest);
Y = sim(net,Input);
之后我将验证组的资料用训练组的设定去正规化后
Y = sim(net,ValInput);
结果跟训练目标相去不远,于是想将其权重资料取出来,另外写
w1=net.iw(1,1);
w1=w1{1,1};
w2=net.lw(2,1);
w2=w2{1,1};
b1=net.b(1,1);
b1=b1{1,1};
b2=net.b(2,1);
b2=b2{1,1};
重新把 输入资料带进去算
for i=1:300
a1(:,i)=w1*Input(:,i)+b1;
end
a1=tansig(a1);
for i=1:300
a2(1,i)=w2*IL(:,i)+b2;
end
a2=tansig(a2);
但是最后与 a2 与 Y值 差很多,而且 几乎是 1或-1
也曾经把 进tansig运算前 先进行map到-1~1但还是完全不对
请各位高手 帮忙 指点迷津

Links booklink

Contact Us: admin [ a t ] ucptt.com