next 4.7 Funkcionálne linky v NN
previous 4.6.1 BP-momentum
up 4.6 Spôsoby urýchlenia konvergencie BP
Obsah


4.6.2 Adaptívne parametre učenia NN

Použitie adaptívnych parametrov učenia pri BP predstavuje veľmi progresívny prístup k dosiahnutiu kvalitných výsledkov v skrátenom čase. Tieto parametre môžeme meniť podľa zvolenej stratégie. V ďalšom sú popísané dva prístupy umožňujúce adaptáciu parametrov učenia NN:


4.6.2.1 Delta-bar-Delta pravidlo

Toto pravidlo bolo navrhnuté so zámerom urýchlenia a skvalitnenia učebného procesu a je založené na 4 základných heuristických úvahách: Tu je nutné si uvedomiť, že už nemáme jeden parameter $\gamma$, ale máme $\gamma_{ij}$ pre každú konkrétnu synapsiu. Teda je tu snaha meniť učiaci parameter pri každej iterácii4.7 $t$. Takýto algoritmus sa nazýva delta-delta pravidlo, resp. jeho ďalšia modifikácia delta-bar-delta pravidlo. Kým predtým sme hovorili, že LSM využíva tzv. prístup postupného zostupu, tu LSM využíva hodnotenie momentálnej situácie na chybovom priestore v záujme urýchlenia konvergencie NN a zmenšenia chybovej funkcie siete. Odvodenie modifikácie BP učenia urobíme v 2 krokoch:
1.
odvodenie delta-delta pravidla - Tu opäť základom je chybová funkcia, ale z prísne matematického hľadiska by sme mali rozlišovať medzi $J(t)$, kde predpokladáme konštantné $\gamma$ a funkciou ${\cal J}(t)$, kde predpokladáme premenlivé $\gamma(t)$ resp. ${\cal J}(t)~=~fcia(w,\gamma)$, kým pôvodná $J(t)~=~fcia(w)$. V ďalšom budeme ${\cal J}(t)$ vyjadrovať pomocou $J(t)$. Matematické vyjadrenie ${\cal J}(t)$ a $J(t)$ je rovnaké, pri identickej výstupnej funkcii, teda
\begin{displaymath}
{\cal J}(t)~=~0.5~\sum_{j=1}^{N_{0}}(ev_{j}(t)~-~x_{j}(t))^{2}~=~
~0.5~\sum_{j=1}^{N_{0}}e_{j}^{2}(t)
\end{displaymath} (4.48)

kde $ev_{j}(t)$ a $x_{j}(t)$ sú očakávaná a vypočítaná hodnota výstupného neurónu v $t-$tej iterácii. Je nutné si pripomenúť, že
\begin{displaymath}
\Delta w_{ij}(t-1)~=~-\gamma \frac{\partial J(t-1)}{\partial
w_{ij}(t-1)}
\end{displaymath} (4.49)

Túto zmenu SV použijeme vo vzťahu
\begin{displaymath}
w_{ij}(t)~=~w_{ij}(t-1)~+~\Delta w_{ij}(t-1)
\end{displaymath} (4.50)

vzhľadom na to že $\gamma$ sa bude viazať ku konkrétnej SV, ale bude sa tiež meniť pre každú iteráciu. Teda ak počítame $\Delta w_{ij}(t)$, musíme uvažovať o $\gamma_{ij}(t)$, a tým dostaneme vzorec pre výpočet SV "ij" v iterácii "t" v tvare
\begin{displaymath}
w_{ij}(t)~=~w_{ij}(t-1)~-\gamma_{ij}(t)
\frac{\partial J(t-1)}{\partial w_{ij}(t-1)}
\end{displaymath} (4.51)

Súčasne platí, že
\begin{displaymath}
\gamma_{ij}(t)~=~\gamma_{ij}(t-1)~+~\Delta \gamma_{ij}(t)
\end{displaymath} (4.52)

