Optimasi Pembelajaran Heuristik TINJAUAN PUSTAKA

7 Prinsip dasar algoritma backpropagation memiliki tiga tahap : § Tahap feedforward pola input pembelajaran § Tahap kalkulasi dan backpropagation error yang diperoleh. § Tahap penyesuaian bobot. Arsitektur yang digunakan adalah jaringan perceptron lapis banyak multi-layer perceptrons.. Hal ini merupakan generalisasi dari arsitektur perceptron lapis tunggal single layer perceptron. Secara umum, algoritma jaringan ini membutuhkan waktu pembelajaran yang memang lambat, tetapi setelah pembelajaran dan pelatihan selesai, aplikasinya akan memberikan output yang sangat cepat Workshop JNB 2002.

2.4 Optimasi Pembelajaran Heuristik

Pada JST backpropagation dikenal optimasi teknik heuristik yaitu algoritma pelatihan yang berfungsi untuk lebih mempercepat proses pelatihan dan merupakan pengembangan dari suatu analisa kinerja pada algoritma steepest gradient descent standard. Tiga algoritma optimasi teknik heuristik Kusumadewi 2004 yang sering dipakai : 2.4.1 Gradient Descent Adaptive Learning Rate. Teknik heuristik ini memperbaiki bobot berdasarkan gradient descent dengan laju pembelajaran yang bersifat adaptive. Pada gradient descent standard, selama proses pembelajaran, laju pembelajaran a akan terus bernilai konstan. Apabila laju pembelajaran terlalu tinggi, maka algoritma menjadi tidak stabil. Sebaliknya, jika laju pembelajaran terlalu kecil maka algoritma akan sangat lama dalam mencapai kekonvergenan. Pada kenyataannya, nilai laju pemb elajaran yang optimal akan terus berubah selama proses pelatihan seiring dengan berubahnya nilai fungsi kinerja. Pada gradient descent adaptive learning rate, nilai laju pembelajaran akan diubah selama proses pelatihan untuk menjaga agar algoritma ini sena ntiasa stabil selama proses pelatihan. Kinerja jaringan syaraf dihitung berdasarkan nilai output jaringan dan error pelatihan. Pada setiap epoh, bobot-bobot baru dihitung dengan menggunakan laju pembelajaran yang ada. Kemudian dihitung kinerja jaringan syaraf baru. Jika perbandingan kinerja syaraf baru dan kinerja syaraf lama melebihi maksimum kenaikan kerja max_perf_inc, maka bobot baru tersebut akan diabaikan, dan nilai laju 8 pembelajaran akan dikurangi dengan cara mengalikannya dengan parameter penurunan laju pembelajaran lr_dec. Seba liknya, apabila perbandingan kinerja syaraf baru dan kinerja syaraf lama kurang dari maksimum kenaikan kerja, maka nilai bobot-bobot akan dipertahankan, dan nilai laju pembelajaran akan dinaikkan dengan cara mengalikannya dengan parameter penambahan laju pembelajaran lr_inc. Langkah- langkah teknik heuristik ini adalah : 1. Hitung bobot dan bias baru lapisan output dengan menggunakan persamaan: w jk baru = w jk lama + ? w jk b2 k baru = b2 k lama + ?b2 k 2. Hitung bobot dan bias baru lapisan tersembunyi dengan menggunakan persamaan : v ij baru = v ij lama + ? v ij b1 j baru = b1 j lama + ?b1 j 3. Hitung kinerja jaringan syaraf baru perf2 dengan menggunakan bobot-bobot baru tersebut. 4. Bandingkan kinerja jaringan syaraf baru perf2 kinerja jaringan syaraf sebelumnya perf . 5. Jika perf2perf max_perf _inc maka laju pembelajaran a = a lr_dec. 6. Jika perf2perf max_perf_inc maka laju pembelajaran a = a lr_inc. 7. Jika perf2perf = max_perf_inc maka bobot baru diterima sebagai bobot sekarang Kusumadewi 2004.

2.4.2 Gradient Descent Adaptive Learning Rate dan Momentum.

