Curah Hujan dan Prakiraan Musim

2.4 JST Backpropagation

Arsitektur backpropagation telah dikembangkan pada awal 1970-an oleh Rumelhart, Hinton dan Williams. Backpropagation merupakan arsitektur yang populer, efisien dan model yang mudah untuk JST dengan banyak lapisan yang komplek. Jaringan ini telah digunakan pada berbagai bidang seperti pemrosesan gambar, pemrosesan sinyal, pengenalan wajah, pengenalan suara dan lain-lain. Arsitektur ini telah menurunkan banyak tipe jaringan dengan berbagai perbedaan topologi dan metode pelatihannya.

2.4.1 Arsitektur JST backpropagation

Bentuk umum jaringan backpropagation terdiri dari sebuah lapisan input, sebuah lapisan output dan setidaknya sebuah lapisan tersembunyi. Setiap lapisan terhubung secara penuh dengan lapisan sebelumnya. Gambaran arsitektur JST dengan satu lapisan tersembunyi, n buah neuron input, p buah neuron tersembunyi dan m buah neuron output seperti pada Gambar 3. Unit-unit pada lapisan tersembunyi Z j dan lapisan output Y k dimungkinkan mempunyai bias, yang pada gambar tersebut dinyatakan dengan v 0j dan w 0k . Gambar 3 Arsitektur JST Backpropagation dengan 1 lapisan tersembunyi Lapisan input dan output menunjukkan arah aliran informasi selama proses pemanggilan kembalirecall, yaitu proses untuk memasukkan data pada jaringan yang sudah dilatih untuk mendapatkan jawaban output dari JST. Arah aliran informasi yang ditampilkan pada Gambar 3 hanya arah pada fase perambatan maju feedforward, sedangkan pada fase perambatan balik backpropagation saat proses pembelajaran, sinyal informasi mengalir dengan arah sebaliknya. Fase backpropagation tidak dilakukan pada proses pemanggilan kembali, namun hanya dilakukan pada saat jaringan sedang mempelajari satu set data latih.

2.4.2 Proses Pelatihan JST Backpropagation

Proses pelatihan jaringan backpropagation melibatkan tahapan berikut Laurene 1993 : 1. Perambatan majufeedforward dari masukan pola pelatihan. 2. Perambatan balikbackpropagation dari kesalahan yang ditemukan 3. Penyesuaian bobot Pada tahap perambatan maju, setiap unit pada lapisan input X i menerima sinyal masukkan dan meneruskan sinyal tersebut dengan bobotnya ke setiap unit pada lapisan tersembunyi Z 1 , …, Z p . Setiap unit pada lapisan tersembunyi Z j akan mengitung nilai aktivasinya dengan dan mengirimkan sinyal keluarannya z j ke setiap unit pada lapisan output. Setiap unit pada lapisan output Y k menghitung masing-masing nilai aktivasinya y k dan keluar sebagi bentuk respon jaringan terhadap masukan yang diterimanya. Selama proses pembelajaran, masing-masing unit output membandingkan hasil perhitungan fungsi aktivasinya atau keluarannya y k dengan nilai target obeservasi yang berkesesuaian, t k , untuk menentukan kesalahan yang terjadi antara output jaringan dibanding nilai target sebenarnya nilai aktual. Berdasarkan hitungan kesalahan tersebut, dihitung faktor kesalahan δ k k= 1,2,…,m. δ k digunakan untuk mendistribusikan kesalahan yang ada pada unit output Y k kembali ke setiap unit pada lapisan sebelumnya unit tersembunyi yang terhubung ke Y k . Nilai δ k nantinya juga digunakan untuk memperbaharui bobot- bobot dari jalur yang menghubungkan antara lapisan output dan lapisan tersembunyi. Dengan cara yang sama, nilai δ j j = 1, 2, …, p juga dihitung untuk setiap unit pada lapisan tersembunyi. Nilai δ j ini tidak perlu dirambatkan balik ke unit-unit pada lapisan input, namun digunakan untuk memperbaharui bobot pada jalur antara lapisan input dan lapisan tersembunyi. Setelah seluruh faktor δ dihitung, bobot dari seluruh lapisan diperbaharui secara simultan. Penyesuain bobot w jk dari unit tersembunyi Z j ke unit output Y k didasarkan pada faktor δ k dan nilai aktivasi z j dari unit tersembunyi Z j . Penyesuain bobot v ij dari unit input X i ke unit tersembunyi Z j didasarkan pada faktor δ j dan nilai aktivasi x i dari unit input. Nomenklatur yang digunakan pada penjelasan proses pembelajaran disini adalah sebagai berikut : x : vektor masukan untuk pelatihan, x = x 1 , …, x i , …., x n t : vektor target keluaran , t = t 1 , …, t k , …., t m δ j : informasi kesalahan untuk unit ke-j pada lapisan tersembunyi δ k : informasi kesalahan untuk unit ke-k pada lapisan output α : laju pembelajaran Xi : Unit ke-i pada lapisan input; Pada unit input, sinyal masukan dan sinyal keluarannya sama, yaitu x i . v 0j : bias untuk unit ke-j pada pada lapisan tersembunyi v ij : bobot pada penghubung antara unit ke-i pada lapisan input dan unit ke-j pada lapisan tersembunyi Zj : Unit ke-j pada lapisan tersembunyi; Masukan pada unit tersembunyi Z j dinyatakan dengan z_in j : ∑ = + = n i ij i j j v x v in z 1 _ 2 Sedangkan sinyal keluaran aktivasi dari Z j dinotasikan dengan z j : _ j j in z f z = 3 w 0k : bias untuk unit ke-k pada lapisan output w jk : bobot penghubung antara unit ke-j pada lapisan tersembunyi dan unit ke-k pada lapisan output Y k : Unit ke-k pada lapisan output; Masukan pada unit output Y k dinyatakan dengan y_in k : ∑ = + = p j jk j k k w z w in y 1 _ 4 Sedangkan sinyal keluaran aktivasi dari unit Y k dinotasikan dengan y k : _ k k in y f y = 5 Algoritma pelatihan JST backpropagation secara lengkap dapat dilihat di Lampiran 1.