35
Rozdział 3. Liniowe sieci neuronowe
albo prościej
gdzie A jest pewną ustaloną stalą (zwykle 0,1 < A < 1). W praktyce jednak najczęściej rezygnuje się z tych subtelności i arbitralnie przyjmuje się pewną ustaloną wartość »/, niezależną od numeru kroku j. Pamiętać tylko trzeba, że wybór zbyt wielkiego kroku A w grozi tym, że „przeskoczymy” właściwe rozwiązanie i proces uczenia nie będzie zbieżny, natomiast zbyt małe i) prowadzi do bardzo wolnego (nieefektywnego) procesu uczenia. Zwyczajowo przyjmuje się ry = 0,6 i obserwując proces uczenia sieci, ustala się, czy wartość ta może być utrzymana przez czas dłuższy, czy też powinna być zmniejszona.
Powróćmy jednak do analizy procesu uczenia jako gradientowej minimalizacji funkcji kryterialnej (funkcji błędu). Rozpisując wzór gradientowego uczenia dla kroku j, otrzymujemy:
du>i
Ji+1)
Ji)
= A w\j) = -i}
Uwzględniając fakt, że Q zależne jest. od y, a dopiero y jest funkcją wektora wag W, możemy zapisać wzór, odpowiadający pochodnej funkcji złożonej:
0Q(j] _ 0QU' ()>/)> ć)w{ drf*) dtt>i
Na podstawie zależności = A(*Wł _ j/i))2 natychmiast można ustalić, że
= - (20‘)_ j/; >) _ _ s01
natomiast liniowa funkcja wiążąca sygnał wyjściowy z wektorem u»aęW^’ powoduje, że oczy wście
ty*' «)
dwi *
Zbierając wszystkie przedstawione wyniki razem, uzyskuje się potrzebną formule uczenia neuronu typu ADALINE:
co potwierdza jej poprawność. Ponieważ funkcja jakości Q jest unimodalna (jest to pa-raboloida eliptyczna z jednym tylko dobrze określonym minimum) — proces uczenia jest zbieżny i pozwala wyznaczyć potrzebny wektor wag W*, zapewniający dokładną realizację przez neuron wymaganej funkcji y = /(X), jeśli jest. to funkcja liniowa lub gwarantujący optymalną (w sensie minimum błędu średniokwadratowego) aproksymację tej funkcji, jeśli jest ona nieliniowa.
W sposób analogiczny do wyżej opisanego algorytmu uczenia pojedynczego neuronu można uczyć także całą sieć elementów liniowych.