erlinwin.files.wordpress.com · Created Date: 4/14/2011 3:39:59 PM

12
Mo,ob Masukan Target X1 1 1 I -1 -7 1 -[ -i -7 1 I I -L 1 I -1 1 I 1 1 1 -1 I -1 I 1 I Bab 5 PERCEPTRON Model jaringan percepkon ditemukan oleh Rosenbratt (1962) dan 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 :

Transcript of erlinwin.files.wordpress.com · Created Date: 4/14/2011 3:39:59 PM

Mo,ob

MasukanTarget

X1

1

1I

-1

-7

1-[

-i

-7

1I

I

-L

1I

-1

1I

1

1

1-1

I

-1

I

1I

Bab 5

PERCEPTRON

Model jaringan percepkon ditemukan oleh Rosenbratt (1962) danMinsky - Papert (1969). Model tersebut merupakan model yangmcmiliki aplikasi dan pelatihan yang paling baik pada era tersebut.

5. I Arsitektur faringanArsitektr,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 bukanmerupakan fungsi biner (atau bipolar), tetapi memiliki kemungkinannilai -1,0 atau 1.

UntLrk suahl harga threshold 0 y^gditenhrkan :

(t

{:,

f (net) =

jika net > 0jika -0<net<0jika net < -0

secara geometris, f'ngsi aktivasi membentuk 2 gais sekaligus,masing-masing dengan persanuan :

wlt + w2x2 +...+ wnxn + b = 0 danwtxt + w2x2 + ... + wnxn + b = -0

5.2 Pelatihan PerceptronMisalkan

s adalah vektor masukan dan t adalah target keluaran

a adalahlajupemahaman (leaming rate) yang ditentukan

0 adalah tlreshold y Nrgditenhrkan

Algoritma pelatihan perceptron adalah sebagai berikut :

1. kLisialisasi semrla bobot dan bias (umumnya wi = b = 0)

]enturkan laju pemahaman (=a). Untuk penyederhanaan,biasanya adibeinilai=1

selama ada elemen vektor masukan yang respon unit keruarannyatidak sama dengan target, lakukan :

a. Set aktivasi unit masukan x1 = q (i = I, ...,n)

b. Hitungresponunitkeluaran : net = | x,w, +b

ft .iika net > 0

y=f(neg = l0 jika -g<net<0[-1 iika net < -0

('. Perbaiki bobot pola yang mengandung kesalahan (y + 0menurutpersarnaan :

wi(baru) = wi(lama) + Aw (i=1,..',n) dengan Aw= dtxi

b(baru) = b(lama)+ Ab dengan Lb= at

Atla beberapa hal yang perlu diperhatikan dalam algoritma tersebut :

,r, lterasi dilakukan terus hingga semua pola memiliki keluaran

jaringan yang sama dengan targetrya faringan sudah memahami

pola). Iterasi tidakberhenti setelah semua pola dimasukkan seperti

yang terjadi pada model Hebb

h. Pada langkah 2 (c), penrbahan bobot hanya dilakukan pada pola

yang mengandung kesalahan (keluaran jaringan * target)'

Penrbahan tersebut merupakan hasil kali unit masukan dengan

target dan laju pemahaman. Perubahan bobot hanya akan terjadi

kalauurLitmasukan * 0.

c. Kecepatan iterasi ditenhrkan pula oleh laju pemahaman (=6v

dengan 0 <a <1) yang dipakai. Semakin besar hargd d,semakin sedikit iterasi yang diperlukan. Akan tetapi ika a terlalu

besar, maka akan merusak pola yang sudah benar sehingga

pemahaman menjadi lambat.

Algoritma pelatihan perceptron lebih baik dibandingkan model Hebb

karena:

1. Setiap kali sebuah pola dimasukkan, hasil keluaran jaringan

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

Tabel 5.i

I't l{(.IPTRON 63

Modifikasi bobot tidak hanya ditenturkan oleh perkalian antaratarget dengan masukan, tapi jugu melibatkan suatur lajupemahaman (leaming rate) yangbesamya bisa diatur.

Pelatihan dilaktrkan berulang-ulang t*rtuk semra kemungkinanpola yang ada hingga jaringan dapat mengerti polanya qaianaaidengan sanunya semua keluaran jaringan d"rrg* target keh,aranyang diing:nkan). satu sikl's pelatihan yang melibuttut semuaq9l1 disebut epoch. Dalam jaringan H"bb, pelatihan hanyadilakukan dalam safu epoch saja. Teorema konveigensi perceptronmenyatakan bahwa apabila ada bobot yang tepat, -iku pro*,pelatihan akan konvergen ke bobot yang tepat teisebut.

Contoh 5.1

y I (net) =

jika net > 0

jikct net = 0

I jika net <0

lh'r'asi untr,rk selunrh pola yang ada

rrrt'ntnjukkan hasil pada epoch pertama.disebut epoch Tabel 5.2

{'

Tabel5.2

1

Masukan Target

(xr xz 1) t

y Perubahan Bobot Bobot Bamljt^r = b (i

net =f (net) (Lw, Lw, Ab) (wr wz b)

Buatlah perceptron untr-rk mengenali f'ngsi logika ,,dar{, denganmasukan dan keluaran bipolar. unhlk inisiilisasi,-gr.nakan bobbt janbiasawal=0, a =1dan threshold= 0=0

Penyelesaian

Tabel masukan dan target fungsi logika "da{'dengan masukan dankeluaran bipolar tampak dalam tabel5.1

(r 1

(1 -1

(-i 1

(-1 -1

1)

1)

1)

1)

inisialisasi

0

-l <t,t

I'ada input pertama (xr, *, 1) = (1 1 1). Harga netberdasarkan bobot yang sudah ada sebelumnya yaihr (wr w*2

0 0).Makanet = Zr,*,+b = 1(0)+1(0)+0 = Osehingga

0

1

2

1I

1

9

1-l

2

-3

-1

1

-1

(1 1.

cl 1

(1 1

(0' 0'

(0

1) (1

-1) (O

-l) (1

0)-' (1

t -t,I

o <2<o

' "'l -f

o)

1)

9)

-1)

-1)

Masukan Target

dihitungb)=(0f (net) = c:'1 t+o

Xrf(0)= g

Kelttaran jaringan (= f(net) =diinginkan (dalam iterasi inirnenggunakan rL[nusan Aw =L.rarLr = bobotlama+ Aw

11+-t"1 +r:I,I :I -l+r

0) tidak sama dengan target yangadalah I), maka bobot diubah

dtXi = lY, (karena a=I).Bobot

I

11

-1

-1

1-l

1

_1

,t

-7

-1

-x Input pola kedua dan seterusnya dihitung secara analog. Pada polatcrakhir (*t, *, 1) = (-1 -1 1), harga f(net) = -1 y*g sama dengantargchrya. Maka bobot tidak diubah. Hal ini dinyatakan dengan

konclisi Aw=0Untuk threshold = Q maka {r.rngsi aktivasi menjadi :

64 Jaringan Sfraf Tiruan

Perhatikan bagaimana perubahan persamaan garis yang terbentukdalam setiap pola input. Garis pemisah pola terbentuk dari persamaan

w4t+wrx, *b= 0 dan wflt+w2xz+b=-0 " Karena d = 0 maka

hanya terbentuk sebuah garis saja.

{Hasil iterasi pola pertam? I w1 = 1, w2 = 1 dan b = 1. Maka garispemiSahnya memiliki persaruan I Xr * xz * 1- = 0 (atau xt-t x2 = -t),yang secara geometris dapat digambarkan pada gambar 5.2 (a).

Gambar 5.2(a) Garnbar 5.2(b) Gambar

Persamaan garis unhrk tiap iterasi tampak pada tabel5.3

5.2 (c)

Tabel 5.3

Masukan

(x, xr 1)

BobotBam

(wr wz b)

Persamaan

Garis

(i 1.

(1 -1

(-1 1

(-1 -1

1

z

1

1

1)

1)

i)

1)

(1

(0

(1

(1

1)

0)

-1)

-1)

X1*X2=-l

Xz=0

Xt*xz=1

X1*x2=l

Gambar 5.2 (a) - (b) masing-masing menunjukkan garis pemisalruntr"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

Vt* dz . -\

Cambar 5.2(a)

Xz, o

Garnbar 5.2 fb)

(r-t /t .t

PERCEPTRON

memisahkan dengan benar pola L dan 4. Garis pada gambar 5.2 (ll)memisahkan dengan benar pola 1, 2 dan 4. Berikukrya garis padagambar 5.2 (c) memisahkan dengan benar semua pola menjadi 2

bagian.

Mengingat tidak semua f(net) pada tabel 5.2 sama dengan target t,maka iterasi dilanjutkan pada epoch kedua. Semua pola kembalidimasukkan ke jaringan dengan menggunakan bobot terakhir yangdiperoleh sebagai bobot awalrrya. Diperoleh hasil iterasi seperti yangtampak pada tabel5.4

Daiam iterasi tersebut, r"rrtr,rk semrn pola nilai f (net) = t sehinggatidak dilakukanperubahanbobot. Karena f (ne$ = t untuk semua polamaka jaringan sudah mengenal semua pola sehingga iterasidihentikan.

Tabel5.4

65

Masukan Target

(x1 xz 1) t

y PerubahanBobot BobotBaru

net =f (net) (Lw, Lw, Ab) (wr wz b)

(1

(1

(-1

(-1

1)

1)

r)

1)

-7 -1 -1

-1, -1 -1

-1 -3 -1

1

-1.

1

-1

bobot yang diperoleh dari epoch pertama

111(000)

0)

0)

0)

(00(00(00

(1 L

(1 1.

(r1(1 1

(1 1

-1)

-1)

9,ir

-1)

Contoh 5.2

Ulangi contoh 5.1, tapibipolar.Gturakana=1

menggunakandanthreshold =

masukan biner dan keluaran0 =0.2

66 jorintjorr Syoraf Tiruan dan Pemrogramannya Menggunakan Matlab

Penyclcsrtinn

Dcngirrr llm:slruld = 0.2, maka fungsi aktivasi menjadi :

It jika net > 0.2I

y=f (net) = J0 jika -0.2<net<0.2I

[-l jika net <-0.2

Tabel5.5 adalah hasil iterasi epoch pertama

Tabel5.5

Masukan Target

(xr xz 1) t net

y Penrbahan Bobot Bobot Bam

=f (net) (Lw, Lw, Lb) (wr wr b)

,liii

t

li'{

f;:l'rII

inisialisasi

(1 11) 1 0

(101) -1 2

(011) -1

(001) -1

(1

(-1

(0

(0

0

1I

I

-I

7

-1

I

0

-1

0

(0oo)1) (111)-1) (0 1 0)

-1) (0 0 -1)

0) (0 0 -1)

Tampak hanya pola masukan terakhir saja yangbenar (f(net) = target).Maka iterasi harus dilanjutkan ke epoch berikukrya.

Perhatikan bahwa dengan threshold yang * 0, maka akan terbentuk 2buah garis pemisah pola. Dalam contoh ini, persamaan garis yangterbentr-rkadalah wlxt+w2x2+b =0.2 dan wrx, +w2x2+b= -0.2.

PERCEPTRON

sebagai contoh, setelah pola pertama dimasukkan, maka garis yangterbentuk memilikipersamaan xt + x2 +I = 0.2 (atau x, * x, =_0.g )dan x, + x2 +l = -0.2 (atau x, * x, = -l.Z).Garis ini akan mengenalipola pertama dan terakhir (lihat gambar 5.3).

Gambar 5.3

'rabel 5.6 adalah hasil iterasi epoch kedua. Tampak bahwa belumscmua pola dikenali. Hanya pola terakhir saja yang memiliki f (net) = 1

Tabel5.6

Masukan Target

(xr xz 1) t net

y Perubahan Bobot Bobot Bam

=f (net) (Lw, Lw, Ab) (wr wz b)

cpoch 2:

(r 1 1) 1

(r01) -1

(011) -1

(001) -1

Bobot dari epoch - 1

-1 -1. (1

11(-100(0-2 -1 (0

(0 0 -1)

1) (110)-1) (0 1 -1)

-1) (0 0 -2)

0) (0 0 -2)

1.

0

-1

0

lk'rlsi dilanjutkan untuk epoch ketiga dan setenunya. Hasii iterasil,uttP,rk clalam talrcl 5.7

x,*\= -1 '2

68 Jaringan Syaraf Tiruan dan Pemrogramanrrya Menggunakan Matlab

Tabel5.7

Masukan Target

(xr xz L) t

y PerubahanBobot BobotBaru

=f (ne0 (Lw, Lw, Ab) (wr wz b)

epoch 3:

(111)(1 01)(0 11)

(001)

1

-1

-L

-1,

-2

0

-1.

o-L

-1.

0

-1

-1

(1

(-1

(0

(0

1

0

0

0

1) (1 1 -1)

-1) (0 1 -2)

0) (0 1 -2)

0) (0 1 -2)

epoch 4 :

(111)(1 01)(0 11)

(001)

7

-1

-7

-1

-7

0

0

-3

-1

0

0

-1

(1

(-1

(0

(o

1

0

-1.

0

1) (1 2 -1)

-1) (0 2 -2)

-1) (0 1 -3)

o) (0 1 -3)

epoch 5:

(111)(1 01)(0 11)(001)

1

-1

-1

-1

o-L

-1

0

-3

-1

-1

0

-7

(1

(0

(o

(0

L

0

-L

0

1) (1 2 -2)

0) (1 2 -2)

-1) (1 1 -3)

0) (1 1 -3)

epoch 6:

(111)'1 01)

1-1-1(11-1.00(-10

1) Q2-2)-1) (1 2 -3)

PERCEPTRON 69

(0 11)(001)

(1 2 -3)

(1 2 -3)

-1 -1, -1 (0 0 0)

-1. -3 -1. (0 0 0)

epoch 7:

(1 11)(101)(0 11)(001)

1

-1.

-1

-1

0

0

0

-4

0

0

0

-1

(1

(-1

(0

(0

1t

0

-1

0

1) (2 3 -2)

-1) (1 3 -3)

-1) (1 2 -4)

0) (1 2 -4)

epoch 8:

(111)(1 01)

Q11)(001)

1

-1

-1

-1

-1

-1

0

-4

-1,

-1,

0

-1.

(1

(o

(0

(0

1

0

-I

0

1) (2 3 -3)

0) (2 3 -3)

-1) (2 2 -4)

0) Q2-4)epoch 9:

(r 1 1)

(l 0 1)

(0 11)(001)

1

-1

-1

-1

0

0

-1.

-4

0

0

-1

-1

(1

(-1

(0

(0

1

0

0

0

1) (3 3 -3)

-1) (2 3 -4)

o) Q3-4)0) (2 3 -4)

t'poch 10:

(r 1 1)

(r 0 1)

(0 11)(001)

1

-1

-7

-1

1

-2

-1

-4

1

-7

-1

--l

(00(00(00(00

(2 3 -4)

(2 3 -4)

(2 3 -4)

(2 3 -4)

0)

o)

0)

0)

70 Jaringan Syaraf Tiruon dan pemrsgramannya Menggunakan Matlab

Setelah 10 epoctr" semua f(net) = t sehingga jaringan telah mengenalpola dan iterasi dihentikan. Persamaan garisnya adalah 2xt + 3xz- 4 =0.2 (atau 2xt + 3xz= 4.2) dan 2xr +3xz-4= -0.2 (atau 2x1 +3x2 = 3.g1

Contoh 5.3

Diketahui perceptron dengan 3 masukan biner x1, x2, X3, sebuah biasdan sebuah keluaran bipolar. carilah bobot yang akan mengenali polasebagai berikut : target keluaran bemilai 1 apabila r"-.ti masukanbemilai 1, dan target bemilai = -1 apabila tepat sarah sahr darimasukan bernilai 0 (tidak diketahui bagaimana target apabila ad.a 2atau lebih masukan yang bemilai 0). Gtrnakan bobot awal dan bias =0 dengan laju pemahaman = a =1, dan threshold = 0 = 0.L

Penyelesaian

Bentuk pola masukan dan targefrya tampak pada taber 5.g. Bentuk inisama dengan pola yang tidak dapat diselesaikan dengan model Hebbpada contoh 4.2

2xr+3ry= 4.2

2x,+35 - 3.6

Gambar5.4

I'I.RCEPTRON14!l

Tabel5.8

Masukan Target

1

_t

a

0

1

I

0

1

I

0

1

1

1.

-7

-1

-7

Iterasi yang dilakukan tampak pada tabel5.9. Kolom perubahan bobot

yangkosongberarti (Lw, Lw., Lw, A,b) = (0 0 0 0).Initeryadijika

f (net) = t

Tabel5.9

Masukan Target

(xr xz xr 1) t net

PenrbahanBobot BobotBaru

(Lw., Lw.- Lw. A,b ) (*t wz wrb)

v

= f (net)

epoch 1

(1 11(1 10(1 01(0 11

:

1)

1)

1)

1)

0

1.

1

-1

(1

(-1

(-1

1

0

-1

1

-7

0

|

-1

-1

1-t

inisialisasi

0

aJ

I

-1

(ooo)i) (1111)-1) (0010)-1)(-100-1)

(-1 0 0 -1)

epoch2:

(11 11)

(l 1 0 1)

110)01-1)

(11L1)

(-1 -1 0 -1)

-17-2-1 I

(0

(-1

Jaringan Syaraf Tiruan dan Pemrogrannnrrya Menggunakan MatlabIIIRCEPTRON

(1011)(0 111)

-1. -1

00(-101

-1)C1 -1 0-

1) (001-1)(001-1)

-1)(-100-2)(-1 0 0 -2)

1)(011-1)-1)(-101-2)

(-1 0 1 -2)

(-1 0 1 -2)

1) (0 1. 2 -1)

-1)(-1 02-2)(-1 0 2 -2)

-1) C1 -1 1 -3)