Je potrebné si dobre uvedomiť indexy, ak porovnáme rovnice (4.50) a (4.52). Súčasne môžeme vstup do neurónu "i" vyjadriť
\begin{displaymath}
in_{i}(t)~=~\sum_{j=0}^{M} w_{ij}(t) x_{j}(t)~+~\theta_{i}
\end{displaymath} (4.53)

Na základe horeuvedených rovníc sme zistili, že
  • ${\cal J}(t)$ je funkciou $x_{i}(t)$
  • $x_{i}(t)$ je samozrejme funkciou vstupu $in_{i}(t)$
  • samotný vstup $in_{i}(t)$ je funkčne závislý cez SV na $\gamma_{ij}(t)$ cez $w_{ij}(t)$.
Tieto poznámky nám pomôžu pochopiť nasledujúcu rovnicu. Naším globálnym cieľom je nájsť vzťah zmeny $\gamma_{ij}$ v nejakej iterácii "t" v závislosti od minimalizácie chybovej funkcie ${\cal J}(t)$ teda môžeme písať :
\begin{displaymath}
\frac{\partial {\cal J}(t)}{\partial \gamma_{ij}(t)}~=~
\...
...race{\frac{\partial in_{i}(t)}{\partial \gamma_{ij}(t)}}_{~C}
\end{displaymath} (4.54)

Jednotlivé členy $A, B, C$ vo vzťahu (4.54) môžeme vypočítať nasledovne
  • člen A je zrejmý z rovnice (4.48) pre chybovú funkciu
    \begin{displaymath}
\frac{\partial {\cal J}(t)}{\partial x_{i}(t)}~=~-(ev_{i}~-~x_{i}(t))~=-~e_{i}(t)
\end{displaymath} (4.55)

  • člen B je zrejmý z definície aktivačnej funkcie teda
    \begin{displaymath}
\frac{\partial x_{i}(t)}{\partial in_{i}(t)}~=~f^{'}(in_{i}(t))
\end{displaymath} (4.56)

  • člen C ak do rovnice (4.53) dosadíme zrejmú rovnicu
    \begin{displaymath}
w_{ij}(t)~=~w_{ij}(t-1)+\Delta w_{ij}(t-1)
\end{displaymath} (4.57)

    dostaneme výraz pre pre $in_{i}(t)$
    \begin{displaymath}
in_{i}(t)~=~\sum_{j=1}^{M}
\underbrace{(w_{ij}(t-1)~-~\ga...
...1)}{\partial w_{ij}(t-1)})}_{w_{ij}(t)}
x_{j}(t)+~\theta_{i}
\end{displaymath} (4.58)

    keď predošlú rovnicu zderivujeme podľa $\gamma_{ij}(t)$, dostaneme
    \begin{displaymath}
\frac{\partial in_{i}(t)}{\partial \gamma_{ij}(t)}~=~
-x_{j}(t) \frac{\partial J(t-1)}{\partial w_{ij}(t-1)}
\end{displaymath} (4.59)

teda v konečnom dôsledku dostaneme
\begin{displaymath}
\frac{\partial {\cal J}(t)}{\partial \gamma_{ij}(t)}~=~
\u...
...e{-x_{j}(t) \frac{\partial J(t-1)}{\partial w_{ij}(t-1)}}_{C}
\end{displaymath} (4.60)

Teraz pomocou (4.34) môžeme vyjadriť
\begin{displaymath}
\frac{\partial J(t)}{\partial w_{ij}(t)}~=~\delta_{i}(t)x_{j}(t)
\end{displaymath} (4.61)

potom za $~\delta_{i}(t)$ môžeme dosadiť z (4.37) a skutočne dostaneme za $\frac{\partial J(t)}{\partial w_{ij}(t)}$ výrazy $A+B$ a teda
\begin{displaymath}
\frac{\partial {\cal J}(t)}{\partial \gamma_{ij}(t)}~=~
-\...
...tial w_{ij}(t)}
\frac{\partial J(t-1)}{\partial w_{ij}(t-1)}
\end{displaymath} (4.62)

