JARINGAN SYARAF TIRUAN JST DAN LOGIKA FUZZY ITF 306 JARINGAN SYARAF TIRUAN BAB 1 PENDAHULUAN Neuron McCulloch-Pitts (1943) Neuron Hebb (1949) BAB 2 PERCEPTRON BAB 3 ADALINE BAB 4 BACK PROJECTION
BAB 1 PENDAHULUAN Jaringan Syaraf Biologi Otak terdiri dari neuron-neuron (1012 ) dan penghubung antar neuron (6x1018) yang disebut sinapsis (synapse) Neuron terdiri dari sejumlah dendrit, soma (cell body) dan axon Dendrit menerima sinyal input berupa impuls listrik Dendrit memodifikasi sinyal tersebut dan diteruskan ke soma Soma menjumlahkan sinyal-sinyal yang masuk dari semua dendrit Bila jumlahnya melebihi suatu batas ambang (threshold), maka sinyal akan diteruskan ke neuron lain melalui axon
Jaringan Syaraf Tiruan Neuron dengan satu input (skalar) Dendrit : Input p dimodifikasi oleh pembobotan w menjadi : Bias berharga 1 dengan pembobotan b Neuron dengan banyak input (vektor) Soma : Semua input setelah pembobotan dijumlahkan menjadi : Sinapsis : Output neuron yang akan diteruskan ke neuron lain tergantung pada fungsi aktivasi f a = f(n)
Fungsi Aktivasi (fungsi transfer) - Berharga 0 atau 1 (biner) - Dapat berharga berapa saja - Dapat berharga berapa saja diantara antara 0 dan 1 - Dapat diturunkan (mempunyai turunan)
Neuron McCulloch-Pitts Neuron sederhana yang pertama diperkenalkan pada 1943 Disebut juga sebagai Threshold Logic Neuron (TLN) p1 w1 f p2 p3 p4 w2 w3 w4 n a Semua pembobotan positip sama (w1 = w2) Semua pembobotan negatip sama (w3 = w4) Fungsi aktivasinya biner sehingga sering disebut sebagai simple binary threshold neuron
Contoh Soal 1.1 Buat model neuron McCulloch-Pitts untuk menyatakan fungsi logika AND Jawab : Tabel kebenarannya AND adalah : p1 p2 a 1 Neuron yang sesuai adalah (dengan coba-coba): f 1 p1 p2 n a w1 = w2 =1 Threshold = 2 p1 p2 n = p1 w1 +p2 w2 a = f(n) 0.1+0.1=0 1 0.1+1.1=1 1.1+0.1=1 1.1+1.1=2
Threshold dapat diubah dengan menggunakan bias : f 1 p1 p2 n a b = - 2 p1 p2 n = p1 w1 +p2 w2 + b a = f(n) 0.1+0.1 - 2=- 2 1 0.1+1.1 - 2= -1 1.1+0.1 - 2 =- 1 1.1+1.1 - 2= 0 p2 p1 p2 = - p1 +2 Pembobotan dan bias dapat ditentukan secara analisis : p2 =p1 +0,5 Banyak garis-garis pemisah yang mungkin
Contoh Soal 1.2 Fungsi logika OR dengan dua masukan akan mempunyai keluaran 0 jika dan hanya jika kedua masukannya 0. Buat model neuron McCulloch-Pitts untuk menyatakan fungsi logika OR Jawab : Tabel kebenarannya OR adalah : Neuron yang sesuai adalah (dengan coba-coba): p1 p2 a 1 f 1 p1 p2 n a w1 = w2 =1 Threshold = 1 p2 p1 p1 p2 n = p1 w1 +p2 w2 a = f(n) 0.1+0.1=0 1 0.1+1.1=1 1.1+0.1=1 1.1+1.1=2 p2 =p1 +1
Contoh Soal 1.3 Buat model neuron McCulloch-Pitts untuk menyatakan fungsi logika p1 p2 Jawab : Tabel kebenarannya p1 p2 adalah : Neuron yang sesuai adalah (dengan coba-coba): p1 p2 p2 p1 p2 1 f 2 -1 p1 p2 n a w1 = 2 w2 = -1 Threshold = 2 p q p q (p q) = ( p q) = p q p2 p1 p1 p2 n = p1 w1 +p2 w2 a = f(n) 0.2+0.-1=0 1 0.2+1.-1= - 1 1.2+0.-1=2 1.2+1.-1=1
Contoh Soal 1.4 Buat model neuron McCulloch-Pitts untuk menyatakan fungsi logika XOR Jawab : Tabel kebenarannya XOR adalah : p2 p1 p1 p2 XOR 1 Ternyata jaringan untuk menyatakan fungsi logika XOR tidak bisa dibuat seperti contoh-contoh yang lalu ( tidak dapat dipisahkan oleh sebuah garis). Baru dapat dipisahkan dengan dua buah garis, sehingga perlu digunakan sebuah layar tersembunyi (hidden layer)
p1 XOR p2 (p1 p2) ( p2 p1) q1 = (p1 p2) w1 =2, w2 = -1, threshold = 2 q2 = (p2 p1) w1 =-1, w2 = 2, threshold = 2 a = p1 p2 w1 =1, w2 = 1, threshold = 1 f Layar tersembunyi p1 p2 2 -1 a OR 1 q1 q2 p1 p2 p2 q1 = p1 p2 p1 q2 = p2 p1 q1 q2 = p1 XOR p2 1
Soal Latihan 1.1 Buat model McCulloch-Pitts untuk menyatakan fungsi logika NAND dengan dua masukan biner p1 p2 NAND 1 Soal Latihan 1.2 Buat model McCulloch-Pitts untuk menyatakan fungsi logika XNOR dengan dua masukan biner p1 p2 XNOR 1
Soal Latihan 1.1 Buat model McCulloch-Pitts untuk menyatakan fungsi logika NAND dengan dua masukan biner f w1 w2 p1 p2 n a b 1 Jawab : p1 p2 NAND 1 p2 p1 p1 p2 n = p1 w1 +p2 w2+ b a = f(n) 0.3+0.4- 6=-6 1 0.3+1.4-6 = - 2 1.3+0.4-6 =-3 1.3+1.4- 6 =1
Soal Latihan 1.2 Buat model McCulloch-Pitts untuk menyatakan fungsi logika XNOR dengan dua masukan biner Jawab : p1 XOR p2 (p1 p2) ( p2 p1) XNOR = XOR = [p1 p2) ( p2 p1)] XNOR = (p1 p2) (p2 p1) XNOR =( p1 p2) ( p2 p1 ) p1 p2 p2 p1 p2 1 p2 p1
w2 = 1, w1 = -1, b= - 0,5 p1 p2 n = p1 w1 +p2 w2+ b a = f(n) 0.-1+0.1- 0,5=- 0,5 1 0.-1+1.1- 0,5 = 0,5 1.-1+0.1- 0,5 =- 1,5 1.-1+1.1- 0,5 =-0,5 XNOR =( p1 p2) ( p2 p1 ) = q2 q1 Neuron XNOR : f 1 p1 p2 -1 a AND q1 q2 - 0,5 1 - 2 1 - 0,5
Neuron Hebb Pada model neuron McCulloch-Pitts pembobotan dan bias harus ditentukan secara coba-coba atau secara analitis Diperlukan suatu cara/metoda tertentu untuk menentukan pembobotan dan bias Pada 1949 Hebb memperkenalkan model neuron yang dapat menentukan pemboboran dan bias secara iteratif Algoritma pelatihan Hebb dengan vektor input s dan target t : Inisialisasi semua bobot = 0 dan b = 0 Set masukan pi = si (i=1,2, …… R) Set keluaran a = t Perbaiki bobot : wi (baru) = wi (lama) + w dengan w = pi t Perbaiki bias : b(baru) =b(lama) + b dengan b = t
Contoh Soal 1.5 Buat jaringan Hebb untuk menyatakan fungsi logika AND jika representasi yang dipakai adalah : a). Masukan dan keluaran biner b). Masukan biner dan keluaran bipolar c). Masukan dan keluaran bipolar Jawab : a) Pola hubungan masukan-target : Masukan Target p1 p2 1 t f w1 w2 p1 p2 n a b 1
Hasil pelatihan : Masukan Target Perubahan bobot w = pi t b = t Bobot baru wbaru = wlama + w bbaru = blama + b p1 p2 1 t w1 w2 b w1 w2 b Inisiasi w1 = 1, w2 = 1, b = 1 Hasil akhir : p1 p2 n = p1 w1 +p2 w2+ b a = f(n) 0.1+0.1+1 = 1 1 0.1+1.1+1= 2 1.1+0.1+1= 2 1.1+1.1+1= 3 Keluaran target Jaringan Hebb tidak dapat ‘mengerti’ pola yang dimaksud
b) Pola hubungan masukan-target : Masukan Target p1 p2 1 t -1 Hasil pelatihan : Masukan Target Perubahan bobot w = pi t b = t Bobot baru wbaru = wlama + w bbaru = blama + b p1 p2 1 t w1 w2 b w1 w2 b Inisiasi -1 -2 -3 w1 = 0, w2 = 0, b = - 2
Hasil akhir : p1 p2 n = p1 w1 +p2 w2+ b a = f(n) 0.0+0.0 - 2 = -2 -1 1 0.0+1.0 -2 = - 2 1.0+0.0-2 = - 2 1.0+1.0 - 2= -2 w1 = 0, w2 = 0, b = - 2 Keluaran target Jaringan Hebb tidak dapat ‘mengerti’ pola yang dimaksud c) Pola hubungan masukan-target : Masukan Target p1 p2 1 t -1
Hasil pelatihan : Masukan Target Perubahan bobot w = pi t b = t Bobot baru wbaru = wlama + w bbaru = blama + b p1 p2 1 t w1 w2 b w1 w2 b Inisiasi -1 2 -2 -3 w1 = 2, w2 = 2, b = -2 Hasil akhir : p1 p2 n = p1 w1 +p2 w2+ b a = f(n) -1 -1.2+-1.2-2 = -6 - 1 1 -1.2+1.2-2= - 2 1.2+-1.2-2= - 2 1.2+1.2-2= 2 Keluaran = target Jaringan Hebb ‘mengerti’ pola yang dimaksud Keberhasilan jaringan Hebb tergantung pada representasi masukan dan target
Latihan Soal 1.3 Buat jaringan Hebb untuk mengenali pola pada tabel di bawah ini p1 p2 p3 1 t -1 Jawab : Hasil pelatihan : Masukan Target Perubahan bobot w = pi t b = t Bobot baru wbaru = wlama + w bbaru = blama + b p1 p2 p3 1 t w1 w2 w3 b w1 w2 w3 b Inisialisasi -1
Hasil Akhir : w1 = , w2 = ,w3 = , b = p1 p2 p3 T n = p1 w1 +p2 w2+ p3 w3 +b a = f(n) -1 1