next 4.5 Time-delay na FF NN
previous 4.3 Delta pravidlo
up 4. Kontrolované učenie na FF NN
Obsah


4.4 Metóda spätného šírenia chyby

V predošlej časti matematicky odvodené DP vlastne predstavuje základ učenia so spätným šírením chyby4.5 a umožňuje použitie v podstate ľubovoľnej aktivačnej funkcie $f$ aj nelineárneho typu, ktorá splňuje podmienku diferencovateľnosti, t.j. platí
\begin{displaymath}
x~=~f({in})~\neq~in
\end{displaymath} (4.26)

Ide teda znova o určovanie zmeny SV pre NN s nelineárnymi neurónmi. Postup bude analogický ako pri základnom DP, avšak o funkcii $f$ predpokládame, že nie je lineárna a je diferencovateľná. Teda opäť stav neurónu "i" pri ľubovoľnom vstupe do NN má tvar
\begin{displaymath}
x_{i}(t)~=~f(in_{i}(t)) ,
\end{displaymath} (4.27)

kde
\begin{displaymath}
in_{i}(t)~=~\sum_{j=1}^{M} w_{ij}(t) x_{j}(t)~+~\theta_{i} .
\end{displaymath} (4.28)

Z predchádzajúceho DP vieme, že
\begin{displaymath}
\Delta w_{ij}(t)~=~-\gamma \frac{\partial J(t)}{\partial w_{ij}(t)}.
\end{displaymath} (4.29)

$J(t)$ má tvar
\begin{displaymath}
J(t)~=~0.5~\sum_{j=1}^{N_{0}} (ev_{i}(t)-x_{i}(t))^{2},
\end{displaymath} (4.30)

kde $N_{0}$ je počet neurónov vo výstupnej vrstve NN. Samotný výpočet parciálnej derivácie chybovej funkcie podľa príslušnej SV má tvar
\begin{displaymath}
\frac{\partial J(t)}{\partial w_{ij}(t)}~=~\frac{\partial J...
...tial in_{i}(t)} \frac{\partial in_{i}(t)}{\partial w_{ij}(t)}
\end{displaymath} (4.31)

Označme
\begin{displaymath}
\frac{\partial J(t)}{\partial in_{i}(t)}~=~-\delta_{i}(t)
\end{displaymath} (4.32)

a
\begin{displaymath}
\frac{\partial in_{i}(t)}{\partial w_{ij}(t)}~=~x_{j}(t),
\end{displaymath} (4.33)

potom dostaneme obvykly zápis výpočtu zmeny SV v tvare
\begin{displaymath}
\Delta w_{ij}(t)~=~\gamma \delta_{i}(t) x_{j}(t)
\end{displaymath} (4.34)

Základným problémom je teraz stanovenie príslušného $\delta_{i}$ pre každý neurón NN. Vedie to k jednoduchému rekurzívnemu vzťahu pre výpočet jednotlivých $\delta_{i}$, ktoré predstavujú spätné šírenie chyby smerom od výstupu NN. Pre príslušné $\delta_{i}(t)$ môžeme ďalej písať na základe (4.32)
\begin{displaymath}
\delta_{i}(t)~=~-\frac{\partial J(t)}{\partial in_{i}(t)}~...
...rtial x_{i}(t)}
\frac{\partial x_{i}(t)}{\partial in_{i}(t)}
\end{displaymath} (4.35)

Najprv vyriešme druhý člen pravej strany (4.35). Vzhľadom na nelineárny neurón je zrejmé, že môžeme napísať pomocou (4.27),že
\begin{displaymath}
\frac{\partial x_{i}(t)}{\partial in_{i}(t)}~=~f^{'}(in_{i}(t))
\end{displaymath} (4.36)

Obrázok 4.3: Zobrazenie toku chybového signálu z výstupu pre "i"-ty neurón
\begin{figure}
\begin{center}
\epsfig {file=img/43.ps}
\end{center}
\end{figure}

Pre výpočet prvého člena z rovnice musíme uvažovať dva rôzne prípady :

previous next up
CIG Homepage(E-mail us!)