a v konečnom dôsledku môžeme napísať pre zmenu $\gamma_{ij}(t)$ výraz
\begin{displaymath}
\Delta \gamma_{ij}(t)~=~-\varphi
\frac{\partial {\cal J}(...
...tial w_{ij}(t)}
\frac{\partial J(t-1)}{\partial w_{ij}(t-1)}
\end{displaymath} (4.63)

kde $\varphi$ predstavuje kladnú konštantu tzv. kontrolný parameter zmeny učiaceho parametra v jednotlivých iteráciach. Horeuvedený vzťah reprezentuje tzv. delta-delta D-DP pravidlo učenia NN. Po úvahe prichádzame k záveru, že D-DP splňuje HU3 a HU4. Problémy však nastávajú s presným určením hodnoty $\varphi$, čo predstavuje veľmi citlivý koeficient. Preto sa prikročilo k ďalšej modifikácii D-DP.
2.
ďalšia modifikácia D-DP vychádza z hore uvedeného a bola navrhnutá v  [7] v tvare pre zmenu $\gamma_{ij}(t)$ v tvare
\begin{displaymath}
\Delta \gamma_{ij}(t)~=~\left\{ \matrix{
\kappa & ak~S_{i...
..._{ij}(t) & ak~S_{ij}(t-1)D_{ij}(t) < 0\cr
0 & inak } \right.
\end{displaymath} (4.64)

kde $S$ a $D$ definujeme ako
\begin{displaymath}
S_{ij}(t-1)~=~(1-\zeta)D_{ij}(t-1)+\zeta S_{ij}(t-2)
\end{displaymath} (4.65)

a
\begin{displaymath}
D_{ij}(t)~=~\frac{\partial J(t)}{\partial w_{ij}(t)}
\end{displaymath} (4.66)

kde v rekurzívnom vzťahu pre $S$ uvažujeme $S_{ij}(0)~=~0$ . Horeuvedené vzťahy považujeme za delta-bar-delta pravidlo učenia. Podobnosť D-bar-DP s D-DP je vyjadrené vo vzťahu (4.64), kde vlastne ovplyvňujeme výpočet $\Delta \gamma_{ij}(t)$ iteráciou $t$ a $t-1$. Súčasne sa naplňujú požiadavky HU1 a HU2, pretože každý prípad vo vzťahu (4.64) má svoj vlastný koeficient $\kappa$ a $\beta$. Je zrejmé, že celý proces adaptácie samotného $\gamma$ začne v $t=2$. Vzhľadom na dosť komplikovaný výpočet je nutné uvažovať o zmene iteračného prístupu. Kým v obyčajnom BP za iteráciu považujeme každý vstup a stále po ňom urobíme zmeny $\Delta w_{ij}$ v NN, teraz pod iteráciou budeme rozumieť epochu $B,B~>~0$-vstupov do NN a až potom urobíme zmenu SV. Tomuto prístupu hovoríme dávkové učenie ( Batch learning). Potom
\begin{displaymath}
\frac{\partial J(t)}{\partial w_{ij}(t)}~=~-
\sum_{k=1}^{B} \delta_{i}^{k}(t) x_{j}^{k}(t)~=~D_{ij}(t)
\end{displaymath} (4.67)

a teda zmena SV potom bude mať tvar
\begin{displaymath}
\Delta w_{ij}(t)~=~\alpha \Delta w_{ij}(t-1)~+~\gamma_{ij}(t)
\sum_{k=1}^{B} \delta_{i}^{k}(t) x_{j}^{k}(t)
\end{displaymath} (4.68)

a nová hodnota SV bude vypočítana podľa obvyklého vzťahu
\begin{displaymath}
w_{ij}(t+1)~=~w_{ij}(t)~+~\Delta w_{ij}(t)
\end{displaymath} (4.69)

Na záver pripomíname, že pre praktický výpočet musíme pre každú $w_{ij}(t)$ najprv vypočítať príslušný parameter $\gamma_{ij}(t)$. Je nutné poznamenať, že jednotlivé derivácie na konci vzťahu (4.63) sú v každom prípade spočítavané aj pri klasickom BP. Teda tu ide iba o výpočet novej hodnoty $\gamma_{ij}$ z jednotlivých derivácií, ktoré tak či tak by sme v klasickom prístupe BP vypočítali. Z toho vyplýva, že z výpočtového hľadiska nejde o výpočtové úkony naviac. Negatívom však je, že pre modifikovaný BP-prístup založený na D-bar-DP máme až 5 parametrov a to
  • $\gamma_{ij}(0)$ - štartovacie $\gamma$
  • koeficient $\alpha$ pre výpočet $\Delta w_{ij}(t)$
  • koeficienty $\kappa$, $\beta$, $\zeta$ pre výpočet $\Delta \gamma_{ij}(t)$
Tento fakt sťažuje použitie tejto metódy, hoci na druhej strane predstavuje systém, ktorý je možné voľnejšie riadiť.

4.6.2.2 Adaptácia parametrov učenia NN pomocou fuzzy logiky

Fuzzy logika sa interaguje s NN v troch základných oblastiach: Z doteraz uvedeného by malo byť zrejmé, že proces učenia NN je najdôležitejším problémom v činnosti NN. Zvýšenie jeho efektivity pre dosiahnutie GS NN je cieľom mnohých metód na dosiahnutie konvergencie NN. V tejto časti je popísaný prístup  [17], ktorý bol experimentálne overený. Fuzy logika dnes už prestavuje samostatný vedný odbor a poskytla vhodné matematické prostriedky na prácu s lingvistickými premennými. Veľmi vhodnou publikáciou popisujúcou fuzzy množiny je  [12]. Majme množinu U,A a množinu L.Nech ${\cal A} \in {\cal U}$. Potom definujme funkciu $\mu$ a to nasledovne

\begin{displaymath}\mu~:~{\cal A} \in {\cal
U}~\to~{\cal L} \end{displaymath}

kde L je možina definovaná na celom intervale $<0,1>$. Potom funkciu $\mu$ nazývame funkciou príslušnosti fuzzy množiny A , ktorá každému prvku z množiny A priradí hodnotu z množiny L. Ak $\mu_{{\cal A}}(x)~=~0$ tak $x \not\in A$ a naopak ak $\mu_{{\cal A}}(x)~=~1$ tak určite platí,že $x \in A$. K tomu, aby sme zvládli túto časť, pripomeňme si základné operácie na fuzzy množinách, ktoré budeme využívať a to zjednotenie a prienik dvoch fuzzy množín A,B. Tieto operácie definujeme nasledovne: Teraz, keď sa vrátime k našej chybovej funkcii ${\cal J}(t)$, chceme na základe nej modifikovať $\gamma$. Teda ide o niečo podobné ako v prípade D-Bar-DP, len tu to realizujeme pomocou fuzzy logiky. Celý postup bol overený v  [17] pre riadenie metódy BP. Pre riadenie celého procesu boli zadefinované nasledovné koeficienty: Spomínaný koeficient $\xi(t)$ bude vlastne výsledkom snaženia celého procesu adaptácie v kroku $t$. Úvahy, ako vlastne použiť spomínané koeficienty, sú podporené nasledovnými tvrdeniami: K spomínanému riadeniu adaptácie $\gamma(t)$ je nutné, aby boli známe funkcie príslušnosti $CE(t)$ a $QCE(t)$ pre určenie hľadaného $\xi(t)$, ktorý použijeme pre výpočet novej hodnoty $\gamma (t+1)$. (viď grafy pre $CE(t)$ , $QCE(t)$ a $\xi(t)$) Tieto koeficienty mali definované nasledovné lingvistické premenné: Samotná rozhodovacie tabuľka vyzerá nasledovne:
  QCE
CE malé stredné veľké veľmi veľké
veľmi malé malé malé stredné veľké
malé malé stredné stredné veľké
stredné malé stredné stredné veľké
veľké malé stredné veľké veľké
veľmi veľké malé stredné veľké veľké

Výsledné hodnoty $\xi(t)$ sú v tabuľke, t.j. ak $CE(t)~=~stredné$ a $QCE(t)~=~veľmi~veľké$, potom hľadané $\xi(t)$ bude veľké. Potom podľa grafu určíme presnú hodnotu $\xi(t)$.

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