Advertisement
Guest User

Untitled

a guest
Mar 31st, 2020
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.82 KB | None | 0 0
  1. clc
  2. clear all
  3. syms t a
  4. format
  5. c = 1
  6. d = 2
  7. p1 = [c;c];
  8. p2 = [c;d];
  9. p3 = [d;-c];
  10. p4 = [d;0];
  11. p5 = [-c;d];
  12. p6 = [-d;c];
  13. p7 = [-c;-c];
  14. p8 = [-d;-d];
  15. P = [p1(:,1) p2(:,1) p3(:,1) p4(:,1) p5(:,1) p6(:,1) p7(:,1) p8(:,1)];
  16.  
  17. % macierz wzorców wyjściowych rzeczywistych (bieżące odpowiedzi sieci na
  18. % wzorce uczące)
  19. % A =[a(:,1) a(:,2) a(:,3) a(:,4) a(:,5) a(:,6) a(:,7) a(:,8)];
  20.  
  21.  
  22.  
  23. % określenie prostych decyzyjnych
  24. x = -2:0.1:2;
  25. y1 = -4*x;
  26. y2 = 0.25*x;
  27. plot(x,y1,x,y2)
  28. hold on
  29. % zaznaczenie plaszczyzn cech
  30. v = [x(1) y2(1); 0 0; x(end) y1(end); x(1) y1(end)];
  31. f = [1 2 3 4];
  32. patch('Faces',f,'Vertices',v,'FaceColor',[0.4940 0.1840 0.5560])
  33. v = [x(1) y2(1); 0 0; x(1) y1(1)];
  34. f = [1 2 3];
  35. patch('Faces',f,'Vertices',v,'FaceColor',[0.9290 0.6940 0.1250])
  36. v = [0 0; x(end) y1(end); x(end) y2(end)];
  37. f = [1 2 3];
  38. patch('Faces',f,'Vertices',v,'FaceColor',[0.6350 0.0780 0.1840])
  39. % wykresy wektorów wejściowych
  40. plot(p1(1,1),p1(2,1),'ob',p2(1,1),p2(2,1),'ob')
  41. hold on
  42. plot(p3(1,1),p3(2,1),'sr',p4(1,1),p4(2,1),'sr')
  43. hold on
  44. plot(p5(1,1),p5(2,1),'xg',p6(1,1),p6(2,1),'xg')
  45. hold on
  46. plot(p7(1,1),p7(2,1),'dk',p8(1,1),p8(2,1),'dk')
  47. hold on
  48.  
  49.  
  50.  
  51. text(-1.5,1.5,'klasa 3');
  52. text(1.5,1.5,'klasa 1');
  53. text(1.5,-4,'klasa 4');
  54. text(-0.5,-4,'klasa 2');
  55.  
  56. text(1,6,'neuron 1 - 0\newlineneuron 2 - 0');
  57. text(-1.9,4,'neuron 1 - 1\newlineneuron 2 - 0');
  58. text(1,-2,'neuron 1 - 0\newlineneuron 2 - 1');
  59. text(-1.5,-4,'neuron 1 - 1\newlineneuron 2 - 1');
  60.  
  61. % macierz wzorców wyjściowych docelowych (poprawnych odpowiedzi sieci
  62. % na wzorce uczące)
  63. t1 = [0;0];
  64. t2 = [0;0];
  65. t3 = [1;0];
  66. t4 = [1;0];
  67. t5 = [0;1];
  68. t6 = [0;1];
  69. t7 = [1;1];
  70. t8 = [1;1];
  71. T =[t1 t2 t3 t4 t5 t6 t7 t8];
  72. % macierz wag
  73. w1 = [-1 -4];
  74. w2 = [1 -4];
  75. W = [w1; w2];
  76. % graficzne przedstawienie kierunku wektora
  77. annotation('textarrow',[0.45 0.33],[0.59 0.4]);
  78. text(-0.7,-1,'w1 [-1;-4]');
  79. annotation('textarrow',[0.63 0.635],[0.525 0.3]);
  80. text(0,-3,'w2 [1;-4]');
  81.  
  82. % wektor progów
  83. % b = -w*p
  84. % gdzie p to dowolny wektor wag
  85. b1 = -w1*[0;1];
  86. b2 = -w2*[0;0];
  87. b = [b1;b2];
  88. % macierz wzorców wyjściowych rzeczywistych (bieżące odpowiedzi sieci na
  89. % wzorce uczące)
  90. a1 =[hardlim(W(1,:)*P(:,1)+b(1,:)) hardlim(W(2,:)*P(:,1)+b(2,:))];
  91. a2 =[hardlim(W(1,:)*P(:,2)+b(1,:)) hardlim(W(2,:)*P(:,2)+b(2,:))];
  92. a3 =[hardlim(W(1,:)*P(:,3)+b(1,:)) hardlim(W(2,:)*P(:,3)+b(2,:))];
  93. a4 =[hardlim(W(1,:)*P(:,4)+b(1,:)) hardlim(W(2,:)*P(:,4)+b(2,:))];
  94. a5 =[hardlim(W(1,:)*P(:,5)+b(1,:)) hardlim(W(2,:)*P(:,5)+b(2,:))];
  95. a6 =[hardlim(W(1,:)*P(:,6)+b(1,:)) hardlim(W(2,:)*P(:,6)+b(2,:))];
  96. a7 =[hardlim(W(1,:)*P(:,7)+b(1,:)) hardlim(W(2,:)*P(:,7)+b(2,:))];
  97. a8 =[hardlim(W(1,:)*P(:,8)+b(1,:)) hardlim(W(2,:)*P(:,8)+b(2,:))];
  98. A =[a1 a2 a3 a4 a5 a6 a7 a8];
  99.  
  100. % inicjalizacja seci
  101. % siec = newp(P,T,'hardlim','learnp')
  102. % siec = newp([0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1],2);
  103. % sim(siec,P)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement