Professional Documents
Culture Documents
p2 n=Σpi.wi
w2
.
Σ F(y)
a=f(n)
.
. wi
pi
Bobot/Weight = bisa diatur
Model Neuron dengan bias
Masukan /Inputs
p1
w1 Penjumlahan Fungsi Aktivasi
p2 n=Σpi.wi
w2
.
Σ F(y)
a=f(n)
.
.
wi b (Bias)=Fix
pi Bobot/Weight = bisa diatur
Neuron Sederhana
Model Matematis
X=input/masukan i= banyaknya input
W=bobot/weight
Keluaran Penjumlah -> n = Σpi.wi
(Jumlah semua Input(pi) dikali bobot (wi)
Output/Keluaran Neuron=
●
a = f(n) f=fungsi aktivasi
Fungsi Aktivasi
Beberapa fungsi aktivasi a=f(n)
1 Jika n ≥ 0
Hardlimit function a =
0 Jika n < 0
●
Linear Function a = n
●
Sigmoid Function a = 1 /( 1+ e-n )
Grafik Fungsi Aktivasi
Hardlimiter Purelinear
a=f(n)
Sigmoid
Kegunaan Aktivasi
●
Untuk pengambilan keputusan biasanya
digunakan Hardlimit
●
Untuk pengenalan pola/jaringan back
propagation biasanya digunakan sigmoid
●
Untuk prediksi/aproksimasi linear
biasanya digunakan linear
Model McCulloch and Pitts
●
Neuron menghitung jumlah bobot dari setiap sinyal input
dan membandingkan hasilnya dengan nilai
bias/threshold, b. Jika input bersih kurang dari threshold,
output neuron adalah -1. Tetapi, jika input bersih lebih
besar dari atau sama dengan threshold, neuron
diaktifkan dan outputnya ditetapkan +1 (McCulloch and
Pitts, 1943). Fungsi aktivasi ini disebut Fungsi
i
Tanda (Sign Function). Sehingga
n= ∑
i=1
pi wi output aktual dari neuron dapat
ditunjukkan dengan:
+ 1 jika n ≥ b i
a= a = sign ∑ pi wi − b
− 1 jika n < b i= 1
Perceptron
●
Perceptron (Rosenblatt, 1958): JST training
yang sederhana dipakaikan prosedur algoritma
training yang pertama kali. Terdiri dari neuron
tunggal dengan bobot synaptic yang diatur dan
hard limiter.
●
Operasinya didasarkan pada model neuron
McCulloch dan Pitts.
●
Jumlah input yang telah diboboti dipakaikan
kepada hard limiter: menghasilkan output +1 jika
input positif dan -1 jika negatif
mengklasifikasikan output ke dalam dua area
A1 dan A2.
i
∑
i= 1
pi wi − b = 0
Proses Belajar
Target = Nilai yang diinginkan, Output = Nilai yang keluar dari neuron
Proses Compare (membandingkan) antara output dengan target,
Jika terjadi perbedaan maka weight/bobot di adjust/atur sampai nilai ouput=
(mendekati) nilai target
Proses Belajar
Target
Masukan
p1
Keluaran
w1 n=Σpi.wi a=f(n) +
p2 w2 -
.
Σ F(y)
.
. wi b
pi Error=target-a
Masukan n=p1.w1
w1 F(y)
p1 Σ a=f(n)
Bobot
Proses Belajar jika masukan positif
Untuk masukan positif penambahan bobot menyebabkan peningkatan keluaran
Target
(10)
(6)
Masukan Keluaran
(3) n=p1.w1 a=f(n) +
p1 w1 -
(2)
Σ F(y)
F=linear
Karena e ≥ 0 maka keluaran
a hrs dinaikan untuk e=10-6=4 (+)
menaikan a maka naikan nilai Error=target-a
w1 karena masukan positif
w1 next= w1 old + delta w1
Proses Belajar jika masukan negatif
Untuk masukan negatif penambahan bobot menyebabkan penurunan keluaran
Target
(10)
(-6)
Masukan Keluaran
(3) n=p1.w1 a=f(n) +
p1 w1 -
(-2)
Σ F(y)
F=linear
Karena e ≥ 0 maka keluaran e=10-(-6)=16 (+)
a hrs dinaikan untuk
menaikan a maka turunkan Error=target-a
nilai w1 karena masukan
negatif
w1 next= w1 old + (- delta w1)
Proses Perceptron Belajar
●
Pada awalnya bobot dibuat kecil untuk menjaga
jangan sampai terjadi perbedaan yang sangat
besar dengan target.
●
Bobot awal adalah dibuat random, umumnya
dalam interval [-0.5 – 0.5]
●
Keluaran adalah proses jumlah perkalian antara
masukan dengan bobot.
●
Jika terjadi perbedaan antara keluaran dengan
target, e(k) = a(k) – t(k), k = iterasi ke- 1, 2, 3,
maka:
●
Bobot diupdate/diatur sedikit demi sedikit untuk
mendapatkan keluaran yang sesuai dengan
target
●
w(k+1) = w(k) + Δw(k)
Perceptron Learning Rule
(Rosenblatt, 1960)
●
e(k) = a(k) – t(k) , k = iterasi ke- 1, 2, 3, …..
a(k) = keluaran neuron
t(k) = target yang diinginkan
e(k) = error/kesalahan
●
w(k+1) = w(k) + Δw(k)
●
Δw(k) = kec belajar x masukan x error
●
= ŋ x p(k) x e(k)
●
Ŋ = learning rate -> kecepatan belajar (0< ŋ ≤1)
●
Ŋ besar belajar cepat tidak stabil
●
Ŋ kecil belajar lambat stabil
Langkah Pembelajaran
1. Langkah pertama : Inisialisasi Awal
• Mengatur bobot w1, w2, ..., wn interval [-0.5 – 0.5],
mengatur bias/threshold b, mengatur kec
pembelajaran ŋ, fungsi aktivasi
1. Langkah kedua : Menghitung keluaran
• Mengaktifkan perceptron dengan memakai masukan
p1(k), p2(k), ..., pi(k) dan target yang dikehendaki t(k).
Hitunglah output aktual pada iterasi ke-k = 1
i
a(k ) = step ∑ pi ( p ) wi ( p ) − b
i= 1
p1
w1 n=Σpi.wi
+
Σ F(y) -
w2 a=f(n)
error
p2 b
Perceptron
Contoh Pembelajaran
1. Langkah pertama : Inisialisasi Awal
• Mengatur bobot w1, w2 interval [-0.5 – 0.5], w1(1)=0.3 w2(1)=0.1,
mengatur bias/threshold b=0.2, mengatur kec pembelajaran ŋ
=0.2, fungsi aktivasi-> step
1. Langkah kedua : Menghitung keluaran
• Mengaktifkan perceptron dengan memakai masukan p1(k), p2(k)
dan target yang dikehendaki t(k). Hitunglah output aktual pada
iterasi ke-k = 1
2
a(1) = step ∑ pi (1) wi (1) − b
i= 1
n(1) = p1 (1).w1 (1) + p2 (1).w2 (1) − b
1 jika n(1) ≥ 0
a (1) =
0 jika n(1) < 0
n(1) = p1 (1).w1 (1) + p2 (1).w2 (1) − b
n(1) = 0 X 0.3 + 0 X 0.1 − 0.2
n(1) = − 0.2 (negatif )
maka
a (1) = 0
3. Langkah ke tiga : Menghitung error
e(k) = t(k) – a(k)
e(1) = 0 – 0 = 0
4. Langkah ke empat : Mengatur Bobot
• Mengupdate bobot perceptron
• wi(k+1) = wi(k) + Δwi(k)
• w1(2) = 0.3(1) + Δw1(1)
• Δw1(1) = ŋ x pi(1) x e(1)
• = 0.2 x 0 x 0 = 0
• maka w1(2) = 0.3(1) + 0 = 0.3 (tidak berubah)
• wi(k+1) = wi(k) + Δwi(k)
• w2(2) = 0.3(1) + Δw2(1)
• Δw2(1) = ŋ x pi(1) x e(1)
• = 0.2 x 0 x 0 = 0
• maka w2(2) = 0.1(1) + 0 = 0.1 (tidak berubah)
5. Langkah ke lima : pengulangan
• Naikkan iterasi k dengan 1 (k=k+1), kembalilah ke langkah ke
dua dan ulangi proses sampai keluaran=target or mendekati
target.
●
K=2
w1(2)= 0.3 w2(2)=0.1, p1(2)=0, p2(2)=1
target(2)=Fd(2)=1
●
Hitung keluaran:
n(2) = p1 (2).w1 (2) + p2 (2).w2 (2) − b
n ( 2) = 0. X 0.3 + 1 X 0.1 − 0.2
n ( 2) = − 0.1
n ( 2) < 0
a ( 2) = 0
• Hitung error
e(2)= target(2) – a(2)
= 1 – 0 =1 (ada error)
• Mengatur Bobot
Mengupdate bobot perceptron
wi(k+1) = wi(k) + Δwi(k)
w1(3) = 0.3(2) + Δw1(2)
Δw1(2) = ŋ x p1(1) x e(1)
= 0.2 x 0 x 1 = 0
maka w1(3) = 0.3(1) + 0 = 0.3 (tidak berubah)
wi(k+1) = wi(k) + Δwi(k)
w2(3) = 0.3(2) + Δw2(2)
Δw2(1) = ŋ x p2(1) x e(1)
= 0.2 x 1 x 1 = 0.2
maka w2(3) = 0.1(1) + 0.2 = 0.3 (berubah sebelumnya
w2(2)=0.1)
Tugas
●
Perorangan hitung secara manual melatih
perseptron untuk fungsi AND, XOR, XNOR
●
Kelompok buat program perceptron