Anda di halaman 1dari 10

Jaringan Syaraf Tiruan

BAB III PERCEPTRON Perceptron merupakan jaringan syaraf yg memiliki pengaruh yang paling luas dibandingkan model jaringan syaraf sebelumnya. Metode pembelajaran Perceptron lebih kuat dari pembelajaran JST Hebb. Prosedur pelatihan dari Perceptron terutama dalam proses iterasinya dapat menghasilkan bobot yang konvergen.Dan bobot ini bila ditest terhadap pola input dapat menghasilkan output yang sesuai target. Ada beberapa tipe Perceptron yang dikemukan oleh beberapa ahli seperti !osenblatt "#$%&'( Minsky dan Papert "#$%$ dan #$))'. Mulanya Perceptron punya * lapisan neuron unit sensor, unit asosiasi, dan unit renspon(output). Mendekati model jaringan syaraf pada retina +nit sensor dan asosiasi memakai akti,asi biner sedangkan unit output memakai akti,asi #( -( atau .#. /ungsi akti,asi untuk unit asosiasi adalah fungsi step biner dgn nilai threshold 0 tertentu. Sinyal yg dikirim dari unit asosiasi ke unit output adalah sinyal biner "# atau -'. 1utput perceptron y 2 f"y3in'( dimana fungsi akti,asinya adalah
# f " y 3 in' = # jika y 3 in > jika y 3 in ........................................................"*.#' jika y 3 in <

4obot dari unit asosiasi ke unit respon "output' diatur dengan aturan pembelajaran perceptron. +ntuk tiap data input pelatihan jaringan akan menghitung respon dari unit output. Jaringan akan menentukan apakah terjadi error pada data input ini "dengan membandingkan antara nilai output yg dihitung dengan nilai target'. Jaringan tidak akan menganggap ada kesalahan "error' jika outputnya bernilai dan target bernilai .#. Sedangkan jika output bernilai # dan target bernilai .# maka ini dianggap sebagai kesalahan "error'. Jika terjadi kesalahan maka bobot akan diubah menurut persamaan
wi "baru ' = wi "lama ' + txi ........................................................"*.&'

dimana nilai target t adalah # atau .#( 5 adalah learning rate. Pelatihan akan diteruskan sampai tidak terjadi kesalahan. 3.1 Arsitektur perceptron Arsitektur sederhana perceptron adalah seperti gambar *.#. Jaringan ini dipakai untuk mengklasifikasi satu kelas tunggal. 6aitu menentukan apakah suatu pola input termasuk dalam satu kelas atau tidak. Jika masuk dalam satu kelas maka respon dari unit output adalah # sedangkan jika tidak maka responnya .#.

gu7i8-%

#9

Jaringan Syaraf Tiruan x1

7#
xi xn

7i

7n ?ambar *.# Arsitektur perceptron untuk klasifikasi tunggal 3.1 Algoritma perceptron Algoritma ini berlaku untuk input biner atau bipolar dan target bipolar( serta nilai threshold 0( dan bias b. :angkah8langkah algoritma perceptron :angkah - bobot dan bias diberi nilai a7al "biasanya bobot dan bias diberi nilai -' beri nilai learning rate "- < #' "biasanya 5 diberi nilai #' langkah # selama kondisi berhenti bernilai salah lakukan langkah & . % langkah & untuk tiap8tiap pasangan pola pelatihan s t( lakukan langkah *8; langkah * set akti,asi unit input <i 2 si langkah = hitung respon dari unit output
y 3 in = b + xi wi
i

# jika y 3 in > y = f " y 3 in' = - jika y 3 in # jika y 3 in <

langkah ;

perbaiki bobot dan bias jika terjadi kesalahan pada pola ini jika y > t
wi "baru ' = wi "lama' + txi b"baru ' = b"lama ' +t wi "baru ' = wi "lama ' b"baru ' = b"lama '

jika y 2 t langkah %

test kondisi berhenti jika tidak ada bobot yang berubah dalam langkah & maka stop jika ada maka lanjutkan kembali ke langkah # Dari algoritma maka hanya bobot yang berkoneksi dgn unit input yang aktif yg akan berubah "<i > -' Algoritma ini biasanya dipakai untuk melakukan klasifikasi pola dengan cara pemisahan linear.
gu7i8-% #)

Jaringan Syaraf Tiruan

