Contoh Perhitungan Multi Layer Neural Network

Diketahui Multi Layer Neural Network sebagai berikut :


Lakukan proses perhitungan dengan backpropagation untuk iterasi ke-1, dengan asumsi data yang diketahui adalah :

a.  $ x_1 $ dan $  x_2 = 1 $  dan  Target  $Y_d = 0 $
b. $w_13 = 0.5, \ w_14=0.9, \ w_23=0.4, \ w_35=-1.2, \  w_45=1.1,  \theta_3=0.8, \ \theta_4=-0.1, \  \theta_5=0.3  $
c. Fungsi Aktivasi yang digunakan adalah Sigmoid
d. Learning rate  $ \alpha = 0.1 $


Jawab :

I. INITIALIZATION

Pemberian nilai awal yang diketahui. Semua nilai yang diketahui sudah ada pada soal di atas.


II. ACTIVATION

Fungsi yang dipilih adalah SIGMOID, perhatikan gambar berikut :



sehingga di ketahui bahwa nilai output untuk fungsi Sigmoid adalah  $ Y^{sigmoid} = \frac{1}{1+e^{-x}}  $
Setelah rumus fungsi yang digunakan diketahui, maka dilakukan perhitungan selanjutnya :

Menghitung Output Aktual pada Hidden Layer
  • $ Y_j (p) = FA \ \Large[ $  $ \displaystyle \sum_{j=1}^n x_i w_{ij} (p) - \theta_j $ $  \large]  $  dimana pada kasus ini  $ i=1,2  $ dan $ j=3,4 $  maka rumusnya menjadi :
  • $ Y_3 (p) = sigmoid \ \Large[ $  $ \displaystyle \  x_1 w_{13} (p) \ + \ x_2 w_{23} - \theta_3 \ $  $  \Large]  $  
    • $ \ = sigmoid \ \Large[ $  $ \displaystyle \  1 \times  0.5  \ + \ 1 \times  0.4 - 0.8 \ $ $  \Large]  $  
    • $ \ = sigmoid \ \Large[ $  $ \displaystyle \  0.5  \ + \  0.4 - 0.8 \ $ $  \large]  $  
    • $ \ = sigmoid \Large[ $  $ 0.1 $  $  \Large]  $   
    • $ \ = \frac{1}{1 \ + \ e^{-0.1}} $ = $ 0.5250  $
  • Jadi di dapat $ Y_3 (p) = 0.5250 $
  • $ Y_4 (p) = sigmoid \ \Large[ $  $ \displaystyle \  x_1 w_{14} (p) \ + \ x_2 w_{24} - \theta_4 \ $  $  \Large]  $  
    • $ \ = sigmoid \ \Large[ $  $ \displaystyle \  1 \times  0.9  \ + \ 1 \times  1.0 - (-0.1) \ $ $  \Large]  $  
    • $ \ = sigmoid \ \Large[ $  $ \displaystyle \  0.9  \ + \  1  - (-0.1) \ $ $  \large]  $  
    • $ \ = sigmoid \Large[ $  $ 2.0 $  $  \Large]  $   
    • $ \ = \frac{1}{1 \ + \ e^{-2.0}} $ = $ 0.8808  $
  • Jadi di dapat $ Y_4 (p) = 0.8808 $


