Pelatihan ANN di RC-OPPINET ITB Sri Kusumadewi, Artificial...
Transcript of Pelatihan ANN di RC-OPPINET ITB Sri Kusumadewi, Artificial...
•Pelatihan ANN di RC-OPPINET ITB
•Sri Kusumadewi, Artificial Intelligence (Teknik dan Aplikasinya).
•Perkuliah ANN Elektro ITB
12/11/2009 1LSR, AI: IK103
Model komputasi yang terinspirasi dari nuerological model brain/otak.
Otak manusia bekerja dengan cara yang berbeda dibandingkan komputer digital.◦ highly complex, nonlinear, and parallel computing
◦ many times faster than d-computer in
pattern recognition, perception, motor control
◦ has great structure and ability to build up its own rules by experience
dramatic development within 2 years after birth
continues to develop afterward
Language Learning Device before 13 years old
◦ Plasticity : ability to adapt to its environment
12/11/2009 2LSR, AI: IK103
Struktur otak manusia sangat komplek
Otak manusia terdiri dari sel-sel syaraf (neuron) dan penghubung (sinapsis)
Neuron bekerja berdasarkan impuls/sinyal yang diberikan padanya, dan diteruskan ke neuron lainnya.
12/11/2009 3LSR, AI: IK103
Diantaranya :◦ Mengenali pola
◦ Melakukan perhitungan
◦ Mengontrol organ-organ tubuh
semuanya dilakukan dengan kecepatan tinggi dibandingkan komputer digital.
Contoh:
Pengenalan wajah seseorang yang sedikit berubah (memakai topi, jenggot tambahan).
12/11/2009 4LSR, AI: IK103
Biological Neuron
Excerpted from Artificial Intelligence: Modern Approachby S. Russel and P. Norvig
12/11/2009 5LSR, AI: IK103
12/11/2009 6LSR, AI: IK103
12/11/2009 7LSR, AI: IK103
Sistem Pemrosesan informasi dengan karakteristik menyerupai jaringan syaraf biologi.
Dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi.
Asumsi pada model:◦ Pemrosesan informasi terjadi pada neuron.◦ Sinyal dikirimkan antar neuron melalui
penghubung.◦ Penghubung antar neuron memiliki bobot yang
akan memperkuat atau memperlemahkan sinyal.◦ Untuk menentukan output, setiap neuron
menggunakan fungsi aktivasi, yang menentukan sinyal diteruskan ke neuron lain atau tidak.
12/11/2009 8LSR, AI: IK103
Machine designed to model the way in which brain performs tasks◦ implemented by electronic devices and/or software
(simulation)◦ Learning is the major emphasis of NN
Massively parallel distributed processor◦ massive interconnection of simple processing units◦ simple processing units store experience and make it
available to use◦ knowledge is acquired from environment thru learning
process
Learning Machine◦ modify synaptic weights to obtain design objective◦ modify own topology - neurons die and new one can grow
Connectionist network - connectionism
12/11/2009 9LSR, AI: IK103
Human Brain
• Human nervous system
– 1011 neurons in human cortex
– 60 x 1012 synaptic connections
– 104 synapses per neuron
– 10-3 sec cycle time (computer : 10-9 sec)
– energetic efficiency : 10-16 joules operation per second
(computer : 10-6 joules)
Receptors Neural Net Effectorsstimulus response
12/11/2009 10LSR, AI: IK103
Human Brain• Neuron structure
– nucleus, cell body, axon, dendrite, synapses
• Neurotransmission
– Neuron’s output is encoded as a series of voltage pulses
• called action potentials or spikes
– by means of electrical impulse effected by chemical transmitter
– Period of latent summation
• generate impulse if total potential of membrane reaches a level : firing
– excitatory or inhibitory 12/11/2009 11LSR, AI: IK103
Models of Neuron
• Neuron is information processing unit
• A set of synapses or connecting links
– characterized by weight or strength
• An adder
– summing the input signals weighted by synapses
– a linear combiner
• An activation function
– also called squashing function
• squash (limits) the output to some finite values
12/11/2009 12LSR, AI: IK103
Biological Neuron
Excerpted from Artificial Intelligence: Modern Approachby S. Russel and P. Norvig
12/11/2009 13LSR, AI: IK103
JST sederhana pertama kali diperkenalkan oleh McCulloh dan Pitts tahun 1943.◦ Menyimpulkan bahwa kombinasi beberapa
neuron sederhana menjadi sebuah sistem neuron akan meningkatkan kemampuan komputasinya.
◦ Bobot dalam jaringan diatur untuk melakukan fungsi logika sederhana
◦ Fungsi aktivasi yang digunakan adalah fungsi threshold.
Tahun 1958, Rosenblatt memperkenalkan model jaringan perceptron◦ Terdapat metode pelatihan untuk mengoptimalkan hasil
iterasi.
12/11/2009 14LSR, AI: IK103
Widrow dan Hoff (1960) mengembangkan perceptron dengan memperkenalkan aturan pelatihan jaringan (ADALINE = adative Linear Neuron).
◦ Disebut aturan delta (kuadrat rata-rata terkecil)
◦ Mengubah bobot perceptron apabila keluaran yang dihasilkan tidak sesuai dengan target yang diinginkan.
Apa yang dilakukan peneliti sebelumnya hanya menggunakan single layer.
Rumelhart (1986) mengembangkan perceptron menjadi backpropagation.◦ Jaringan di proses menjadi beberapa layer.
12/11/2009 15LSR, AI: IK103
Pengenalan pola (pattern recognition)
◦ Mengenal huruf, angka, suara, tanda tangan.
◦ Menyerupai otak manusia yang masih mampu mengenali orang sudah beberapa lama tidak dijumpai (wajah/bentuk tubuh sedikit berubah)
Pengolahan signal
◦ Menekan noise dalam saluran telepon
Peramalan (forecasting)
◦ Meramal kejadian masa datang berdasarkan pola kejadian yang ada di masa lampau.
◦ JST mampu mengingat dan membuat generalisasi dari apa yang sudah ada sebelumnya.
12/11/2009 16LSR, AI: IK103
Kelebihan :◦ Banyak hal/aplikasi yang dapat dilakukan oleh JST.
Kekurangan:◦ Ketidak akuratan hasil yang diperoleh.
◦ Bekerja berdasarkan pola yang terbentuk pada inputnya.
◦ Membutuhkan data pelatihan yang banyak.
12/11/2009 17LSR, AI: IK103
Input: data masukan beserta bobot-bobotnya.
Summation(Σ): menjumlahkan semua hasil perkalian nilai dengan bobotnya.
Fungsi aktifasi: sebagai penentuan nilai ambang, jika terpenuhi maka signal diteruskan.
Output: hasil dari komputasi.
12/11/2009 18LSR, AI: IK103
Nonlinear model of a neuron
wk1x1
wk2x2
wkmxm
...
...
Biasbk
(.)
vk
Inputsignal
Synapticweights
Summingjunction
Activationfunction
Outputyk
bxwv kj
m
jkjk
1
)(vy kk
12/11/2009 19LSR, AI: IK103
Ilustrasi Processing Unit ANN
12/11/2009 20LSR, AI: IK103
Input: data masukan dari processing unit sebelumnya atau dari luar.
Bobot(weight): derajat pengaruh nilai input pada processing unit.
Summation: weighted sum dari nilai input.
Nilai ambang(threshold value): jika weighted sum melebihi nilai threshold maka signal akan ditransmisikan.
Ouput: signal yang keluar lewat axon.
12/11/2009 21LSR, AI: IK103
Pembelajaran terawasi: jika output yang diharapkan telah diketahui sebelumnya.
Pembelajaran tak terawasi: tidak memerlukan/tidak dapat ditentukan target output.
12/11/2009 22LSR, AI: IK103
McCulloch dan Pitts (penemu)
Hebb Rule.
Perceptron.
Delta rule. (ADALINE = Adative Linear Neuron)
Backpropagation.
Heteroassociative Memory.
Bidirection Associative Memory (BAM).
Learning Vector Quantization (LVQ).
12/11/2009 23LSR, AI: IK103
Jaringan Kohonen
12/11/2009 24LSR, AI: IK103
Model JST pertama pada tahun 1943
Menyimpulkan bahwa kombinasi beberapa neuron sederhana menjadi suatu sistem neuron dapat meningkatkan kemampuan komputasi.
Digunakan untuk melakukan fungsi logika sederhana.
Banyak prinsipnya yang masih digunakan pada JST saat ini.
12/11/2009 25LSR, AI: IK103
12/11/2009 26LSR, AI: IK103
12/11/2009 27LSR, AI: IK103
Metode pembelajaran paling sederhana.
Untuk menghitung nilai logika.
Pembelajaran dengan cara memperbaiki nilai bobot yaitu bobot dinaikkan jika terdapat 2 neuron yang terhubung dan keduanya pada kondisi “on” pada saat yang sama.
wi= bobot pada input ke-i.
xi = input data ke-i
y = output data
( ) ( ) *i i iw baru w lama x y
12/11/2009 28LSR, AI: IK103
Misalkan kita ingin membangun jaringan dengan kriteria sbb:
Input Bias Target/Outputx1 X2
-1 -1 1 -1
-1 1 1 1
1 -1 1 1
1 1 1 1
Bobot awal dan bobot bias = 0
12/11/2009 29LSR, AI: IK103
Langkah: ◦ Hitung perubahan bobot untuk tiap data input.
◦ Lakukan iterasi sebanyak data input.
◦ Lakukan testing/pengujian.
x1
x2
w1
w2
Σ(x*w)+b
b
y_in F(y_in)y
11, _ 0
( _ )1, _ 0
y inf y in
y in
12/11/2009 30LSR, AI: IK103
Pengujian:
Misal ambil data x=[-1,-1]
Maka
Berdasarkan fungsi aktifasi maka
Target yang dihasilkan = -1 (cocok).
1* 1* 1 2* 2
2 ( 1* 2) ( 1* 2) 2
Y b x w x w
Y
1, _ 0( _ )
1, _ 0
y inf y in
y in
12/11/2009 31LSR, AI: IK103
Jaringan perceptron menyerupai arsitektur jaringan Hebb.
Diperkenalkan oleh Rosenblatt (1962) dan Minsky-Papert(1969).
Model dengan aplikasi dan pelatihan yang terbaik pada masa tersebut.
12/11/2009 32LSR, AI: IK103
12/11/2009 33LSR, AI: IK103
12/11/2009 34LSR, AI: IK103
12/11/2009 35LSR, AI: IK103
12/11/2009 36LSR, AI: IK103
12/11/2009 37LSR, AI: IK103
12/11/2009 38LSR, AI: IK103
12/11/2009 39LSR, AI: IK103
12/11/2009 40LSR, AI: IK103
12/11/2009 41LSR, AI: IK103
12/11/2009 42LSR, AI: IK103
12/11/2009 43LSR, AI: IK103
12/11/2009 44LSR, AI: IK103
12/11/2009 45LSR, AI: IK103
12/11/2009 46LSR, AI: IK103
12/11/2009 47LSR, AI: IK103
12/11/2009 48LSR, AI: IK103
12/11/2009 49LSR, AI: IK103
12/11/2009 50LSR, AI: IK103
12/11/2009 51LSR, AI: IK103
12/11/2009 52LSR, AI: IK103
12/11/2009 53LSR, AI: IK103
Termasuk bentuk jaringan syaraf yang sederhana.
Jaringan dengan satu layer.
Level Input Level Output12/11/2009 54LSR, AI: IK103
Input Output
X1 X2 OR AND
XOR
0 0 0 0 0
0 1 1 0 1
1 0 1 0 1
1 1 1 1 0
• Misalkan ANN akan digunakan untuk melakukan logical AND, OR dan XOR.• Telah dibangun jaringan neural spt terlihat diatas • Misalkan bobot diberikan untuk tiap kasus• Nilai threshold (θ) = 1
12/11/2009 55LSR, AI: IK103
12/11/2009 56LSR, AI: IK103
12/11/2009LSR, AI: IK103 57
1. Bagaimana kita tahu bobot yang tepat untuk menghasilkan output seperti yg kita inginkan?
Dengan training, kita bisa melakukan inisialisasi weight sembarang.
2. Bagaimana untuk operasi XOR ?dengan konfigurasi jaringan neural seperti itu (2
layer) tidak akan mendapatkan hasil XOR. Lantas bagaimana cara mendapatkannya ?
12/11/2009 58LSR, AI: IK103
Adalah mengatur kembali besarnya bobot sebagai jawaban atas ketidaktepatan hasil (output).
Yang dirubah pada training hanyalah bobot, nilai aktivasi/threshold value, susunan input tidak diubah.
Prinsip training: Besarnya kontribusi link thd error menentukan besarnya perubahaan bobot pada link tsb.
Gunakan delta rule:
12/11/2009 59LSR, AI: IK103
12/11/2009 60LSR, AI: IK103
Gunakan delta rule:Dimana:
12/11/2009 61LSR, AI: IK103
wij
j i ij
j j( )
a w
y f a
i j
AND ORDelta Rule
ij j( )j iw c g a a
j
j
i
konstanta (learning rate),
biasanya c 0.35 berhasil
nilai target unit j
nilai output unit j
nilai output unit i
c
g
a
a
12/11/2009 62LSR, AI: IK103
Output
1
0
0
0
Lakukan Implementasi Ann
Dengan Bobot Seperti Pada Gambar
Untuk Mendapatkan Target (Or)
12/11/2009 63LSR, AI: IK103
Misal: Parameter c= 0.35
w13 dan w23 = 0.7
Implementasi TrainingMenggunakan delta rule
12/11/2009 64LSR, AI: IK103
12/11/2009 65LSR, AI: IK103
Jadi diperoleh
◦ W13 = 1.05
◦ W23 = 1.05
Update bobot pada jaringan, lakukan perhitungan
Lakukan iterasi kembali jika belum menghasilkan sesuai dengan target
12/11/2009 66LSR, AI: IK103
12/11/2009 67LSR, AI: IK103
12/11/2009 68LSR, AI: IK103
Proses menghitung untuk mendapatkan output disebut FEED FORWARD.
Proses mengubah bobot di tiap link disebut LEARNING.
Algorithma standard untuk proses learning adalah Back Propagation.
12/11/2009 69LSR, AI: IK103
12/11/2009 70LSR, AI: IK103
12/11/2009 71LSR, AI: IK103
Biasanya pilihannya adalah fungsi sigmoid dan tanh(x), keuntungannya fungsi-fungsi tersebut dapat diturunkan dengan mudah.
12/11/2009 72LSR, AI: IK103
Gambar lingkaran - lingkaran putih di bawah menunjukkan diagram
seperti yang dijelaskan di atas:
Representasi Lain:
12/11/2009 73LSR, AI: IK103
12/11/2009 74LSR, AI: IK103
Merupakan algorithma pebelajaran untuk melakukan update bobot.
Biasanya digunakan untuk multilayer (input, hidden, dan output).
Langkah komputasi: lakukan proses maju (forward propagation), kemudian update error dari bobot dengan backward propagation.
Biasanya menggunakan fungsi aktifasi sigmoid.
12/11/2009 75LSR, AI: IK103
12/11/2009 76LSR, AI: IK103
Inisialisasi bobot (ambil acak) jangan terlalubesar/kecil biasanya [-0.5;0.5], [-1,1].
Tetapkan: maksimum epoh, target error, learning rate (α).
Inisialisasi: epoh = 0, MSE (mean square error) =1.
Kerjakan langkah berikut selama (epoh < maks epoh) dan MSE > target error.1. Epoh = Epoh + 1
2. Untuk tiap – tiap pasangan elemen yang akan dilakukanpembelajaran, lakukan :
3. Feed Forward.
4. Back Propagation.
5. Hitung MSE
Cek kondisi pemberhentiaan
12/11/2009 77LSR, AI: IK103
Feed Forward:a. Setiap unit input (xi, i=1,..n) menerima input xi
dan meneruskannya ke semua hidden layer.
b. Hitung:
c. Hitung: 0
1
_ ( _ ), ( 1,..., )n
j i ij j
i
z in j v x v dan z f z in j j p
0
1
_ ( _ ), ( 1,..., )p
k j jk k
j
y ink w z w dan y f y ink k m
12/11/2009 78LSR, AI: IK103
Back Propagation of Errora. Tiap unit output menerima target tk (k=1,…,m)
hitung:
hitung koreksi bobot:
hitung koreksi bobot pada bias :
b. Hitung:
2 ( ). '( _ ), ( 1,..., )k k kt y f y ink k m
2. .jk k jw z
0 2.k kw
2
1
1
1
0 1
_ .
_ . '( _ )
. . ( ( )
. ( ( )
m
k jk
k
j
ij j i
j j
inj w
inj f z inj
v x koreksi bobot input hidden
v koreksi bobot bias input hidden
12/11/2009 79LSR, AI: IK103
c. Update bobot dan bias
( ) ( )
( ) ( )
jk jk jk
ij ij ij
w baru w lama w
v baru v lama v
12/11/2009 80LSR, AI: IK103