Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clc
- clear all
- syms t a
- format
- c = 1
- d = 2
- p1 = [c;c];
- p2 = [c;d];
- p3 = [d;-c];
- p4 = [d;0];
- p5 = [-c;d];
- p6 = [-d;c];
- p7 = [-c;-c];
- p8 = [-d;-d];
- P = [p1(:,1) p2(:,1) p3(:,1) p4(:,1) p5(:,1) p6(:,1) p7(:,1) p8(:,1)];
- % macierz wzorców wyjściowych rzeczywistych (bieżące odpowiedzi sieci na
- % wzorce uczące)
- % A =[a(:,1) a(:,2) a(:,3) a(:,4) a(:,5) a(:,6) a(:,7) a(:,8)];
- % określenie prostych decyzyjnych
- x = -2:0.1:2;
- y1 = -4*x;
- y2 = 0.25*x;
- plot(x,y1,x,y2)
- hold on
- % zaznaczenie plaszczyzn cech
- v = [x(1) y2(1); 0 0; x(end) y1(end); x(1) y1(end)];
- f = [1 2 3 4];
- patch('Faces',f,'Vertices',v,'FaceColor',[0.4940 0.1840 0.5560])
- v = [x(1) y2(1); 0 0; x(1) y1(1)];
- f = [1 2 3];
- patch('Faces',f,'Vertices',v,'FaceColor',[0.9290 0.6940 0.1250])
- v = [0 0; x(end) y1(end); x(end) y2(end)];
- f = [1 2 3];
- patch('Faces',f,'Vertices',v,'FaceColor',[0.6350 0.0780 0.1840])
- % wykresy wektorów wejściowych
- plot(p1(1,1),p1(2,1),'ob',p2(1,1),p2(2,1),'ob')
- hold on
- plot(p3(1,1),p3(2,1),'sr',p4(1,1),p4(2,1),'sr')
- hold on
- plot(p5(1,1),p5(2,1),'xg',p6(1,1),p6(2,1),'xg')
- hold on
- plot(p7(1,1),p7(2,1),'dk',p8(1,1),p8(2,1),'dk')
- hold on
- text(-1.5,1.5,'klasa 3');
- text(1.5,1.5,'klasa 1');
- text(1.5,-4,'klasa 4');
- text(-0.5,-4,'klasa 2');
- text(1,6,'neuron 1 - 0\newlineneuron 2 - 0');
- text(-1.9,4,'neuron 1 - 1\newlineneuron 2 - 0');
- text(1,-2,'neuron 1 - 0\newlineneuron 2 - 1');
- text(-1.5,-4,'neuron 1 - 1\newlineneuron 2 - 1');
- % macierz wzorców wyjściowych docelowych (poprawnych odpowiedzi sieci
- % na wzorce uczące)
- t1 = [0;0];
- t2 = [0;0];
- t3 = [1;0];
- t4 = [1;0];
- t5 = [0;1];
- t6 = [0;1];
- t7 = [1;1];
- t8 = [1;1];
- T =[t1 t2 t3 t4 t5 t6 t7 t8];
- % macierz wag
- w1 = [-1 -4];
- w2 = [1 -4];
- W = [w1; w2];
- % graficzne przedstawienie kierunku wektora
- annotation('textarrow',[0.45 0.33],[0.59 0.4]);
- text(-0.7,-1,'w1 [-1;-4]');
- annotation('textarrow',[0.63 0.635],[0.525 0.3]);
- text(0,-3,'w2 [1;-4]');
- % wektor progów
- % b = -w*p
- % gdzie p to dowolny wektor wag
- b1 = -w1*[0;1];
- b2 = -w2*[0;0];
- b = [b1;b2];
- % macierz wzorców wyjściowych rzeczywistych (bieżące odpowiedzi sieci na
- % wzorce uczące)
- a1 =[hardlim(W(1,:)*P(:,1)+b(1,:)) hardlim(W(2,:)*P(:,1)+b(2,:))];
- a2 =[hardlim(W(1,:)*P(:,2)+b(1,:)) hardlim(W(2,:)*P(:,2)+b(2,:))];
- a3 =[hardlim(W(1,:)*P(:,3)+b(1,:)) hardlim(W(2,:)*P(:,3)+b(2,:))];
- a4 =[hardlim(W(1,:)*P(:,4)+b(1,:)) hardlim(W(2,:)*P(:,4)+b(2,:))];
- a5 =[hardlim(W(1,:)*P(:,5)+b(1,:)) hardlim(W(2,:)*P(:,5)+b(2,:))];
- a6 =[hardlim(W(1,:)*P(:,6)+b(1,:)) hardlim(W(2,:)*P(:,6)+b(2,:))];
- a7 =[hardlim(W(1,:)*P(:,7)+b(1,:)) hardlim(W(2,:)*P(:,7)+b(2,:))];
- a8 =[hardlim(W(1,:)*P(:,8)+b(1,:)) hardlim(W(2,:)*P(:,8)+b(2,:))];
- A =[a1 a2 a3 a4 a5 a6 a7 a8];
- % inicjalizacja seci
- % siec = newp(P,T,'hardlim','learnp')
- % siec = newp([0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1],2);
- % sim(siec,P)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement