Professional Documents
Culture Documents
Jenis Algoritma
Hebb Rule
Metode pembelajaran paling sederhana Dilakukan dg memperbaiki nilai bobot sedemikian rupa shg jika ada 2 neuron yg terhubung keduanya pada kondidi on pada saat yg sama, bobot keduanya dinaikkan Data direpresentasi bipolar perbaikan bobotnya
wij (baru) = wij(lama)+xi*yj (i = 1,2,.....n ; dan j=1,2....m)
Contoh Kasus
Membuat jaringan saraf untuk melakukan pembelajaran terhadap fungsi OR dengan input dan target bipolar sbb
Input -1 -1 1 1 -1 1 -1 1
Bias 1 1 1 1
Target -1 1 1 1
Penyelesaian
Arsitektur jaringan untuk contoh adalah :
x1
w1
y_in
xw+b
w2 x2 b 1
y F (y_in)
Pengetesan
Pengetesan terhadap salah satu data. Misal ambil X [-1 -1] Y_in = (X1 * W1) + (X2 * W2) + b ; F ( Y_in) adalah fungsi bipolar; Hasil tes : Y_in = (-1 * 2) + (-1 * 2) + 2 = -2 F(Y_in) = -1 Nilai -1 cocok dengan output dari pasangan data [-1 -1]
Perceptron
Klasifikasi dari suatu pola dengan pemisahan secara linier. Yang diatur adalah bobot dan nilai ambang (threshold). Nilai threshold () dlm fungsi aktivasi adalah non negatif dibuat sedemikian rupa shg terjadi pembatsan daerah negatif dan daerah positif. Input bisa digunakan untuk input biner dan bipolar, dg tertentu.
Algoritma Perceptron
0. Inisialisasi semua bobot dan bias Untuk sederhananya, set semua bobot dan bias sama dengan nol. Set learning rate (0< 1) 1. Selama kondisi berhenti bernilai false, lakukan langkah sbb: (i) untuk setiap pasangan data s-t, kerjakan : a. Set input dg nilai sama dg vektor input : Xi = Si; b. Hitung respon utk unit output rumus :
wi = bobot ke-i
Lanjutan ................
y= 1 jika yin > y= 0 jika yin y= -1 jika yin < c. Perbaiki bobot dan bias jika terjadi error (yt) : Jika terjadi error maka: Wi (baru) = Wi(lama) + *t*Xi; b (baru) = b(lama) + *t; Jika tidak terjadi error, maka : w (baru) = w (lama) b (baru) = b (lama) (ii) Tes kondisi berhenti : Jika tidak terjadi perubahan bobot dan nilai bias pada (i), maka kondisi TRUE. Namun jika bobot dan nilai bias masih berubah, maka tes kondisi FALSE.
Contoh Kasus
Misalkan kita ingin membuat jaringan syaraf utk melakukan pembelajaran terhadap fungsi AND dgn input biner dan target bipolar sbb :
Input
1 1 0 0 1 0 1 0
Bias
1 1 1 1
Target
1 -1 -1 -1
Penyelesaian
Arsitektur jaringan untuk contoh adalah :
x1
w1
y_in
xw+b w2 x2 b 1
F (y_in)
- Data ke-2 yin = 0,8 + 0,8 + 0,0 = 1,6 Hasil aktivasi = 1 (yin > 0,5) Target = -1 Bobot baru : w1 = 0,8 + 0,8 * -1,0 * 1,0 = 0,0 w2 = 0,8 + 0,8 * -1,0 * 0,0 = 0,8 Bobot bias baru (b) = 0,8 + 0,8 * -1,0 = 0,0
- Data ke-3 yin = 0,0 + 0,0 + 0,8 = 0,8 Hasil aktivasi = 1 (yin > 0,5) Target = -1 Bobot baru : w1 = 0,0 + 0,8 * -1,0 * 0,0 = 0,0 w2 = 0,8 + 0,8 * -1,0 * 1,0 = 0,0 Bobot bias baru (b) = 0,0 + 0,8 * -1,0 = -0,8
- Data ke-4 yin = -0,8 + 0,0 + 0,0 = -0,8 Hasil aktivasi = -1 (yin < -0,5) Target = -1 Karena masih ada bobot dan nilai bias yg diperbaharui, maka dilanjutkan tes kondisi dilanjutkan ke step kedua (Caranya sama dgn step pertama)
- Step 2 - Data ke-1 yin = -0,8 + 0,0 + 0,0 = -0,8 Hasil aktivasi = -1 (yin < 0,5) Target = 1 Bobot baru : w1 = 0,0 + 0,8 * 1,0 * 1,0 = 0,8 w2 = 0,0 + 0,8 * 1,0 * 1,0 = 0,8 Bobot bias baru (b) = -0,8 + 0,8 * 1,0 = 0,0
- Data ke-2 yin = 0,0 + 0,8 + 0,0 = 0,8 Hasil aktivasi = 1 (yin > 0,5) Target = -1 Bobot baru : w1 = 0,8 + 0,8 * -1,0 * 1,0 = 0,0 w2 = 0,8 + 0,8 * -1,0 * 0,0 = 0,8 Bobot bias baru (b) = 0,0 + 0,8 * -1,0 = -0,8
dst.
Perhitungan di atas diteruskan hingga mendapatkan suatu step dimana nilai input yang dihasilkan cocok dengan target yang dituju. Apabila yin = target, maka tes kondisi berhenti. Apabila perhitungan di atas dilanjutkan, maka pada step ke-10 proses tersebut akan berhenti, dan didapatkan nilai bobot w1 = 1,6 dan w2 = 2,4 dan bobot bias (b) = -3,2
Delta rule
Delta rule merubah bbobot yg menghubungkan jaringan input ke unit output, yaitu Y_in dan nilai target (t). Memperbaiki bobot ke-i (utk setiap pola) adalah ; Wi = (t Y_in)Xi dengan Y_in = Xi Wi Rumus diatas hanya dipake untuk satu unit output
Y_in = Xi Wi
yin=output data wi = bobot ke-i xi = input ke-i c. Hitung respon untuk fungsi aktifasi : F(Y_in)= fungsi aktifasi yg dipakai
c. Perbaiki bobot jika terjadi error (0) nilai error diukur dg (=t-y): Jika terjadi error maka: Wi (baru) = Wi(lama) + *(t-y)*Xi; atau Wi (baru) = Wi(lama) + **Xi; Jika tidak terjadi error, maka : w (baru) = w (lama) (ii) Tes kondisi berhenti : Jika error =0, maka kondisi TRUE. Namun jila error 0, maka tes kondisi FALSE.
Contoh kasus
Misalkan kita ingin membuat jaringan syaraf utk melakukan pembelajaran terhadap fungsi OR dgn input biner dan target biner sbb : Input 0 0 Target 0
0
1 1
1
0 1
1
1 1
Penyelesaian
Arsitektur jaringan untuk contoh adalah :
x1
w1
y_in
xw+b
w2 x2
y F (y_in)
- Data ke-2 : X1=0 ; X2=1; t2 = 1 bobot awal W1 = 0,1 W2=0,3; Y_in = X1 W1 + X2 W2 = 0,3; F(Y_in) = 0 = t1 F(Y_in) = 1 0 = 1 bobot baru W1 = W1 (lama) + **X1 = 0,1 + 0,2*0 * 1 = 0,1 W2 = W2 (lama) + **X2 = 0,3 + 0,2*1 * 1 = 0,5 - Data ke-3 : X1=1 ; X2=0; t3 = 1 bobot awal W1 = 0,1 W2=0,5; Y_in = X1 W1 + X2 W2 = 0,1; F(Y_in) = 0 = t1 F(Y_in) = 1 0 = 1 bobot baru W1 = W1 (lama) + **X1 = 0,1 + 0,2*1 * 1 = 0,3 W2 = W2 (lama) + **X2 = 0,5 + 0,2*0 * 1 = 0,5
- Data ke-4 : X1=1 ; X2=1; t4 = 1 bobot awal W1 = 0,3 W2=0,5; Y_in = X1 W1 + X2 W2 = 0,8; F(Y_in) = 1 = t1 F(Y_in) = 1 1 = 0 bobot baru W1 = W1 (lama) + **X1 = 0,3 + 0,2*1 * 0 = 0,3 W2 = W2 (lama) + **X2 = 0,5 + 0,2*0 * 0 = 0,5 Step 2 : - Data ke-1 : X1=1 ; X2=0; t1 = 1 bobot awal W1 = 0,3 W2=0,5; Y_in = X1 W1 + X2 W2 = 0 ; F(Y_in) = 0 = t1 F(Y_in) = 0 0 = 0 bobot baru W1 = W1 (lama) + **X1 = 0,3 + 0,2*0 * 0 = 0,3 W2 = W2 (lama) + **X2 = 0,5 + 0,2*0 * 0 = 0,5
Demikian seterusnya, iterasi berhenti bila error = 0 untuk semua pasangan data. Coba anda hitung, pada iterasi ke berapa akan berhenti.
Backpropagation
Algoritma BAckpropagation