3. model hebb
DESCRIPTION
rfgeTRANSCRIPT
-
Diperkenalkan pada 1949 oleh D.O. Hebb,
menghitung bobot dan bias secara iteratif.
Dasar algoritma Hebb apabila 2 neuron yang dihubungkan dengan sinapsis secara serentak menjadi aktif (sama +/-), maka kekuatan sinapsisnya meningkat.
Jika kedua neuron aktif secara tidak sinkron (satu + dan satu -), kekuatan sinapsisnya akan melemah.
-
Dalam setiap iterasi, bobot sinapsis dan bias diubah berdasarkan perkalian neuron-neuron di kedua sisinya.
Untuk jaringan layar tunggal dengan 1 unit keluaran dimana semua unit masukan xi terhubung langsung dengan unit keluaran y, maka perubahan nilai bobot dilakukan berdasarkan persamaan:
wi (baru) = wi (lama) + xi y
-
Algoritma pelatihan Hebb dengan vektor input s dan unit target t:
Inisialisasi semua bobot = wi = 0 (i = 1, ..., n) Untuk semua vektor input s dan unit target t,
lakukan: set aktivasi unit masukan: xi = si (i = 1, ..., n) set aktivasi unit keluaran: y = t perbaiki bobot menurut persamaan
wi (baru) = wi (lama) + w (i = 1, ..., n) dengan w = xi y
perbaiki bias menurut persamaan b (baru) = b (lama) + y
-
Masalah yang timbul dalam jaringan Hebb adalah menentukan representasi data masukan/keluaran untuk fungsi aktivasi threshold.
Representasi yang sering dipakai adalah bipolar.
Kadangkala jaringan dapat menentukan pola secara benar jika dipakai representasi bipolar saja, dan akan salah jika dipakai representasi biner
-
Buatlah jaringan Hebb untuk menyatakan fungsi logika And jika representasi masukan dan keluaran yang dipakai adalah:
biner
masukan biner dan keluaran bipolar
bipolar!
-
Gambar 1 adalah arsitektur jaringan Hebb untuk menyatakan fungsi And.
Tabel 1 adalah tabel masukan dan keluaran yang direpresentasikan secara biner.
-
S1
S2
1
Y 0
w1
w2
b
Masukan Target
x1 x2 1 t
1 1 1 1
1 0 1 0
0 1 1 0
0 0 1 0
Arsitektur jaringan Hebb
Fungsi logika And
-
Mula-mula semua bobot dan bias diberi nilai 0.
Untuk setiap data masukan dan target, perubahan bobot dihitung dari perkalian data masukan dan targetnya
Bobot wi baru = bobot wi lama + wi(i=1,2)
1 = 1 2 = 2 = 1.
-
Masukan Targetx1 x2 1 t1 1 1 11 0 1 00 1 1 00 0 1 0
-
Masukan Target Perubahan bobot Bobot baru(x1 x2 1) t (w1 w2 b) w1 w2 bias
inisialisasi 0 0 01 1 1 1 1 1 1 1 1 11 0 1 0 0 0 0 1 1 10 1 1 0 0 0 0 1 1 10 0 1 0 0 0 0 1 1 1
x1 x2
1 1 1.1 + 1.1 + 1 = 3 1
1 0 1.1 + 0.1 + 1 = 2 1
0 1 0.1 + 1.1 + 1 = 2 1
0 0 0.1 + 0.1 + 1 = 1 1
bwxnet ii
i
2
1 0,0
0,1{)(
jikanet
jikanetnetfy
-
Masukan Targetx1 x2 1 t1 1 1 11 0 1 -10 1 1 -10 0 1 -1
-
Masukan Target Perubahan bobot Bobot baru(x1 x2 1) t (w1 w2 b) (w1 w2 bias)
inisialisasi 0 0 01 1 1 1 1 1 1 1 1 11 0 1 -1 -1 0 -1 0 1 00 1 1 -1 0 -1 -1 0 0 -10 0 1 -1 0 0 -1 0 0 -2
x1 x2
1 1 1.0 + 1.0 + (-2) = -2 -11 0 1.0 + 0.0 + (-2) = -2 -10 1 0.0 + 1.0 + (-2) = -2 -10 0 0.0 + 0.0 + (-2) = -2 -1
bwxnet ii
i
2
1 0,1
0,1{)(
jikanet
jikanetnetfy
-
Masukan Targetx1 x2 1 t1 1 1 11 -1 1 -1-1 1 1 -1-1 -1 1 -1
-
Masukan Target Perubahan bobot Bobot baru(x1 x2 1) t (w1 w2 b) (w1 w2 bias)
inisialisasi 0 0 01 1 1 1 1 1 1 1 1 11 -1 1 -1 -1 1 -1 0 2 0-1 1 1 -1 1 -1 -1 1 1 -1-1 -1 1 -1 1 1 -1 2 2 -2
x1 x2
1 1 1.2 + 1.2 + (-2) = 2 11 -1 1.2+ -1.2 + (-2) = -2 -1-1 1 -1.2 + 1.2 + (-2) = -2 -1-1 -1 -1.2+ -1.2 + (-2) = -6 -1
bwxnet ii
i
2
1 0,1
0,1{)(
jikanet
jikanetnetfy
-
Buatlah jaringan Hebb dengan 3 masukan dan sebuah target untuk mengenali pola berikut:
Masukan Targetx1 x2 x3 t
1 1 1 11 1 0 01 0 1 00 1 1 0
-
Pada contoh 1, jaringan Hebb tidak akan mampu mengenali pola jika target keluaran=0
Minimal keluaran dijadikan bentuk bipolar
-
Masukan Targetx1 x2 x3 t
1 1 1 11 1 0 01 0 1 00 1 1 0
-
Masukan Target Perubahan Bobot Bobot Barux1 x2 x3 1 t w1 w2 w3 b w1 w2 w3 bias
inisialisasi 0 0 0 01 1 1 1 1 1 1 1 1 1 1 1 11 1 0 1 0 0 0 0 0 1 1 1 11 0 1 1 0 0 0 0 0 1 1 1 10 1 1 1 0 0 0 0 0 1 1 1 1
x1 x2 x3
1 1 1 4 11 1 0 3 11 0 1 3 10 1 1 3 1
bwxnet ii
i
2
1 0,0
0,1{)(
jikanet
jikanetnetfy
-
Masukan Targetx1 x2 x3 t
1 1 1 11 1 0 -11 0 1 -10 1 1 -1
-
Masukan Target Perubahan Bobot Bobot Barux1 x2 x3 1 t w1 w2 w3 b w1 w2 w3 bias
inisialisasi 0 0 0 01 1 1 1 1 1 1 1 1 1 1 1 11 1 0 1 -1 -1 -1 0 -1 0 0 1 01 0 1 1 -1 -1 0 -1 -1 -1 0 0 -10 1 1 1 -1 0 -1 -1 -1 -1 -1 -1 -2
x1 x2 x3
1 1 1 -5 -11 1 0 -4 -11 0 1 -4 -10 1 1 -4 -1
bwxnet ii
i
2
1 0,1
0,1{)(
jikanet
jikanetnetfy
-
Masukan Targetx1 x2 x3 t
1 1 1 11 1 -1 -11 -1 1 -1-1 1 1 -1
-
Masukan Target Perubahan Bobot Bobot Barux1 x2 x3 1 t w1 w2 w3 b w1 w2 w3 bias
inisialisasi 0 0 0 01 1 1 1 1 1 1 1 1 1 1 1 11 1 -1 1 -1 -1 -1 1 -1 0 0 2 01 -1 1 1 -1 -1 1 -1 -1 -1 1 1 -1-1 1 1 1 -1 1 -1 -1 -1 0 0 0 -2
x1 x2 x3
1 1 1 -2 -11 1 -1 -2 -11 -1 1 -2 -1-1 1 1 -2 -1
bwxnet ii
i
2
1 0,1
0,1{)(
jikanet
jikanetnetfy
-
Contoh:
Diketahui 2 buah pola huruf X dan O.
Gunakan jaringan Hebb untuk mengenali pola tersebut!
x . . . x
. x . x .
. . x . .
. x . x .
x . . . x
. x x x .
x . . . x
x . . . x
x . . . x
. x x x .
-
Untuk merepresentasikan masalah dengan jaringan Hebb, tiap karakter pola dianggap sebagai sebuah unit masukan. Misalnya karakter X dalam pola diberi nilai = 1, dan karakter O dalam pola diberi nilai = -1
Setiap pola terdiri dari 5 baris dan 5 kolom, maka jaringan Hebb terdiri dari 25 unit masukan, dan sebuah bias=1
Sebuah target diambil sebuah unit yang akan bernilai = 1 jika masukan berupa pola 1 dan bernilai = -1 jika masukan berupa pola 2
-
masukanx1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15 1 Target
x16 x17 x18 x19 x20 x21 x22 x23 x24 x25
1 -1 -1 -1 1 -1 1 -1 1 -1 -1 -1 1 -1 -1 1 1-1 1 -1 1 -1 1 -1 -1 -1 1
-1 1 1 1 -1 1 -1 -1 -1 1 1 -1 -1 -1 1 1 -11 -1 -1 -1 1 -1 1 1 1 -1
Representasi unit masukan dan target
x . . . x
. x . x .
. . x . .
. x . x .
x . . . x
. x x x .
x . . . x
x . . . x
x . . . x
. x x x .
-
Perubahan bobot
perubahan bobotdw1 dw2 dw3 dw4 dw5 dw6 dw7 dw8 dw9 dw10 dw11 dw12 Dw13 dw14 dw15 db
dw16 dw17 dw18 dw19 dw20 dw21 dw22 dw23 dw24 dw25
1 -1 -1 -1 1 -1 1 -1 1 -1 -1 -1 1 -1 -1 1-1 1 -1 1 -1 1 -1 -1 -1 1
1 -1 -1 -1 1 -1 1 1 1 -1 -1 1 1 1 -1 -1-1 1 1 1 -1 1 -1 -1 -1 1
-
bobot barux1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15 b
x16 x17 x18 x19 x20 x21 x22 x23 x24 x25
inisialisasi0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 01 -1 -1 -1 1 -1 1 -1 1 -1 -1 -1 1 -1 -1 1
-1 1 -1 1 -1 1 -1 -1 -1 12 -2 -2 -2 2 -2 2 0 2 -2 -2 0 2 0 -2 0
-2 2 0 2 -2 2 -2 -2 -2 2
Bobot baru
-
Untuk kedua pola, keluaran jaringan sama dengan target yang diinginkan
Jaringan bisa mengenali pola dengan baik
net net f(net)2 2 2 2 2 2 2 0 2 2 2 0 2 0 2 0 24 1
2 2 0 2 2 2 2 2 2 2-2 -2 -2 -2 -2 -2 -2 0 -2 -2 -2 0 -2 0 -2 0 -24 -1
-2 -2 0 -2 -2 -2 -2 -2 -2 -2
Uji pola