61
Rozdział 4. Nieliniowe sieci neuronowe
Na samym początku wyznacza się zatem poprawki dla neuronów stanowiących wyjściową warstwę sieci (m € 9Jty). Tu sprawa jest prosta, ponieważ dla poszczególnych sygnałów istnieją w ciągu uczącym wzorcowe (oczekiwane) wartości z*[\ z którymi można je porównywać, wyznaczając bezpośrednio błąd Zakładamy przy tym dla prostoty, że numeracja składowych wektora wzorców Z(j )jesl identyczna z numeracją neuronów tworzących wyjściową wastwę sieci (tylko przy zachowaniu tego warunku m wj/m i m w Zm* mogą być utożsamiane!). Wówczas
gdzie dła m 6
{,<» - ZU)_ „O) ł m “m •
Wzór ten dla m € 9J?y oraz dla ^(c) w postaci funkcji logistycznej zapisany może być w postaci dogodnej do praktycznych obliczeń.
Na razie wprowadzane wzory nie wnoszą istotnej nowości; ich zapis jest. trochę bardziej złożony (przez konieczność uwzględniania numerów m), jednak icłi ogólna struktura jest identyczna z wcześniej wprowadzonymi wzorami opisującymi proces uczenia dla pojedynczego neuronu. Jednak z chwilą skoncentrowania uwagi na neuronach warstw ukrytych sytuacja się zmienia. Można bowiem przez analogię zapisać także dla tych neuronów regułę
jednak dla m £ VJlu nie ma możliwości bezpośredniego określenia wartości Rozważmy jednak zbiór Zgodnie z wprowadzonymi oznaczeniami jest to zbiór neuronów, do
których dociera sygnał j/m1 czyli sygnał wyjściowy z rozważanego neuronu warstwy ukrytej. Załóżmy na chwilę, że Mo C My, to znaczy załóżmy, że rozważany neuron należy wprawdzie do warstwy ukrytej, ale jego sygnał wyjściowy dociera wyłącznie do neuronów warstwy wyjściowej, czyli tych, dla których wartości błędów mogą być bez trudu określone. Przy tym założeniu można wykazać [Rume86], że błąd ó!,J,> neuronu warstwy ukrytej może być obliczony poprzez wsteczne rzutowanie (czyli barlpropagalion) błędów wykrytych w warstwie odbierającej sygnały:
Warto zwrócić uwagę na współczynniki wagowe, wykorzystywane przy wstecznym rzutowaniu błędów. Czynnik należy rozumieć jako wagę występującą w neuronie o numerze
k przy jego wejściu numerze m, czyli odbierającym sygnał od aktualnie rozważanego neuronu. Oznacza to, źe rzutowane wstecznie błędy mnożone są przez te same współczynniki, przez które mnożone były przesyłane sygnały, tyle tylko, że kierunek przesyłania informacji zostaje w tym wypadku odwrócony: zamiast od wejścia do wyjścia przesyła się je od wyjścia kolejno w kierunku wejścia.
•Stosując opisaną wyżej technikę wstecznej propagacji błędów można nauczyć całą sieć, ponieważ każdy neuron warstwy ukrytej albo znajduje się w przedostatniej warstwie sieci