16 yang menghubungkan bias di neuron input ke neuron layar tersembunyi Zj. Wkj
merupakan bobot dari neuron layar tersembunyi Zj ke neuron keluaran Yk Wk0 merupakan bobot dari bias di layar tersembunyi ke neuron keluaran Yk. Pelatihan
Backpropagation meliputi tiga fase, yaitu :
1. Fase I: Propagasi maju
Selama propagasi maju, sinyal masukan dipropagasikan ke hidden layer menggunakan fungsi aktivasi yang telah ditentukan hingga menghasilkan keluaran
jaringan. Keluaran jaringan dibandingkan dengan target yang harus dicapai. Selisih antara target dengan keluaran merupakan kesalahan yang terjadi. Jika kesalahan
lebih kecil dari batas toleransi, maka iterasi dihentikan. Akan tetapi jika kesalahan lebih besar, maka bobot setiap garis dalam jaringan akan dimodifikasi untuk
mengurangi kesalahan yang terjadi.
2. Fase II: Propagasi mundur
Kesalahan yang terjadi di propagasi mundur mulai dari garis yang berhubungan langsung dengan neuron-neuron dilayar keluaran.
3. Fase III: Perubahan bobot
Pada fase ini, bobot semua garis dimodifikasi secara bersamaan. Ketiga fase tersebut diulang- ulang terus hingga kondisi penghentian dipenuhi. Kondisi
penghentian yang sering dipakai adalah jumlah maksimal iterasi epoch atau minimal kesalahan error.
2.3.2. Algoritma Pelatihan Backpropagation
Berikut adalah algoritma pelatihan Backpropagation dengan arsitektur satu hidden layer Fausset, 1994:
Langkah 0 Inisialisasi bobot set dengan bilangan acak kecil
Langkah 1 Jika kondisi berhenti masih belum terpenuhi, lakukan langkah 2-9.
Langkah 2 Untuk setiap pasang pelatihan, lakukan langkah 3-8
Feedforwad
Langkah 3 Setiap neuron input
, = 1, … , menerima sinyal input dan
meneruskan sinyal ini kesemua neuron pada lapisan di atasnya hidden
Universitas Sumatera Utara
17 neuron. Berikut merupakan ilustrasi bagaimana sinyal dipropagasikan
keseluruh input layer. merupakan bobot penghubung pada
input layer.
Gambar 2.6 Propagasi sinyal ke neuron pertama pada input layer
www.home.agh.edu.pl
Gambar 2.7 Propagasi sinyal ke neuron kedua pada input layer
www.home.agh.edu.pl
Gambar 2.8 Propagasi sinyal ke neuron ketiga pada input layer
www.home.agh.edu.pl Langkah 4
Setiap hidden neuron , = 1,
… , � menjumlahkan bobot dari
sinyal-sinyal inputnya. _
= +
=1
10
Kemudian gunakan fungsi aktivasi untuk menghitung nilai sinyal outputnya.
Universitas Sumatera Utara
18 = _
11
Dan kirimkan sinyal ini ke semua neuron yang berada pada lapisan diatasnya output neuron. Gambar berikut merupakan ilustrasi
bagaimana sinyal
dipropagasikan keseluruh
hidden layer.
merupakan bobot penghubung pada hidden layer.
Gambar 2.9 Propagasi sinyal ke neuron pertama pada hidden layer
www.home.agh.edu.pl
Gambar 2.10 Propagasi sinyal ke neuron kedua pada hidden layer
www.home.agh.edu.pl
Langkah 5 Setiap output neuron
, = 1,
… , menjumlahkan bobot dari sinyal-sinyal inputnya.
_ =
+
� =1
12
Dan menerapkan fungsi aktivasinya untuk menghitung nilai sinyal outputnya.
= 13
Gambar 2.11 merupakan ilustrasi yang dapat menjelaskan bagaimana sinyal dipropagasikan ke output layer.
Universitas Sumatera Utara
19
Gambar 2.11 Propagasi sinyal ke neuron output www.home.agh.edu.pl
Backpropagation error
Langkah 6 Setiap neuron output
, = 1,
… , menerima sebuah pola target yang sesuai pada input pola pelatihan, kemudian menghitung
informasi kesalahannya. =
−
′
_
14
Hitung koreksi bobot yang nantinya akan dipakai untuk merubah bobot
∆ =
15 Hitung koreksi bias yang nantinya akan digunakan untuk merubah
bobot
∆ =
16
Dan kirim ke neuron pada lapisan dibawahnya. Berikut ini adalah
ilustrasi dari prosesnya.
Gambar 2.12 Perbandingan sinyal keluaran dan target www.home.agh.edu.pl
Langkah 7 Setiap hidden neuron
, = 1, … , � menjumlahkan delta input dari
neuron yang berada dilapisan bawahnya, _
=
=1
17
Universitas Sumatera Utara
20 Mengalikan dengan turunan dari fungsi aktivasinya untuk menghitung
informasi errornya. = _
′
_ 18
Hitung koreksi bobotnya yang nantinya akan digunakan untuk mengupdate
∆ =
19
Dan hitung koreksi biasnya yang nantinya akan digunakan untuk mengupdate
. ∆
= 20
Prosesnya dapat dilihat dari ilustrasi gambar 2.13 dan 2.14 berikut ini:
Gambar 2.13 Propagasi sinyal error
Δ Ke f4E www.home.agh.edu.pl
Gambar 2.14 Propagasi sinyal error
Δ Ke f5E www.home.agh.edu.plx
Koefisien bobot Wmn digunakan untuk mempropagasikan error kembali
adalah sama
dengan bobot
sebelumnya selama
mengkomputasikan nilai keluaran. Hanya ketika arah alur data berubah
Universitas Sumatera Utara
21 sinyal di propagasikan dari keluaran ke masukan. Teknik ini
digunakan untuk semua lapisan jaringan. Apabila propagasikan error datang dari beberapa neuron, seperti yang terlihat pada gambar 2.14
sampai 2.16 berikut:
Gambar 2.15 Propagasikan Sinyal Error
Δ Ke f1E www.home.agh.edu.pl
Gambar 2.16 Propagasikan Sinyal Error
Δ Ke f2E www.home.agh.edu.pl
Gambar 2.17 Propagasikan Sinyal Error
Δ Ke f3E Fajri, 2011
Universitas Sumatera Utara
22
Update weight and bias
Langkah 8 Setiap neuron output
, = 1,
… , mengupdate bias dan bobot- bobotnya j=0, . . . ,p:
= + ∆
21
Setiap hidden neuron , = 1,
… , � mengupdate bias dan bobot- bobotnya i= 0, . . ., n
= + ∆
22
Gambar 2.17 sampai dengan gambar 2.22 merupakan ilustrasi dari proses pengupdate-an bobot:
Gambar 2.18
Modifikasi Bobot Δ1 www.home.agh.edu.pl
Gambar 2.19
Modifikasi Bobot Δ2 www.home.agh.edu.pl
Universitas Sumatera Utara
23
Gambar 2.20
Modifikasi Bobot Δ3 www.home.agh.edu.pl
Gambar 2.21
Modifikasi Bobot Δ4 www.home.agh.edu.pl
Gambar 2.22
Modifikasi Bobot Δ5 www.home.agh.edu.pl
Universitas Sumatera Utara
24
Gambar 2.23
Modifikasi Bobot Δ6 www.home.agh.edu.pl
Langkah 9 Tes kondisi berhenti dapat dilakukan ketika error yang dihasilkan oleh
jaringan berada pada nilai yang lebih kecil sama dengan ≤ error target yang diharapkan atau ketika telah mencapai iterasi epoch
maksimal yang telah ditetapkan.
Berikut ini
adalah contoh
perhitungan sederhana
dari arsitektur
Backpropagation yang dilakukan secara manual:
X
2
X
3
X
4
X
1
b X
5
Z
2
Z
3
Z
1
Y
1
b
V11 V12
V13 V21
V22 V23
V31 V32
V33 V41 V42
V43 V51
V52 V53
Z11 Z21
Z22
Gambar 2.24 Contoh Arsitektur Backpropagation
Arsitektur Backpropagation yang terdiri dari 5 buah neuron ditambah sebuah bias pada input layer dan 3 buah neuron pada hidden layer ditambah sebuah bias dan satu
Universitas Sumatera Utara
25 buah output layer. Nilai target pada jaringan adalah 1 dan learning rate
= 0.25. Mula-mula bobot diberi nilai acak pada range [-1, 1]. Misal terdapat bobot seperti
tabel 2.1 bobot dari input layer ke hidden layer = dan tabel 2.2 bobot dari
hidden layer ke output layer = .
Tabel 2.1 Bobot dari input layer ke hidden layer
� �
� � = 4
-1 0.75
-0.25 � = 7
0.4 0.23
0.11 � = 11
0.17 0.05
-0.18 � = 6
0.29 0.55
0.03 � = 21
0.21 1
0.15
b = 1
0.2 -08
1
Tabel 2.2 Bobot dari hidden layer ke output layer
Y �
0.1 �
0.03 �
0.5
b =1
0.1
Normalisasi data input kedalam range [0, 1] dengan menggunakan rumus berikut:
x′ = 0.8
x − min max
− min + 0.1
Siang, 2004 Keterangan:
x ’
= x yang telah dinormalisasi x
= x sebelum dinormalisasi min
= nilai minimum dari seluruh data max
= nilai maksimum dari seluruh data
Universitas Sumatera Utara
26 Maka didapatkan hasil input normalisasi dengan nilai minimum = 4 dan nilai
maksimum = 21.
X
1 ′
= 0.8
4 − 4 21
− 4 + 0.1 = 0.1
X
2 ′
= 0.8
7 − 4 21
− 4 + 0.1 = 0.24
X
3 ′
= 0.8
11 − 4 21
− 4 + 0.1 = 0.33
X
4 ′
= 0.8
6 − 4 21
− 4 + 0.1 = 0.19
X
5 ′
= 0.8
21 − 4 21
− 4 + 0.1 = 0.9
Hitung nilai output dari masing-masing hidden neuron dengan persamaan 10:
_ =
+
=1 1
= 1 0.2 + 0.1 −1 + 0.24 0.4 + 0.33 0.17 + 0.19 0.29 + 0.9 0.21
= 0.2 + −0.1 + 0.096 + 0.561 + 0.551 + 0.189
= 1.48
2
= 1 −0.8 + 0.1 0.75 + 0.24 0.23 + 0.33 0.05 + 0.19 0.55 + 0.9 1
= −0.8 + 0.75 + 0.552 + 0.165 + 0.104 + 0.9
= 1.67
3
= 1 1 + 0.1 −0.25 + 0.24 0.11 + 0.33 −0.18 + 0.19 0.03 + 0.9 0.15
= 1 + −0.25 + 0.026 + −0.059 + 0.006 + 0.135
= 0.86
Kemudian terapkan fungsi aktivasi untuk masing-masing neuronnya menggunakan persamaan 11, dalam soal ini diterapkan fungsi aktivasi sigmoid biner.
= _ =
1 1+
−
Universitas Sumatera Utara
27
1
=
1 1+
−1.48
= 1.23
2
=
1 1+
−1.67
= 1.19
3
=
1 1+
−0.86
= 1.42
Hitung nilai output dari neuron Y menggunakan persamaan 12 seperti berikut:
_ =
+
� =1
Karena jaringan hanya memiliki sebuah output Y, maka = 1
0.1 + 1.23 0.1 + 1.19 0.03 + 1.420.5 = 0.97
= =
1 1+
−
=
1 1+
−0.97
= 1.38
Hitung faktor pada neuron output Y sesuai dengan persamaan 14
= −
′
_ =
− 1 − =
1 − 1.38 1.38 1 − 1.38 = 0.20
Suku perubahan bobot dengan
= 0.25 adalah sebagai berikut: ∆
= ; = 0,1
… 3 ∆
10
= 0.25 0.20 1 = 0.05
∆
11
= 0.25 0.20 1.23 = 0.01
∆
12
= 0.25 0.20 1.19 = 0.06
∆
13
= 0.25 0.20 1.42 = 0.07
Hitung penjumlahan kesalahan di hidden neuron = :
_ =
=1
karena jaringan hanya memiliki sebuah neuron output maka _
=
1 1
= 0.20 0.1 = 0.20
_
2
= 0.20 0.03 = 0.01
_
3
= 0.20 0.5 = 0.1
Universitas Sumatera Utara
28 Faktor kesalahan di hidden neuron:
= _
′
_ = _
1 −
1
= 0.20 1.23 1 − 1.23 = −0.06
2
= 0.01 1.19 1 − 1.19 = −0.002
3
= 0.1 1.42 1 − 1.42 = −0.06
Suku perubahan bobot ke hidden neuron ∆ =
dimana = 1,2,3; =
0,1, … 5 .
Tabel 2.3 Suku Perubahan Bobot Hidden Neuron
� �
� � ∆
11
= 0.25 −0.06 0.1
= −0.0015
∆
21
= 0.25 −0.002 0.1
= −0.00005
∆
31
= 0.25 −0.06 0.1
= −0.0015
� ∆
12
= 0.25 −0.06 0.24
= −0.004
∆
22
= 0.25 −0.002 0.24
= −0.0012
∆
32
= 0.25 −0.06 0.24
= −0.004
� ∆
13
= 0.25 −0.06 0.33
= −0.005
∆
23
= 0.25 −0.002 0.33
= −0.000165
∆
33
= 0.25 −0.06 0.33
= −0.005
� ∆
14
= 0.25 −0.06 0.19
= −0.003
∆
24
= 0.25 −0.002 0.19
= −0.000095
∆
34
= 0.25 −0.06 0.19
= −0.003
� ∆
15
= 0.25 −0.06 0.9
= −0.01
∆
25
= 0.25 −0.002 0.9
= −0.00045
∆
35
= 0.25 −0.06 0.9
= −0.01
b=1
∆
10
= 0.25 −0.06 1
= −0.02
∆
20
= 0.25 −0.002 1
= −0.0005
∆
30
= 0.25 −0.06 1
= −0.02
Universitas Sumatera Utara
29 Perubahan bobot neuron output:
= + ∆
= 1; = 0, … ,3
11
= 0.1 + 0.01 = 0.11
12
= 0.03 + 0.06 = 0.09
13
= 0.5 + 0.07 = 0.57
10
= 0.1 + 0.05 = 0.15 Perubahan bobot hidden neuron:
= + ∆ = 1; = 0, … ,5
Tabel 2.4 Perubahan Bobot Hidden Neuron
� �
� � ∆
11
= −1 + −0.0015
= −1.0015
∆
21
= 0.75 + −0.00005
= 0.75 ∆
31
= −0.25
+ −0.0015
= −0.25
� ∆
12
= 0.4 + −0.004
= 0.40 ∆
22
= 0.23 + −0.0012
= 0.23 ∆
32
= 0.11 + −0.004
= 0.11 �
∆
13
= 0.17 + −0.005
= 0.17 ∆
23
= 0.055 +
−0.000165 = 0.55165
∆
33
= −0.18 + 0.005
= −0.18
� ∆
14
= 0.29 + −0.003
= 0.29 ∆
24
= 0.55
+ −0.000095 = 0.55
∆
34
= 0.03 + −0.003
= 0.3 �
∆
15
= 0.21 + −0.01
= 0.2 ∆
25
= 1 + −0.00045
= 0.9995 ∆
35
= 0.15 + −0.01
= 0.15
b=1
∆
10
= 0.2 + −0.02
= 0.18 ∆
20
= −0.8 + −0.0005
= −0.8
∆
30
= 1 + −0.02
= 0.98
Ulangi iterasi hingga maksimal epoch atau Error Jaringan ≤ Error target.
Universitas Sumatera Utara
30
2.3.3. Inisialisasi Bobot Awal dan Bias