Jaringan Syaraf Tiruan PKB - Anton ntonie ie
Biological Inspiration Anim Animals als are able able to to reac reactt adap adaptive tively ly to changes in their external and internal environment, and they use their nervous system system to perform these behaviours. The The nervou nervous s sy syste stem m is build build by rela relativ tively ely simple units, the neurons, so copying their behavior and functionality should be the solution.
Biological Inspiration Anim Animals als are able able to to reac reactt adap adaptive tively ly to changes in their external and internal environment, and they use their nervous system system to perform these behaviours. The The nervou nervous s sy syste stem m is build build by rela relativ tively ely simple units, the neurons, so copying their behavior and functionality should be the solution.
Human
Brain
Bert Bertug ugas as untu untuk k mempr mempros oses es info informa rmasi si Sep Seperti erti pro prose seso sorr sed sederha erhana na Masin Masing-ma g-masin sing g cell cell terse tersebu butt berin berinter teraks aksii mendukung kinerja otak Seti Setiap ap sel sel (ne (neur uron on)) memili memiliki ki satu satu nuk nukle leus us (soma), bertugas memproses informasi, informasi diterima oleh dendrit, dan disebarkan melalui akson Perte Pertemua muan n infor informasi masi antar antar sy syara araff berad berada a di sinapsis
Human
Brain
Manu Manusia sia memiliki memiliki krg lbh lbh 10^ 10^12 12 neu neuron ron!! Dan Dan 6x10^18 sinapsis! Info Informas rmasii yan yang g dikiri dikirimkan mkan berup berupa a rang rangsan sanga gan n dengan sebuah batas ambang (threshold) ± Pada batas batas terten tertentu, tu, syaraf syaraf lain lain akan teraktif teraktifasi asi dan merespon Hubungan
antar syaraf terjadi secara dinamis Otak Otak man manus usia ia memi memililiki ki kemam kemampu puan an untu untuk k belajar dan beradaptasi ± Mampu Mampu mengena mengenalili pola, wajah wajah,, mengkontro mengkontroll organ tubuh!
Human
Neuron
Dendrites
Soma (cell body)
Axon
Human
axon
synapses
Neuron (Detail) dendrites
Human
Brain
Neuron merupakan sistem yang fault tolerance ± Dapat mengenali sinyal input yang berbeda dari sebelumnya Dapat mengenali orang yg blm pernah ditemui hanya dengan melihat dari foto Dapat mengenali orang yang berubah krn tua misalnya
± Tetap dapat bekerja walau beberapa neuronnya rusak, neuron lain dapat tumbuh dan dilatih
Learning
Learning
in biological systems
= learning by adaptation
The young animal learns that the green fruits are sour, while the yellowish/reddish ones are sweet. The learning happens by adapting the fruit picking behavior.
At the neural level the learning happens by changing of the synaptic strengths, eliminating some synapses, and building new ones.
Learning
as optimisation
The objective of adapting the responses on the basis of the information received from the environment is to achieve a better state. E.g., the animal likes to eat many energy rich, juicy fruits that make its stomach full, and makes it feel happy.
In other words, the objective of learning in biological organisms is to optimise the amount of available resources, happiness, or in general to achieve a closer to optimal state.
JST Suatu sistem pemrosesan informasi yang mencoba meniru kinerja otak manusia Merupakan generalisasi model matematis dengan asumsi: ± Pemrosesan informasi terjadi pada elemen sederhana (=neuron) ± Sinyal dikirimkan diantara neuron-neuron melalui penghubung (=dendrit dan akson) ± Penghubung antar elemen memiliki bobot yang akan menambah atau mengurangi sinyal ± Untuk menentukan output, setiap neuron memiliki fungsi aktivasi (biasanya non linier) yang dikenakan pada semua input ± Besar output akan dibandingkan dengan threshold
JST Baik tidaknya suatu model JST ditentukan oleh: ± Pola antar neuron (arsitekur jaringan) ± Metode untuk menentukan dan mengubah bobot (disebut metode learning) ± Fungsi aktivasi
JST disebut juga: brain metaphor, computational neuroscience, parallel distributed processing
JST JST dapat belajar dari pengalaman! Biasanya berhubungan dengan angka (numerik) sehingga data yang tidak numerik harus dibuat ke numerik Tidak ada rumus yang tetap (fixed) sehingga disebut dengan free-estimator! JST disebut black box atau tidak transparan karena tidak mampu menjelaskan bagaimana suatu hasil didapatkan! JST mampu menyelesaikan permasalahan yang tidak terstruktur dan sulit didefinisikan!
Kelebihan JST Mampu mengakuisisi pengetahuan walau tidak ada kepastian Mampu melakukan generalisasi dan ekstraksi dari suatu pola data tertentu JST dapat menciptakan suatu pola pengetahuan melalui pengaturan diri atau kemampuan belajar (self organizing) Memiliki fault tolerance, gangguan dapat dianggap sebagai noise saja Kemampuan perhitungan secara paralel sehingga proses lebih singkat
JST mampu: Klasifikasi: memilih suatu input data ke dalam kategori tertentu yang sudah ditetapkan Asosiasi: menggambarkan suatu obyek secara keseluruhan hanya dengan bagian dari obyek lain Self organizing: kemampuan mengolah datadata input tanpa harus mempunyai target Optimasi: menemukan suatu jawaban terbaik sehingga mampu meminimalisasi fungsi biaya
Kelemahan JST Kurang mampu untuk melakukan operasi operasi numerik dengan presisi tinggi Kurang mampu melakukan operasi algoritma aritmatik, operasi logika dan simbolis Lamanya
proses training yang mungkin terjadi dalam waktu yang sangat lama untuk jumlah data yang besar
Aplikasi JST Pengenalan pola (pattern recognition) ±
Huruf,
tanda tangan, suara, gambar yang sudah sedikit berubah (mengandung noise) ± Identifikasi pola saham ± Pendeteksian uang palsu, kanker
Signal Processing ± Menekan noise pada saluran telepon
Peramalan ± Peramalan saham
Autopilot dan simulasi Kendali otomatis otomotif
Aplikasi JST Tasks to be solved by artificial neural networks: controlling the movements of a robot based on self perception and other information (e.g., visual information); deciding the category of potential food items (e.g., edible or non-edible) in an artificial world; recognizing a visual object (e.g., a familiar face); predicting where a moving object goes, when a robot wants to catch it.
Sejarah Model JST formal pertama diperkenalkan oleh McCulloch dan Pitts (1943) 1949, Hebb mengusulkan jaringan Hebb 1958, Rosenblatt mengembangkan perceptron untuk klasifikasi pola 1960, Widrow dan Hoff mengembangkan ADALINE dengan aturan pembelajaran Least Mean Square ( LMS) 1974, Werbos memperkenalkan algoritma backpropagation untuk perceptron banyak lapisan
Sejarah 1982, Kohonen mengembangkan learning unsupervised untuk pemetaan 1982, Grossberg dan Carpenter mengembangkan Adaptive Resonance Theory (ART, ART2, ART3) 1982, Hopfield mengembangkan jaringan Hopfield untuk optimasi 1985, Algoritma Boltzmann untuk jaringan syaraf probabilistik 1987, dikembangkan BAM (Bidirectional Associative Memory) 1988, dikembangkan Radial Basis Function
Model Neuron JST n
X1 W1
z !
Y1
§ wi xi ; y ! H ( z ) i !1
X2
Y2 W2
X3
W3
Fungsi aktivasi
Y3
Bobot
Masukkan
Y1 = X1.W1 + X2.W2 + X3.W3; dst«
Keluaran
Model Neuron Pada JST, neuron-neuron akan dikumpulkan dalam lapisan lapisan yang disebut dengan layers Neuron dalam satu lapisan akan dihubungkan dengan neuron pada lapisan lainnya Kadang muncul juga layer tersembunyi (hidden layer) untuk menambah keakuratan pelatihan Informasi tersebut bisa dirambatkan secara forward ataupun backward
Istilah dalam JST Neuron: sel syaraf tiruan yang merupakan elemen pengolah JST Jaringan: bentuk arsitektur JST, kumpulan neuron yang saling berhubungan dan membentuk lapisan Input: sebuah nilai input yang akan diproses menjadi nilai output Output: solusi dari nilai input Hidden layer: lapisan yang tidak terkoneksi secara langsung dengan lapisan input atau output, memperluas kemampuan JST Bobot: nilai matematis dari sebuah koneksi antar neuron Fungsi aktivasi: fungsi yang digunakan untuk mengupdate nilai-nilai bobot per-iterasi dari semua nilai input. ± Fungsi aktivasi sederhana adalah mengakalikan input dengan bobotnya dan kemudian menjumlahkannya (disebut penjumlahan sigma) ± Berbentuk linier atau tidak linier, dan sigmoid
Paradigma pembelajaran: bentuk pembelajaran, supervised learning, atau unsupervised learning
JST dengan 3 layer
Arsitektur Jaringan Single ± ±
Layer
Hanya
memiliki satu lapisan dengan bobot-bobot terhubung. Langsung menerima input dan mengolahnya menjadi output tanpa menggunakan hidden layer
Multi
Layer
± Memiliki satu atau lebih lapisan input, satu atau lebih lapisan output, dan lapisan tersembunyi ± Dapat menyelesaikan masalah yang lebih kompleks karena lebih akurat ± Fungsi pembelajarannya lebih rumit
Kompetitive Model / Recurrent Model ±
Hubungan
antar neuron tidak diperlihatkan secara langsung pada arsitektur ± Hubungan antar neuron dapat digambarkan sebagai jaring yang rumit
Model JST Single
Layer
Multi
Competitive Recurrent
Layer
/
Layer
Pengelompokkan JST JST Feed Forward ± Tidak mempunyai loop ± Contoh: single layer perceptron, mutilayer perceptron, radial basis function
JST Feed Backward (Recurrent) ± Memiliki loop, lapisan output akan memberi input lagi bagi lapisan input ± Contoh: competitive networks, kohonen, hopfield, ART
Paradigma pembelajaran Supervised
Learning
± Kumpulan input berusaha membentuk target output yang sudah diketahui sebelumnya ± Perbedaan antara output yang masih salah dengan output yang diharapkan harus sekecil mungkin ± Biasanya lebih baik daripada unsupervised ± Kelemahan: pertumbuhan waktu komputasi eksponensial, data bnyk berarti semakin lambat
Unsupervised
Learning
± JST mengorganisasikan dirinya untuk membentuk vektor-vektor input yang serupa tanpa menggunakan data atau contoh-contoh pelatihan, biasanya ke dalam suatu kategori/kelompok2 tertentu Hibrida Learning
± Gabungan antara unsupervised dan supervised
Algoritma Pembelajaran Umum Dimasukkan n data pelatihan Inisialisasi bobot-bobot jaringan, set i = 1 Masukkan contoh ke-i ke dalam input Cari tingkat aktivasi unit output menggunakan algoritma yang ditetapkan ± If memenuhi kriteria output then exit else:
Update bobot2 menggunakan fungsi galat error, Bobot baru = bobot lama + delta If i=n then reset i=1, else i=i+1
JST dan Aplikasi Klasifikasi: ADA LINE, Backpropagation Pengenalan Pola: ART, Backpropagation Peramalan: ADA LINE, MADALINE, Backpropagation Optimasi: ADA LINE, Hopfield, Boltzman, Backpropagation
Fungsi Aktivasi Fungsi undak biner (hard limit)
Fungsi undak biner (threshold)
U
Fungsi Aktivasi Fungsi bipolar
Fungsi bipolar dengan threshold
Fungsi Aktivasi Fungsi
Linier
(identitas)
Fungsi Sigmoid biner
McCulloch Pitts Fungsi aktivasi biner Besar bobotnya sama Memiliki threshold yang sama Contoh buat fungsi logika ³and´, input X1 dan X2, dan Y = 1 jika dan hanya jika inputan 1 X1 1 1 0 0
X2 1 0 1 0
Y 1 0 0 0
Jawab X1
X2
net
1
1
1.1+1.1=2
Y, 1 jika net >=2, 0 jika net < 2
1
1
0
1.1+0.1=1
0
0
1
0.1+1.1=1
0
X 1
1
Y 2
0
0
0.1+0.1=0
0
X 2
1
Ternyata BERH ASIL mengenali pola
Problem ³OR´ X1
X2
net
1
1
1.1+1.1=2
Y, 1 jika net >=1, 0 jika net < 1
1
1
0
1.1+0.1=1
1
0
1
0.1+1.1=1
1
X1
1
Y 1
0
0
0.1+0.1=0
0
X2
1
Ternyata BERH ASIL mengenali pola
Problem ³X1 and not(X2)´ X1
X2
net
1
1
1.2+1.-1=1
0
1
0
1.2+0.-1=2
1
0
1
0.2+1.-1=-1
0
0
0
0.2+0.-1=0
Y, 1 jika net >=2, 0 jika net < 2
0
X1
2
Y 2 X2
-1
Ternyata BERH ASIL mengenali pola
Problem ³XOR´ X1
X2
Y
1
1
0
1
0
1
0
1
1
0
0
0
GAGAL!
F(0,1) = 1
F(1,1) = 0
F(0,0) = 0
F(1,0) = 1
Solusi XOR = (x1 ^ ~x2) V (~x1 ^ x2) Ternyata dibutuhkan sebuah layer tersembunyi 2 2 X1
Z1
1
-1 Y
-1 1 X2
Z2
2 2
1
Tabel
Jaringan
HEBB
Menggunakan iterasi untuk menghitung bobot dan bias Dalam setiap iterasi, bobot dan bias diubah berdasarkan rumus tertentu W = bobot Wbaru = Wlama + X1Y1 Algoritma: ± Init, semua bobot wi = 0 ± Untuk semua input: Set fungsi aktivasi xi = si Set output y=t Perbaiki bobot: w(baru) = w(lama) + delta w, dengan delta w = xi*y Perbaiki bias, b(baru) = b(lama) + y