Advertisement
LukacikPavel

cv04-katastrofa

Oct 15th, 2018
476
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Octave 2.58 KB | None | 0 0
  1.  
  2. poc = 1;
  3. for x1 = 2:0.2:3.8
  4.   for y1 = 0:0.2:1.8
  5.     z = (x1.*x1+x1.*y1)./(x1-y1);
  6.     VstupSiete(poc,1)=x1;
  7.     VstupSiete(poc,2)=y1;
  8.     VstupSiete(poc,3)=z;
  9.     poc=poc+1;
  10.    end;
  11. end;
  12.  
  13. if (max(abs(VstupSiete(:,3))))>1
  14.   N_VstupSiete = VstupSiete / max(abs(VstupSiete))
  15. else
  16.   N_VstupSiete = VstupSiete;
  17. end;
  18.  
  19. PocetVstup=2;
  20. Pocet1Skryta=11;
  21. PocetSkryta=7;
  22.  
  23. % nahodna inicializacia vah
  24. Vahy1 = rand(pocetVstup+1, pocet1Skryta);
  25. Vahy1(3,:) = ones(1);
  26. Vahy2 = rand(pocet1Skryta+1, pocet2Skryta);
  27. Vahy2(pocet1Skryta+1,:) = ones(1);
  28. Vahy3 = rand(pocet2Skryta+1, 1);
  29. Vahy3(pocet2Skryta+1,:) = ones(1);
  30.  
  31. Potencial1Skrytej=ones(1,pocet1Skryta)
  32. Potencial2Skrytej=ones(1,pocet2Skryta)
  33. PotencialVystupnej=onew(1,1)
  34.  
  35. % inicializacia VSTUPY
  36. Vystupy0 = ones(1,3);
  37. Vystupy0(3)=-1;
  38. Vystupy1 = ones(1,pocet1Skryta=1);
  39. Vystupy1(pocet1Skryta+1)=-1;
  40. Vystupy2 = ones(1,pocet2Skryta+1);
  41. Vystupy2(pocet2Skryta+1)=-1;
  42. Vystupy3 = ones(1,1);
  43.  
  44. VysledkySiete=ones(100,1)
  45.  
  46. for a=1:50
  47.   for r=1:100
  48.    
  49.     Vystupy0(1)=N_VstupSiete(r,1);
  50.     Vystupy0(2)=N_VstupSiete(r,2);
  51.    
  52.     for i=1:Pocet1Skryta  
  53.       Potencial1Skrytej(1,i)=Vahy1(:,i)*Vystupy0(1,:)
  54.       Vystupy1(1,i)=tanh(Potencial1Skrytej(1,i)):
  55.     end;
  56.    
  57.     for i=1:Pocet2Skryta  
  58.       Potencial2Skrytej(1,i)=Vahy2(:,i)*Vystupy1(1,:)
  59.       Vystupy2(1,i)=tanh(Potencial2Skrytej(1,i)):
  60.     end;
  61.    
  62.     PotencialVystupnej(1,1)=Vahy3(:,i)*Vystupy2(1,:)
  63.     Vystupy3(1,1)=tanh(PotencialVystupnej(1,1)):
  64.    
  65.     ChybaNaVystupe = ones(1,1);
  66.     ChybaNaVystupe = (1-tanh(PotencialVystupnej(1,1))*tanh(PotencialVystupnej(1,1)))*(N_VstupSiete(r,3)-Vystupy3);
  67.    
  68.     Chyba2Vrstva = ones(1,Pocet2Skryta);
  69.     for i=1:Pocet2Skryta
  70.       Chyba2Vrstva(1,i) = (1-tanh(Potencial2Skrytej(1,i))*tanh(Potencial2Skrytej(1,i)))*(Vahy3(1,i)*ChybaNaVystupe(1,1));
  71.     end;
  72.    
  73.     pomocnySucin = ones(1, pocet1Skryta)
  74.     Chyba1Vrstva = ones(1,pocet1Skryta);
  75.     for i=1:pocet1Skryta
  76.       for j=1:pocet2Skryta
  77.         pomocnySucin(1,i)=Vahy2(i,j)*Chyba2Vrstva(1,j)
  78.       end;
  79.      
  80.       Chyba1Vrstva = (1,i) = (1-tanh(Potencial2Skrytej(1,i))*tanh(Potencial2Skrytej(1,i)))*(Vahy3(1,i)*pomocnySucin(1,1));
  81.     end;
  82.    
  83.     % zmena vah
  84.     UciaciPomer = 0.1;
  85.     for i=1:(pocetVstup+1)
  86.       for j=1:pocet1Skryta
  87.         pomocnySucin(i,j) = UciaciPomer*Chyba1Vrstva(1,j)*Vystupy0(1:j));
  88.         noveVahy(i,j)=Vahy1(i,j)+pomocnySucin);
  89.       end;
  90.     end;
  91.    
  92.     celkovaChyba = N_VstupSiete(r,3)*N_VstupSiete(r,3) - Vystupy3(1,1))*0.5;
  93.    
  94.   end;
  95.  
  96.   chybaSiete = chybaSiete + celkovaChyba;
  97.  
  98. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement