Anda di halaman 1dari 12

Mo,ob

Masukan
X1
Target
Bab 5
I 1
I I 1
-[ 1
PERCEPTRON
-1 1 -L -i 1
I
I
1 1
I -7 -1
1
I 1
-1 -1 1
I Model jaringan percepkon ditemukan oleh Rosenbratt (1962) dan
-7
Minsky - Papert (1969). Model tersebut merupakan model yang
mcmiliki aplikasi dan pelatihan yang paling baik pada era tersebut.

5. I Arsitektur faringan
Arsitektr,u jaringan percepkon mirip dengan arsitekttu jari.g* Hebb.

Gambar 5.1

]aringan terdiri dari beberapa unit masukan (ditambah sebuah bias),


dan memiliki sebuah unit keluaran. Hanya saja fr-rngsi aktivasi bukan
merupakan fungsi biner (atau bipolar), tetapi memiliki kemungkinan
nilai -1,0 atau 1.

UntLrk suahl harga threshold 0 y^gditenhrkan :


(t jika net > 0
ft .iika net > 0
f (net) = jika -0<net<0 jika -g<net<0
y=f(neg = l0
{:, jika net < -0
[-1 iika net < -0
secara geometris, f'ngsi aktivasi membentuk 2 gais sekaligus, ('. (y
masing-masing dengan persanuan Perbaiki bobot pola yang mengandung kesalahan +0
:
menurutpersarnaan :
wlt + w2x2 +...+ wnxn + b =0 dan Aw (i=1,..',n) dengan Aw= dtxi
wi(baru) = wi(lama) +
wtxt + w2x2 + ... + wnxn + b = -0
b(baru) = b(lama)+ Ab dengan Lb= at
Atla beberapa hal yang perlu diperhatikan dalam algoritma tersebut :

5.2 Pelatihan Perceptron ,r, lterasi dilakukan terus hingga semua pola memiliki keluaran
jaringan yang sama dengan targetrya faringan sudah memahami
Misalkan pola). Iterasi tidakberhenti setelah semua pola dimasukkan seperti
yang terjadi pada model Hebb
s adalah vektor masukan dan t adalah target keluaran
h. Pada langkah 2 (c), penrbahan bobot hanya dilakukan pada pola
a adalahlajupemahaman (leaming rate) yang ditentukan
yang mengandung kesalahan (keluaran jaringan * target)'
0 adalah tlreshold y Nrgditenhrkan Penrbahan tersebut merupakan hasil kali unit masukan dengan
target dan laju pemahaman. Perubahan bobot hanya akan terjadi
Algoritma pelatihan perceptron adalah sebagai berikut :
kalauurLitmasukan * 0.

1. kLisialisasi semrla bobot dan bias (umumnya wi =b = 0) c. Kecepatan iterasi ditenhrkan pula oleh laju pemahaman (=6v
dengan 0 <a <1) yang dipakai. Semakin besar hargd d,
]enturkan laju pemahaman (=a). Untuk penyederhanaan, semakin sedikit iterasi yang diperlukan. Akan tetapi ika a terlalu
biasanya adibeinilai=1
besar, maka akan merusak pola yang sudah benar sehingga
selama ada elemen vektor masukan yang respon unit keruarannya pemahaman menjadi lambat.
tidak sama dengan target, lakukan :
Algoritma pelatihan perceptron lebih baik dibandingkan model Hebb
a. Set aktivasi unit masukan q karena:
x1 = (i = I, ...,n)
1. Setiap kali sebuah pola dimasukkan, hasil keluaran jaringan
b. Hitungresponunitkeluaran : net =| x,w, +b clibandingkan dengan target yang sesungguhnya. Jika terdapat
perbedaan, maka l)(rbot akan dimodifikasi. Jadi tidak semua bobot
sclaltr d imodifi kas i tl a lam schiap iterasinya'
Syaraf Tiruan dan
I't l{(.IPTRON 63

Modifikasi bobot tidak hanya ditenturkan oleh perkalian antara


target dengan masukan, tapi jugu melibatkan suatur laju jika net > 0
pemahaman (leaming rate) yangbesamya bisa diatur. y I (net) = jikct net = 0
Pelatihan dilaktrkan berulang-ulang t*rtuk semra kemungkinan {' I jika net <0
pola yang ada hingga jaringan dapat mengerti polanya qaianaai
dengan sanunya semua keluaran jaringan d"rrg* target keh,aran lh'r'asi untr,rk selunrh pola yang ada disebut epoch Tabel 5.2
yang diing:nkan). satu sikl's pelatihan yang melibuttut semua rrrt'ntnjukkan hasil pada epoch pertama.
q9l1 disebut epoch. Dalam jaringan H"bb, pelatihan hanya Tabel5.2
dilakukan dalam safu epoch saja. Teorema konveigensi perceptron
menyatakan bahwa apabila ada bobot yang tepat, pro*, Masukan Target y Perubahan Bobot Bobot Bam
pelatihan akan konvergen ke bobot yang tepat teisebut.-iku ljt^r = b (i
1 (xr xz 1) t net =f (net) (Lw, Lw, Ab) (wr wz b)
Contoh 5.1
inisialisasi (0 0 o)
Buatlah perceptron untr-rk mengenali f'ngsi logika ,,dar{, dengan t -t,I
masukan dan keluaran bipolar. unhlk inisiilisasi,-gr.nakan
bobbt jan
(r 1 1) 0
9
(1 1. 1) (1 1 1)
biasawal=0, a =1dan threshold= 0=0
(1 -1 1) -1
-l -l <t,t
1 cl 1 -1) (O 2 9)
o <2<o
Penyelesaian
(-i 1 1) 1
2 (1 1
-l) (1 1
I -1)
Tabel masukan dan target fungsi logika "da{'dengan masukan dan
keluaran bipolar tampak dalam tabel5.1
(-1 -1 1) -1 -3 (0' 0' 0)-' (1 1 -1) ' "'l -f

I'ada input pertama (xr, *, 1) = (1 1 1). Harga net dihitung


Tabel 5.i
berdasarkan bobot yang sudah ada sebelumnya yaihr (wr w*2 b)=(0
Masukan Target 0 0).Makanet = Zr,*,+b = 1(0)+1(0)+0 = Osehingga
f (net) = c:'1 t+o
11+-t"1 +r:
f(0)= g
Xr I,I :
I -l+r
I
Kelttaran jaringan (= f(net) = 0) tidak sama dengan target yang
,t
diinginkan (dalam iterasi ini adalah I), maka bobot diubah
rnenggunakan rL[nusan Aw = dtXi = lY, (karena a=I).Bobot
1
1 1 -7
-l

-1 -1
L.rarLr = bobotlama+ Aw
1

-1 _1 -x Input pola kedua dan seterusnya dihitung secara analog. Pada pola
tcrakhir (*t, *, 1) = (-1 -1 1), harga f(net) = -1 y*g sama dengan
targchrya. Maka bobot tidak diubah. Hal ini dinyatakan dengan
Untuk threshold = Q maka {r.rngsi aktivasi menjadi :
konclisi Aw=0
64 Jaringan Sfraf Tiruan PERCEPTRON 65

Perhatikan bagaimana perubahan persamaan garis yang terbentuk memisahkan dengan benar pola L dan 4. Garis pada gambar 5.2 (ll)
dalam setiap pola input. Garis pemisah pola terbentuk dari persamaan memisahkan dengan benar pola 1, 2 dan 4. Berikukrya garis pada
w4t+wrx, *b= 0 dan wflt+w2xz+b=-0 " Karena d = 0 maka gambar 5.2 (c) memisahkan dengan benar semua pola menjadi 2
hanya terbentuk sebuah garis saja. bagian.

{Hasil iterasi pola pertam? I w1 = 1, w2 = 1 dan b = 1. Maka garis Mengingat tidak semua f(net) pada tabel 5.2 sama dengan target t,
pemiSahnya memiliki persaruan I Xr * xz * 1- = 0 (atau xt-t x2 = -t), maka iterasi dilanjutkan pada epoch kedua. Semua pola kembali
yang secara geometris dapat digambarkan pada gambar 5.2 (a). dimasukkan ke jaringan dengan menggunakan bobot terakhir yang
Vt* dz . -\ (r-t /t .t diperoleh sebagai bobot awalrrya. Diperoleh hasil iterasi seperti yang
Xz, o
tampak pada tabel5.4

Daiam iterasi tersebut, r"rrtr,rk semrn pola nilai f (net) = t sehingga


tidak dilakukanperubahanbobot. Karena f (ne$ = t untuk semua pola
maka jaringan sudah mengenal semua pola sehingga iterasi
dihentikan.

Tabel5.4
Cambar 5.2(a)
Gambar 5.2(a) 5.2(b)
Garnbar 5.2 fb) Gambar 5.2 (c)
Masukan Target y PerubahanBobot BobotBaru
Persamaan garis unhrk tiap iterasi tampak pada tabel5.3
(x1 xz 1) t net =f (net) (Lw, Lw, Ab) (wr wz b)
Tabel 5.3
bobot yang diperoleh dari epoch pertama (1 L -1)
Masukan BobotBam Persamaan

(x,
(1 1 1) 111(000) (1 1. -1)
xr 1) (wr wz b) Garis

(i 1. 1) (1 1
1) X1*X2=-l
(1 -1. 1) -7 -1 -1 (00 0) (r1 9
(1 -1 1) (0 z 0) Xz=0
(-1 1 r) -1, -1 -1 (00 0) (1 1 ,ir

(-1 1 i) (1 1 -1) Xt*xz=1


(-1 -1 1) -1 -3 -1 (00 0) (1 1 -1)

(-1 -1 1) (1 1 -1) X1*x2=l


Contoh 5.2
Ulangi contoh 5.1, tapi menggunakan masukan biner dan keluaran
Gambar 5.2 (a) - (b) masing-masing menunjukkan garis pemisalr bipolar.Gturakana=1 danthreshold = 0 =0.2
untr"rk pola 1 dan pola ke-2, sedangkan gambar 5.2 (c) rrrt'rrtrrriukkan
garis pola 3 dan 4. Tampak bahwa pada garnbitr 5.ll (,r), garis
66 jorintjorr Syoraf Tiruan dan Pemrogramannya Menggunakan Matlab PERCEPTRON

Penyclcsrtinn sebagai contoh, setelah pola pertama dimasukkan, maka garis yang
terbentuk memilikipersamaan xt + x2 +I = 0.2 (atau x, * x,
Dcngirrr llm:slruld = 0.2, maka fungsi aktivasi menjadi : =_0.g )
dan x, + x2 +l = -0.2 (atau x, * x, = -l.Z).Garis ini akan mengenali
It jika net > 0.2 pola pertama dan terakhir (lihat gambar 5.3).
jika -0.2<net<0.2
I

y=f (net) = J0
[-l
I

jika net <-0.2


Tabel5.5 adalah hasil iterasi epoch pertama

Tabel5.5

Masukan Target y Penrbahan Bobot Bobot Bam

(xr xz 1) t net =f (net) (Lw, Lw, Lb) (wr wr b) x,*\= -1 '2

,lii Gambar 5.3


i inisialisasi (0oo) 'rabel 5.6 adalah hasil iterasi
t epoch kedua. Tampak bahwa belum
li'{ (1 11) 1 0 0 (1 I 1) (111) scmua pola dikenali. Hanya pola terakhir saja yang memiliki f (net) 1
=
f;: (101) -1 2 1
I (-1 0 -1) (0 1 0) Tabel5.6
l'r
II
(011) -1 7 I (0 -1 -1) (0 0 -1) Masukan Target y Perubahan Bobot Bobot Bam
(001) -1 -1 -I (0 0 0) (0 0 -1) (xr xz 1) t =f (net) (Lw, Lw,
net Ab) (wr wz b)
Tampak hanya pola masukan terakhir saja yangbenar (f(net) = target).
Maka iterasi harus dilanjutkan ke epoch berikukrya.
cpoch 2: Bobot dari epoch - 1 (0 0 -1)
Perhatikan bahwa dengan threshold yang * 0, maka akan
terbentuk 2
(r 1 1) 1 -1 -1. (1 1. 1) (110)
buah garis pemisah pola. Dalam contoh ini, persamaan garis yang (r01) -1 11(-1 0 -1) (0 1 -1)
terbentr-rkadalah wlxt+w2x2+b =0.2 dan wrx, +w2x2+b= -0.2.
(011) -1 00(0 -1 -1) (0 0 -2)
(001) -1 -2 -1 (0 0 0) (0 0 -2)
lk'rlsi dilanjutkan untuk epoch ketiga dan setenunya. Hasii iterasi
l,uttP,rk clalam talrcl 5.7
PERCEPTRON 69
68 Jaringan Syaraf Tiruan dan Pemrogramanrrya Menggunakan Matlab

Tabel5.7 (0 11) -1 -1, -1 (0 0 0) (1 2 -3)

Masukan Target y PerubahanBobot BobotBaru (001) -1. -3 -1. (0 0 0) (1 2 -3)

(xr xz L) t =f (ne0 (Lw, Lw, Ab) (wr wz b) epoch 7:

epoch 3:
(1 11) 1 0 0 (1 1
t 1) (2 3 -2)

(111) 1 -2 -1. (1 1 1) (1 1 -1) (101) -1. 0 0 (-1 0 -1) (1 3 -3)

(1 01) -1 0 0 (-1 0 -1) (0 1 -2) (0 11) -1 0 0 (0 -1 -1) (1 2 -4)

(0 11) -L -1. -1 (0 0 0) (0 1 -2) (001) -1 -4 -1 (0 0 0) (1 2 -4)

(001) -1, -L
o -1 (0 0 0) (0 1 -2) epoch 8:

epoch 4 :
(111) 1 -1 -1, (1 1 1) (2 3 -3)
(111) 7 -7 -1 (1 1 1) (1 2 -1) (1 01) -1 -1 -1, (o 0 0) (2 3 -3)
(1 01) -1 0 0 (-1 0 -1) (0 2 -2) Q11) -1 0 0 (0 -I -1) (2 2 -4)
(0 11) -7 0 0 (0 -1. -1) (0 1 -3) (001) -1 -4 -1. (0 0 0) Q2-4)
(001) -1 -3 -1 (o 0 o) (0 1 -3) epoch 9:

epoch 5:
(r 1 1) 1 0 0 (1 1 1) (3 3 -3)
(111) 1
o
-L -1 (1 L 1) (1 2 -2) (l 0 1) -1 0 0 (-1 0 -1) (2 3 -4)
(1 01) -1 -1 -1 (0 0 0) (1 2 -2) (0 11) -1 -1. -1 (0 0 o) Q3-4)
(0 11) -1 0 0 (o -L -1) (1 1 -3) (001) -1 -4 -1 (0 0 0) (2 3 -4)
(001) -1 -3 -7 (0 0 0) (1 1 -3) t'poch 10:

epoch 6:
(r 1 1) 1 1 1 (00 0) (2 3 -4)

1) Q2-2) (r 0 1) -1 -2 -7 (00 o) (2 3 -4)


(111) 1-1-1(11
(0 11) -7 -1 -1 (00 0) (2 3 -4)
'1 01) -1.00(-10 -1) (1 2 -3)
(001) -1 -4 --l (00 0) (2 3 -4)
70 Jaringan Syaraf Tiruon dan pemrsgramannya Menggunakan Matlab
14
I'I.RCEPTRON !l

Setelah 10 epoctr" semua f(net) = t sehingga jaringan telah mengenal


pola dan iterasi dihentikan. Persamaan garisnya adalah 2xt + 3xz- 4 Tabel5.8
=
0.2 (atau 2xt + 3xz= 4.2) dan 2xr +3xz-4= -0.2 (atau 2x1 +3x2 = 3.g1
Masukan Target

1 1 I 1.
2xr+3ry= 4.2
_t I 0 -7

a
2x,+35 - 3.6 0 1 -1

0 1 1 -7

Gambar5.4

Contoh 5.3
Iterasi yang dilakukan tampak pada tabel5.9. Kolom perubahan bobot
Diketahui perceptron dengan 3 masukan biner x1, x2, X3, sebuah bias yangkosongberarti (Lw, Lw., Lw, A,b) = (0 0 0 0).Initeryadijika
dan sebuah keluaran bipolar. carilah bobot yang akan mengenali pola f (net) = t
sebagai berikut : target keluaran bemilai 1 apabila r"-.ti masukan
bemilai 1, dan target bemilai = -1 apabila tepat sarah sahr dari Tabel5.9
masukan bernilai 0 (tidak diketahui bagaimana target apabila ad.a 2
atau lebih masukan yang bemilai 0). Gtrnakan bobot awal dan bias Masukan Target v PenrbahanBobot BobotBaru
=
0 dengan laju pemahaman = a =1, dan threshold = 0 = 0.L (xr xz xr 1) t net = f (net) (Lw., Lw.- Lw. A,b ) (*t wz wrb)
Penyelesaian
epoch 1 : inisialisasi (ooo)
Bentuk pola masukan dan targefrya tampak pada taber 5.g. Bentuk ini
sama dengan pola yang tidak dapat diselesaikan dengan model Hebb
(1 11 1) | 0 0 (1 1 1 i) (1111)
pada contoh 4.2 (1 10 1) -1 a
J 1. (-1 -7 0 -1) (0010)
(1 01 1) -1 I 1 (-1 0 -1 -1)(-100-1)
(0 11 1) 1
-t -1 -1 (-1 0 0 -1)
epoch2:
(11 11) 7-2 -1 (11L1) (0 110)
(l 1 0 1) -1 I (-1 -1 0 -1) (-1
01-1)
Jaringan Syaraf Tiruan dan Pemrogrannnrrya Menggunakan Matlab
IIIRCEPTRON 73

(1011) -1. -1 (-101 e;xrch 10 :

(0 111) 00 -1)C1 -1 0-
ilr11) 1 -3 -1 (1 1) (1 1. 2 -3)
epoch3: (r r 0 1) -1 -1 -1 (1 L2-3)
(11.11) 1 -4 -1. 1) (001-1) (r 0 1 1) -1 0 0 (-1 0 -1 -1) (0 1 1, -4)
(1 101) -1 -1 -1, (001-1) (0 I11) -1 -2 -1 (011-4)
(1011) -1 0 0 -1)(-100-2) e;xrch 20 :

(0 111) -1 -2 -1 (-1 0 0 -2) (l I 1 1) 7 -2 -1 (1 t)(224-6)


epoch4: (l I 0 1) -1 -2 -1 (224-6)
(11 11) 1. -3 -1 (1 11 1)(011-1) (r 0 1 1) -1 0 0 (-1 0 -1 -1)(123-7)
(1 101) -1 0 0 (-1 -'1. 0 -1)(-101-2) (t| l 1 1) -1 -2 -1 (123-n
(1 011) -1 -2 -1 (-1 0 1 -2) ep<rch 25 :

(0 111) (-1 0 1 -2) (l I 1 1)


-'t -1. -1,
1 0 0 (1 11 1)(344-n
epochS: (l I 0 1) (-1 -1.
-1 0 0 0 -1)(234-8)
(11 11) 1 -zo -1, (1 11 1) (0 1. 2 -1) (r 0 1 1) ,Q 3 4 -8)
-1 o
-L -1

(1101) -1 0 0 (-1 -L 0 -1)(-1 02-2) (0 I11) -1 -1 -1 (2s4-8)


(1 011) -1 -T -7 (-1 0 2 -2) t.poch 26 :

(0 111) -1. 0 0 -1) C1 -1 1 -3) (l l 1 1) 'l


7 1
Q34-8)
dan seterusnya ...
(l I 0 1) -1 -3 -1 Q34-8)
(l o 1 1) -1, -2 -1 (234-8)
(0 I11) -1 -1 -1. (234-8)
ff|{( II)TRON 75

Tampak bahwa jaringan dapat mengenali semua pola yang diberikan


setelah 26 epoch. Tampak disini keunggulan perceptron dibandingkan ## 44 4 44U
tt t+ tt t
model Hebb. stsunan pola yang tidak dapat dikenali oreh model .* 4 4
4
.]t
Hebb temyata dapat dikenali oleh perceptron. 4!
t+.1+- 11

##
trt- --- l+
u4444 # ;
5.3 Pengenalan Pola Karakter il#
il##tr*
+ #
lt # -t+4 #
Perceptron dapat pula dipakai untr-rk mengenali pola karakter. Dengan ilil# ### ; ;'* 4 *';;
berbagai pola masukan yang menyempai humf-humf alphabeth, Pola 1 Pola 2 Pola 3
perceptron dapat dilatih untr-rk mengenalinya.

t+ 11
tt tl # .t4 J+ 4
ttfr 1+
tfifr.
4 .t1

5.3.1 Pengenalan Sebuah Pola Karakter 11


. ++
fr #+t
tr 4
tr 1+ l+ .E

1 1
Algoritma untuk mengenali apakah pola masukan yang diberikan 11 1+ ! 4 4
t
menyerupai sebuah karakter tertenfu (misal *i.ip hunrf ,,A,,) atau
'fl,r t+
rl
,t.r4# 44 u444
t+ t+ t+ t+
4
tf
tidak adalah sebagai berikut : fi.# 4 + #
urli ::
B4444
ttfrtrtr 4 J+ 1+4
l+.
1. Nyatakan tiop pola masukan sebagai vektor bipolar yang tt# 4 'l+
,li
i,i;,r elemennya adalah tiap titik dalampola tersebut. sJl
ttf l+
tt 1+ 4
tttt
4.tl1+
+t

.,ffrt 1.tJ].4
l+

l',l, .,

2. Berikan nilai target = +1 jika pola masukan menyerupai humf Fola 4 Pola 5 Pola 6

yang diinginkan. Jika sebaliknya, berikan nilai target = -1


Cambar 5.5
a
J. Berikan inisialisasi bobot, bias, laju pemahaman dmr threshold
flrrirtlahmodelperceptrontrrtr,rkmengenali pola " A": t

4. Lakukan proses pelafihan perceptron seperti bab 5.2


I'cnyelesaian
lJrrtrrk menentukan vektor mastrkan, tiap titik dalam pola diambil
r't'lrirgfi komponen vektor. Jadi tiap vektor masukan memiliki 9*7 = 63
Contoh 5.4
korrrponen. Titik dalam pola yang bertanda "#" dlbeinilai = +1 dan
Diketahtri 6buahpola masukan seperti gambar 5.5 : litik bcrtanda "." diberi nilai -1. Pembacaan pola dilakukan dari kiri
kt' kiuran, dimulai dari baris paling atas"

Vt'ktor masukan pola 1 adaiah

(r-111-1-1-1 -1 1-1-1-1 -1-1-1 1-1-1-1


-1, -1
| -r 1 -1 1 -1 -1 -1 1-11-1-1 -1.L1117-1,
-1
I l-1 -1 -'l 1-1 -1 -1-7-'t1-1 1 1 1-1 1 1 1)
1
PERCEPTRON 77
76 Jorlngon Syorof Tiruan dan Pemrogrannnrrya Menggunakan l4atlab

Vektor masukirn pola 2 adalah Tabel5.10

(11 1 1 1 1-1 -1.1.-1.-1.-1,-1,1 -11-1-1-1-11 Pola Masukan Target


-11-1-1-1-11. -r11 1 1 1-1 -1. 1. -1. -1 -1 -1 1,
Pola
-1 1 -1 -1 -1 -1 1 -1 1. -1. -1. -1 -1, 1, 1 1 1. 1 1. 1 -1) 1 7

Pola 2 -7
Vektor masukan poia 3 adalah
Pola 3 -1
(-1 -1 1 1 1 1 1 --i.1 -1. -1. -L -1 1 1 -1 -1 -L -1, -1,
-1.
1.-1. -1. -1, -r -1. -1. -1 1 -1 -1 -1 -L -1 1. -1. -1. -1, -1 -1, -1, Pola 4 1.

1 -1-1-1-1-1-1 -11-1-1-L-1 1 -1-1 1 1 1 1-1)


Pola 5 -7
Vektor masukan pola 4 adalah
Pola 6 -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. -L 1, -1, -1, -1 -1. 1 -1 1 -1 -1 -1 1. -1. -'1. -r 1 -1 Maka perceptron yang dipakai unnrk mengenali pola huruf " A" (atart
-1,1, 1 1 1 1 -1 -1. 1-1-7 -11-1 -1, 1,-1, -1, -'1,1-1) btrkan "A") memiliki 63 urdt masukan, sebuah bias dan sebuah unit
kcluaran.
l,4i Vektor masukan pola 5 adalah
'1,ril Misalkan bobot awal diambil = 0 untuk semua bobot maupun bias,
\i1l (11 1,1,1 1-1 1-1-1-t-r-1'1. 1.-r-1,-1, -1-11 laju pemahaman diambil a =-I.. dan threshold = 0.5
ill , 1-1.-r-1-1,-1 1 1 r1.1 1 't,-1. 1.-1-L -1-1-11
',
1.-1.-1,-1,-'t-1.1 1-1.-1.-1 -1-11 1,t 1 1 1 1-1) I'clatihan dilakukan dengan cara memasukkan 63 unit masukan (atau

Vektor masukanpola 6 adalah scbuah pola hurrf). Dihihrng net = Ix,w,+b. Berikubrya, fungsi
i=t't
(-1 -1 1 1. 1. -L -1. -1 1. -1. -t -1 1 -1 L -1 -1 -1. -1. -1. 1.
n khivasi dihitung menggunakan persalnaan
1 -1. -1 -L -1. -1. -1 1 -1 -1 -1. -1. -1. -1 -1 -1 -1 -1
1. -1. -1.
1 -1-1-1-1 -L 1" -1. 1. -1 -1. -1 1 -1 -7 -1, 1 1 1 -1 -1) It jika net > 0.5
Target bemilai = +1 bila pola masukan menyerupai huruf "A". Jika
y=f (net) = j0 jika -0.5<net<0.5
tidak, maka target bemilai = -1. Pola yang menyerupai hu.ruf "A" l-t jika net < -0.5
adalah pola 1 dan pola 4. Pasangan pola dan targetnya tampak pada
tabel5.L0 Alrirbila f (net) * target, maka bobot dan bias diubah

l'nrscs pelatihan dilakukan tems hingga semua keluaran jaringan


sama dengan targehrya.
78 Jaringan Syaraf Tiruon dan pemrogromannya Menggunakan Matlab PERCEPTRON

5.3.2 Pengenalan Beberapa Pola Karakter a. Hihurgresponunitkeluaran ke-j : ne! = I.x,w,, +bt
Pengenalan beberapa pola karakter sekaiigr_rs (misal "A,'
bukan ataLr
"4", "8" ataLt bukan "8", dar. seterusnya) dilakukan dengan cara
menggabungkan beberapa model perceptron bab 5.4.1. Jadi ada iika net, > 0
beberapa unit keluaran sekaliprs, seperti yang tampak pada gambar Yi=f (neti) = jika -01net,<0
5.6
{' jika net, < -0
Perbaiki bobot pola yang mengandung kesalahan (yi* ti)
menurutpersamaan :

w1ftam) = wji(lama) + a lxi


b;(bam) = b;(lama) + ati
C. Lakukan langkah 4a-b terus menerus hingga ti = yi ; j = 1, .. m

Cambar 5.6 ( lontoh 5.5


setiap unit masukan dihubungkan dengan setiap unit target. Bobot )iketahui
| 6 buah pola masukan seperti gambar 5.5
penghtrbung dari unit xr ke y; adalah qi (perhatikan bagaimana
indeks dibuat). Demikian juga bias dihubungkan dengan semua unit I ]rr a tlah model perceptron untuk mengenali p ola " A",,, 8,,, datt,, C,, .

keluaran dengan bobot masing-masing br, bz , ... b^


l'cnyelesaian i
Algoritma pelatihan percepkon untuk pengenalan beberapa pola
sekaligr-rs adalah sebagai berikut : Mtrla-mula dibuat 6 buah vektor masukan seperti conton 5.4. Ada B
lrrrah vektor keluaran yang masing-masing menyatakan bahwa pola
1. Nyatakan tiap pola masukan sebagai vektor bipolar yang nl('nyerupai huruf " A", "8" atau "C".Vektor target tampak pada tabel
elemennya adalah tiap titik dalampola tersebut. 5.l t

Berikan nilai target t, = +1 jika pola masukan menyerupai humf Tabel5.11


yang diinginkan. Jika sebalilcrya, berikan nilai target = tj = -1 (i =
L,2, '.',rn) Pola Masukan

3. Berikan inisialisasi bobot bias, laju pemahaman dan threshold Pola 1


1
-\ -1

4. Lakukan proses pelatihan perceptron seperti bab 5.3 untr"rk tiap Pola 2 -7 1 -1
trnit keluaran sebagai berikut :
80 Jaringan Syaraf Tiruan dan Pemrogramanrrya Menggunakan Matlab
I)t.RCEPTRON
81

a. tanpa menggunakanbias fika mungkin)


Pola 3 -1 -1 1

b. menggunakanbias
Pola 4 1 -1 -1
c. Turrjukkan secara grafik bahwa tanpa bias, perceptron tidak
Pola 5 -1. 1 --t
akan mampu mengenali poia secara benar.
Pola 6 -I -1 7
'1. B,uatlah model perceptron yang dapat dipakai untuk membentuk
klasifikasi berikut ini (perhatikan bahwa pola tersebut berarti
Selanjuhrya iterasi dapat dibuat seperti contoh 5.2 dan 5.3, dengan
bahwa 2 input pertama mempakan anggota kelas dan 2 input
beberapa perubahan sebagai berikut :
terakhir bukan anggota kelas)
. Vektor masukan terdiri dari 36 elemen XI, )9, ... , Xra dan
sebuahbiasb Masukan Target
t Ada 3 target tr, tz dan t:
Xr
I Ada 3 kolom net yaitu net; fl€tz dan nefu, masing-
masing merupakan hasil kali bobot dengan vektor 1
1 1 1 7
masukan
-1 1 -1 -1
Ada 3 buah y
yang merupakan fungsi aktivasi ketiga
1,

kolomnet. yr = f(netr), yz= f(netz), y. = f(neh) 1


4
I I
-1 -1
Ada 3*63 buah kolom penrbahan bobot yaitu
I -1 -1 1 -1
Lwr, Lw1r,...,Lwr.ur, Lw21,4w22r... ,Lar.u, / ...
Lwr, Lw.rr,...,Lwr,u, Gturakan a = 1, 0 dan bobot awal = 0

. Ada 3*63 buahbobot,masing-masing :


i Buatlah program komputer (menggtrrakan bahasa yang anda
kuasai) unhrk melatih perceptron pada contoh 5. . Apakah
Wtl, Wt2r ", ,Wl,o3 , W21t w22, ,.. ,W2,t3 r .,, r W3lt w32, ..' ,w3,63 perceptron mampu membedakan pola hunrf 'A' dari pora humf
Iain ? Berapa epoch yang dibutr"rhkan ?
SOAL.SOAL LATIHAII
1. Selesaikan kembah contoh 5.3 tapi dengan menggunakan laju
pemahaman yang lebih kecil yaitu 0.5. Apa pengaruhnya
terhadap iurnlah iterasi yang dibuhrhkan ?

2. Buatlah iterasi sebanyak 2 epoch contoh 5.4 dan 5.5.

3. Buatlah perceptron untuk mengenali pola yang terbenhrk pada


fungsilogika XOR dengar\ a=1 dan 0=0.2