/ungsi akti,asi yg dipakai akan mengatur batas antara daerah positif( negatif dan nol. Daerah nol adalah daerah yg terletak antara daerah positif dan negatif. :ebar daerah ini adalah 0 ?aris pemisah antara daerah positif dgn daerah nol dinyatakan dgn persamaan 7#<# @ 7&<& @ b 2 0 ?aris pemisah antara daerah negatif dgn daerah nol dinyatakan dgn persamaan 7#<# @ 7&<& @ b 2 80
w# x# + w& x & + b =

x!
$ "

w# x# + w& x & + b =

x1

?ambar *.& 4atas keputusan perceptron Shg daerah positif dinyatakan dgn pertidaksamaan 7#<# @ 7&<& @ b A 0 Dan daerah negatif dinyatakan dgn pertidaksamaan 7#<# @ 7&<& @ b B 80

3.! Aplikasi perceptron Contoh *.# Aplikasi perceptron untuk menyelesaikan fungsi logika ADD dengan input biner dan target bipolar Enput target Dilai 5 2 -.9 <# <& b t 4obot "7' dan bias "b' diberi nilai # # # Dilai 0 2 -.* # 8# # 8# 8#

Pelatihan dgn algoritma perceptron


gu7i8-%

Iterasi pertama # Data pertama " # #'


#$

Jaringan Syaraf Tiruan


y 3 in = b + xi wi = b + x# w# + x& w&
i

2 - @ "#'."-' @ "#'."-' 2 hasil akti,asi 2 y 2 - "8-.* By3inB-.*' target t 2 # y>t bobot baru 7i"baru' 2 7i"lama' @ 5t<i 7# 2 -@"-.9'"#'"#' 2 -.9 7& 2 -@"-.9'"#'"#' 2 -.9 bias baru b"baru' 2 b"lama' @ 5t b 2 - @ "-.9'"#' 2 -.9 Data kedua " # -' y3in 2 -.9 @ -.9 @ - 2 #.= hasil akti,asi 2 y 2 # "y3in A -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"#' 2 7& 2 -.9@"-.9'"8#'"-' 2 -.9 bias baru b 2 -.9 @ "-.9'"8#' 2 Data ketiga " - #' y3in 2 - @ - @ -.9 2 -.9 hasil akti,asi 2 y 2 # "y3in A -.*' target t 2 8# y>t bobot baru 7# 2 -@"-.9'"8#'"-' 2 7& 2 -.9@"-.9'"8#'"#' 2 bias baru b 2 - @ "-.9'"8#' 2 8-.9 Data keempat " - -' y3in 2 8-.9 @ - @ - 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Iterasi ke%ua # Data pertama " # #' y3in 2 8-.9 @ - @ - 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B8 -.*'
gu7i8-%

target t 2 # y>t bobot baru 7# 2 -@"-.9'"#'"#' 2 -.9 7& 2 -@"-.9'"#'"#' 2 -.9 bias baru b 2 8-.9 @ "-.9'"#' 2 Data kedua " # -' y3in 2 - @ -.9 @ - 2 -.9 hasil akti,asi 2 y 2 # "y3in A -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"#' 2 7& 2 -.9@"-.9'"8#'"-' 2 -.9 bias baru b 2 - @ "-.9'"8#' 2 8-.9 Data ketiga " - #' y3in 2 8-.9 @ - @ -.9 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -@"-.9'"8#'"-' 2 7& 2 -.9@"-.9'"8#'"#' 2 bias baru b 2 8-.9 @ "-.9'"8#' 2 8#.= Data keempat " - -' y3in 2 8#.= @ - @ - 2 8#.= hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

Iterasi ketiga # Data pertama " # #' y3in 2 8#.= @ - @ - 2 8#.= hasil akti,asi 2 y 2 8# "y3in B8 -.*'
&-

Jaringan Syaraf Tiruan

target t 2 # y>t bobot baru 7# 2 -@"-.9'"#'"#' 2 -.9 7& 2 -@"-.9'"#'"#' 2 -.9 bias baru b 2 8#.= @ "-.9'"#' 2 8-.9 Data kedua " # -' y3in 2 8-.9 @ -.9 @ - 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"#' 2 7& 2 -.9@"-.9'"8#'"-' 2 -.9 bias baru b 2 8-.9 @ "-.9'"8#' 2 8#.= Data ketiga " - #' y3in 2 8#.= @ - @ -.9 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data keempat " - -' y3in 2 8#.= @ - @ - 2 8#.= hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

target t 2 # y>t bobot baru 7# 2 -@"-.9'"#'"#' 2 -.9 7& 2 -.9@"-.9'"#'"#' 2 #.= bias baru b 2 8#.= @ "-.9'"#' 2 8-.9 Data kedua " # -' y3in 2 8-.9 @ -.9 @ - 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"#' 2 7& 2 #.=@"-.9'"8#'"-' 2 #.= bias baru b 2 8-.9 @ "-.9'"8#' 2 8#.= Data ketiga " - #' y3in 2 8#.= @ - @ #.= 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -@"-.9'"8#'"-' 2 7& 2 #.=@"-.9'"8#'"#' 2 -.9 bias baru b 2 8#.= @ "-.9'"8#' 2 8&.# Data keempat " - -' y3in 2 8&.# @ - @ - 2 8&.# hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

Iterasi keempat # Data pertama " # #' y3in 2 8#.= @ - @ -.9 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B8 -.*'
gu7i8-%

Iterasi kelima # Data pertama " # #' y3in 2 8&.# @ - @ -.9 2 8#.= hasil akti,asi 2 y 2 8# "y3in B8 -.*'
&#

Jaringan Syaraf Tiruan

target t 2 # y>t bobot baru 7# 2 -@"-.9'"#'"#' 2 -.9 7& 2 -.9@"-.9'"#'"#' 2 #.= bias baru b 2 8&.# @ "-.9'"#' 2 8#.= Data kedua " # -' y3in 2 8#.= @ -.9 @ - 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data ketiga " - #' y3in 2 8#.= @ - @ #.= 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"-' 2 -.9 7& 2 #.=@"-.9'"8#'"#' 2 -.9 bias baru b 2 8#.= @ "-.9'"8#' 2 8&.# Data keempat " - -' y3in 2 8&.# @ - @ - 2 8&.# hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

target t 2 # y>t bobot baru 7# 2 -.9@"-.9'"#'"#' 2 #.= 7& 2 -.9@"-.9'"#'"#' 2 #.= bias baru b 2 8&.# @ "-.9'"#' 2 8#.= Data kedua " # -' y3in 2 8#.= @ #.= @ - 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"-' 2 -.9 7& 2 #.=@"-.9'"8#'"-' 2 #.= bias baru b 2 8#.= @ "-.9'"8#' 2 8&.# Data ketiga " - #' y3in 2 8&.# @ - @ #.= 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data keempat " - -' y3in 2 8&.# @ - @ - 2 8&.# hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

Iterasi keenam # Data pertama " # #' y3in 2 8&.# @ -.9 @ -.9 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B8 -.*'
gu7i8-%

Iterasi ketu&u' # Data pertama " # #' y3in 2 8&.# @ -.9 @ #.= 2 hasil akti,asi 2 y 2 - "8-.*By3inB -.*'
&&

Jaringan Syaraf Tiruan

target t 2 # y>t bobot baru 7# 2 -.9@"-.9'"#'"#' 2 #.= 7& 2 #.=@"-.9'"#'"#' 2 &.# bias baru b 2 8&.# @ "-.9'"#' 2 8#.= Data kedua " # -' y3in 2 8#.= @ #.= @ - 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 #.=@"-.9'"8#'"-' 2 -.9 7& 2 &.#@"-.9'"8#'"-' 2 &.# bias baru b 2 8#.= @ "-.9'"8#' 2 8&.# Data ketiga " - #' y3in 2 8&.# @ - @ &.# 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 -.9@"-.9'"8#'"-' 2 -.9 7& 2 &.#@"-.9'"8#'"#' 2 8#.= bias baru b 2 8&.# @ "-.9'"8#' 2 8&.) Data keempat " - -' y3in 2 8&.) @ - @ - 2 8&.) hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

target t 2 # y>t bobot baru 7# 2 -.9@"-.9'"#'"#' 2 #.= 7& 2 #.=@"-.9'"#'"#' 2 &.# bias baru b 2 8&.) @ "-.9'"#' 2 8&.# Data kedua " # -' y3in 2 8&.# @ #.= @ - 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data ketiga " - #' y3in 2 8&.# @ - @ &.# 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 #.=@"-.9'"8#'"-' 2 #.= 7& 2 &.#@"-.9'"8#'"#' 2 #.= bias baru b 2 8&.# @ "-.9'"8#' 2 8&.) Data keempat " - -' y3in 2 8&.) @ - @ - 2 8&.) hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t

Iterasi ke%elapan # Data pertama " # #' y3in 2 8&.) @ -.9 @ #.= 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B8 -.*'
gu7i8-%

Iterasi kesem ilan # Data pertama " # #' y3in 2 8&.) @ #.= @ #.= 2 hasil akti,asi 2 y 2 - "8-.*By3inB -.*'
&*

Jaringan Syaraf Tiruan

target t 2 # y>t bobot baru 7# 2 #.=@"-.9'"#'"#' 2 &.# 7& 2 #.=@"-.9'"#'"#' 2 &.# bias baru b 2 8&.) @ "-.9'"#' 2 8&.# Data kedua " # -' y3in 2 8&.# @ &.# @ - 2 hasil akti,asi 2 y 2 - "8-.*By3in B -.*' target t 2 8# y>t bobot baru 7# 2 &.#@"-.9'"8#'"#' 2 #.= 7& 2 &.#@"-.9'"8#'"-' 2 &.# bias baru b 2 8&.# @ "-.9'"8#' 2 8&.) Data ketiga " - #' y3in 2 8&.) @ - @ &.# 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data keempat " - -' y3in 2 8&.) @ - @ - 2 8&.) hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Iterasi kesepulu' # Data pertama " # #'

y3in 2 8&.) @ #.= @ &.# 2 -.9 hasil akti,asi 2 y 2 # "y3in A -.*' target t 2 # y2t Data kedua " # -' y3in 2 8&.) @ #.= @ - 2 8#.= hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data ketiga " - #' y3in 2 8&.) @ - @ &.# 2 8-.9 hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Data keempat " - -' y3in 2 8&.) @ - @ - 2 8&.) hasil akti,asi 2 y 2 8# "y3in B 8-.*' target t 2 8# y2t Pada iterasi kesepuluh tidak terjadi perubahan bobot shg proses pelatihan dapat dihentikan. Hasil akhir dari proses pembelajaran ini adalah 7# 2 #.= F 7& 2 &.# F b 2 8&.)

