Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2008-12-11
年龄: 37
帖子: 1
声望力: 0 ![]() |
![]()
用一个神经元将四个16维输入向量分为+1和-1两类,我简单的编了如下的程序,可是迭代不收敛,不知道错在哪里了?谁能指点一下,谢啦!~~~~~~
P=[+1 +1 -1 -1; -1 +1 -1 -1; -1 +1 -1 -1; -1 +1 -1 -1; +1 +1 +1 +1; +1 +1 -1 +1; +1 -1 -1 +1; +1 -1 -1 +1; +1 +1 +1 +1; -1 -1 +1 +1; -1 -1 +1 -1; -1 -1 +1 -1; -1 -1 +1 +1; -1 -1 -1 -1; -1 -1 -1 -1; -1 -1 -1 -1;]; T=[+1 -1 +1 -1]; net=newp([-1 1;-1 1;-1 1;-1 1;-1 1;-1 1;-1 1;-1 1; -1 1;-1 1;-1 1;-1 1;-1 1;-1 1;-1 1;-1 1],1); net.inputweights{1,1}.initFcn='rands'; net.biases{1}.initFcn='rands'; net=init(net); net.trainParam.epochs=200; net.trainParam.shou=25; net.trainParam.goal=0.0001; net=train(net,P,T); wts=net.IW{1,1} bias=net.b{1} x1=[1;-1;-1; -1; 1; 1; 1; 1; 1; -1; -1; -1; -1; -1; -1; -1]; a1=sim(net,x1) e1=abs(T(1)-a1) x2=[1;1;1;1;1;1;-1;-1;1;-1;-1;-1;-1;-1;-1;-1]; a2=sim(net,x2) e2=abs(T(2)-a2) x3=[-1;-1;-1;-1;1;-1;-1;-1;1;1;1;1;1;-1;-1;-1]; a3=sim(net,x3) e3=abs(T(3)-a3) x4=[-1;-1;-1;-1;1;1;1;1;1;1;-1;-1;1;-1;-1;-1]; a4=sim(net,x4) e4=abs(T(4)-a4) |
![]() |
![]() |