.Jk:
miśm
gdzie: ym = cp« *, + w2 x2 + 0).
(W-l) £<W-t) Jl >U1
w
1(W>
w,
warstwa
przedostatnia
w
1(W)
wf^
Z — (Zj, Zj)
warstwa
ostatnia
Rys. Z.2.7.Fragment wielowarstwowej sieci neuronowej
Z — wektor żądanych wartości na wyjściu sieci; W — liczba warstw sieci; — błąd i-tego neuronu w warstwie k = 1 ... W
Uczenie sieci wielowarstwowej przebiega w.sposób podobny do przedsUl wionego dla sieci jednowarstwowej. Jedyny problem polega nabraku możliwa ści wyznaczenia błędu dla warstw ukrytych, ponieważ w ciągu uczącym nic mn informacji określających żądane wartości (zm) na wyjściu tych warstw. Brak możliwości wyznaczenia zm w (Z.2.17) uniemożliwia wyznaczenie wartości
5m w (Z.2.17), która jest niezbędna do wyznaczenia poprawki A w”1 w (Z.2.16):
(£2.17)
Cm
Jedną z propozycji wyznaczenia wartości 5m dla warstwy przedostatniej jest
jego uzależnienie od błędów na wyjściu sieci. Zasadę tę przedstawia rysunek
Z.2.7.
Wartości oraz można wyznaczyć wykorzystując ciąg uczący U oraz
znane zależności na wyznaczenie §. Pomysł wyznaczenia błędu dla warstw ukrytych polega na wstecznej propagacji błędu z warstw poprzedzających, co pokazuje poniższa zależność dla pierwszego neuronu w przedostatniej warstwie:
Jest to ważona suma błędów neuronów1, do których dochodzi sygnał z rozpatrywanego neuronu. Korzystając z takiej zależności, można wyznaczyć błędy dla wszystkich neuronów warstwy przedostatniej, co umożliwia korektę wartości ich wag. Następnie powyższe czynności powtarza się dla wcześniejszych warstw, aż do zakończenia modyfikacji wszystkich wartości wag neuronów całej sieci. Często sieci wielowarstwowe nazywa się sieciami ze wsteczną propagacją błędu (ang. back propagation), co wynika z metody wyznaczania błędu sieci.
73
Współczynnikami są wartości wag neuronów pośredniczących w propagacji błędu.