Anda di halaman 1dari 47

JARINGAN SARAF TIRUAN

BACKPROPAGATION
OLEH
Dr. ANAK AGUNG NGURAH
GUNAWAN,MT

JURUSAN FISIKA
UNIVERSITAS UDAYANA
2015

Arsitektur JST Backpropagation


Contoh Arsitekstur JST Backpropagation dengan:
n unit masukkan
p unit layer tersembunyi
m unit masukkan
1

Vp0
X1

V20

V10

W20
Wm0
Z1

V11

Wm1

V12

Z2

V22

W12
Wm2

Vm2
V1n

W22

Y2

W1p
W2p

V2m
Xn

Y1

W11
W21

Vp1 V21

X2

W10

Vpn

Layer Masukkan

Zp

Layer

Wmp

Ym

Layer Keluaran

Fungsi Aktifasi
Fungsi aktifasi yang digunakan pada backpropagation
yaitu sigmoid biner dan sigmoid bipolar

Fungsi Aktifasi

Algoritma Pelatihan
Backpropagation
Algoritma Pelatihan Backpropagation dengan satu layer
tersembunyi dan dengan menggunakan fungsi aktivasi
sigmoid biner
1
1
X1

Vp
0V11

V10

V20

Z1

Vp1 V21
X2

Xn

V12

V22

Vm
V1n
2
V2
m

Vpn

Z2

Zp

W20 W10
Wm0
W11

W2
Wm1
1
W12
W
Wm2 22
W1p
W2p
Wmp

Y1

Y2

Y
m

Langkah 0 : Inisialisasi semua bobot dengan bilangan

acak kecil.
Langkah 1 : Jika kondisi penghentian belum terpenuhi,
lakukan langkah 2 sampai dengan 8.
Langkah 2: Untuk setiap pasang data pelatihan,
lakukan langkah 3 sampai dengan 8

Algoritma Pelatihan
Backpropagation
1

X1

1
Vp
0V11

V10

V20

W20 W1

Z1

Vp1 V21
X2

Xn

V12

V22

Vm
V1n
2
V2
m

Vpn

Z2

Zp

Wm0
W11

W2
Wm1
1
W12
W
Wm2 22
W1p
W2p
Wmp

Y1

Y2

Y
m

Fase I: Propagasi Maju


Langkah 3

Tiap unit masukkan menerima sinyal dan meneruskan ke unit tersembunyi


Langkah 4

Hitung semua keluaran di unit tersembunyi (Zj):

Algoritma Pelatihan
Backpropagation
1

X1

1
Vp
0V11

V10

V20

W20 W1

Z1

Vp1 V21
X2

Xn

V12

V22

Vm
V1n
2
V2
m

Vpn

Z2

Zp

Wm0
W11

W2
Wm1
1
W12
W
Wm2 22
W1p
W2p
Wmp

Y1

Y2

Y
m

Langkah 5

Hitung semua jaringan di unit keluaran (yk)

Algoritma Pelatihan
Backpropagation
1

X1

1
Vp
0V11

V10

V20

W20 W1

Z1

Vp1 V21
X2

Xn

V12

V22

Vm
V1n
2
V2
m

Vpn

Z2

Zp

Wm0
W11

W2
Wm1
1
W12
W
Wm2 22
W1p
W2p
Wmp

Y1

Y2

Y
m

Fase II : Propagasi Maju


Langkah 6
Hitung factor unit keluaran berdasarkan kesalahan setiap unit keluaran yk (k=1,2,3.)

k=(tk-yk) f(y_netk)= (tk-yk) yk (1-yk)

k meruapakan unit kesalahan yang akan dipakai dalam perubahan bobot layer dibawahnya (lankah
7)

Hitung suku perubahan bobot Wkj dengan laju perubahan

wkj= k zj

; k=1,2,3,,m ; j=0,1,2,,p

Algoritma Pelatihan Backpropagation


1

X1

1
Vp
0V11

V10

V20

Z1

Vp1 V21
X2

V12

Z2

V22

Vm
V1n
2
Xn

V2
m

Vpn

Zp

W20 W1
Wm0
0
W11

W2
Wm1
1
W12
W
Wm2 22
W1p
W2p
Wmp

Y1

Y2

Y
m

Langkah

7
Hitung factor unit tersembunyi berdasarkan kesalahan di setiap unit tersembunyi z j (j=1,2,3,,p)

Faktor unit tersembunyi

j = _netj f(z_netj)= _netj zj (1-zz)

Hitung suku perubahan bobot vji

vji= jxi

; j=1,2,,p

; i=0,1,2,,n

