MODEL HEBB
Kelemahan model McCulloch-Pitts adalah penentuan
bobot garis dan bias yang secara analitik. Untuk masalah yang kompleks, hal ini
akan sangat sulit dilakukan.
Tahun 1949, Donald Hebb memperkenalkan cara menghitung bobot
dan bias secara iteratif. Model Hebb adalah model tertua yang
menggunakan aturan supervisi.
Dasar algoritma Hebb adalah: kenyataan bahwa apabila
dua neuron yang dihubungkan dengan sinapsis secara serentak menjadi aktif
(sama-sama benilai positif atau negatif), maka kekuatan sinapisnya meningkat.
Sebaliknya, apabila kedua neuron aktif secara tidak sinkron (salah satu
bernilai positif dan yang lain benilai negatif), maka kekuatan sinapsis akan
melemah Karena itulah, dalam setiap iterasi, bobot sinapis dan bias diubah
berdasarkan perkalian neuron-2 di kedua sisinya. Untuk jaringan layar tunggal
dengan 1 unit keluaran dimana semua unit masukan xi terhubung langsung dengan
unit keluaran y, maka perubahan bobot dilakukan berdasarkan persamaan:
wi (baru)= wi (lama) + xi*y
Algoritma Hebb:
Inisialisasi semua bobot = wi = 0 (i =
1,2,…,n)
Bobot awal diset wi = 0 (i =
1,2,…,n) dan b = 0
Untuk semua vektor input s dan unit target t,
lakukan:
–Set aktivasi unit masukan: xi = si (i = 1,2,…,n)
–Set aktivasi unit keluaran: y = t
–Perbaiki bobot menurut persamaan:
*wi baru = wi lama + ∆w (i = 1,2,…,n) dengan
*∆w = xi * t
–Set aktivasi unit masukan: xi = si (i = 1,2,…,n)
–Set aktivasi unit keluaran: y = t
–Perbaiki bobot menurut persamaan:
*wi baru = wi lama + ∆w (i = 1,2,…,n) dengan
*∆w = xi * t
Perbaiki bias menurut persamaan bbaru = blama+ t
Contoh perhitungan manual dari model Hebb untuk
menyelesaikan fungsi logika “AND 3 inputan” dengan input output bipolar :
Bipolar artinya biner 0 = -1 dan 1 = 1.
Berikut ini adalah tabel kebenaran untuk logika AND dengan 3
inputan (dengan input output bipolar):
x1
|
x2
|
x3
|
Y
|
-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
|
Solusinya:
Y = t
Δwi=xi*t
atau Δwb=b*t
∂wi=wi lama +
Δwi
dengan bobot awal w=0 dan b=0
keterangan:
t –> target atau output yang seharusnya
Δwi –> bobot inputan ke i
∂wi –> bobot baru inputan ke i
b –> bias
t –> target atau output yang seharusnya
Δwi –> bobot inputan ke i
∂wi –> bobot baru inputan ke i
b –> bias
x1
|
x2
|
x3
|
b
|
t
|
Δw1
|
Δw2
|
Δw3
|
Δwb
|
∂w1
|
∂w2
|
∂w3
|
∂wb
|
-1
|
-1
|
-1
|
1
|
-1
|
1
|
1
|
1
|
-1
|
1
|
1
|
1
|
-1
|
-1
|
-1
|
1
|
1
|
-1
|
1
|
1
|
-1
|
-1
|
2
|
2
|
0
|
-2
|
-1
|
1
|
-1
|
1
|
-1
|
1
|
-1
|
1
|
-1
|
3
|
1
|
1
|
-3
|
-1
|
1
|
1
|
1
|
-1
|
1
|
-1
|
-1
|
-1
|
4
|
0
|
0
|
-4
|
1
|
-1
|
-1
|
1
|
-1
|
-1
|
1
|
1
|
-1
|
3
|
1
|
1
|
-5
|
1
|
-1
|
1
|
1
|
-1
|
-1
|
1
|
-1
|
-1
|
2
|
2
|
0
|
-6
|
1
|
1
|
-1
|
1
|
-1
|
-1
|
-1
|
1
|
-1
|
1
|
1
|
1
|
-7
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
2
|
2
|
2
|
-6
|
Bobot baru jaringan hasil training:
w1 = 2 w2 = 2 w3 = 2 wb = -6
w1 = 2 w2 = 2 w3 = 2 wb = -6
Simulasi:
w1
|
w2
|
w3
|
net=∑(xi*wi)+wb
|
Y = f(net) = 1 if net>=0
Y = f(net) = -1 if net<0
|
-1
|
-1
|
-1
|
(-1*2)+(-1*2)+(-1*2)+(-6)
|
-1
|
-1
|
-1
|
1
|
(-1*2)+(-1*2)+(1*2)+(-6)
|
-1
|
-1
|
1
|
-1
|
(-1*2)+(1*2)+(-1*2)+(-6)
|
-1
|
-1
|
1
|
1
|
(-1*2)+(1*2)+(1*2)+(-6)
|
-1
|
1
|
-1
|
-1
|
(1*2)+(-1*2)+(-1*2)+(-6)
|
-1
|
1
|
-1
|
1
|
(1*2)+(-1*2)+(1*2)+(-6)
|
-1
|
1
|
1
|
-1
|
(1*2)+(1*2)+(-1*2)+(-6)
|
-1
|
1
|
1
|
1
|
(1*2)+(1*2)+(1*2)+(-6)
|
1
|
Lihat hasil Y pada tabel di atas, pola tersebut sama dengan
t (target), artinya pola dikenali oleh jaringan.
Program dari model Hebb untuk menyelesaikan fungsi logika
AND 3 inputan dengan fungsi input output bipolar