Anda di halaman 1dari 7

Bab 6

. ADALINE

6. I Pelatihan ADALINE
Model ADALINE (Adaptive Linear Neuron) ditemukan oleh Widrow
& Hoff (1960). Arsitekhrmya mirip dengan percephon. Beberapa
masukan (dan sebuah bias) dihubungkan langsung dengan sebuah
neuron keluaran. Per{redaan dengan perceptron adalah dal,am hal cara
modifikasi bobobrya. Bobot dimodifikasi dengan aturan delta (sering
juga disebut least mean square). Selama pelatihan, fttngei aktivasi yang
dipakai adalah funpi identitas.

net= Iri w,+b

y = f.(net) =1s1= I", w,+b


'i

Kuadrat selisih antara target (t) dan keluaran jaringan (f (ne$)


merupakan error yang terj"di.Dalam aturan delta, bobot dimodifikasi
sedemikian hingga erromya minimum

s= (r -f(net))'z=
[,-(Tr*.r))
E mertrpakan funpibobot wi. Penurunan E tercepat terjadi pada arah

+
awi= -r(,[ -(>,.,a
.ajl', = -2(t - !) *,.Maka perubahan
\? ))
bobotadalah:
u Jaringan S)araf Tiruan dan Pemrograrnannp Menggunakan lvladab ADALINE 85

/p*rop
L., = a(t - y) x, dmgan a merupakan bilangan kecil 1. Inisialisasi semua bobot dan bias dengm bobot dan bias hasil
diambil = 0,1) pelatihan .
2. Unhrksetiap inputmasukanbipolar>g lakukan :

Algorihna pelatihan ADALINE adalah sebagai berikut a. Set aktivasi unitmasukan x1 = 5i (i = 1, ..., n)

1. lrisialisasisemuabobot danbias(umttmnya w; =fu = Q) b. Hitungnetvektorkeluaran :

Tentukan laju pemahaman (=a). Untuk penyederhanaan, net = Lx,w, +b


biasanya a diberinilai kecil (= 9.1;

Tentukan toleransi kesalahan yang diijiokut c. Kenakanfungsiaktivasi :

2. Setama max Aw, > batas toleransi,lakukan : [t jikanet>o


.i t= t-t iika net <o
a. Setaktivasiunitmasukan x = si (i = 1,...,n)

b. Hitungresponunitkeluaran: net = Ix,w, +b


Contoh 6.1
Gtrnakan model ADALINE untuk mmgenali pola fungsi logika "d?t{'
Y=f (net) = fl€t
dmgan masukan dan target biPolar :
c. Perbaiki bobot pola yang kesalahan (y *t)
mmurutpersarnaon : Tabel 6.1

wi (baru) = wi (larna) + a (t-Y) xi Masukan Target

bOaru) = b[ama) + a(t-Y\ Xr

1. 1, 1

Setelah proses pelatihan selesai, ADALINE dapat dipakai untuk -1 -1


pengenalan pola. Untuk itu, trmumnya dipakai fungsi threshold
,t
-1 1 -1,
bipolar (meskipun tidak menutup kemungkinan digunakan bentuk
lainnya). Caranya adalah sebagai berikut : -1 -L -'t

Gunakanbatas toleransi= 0.05 dan a =0.1


86 Jaringan Syaraf Tiruan dan Pemrogrannnnya Menggunakan lvlatlab ADALINE

Penyelesaian r. Maksimtrm Lw,= g.g2 < tolerarsi, maka iterasi dihentikan dan bobot
Dengan d = 0.1, maka perubahan bobottya - Lwi= 0.1 (t - f(net)) xr = terakhir yang diperoleh (wr = 0.29, wz =.0.26 dan b = '0.32)
mempakan bobot yang diprrakan dalam pengenalan prolanya.
0.1 (t - y) xi. Iterasi untuk epoch-1 tampak pada tabel 6.2. Dalam tabel
6.2, f(net) = net Tabel 6.4 mempakan pengenalan pola fturgsi "da71" menggr-urakan
bobot hasil pelatihan. Perhatikan bahwa frurgsi aktivasi yang dipakai
Tabel 6.2
Lrerbeda dengan fungsi aktivasi pada pelatihan. Dalam pengenalan
Masukan y = PerubahanBobot Bobot Baru .iika net > 0
pola, fungsi aktivasinya adalah : y =
jiku net < 0
(xr xz L) net f (ne$ t-y (Lw, Lw, L,b) (wr wz b)
Tabel 6.4
Inisialisasi (0 00)
Masukan
(111) 1 001(0.1 0.1 0.1) (0.1 0.1 0.1)
(1 -1 1) -1 0.1 0.1 -1.1 C0.11 0.11 -0.11) C0.01 0.21 -0.01) X1 X2

(-1 1 1) -1 0.21. 0.2L -1.21, (0.12 -0.12 -0.12) (0.11 0.09 -0.13)
1 1 0.23 1

(-1 -1. 1) -1 -0.33 -0.33 -0.67 (0.07 0.07 -0.0n (0.18 0.16 -0.2)
1 -1 -0.29 -1

-1 1
-0.35 -1
Maksimum Aw,= g.g7 > toleransi, maka iterasi dilanjutkan untuk
epodr kedua, yang tampak pada tabel 6.3 -1 -1 -0.87 -1

Tabel 6.3 Tampak bahwa keluaran jaringan tepat sama dengan targefiya.
Disimpuikan trahwa pola dapat dikenali dengan sempruna
Masukan y= PenrbahanBobot Bobot Baru menggunakan bobot hasil pelatihan
(xr xz 1) net f (net) t- y (Lw, Lw, A,b) (wr wz b)
lrisialisasi (0.18 0.1,6 -0.2) Contoh 6.2
(1 11) 1 0.14 0.1.4 0.86
?
(0.0e 0.0e 0.0e) (0.26 0.24 -0.11) Ulangr contoh 6.l,tapimenggunakarr a =0.2
(1 -1 1) -1 -0.09 -0.09 -0.91 (-0.0e 0.0e -0.0e) (0.17 0.33 -0.2) Penyelesaian
(-1 1 1) -1 -0.04 -0.04 -0.96 (0.1 -0.1 -0.1) (0.27 0.24 -0.3) Tabel 6.5 mempakan hasil iterasi ADALINE dengan menggturakan
rl

(-1 -1. 1) -0.8 -0.8 (0.02 0.02 -0.02) (0.29


a =0.7
-1 -0.2 0.26 -0.32)
ADAI-INE 89

Tabel6.5

Masukan y= PenrbahanBobot BobotBaru


(xr xz 1) net f (net) t-y (Lw, Lw, A,b) (wr wz b)

Inisialisasi (000)
(1 11) T 0 0 1 (0.2 0.2 0.2) (0.2 0.2 0.2)
(1 -1. 1) -1 0.2 0.2 -1..2 (-0,24 0.24 -0.24) (-0.04 0.44 -0.04)

(-1 1 -1 0.M 0.M -1,.M (0.2e -0.29 -0.29) (0.25 0.15 -0.33) Gambar 6.1
1)

(-1 -1. 1) -1 -0.73 -0.73 -0.27 (0.05 0.05 -0.05) (0.3 0.21, -0.38) Keluaran dari unit tersembunyi zt dan zz adalah nilai fungsi aktivasi
(dan threshold) yang diterima dari xr dan xz. Demikian pula trnit
Maksimtrm A., = 0.05 = toleransi, maka iterasi dihentikan dan bobot keluaran Y merupakan nilai fungsi aktivasi dai zr drr zz. Meskiptur
keluaran zt dart 22 rnasing-masing menrpakan fungsi linier, tetapi
terakhir yang diperoleh (wr = 0.3, wz= 0.2\ dan b = -0'38) mempakan
keluaran Y bukanlah fungsi linier xr dan x2 karena adanya unit
bobot yang digunakan dalam pengenalan polanya. Dengan cara
tersembunyi.
seperti perhitungan tabel6.4, dapat dicek bahwa bobot yang diperoleh
akan mengenali semua pola denganbenar Adanya unit tersembunyi dalam MADALINE akan meningkatkan
Dari contoh 5.L dan 6.2 tampak bahwa penggunaan a yang lebih kapabilitas komputasi dibandingkan ADALINE, meskipu:r
pelatihannya juga lebih kompleks.
besar akan menyebabkan iterasi menjadi lebih cepat. Akan tetapi
penggunaan a yang terlalu besar akan menyebabkan iterasi Pada awal ditemukannya MADALNE (Widrow dan Hoff (1960)),
melompat terlalu jauJr sehingga melewati bobot optimaL:rya' hanya bobot ke urrit tersembunyi (wtr,wtz,w2r,w22 dalam gambar 6.1)
saja yang dimodifikasi selama proses pelatihan. Bobot ke unit keltnran

6.2 MADALINE merupakan kuantitas yang tetap. Modifikasi MADALINE (Widrow,


Winter dan Baxter (1987)) dilakukan dengan memodifikasi semua
Beberapa ADALINE dapat digabrurgkan untuk membenturk suatu bobotnya.
jaringan bam yang disebut MADALINE (many ADALINE). Dalam
'ueoru_nvr Dalam algoritma MADALINE mula-mula, bobot Y1, Yz, dan bias b:
terdapat sebuah layar tersembunyi. Gambar 6.1,
yang ditemskan ke Y diatur sedemikian hingga kelnaran Y akan = 1
menturjukkan arsitektu MADALINE turtuk 2 buah masukan xr dan
jika salah satu keluaran dari zl ataLrzz(atau keduanya) = L. Keluaran Y
x2, sebuah layar tersembunyi yang terdiri darj 2 turit neuron
tersembunyi 27 dan 22, dan sebuah keluaran Y. Arsitektr"rr = -1 jika keluaran zr mauptm Zz = -1-. Dengan kata lain, unit Y
membenhrk fungsi logika "ataLr" dengan masukan dan zr dan zz.
MADALINE untuk lebih dari 2 unit masukan (atau lebih dari 2 tnit
Maka diamtril vr = vz=Yzdanb'r=1/2.
tersembwryi) dapat dibentuk secara analog.
ADALINE 91

Algoritma pelatihan MADALINE mula-mula unttrk pola masukan Unhrk t = 1, trbah bobot ke turit ziyerrlgzinnya terdekat dengan
dan target bipolar adalah sebagai berikut : 0 (misal ke unit z*) sebagai berikut :
"

1. Irrisialisasi semrn bobot dan bias dengan bilangan acak kecil. bpbaru = bplama + a (l-r*_n)
IrLisialisasi laju pemah€unan (= a ) dengan bilangan kecil.
wpibam = wpildma + a(l-zin_p)xi
2. Selama penrbahan bobot lebih besar dari toleransi (atau jtunlah
Untuk t = -1, ubah semua bobot ke tuLit zk yau:]rg zin nya positip
epoch belttm melebihi batas yang ditenhrkan), lakukan langkah 2.1
sebagaiberikut:
_25

2.1. Set aktifuasi urrit masukdr : Xi = si unhtk semua i


brbam - brlama + a (-1.-zi,_r)
wn bam = wu lama + a (-I -zi._l) xr
2.2. Hitrrng net inpttt unhrk setiap unit tersembunyi ADALINE (zr,
ZZr,.,)

zin-i = bi+ logtko modifikasi bobot pada langkah 2.5 adalah sebagai berikut
lx,w,, :

Perhatikan MADALINE pada gambar 6.1. Jtkay+ t dan t = 1 (karena


2.3. Hitung keluaran setiap unit tersembunyi dengan menggunakan y bipolar berarti y = -1), maka f (net) di z1 = zz = -L. Unturk mengenali
fungsi aktivasi bipolar : pola, paling sedikit salah sahr dat'r z tersebut hanu dijadikan = 1.
Bobot yang dimodifikasi adalah bobot ke unit z yau.lg nebrya paling
It jika t,r-i)0 dekat dengan 0. Misalkan rurti z yang keluarannya terdekat dengan 0
4=f(zo-)= jika adalah z*,. Maka bobot danbias dimodifikasi menumtpersalnaan :
{_, ',, i10
b*,bam = bplama + a (1,-zin_p)
2.4. Tentukan keluaran jaringan
wpibam = wpi lztma + a (l-zin_p) xi
y-i. = bu+ lz,v, Sebaliknya jtka y+ tdan t = -1(dengankata lain y =\),berartiminimal
salah satu z memiliki f(net) = 1 (atau ada z yang nebrya positip).
jika y,,,> 0 Padahal semua z hams memiliki f(net) = -L. Maka bobot yang
Y=ftr;= {1, jika y,, <0 dimodifikasi adalah bobot yang nehrya positip (misal unit z1) menumt
persamaan:

br.bam = brlama + a(-1,-zin_u)


2.5. Hitr.rrg error dan tenhrkan penrbahan bobot
wribam = wu lama + a (-l-zi._r) xi
]ika y = target, maka tidak dilakukan penrbahan bobot

Jika y *targct:
99. Jaringan Syaraf Tiruan dan Pemrograrnanrrya Menggunakan Matlab ADALINE
93

Contoh 6.2 Bobotke urritkeluaran Yadalah I V1 = y2 =b =/2.


Gunakan MADALINE mtila-mtda unhrk mengenali pola frurgsi logika
"XOR" dengan2 masukan xr dan xz. Gurakan a =0.5 dan toleransi =
0.1

Penyelesaian

Furgsi logika "XOR" memiliki pasangan masukan-target seperti yang


tampak pada tabel6.6

Tabel 6.6
0.15
Masukan Target (11
Xrx2t Gamba r 6.2

11-1 Disini hanya akan dilaktrkan iterasi unhrk pola pertama saja. pelatihan
pola-pola selanjukrya dilakukan secara onitog dan diserahkan kepada
1-1 1
prembaca unhrk la tihan.

-1 11 Pola-1 : Masukan I X1 =1, x2=1,t--'),


-1 -1 -1
2.2 Hihng net rurhrk unit tersemburryi z1 dan zz:
hrisialisasi dilakukan pada semua bobot ke unit tersembunyi dengan zin-t = br *xr w11 *X2w12 = 0.3+ 1 (0.05) + 1 (0.2) = 0.55
suahr bilangan acak kecil. Misalkan didapat hasil seperti pada tabel 6.7
ZinJ = bz+xr wz.t*Xzwz2 = 0.15+ 1(0.1)+ 1(0.2) 0.45
Tabel67 =
2.3 Hihrng keluaran_urrit tersembunyt zr d,an 22 menggunakan fungsi
Ke turit tersembunyi aktivasi bipolar. Didapat

Dari unit 27 22 zr=f(zn_i =L dan zz=f(zin_z)=1.


Xt wrr = 0.05 wzt = 0.L 2.4 Tenhlkankeluaran jaringany :

x2 wn=0.2 wn=0.2 /-i" = br*ZtYt*zzyz = 0.5+1(0.5)+1(0.5) = 1.5

bias bi = 0.3 bz = 0.15 MakaY=f(y--i.)=t


ADALINE

2.5t-y = -1 -1 = -2+0 dan t=-l.Makasemtlabobotyang Iterasi dilakukan ,ntuk semua pola. Apabila ada perubahan bobot
menghasilkdn z_nyang positip dimodifikasi. Karena zn-t) 0 dan vang masih lebih besar dari batas toleransi, {naka iierasi dilanjutkan
znJ) 0, maka semtnbobotrrya dimodifikasi sebagaiberikut: unhrk epoch-2 dan seterursnya.

Penrbahan bobot ke turit tersembunyi z1 :


SOAL.SOAL LATIHAI\I
brbam = ll1lama + a(-1'-z,n-t) = 0.3+0.5(-1-0.55) = -0'475
L-. Apakah kelebihan ADALINE dibandingkan dengan percephon ?

wrrbam - wlllama + a (-1-2i,,-t) xt = 0.05 +0'5 (-1-0'55) =-0'725 A-- Lnangi contoh 6.2 dengan menggunakan masukan dan target biner
wrz bam = wr2lama + d. (-1 - zn-r) xz= 0.2 + 0.5 (-1 - 0.55) = -0.575 Ot*anbipolar)

Penrbahan bobot ke unit tersembtrnyi zz : 3. Gunakan ADALINE unhrk mengenali fungsi logika ,,dar(,dengan
3btrah masukan (a =0.5 dan toleransi = 0.1).
bzbam - bzlama + a (-1.-z--z) = 0.15 +0.5 (-1 -0.45) = -0.575
4. selesaikan soal latihan #5 pada bab 4 (model Hebb) menggtrnakan
wzr bam = wl lama + a (-1- zn2) x1= 0.1 + 0.5 (-1 - 0.45) = -0.625 ADALINEdengan a=0.5, bobotawal=0, dan tolerarsi
= 0.1.

wzbam = w?2lama + a (-1 - znt) xz=0'2 +0.5 (-1 - 0.45) = -0'525

Tabel 6.8 merupakan pengecekan penrbahan nilai bobot :

Tabel6.8

Bobot
mula
mula- Bobot setelah
iterasi
llrl
br 0.3 -0.475 0.775

wl1 0.05 -0.725 0,73

wtz 0.2 -0.575 0.n5

bz 0.15 -0.575 0.725

wzr 0.1 -0.625 0.725

Wn 0.2 -0.525 0.725

Karena masih ada (bahkan semua) perubahan bobot > toleransi yang
ditetapkan, maka iterasi dilanjutkan unhrk pola 2.

Anda mungkin juga menyukai