8
2.4 Jaringan Saraf Tiruan
Jaringan syaraf tiruan JST adalah paradigma pemrosesan suatu informasi yang terinspirasi oleh sistem sel syaraf biologi. JST dibentuk sebagai generalisasi model
matematika dari jaringan syaraf biologi, dengan asumsi bahwa: 1. Pemrosesan informasi terjadi pada banyak elemen sederhana neuron.
2. Sinyal dikirimkan diantara neuron-neuron melalui penghubung-penghubung. 3. Penghubung antar neuron memiliki bobot yang akan memperkuat atau
memperlemah sinyal. 4. Untuk menentukan output, setiap neuron menggunakan fungsi aktivasi biasanya
bukan fungsi linier yang dikenakan pada jumlahan input yang diterima. Besarnya output
ini selanjutnya dibandingkan dengan suatu batas ambang. Hal yang ingin dicapai dengan melatih JST adalah untuk mencapai keseimbangan
antara kemampuan memorisasi dan generalisasi. Yang dimaksud kemampuan memorisasi adalah kemampuan JST untuk mengambil kembali secara sempurna
sebuah pola yang telah dipelajari. Kemampuan generalisasi adalah kemampuan JST untuk menghasilkan respon yang bisa diterima terhadap pola-pola yang sebelumnya
telah dipelajari. Hal ini sangat bermanfaat bila pada suatu saat ke dalam JST itu di inputkan informasi baru yang belum pernah dipelajari, maka JST itu masih akan tetap
dapat memberikan tanggapan yang baik, memberikan keluaran yang mendekati Puspaningrum, 2006. Jaringan syaraf tiruan menyerupai otak manusia dalam 3 hal,
yaitu : 1. Pengetahuan diperoleh jaringan melalui proses belajar.
2. Kekuatan hubungan antar sel syaraf neuron yang dikenal sebagai bobot-bobot sinaptik digunakan untuk menyimpan pengetahuan.
3. Fungsi aktivasi, yaitu fungsi yang digunakan untuk menentukan keluaran suatu neuron
. 2.4.1 Konsep Dasar Jaringan Saraf Tiruan
Jaringan saraf tiruan adalah suatu sistem pemrosesan informasi yang cara kerjanya memiliki kesamaan tertentu dengan jaringan saraf biologis Haykin, S. 1994.Jaringan
Saraf Tiruan atau neural network memiliki pembagian arsitektur ditentukan oleh
Universitas Sumatera Utara
9
hubungan antara neuron. Kerangka di dalam neural network terkumpul dalam jumlah lapisan layer dan jumlah node setiap lapisan Sutojo et al. 2011. Umumnya
arsitektur di jaringan saraf tiruan memiliki lapisan-lapisan dibagi menjadi tiga, yaitu: 1. Lapisan input
Unit-unit dalam lapisan node input disebut unit-unit yang bertugas menerima pola input dari luar menggambarkan suatu masalah.
2. Lapisan tersembunyi Unit-unit dalam lapisan node tersembunyi disebut unit-unit tersembunyi, yang
mana nilai outputnya tidak dapat diamati secara langsung. 3. Jaringan Output
Unit-unit dalam lapisan node output disebut unit-unit output, yang merupakan solusi jaringan saraf tiruan terhadap suatu permasalahan
Gambar 2.1 Arsitektur dasar jaringan saraf tiruan Sutejo et al, 2011 2.5 Algoritma Backpropagation
Algoritma Backpropagation adalah metode penurunan gradien untuk meminimalkan nilai eror output untuk mengubah nilai bobot arah mundur Muis, 2009.
Backpropagation memiliki satu layer tersembunyi Hidden layer serta menggunakan fungsi aktivasi sigmoid biner yang berguna untuk mendapatkan nilai output eror
terhadap perambatan alur maju foward propagation dikarenakan nilai target untuk unit tidak diberikan Sutojo et al. 2011. Jaringan backpropagation dengan lapisan
tersembunyi pada gambar 2.2.
Universitas Sumatera Utara
10
Gambar 2.2 Jaringan backpropagation dengan lapisan tersembunyi Puspitaningrum, 2006
Backpropagation memiliki penurunan gradien untuk meminimalkan kuadrat terhadap error keluaran. Untuk mendukung meminimalkan kuadrat eror backpropagation dapat
dibagi menjadi dua bagian algoritma sutojo et al, 2011:
2.5.1 Algoritma tahap pelatihaan Pada tahap ini algoritma backpropagation melakukan alur maju dengan tahap
pelatihan input ,tahap propagation eror, tahap propagation nilai bobot dan bias. Berikut ini adalah keterangan alur kerja algoritma tahap pelatihan backpropagation
pada gambar 2.3.
Gambar 2.3 Alur Kerja algoritma tahap pelatihan backpropagation Sutojo et al, 2011
Universitas Sumatera Utara
11
2.5.1.1 Inisialisasi Bobot. Menentukan angka yang nilai ambang jika memakai nilai ambang dalam kondisi
berhenti ; atau mengatur nilai maksimal epoch jika memakai banyak nilai epoch dalam kondisi berhenti. Proses tahap algoritma pelatihan sebagai berikut:
1. Dalam kondisi berhenti bernilai salah maka nilai menjadi while atautidak terpenuhi do maka melanjutkan langkah ke-2 hingga langkah ke-9.
2. Pada langkah ke-3 hingga langkah ke-8 untuk menentukan pasangan pola pelatihan dengan tahapan umpan maju.
Fase umpan majufoward propagation 3. Pada tiap unit input Xi, i=1,2,3,...,n mengirimkan sinyal dari unit ke-1 hingga ke-
n mengirimkan sinyal ke semua unit yang ada di lapisan atasnya ke lapisan tersembunyi.
Xi 2.1
4. Menghitung Nilai input Zj, j=1,2,3,...n. Pada tahap ini menghitung nilai input Zj=1 hingga Zj=n unit tersembunyi Zj dari unit ke-1 sampai ke-p; i=i,...,n; j=l,..,p
sinyal output lapisan tersembunyi dihitung dengan menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input berbot Xi:
= � + ∑
=1
2.2
5. Menghitung nilai input Yk, k=1,2,3,..,n. Pada tahap ini menghitung input Yk=1 hingga Yj=n pada unit output yk dari unit ke-1 sampai unit ke= n i=l,...n; k=l,...,m
menghitung sinyal outputnya dengan menerapkan fungsi aktivasi terhadap penjumlahan sinyalbobot Zj bagi lapisan sinyal dengan rumus sebagai berikut:
= � + ∑
� =1
2.3
Universitas Sumatera Utara
12
Fase Backpropagation Eror Menentukan propagasi eror 6. Didalam Pembangunan program di neural network khususnya Backpropagation.
Backprogation memiliki satu layer tersembunyi Hidden Layer dan menggunakan fungsi aktivasi sigmoid biner. Back propagation menggunakan nilai kemelesatan
atau eror, output untuk mengubah nilai bobot arah mundur. Untuk dapatkan nilai output eror, tahapan perambatan maju harus dikerjakan terlebih dahulu output Yk
dari unit ke-1 sampai unit ke-m; i=l,..,p; k=l,..,m menerima target tk lalu informasi kesalahan lapisan output δk dihitung. δk dikirim ke lapisan dibawahnya
dan digunakan untuk menghitung besar koreksi bobot dan bias ∆wjk dan ∆w0k
antara lapisan tersembunyi dengan lapisan output :
� = � − �
′
� + ∑
� =1
∆ = � �
∆ � = � � 2.4
7. Unit pada lapisan tersembunyi unit ke-1 hingga unit ke-p; i=1,...,n;j=l,..,p; k=l,...,m melakukan penjumlahan seluruh informasi lapisan tersembunyi δj yang dapat
terjadi kesalan informasi. δj melakukan perhitungan agar mengkoreksi nilai bobot dan bias ∆wjk dan ∆w0k terdapat pada input serta lapisan tersembunyi .
� = ∑ � �
=1
� � + ∑
=1
2.5
fase Bobot dan Bias
8. Pada tahap ini melakukan pengupdatean bobot dan bias dimanaSetiap unit output Wk , K= 1,2,3... ,m dilakukan perubahan bobot dan bias j=0,1,2,3..., p.dengan
persaman berikut.
w
kj
baru= w
kj
lama + Δw
kj
2.6 setiap unit tersembunyi Vi, J=1,2,3,...p dilakukan perubahn bobot dan bias
j=0,1,2,..n dengan persamaan berikut ini .
Universitas Sumatera Utara
13
V
ji
baru= v
ji
lama + Δv
ji
2.7 9 . mencoba hasil akhir dalam kondisi berhenti.
2.5.2 Algoritma Tahap Aplikasi Pada tahap ini algoritma backpropagation meneruskan proses dari algoritma pelatihan
untuk melakukan tahap maju. Menginisialisasi bobot, yang melanjutkan nilai bobot bias yang terakhir dari tahap pelatihan sebagai berikut:
1. Unit di setiap input vektor melakukan langkah dari ke-2 hingga langkah ke-4. 2. Pada tiap lapisan unit Xi lapisan unit ke-1 hingga unit ke-n terhadap lapisan input;
i=l,...,n pengujian Xi dengan menerima input sinyal dan sinyal Xi melakukan penyiaran ke seluruh unit lapisan yang tersembunyi atau di atasnya.
3. Pada tiap lapisan tersembunyi Zj lapisan unit ke-1 hingga lapisan unit ke-p; i=l,....,n; menghitung seluruh sinyal output merepkan aktivasi pada penjumlahan
fungsi sinyal input pada Xi. Output pada lapisan sinyal tersembunyi kemudian ditransfer ke seluruh unit pada lapisan atas atau lapisan tersembunyi:
= � + ∑
=1
2.8 4. Pada tiap lapisan tersembunyi Yk lapisan unit ke-1 hingga lapisan unit ke-m;
i=l,....,m; menghitung seluruh sinyal output merepkan aktivasi pada penjumlahan fungsi sinyal input pada Zj. Output pada lapisan sinyal tersembunyi kemudian
ditransfer ke seluruh unit pada lapisan atas atau lapisan tersembunyi:
= � + ∑
� =1
2.9 2.5.3 Activation Function
Fungsi aktivasi harus memiliki karakteristik secara kontinue, diferensial, serta tidak munurun fungsi secara monoton Muis, 2009. Tahapan maju harus dikerjakan
terlebih dahulu dengan mengaktifkan
Universitas Sumatera Utara
14
1.Fungsi Sigmoid Biner Fungsi aktivasi sigmoid biner dengan rentangan 0,1 didefenisikan berikut ini:
�
1
=
1 1+ �
−�
2.10 Contoh grafik pada sigmoid biner dapat dilihat pada gambar 2.4:
Gambar 2.4 Fungsi aktivasi Sigmoid Kusumadewi, 2004
2.5.4 Penginisialisasi Nilai Bobot dan Bias Pada umumnya prosedur penginisialisasi nilai bobot dan bias dipengaruhi oleh cepat
atau tidaknya nilai bobot terhadap neuron nilai bias. Salah satu cara didalam melakukan penginiisialisasi terhadap bobot dan bias pada backpropaagation
1. Inisialisasi Acak Umumnya pada saat menginisialisasi bobot dan bias, dari unit ke unit hingga ke
unit tersembunyi dan dari unit tersembunyi ke output secara random dengan interval tertentu -
ᾰ dan ᾰ contoh nilai interval -0,2 hingga 0,2, -0,7 hingga 0,7, dan -1 hingga 1. sutejo et al, 2011
2. Inisialisasi Nguyen Windrow Propagasi balik yang bobot dan bias yang diinilisasi dengan Nguyen-Windrow
akan lebih cepat proses inisialisasi dari pada bilangan acak. Faktor skala Nguyen- w
indrow β dengan format perhitungan: β = 0,7 p
1
Penjelasan : n= banyak unit input p = banyak unit tersembunyi
β = faktor skala
Inisialisasi Nguyen-Windrow
Unit tersembunyi pada unit ke-1 hingga unit ke-p: 1. Menginisialisasi vektor bobot dari unit input ke unit tersembunyi j = l,..., p
dengan cara sebagai berikut: a. Menentukan bobot- bobot antara unit input ke unit tersembunyi Vij :
Universitas Sumatera Utara
15
Vij lama = bilangan acak antara - β dan β dimana i = l,..., n.
b. Menghitung || Vij || c. Menginisialisasi kembali Vij:
Vij = β . Vij lama
|| Vij || 2. Menentukan bias antara unit input ke unit tersembunyi j = l,..., p V
0j
dengan bilangan acak yang terletak pada skala
–β dan β 2.5.5 Momentum Terhadap Pengupdatean Nilai bobot
Penambahan terhadahap momentum dalam pengupdatean terhadap nilai bobot yang berguna sebagai laju proses pelatihan. Momentum memacu proses kerja nilai bobot
yang terus bergerak yang tidak terjebak kedalam nilai minimum lokal. Proses pelatihan yang terjadi didalam pengupdatean pada jaringan biasa dengan rumus seperti
berikut:
Δw
jk
= α δ
k
z
j
2.11
Δv
ij
= α δ
j
x
i
Pada nilai output tidak terjadi nilai eror , maka δk akan berubah menjadi 0 dan
maka dari ini disebabkan oleh koreksi bobot ∆Wjk = 0, maka bobot yang melakukan pengupdetan nilai akan berlanjut ke dalam arah pada sebelumnya. Parameter terhadap
momentum nilai pengupdatean bobot dalam kisaran 0 hingga 1, maka persamaanya akan melakukan modifikasi seperti berikut:
Δw
jk
t + 1 = α δ
k
z
j
+ µ Δw
jk
t Δv
ij
t + 1 = α δ
j
x
i
+ µ Δv
ij
t
2.12
2.6 Penelitian Terdahulu