Strona główna    Przejdź do apletu.


Opis algorytmu sieci.



Program rozpoznaje wzorce wejściowe w oparciu o implementacje prostej jednowarstwowej sieci neuronowej bez warstw ukrytych. Dla trzech wzorców taka sieć jest w zupełności wystarczająca. Dla większej ilości wzorców z powodu ograniczonej liczby neuronów konieczne może się okazać wprowadzenie dodatkowych warstw ukrytych.
Program operuje na wzorcach binarnych. Każdy wzorzec wejściowy zostaje zamieniony na odpowiadającą mu jednokolumnową reprezentację macierzową w ten sposób, że wszystkie wiersze matrycy wejściowej zostają "sklejone" razem. Zaciemnione piksele wzorca reprezentują w docelowej macierzy wartości 1, zaś piksele nie podświetlone - wartości -1. Przekształcenie to jest wykonywane dla wszystkich trzech wzorców użytych w programie, dając w efekcie trzykolumnową macierz P. Każda kolumna otrzymanej macierzy odpowiada jednemu wzorcowi. W opisywanym algorytmie kolejność wzorców w macierzy P nie ma wpływu na odpowiedź sieci.



Następnie odbywa się ustalenie wag sieci neuronowej poprzez przemnożenie macierzy P przez macierz transponowaną. Otrzymujemy macierz wag, która zawsze jest kwadratowa i ma wymiary zależne od rozmiaru wzorca. Przykładowo dla wzorca o rozmiarze 5 na 7 pikseli macierz wag ma wymiary 35 x 35.



Analogicznie do wzorców, obraz wejściowy sieci zostaje zamieniony na swoją kolumnową reprezentację. W programie umożliwiono zadawanie obrazu wejściowego w czterech odcieniach szarości, co odpowiada sygnałom o charakterze pseudoanalogowym. Odcienie szarości są reprezentowane w macierzy wartościami: -3, -1, 1 oraz 3.



W kolejnym kroku oblicza się odpowiedź sieci neuronowej na zadany obraz wejściowy. Macierz odpowiedzi A powstaje poprzez wymnożenie macierzy wag przez macierz wejściową I. W tym sensie każdy wiersz macierzy wag W stanowi osobny neuron, zaś kolejne elementy wiersza reprezentują kolejne połączenia synaptyczne.



Tak otrzymana macierz odpowiedzi sieci zostaje z powrotem sprowadzona do reprezenatcji graficznej, tj. do matrycy 5 x 7 pikseli. Zanim macierz zostanie wyświetlona na ekranie ulega ona jeszcze binaryzacji. Co oznacza, że dodatnie elementy macierzy A zostają wyświetlone w postaci "zapalonego" piksela, zaś wszystkie pozostałe w postaci "zgaszonego" piksela.



  Wróć do początku strony

© 2004