BackPropagationJST
BackPropagationJST
Step Studi :
1. Studi literatur
2. Studi standard backpropagasi
a. Uji coba standar backpropagasi pada xor problem
b. Evaluasi karakteristik standar backpropagasi
1). Tingkat konvergensi ke global minimum
2). Tingkat akurasi output
3. Studi modifikasi standar backpropagasi
a. Uji coba modifikasi standar backpropagasi pada xor problem
b. Evaluasi karakteristik modifikasi standar backpropagasi
1). Tingkat konvergensi ke global minimum
2). Tingkat akurasi output
4. Membandingkan standar dan modifikasi backpropagasi
a. Tingkat konvergensi ke global minimum
b. Tingkat akurasi output
5. Implementasi
a. Programing
b. Management Database
Backpropagasi
Backpropagasi merupakan algoritma pelatihan untuk memperkecil tingkat error
dengan menyesuaikan bobot berdasarkan perbedaan output dan target yang
diinginkan.
Proses pelatihan :
1. Pengambilan input
2. Penelusuran error
3. Penyesuaian bobot
Arsitektur :
Y1 Yk Ym
w01 w11 wj1 wp1 wok W1k Wjk Wpk w0m W1m Wpm
Wjm
1 Z1 Zj Zp
V01 V11 Vj1 Vn1 Voj V1j Vij Vnj V0p V1p Vip Vnp
1 X1 Xj Xn
Algoritma :
Step 0 : Inisialisai Bobot
Random
Nguyen-Widrow
Laju pembelajaran (alpha)
Laju pembelajaran momentum (miu)
(Backpropagation of error) :
Step 6 : Setiap unit output (Yk, k = 1,…,m) :
menerima pola target yang bersesuaian dengan pola input
menghitung informasi error :
k = (tk - yk) f’(y_ink)
menghitung besarnya koreksi bobot unit output :
wjk = E(wjkj)/wjk = k zj
menghitung besarnya koreksi bias output :
w0k = k
mengirimkan k ke unit-unit yang ada pada layer di
bawahnya.
Algoritma :
Untuk setiap unit hidden (j=1, ... , J) :
Inisialisasi bobot secara random
vij = bilangan acak antara -0.5 sampai 0.5
p
Hitung : vj = { (vij)2}
i=1
Jumlah neuron pada lapisan masukan sama dengan jumlah ciri atau
atribut pada pola yang akan dikenali, sedang jumlah neuron pada
lapisan keluaran sama dengan jumlah kelas pola.
Lapisan
keluaran
Y1 Yk Ym
w01 w11 wj1 wp1 wok W1k Wjk Wpk w0m W1m Wpm
Wjm
Lapisan
tersembunyi
1 Z1 Zj Zp
V01 V11 Vj1 Vn1 Voj V1j Vij Vnj V0p V1p Vip Vnp
Lapisan
masukan
1 X1 Xj Xn
Algoritma
(Backpropagation of error) :
Step 6 : Setiap unit output (Yk, k = 1,…,m) :
menerima pola target yang bersesuaian dengan pola input
menghitung informasi error :
k = (tk - yk) f’(y_ink)
menghitung besarnya koreksi bobot unit output :
wjk = E(wjkj)/wjk = k zj
menghitung besarnya koreksi bias output :
w0k = k
mengirimkan k ke unit-unit yang ada pada layer di
bawahnya.
Fungsi Kesalahan
Aturan Pembelajaran
Z j f ( Z _ in j )
dan meneruskan sinyal ini pada semua neuron di lapisan keluaran.
5. Uji kriteria kesalahan, bila kesalahan lebih besar dari batas yang telah
ditetapkan, ulangi langkah 2 sampai 4; bila tidak, pelatihan selesai.
1. Inisialisasi bobot
Bobot awal menentukan apakah jaringan akan mencapai global
minima atau local minima kesalahan, dan seberapa cepat jaringan
akan konvergen. Inisialisasi acak merupakan cara yang paling sering
digunakan dalam inisialisasi bobot. Untuk mempercepat proses
pelatihan, suatu modifikasi dari inisialisasi acak diperkenalkan oleh
Nguyen dan Widrow. Inisialisasi Nguyen-Widrow didefinisikan
sebagai:
Untuk bias dan bobot hubungan antara semua neuron di lapisan
tersembunyi dan semua neuron di lapisan keluaran, lakukan
inisialisasi acak dengan jangkauan -0,5 dan 0,5.
Untuk bias bobot hubungan antara lapisan tersembunyi dan lapisan
masukan, lakukan sebagai berikut:
Hitung = 0.7 (P)1/N di mana adalah faktor skala, P adalah
jumlah neuron lapis keluaran dan N adalah jumlah neuron lapis
masukan.
Untuk setiap neuron j di lapis keluaran, lakukan sebagai berikut:
Inisialisasi secara acak bobot antara neuron bersangkutan
dengan semua neuron di lapis masukan i: wij = bilangan
acak antara -0,5 dan 0,5.
Hitung norma wj:
||w || = w
j ij
i
2. Laju pembelajaran
Merupakan parameter jaringan dalam mengendalikan proses
penyesuaian bobot. Nilai laju pembelajaran yang optimal bergantung
pada kasus yang dihadapi. Laju pembelajaran yang terlalu kecil
menyebabkan konvergensi jaringan menjadi lebih lambat, sedang laju
pembelajaran yang terlalu besar dapat menyebabkan ketidakstabilan
pada jaringan
3. Momentum
Momentum digunakan untuk mempercepat pelatihan jaringan.
Metode momentum melibatkan penyesuaian bobot ditambah dengan
faktor tertentu dari penyesuaian sebelumnya. Penyesuaian ini
dinyatakan sebagai berikut:
w jk (t ) k z j (t ) w jk (t 1) (2.13)
Notasi :
X : nilai masukan , X = ( X1, ... Xi, ...Xn )
v : bobot antara bias atau input dengan hidden
Z : nilai aktivasi hidden, Z = ( Z1, ... Xj, ...Xp )
Zj = f (z_in)
n
z_inj = v0j + xi vij
i=1
Yk = f (y_in)
p
y_ink = w0k + xi vij
k=1
wjk = - E(wjk)
wjk
vij = - E(vij)
vij
wjk = - E(wjk)
wjk
vij = - E(vij)
vij
E = - (tk - Yk)
Yk
Yk = f(y_ink)
Yk = f ‘ (y_ink)
y_ink
y_ink = zj
wjk
E(wjk) = - (tk - Yk) f ‘ (y_ink) zj
wjk
didefinisikan : k = (tk - yk) (f’(y_in))
E(wjk) = - k Zj
wjk
W = - (- k Zj )= k Zj
E = - (tk - Yk)
Yk
Yk = f(y_ink)
Yk = f ‘ (y_ink)
y_ink
y_ink = k wjk
zj
zj = f ‘ (z_inj)
z_inj
n
z_inj = v0j + xi vij
i=1
z_inj = xi
vij
Yk = f(y_ink)
y_ink = zj
wjk
= - k (tk - Yk) zj
Yk = f(y_ink)
y_ink = wjk
zj
zj = f ‘ (z_inj)
z_inj
n
z_inj = v0j + xi vij
i=1
z_inj = xi
vij
E = - k (tk - Yk) wjk f ‘(z_inj) Xi
vij
didefinisikan : k = k(tk - yk)
E = - k k wjk f ‘(z_inj) Xi
vij
V = - (- j Xi )= j Xi
E = k ln (1 - (tk - Yk)2)
Untuk update bobot antara hidden dan output ;
E =E Yk y_ink
wjk Yk y_ink wjk
Yk = f(y_ink)
E = - k Zj
wjk
W = - (- k Zj )= k Zj
Yk = f(y_ink)
y_ink = wjk
zj
zj = f’(z_in)
z_in
z_in = Xi
vij
E = - j Xi
vij
V = - (- j Xi )= j Xi