Advertisement
Guest User

pb2.4

a guest
Oct 22nd, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. % Sa se creeze doua seturi de puncte diferite si apoi sa se imparta in doua clase cele doua
  2. % tipuri de puncte.
  3.  
  4. % curata ecranul
  5. clf
  6. axis([0 1 0 1])
  7. hold on
  8.  
  9. % exemple din prima clasa
  10. % initializare
  11. x1 = [];
  12. y1 = [];
  13. n1 = 0;
  14.  
  15. % preluare puncte (Cerculete rosii)
  16. b = 1;
  17. while b == 1
  18. [xi,yi,b] = ginput(1);
  19. plot(xi,yi,'ro')
  20. n1 = n1+1;
  21. x1(n1,1) = xi;
  22. y1(n1,1) = yi;
  23. end
  24.  
  25. % se da click pe ecran pentru fiecare punct
  26. % preluarea de puncte se termina cu ESC
  27.  
  28. % exemple din a doua clasa
  29. % initializare
  30. x2 = [];
  31. y2 = [];
  32. n2 = 0;
  33.  
  34. % preluare puncte (Stelute albastre)
  35. b = 1;
  36. while b == 1
  37. [xi,yi,b] = ginput(1);
  38. plot(xi,yi,'b*')
  39. n2 = n2+1;
  40. x2(n2,1) = xi;
  41. y2(n2,1) = yi;
  42. end
  43.  
  44. % se da click pe ecran pentru fiecare punct
  45. % preluarea de puncte se termina cu ESC
  46.  
  47. % construirea setului de antrenare
  48. x=zeros(2,n1+n2); d=zeros(1,n1+n2);
  49. for i=1:n1
  50.    x(1,i)=x1(i,1);
  51.    x(2,i)=y1(i,1);
  52.    d(1,i)=0;
  53. end  
  54. for i=n1+1:n1+n2
  55.    x(1,i)=x2(i-n1,1);
  56.    x(2,i)=y2(i-n1,1);
  57.    d(1,i)=1;
  58. end
  59.  
  60. perc=newp([0 1; 0 1],1);               % definirea perceptronului
  61. plotpv(x,d);                           % reprezentarea datelor
  62.  
  63. hold on;                               % conservarea graficului
  64.    
  65. perc.trainParam.epochs=200;            % stabilirea numarului de iteratii
  66. perc.trainParam.goal-0.001;
  67. perca=train(perc,x,d);                 % antrenarea retelei
  68.  
  69. % se traseaza dreapta care separa cele doua tipuri de puncte
  70. plotpc(perca.IW{1},perca.b{1});        % reprezentarea dreptei separatoare
  71. disp('Apasati o tasta'); pause;
  72. hold off;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement