2.3.3 Algoritme Pelatihan Backpropagation
Pelatihan backpropagation meliputi 3 fase. Fase pertama adalah fase maju. Pola masukan dihitung maju mulai dari lapisan masukan hingga lapisan keluaran
menggunakan fungsi aktivasi yang ditentukan. Fase kedua adalah fase mundur. Selisih antara keluaran jaringan dengan target yang diinginkan merupakan
kesalahan yang terjadi. Kesalahan tersebut dipropagasikan mundur, dimulai dari garis yang berhubungan langsung dengan unit-unit di lapisan keluaran. Fase
ketiga adalah modifikasi bobot untuk menurunkan kesalahan yang terjadi. Contoh struktur jaringan saraf tiruan yang akan digunakan pada algoritme ini dapat dilihat
pada Lampiran 1. Algoritme pelatihan backpropagation adalah sebagai berikut:
Langkah 0. Inisialisasi bobot biasanya digunakan nilai acak yang kecil
Langkah 1. Selama syarat henti salah, lakukan langkah 2-9
Langkah 2. Untuk setiap pasangan pelatihan masukan dan target, lakukan 3-8
Fase 1 : Propagasi maju. Langkah 3.
Setiap unit masukan X
i
,i=1,...,n menerima sinyal masukan x
i
dan meneruskannya ke seluruh unit pada lapisan di atasnya hidden
units. Langkah 4.
Setiap unit tersembunyi Z
j
,j=1,...,p menghitung total sinyal masukan terboboti
n i
ij i
j j
v x
v in
z
1
_
6 lalu menghitung sinyal keluarannya dengan fungsi aktivasi
_
j j
in z
f z
7 dan mengirimkan sinyal ini ke seluruh unit pada lapisan di atasnya
lapisan output Langkah 5.
Setiap unit output Y
k
,k=1,...,m menghitung total sinyal masukan terboboti
p i
jk j
k k
w x
w in
y
1
_
8 Lalu menghitung sinyal keluaran dengan fungsi aktivasi
_
k k
in y
f y
9
Fase 2: Propagasi mundur Langkah 6.
Setiap unit output Y
k
,k=1,...,m menerima sebuah pola target yang sesuai dengan pola masukan pelatihannya. Unit tersebut
menghitung informasi kesalahan _
k k
k
in y
f y
t
Kemudian menghitung koreksi bobot digunakan untuk mengubah w
jk
nanti,
j k
jk
z w
dan menghitung koreksi bias
k k
w
serta mengirimkan nilai
k
ke unit lapisan di bawahnya Langkah 7.
Setiap unit tersembunyi Z
j
,j=1,...,p menghitung selisih input dari unit-unit pada layer diatasnya
m k
jk k
j
w in
1
_
10 lalu mengalikannya dengan turunan fungsi aktivasi untuk
menghitung informasi error.
__ _
j j
j
in z
f in
11 selanjutnya menghitung koreksi bobot untuk mengubah v
ij
sebesar
i j
ij
x v
12 dan menghitung koreksi biasnya
j j
v
Fase 3: Perubahan bobot. Langkah 8.
Setiap unit output Y
k
,k=1,...,m diubah bias dan bobot-bobotnya j=0,...,p :
jk jk
jk
w old
w new
w
13 setiap unit tersembunyi Z
j
,j=1,...,p diubah bias dan bobot- bobotnya i=1,...,n :
ij ij
ij
v old
v new
v
14 Langkah 9.
Uji syarat henti : Jika besar total squared-error
n k
k k
y t
1 2
lebih kecil dari toleransi yang telah ditentukan atau jumlah epoh pelatihan sudah
mencapai epoh maksimum, maka selesai; jika tidak maka kembali ke langkah 1.
Nilai toleransi
yang digunakan adalah 1
2.3.4 Algoritme Pelatihan Lavenberg-Marquardt