Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % Sa se creeze doua seturi de puncte diferite si apoi sa se imparta in doua clase cele doua
- % tipuri de puncte.
- % curata ecranul
- clf
- axis([0 1 0 1])
- hold on
- % exemple din prima clasa
- % initializare
- x1 = [];
- y1 = [];
- n1 = 0;
- % preluare puncte (Cerculete rosii)
- b = 1;
- while b == 1
- [xi,yi,b] = ginput(1);
- plot(xi,yi,'ro')
- n1 = n1+1;
- x1(n1,1) = xi;
- y1(n1,1) = yi;
- end
- % se da click pe ecran pentru fiecare punct
- % preluarea de puncte se termina cu ESC
- % exemple din a doua clasa
- % initializare
- x2 = [];
- y2 = [];
- n2 = 0;
- % preluare puncte (Stelute albastre)
- b = 1;
- while b == 1
- [xi,yi,b] = ginput(1);
- plot(xi,yi,'b*')
- n2 = n2+1;
- x2(n2,1) = xi;
- y2(n2,1) = yi;
- end
- % se da click pe ecran pentru fiecare punct
- % preluarea de puncte se termina cu ESC
- % construirea setului de antrenare
- x=zeros(2,n1+n2); d=zeros(1,n1+n2);
- for i=1:n1
- x(1,i)=x1(i,1);
- x(2,i)=y1(i,1);
- d(1,i)=0;
- end
- for i=n1+1:n1+n2
- x(1,i)=x2(i-n1,1);
- x(2,i)=y2(i-n1,1);
- d(1,i)=1;
- end
- perc=newp([0 1; 0 1],1); % definirea perceptronului
- plotpv(x,d); % reprezentarea datelor
- hold on; % conservarea graficului
- perc.trainParam.epochs=200; % stabilirea numarului de iteratii
- perc.trainParam.goal-0.001;
- perca=train(perc,x,d); % antrenarea retelei
- % se traseaza dreapta care separa cele doua tipuri de puncte
- plotpc(perca.IW{1},perca.b{1}); % reprezentarea dreptei separatoare
- disp('Apasati o tasta'); pause;
- hold off;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement