irene_toto 发表于 2008-3-4 09:54

小波神经网络不收敛问题

新手上路,写了小波神经网络,结果不收敛,请教各位大人:
1.设计的小波神经网络是 12个输入,11个隐层节点 ,1个输出节点....问.这样设计是否合理.
2.初始值的设置,怎么选取比较优?
4.选取MORLET小波作为隐层节点.即COS(1.75t)*e^((-0.5)*(t^2)).
3.参数的修改,采用共轭梯度算法.这里有些问题请问大家.
for i10=1:YCJD   %隐层节点数目
       hw(i10)=0;
       ha(i10)=0;
       hb(i10)=0;
    for i11=1:rnd   %训练样本数目
    A1=1.75*z(i10,i11);
    B1= exp(-0.5*(z(i10,i11)^2));
      hw(i10)=hw(i10)+err0(i11)*cos(A1)*B1;   %请问,ERR0前面是正号还是负号?参考两个资料,前面的符号相反
      ha(i10)=ha(i10)-err0(i11)*w(i10)*z(i10,i11)*(1/a0(i10))*((1.75*sin(A1))+z(i10,i11)*cos(A1))*B1;
      hb(i10)=hb(i10)-err0(i11)*w(i10)*(1/a0(i10))*((1.75*sin(A1))+z(i10,i11)*cos(A1))*B1;   %%%%括号的位置
    end
end
      %fprintf(1,'%f\n',ha);
   if (i6==1)
      sa=(-1)*ha;
      sb=(-1)*hb;
      sw=(-1)*hw;
      ha1=ha;
      hb1=hb;
      hw1=hw;
      %%%%%%%%%%矩阵大小匹配问题
   else
       sa=(-1)*ha+((ha*ha')/(ha1*ha1'))*sa;    %共轭梯度算法.这里的公式是否正确?
       sb=(-1)*hb+((hb*hb')/(hb1*hb1'))*sb;
       sw=(-1)*hw+((hw*hw')/(hw1*hw1'))*sw;
       ha1=ha;
       hb1=hb;
       hw1=hw;      
   end
   
      a0=a0+ra*sa;
      b0=b0+rb*sb;
      w=w+rw*sw;

无水1324 发表于 2008-3-4 21:37

这个问题可以去matlab板块问问,帮你顶一下了!
页: [1]
查看完整版本: 小波神经网络不收敛问题