Shg persamaan garis pemisah antara daerah positif dan nol adalah #.=<# @ &.#<& . &.) 2 -.* Shg persamaan garis pemisah antara daerah negatif dan nol adalah #.=<# @ &.#<& . &.) 2 8-.*

x!
#.= x# + &.#x & &.) = -.*
#.= x# + &.#x & &.) = -.*
1.(

gu7i8-%

&=

Jaringan Syaraf Tiruan

#.= x# + &.#x & &.) < -.*

1.! " 1.)

#.= x# + &.#x & &.) > -.*

"Daerah negatif'

"Daerah positif'
!.!

x1

?ambar *.* ?aris batas keputusan Perceptron logika ADD dgn input biner targer bipolar Hasil Testing thd pola input dengan memakai bobot dan bias yg didapat dalam proses pelatihan 7# 2 #.= ( 7& 2 &.#( dan b 2 8&.) Enput 4obot 4ias net = b + xioutput wi target i <# <& 7# 7& b y2f"net' # # #.= &.# 8&.) -.9 # # # #.= &.# 8&.) 8#.= 8# 8# # #.= &.# 8&.) 8-.9 8# 8# #.= &.# 8&.) 8&.) 8# 8# Tabel *.# Hasil Testing logika ADD input biner dan target bipolar Soal latihan #. Tentukan solusi fungsi logika ADD dengan input biner dan target bipolar yang dilatih dengan algoritma perceptron. <# # # Enput <& # # b # # # # target t # 8# 8# 8#

+ntuk nilai learning rate 5 2 -.# ( -.& ( -.*( -.; dan nilai 0 2 -.*. Jelaskan hubungan antara learning rate 5 dengan jumlah iterasi yang diperlukan. &. Tentukan solusi fungsi logika ADD dengan input ipolar dan target bipolar yang dilatih dengan algoritma perceptron. <# # # 8# 8#
gu7i8-%

Enput <& # 8# # 8#

b # # # #

target t # 8# 8# 8#
&;

Jaringan Syaraf Tiruan

+ntuk nilai learning rate 5 2 -.9 dan nilai 0 2 -.*. 4erapakah jumlah iterasi yang diperlukan bagi jst tersebutG 4andingkan dengan jst yang dilatih dengan input biner dan target bipolarH *.?unakan JST Perceptron untuk mengklasifikasi pola input & dimensi dari & buah huruf yaitu IJI dan I1I. Pola dari huruf tsb dinyatakan dgn *. . . * . *. *. . . *. . . *. *. *. . . *
Pola #

. ***. *. . . * *. . . * *. . . * . ***.
Pola &

Dalam hal ini kita menganggap jaringan hanya mempunyai # output yaitu kelas J"untuk huruf IJI' dan kelas bukan J "untuk huruf I1I'. Misal kelas J kita beri nilai target # sedangkan kelas bukan J kita beri target .#. Sedangkan setiap lambang IKI kita beri nilai # dan lambang I.I kita beri nilai .#. ?unakanlah 5 2 -.9 dan nilai 0 2 -.*

gu7i8-%

&%

Anda mungkin juga menyukai