19.01.2015 Views

Poznawanie własności sieci neuronowych w środowisku MATLAB

Poznawanie własności sieci neuronowych w środowisku MATLAB

Poznawanie własności sieci neuronowych w środowisku MATLAB

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

40 Rozdział 3. Sieci dwuwarstwowe MLP<br />

na poprawkę dowolnego neuronu <strong>sieci</strong>, Czytelnik powinien zauważyć w nim część<br />

odpowiadającą błędowi tego neuronu.<br />

Oszacowanie błędu k-tego neuronu w pierwszej warstwie <strong>sieci</strong> d (1)<br />

k<br />

, zapisane<br />

wcześniej przybliżonym wzorem (3.2), można teraz uściślić uzupełniając odpowiednimi<br />

pochodnymi funkcji celu:<br />

d (1)<br />

k<br />

=<br />

=<br />

K 2 ∑<br />

k 2 =1<br />

K 2 ∑<br />

k 2 =1<br />

w (2)<br />

k 2 ,k · d(2) k 2 · f ′ ( u (2)<br />

k 2<br />

)<br />

= (3.11)<br />

w (2)<br />

k 2 ,k · e(2) k 2<br />

Powyższy przykład pokazał prostotę i piękno teorii uczenia <strong>sieci</strong> <strong>neuronowych</strong>.<br />

Wyprowadzone z początku intuicyjnie wzory – zarówno wzór na poprawkę wag<br />

dowolnego neuronu, jak i wzór na oszacowanie błędu neuronu warstwy ukrytej –<br />

znalazły potwierdzenie w skomplikowanej teorii optymalizacji leżącej u podstaw<br />

uczenia <strong>sieci</strong>.<br />

Schematyczny zapis fazy backpropagation pojedynczego kroku uczenia możemy<br />

teraz przedstawić jak na rys. 3.8.<br />

X S1<br />

1<br />

<br />

1<br />

X S+11<br />

W<br />

1<br />

S+1K<br />

1<br />

dW SK<br />

1<br />

1<br />

1<br />

U K 1<br />

1<br />

1<br />

E K 1<br />

1<br />

f <br />

f<br />

'<br />

1<br />

1<br />

1<br />

<br />

Y K 1<br />

1<br />

D K 1<br />

1<br />

2<br />

2<br />

W<br />

X K <br />

1<br />

BP<br />

K1 K2<br />

2<br />

dW K +1 K<br />

1 2<br />

2<br />

U K 1<br />

E<br />

2<br />

2<br />

K21<br />

f <br />

Rysunek 3.8. Pojedynczy krok uczenia <strong>sieci</strong> dwuwarstwowej - schemat dokładny<br />

f<br />

'<br />

2<br />

Y K 1<br />

2<br />

2<br />

D K 1<br />

2<br />

Szkielet funkcji uczącej sieć dwuwarstwową w pełnej wersji można zaś uzupełnić<br />

do następującej postaci:<br />

function [ W1po , W2po ] = ucz2 ( W1przed , W2przed , P , T , n )<br />

% funkcja uczy sieć dwuwarstwową na podanym ciągu uczącym (P,T)<br />

% przez zadaną liczbę epok (n)<br />

% wersja dokładna<br />

% ...<br />

liczbaPrzykladow = ...<br />

wierW2 = ... % liczba wierszy macierzy W2<br />

W1 = W1przed ;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!