1
Sebagai contoh, perhatikan neuron Y pada gambar 1.1
Y menerima input dari nuron x1, x2, dan x3 dengan bobot hubungan masing-masing
adalah w1, w2, dan w3. Ketiga impuls neuron yang ada dijumlahkan.
Besarnya impuls yang diterima oleh Y mengikuti fungsi aktivasi y = f(net). Apabila
nilai fungsi aktivasi cukup kuat, maka sinyal akan diteruskan. Nilai fungsi aktivasi (keluaran
model jaringan) juga dapat dipakai sebagai dasar untuk merubah bobot.
2
membandingkan dengan 0 adalah sama dengan membandingkan jumlah bobot
dengan nilai ambang).
b. Biasanya tahapan fungsi jarang digunakan dalan Jaringan Syaraf Tiruan. Fungsi
aktivasi (f(.)) dapat dilihat pada Gambar berikut.
Gambar 1.3 menunjukkan arsitektur jaringan dengan n buah unit input (x 1, x2,...,xn)
dan m buah unit output (Y1,Y2,...,Ym).
Perhatikan bahwa jaringan ini, semua unit input dihubungkan dengan semua unit
output, meskipun dengan bobot yang berbeda-beda. Tidak ada unit input yang
dihubungkan dengan unit input lain. Demikian pula dengan unit ouput.
Besaran wji menyatakan bobot hubungan antara unit ke-i dalam input dengan unit ke-j
dalam output. Bobot-bobot ini saling independen. Selama proses pelatihan, bobot-
bobot tersebut akan dimodifikasi untuk meningkatkan keakuratan hasil. Model
3
semacam ini tepat digunakan untuk pengenalan pola karena kesederhanaannya. Model
yang masuk kategori ini antara lain : Adaline, Hopfield, Perceptron, LVQ, dll.
b. Jaringan Layar Jamak (multi layer network)
Jaringan layar jamak merupakan perluasan dari layar tunggal. Dalam jaringan ini,
selain unit input dan output, ada unit-unit lain yang disebut dengan layar tersembunyi
(hidden layer). Dimungkinkan pula ada beberapa layar tersembunyi. Sama seperti
pada unit input dan output, unit-unit dalam satu layar tidak saling berhubungan.
Gambar 1.4 adalah jaringan dengan n buah unit input (x 1, x2,...,xn), sebuah layar
tersembunyi yang terdiri dari p buah unit (z1, z2,...,zn) dan m buah unit output (Y 1,
Y2,..., Yn).
Jaringan layar jamak dapat menyelesaikan masalah yang lebih kompleks
dibandingkan dengan layar tunggal, meskipun kadangkala proses pelatihan lebih
kompleks dan lama. Model yang masuk kategori ini antara lain: Madaline,
Backpropagation, Neocognitron, dll.
c. Jaringan Recurrent
Model jaringan recurrent mirip dengan jaringan layar tunggal ataupun jamak. Hanya
saja, ada neuron output yang memberikan sinyal pada unit input (feedback loop).
Model yang masuk kategori ini antara lain: BAM (Bidirectional Associative
Memory), Boltzman Machine, Hopfield, dll.
4
Gambar 1.5 Recurrent Layer Network
5
Gambar 1.6 Fungsi Aktivasi
Kadang dalam jaringan ditambahkan sebuah unit masukan yang nilainya selalu= 1.
Unit yang demikian disebut bias. Bias dapat dipandang sebagai sebuah input yang
nilainya= 1. Bias berfungsi untuk mengubah nilai threshold menjadi = 0 (bukan =a).
Contoh:
Suatu jaringan layar tunggal seperti gambar di atas terdiri dari 2 input x1 = 0,7 dan x2 =
2,1 dan memiliki bias. Bobot w1 = 0,5 dan w2 = -0,3 dan bobot bias b = 1,2. Tentukan
keluaran neuron Y jika fungsi aktivasi adalah threshold bipolar.
Penyelesaian:
6
1.2. Klasifikasi JST Berdasarkan Pelatihan Umum
Berdasarkan cara memodifikasi / encoding / decoding JST diklasifikasikan sbb:
7
2. Pelatihan tanpa supervisi. Contoh: model Hebian, Competitive, Kohonen, Learning
Vector Quantization (LVQ), Hopfield.
1.3. Contoh-contoh Aplikasi Jaringan Syaraf Tiruan
Aplikasi yang sudah ditemukan
a. Klasifikasi. Model yang digunakan: ADALINE, LVQ, Backpropagation
b. Pengenalaan Pola. Model yang digunakan: Adaptive Resononance Theory (ART),
LVQ, Backpropagation
c. Peramalan. Model yang digunakan: ADALINE, MADALINE, Backpropagation
d. Optimisasi. Model yang digunakan: ADALINE, Hopfield, Backpropagation
1.4. Neuron McCulloch-Pitts
Model JST yang digunakan oleh McP merupakan model yang pertama ditemukan.
Model neuron McP memiliki karakteristik sbb:
a. Fungsi aktivasinya biner.
b. Semua garis yang memperkuat sinyal (bobot positif) ke arah suatu neuron memiliki
kekuatan (besar bobot) yang sama. Hal yang sama untuk garis yang memperlemah
sinyal (bobot negatif) ke arah neuron tertentu.
c. Setiap neuron memiliki batas ambang (threshold) yang sama. Apabila total input ke
neuron tersebut melebihi threshold, maka neuron akan meneruskan sinyal.
8
Bobot tiap garis tidak ditentukan dengan proses pelatihan, tetapi dengan metode
analitik. Beberapa contoh berikut memaparkan bagaiman neuron McP digunakan untuk
memodelkan fungsi logika sederhana.
Contoh:
Fungsi logika ”AND” dengan 2 masukan x1 dan x2 akan memiliki keluaran Y =1 jika dan
hanya jika kedua masukan bernilai 1.
Untuk semua kemungkinan masukan, nilai aktivasi tampak pada tabel berikut:
9
Tampak bahwa keluaran jaringan tepat sama dengan tabel logika AND. Berarti jaringan
dapat dengan tepat merepresentasika fungsi AND. Besarnya nilai threshold dapat diganti
menjadi suatu bias dengan nilai yang sama. Dengan menggunakan nilai bias, batas garis
pemisah ditentukan dari persamaan
Latihan
1) Buatlah model neuron McP untuk menyatakan fungsi logika OR
2) Buatlah model neuron McP untuk menyatakan fungsi logika XOR
3) Buatlah model neuron McP untuk menyatakan fungsi logika x1 AND NOT x2
10
BAB II ALGORITMA
PERCEPTRON
Jaringan terdiri dari beberapa unit masukan (ditambah sebuah bias), memiliki sebuah unit
keluaran. Hanya saja fungsi aktivasi bukan merupakan fungsi biner (atau bipolar), tetapi
memiliki kemungkinan nilai -1, 0 atau 1.
f(net) =
11
Secara geometris, fungsi aktivasi membentuk 2 garis sekaligus, masing-masing dengan
persamaan :
y =f(net) =
12
masukan dengan target dan laju pemahaman. Perubahan bobot hanya akan terjadi
kalau unit masukan ≠ 0.
c. Kecepatan iterasi ditentukan pula oleh laju pemahaman (=α dengan 0 ≤ α ≤ 1) .
semakin besar harga α, semakin sedikit iterasi yang diperlukan. Akan tetapi jika α
terlalu besar, maka akan merusak pola yang sudah benar sehingga pemahaman
menjadi lambat.
Contoh 1:
Buatlah perceptron untuk mengenali fungsi logika “dan” dengan masukan dan keluaran
bipolar. Untuk inisialisasi, gunakan bobot dan bias awal = 0, α = 1 dan threshold = =0
Penyelesaian :
Tabel masukan dan target fungsi logika “dan” dengan masukan dan keluaran bipolar tampak
dalam tabel 2.1
Iterasi untuk seluruh pola yang ada disebut epoch Tabel 3.2 menunjukkan hasil pada epoch
pertama.
13
Tabel 2.2 Perceptron Epoch Pertama
Pada tabel 3.3 sudah tidak ada perubahan bobot lagi, maka jaringan Perceptron tersebut sudah
mengenali pola sehingga iterasi dihentikan.
2.3. Pengenalan Pola Karakter pada perceptron
Algoritma untuk mengenali apakah pola masukan yang diberikan menyerupai sebuah
karakter tertentu (misal mirip huruf “A”) atau tidak, sebagai berikut :
1. Nyatakan tiap pola masukan sebagai vektor bipolar yang elemennya adalah tiap
titik dalam pola tersebut.
2. Berikan nilai target = +1 jika pola masukan menyerupai huruf yang diinginkan.
Jika sebaliknya, berikan nilai target = -1.
3. Berikan inisialisasi bobot, bias, laju pemahaman dan threshold.
4. Lakukan proses pelatihan perceptron.
14
Contoh 2:
Diketahui 6 buah pola masukan seperti gambar 3.1 :
15
(1 1 1 1 1 1 -1 1 -1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 -1 1
1 -1 -1 -1 -1 -1 1 1 1 1 1 1 1 -1 1 -1 -1 -1 -1 -1 1
1 -1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 -1 1 1 1 1 1 1 1 -1)
Vektor masukan pola 6 adalah
(-1 -1 1 1 1 -1 -1 -1 1 -1 -1 -1 1 -1 1 -1 -1 -1 -1 -1 1
1 -1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 -1
1 -1 -1 -1 -1 -1 1 -1 1 -1 -1 -1 1 -1 -1 -1 1 1 1 -1 -1)
Target bernilai = +1 bila pola masukan menyerupai huruf “A”. Jika tidak, maka target
bernilai = -1. Pola yang menyerupai huruf “A” adalah pola 1 dan pola 4. Pasangan pola dan
targetnya tampak pada tabel 2.4
Perceptron yang dipakai untuk mengenali pola huruf “A” (atau bukan “A”) memiliki 63 unit
masukan, sebuah bias dan sebuah unit keluaran. Misalnya bobot awal diambil = 0 untuk
Pelatihan dilakukan dengan cara memasukkan 63 unit masukan (sebuah pola huruf). Dihitung
16
Apabila f(net) ≠ target, maka bobot dan bias diubah
Proses pelatihan dilakukan terus hingga semua keluaran jaringan sama dengan targetnya.
Latihan :
Buatlah perceptron untuk mengenali pola yang berbentuk pada fungsi logika XOR
dengan α = 1 dan
17
BAB III ALGORITMA
ADALINE
Model ADALINE (Adaptive Linear Neuron) ditemukan oleh Widrow dan Hoff
(1960). Arsitekturnya mirip dengan perceptron.
Pelatihan ADALINE
Beberapa masukan (dan sebuah bias) dihubungkan langsung dengan sebuah neuron
keluaran. Perbedaan dengan perceptron adalah cara modifikasi bobot. Bobot dimodifikasi
dengan aturan delta (least mean square). Selama pelatihan, fungsi aktivasi yang dipakai
adalah fungsi identitas.
Kuadrat selisih antara target (t) dan keluaran jaringan (f(net)) merupakan error yang
terjadi. Dalam aturan delta, bobot dimodifikasi sedemikian hingga errornya minimum.
E = (t – f(net))2 = 2
18
b. Hitung respon unit keluaran :
Y = f(net) = net
c. Perbaiki bobot pola yang mengandung kesalahan (y ≠ t) menurut persamaan :
wi (baru) = wi (lama) +α (t-y)xi
b (baru) = b (lama) + α (t-y)
Setelah proses pelatihan selesai, ADALINE dapat dipakai untuk pengenalan pola. Umumnya
1. Inisialisasi semua bobot dan bias dengan bobot dan bias hasilm pelatihan
2. Untuk semua input masukan bipolar x, lakukan :
a. Set aktivasi unit masukan xi = si (i = 1,..., n)
b. Hitung net vektor keluaran :
Contoh 1:
Gunakan model ADALINE untuk mengenali pola fungsi logika “dan” dengan masukan dan
target bipolar :
Tabel 3.1 Masukan dan Target
19
Gunakan batas toleransi = 0.05 dan α = 0.1
Penyelesaian:
Dengan α = 0.1, maka perubahan bobotnya = ∆wi = 0.1 (t - f(net))xi = 0.1 (t-y) xi.
Maksimum ∆wi = 0.07 > toleransi, maka iterasi dilanjutkan untuk epoch kedua
Maksimum ∆wi = 0.002 < toleransi, maka iterasi dihentikan dan bobot terakhir yang
diperoleh (w1 = 0.29, w2 = 0.26, dan b = -0.32) merupakan bobot yang digunakan dalam
pengenalan pola.
Perhatikan bahwa fungsi aktivasi yang dipakai berbeda dengan fungsi aktivasi pada pelatihan.
Dalam pengenalan pola, fungsi aktivasinya adalah :
20
Tabel 3.4 Hasil “and”
Tampak bahwa keluaran jaringan tepat sama dengan targetnya. Disimpulkan bahwa pola
dapat dikenali dengan sempurna menggunakan bobot hasil pelatihan.
Contoh 2:
Gunakan contoh sebelumnya dengan ketentuan α = 0.2
Penyelesaian:
Dengan iterasi ADALINE α = 0.2 maka hasilnya sesuai dengan table berikut:
Maksimum i = 0.05 artinya toleransi, maka iterasi dihentikan dan bobot terakhir
yang diperoleh ( 1 = 0.3, 2 = 0.21, dan b = -0.38 merupakan bobot yang digunakan dalam
pengenalan polanya, Dengan cara tersebut maka dapat di cek bahwa bobot yang diperoleh
dapat mengenali semua pola dengan benar.
21
BAB IV ALGORITMA
MADALINE
22
c. Hitung keluaran setiap unit tersembunyi dengan menggunakan fungsi aktivasi
bipolar :
Untuk t = -1, ubah semua bobot ke unit zk yang zin nya positif :
Contoh :
Gunakan MADALINE mula-mula mengenali pola fungsi logika XOR dengan 2 masukan x 1
dan x2. Gunakan α =0.5 dan toleransi = 0.1
Penyelesaian :
Tabel 4.1 Data Masukan
23
Inisialisasi dilakukan pada semua bobot ke unit tersembunyi dengan suatu bilangan acak
kecil.
Disini dilakukan iterasi untuk pola pertama saja. Pelatihan pola-pola selanjutnya dilakukan
secara analog dan diserahkan kepada saudara untuk latihan.
Pola-1 : Masukan : x1 = 1, x2 =1, t=-1
Hitung net untuk unit tersembunyi z1 dan z2 :
Zin_1 = b1 + x1w11 + x2w12 = 0.3 + 1 (0.05) + 1 (0.2) = 0.55
Zin_2 = b2 + x1w21 + x2w22 = 0.15 + 1 (0.1) + 1 (0.2) = 0.45
Hitung keluaran unit tersembunyi z1 dan z2 menggunakan fungsi aktivasi bipolar.
z1 = f (zin_1) = 1 dan z2 = f (zin_2) = 1
24
Tentukan keluaran jaringan Y :
Y_in = b3 + z1v1 + z2v2 = 0.5 + 1 (0.5) + 1 (0.5) = 1.5
Maka y = f (y_in) = 1
t-y = -1-1 = -2 ≠ 0 dan t = -1.
Semua bobot yang menghasilkan z_in yang positif dimodifikasi. Karena zin_1 > 0 dan zin_2 > 0,
maka semua bobotnya dimodifikasi sebagai berikut :
perubahan bobot ke unit tersembunyi z1 :
b1 baru = b1 lama + α (-1- zin_1) = 0.3 + 0.5 (-1 – 0.55) = -0.475
w11 baru = w11 lama + α (-1- zin_1) x1 = 0.05 + 0.5 (-1 – 0.55) = -0.725
w12 baru = w12 lama + α (-1- zin_1) x2 = 0.2 + 0.5 (-1 – 0.55) = -0.575
perubahan bobot ke unit tersembunyi z2 :
b2 baru = b2 lama + α (-1- zin_2) = 0.15 + 0.5 (-1 – 0.45) = -0.575
w21 baru = w21 lama + α (-1- zin_2) x1 = 0.1 + 0.5 (-1 – 0.45) = -0.625
w22 baru = w22 lama + α (-1- zin_2) x2 = 0.2 + 0.5 (-1 – 0.45) = -0.525
Karena masih ada (bahkan semua) perubahan bobot > toleransi yang ditetapkan, maka iterasi
dilanjutkan untuk pola 2. Iterasi dilakukan untuk semua pola. Apabila ada perubahan bobot
yang masih lebih besar dari batas toleransi, maka iterasi dilanjutkan untuk epoch-2 dan
seterusnya.
25
BAB V ALGORITMA
HOPFIELD DISKRIT
Dikembangkan oleh John Hopfield (1982). Struktur jaringan terkoneksi secara penuh
yaitu setiap unit terhubung dengan setiap unit yang lain. Jaringan memiliki bobot simetris
tanpa ada koneksi pada diri sendiri sehingga wij = wji dan wii = 0
5.1. Arsitektur Jaringan
26
Gambar 6.2 Jaringan Hopfiled dengan 6 Neuron
27
Contoh 1:
Ada 2 buah pola yg ingin dikenali:
pola A (1,0,1,0,1,0)
pola B (0,1,0,1,0,1)
Bobot-bobotnya sbb:
Algoritma :
1. Aktivasi node pertama pola A
28
2. Aktivasi node 1-6 diperoleh (-2,0,-2,-2,0,-2) dg output (0,1,0,0,1,0) -> bukan A atau
B
3. solusi dg Asynchronous update
6.2. Algoritma Hopfield
1. Inisialisasi matriks bobot W
2. Masukan vector input (invec), lalu inisialisasi vector output (outvec) yaitu outvec =
invec
3. Mulai dg counter i=1
Selama invec ≠ outvec lakukan langakh 4-7,jika I sampai maks maka reset mjd 1
4. Hitung nilai ke-i = dotproduct (invec, kolom ke-I dari W)
5. Hitung outvec ke-i = f(nilai ke-i), f adalah fungsi ambang
6. Update invec dg outvec
7. i = i + 1
Aplikasi pada vektor E
29
4. Bobot diset matrik (-3,3)
5. Pola input “=“ nilai aktivasinya (3,3,3,-9,-6,-9,12,6,15), dg output (1,1,1,-1,-1,-
1,1,1,1)
6. Pola “x” nilai aktivasinya (9,-9,9,-9,6,-9,6,-6,9), dg output (1,-1,1,-1,1,-1,1,-1,1)
7. Berarti jaringan telah sukses memanggil kembali pola-pola tsb
Vektor Bobot (-3,3)
30
BAB VI ALGORITMA
PROPAGASI BALIK
(BACK PROPAGATION)
Pada gambar, unit input dilambangkan dengan X, hidden unit dilambangkan dengan Z,
dan unit output dilambangkan dengan Y. Bobot antara X dan Z dilambangkan dengan v
sedangkan bobot antara Z dan Y dilambangkan dengan w.
31
6.2. Pelatihan Back Propagation
6.2.1. Proses belajar & Pengujian
Penggunaan Back Propagation terdiri dari 2 tahap:
a. Tahap belajar atau pelatihan, di mana pada tahap ini diberikan sejumlah data pelatihan
dan target
b. Tahap pengujian atau penggunaan, pengujian dan penggunaan dilakukan setelah selesai
belajar
6.2.2. Tahap Belajar atau Pelatihan
Pada intinya, pelatihan dengan metode backpropagation terdiri dari tiga langkah,
yaitu:
a. Data dimasukkan ke input jaringan (feedforward)
b. Perhitungan dan propagasi balik dari error yang bersangkutan
c. Pembaharuan (adjustment) bobot dan bias.
Saat umpan maju (feedforward), setiap unit input (X i) akan menerima sinyal input dan
akan menyebarkan sinyal tersebut pada tiap hidden unit (Zj). Setiap hidden unit kemudian
akan menghitung aktivasinya dan mengirim sinyal (zj) ke tiap unit output. Kemudian setiap
unit output (Yk) juga akan menghitung aktivasinya (yk) untuk menghasilkan respons terhadap
input yang diberikan jaringan.
Saat proses pelatihan (training), setiap unit output membandingkan aktivasinya (yk)
dengan nilai target (tk) untuk menentukan besarnya error. Berdasarkan error ini, dihitung
faktor d k, di mana faktor ini digunakan untuk mendistribusikan error dari output ke layer
sebelumnya. Dengan cara yang sama, faktor dj juga dihitung pada hidden unit Zj, di mana
faktor ini digunakan untuk memperbaharui bobot antara hidden layer dan input layer. Setelah
semua faktor d ditentukan, bobot untuk semua layer diperbaharui.
6.2.3. Proses belajar secara detail
Step 0 : Inisialisasi bobot dan bias
Baik bobot maupun bias dapat diset dengan sembarang angka (acak) dan biasanya
angka di sekitar 0 dan 1 atau -1 (bias positif atau negatif)
Step 1 : Jika stopping condition masih belum terpenuhi, jalankan step 2-9.
Step 2 : Untuk setiap data training, lakukan step 3-8.
Umpan maju (feedforward)
32
Step 3 : Setiap unit input (Xi,i=1,…,n) menerima sinyal input xi dan menyebarkan sinyal
tersebut pada seluruh unit pada hidden layer. Perlu diketahui bahwa input xi yang
dipakai di sini adalah input training data yang sudah diskalakan.
Step 4 : Setiap hidden unit (Zj,j=1,…,p) akan menjumlahkan sinyal-sinyal input yang sudah
berbobot, termasuk biasnya
dan memakai fungsi aktivasi yang telah ditentukan untuk menghitung sinyal output
dari hidden unit yang bersangkutan,
lalu mengirim sinyal output ini ke seluruh unit pada unit output
Step 5 : Setiap unit output (Yk,k=1,…,m) akan menjumlahkan sinyal-sinyal input yang
sudah berbobot, termasuk biasnya,
dan memakai fungsi aktivasi yang telah ditentukan untuk menghitung sinyal output
dari unit output yang bersangkutan:
Faktor d k ini digunakan untuk menghitung koreksi error ( Dwjk) yang nantinya
akan dipakai untuk memperbaharui wjk, di mana:
Dwjk= adkzj
Selain itu juga dihitung koreksi bias D w0k yang nantinya akan dipakai untuk
memperbaharui w0k, di mana:
Dw0k= adk
Faktor d k ini kemudian dikirimkan ke layer di depannya.
Step 7 : Setiap hidden unit (Zj,j=1,…,p) menjumlah input delta (yang dikirim dari layer
pada step 6) yang sudah berbobot.
33
Kemudian hasilnya dikalikan dengan turunan dari fungsi aktivasi yang digunakan
jaringan untuk menghasilkan faktor koreksi error dj, di mana:
ii. Yang dimaksud dengan satu iterasi adalah perulangan step 3 sampai step 8 untuk
semua training data yang ada.
34
b. Membatasi error.
i. Misalnya menentukan besar Mean Square Error antara output yang dikehendaki dan
output yang dihasilkan oleh jaringan.
Jika terdapat sebanyak m training data, maka untuk menghitung Mean Square Error
digunakan persamaan berikut:
Variabel yk adalah output yang masih dalam skala menurut range fungsi aktivasi.
Untuk mendapatkan nilai output yang sesungguhnya, yk harus dikembalikan seperti
semula.
35
Contoh :
Misalkan, jaringan terdiri dari 2 unit input, 1 hidden unit (dengan 1 hidden layer), dan
1 unit output.
Jaringan akan dilatih untuk memecahkan fungsi XOR.
Fungsi aktivasi yang digunakan adalah sigmoid biner dengan nilai learning rate (a) =
0,01 dan nilai s =1.
36
v11=-1,263178
v21=-1,083092
w01=-0,541180
w11=0,543960
Step 1: Dengan bobot di atas, tentukan error untuk training data secara keseluruhan
dengan Mean Square Error:
• z_in11=1,718946+{(0 x -1,263178)+(0 x-1,083092)}=1,718946
• z11=f(z_in11)=0,847993
• z_in12=1,718946+{(0 x-1,263178)+(1 x -1,083092)}=0,635854
• z12=f(z_in12)=0,653816
• z_in13=1,718946+{(1 x- 1,263178)+(0 x- 1,083092)}=0,455768
• z13=f(z_in13)=0,612009
• z_in14=1,718946+{(1 x -1,263178)+(1 x -1,083092)=-0,627324
• z14=f(z_in14)=0,348118
di mana indeks zjn berarti hidden unit ke-j dan training data ke-n.
• y_in11=-0,541180+(0,847993 x 0,543960)=0,079906
• y11=f(y_in11)=0,480034
• y_in12=-0,541180+(0,653816 x 0,543960)=-0,185530
• y12=f(y_in12)=0,453750
• y_in13=-0,541180+(0,612009 x 0,543960)=0,208271
• y13=f(y_in13)=0,448119
• y_in14=-0,541180+(0,348118 x 0,543960)=-0,351818
• y14=f(y_in14)=0,412941
• Maka E=0,5 x {(0-0,480034)2 + (1-0,453750)2) + (1-0,448119)2 + (0-
0,412941)2}=0,501957
Step2 : Karena error masih lebih besar dari 0,41 maka step 3-8 dijalankan.
Step 3 : x1=0; x2=0 (iterasi pertama, training data pertama)
Step 4 :
• z_in1=1,718946+{(0x-1,263126)+(0x-1,083049)}=1,718946.
• z1=f(z_in1)=0,847993
Step 5 :
• y_in11=-0,541180+(0,847993x0,543960)=0,079906
• y11=f(y_in11)=0,480034
Step 6 :
37
• d1=(0-0,480034)f ’(0,079906)=-0,119817
• Dw11=0,01x-0,119817x0,847993=-0,001016
• Dw01=0,01x-0,119817=-0,00119817
Step 7.
• d_in1=-0,00119817x0,543960=-0,00065176
• d1=-0,00065176xf’(1,718946)=-0,00008401
• Dv11=0,01x-0,00008401x0=0
• Dv21=0,01x-0,00008401x0=0
• Dv01=0,01x-0,00008401=-0,0000008401
Step 8.
• w01(baru)=-0,541180+(-0,00119817)=-0,542378
• w11(baru)=0,543960+(-0,001016)=0,542944
• v01(baru)=1,718946+(-0,0000008401)=1,718862
• v11(baru)=-1,263178+0=-1,263178
• v21(baru)=-1,083092+0=-1,083092
• Saat ini v11 dan v12 masih belum berubah karena kedua inputnya =0. Nilai v01
dan v02 baru berubah pada iterasi pertama untuk training data yang kedua
Setelah step 3-8 untuk training data pertama dijalankan, selanjutnya kembali lagi ke
step 3 untuk training data yang kedua (x1=0 dan x2=1).
Langkah yang sama dilakukan sampai pada training data yang keempat.
Bobot yang dihasilkan pada iterasi pertama, training data ke-2,3, dan 4 adalah:
• Training data ke-2:
w01=-0,541023
w11=0,543830
v01=1,718862
v11=-1,263178
v21=-1,083092
• Training data ke-3:
w01=-0,539659
w11=0,544665
v01=1,719205
v11=-1,263002
v21=-1,082925
38
• Training data ke-4:
w01=-0,540661
w11=0,544316
v01=1,719081
v11=-1,263126
v21=-1,083049
Setelah sampai pada training data ke-4, maka iterasi pertama selesai.
Berikutnya, pelatihan sampai pada step9, yaitu memeriksa stopping condition dan
kembali pada step 2.
Demikian seterusnya sampai stopping condition yang ditentukan terpenuhi.
Setelah pelatihan selesai, bobot yang didapatkan adalah:
• v01=12,719601
• v11=-6,779127
• v21=-6,779127
• w01=-5,018457
• w11=5,719889
Jika ada input baru, misalnya x1=0,2 dan x2=0,9 maka outputnya dapat dicari dengan
langkah umpan maju sebagai berikut:
Step 0. Bobot yang dipakai adalah bobot hasil pelatihan di atas.
Step 1. Perhitungan dilakukan pada step 2-4
Step 2. Dalam contoh ini, bilangan telah berada dalam interval 0 sampai dengan 1,
jadi tidak perlu diskalakan lagi.
Step 3.
• z_in1=12,719601+{(0,2x-6,779127)+(0,9x-6,779127)}=5,262561
• z1=f(5,262561)=0,994845
Step 4.
• y_in1=-5,018457+(0,994845x5,719889)=0,671944
• y1=f(0,671944)=0,661938
Jadi jika input x1=0,2 dan x2=0,9; output yang dihasilkan jaringan adalah 0,661938
39
DAFTAR PUSTAKA
40