• Nie Znaleziono Wyników

Wprowadzenie do sieci neuronowych

N/A
N/A
Protected

Academic year: 2022

Share "Wprowadzenie do sieci neuronowych"

Copied!
8
0
0

Pełen tekst

(1)

g m m J i A V KOWE PflŁ.IJ-EfiłlMUŁI-SŁASiŁI.EJ.

Seria: AUTOMATYKA 2.109

m a

Nr k o l .,1175

Mieczysław Jagodziński Politechnika Śląska

WPROWADZENIE DO SIECI NEURONOWYCH AN INTRODUCTION TO NEURAL NETWORKS BBEHEHME B HEHPOHHbE CETH

S tr es z c z e n i e ; W pracy przedstawiono wprowadzenie do problematyki sieci neuronowych. Omówiono algorytm Kohonena i regułę Hebba ilustrujące złożoność problemów związanych ze strukturą i uczeniem sieci .

Summary : In this work the introductory problems of neural networks have been presented. The K o h o n e n ’s algorithm and H e b b ’s rule showing the complexity of problems concerning the structure and teaching the neural networks were discussed.

Pe3ioHe: B p a ó o T e n p e n c T a e n e H O B B e n e H n e b n p o ó n e n a T M K y HeUpoHHbtx c e T e H . O riK ca H a n r o p n T M K o x o n e H a k np a B M n o Xe66a nnn»ocTpHpyiomHe cno * H O C T b n p o ö n e M cB A 3 a H h ix co C T p y K T y p o H m yw eHneM ceTW.

1, Wprowadzenie [3] [6]

Mózg człowieka jest od wielu wieków przedmiotem zainteresowania wielu naukowców. Moment, w którym człowiek będzie w stanie opanować technikę funkcjonowania mózgu^ stanowić będzie przełom dla rozwoju cywilizacji.

Obecnie są prowadzone prace nad rozwiązaniem tego problemu dw u ki e r u n k o w o :

a) prace zmierzające do modelowania mózgu człowieka ze względu na pełnione przez niego funkcje,

b) prace polegające na próbach konstrukcji systemów przetwarzania informacji bazujących na strukturze mózgu.

Sieć neuronową można poddać procesowi uczenia, podczas którego wykorzystuje ona informacje zakodowane w modelach przykładowych. Istotną zaletą sieci neuronowych jest umiejętność przechowywania informacji w obecności zakłóceń. Do przechowywania informacji służą wagi połączeń między węzłami sieci określonego typu.

Aktualnie prowadzone są intensywne badania sieci neuronowych w wielu ośrodkach w dwóch kierunkach:

a) realizacji sprzętowej umożliwiającej wykorzystanie własności sieci n eu ro p o d o b n y c h , n p . :

opracowanie procesorów MARK III i MARK IV przez R. Hechta-Nielsena, opracowanie procesora emulującego sieć NEP (Network Emulation Procesor}

przez C. Cruz-Younga,

opracowanie układów ANZA i ANZA Plus przez Firmę Hecht-Nielsen;

(2)

b) symulacji wykorzystującej specjalistyczne oprogramowanie pewnych struktur sieci, n p . :

symulator sieci neuronowych Neural Works opracowany przez Firmę Neural Ware Inc.

system P3 symulujący asynchroniczne działanie sieci neuronowych, opracowany przez D. Zipsera.

Sieci neuronowe stanowią baze do rozwiązywania wielu problemów technicznych. Wybrane przykłady zastosowania sieci neuronowych:

- w problemach kombinat o ry cz ny c h:

John Hopfield wraz z Davidem Tankiem rozwiązali problem komiwojażera, - w rozpoznawaniu wzorów pisanych:

Kuniko Fukushimo jest twórcą systemu do rozpoznawania tekstów pisanych r ę c z n i e ,

- w przetwarzaniu informacji i sygnałów oraz ich ekspertyzy:

E. Czogała zastosował sieci neuronowe do filtracji szumów zawartych w sygnałach EKG,

- w konwersji tekstu pisanego na mowę:

Rosenberg i Sejnowski podali algorytm sieci NETTALK umożliwiający konwersję tekstu na mowę.

