Anda di halaman 1dari 16

Algoritma Backpropagation

Definisi
• Salah satu metode
pelatihan/pembelajaran terawasi
• Ciri : meminimalkan error pada output
yang dihasilkan oleh jaringan
• Biasanya digunakan jaringan multilayer
• Dalam jaringan, selain terdapat unit input,
unit tersembunyi dan unit output, juga
terdapat “bias” yang diberikan pada unit
tersembunyi dan output
Jaringan Syaraf Backpropagation dengan
satu Hidden Layer
yj
dj
Selanjutnya
wjk Unit input dilambangkan X
Unit hidden dilambangkan Z
Unit output dilambangkan Y
dk Bobot antara X dan Z = v
Bobot antara Z dan Y = w

wki Untuk bias, biasanya


digunakan indeks 0
xi
Langkah pada metode
Backpropagation
Pada intinya pelatihan dengan
metode/algoritma backpropagation terdiri
atas 3 langkah :
• data dimasukkan ke input jaringan
(feedforward)
• Perhitungan dan propagasi balik dari error
yang bersangkutan
• Pembaharuan (adjustment) bobot dan bias
penjelasan
• Saat umpan maju, setiap X akan menerima sinyal input
dan akan menyebarkannya pada tiap Z.
• setiap Z kemudian akan menghitung aktivasinya dan
mengirim sinyal (zj) ke tiap Y.
• Kemudian setiap Y juga akan menghitung aktivasinya
untuk menghasilkan respon terhadap input yang
diberikan.
• Saat proses pelatihan, setiap Y membandingkan
aktivasinya (yk) dengan t untuk mnentukan besarnya E.
Berdasar error dihitung faktor δk yang digunakan untuk
mendistribusikn error dari output kembali ke layer
sebelumnya. Dengan cara sama, dihitung pula δj pada
hidden unit Zj. Faktor δk digunakan untuk memperbarui
bobot antara hidden layer dan input layer.
• Setelah semua faktor δ ditentukan, bobot
untuk semua layer di adjust secara
bersamaan.
• Pembaharuan bobot wjk (dari Zj ke Yk)
dilakukn berdasar faktor δk dan aktivasi zj
dari hidden unit Zj.
• Sedang pembaruan bobot vij dari input
unit Xi ke hidden unit Zj dilakukan
berdasar faktor δj dan aktivasi xi dari input
Notasi lengkap yang digunakan
• X data training untuk input
x = (x1, x2, … , xn)
• t data training untuk output (target/desired output)
• a (alfa) : learning rate
• Xi unit input ke I
• Zj unit hidden ke j
• Yk unit output ke k
• v0j bias untuk hidden unit ke j
• vij bobot antara input unit ke-i dan hidden unit ke-j
• w0k bias untuk output uniy ke-k
• wjk bobot antara hidden unit ke-j dengan output unit ke-k
• δk faktor koreksi error untuk bobot wjk
• δk faktor koreksi error untuk bobot vij
Detil step pelatihan

0. Inisialisasi nilai bobot dan bias, error E


di set 0
1. Jika stop condition belum terpenuhi, jalankan
step 2 - 9
2. Untuk setiap data training lakukan step 3 - 8
feedforward
3. Unit input menerima sinyal masukan
(input dan target output diskalakan sesuai
fungsi aktivasinya)
4. Hidden unit menjumlah :

5. Unit output menjumlah sinyal input yang


sudah berbobot, termasuk biasnya :
Propagasi error (backpropagation of error)
6. Menghitung kesalahan antara target dengan
output jaringan :
faktor digunakan untuk menghitung koreksi
error ( ) yang digunakan untuk menghitung
, dimana :

dihitung pula koreksi bias yang digunakan


untuk memperbaharui , dimana :

faktor dikirim ke layer yang berada pada


langkah 7.
7. Hidden unit menjumlah input delta (yang dikirim
dari layer langkah 6) yang sudah berbobot

kemudian hasilnya dikalikan dengan turunan


dari fungsi aktivasi yang digunakan jaringan
untuk menghasilkan faktor koreksi error j,
dimana :

faktor digunakan untuk menghitung koreksi


error ( ) yang akan digunakan untuk
memperbaharui , dimana
Disamping itu, bisa dihitung koreksi bias
, yang dipakai untuk memperbaharui ,
dimana :
Pembaharuan bobot (adjustment) dan bias
8. Memperbaharui bias dan bobot .
setiap unit output (Yk) akan memperbaharui
bobot dan biasnya dari setiap unit hidden(Zj).

setiap unit hidden (Zj) akan memperbaharui


bias dan bobotnya dari setiap unit input (Xi).

9. Memeriksa stop condition


Stop condition
• Terdapat 2 cara :
a. Membatasi iterasi yang dilakukan.misal
jaringan akan dilatih hingga iterasi ke 700. satu
iterasi : perulangan langkah 3 hingga 8 untuk
semua data training yang ada.
b. Membatasi error. Error dihitung dengan MSE
(mean square error) untuk menghitung rata-
rata error antara output yang dikehendaki dgn
output jaringan. Besar error tergantung presisi
yang dibutuhkan sistem
Contoh : Arsitektur jaringan XOR
1 1

V01

X1 V1
Z1
V12
V02
Y1
V21
Z2
X2
V22

Buatlah cara (secara manual /excel) pelatihan jaringan syaraf


tersebut menggunakan backpropagation
Langkah 0
tentukan fungsi aktivasi, learning rate, bias, stop
condition dan inisialisasi bobot(acak)
Langkah 1
dengan bobot dan bias tersebut, tentukan error untuk
training data secara keseluruhan dengan MSE
Langkah 3
jika error training data masih lebih besar dari Emax,
maka langkah 3 – 8 dijalankan

Anda mungkin juga menyukai