Você está na página 1de 31

JARINGAN SYARAF TIRUAN

ARTIFICIAL NEURAL NETWORK


Jaringan Syaraf Tiruan
 Jaringan syaraf tiruan (JST) atau Artificial Neural Network
(ANN) adalah suatu model matematik atau komputasi untuk
mensimulasikan struktur dan fungsi dari jaringan syaraf dalam
otak.

Terdiri dari:

Node atau unit pemroses (penjumlah dan fungsi aktivasi)

weight/ bobot yang dapat diatur

Masukan dan Keluaran

Sifat : Adatif

Mampu belajar

Nonlinear
Biological Neural Network
Jaringan Syaraf Tiruan (JST)

Menirukan model otak manusia
Otak Manusia JST
Soma Node
Dendrites Input/Masukan
Axon Output/Keluaran
Synapsis Weight/ Bobot
Milyaran Neuron Ratusan Neuron
Model Neuron Tanpa bias
Masukan /Inputs
p1

w1 Penjumlahan Fungsi Aktifasi

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   pi wi output aktual dari neuron dapat
i 1
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

 p w b  0
i 1
i i
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

Error digunakan untuk pembelajaran /mengatur bobot


Analog
 Target  apa yang anda inginkan
 Input/masukan  Kekurangan dan
kelebihan/potensi anda

Bobot  seberapa besar usaha anda

Output  hasil dari potensi and kelemahan
dikalikan dengan usaha terhadap potensi or
kelemahan
 Error  Kesalahan/Introspeksi diri  perkuat
potensi or/and lemahkan kekurangan
Proses Belajar

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

2. 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 

• i adalah jumlah input perceptron dan step adalah


fungsi aktivasi
1. Langkah ke tiga : Menghitung error
e(k) = t(k) – a(k) t(k) = target,a(t)=keluaran
perceptron
1. Langkah ke empat : Mengatur Bobot
• Mengupdate bobot perceptron
• wi(k+1) = wi(k) + Δwi(k)
• w(k+1) bobot baru w(k) bobot yg lalu
• Δwi(p) adalah pengkoreksian bobot pada iterasi k, yang
dihitung dengan:
• Δwi(p) = ŋ x pi(k) x e(k)

2. 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.
Melatih Perceptron: Operasi OR
Variabel Input OR
x1 x2 Fd
0 0 0
0 1 1
1 0 1
1 1 1
x1 Fd=target
Fungsi OR
x2

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

2. 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
1. Langkah ke tiga : Menghitung error
e(k) = t(k) – a(k)
e(1) = 0 – 0 = 0
1. 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)

2. 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 w 2(2)=0.1)
Tugas
 Perorangan  hitung secara manual melatih
perseptron untuk fungsi AND, XOR, XNOR

 Kelompok  buat program perceptron

Você também pode gostar