Algoritma Pelatihan
Backpropagation
1

X1

1
Vp
0V11

V10

V20

W20 W1

Z1

Vp1 V21
X2

Xn

V12

V22

Vm
V1n
2
V2
m

Vpn

Z2

Zp

Wm0
W11

W2
Wm1
1
W12
W
Wm2 22
W1p
W2p
Wmp

Y1

Y2

Y
m

Fase III : Perubahan Bobot


Langkah 8

Perubahan bobot garis yang menuju unit keluaran


wkj

(baru)= wkj (lama) + wkj

Perubahan bobot garis yang menuju ke unit tersembunyi

Vji (baru)= vji (lama) + vji

Laju Pemahaman
Laju pemahaman di simbolkan dengan
Laju pemahaman menentukan lama iterasi
Nilai dari diantara 0 sd 1
Semakin besar nilai semakin cepat lama iterasi
Akan tetapi jika terlalu besar akan merusak pola,

sehingga justru akan lebih lama iterasinya

Epoch
Epoch yaitu satu siklus pelatihan yang

melibatkan semua pola


Misal jika suatu arsitektur JST terdapat 4
pola masukkan dan 1 target, maka
pelatihan 4 pola masukkan tersebut adalah
1 epoch

CONTOH SOAL
Buat jaringan saraf tiruan untuk fungsi logika
XOR 2 input sesuai tabel berikut.
X1

X2

Target

Arsitektur jaringan (gambar


dibawah) di set sebagai berikut
1 input layer, dengan 2 neuron ( x1 dan x2)
1 hidden layer dengan 4 neuron (z1,z2,z3
dan z4)
Gunakan fungsi aktivasi sigmoid =
1 output layer dengan 1 neuron
Gunakan fungsi aktivasi sigmoid

Arsitektot jft backpropagation


fungsi logika XOR

Jawab
Inisialisasi bobot
Nilai-nilai bobot dan bias awal ditentukan
sebagai berikut:
Bobot awal input ke hidden layer:
V11=0,1 v12=0,2 v13=0,3 v14=0,4
V12=0,1 v22=0,2 v23=0,3 v24=0,4
Bobot awal bias ke hidden layer:
V01=0,1 v02=0,2 v03=0,3 v04=0,4

Bobot awal hidden layar ke output layer:


W1=0,1 w2=0,2 w3=0,3 w4=0,4
Bobot awal bias ke output layer:
W0=0,5
Untuk kebutuhan pelatihan jaringan
ditentukan pula:
Learning rate( ) = 1
Maksimum epoch = 1500
Target eror=0,02

Pelatihan jaringan:
epoch ke 1:
Data ke 1 (x1 = 0, x2=0, target T=0)
Tahap perambatan maju (forward
propagation)
Operasi pada hidden layer:
Zin1= v01+ v11*x1+ v21*x2
=0,1+0,1*0+0,1*0=0,1
Zin2= v02+ v12*x1+ v22*x2
=0,2+0,2*0+0,2*0=0,2
Zin3= v03+ v13*x1+ v23*x2
=0,3+0,3*0+0,3*0=0,3
Zin1= v04+ v14*x1+ v24*x2
=0,4+0,4*0+0,4*0=0,4

Fungsi aktivasi pada hiden layer:

Operasi pada output layer:


Yin = w0+w1*z1+w2*z2+w3*z3+w4*4
=
0,5+0,1*0,5250+0,2*0,5498+0,3*0,5744+
0,4*0,5987
= 1,0743
Fungsi aktivasi pada output layer:

Check error (iterasi berhenti bila |error|


0,01
Error = target T 0,7454 = 0 0,7454 = 0,7454
Jumlah kuadrat error = (-0,7454)^2 = 0,5556

Tahap perambatan balik


(backpropagation)

Tahap perubahan bobot dan


bias

Untuk data kedua dilakukan operasi yang


sama dengan data pertama, hanya saja
nilai-nilai bobot dan bias awal yang
digunakan adalah nilai-niulai bobot dan
bias baru dari hasil perhitungan data
pertama.
Demikian seterusnya sampai data keempat
( 1 epoch). Proses ini diteruskan hingga
maksimum epoch ke 1500 atau kuadrat
erorr 0,02 (target erorr) baru berhenti.

Misalnya setelah akhir iterasi diperoleh


nilai bobot dan bias akhir berikut.

Sekarang kita uji jaringan tersebut untuk


setiap data. Pengujian terhadap data ke-1
(x1=0 x2=0 target T=0)

Pengujian terhadap data ke-4


(x1=1 x2=1 target T=0)

Anda mungkin juga menyukai