Backpropagation Neural Network BPNN

2.3.1 Backpropagation Neural Network BPNN

Salah satu metode pelatihan dalam NN adalah pelatihan terbimbing supervised learning. BPNN merupakan salah satu metode yang menggunakan supervised learning. Pada pelatihan terbimbing diperlukan sejumlah masukan dan target yang berfungsi untuk melatih jaringan hingga diperoleh bobot yang diinginkan. Pada setiap kali pelatihan, suatu input diberikan ke jaringan, kemudian jaringan akan memproses dan mengeluarkan keluaran. Selisih antara keluaran jaringan dengan target merupakan kesalahan yang terjadi, dimana jaringan akan memodifikasi bobot sesuai dengan kesalahan tersebut. Algoritma pelatihan Backpropagation Neural Network BPNN pertama kali dirumuskan oleh Werbos dan dipopulerkan oleh Rumelhart dan Mc.Clelland Hagan, 1996. Pada supervised learning terdapat pasangan data input dan output yang dipakai untuk melatih JST hingga diperoleh bobot penimbang weight yang diinginkan. Penimbang itu sendiri adalah sambungan antar lapis dalam JST. Algoritma ini memiliki proses pelatihan yang didasarkan pada interkoneksi yang sederhana, yaitu apabila keluaran memberikan hasil yang salah, maka penimbang dikoreksi agar galat dapat diperkecil dan tanggapan JST selanjutnya diharapkan dapat mendekati nilai yang benar. BPNN juga berkemampuan untuk memperbaiki penimbang pada lapis tersembunyi hidden layer. W ij W’ jk U’ k U j Input Layer Hidden Layer Output Layer X i Y j Z k O k Target Gambar 2.15 : Lapis dan aliran sinyal dalam algoritma BPNN Sumber : Fausset 1994 Universitas Sumatera Utara Secara garis besar BPNN terdiri atas tiga lapis layer yaitu lapis masukan input layer x i , lapis tersembunyi hidden layer y j , dan lapis keluaran output layer z k . Lapis masukan dan lapis tersembunyi dihubungkan dengan penimbang w ij dan antara lapis tersembunyi dan lapis keluaran dihubungkan oleh penimbang w’ jk Pada dasarnya, metode pelatihan backpropagation terdiri dari tiga langkah, yaitu : . 1 Data dimasukkan kedalam input node atau jaringan feedforward; 2 Perhitungan dan propagasi balik dari error yang bersangkutan; 3 Pembaharuan adjustment bobot dan bias. Pada pelatihan BPNN, ketika JST diberi pola masukan sebagai pola pelatihan maka pola tersebut akan menuju ke unit pada lapis tersembunyi untuk diteruskan pada unit yang berada pada lapis keluaran. Keluaran sementara pada lapis tersembunyi u j akan diteruskan pada lapis keluaran dan lapis keluaran akan memberikan tanggapan yang disebut sebagai keluaran sementara u’ k . Ketika u’ k ≠ o k dimana o k adalah target yang diharapkan, maka selisih error keluaran sementara u’ k Untuk mempercepat proses pelatihan digunakan parameter laju pelatihan learning rate yang nilainya berada pada kisaran 0-1. Selain parameter laju pelatihan, untuk mempercepat proses pelatihan dapat digunakan parameter tambahan berupa momentum yang nilainya dijaga antara 0.5 - 0.9. Ketika proses pelatihan selesai dan JST dapat digunakan untuk menyelesaikan masalah, tahap tersebut disebut sebagai tahap penggunaan yang disebut mapping atau pemetaan. akan disebarkan mundur backward pada lapis tersembunyi dan diteruskan ke unit pada lapis masukan. Oleh karena itu proses tersebut disebut propagasi balik backpropagation dimana tahap pelatihan dilakukan dengan merubah penimbang yang menghubungkan unit dalam lapis JST ketika diberi umpan maju dan umpan balik. Algoritma pelatihan BPNN terdiri dari dua tahap, yaitu feedforward propagation dan feed backward propagation. Untuk selengkapnya, notasi-notasi yang akan digunakan pada algoritma BPNN adalah : Universitas Sumatera Utara x Data trainning untuk input x = x 1 ,…,x i ,…,x n t Data trainning untuk output targetdesired output t = t 1 ,…,t k ,…,t m α Learning rate, yaitu parameter yang mengontrol perubahan bobot selama pelatihan. Jika learning rate besar, jaringan semakin cepat belajar, tetapi hasilnya kurang akurat. Learning rate biasanya dipilih antara 0 dan 1 Unit input ke-i. untuk unit input, sinyal yang masuk dan keluar pada suatu unit dilambangkan dengan variabel yang sama, yaitu Hidden unit ke-j. sinyal input pada dilambangkan dengan . Sinyal output aktivasi untuk dilambangkan dengan Bias untuk hidden unit ke-j Bobot antara unit input ke-i dan hidden unit ke-j Unit output ke-k. sinyal input ke dilambangkan . Sinyal output aktivasi untuk dilambangkan dengan Bias untuk unit output ke-k Bobot antara hidden unit ke-j dan unit output ke-k Faktor koreksi error untuk bobot Faktor koreksi error untuk bobot Langkah-langkah Algoritma Backpropagation Neural Network BPNN. a. Algoritma Pelatihan Pelatihan suatu jaringan dengan algoritma backpropagation meliputi dua tahap : 1. Feedforward propagation. 2. Feed backward propagation. Selama proses feedforward propagation, tiap unit masukan x i menerima sebuah masukan sinyal ini ke tiap-tiap lapisan tersembunyi z 1 ,…..,z p . Tiap unit tersembunyi ini kemudian menghitung aktivasinya dan mengirimkan sinyalnya Universitas Sumatera Utara ke tiap unit keluaran. Tiap unit keluaran menghitung aktivasinya untuk membentuk respon pada jaringan untuk memberikan pola masukan. Selama pelatihan, tiap unit keluaran membandingkan perhitungan aktivasinya dengan nilai targetnya untuk menentukan kesalahan pola tersebut dengan unit itu. Berdasarkan kesalahan ini, faktor k = 1,..,m dihitung. digunakan untuk menyebarkan kesalahan pada unit keluaran y k kembali ke semua unit pada lapisan sebelumnya unit-unit tersembunyi yang dihubungkan ke , selain itu juga digunakan nantinya untuk meng-update bobot-bobot antara keluaran dan lapisan tersembunyi. Dengan cara yang sama, faktor j = 1,…,p dihitung untuk tiap unit tersembunyi , tanpa perlu untuk menyebarkan kesalahan kembali ke lapisan masukan, tetapi δ j Setelah seluruh faktor δ ditentukan, bobot untuk semua lapisan diatur secara serentak. Pengaturan bobot w digunakan untuk meng-update bobot-bobot antara lapisan tersembunyi dan lapisan masukan. jk dari unit tersembunyi ke unit keluaran didasarkan pada faktor dan aktivasi dari unit tersembunyi didasarkan pada faktor dan aktivasi unit masukan. Untuk langkah selengkapnya adalah Laurence, 1994 :

b. Prosedur Pelatihan