Menghitung Output Aktual pada Output Layer 

    • $ Y_k (p) = FA \ \Large[ $  $ \displaystyle \sum_{j=1}^n Y_j  w_{jk}  - \theta_k $ $  \large]  $  dimana pada kasus ini  $ j=3,4  $ dan $ k=5 $  maka rumusnya menjadi :
    • $ Y_5 (p) = sigmoid \ \Large[ $  $ \displaystyle \  Y_3  w_{35}  \ + \ Y_4 w_{45} - \theta_5 \ $  $  \Large]  $  
      • $ \ = sigmoid \ \Large[ $  $ \displaystyle \  0.5250  \times  (-1.2)  \ + \ 0.8808 \times  1.1 - 0.3 \ $ $  \Large]  $  
      • $ \ = sigmoid \ \Large[ $  $ \displaystyle \  -0.63  \ + \  0.9689 - 0.3 \ $ $  \large]  $  
      • $ \ = sigmoid \Large[ $  $ 0.0389 $  $  \Large]  $   
      • $ \ = \frac{1}{1 \ + \ e^{-0.0389}} $ = $ 0.5097  $
    • Jadi di dapat $ Y_5 (p) = 0.5097 $

    III. WEIGHT TRAINING

    a. Menghitung Error Gradient  pada Output Layer

    $ \delta_k (p) \ = \ Y_k (p) \times [  1 - Y_k (p)  ] \times e_k (p) $   

    dimana            $ e_k (p) = target - aktivasi $       
    dalam hal ini   $ e_5 (p) = Y_d - Y_5 (p) $    $ e_5 = 0 - 0.5097  = -0.5097  $ 

    sehingga ;

    $ \delta_5 (p) \ = \ Y_5 (p) \times [  1 - Y_5 (p)  ] \times e_5 (p) $
    $  \ \ \ \ \ \ \ \ \  \ = \ 0.5097  \times [  1 -  0.5097  ] \times (-0.5097) $
    $  \ \ \ \ \ \ \ \ \  \ = \ -0.1274 $
    $ \delta_5 (p) \ = \ -0.1274 $


    b. Meng-update bobot Hidden Layer ke Output Layer

    $  \Delta w_{jk} (p) = \alpha \times  Y_j (p) \times \delta_k (p) $
    $  w_{jk} (p+1) = w_{jk} (p) + \Delta w_{jk} (p)  $

    maka ;

    $  \Delta w_{35} (p) = \alpha \times  Y_3 (p) \times \delta_5 (p) $
    $          \ \ \ \ \ \ \  =  0.1   \times  0.5250 \times (-0.1274) $
    $          \ \ \ \ \ \ \  =  -0.0069 $

    $  w_{35} (p+1) = w_{35} (p) + \Delta w_{35} (p)  $
    $  \ \ \ \ \ \ \  = -1.2 + (-0.0069)  $
    $  \ \ \ \ \ \ \  =  -1.2069  $


    dan

    $  \Delta w_{45} (p) = \alpha \times  Y_4 (p) \times \delta_5 (p) $
    $          \ \ \ \ \ \ \  =  0.1   \times  0.8808 \times (-0.1274) $
    $          \ \ \ \ \ \ \  =  -0.01122 $

    $  w_{35} (p+1) = w_{45} (p) + \Delta w_{45} (p)  $
    $  \ \ \ \ \ \ \  = 1.1 + (-0.01122)  $
    $  \ \ \ \ \ \ \  =  1.0888  $


    c. Menghitung Error Gradient pada Hidden Layer

    $ \delta_j (p) \ = \ Y_j (p) \times [  1 - Y_j (p)  ] \times \displaystyle \sum_{k=1}^m  \delta_k (p) \times w_{jk} (p) $

    untuk j=3

    $ \delta_3 (p) \ = \ Y_3 (p) \times [  1 - Y_3 (p)  ] \times  \delta_5 (p) \times w_{35} (p) $
    $ \ \ \ \ \ \ \ \ = \ 0.5250  \times [  1 - 0.5250  ] \times  (-0.1274) \times (-1.2)  $
    $ \ \ \ \ \ \ \ \ = \ 0.5250  \times 0.4750 \times  (-0.1274) \times (-1.2)  $
    $ \ \ \ \ \ \ \ \ = \ 0.038124  $

    untuk j=4

    $ \delta_4 (p) \ = \ Y_4 (p) \times [  1 - Y_4 (p)  ] \times  \delta_5 (p) \times w_{45} (p) $
    $ \ \ \ \ \ \ \ \ = \ 0.8808  \times [  1 - 0.8808  ] \times  (-0.1274) \times (1.1)  $
    $ \ \ \ \ \ \ \ \ = \ 0.8808  \times 0.1192 \times  (-0.1274) \times (1.1)  $
    $ \ \ \ \ \ \ \ \ = \ -0.01471  $


    d. Meng-update bobot Input Layer ke Hidden Layer

    $  \Delta w_{ij} (p) = \alpha \times  w_{ij} (p) \times \delta_j (p) $
    $  w_{ij} (p+1) = w_{ij} (p) + \Delta w_{ij} (p)  $

    $  \Delta w_{13} (p) = \alpha \times  x_1 (p) \times \delta_3 (p) $
    $ \ \ \ \ \ \ \ \ = \ 0.1  \times 1  \times  0.0381  $
    $ \ \ \ \ \ \ \ \ = \  0.00381  $

    $  w_{13} (p+1) = w_{13} (p) + \Delta w_{13} (p)  $
    $  \ \ \ \ \ \ \ \  =  0.5  + 0.00381 (p)  $
    $  \ \ \ \ \ \ \ \  =  0.50381 (p)  $


    $  \Delta w_{23} (p) = \alpha \times  x_2 (p) \times \delta_3 (p) $
    $ \ \ \ \ \ \ \ \ = \ 0.1  \times 1  \times  0.0381  $
    $ \ \ \ \ \ \ \ \ = \  0.00381  $

    $  w_{23} (p+1) = w_{23} (p) + \Delta w_{23} (p)  $
    $  \ \ \ \ \ \ \ \  =  0.4  + 0.00381 (p)  $
    $  \ \ \ \ \ \ \ \  =  0.40381 (p)  $

    $  \Delta w_{14} (p) = \alpha \times  x_1 (p) \times \delta_4 (p) $
    $ \ \ \ \ \ \ \ \ = \ 0.1  \times 1  \times  (-0.0147)  $
    $ \ \ \ \ \ \ \ \ = \  -0.0015  $

    $  w_{14} (p+1) = w_{14} (p) + \Delta w_{14} (p)  $
    $  \ \ \ \ \ \ \ \  =  0.9  + -0.0015 (p)  $
    $  \ \ \ \ \ \ \ \  =  0.8985 (p)  $


    $  \Delta w_{24} (p) = \alpha \times  x_2 (p) \times \delta_4 (p) $
    $ \ \ \ \ \ \ \ \ = \ 0.1  \times 1  \times  (-0.0147)  $
    $ \ \ \ \ \ \ \ \ = \  -0.0015  $

    $  w_{24} (p+1) = w_{24} (p) + \Delta w_{24} (p)  $
    $  \ \ \ \ \ \ \ \  =  1.0  + (-0.0015) (p)  $
    $  \ \ \ \ \ \ \ \  =  0.9985 (p)  $

    Agar mendapat Nilai Output sesuai target (Yd = 0), dilakukan iterasi berikutnya, yaitu (p+2), (p+3), .....

    Perhitungan akan lebih cepat apabila dilakukan perhitungan menggunakan program komputer.


    Link download MATLAB 6.5

    Tulisan ini menampilkan perhitungan pada contoh soal dalam buku teks :

    Michael Negnevitsky, Artificial Intelligence, A Guide To Intelligence Systems, 2nd Ed, 2004

    Komentar