Teknik heuristik ini memperbaiki bobot berdasarkan gradient descent dengan laju pembelajaran yang bersifat adaptive dan menggunakan momentum mc. Momentum adalah suatu konstanta yang mempengaruhi perubahan bobot dan bernilai diantara 0 dan 1. Bila mc = 0 maka perubahan bobot akan dipengaruhi oleh gradient saja dan bila mc = 1 maka perubahan bobot akan sama dengan perubahan bobot sebelumnya. Langkah- langkah teknik heuristik ini adalah : 1. Hitung bobot dan bias baru unit output dengan menggunakan persamaan: ? w jk = a f 2 jk untuk epoh = 1 9 ? w jk = mc? w jk epoh sebelumnya + 1-mca f 2 jk untuk epoh 1 ? b2 k = a ß2 k , untuk epoh = 1 ? b2 k = mc?b2 k epoh sebelumnya + 1-mca ß2 k ; untuk epoh 1 2. Hitung bobot dan bias baru unit tersembunyi dengan menggunakan persamaan: ? v jk = ? v jk + a f 1 ij ; untuk epoh = 1 ? v jk = mc? v jk epoh sebelumnya + 1-mca f 1 ij ; untuk epoh 1 ? b1 j = a ß1 j , untuk epoh = 1 ? b2 j = mc?b1 j epoh sebelumnya + 1-mca ß1 j ; untuk epoh 1 3. Hitung kinerja jaringan syaraf baru perf2 dengan menggunakan bobot-bobot baru tersebut 4. Bandingkan kinerja jaringan syaraf baru perf2 kinerja jaringan syaraf sebelumnya perf . 5. Jika perf2perf max_perf _inc maka laju pembelajaran a = a lr_dec, ? w jk = a f 2 jk ? b2 k = a ß2 k ? v ij = a f 1 ij ? b1 j = a ß1 j 6. Jika perf2perf max_perf _inc maka laju pembelajaran a = a lr_inc, ? w jk = a f 2 jk ? b2 k = a ß2 k ? v ij = a f 1 ij ? b1 j = a ß1 j 7. Jika perf2perf = max_perf_inc maka bobot baru diterima sebagai bobot sekarang Kusumadewi 2004.

2.4.3 Resilient Backpropagation

Jaringan syaraf yang dibangun dengan struktur multilayer biasanya menggunakan fungsi aktivasi sigmoid. Fungsi aktivasi ini akan membawa input dengan range yang tak terbatas ke nilai output dengan range yang terbatas, yaitu antara 0 sampai 1. Salah satu karakteristik dari fungsi sigmoid adalah gradiennya akan mendekati nol, apabila input yang diberikan sangat banyak. Gradient yang mendekati 0 10 ini berimplikasi pada rendahnya perubahan bobot. Apabila bobot-bobot tidak cukup mengalami perubahan, maka algoritma akan sangat lambat untuk mendekati nilai optimumnya Kusumadewi 2004. Algoritma resilient backpropagation berusaha untuk mengeliminasi besarnya efek dari turunan parsial dengan cara hanya menggunakan tanda turunannya saja dan mengabaikan besarnya nilai turunan. Tanda turunan ini akan menentukan arah perbaikan bobot bobot. Besarnya perubahan setiap bobot akan ditentukan oleh suatu faktor yang diatur pada parameter penambahan bobot delt_inc atau parameter penurunan bobot delt_dec. Bila gradien fungsi kinerja berubah tanda dari suatu iterasi ke iterasi berikutnya, maka bobot akan berkurang sebesar delt_dec dan bila gradient fungsi kinerja tidak berubah tanda maka bobot akan bertambah sebesar delt_inc. Apabila gradien fungsi kinerja = 0, maka perubahan bobot sama dengan perubahan bobot sebelumnya. Langkah- langkah teknik heuristik ini adalah : 1. Inisialisasi perubahan bobot ?v, ? w, ?b1dan ?b2 dengan parameter delta. Besarnya perubahan tidak boleh melebihi batas maksimum yang terdapat pada parameter maksimum perubahan bobot deltamax. 2. Simpan f1, f2, ß1 dan ß2 sebagai f1lama, f2 lama, ß1lama dan ß2lama. 3. Hitung f 1, f2, ß1 dan ß2 baru dengan menggunakan persamaan: f 2 jk = d k z j ß2 k = d k f 1 ij = d1 j x j ß1 j = d1 j 4. Hitung gradien fungsi kinerja dengan menggunakan persamaan: f f 2 jk = f 2 jk f 2 jk lama ßß2 k = ß2 k ß2 k lama f f 1 ij = f 1 ij f 1 ij lama ßß2 j = ß1 j ß1 j lama 11 5. Hitung perubahan bobot: delt_inc; f f 2 jk ? w jk = delt_dec; f f 2 jk ? w jk lama; f f 2 jk = 0 ? w jk = min?w jk ,deltamax -? w jk ; f 2 jk ? w jk = ? w jk ; f 2 jk 0; f 2 jk = 0 delt_inc; ßß2 k ? b2 k = delt_dec; ßß2 k ? b2 k lama; ßß2 k = 0 ? b2 k = min ?b2 k ,deltamax -?b2 k ; ß2 k ? b2 k = ?b2 k ; ß2 k 0; ß2 k = 0 delt_inc; f f 1 ij ? v ij = delt_dec; f f 1 ij ? v ij lama; f f 1 ij = 0 ? v ij = min? v ij ,deltamax -? v ij ; f 1 ij ? v ij = ? v ij ; f 1 ij 0; f 1 ij = 0 delt_inc; ßß1j 0 ? b1 j = delt_dec; ßß1 j ? b1 j lama; ßß1 j = 0 ? b1 j = min?b1 j ,deltamax -?b1 j ; ß1 j ? b1 j = ?b1 j ; ß1 j 0; ß1 j = 0 Kusumadewi 2004 12

2.5 Jaringan Syaraf Tiruan Recurrent Elman