Advertisement
Guest User

Untitled

a guest
Dec 11th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Octave 1.17 KB | None | 0 0
  1. ///////////////////////////script.m///////////////////////////
  2. x=[0 0 1 1;0 1 0 1]
  3. w0 = -1;
  4. w = [2;1]
  5. U = w'*x+w0;
  6. F=a = 1 ./ (1 + exp(-U))
  7. [z]=sxediasi_eutheias(x,w,w0)
  8. b=1;%ρυθμος μαθησης
  9. while (U(1,1)>=0 || U(1,2)>=0 || U(1,3)>=0 || U(1,4)<=0)
  10.     [w,w0]=kyklos_ekpaideusis(U,w,w0,x,b)
  11.     U=w'*x+w0
  12.     %[z]=sxediasi_eutheias(x,w,w0)
  13. end
  14. [z]=sxediasi_eutheias(x,w,w0)
  15. /////////////////////sxediasi_eutheias.m////////////////////////
  16. function [z]=sxediasi_eutheias(x,w,w0)%Κυκλος εκπαιδευσης
  17.   for k=-1:3
  18.     c=k+2
  19.     y(c)=-(w(1,1)/w(2,1))*k-(w0/w(2,1));
  20.     x1(c)=k;
  21.    endfor
  22.    plot(x1,y,'b')
  23.    axis([-2 2 -2 2])
  24.    hold on
  25.    plot(x(1,:),x(2,:),'*')
  26.   endfunction
  27. /////////////////////kyklos_ekpaideusis.m///////////////////////////
  28. function [w,w0]=kyklos_ekpaideusis(U,w,w0,x,b)%Κυκλος εκπαιδευσης
  29.     for i=1:3
  30.       U = w'*x+w0;
  31.         if(U(1,i)>=0)
  32.           w0=w0-b
  33.           w(1,1)=w(1,1)-b*x(1,i);
  34.           w(2,1)=w(2,1)-b*x(2,i);
  35.         end
  36.      end
  37. i=4;
  38.         if(U(1,4)<=0)
  39.           w0=w0+b
  40.           w(1,1)=w(1,1)+b*x(1,4);
  41.           w(2,1)=w(2,1)+b*x(2,4);
  42.         endif
  43.  endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement