19511 19 & 20 jst
-
Upload
universitas-bina-darma-palembang -
Category
Data & Analytics
-
view
291 -
download
1
Transcript of 19511 19 & 20 jst
![Page 1: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/1.jpg)
JARINGAN SYARAF TIRUAN
ARTIFICIAL NEURAL NETWORK
![Page 2: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/2.jpg)
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
![Page 3: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/3.jpg)
Biological Neural Network
![Page 4: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/4.jpg)
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
![Page 5: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/5.jpg)
Model Neuron Tanpa bias
Σ
p1
p2
Masukan /Inputs
pi
.
.
.
Penjumlahanw1
w2
wi
Bobot/Weight = bisa diatur
F(y)
n=Σpi.wi
a=f(n)
Fungsi Aktifasi
![Page 6: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/6.jpg)
Model Neuron dengan bias
Σ
p1
p2
Masukan /Inputs
pi
.
.
.
Penjumlahanw1
w2
wi
Bobot/Weight = bisa diatur
F(y)n=Σpi.wi
a=f(n)
Fungsi Aktivasi
b (Bias)=Fix
![Page 7: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/7.jpg)
Neuron Sederhana
![Page 8: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/8.jpg)
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
![Page 9: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/9.jpg)
Fungsi Aktivasi
Beberapa fungsi aktivasi a=f(n)
Hardlimit function a =
Linear Function a = n
Sigmoid Function a = 1 /( 1+ e-n )
1 Jika n ≥ 0
0 Jika n < 0
![Page 10: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/10.jpg)
Grafik Fungsi Aktivasi
Hardlimiter Purelinear
Sigmoid
a=f(n)
![Page 11: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/11.jpg)
Kegunaan Aktivasi
Untuk pengambilan keputusan biasanya digunakan Hardlimit
Untuk pengenalan pola/jaringan back propagation biasanya digunakan sigmoid
Untuk prediksi/aproksimasi linear
biasanya digunakan linear
![Page 12: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/12.jpg)
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).
bnjika
bnjikaa
wpni
i
ii
1
1
1
Fungsi aktivasi ini disebut Fungsi
Tanda (Sign Function). Sehingga
output aktual dari neuron dapat
ditunjukkan dengan:
i
i
ii bwpsigna1
![Page 13: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/13.jpg)
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
ii bwp1
0
![Page 14: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/14.jpg)
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
![Page 15: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/15.jpg)
Target
Σ
p1
p2
Masukan
pi
.
.
.
w1
w2
wi
F(y)
n=Σpi.wi a=f(n)
b
+-
Error=target-a
Keluaran
Error digunakan untuk pembelajaran /mengatur bobot
Proses Belajar
![Page 16: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/16.jpg)
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
![Page 17: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/17.jpg)
Proses Belajar
Σp1
Masukan
w1 F(y)
n=p1.w1
a=f(n)Bobot
![Page 18: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/18.jpg)
Proses Belajar jika masukan positif
Σp1
Masukan
w1 F(y)
n=p1.w1 a=f(n)+
-
Error=target-a
Keluaran
Target
F=linear
(10)
(2)
(3)
(6)
e=10-6=4 (+)
Karena e ≥ 0 maka keluaran
a hrs dinaikan untuk
menaikan a maka naikan nilai
w1 karena masukan positif
w1 next= w1 old + delta w1
Untuk masukan positif penambahan bobot menyebabkan peningkatan keluaran
![Page 19: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/19.jpg)
Proses Belajar jika masukan negatif
Σp1
Masukan
w1 F(y)
n=p1.w1 a=f(n)+
-
Error=target-a
Keluaran
Target
F=linear
(10)
(-2)
(3)
(-6)
e=10-(-6)=16 (+)Karena e ≥ 0 maka keluaran
a hrs dinaikan untuk
menaikan a maka turunkan
nilai w1 karena masukan
negatif
w1 next= w1 old + (- delta w1)
Untuk masukan negatif penambahan bobot menyebabkan penurunan keluaran
![Page 20: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/20.jpg)
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)
![Page 21: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/21.jpg)
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
![Page 22: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/22.jpg)
Langkah Pembelajaran1. 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 adalah jumlah input perceptron dan step adalah fungsi aktivasi
i
i
ii bpwppstepka1
)()()(
![Page 23: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/23.jpg)
Langkah ke tiga : Menghitung error
e(k) = t(k) – a(k) t(k) = target,a(t)=keluaran perceptron
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)
Langkah ke lima : pengulangan
• Naikkan iterasi k dengan 1 (k=k+1), kembalilah kelangkah ke dua dan ulangi proses sampaikeluaran=target or mendekati target.
![Page 24: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/24.jpg)
Melatih Perceptron: Operasi OR
Variabel Input OR
x1 x2 Fd
0 0 0
0 1 1
1 0 1
1 1 1
![Page 25: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/25.jpg)
Fungsi OR
Σ
p1
p2
w1
w2
F(y)
n=Σpi.wi
a=f(n)b
x1
x2
+
-
Fd=target
Perceptron
error
![Page 26: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/26.jpg)
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
bwpwpn )1().1()1().1()1( 2211
2
1
)1()1()1(i
ii bwpstepa
0)1(0
0)1(1)1(
njika
njikaa
![Page 27: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/27.jpg)
bwpwpn )1().1()1().1()1( 2211
2.01.003.00)1( XXn
0)1(
)(2.0)1(
a
maka
negatifn
![Page 28: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/28.jpg)
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 sampaikeluaran=target or mendekati target.
![Page 29: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/29.jpg)
K=2
w1(2)= 0.3 w2(2)=0.1, p1(2)=0, p2(2)=1 target(2)=Fd(2)=1
Hitung keluaran:
0)2(
0)2(
1.0)2(
2.01.013.0.0)2(
)2().2()2().2()2( 2211
a
n
n
XXn
bwpwpn
![Page 30: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/30.jpg)
• 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)
![Page 31: 19511 19 & 20 jst](https://reader034.fdocument.pub/reader034/viewer/2022042518/55cf1a87bb61ebd5308b465f/html5/thumbnails/31.jpg)
Tugas
Perorangan hitung secara manual melatih perseptron untuk fungsi AND, XOR, XNOR
Kelompok buat program perceptron