Algoritme Pelatihan Lavenberg-Marquardt Jaringan Saraf Tiruan Neural Network

mencapai epoh maksimum, maka selesai; jika tidak maka kembali ke langkah 1. Nilai toleransi  yang digunakan adalah 1   

2.3.4 Algoritme Pelatihan Lavenberg-Marquardt

Algoritme pelatihan Lavenberg-Marquardt LM merupakan algoritme pelatihan yang memiliki kemampuan memperoleh nilai konvergen yang cepat dibandingkan dengan algoritme pelatihan lain dalam kasus fungsi aproksimasi Beale et al 2011. Langkah dasar dari algoritme Lavenberg-Marquardt LM adalah penentuan matriks Hessian untuk mencari bobot-bobot dan bias koneksi yang digunakan dalam pelatihan JST Warsito 2007. Matriks Hessian adalah turunan kedua dari fungsi kinerja terhadap setiap komponen bobot dan bias. Untuk memudahkan komputasi, matriks Hessian diubah dengan pendekatan iterative pada setiap epoch selama algoritme pelatihan berjalan. Proses perubahannya dilakukan dengan menggunakan fungsi gradien. Apabila fungsi kinerja yang digunakan berbentuk jumlah kuadrat error SSE, maka matriks Hessian dapat diestimasi dengan persamaan berikut: 15 Dimana: : parameter Marquardt I : matriks identitas J : matriks Jakobian yang terdiri dari turunan pertama error jaringan terhadap masing-masing komponen bobot dan bias. Matriks Jakobian tersusun dari turunan pertama fungsi error terhadap masing-masing komponen bobot dan bias koneksi jaringan Hagan 1994. Nilai parameter Marquardt dapat berubah pada setiap epoch. Jika setelah berjalan satu epoch nilai fungsi error menjadi lebih kecil, nilai akan dibagi oleh faktor . Bobot dan bias baru yang diperoleh akan dipertahankan dan pelatihan dapat dilanjutkan ke epoch berikutnya. Sebaliknya, jika setelah berjalan satu epoch nilai fungsi error menjadi lebih besar maka nilai akan dikalikan faktor . Nilai perubahan bobot dan bias dihitung kembali sehingga menghasilkan nilai yang baru. Algoritme pelatihan dengan metode Levenberg-Marquardt dapat dijabarkan sebagai berikut: Langkah 0 :  Inisialisasi bobot awal dengan bilangan acak kecil  Inisialisasi epoch 0, MSE 0  Tetapkan maksimum epoch parameter LM , faktor dan target error. Langkah 1 : Jika kondisi penghentian belum terpenuhi epoch epoch maksimum atau MSE target error, lakukan langkah berikutnya. Langkah 2 :  Epoch = epoch + 1  Untuk setiap data pelatihan, lakukan langkah 3 – 4. Langkah 3 : Unitneuron output Y menerima target pola yang berhubungan dengan pola input pelatihan. Jika diberikan N pasangan input data pelatihan X r , t r , r = 1,2,…,N, dengan X r adalah input dan tr adalah target yang akan dicapai. Kesalahan pada suatu data pelatihan ke-r didefinisikan sebagai: e r = t r - y r 16 dengan : e r : kesalahan pada unit output t r : keluaran yang diinginkan target y r : keluaran actual. e adalah vektor kesalahan berukuran N x 1 yang tersusun dari e r , r = 1,2,…,N. e dapat dituliskan sebagai: . Misal bobot dan bias koneksi dinyatakan dalam vektor w, w merupakan vektor berukuran 2+np+1x1 dapat dituliskan sebagai: . Kesalahan suatu pelatihan jaringan oleh vektor bobot dan bias koneksi w pada suatu data pelatihan ke-r menjadi: e r w = t r – y r = t r – f x r , w 17 Vektor kesalahan oleh vektor bobot dan bias koneksi w menjadi ew berukuran Nx1 yang tersusun dari e r w , dengan r = 1,2,…,N. Hitung fungsi jumlah kuadrat error dengan persamaan: 18 Hitung matriks Jacobian untuk vektor bobot dan bias koneksi: 19 untuk r = 1,2,…N a. Hitung matriks Hessian untuk vektor bobot dan bias koneksi. 20 b. Hitung perubahan vektor bobot dan bias dengan persamaan berikut: 21 c. Hitung vektor bobot dan bias baru. 22 d. Hitung kesalahan yang terjadi oleh bobot dan bias koneksi yang baru. 23 e. Bandingkan Ew dengan Ewbaru.  Jika Ew = Ewbaru maka didapatkan dan kembali ke langkah a.  Jika Ew Ewbaru maka didapatkan 24 25 Kembali ke langkah 2.

2.4 K-fold Cross Validation