2. Model matematyczny neuronu [6]

Sieci neuronowe są zbudowane z podstawowych jednostek obliczeniowych zwanych węzłami sieci lub neuronami. Neuron jest prostą jednostką przetwarzającą i realizującą podstawowe działania sumowania ważonego lub funkcji progowych (r y s .1).

Rys.l. Model matematyczny neuronu

Fig.l. Mathematical model of single neural celi

Na rys.] przyjęto oznaczenia:

wa. , - waga połączenia, współczynnik zależności j-tego wyjścia od i-tego wejścia neuronu,

net: - suma ważona wejść dla i-tego neuronu, określona jako:

N

net.* £ w a . *RE .

* j=i 1J J

(3)

W p r owadzenie do sieci neuronowych 107

akt^ - poziom aktywacji neuronu,

akt ^(t ) = R E j [a k t .(t - 1 ),n e t ^ t - 1 )]

REj - reakcja neuronu na pobudzenie, R E . (t ) = f.(FAi [akti (t-l ) ,neti ( t - l )]}

w zapisie macierzowym mamy:

n e l ( t ) = w a ( t ) * B £ ( t ) , BE ( t )=X {FA [aJ tŁ( t - 1 ) , n e t ( t - l 1 11 FAj - f u n k c j a a k t y w a c j i ,

Charakterystyki modeli neuronów w zależności od założonej funkcji aktywacji i funkcji wyjściowej neuronu moga być przedstawione w postaci (rys.2 - 5) [6]:

- modelu liniowego,

- modelu liniowego z progiem, - modelu binarnego z progiem, - modelu sig-joidalnego z progiem.

R E . ( t )

a k t . ( t )= n e t . ( t - l j R E ^ ( t )= a k t ^ (t )

a k t ^ (t ) R ys .2. Model liniowy

Fig.2. Linear model

R E . ( t 1

a k t ^ ( t )=net^(t-1)+alfa*akt^(t-1) R E i (t)=[akti (t)-0i ]*I[akti (t)-0.J

O.i a k t ^ !t ) Rys. 3. Model liniowy' z progiem Fig.3. Linear model with the treshold

R E .I t )

akt ^ (t) =I [ ne t(t ) - 0 . ] R E i (t)=akti (t)

O. a k t .!t )

a R ys .4. Model binarny z progiem Fig.4. Binary model with the freshold

(4)

Rys.5. Model sigmoiaalny z progiem Fig. 5- Exponential model with freshold

3. Budowa sieci neuronowych [3][4][5](63

Sieć neuronowa składa sie z następujących rodzajów węzłów:

- węzły wejściowe, - węzły ukryte, - w ę2łv wyjściowe.

W przypadku kiedy węzły mają różne charakterystyki przetwarzania mogą wystąpić problemy ze zbieżnością algorytmu uczenia sieci. Dlatego tez przyjmuje się takie same charakterystyki przetwarzania dla wszystkich węzłów, Do zakodowania połączeń pomiędzy węzłami sieci służy macierz wag.

40 7fv.

¡jjj

>< /

/ / I i

9

.

i \ / ■»

WARSTWA WYJŚCIOWA

II WARSTWA UKRYTA

‘O j

- f F

I WARSTWA UKRYTA

"S..

±

T

w WARSTWA WEJŚCIOWA

Rys.6. Przykładowa sieć neuronowa Fig.6. Sample neural network

(5)

Wprowadzenie do sieci neuronowych 109

Sa w niej zapisane wszystkie połączenia pomiędzy węzłami sieci. Ujemne wartości elementów tej macierzy realizują wejścia hamujące# a dodatnie wartości wejścia pobudzające neuronów. Przykładową sieć neuronową pokazano na r y s .6.

4 . Rodza.ie sieci f 5 ]

Sieci mogą posiadać wejścia binarne lub ciągłe, mogą być uczone pod nadzorem lub bez nadzoru. Poszczególne rodzaje sieci mogą być składnikami bardziej złożonych systemów. Poniżej przedstawiono rodzaje sieci, które mogą służyć do klasyfikacji statycznych wzorów.

KLASYFIKATORY STATYCZNYCH WZORÓW WEJŚCIA BINARNE

uczone pod nadzorem:

-sieć Hopfielda, -sieć Hamminga uczone bez nadzoru:

-klasyfikator Carpentnera Grossberga WEJŚCIA CIĄGLE

uczone pod nadzorem:

- perceptron,

- perceptron wielowarstwowy»

uczone bez nadzoru:

- mapy cech Kohoneni.

Dla przybliżenia problemu poniżej krótko omówiona zostanie struktura i algorytm działania sieci Kohonens. [2]. Sieć ta posiada wejścia binarne lub ciągłe, uczona jest bez nadzoru. Węzły wyjściowe ułożone są na płaszczyźnie, umożliwiając tworzenie tzw. map cech (rys.7). Każdy z nich połączony jest z wszystkimi wejściami. Sieci te wykorzystywane są jako kwantyzatory wektorów lub do tworzenia grup cech.

ALGORYTM K0H0NENA Krok 1.

Ustawienie początkowych wartości wag - zakłada się; że posiadają one niewielką wartość losową.

Krok 2.

Podanie wartości wejściowych neuronu.

Krok 3.

Obliczanie odległości dla wszystkich węzłów:

N-l 0

d-= Z [x.(t|-V8. .(t)]“

1 i = 0 1 1J

(6)

gdzie:

N - liczba wszj-stkich węzłów,

x^(t) - wejście do węzła j-tego w chwili t,

wa.j(t) - waga połączenia od i-tego węzła wejściowego do j-tego węzła wyjściowego w chwili t,

Krok 4.

Wybór węzła o najmniejszej odległości (j ).

Krok 5.

Zmiana wag połączeń wchodzących do węzła j -tego oraz sąsiednich węzłów, w a .

1J

. (t + 1 ) = w a .

1J

.(t>+n(t)*[x.(t) - w a . .

1 i J

(t } ],

dla j^NE ł oraz 0<=i<=N-l 3

g d z i e :

ntt) - współczynnik u z b i e z n i a j ą c y , 0< n(t) <1 malejący z czasem,

*

NE *(t) - sąsiedztwo węzła j -tego w chwili t.

j Krok 6.

Powrót do kroku 2.

r-j r-*n 1 _J n

i > ! □ p pi f—1 j

i

n

N E i ( 0)

! □ !

pj —>

j n 1 —• '

N E i f t i

)

r-i

1 i

G

N E i (to)

! □ !

1 —i

i—i__:

;

----\ 1 j* □

* j i Lj

i ! 1

1

p j j [ ! 1__1!--- 1 —

! — n

n

1__! ■ :

. .

R ys .7. Przykładowa mapa cech [3]

Fig. 7. Example of feature map f 3 j!

(7)

Wprowadzenie do sieci neuronowych 111

5 . Uczenie sieci [3]

Iteracyjny proces modyfikacji wag połączeń między węzłami sieci nazywamy uczeniem sieci neuronowej. W wyniku tego procesu zostanie wygenerowana optymalna struktura połączeń między węzłami.

Metody uczenia sieci można podzielić na dwie grupy:

- uczenie nienadzorowane (bez na uc zy c i e l a ) , - uczenie nadzorowane (z nauczycielem).

Opracowano szereg reguł uczenia sieci. Najbardziej znane reguły to:

- reguła Hebba, - reguła Delta, - reguła Grossberga,

- reguła Andersona-Kohonena, - reguła propagacji błędu wstecz.

Przykładowej jeżeli w czasie uczenia sieci dwa węzły mają wysoki poziom aktywacji, to waga ich połączenia w myśl reguły Hebba [1] powinna wzrosnąć o odpowiednią wartość.

deltawa. . = e * a k t .* a k t .

l j i J

g d z i e :

deltawa^j - waga połączenia węzłów i-tego i j-tego, e - współczynnik u z b i e Zn ia ją c y,

akt. - aktywacja węzła i-tego, aktj - aktywacja węzła j-tego,

Założenie: na początku uczenia sieci wszystkie wagi są zerowe oraz liczba serii uczących sieć wynosi L.

Po każdej serii uczącej wagi przyjmą' następujące wartości:

L

deltawajj = e» £ a k -ii * akt jl 1*1

Jeżeli przyjmiemy dalej, Ze węzły są liniowe, czyli:

N

akt, = £ akt. * wa. ., N - liczba wejść do węzła,

l j . j J

N

to wszystkie wagi opisane wzorem akt. = £ akt . * wa, . będą proporcjonalne

1 j*l J J

do korelacji między aktywacjami węzłów i-tego i j-tego. Zaletą tego jest fakt, Ze aktywne węzły będą zmierzać do pobudzenia innych węzłów, które były z nimi wcześniej skorelowane. Korelacja ta często nie wystarcza do nauczenia sieci nawet prostych podobieństw między aktywacjami neuronów.

O znacza to, że reguła Hebba nie zawsze potrafi znaleźć zadany zestaw wag, nawet wtedy, gdy taki istnieje. Jedną z wad tej reguły jest nieograniczony wzrost wartości wag przy wielokrotnym powtarzaniu procesu uczenia.

(8)

6. Podsumowanie

W pracy autor starał się przybliżyć złożoną problematykę sieci neuronowych. Jest to bardzo interesująca dyscyplina nauki. Umiejętne wykorzystanie wiedzy z tego zakresu umożliwiłoby rozwiązanie wielu ciekawych problemów z różnych dziedzin nauki. Obecnie są szeroko rozwijane systemy ekspertowe, w których można by spróbować wykorzystać sieci ne u ro no we .

1ITERATURA

[1] Hebb, D.O.: Organization of behavior. New York: Science Editions, 1961.

[2] Kohonen T.: Self-organization and associative memory. Series in Information Sciences, v ol .8. Berlin: Springer Verlag.

[3] Lippmann R.P.; An Introduction to Computing with Neural Nets.

IEEE ASSP 1987.

[4] Tarun Khanna; Foundations of neural networks, Addison-Wesley Publishing Company, 1990.

[5] Tadeusiewicz R.: Biocybernetyka, Ossolineum, PTC, PAN, 1988.

[6] Wasserroan P.D.: Neural Computing Theory and Practice, VNR, 1989.

Recenzent: Prof.dr h.inż. Andrzej Grzywak Wpłynęło do Redakcji do 30.04.1992 r.

Abstract:

This paper contains an introduction to the topic of neural networks.

Examples of practical use of neural network in technical problems are shown. Then, a mathematical model of a neuron and the structure of a neural network are described, as well as texanomy of pattern classifying networks.

Finally, the complexity of problems related to network structure and training procedures are illustrated by examples of the Kohonen network and the Hebbian learning rule.

Cytaty

Powiązane dokumenty

Narysowa´c rozk lady dyskryminanty dla sygna lu i t la.. Narysowa´c krzywa ‘ ROC dla wytrenowanej

Samoorganizacja w sieci neuronowej (np. SOM) umożliwiają uczenie sieci bez nauczyciela (unsupervised), którego celem jest wykształcenie w sieci neuronów, które by reagowały na

popełnianego przez sieć w trakcie procesu uczenia, ale może być także obserwowana za pomocą “mapy” pokazującej, jak wygląda działanie sieci dla różnych wartości.

Narysowa´c rozk lady dyskryminanty dla sygna lu i t la.. Narysowa´c krzywa ‘ ROC dla wytrenowanej

1.2.7 Algorytm uczenia perceptronu (Simple perceptron learning algorithm, SPLA).. Jest to podstawowy

podczas dynamiki osiągane jest minimum (być może lokalne!) funkcji energetycznej w skończonym czasie. Wykorzystamy dynamikę asynchroniczną sieci do znajdowania rozwiązania

Sieci rekurencyjne Autoasocjator Hopfielda Zadania Przeliczenia.. Wstęp do sieci neuronowych, wykład 10

podczas dynamiki osiągane jest minimum (być może lokalne!) funkcji energetycznej w skończonym czasie. Wykorzystamy dynamikę asynchroniczną sieci do znajdowania rozwiązania