e;xrch 10 :

ilr11)(r r 0 1)

(r 0 1 1)

(0 I11)

epoch3:

(11.11)(1 101)(1011)(0 111)

1

-1

-1

-1

-3

-1

0

-2

-1

-1

0

-1

(1

(-1 -10

1) (1 1. 2 -3)

(1 L2-3)-1) (0 1 1, -4)

(011-4)

epoch4:

(11 11)

(1 101)(1 011)(0 111)epochS:

(11 11)

(1101)(1 011)(0 111)

1

-1

-1

-1

-4

-1

0

-2

-1.

-1,

0

-1

-1

0

-1

-1,

e;xrch 20 :

(l I 1 1)

(l I 0 1)

(r 0 1 1)

(t| l 1 1)

7

-1

-1

-1

-2

-2

0

-2

-1

-1

0

-1

(1

(-1

t)(224-6)(224-6)

-1)(123-7)(123-n

1.

-1

-1

-'t

-3

0

-2

-1.

(1

(-1

-1011-'1. 0

(1 11(-1 -1. 0

1

-1

-1

-1.

o-z

0

-T

0

-1,

0

-7

0

1

-1

-1

-1

0

0

o-L

-1

0

0

-1

-1

(1 11(-1 -L 0

ep<rch 25 :

(l I 1 1)

(l I 0 1)

(r 0 1 1)

(0 I11)

1)(344-n-1)(234-8)

,Q 3 4 -8)

(2s4-8)

dan seterusnya ...

t.poch 26 :

(l l 1 1)

(l I 0 1)

(l o 1 1)

(0 I11)

7

-1

-1,

-1

1

-3

-2

-1

'l

-1

-1

-1.

Q34-8)Q34-8)(234-8)(234-8)

73

1 1

'fl,r

rl

urli ::

,lii,i;,rl',l, .,

Tampak bahwa jaringan dapat mengenali semua pola yang diberikansetelah 26 epoch. Tampak disini keunggulan perceptron dibandingkanmodel Hebb. stsunan pola yang tidak dapat dikenali oreh modelHebb temyata dapat dikenali oleh perceptron.

5.3 Pengenalan Pola KarakterPerceptron dapat pula dipakai untr-rk mengenali pola karakter. Denganberbagai pola masukan yang menyempai humf-humf alphabeth,perceptron dapat dilatih untr-rk mengenalinya.

5.3.1 Pengenalan Sebuah Pola KarakterAlgoritma untuk mengenali apakah pola masukan yang diberikanmenyerupai sebuah karakter tertenfu (misal *i.ip hunrf ,,A,,) atautidak adalah sebagai berikut :

1. Nyatakan tiop pola masukan sebagai vektor bipolar yangelemennya adalah tiap titik dalampola tersebut.

Berikan nilai target = +1 jika pola masukan menyerupai humfyang diinginkan. Jika sebaliknya, berikan nilai target = -1

Berikan inisialisasi bobot, bias, laju pemahaman dmr threshold

Lakukan proses pelafihan perceptron seperti bab 5.2

Contoh 5.4

Diketahtri 6buahpola masukan seperti gambar 5.5 :

2.

aJ.

4.

ff|{( II)TRON 75

44

4.]t

11

#+4-t+

##4.*

4!t+.1+-##trt-

u4444il##tr*

il#lt #

ilil# ###

1+ 4 .t1tfifr.

#+tl+ .E

4t4tf#

1+4

'l+ l+

1.tJ].4.,ffrt

Pola 6

4

++. fr1+

4

11 tltt

4tr!t+44

4

4l+.4

l+ 1+tt

t+

11

tr11 1+

4#,t.rfi.#B4444ttfrtrtr

tt#sJlttf

---

; ;'*Pola 2

4

l+

4

44Utt t+ tt

*';;Pola 3

t

# .t4 J+ttfr

u444t+ t+ t+ t++J+

+t

4 4.tl1+tttt

Pola 5

-1 1-1-1-1 -1-1-1 1-1-1-11-11-1-1 -1.L1117-1,-1-7-'t1-1 1 1 1-1 1 1 1)

4

;##

Pola 1

Fola 4

(r-111-1-1-1| -r 1 -1 1 -1 -1I l-1 -1 -'l 1-1

Cambar 5.5

flrrirtlahmodelperceptrontrrtr,rkmengenali pola " A": t

I'cnyelesaian

lJrrtrrk menentukan vektor mastrkan, tiap titik dalam pola diambilr't'lrirgfi komponen vektor. Jadi tiap vektor masukan memiliki 9*7 = 63korrrponen. Titik dalam pola yang bertanda "#" dlbeinilai = +1 danlitik bcrtanda "." diberi nilai -1. Pembacaan pola dilakukan dari kirikt' kiuran, dimulai dari baris paling atas"

Vt'ktor masukan pola 1 adaiah

-1 -1,

-1 -1

-1 1

76 Jorlngon Syorof Tiruan dan Pemrogrannnrrya Menggunakan l4atlab

,,,,,,,.,,

Vektor masukirn pola 2 adalah

(11 1 1 1 1-1 -1.1.-1.-1.-1,-1,1-11-1-1-1-11. -r11 1 1 1-1-1 1 -1 -1 -1 -1 1 -1 1. -1. -1. -1 -1, 1,

Vektor masukan poia 3 adalah

(-1 -1 1 1 1 1 1 --i.1 -1. -1. -L -1 1

1. -1. -1. -1, -r -1. -1. 1 -1 -1 -1 -L -1 -11 -1-1-1-1-1-1 -11-1-1-L-1 1

Vektor masukan pola 4 adalah

(-1 -1 1 1. 1. -L -1.

1 -1. -1 -L -1. -1. -1

1 -1-1-1-1 -L 1"

-11-1-1-1-11-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 1-1)

-1 1. -1. -t -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. -1 -1. -1 1 -1 -7 -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. -L 1, -1, -1, -1 -1. 1 -1 1 -1 -1 -1 1. -1. -'1. -r 1 -1-1,1, 1 1 1 1 -1 -1. 1-1-7 -11-1 -1, 1,-1, -1, -'1,1-1)

Vektor masukan pola 5 adalah

(11 1,1,1 1-1 1-1-1-t-r-1'1. 1.-r-1,-1, -1-111-1.-r-1-1,-1 1 1 r1.1 1 't,-1. 1.-1-L -1-1-111.-1.-1,-1,-'t-1.1 1-1.-1.-1 -1-11 1,t 1 1 1 1-1)

Vektor masukanpola 6 adalah

l,4i

'1,ril\i1l

ill ,

',

Target bemilai = +1 bila pola masukan menyerupai huruf "A". Jikatidak, maka target bemilai = -1. Pola yang menyerupai hu.ruf "A"adalah pola 1 dan pola 4. Pasangan pola dan targetnya tampak padatabel5.L0

PERCEPTRON

Tabel5.10

Pola Masukan Target

Pola 1

Pola 2

Pola 3

Pola 4

Pola 5

Pola 6

Maka perceptron yang dipakai unnrk mengenali pola huruf " A" (atartbtrkan "A") memiliki 63 urdt masukan, sebuah bias dan sebuah unitkcluaran.

Misalkan bobot awal diambil = 0 untuk semua bobot maupun bias,laju pemahaman diambil a =-I.. dan threshold = 0.5

I'clatihan dilakukan dengan cara memasukkan 63 unit masukan (atau

scbuah pola hurrf). Dihihrng net = Ix,w,+b. Berikubrya, fungsii=t't

n khivasi dihitung menggunakan persalnaan

It jika net > 0.5

y=f (net) = j0 jika -0.5<net<0.5

l-t jika net < -0.5

Alrirbila f (net) * target, maka bobot dan bias diubah

l'nrscs pelatihan dilakukan tems hingga semua keluaran jaringansama dengan targehrya.

77

7

-7

-1

1.

-7

-1

78 Jaringan Syaraf Tiruon dan pemrogromannya Menggunakan Matlab

5.3.2 Pengenalan Beberapa Pola KarakterPengenalan beberapa pola karakter sekaiigr_rs (misal "A,' ataLr bukan"4", "8" ataLt bukan "8", dar. seterusnya) dilakukan dengan caramenggabungkan beberapa model perceptron bab 5.4.1. Jadi adabeberapa unit keluaran sekaliprs, seperti yang tampak pada gambar5.6

Cambar 5.6

setiap unit masukan dihubungkan dengan setiap unit target. Bobotpenghtrbung dari unit xr ke y; adalah qi (perhatikan bagaimanaindeks dibuat). Demikian juga bias dihubungkan dengan semua unitkeluaran dengan bobot masing-masing br, bz , ... b^

Algoritma pelatihan percepkon untuk pengenalan beberapa polasekaligr-rs adalah sebagai berikut :

1. Nyatakan tiap pola masukan sebagai vektor bipolar yangelemennya adalah tiap titik dalampola tersebut.

Berikan nilai target t, = +1 jika pola masukan menyerupai humfyang diinginkan. Jika sebalilcrya, berikan nilai target = tj = -1 (i =L,2, '.',rn)

Berikan inisialisasi bobot bias, laju pemahaman dan threshold

Lakukan proses pelatihan perceptron seperti bab 5.3 untr"rk tiaptrnit keluaran sebagai berikut :

3.

4.

PERCEPTRON

Hihurgresponunitkeluaran ke-j : ne! = I.x,w,, +bt

Yi=f (neti) =

iika net, > 0

jika -01net,<0jika net, < -0

Perbaiki bobot pola yang mengandung kesalahan (yi* ti)menurutpersamaan :

w1ftam) = wji(lama) + a lxib;(bam) = b;(lama) + ati

Lakukan langkah 4a-b terus menerus hingga ti = yi ; j = 1, .. m

( lontoh 5.5

| )iketahui 6 buah pola masukan seperti gambar 5.5

I ]rr a tlah model perceptron untuk mengenali p ola " A",,, 8,,, datt,, C,, .

l'cnyelesaian i

Mtrla-mula dibuat 6 buah vektor masukan seperti conton 5.4. Ada Blrrrah vektor keluaran yang masing-masing menyatakan bahwa polanl('nyerupai huruf " A", "8" atau "C".Vektor target tampak pada tabel5.l t

Tabel5.11

Pola Masukan

Pola 1

Pola 2

a.

{'

C.

-1

-1

-\

1

1

-7

80 Jaringan Syaraf Tiruan dan Pemrogramanrrya Menggunakan Matlab

Pola 3

Pola 4

Pola 5

Pola 6

Selanjuhrya iterasi dapat dibuat seperti contoh 5.2 dan 5.3, denganbeberapa perubahan sebagai berikut :

. Vektor masukan terdiri dari 36 elemen XI, )9, ... , Xra dansebuahbiasb

Ada 3 target tr, tz dan t:Ada 3 kolom net yaitumasing merupakan hasilmasukan

Ada 3 buah y yang merupakan fungsi aktivasi ketigakolomnet. yr = f(netr), yz= f(netz), y. = f(neh)

Ada 3*63 buah kolom penrbahan bobot yaitu

Lwr, Lw1r,...,Lwr.ur, Lw21,4w22r... ,Lar.u, / ...

Lwr, Lw.rr,...,Lwr,u,

. Ada 3*63 buahbobot,masing-masing :

Wtl, Wt2r ", ,Wl,o3 , W21t w22, ,.. ,W2,t3 r .,, r W3lt w32, ..' ,w3,63

SOAL.SOAL LATIHAII1. Selesaikan kembah contoh 5.3 tapi dengan menggunakan laju

pemahaman yang lebih kecil yaitu 0.5. Apa pengaruhnyaterhadap iurnlah iterasi yang dibuhrhkan ?

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

3. Buatlah perceptron untuk mengenali pola yang terbenhrk padafungsilogika XOR dengar\ a=1 dan 0=0.2

1

-1

--t

7

-1

-1

1

-1

-1

1

-1.

-I

t

I net; fl€tz dan nefu, masing-kali bobot dengan vektor

i

I)t.RCEPTRON81

a.

b.

tanpa menggunakanbias fika mungkin)

menggunakanbias

c. Turrjukkan secara grafik bahwa tanpa bias, perceptron tidakakan mampu mengenali poia secara benar.

'1. B,uatlah model perceptron yang dapat dipakai untuk membentukklasifikasi berikut ini (perhatikan bahwa pola tersebut berartibahwa 2 input pertama mempakan anggota kelas dan 2 inputterakhir bukan anggota kelas)

Masukan Target

Xr

7

1,

-1

-1

1

-1

-1

1

1

-1

I

-1

1

1

4I

-1

1

-1

1

I

Gturakan a = 1, 0 dan bobot awal = 0

i Buatlah program komputer (menggtrrakan bahasa yang andakuasai) unhrk melatih perceptron pada contoh 5. . Apakahperceptron mampu membedakan pola hunrf 'A' dari pora humfIain ? Berapa epoch yang dibutr"rhkan ?