LANDASAN TEORI
2.8. Distributed Autonomous Neuro-Gen Learning Engine
( . ) ( ). ( ) ( 1 p y p y p w p p j j m k jk k j
(2.14)kemudian hitung perbaikan bobot menggunakan rumus: ) 1 ( . ) ( ). ( . ) ( wij p xi p j p wij p (2.15)
dimana α adalah sebuah konstanta yang menentukan kecepatan pembelajaran
dari algoritma propagasi balik dan disebut dengan learning rate; µ adalah sebuah konstanta yang menentukan besar perubahan update dari bobot dan disebut dengan momentum.
Lakukan update untuk setiap bobot yang terhubung dengan neuron pada
output layer menggunakan rumus: ) ( ) ( ) 1 (p w p w p wij ij ij (2.16) 4. Iterasi
Apabila kriteria error belum terpenuhi, lakukan penambahan nilai perulangan p sebanyak satu, kemudian kembali ke langkah 2. Apabila kriteria error telah dipenuhi, maka algoritma pelatihan propagasi balik selesai.
2.8. Distributed Autonomous Neuro-Gen Learning Engine
Untuk mengatasi kelemahan dari jaringan saraf tiruan yang telah dijabarkan pada bagian 2.7.1, (Rahmat, 2008) mengajukan sebuah metode pembelajaran mesin yang baru yang disebut Distributed Autonomous Neuro-Gen Learning Engine (DANGLE).
DANGLE adalah sebuah metode pembelajaran mesin yang menyediakan fleksibilitas, adaptibilitas dan pembelajaran terus menerus serta kemampuan kompitasional yang kuat (Pasha, 2010). DANGLE telah digunakan sebagai gene knowledge discovery engine (Hasibuan, 2009) dan juga Lattice Analysis dalam identifikasi struktur kubik pada bidang kristalografi (Pasha, 2010).
Arsitektur DANGLE terdiri atas dua komponen utama, yaitu: komponen regulasi gen yang disebut dengan Gene Regulatory Engine (GRE) dan komponen
25
jaringan neural yang disebut dengan Distributed Adaptive Neural Network (DANN) (Pasha, 2010). GRE memiliki tugas untuk melakukan regulasi, konstruksi, serta melatih seluruh jaringan yang terdapat pada DANN. DANN terdiri atas beberapa jaringan saraf tiruan yang terhubung pada GRE secara distributif dan adaptif, dimana setiap jaringan saraf tiruan pada DANN akan memiliki gen masing-masing yang diatur oleh GRE. DANN akan mengkonstruksikan jaringan saraf tiruan sesuai dengan gen yang dimiliki, kemudian hasil output dari DANN akan dikembalikan pada GRE untuk pengembangan gen selanjutnya.
2.8.1. Gene Regulatory Engine
Gene Regulatory Engine (GRE) merupakan sebuah regulator gen sederhana yang diinspirasi oleh interaksi gen satu ke satu dari Gene Regulatory Network pada bidang biologi. GRE digunakan untuk mengendalikan, memutasi, serta melatih gen sebelum gen dikirimkan pada DANN. Secara sederhana, GRE mengimplementasikan sebuah
Genetic Algorithm (GA) tanpa proses crossover dan parent selection, serta inisialisasi populasi secara acak juga tidak terjadi pada GRE. Arsitektur keseluruhan GRE dapat dilihat pada gambar 2.6. Secara spesifik diagram lengkap dari model GRE dapat dilihat pada gamber 2.7, dimana ada dapat dilihat seluruh komponen yang terdapat pada GRE. Mutation Regulation Input Gene B Neural Network Structure Gene A Node Behavior B B B B A A C C C C “Neuro”Genes Feedback Regulator Gene Representation Objective Functions And Output Results Transform Neural Network Training DANN No Chang es GRE
Gambar 2.7. Diagram lengkap model GRE (Rahmat, 2008)
Adapun komponen-komponen dari GRE dapat dijabarkan sebagai berikut (Rahmat, 2008):
1. Representasi Gen
Secara umum, GRE menggunakan 3 himpunan gene yang berbeda, yakni: a. Node Behavior’s Gene
Himpunan gen ini memiliki dua variabel seperti yang dapat dilihat pada gambar 2.8. Variabel pertama adalah digunakan untuk menentukan jenis jaringan saraf tiruan yang diimplementasikan pada DANN. Nilai variabel pertama dapat berupa Back-propagation Neural Network (BNN), Multilayer Perceptron (MLP), Spiking Neural Network (SNN), ataupun jenis jaringan
27
saraf tiruan lainnya, bergantung pada implementasi pada bagian DANN. Variabel kedua menunjukkan identifikasi dari node (ID Node).
Jenis Jaringan Saraf Tiruan { BNN, MLP, SNN, etc. }
ID Node { 1,2,..,n} Gambar 2.8. Node Behavior’s Gene (Pasha, 2010) b. Neural Network’s Gene
Himpunan gen ini mengandung variabel untuk setiap parameter jaringan saraf tiruan untuk setiap node yang ada pada DANN seperti yang dapat dilihat pada gambar 2.9. Parameter-parameter jaringan saraf tiruan yang dimaksud terdiri atas: banyak neuron pada input layer, banyak neuron pada output layer,
banyak hidden layer, banyak neuron pada setiap hidden layer, banyak epoch
(jumlah perulangan yang dilakukan pada proses pelatihan), learning rate, dan
momentum rate. Banyak neuron pada input layer Banyak neuron pada output layer Banyak hidden layer Banyak neuron pada hidden layer 1 …. Banyak neuron pada hidden layer N Epoch Learning rate Momentum rate
Gambar 2.9. Neural Network’s Gene (Rahmat, 2008) 2. Fitness Function
Untuk melakukan verifikasi dan mengukur objektivitas dari DANN digunakan
root mean squared error (RMSE)atau error akar kuadrat dengan rumus:
NO o p o p o O P d y N E 1 2 1 (2.17)dimana EP adalah akar dari perbedaan kuadrat antara output yang diharapkan dengan output sebenarnya; NO adalah banyak neuron pada output layer;
p o
d adalah output yang diharapkan pada neuron ke-o dan pola ke-p; p o
y adalah output sebenarnya pada neuron ke-o dan pola ke-p. Karena setiap gen memiliki fungsi objektifnya masing-masing, makan rata-rata fungsi objektif untuk setiap jaringan saraf tiruan dalam DANN dapat dihitung menggunakan persamaan:
NG N i Pi AVG N E E NG
0 (2.18)dimana EPi adalah error untuk masing-masing jaringan saraf tiruan; NNG adalah banyak jaringan saraf tiruan yang terdapat pada DANN. Fitness function atau fungsi kecocokan untuk DANN adalah sama dengan EAVGyang merupakan rata-rata dari setiap fungsi objektif dari seluruh jaringan saraf tiruan dalam DANN
(Rahmat, 2008). 3. Regulator Mutasi
Komponen regulator mutasi merupakan komponen yang paling penting dalam
DANGLE yang memungkinkan setiap jaringan saraf tiruan dalam DANN menjadi adaptif. Apabila terjadi mutasi pada sebuah gen, maka jaringan saraf tiruan yang terasosiasi pada gen tersebut harus dilatih ulang sehingga mampu beradaptasi terhadap struktur jaringan yang baru (Pasha, 2010). Lima entitas yang dimutasi oleh regulator mutasi adalah banyak hidden layer, banyak neuron pada setiap
hidden layer, epoch, learning rate dan momentum rate. Aturan yang digunakan dalam melakukan mutasi gen dapat dilihat pada pseudocode berikut:
if (generation = 1) then epoch += 2
else
calculate delta_O = delta_O[generation] – delta_O[generation-1] if (delta_O > 0.005) then
epoch += rand(3)
else if (0.002 < delta_O <= 0.005) then O_smaller_than_0_005++
epoch += rand(6)
for each hidden_layer do
hidden_neuron += 2 * rand(5) if (O_smaller_than_0_005 > 1) then epoch += 10 * rand(5)
for each hidden_layer do
hidden_neuron += 2 * rand(5) else
epoch += 100 * rand(5) hidden_layer += 1
for each hidden_layer do
29
end if end if
4. Proses Pelatihan
Proses pelatihan adalah proses dalam sebuah jaringan saraf tiruan untuk mendapatkan bobot yang tepat untuk menghasilkan output yang diharapkan. Pada
DANGLE, pelatihan tidak hanya terjadi pada jaringan saraf tiruan, melainkan juga terjadi pada GRE (Rahmat, 2008).
5. Neuro-Gene
Transformasi Neuro-Gene adalah sebuah proses pengaturan eksekusi ataupun pelatihan jaringan saraf tiruan pada setiap node(Rahmat, 2008).
Algoritma utama pada GRE didesain untuk mengendalikan gen yang ada, dimana algoritma utama GRE mengusung konsep mutasi pada Genetic Algorithm
(GA). Dengan kata lain, GRE adalah sebuah GA sederhana yang hanya memiliki operator mutasi di dalamnya. Algoritma utama GRE dapat dijabarkan sebagai berikut (Rahmat, 2008):
1. Inisialisasi seluruh nilai variabel gene untuk setiap jaringan saraf tiruan, yakni seluruh neuron pada input layer dan output layer, jumlah hidden layer dan setiap neuron pada hidden layer, generasi, epoch¸learning rate serta momentum rate. 2. Kirim seluruh gen jaringan saraf tiruan ke DANN.
3. Terima hasil fungsi objektif dan output yang dihasilkan setiap jaringan saraf tiruan. Hitung nilai dari fitness function dengan rumus 2.18 untuk setiap jaringan saraf tiruan. Apabila nilai error rata-rata (EAVGyang merupakan hasil dari fitness function) lebih rendah dari nilai kriteria terminasi DANGLE, lanjutkan ke langkah 6. Apabila nilai error rata-rata lebih tinggi atau masih sama dengan nilai kriteria terminasi DANGLE, lanjutkan ke langkah 4.
4. Apabila setiap nilai objective function yang didapatkan pada langkah 3 lebih rendah dari nilai kriteria terminasi mutasi, maka lakukan regulasi mutasi sesuai aturan mutasi yang dijabarkan pada bagian 2.8.1 untuk setiap gen jaringan saraf tiruan. Apabila terdapat salah satu nilai objective function lebih tinggi dari nilai
kriteria terminasi mutasi, maka mutasi tidak dilakukan untuk setiap gen jaringan saraf tiruan.
5. Bentuk gene baru hasil mutasi sesuai dengan hasil struktur yang didapatkan dari mutasi regulasi yang dilakukan pada langkah 4. Tambah nilai generasi dengan satu (generation = generation + 1). Kembali ke langkah 2.
6. Hentikan proses GRE, dimana pelatihan telah selesai dilakukan.
2.8.2. Distributed Adaptive Neural Network
Distributed Adaptive Neural Network (DANN) dapat juga disebut sebagai sebuah
Adaptive Nested Neural Network (ANNN) for Uncorrelated Data. DANN didesain untuk menyelesaikan permasalahan dengan setiap partisi data tidak mempunyai korelasi atau hubungan dengan partisi data yang lain (Rahmat, 2008). Secara konseptual, DANN menggunakan beberapa jaringan saraf tiruan dan membagi beban kerja pada setiap jaringan saraf tiruan, dibandingkan dengan membiarkan sebuah jaringan saraf tiruan yang besar dan kompleks memproses seluruh data yang ada (Pasha, 2010). DANN diaplikasikan untuk mengurangi kompleksitas dari data serta permasalahan. Setiap agen pada DANN dimodelkan untuk menerima input yang berbeda, kemudian setiap output dari setiap agen akan dikembalikan pada GRE untuk digunakan sebagai parameter pada proses mutasi. Gambar 2.10. menunjukkan arsitektur dari DANN, dimana sebuah node merujuk pada sebuah agen yang memiliki sebuah jaringan saraf tiruan. Setiap node memiliki gen masing-masing dan berjalan secara paralel pada lingkungan yang berbeda. Adapun jaringan saraf yang digunakan pada setiap agen dapat berupa jaringan saraf tiruan dengan jenis apapun.
Algoritma utama yang diimplementasikan pada setiap jaringan saraf tiruan dalam DANN, dengan jaringan saraf yang digunakan adalah multilayer perceptron,
dijabarkan sebagai berikut (Pasha, 2010):
31
Output Neuron
Input Neuron Hidden Neuron
Input From Environment NODE/AGENT NODE/AGENT NODE/AGENT G R T E Send Output Training Training Training NODE/AGENT Training
Gambar 2.10. Arsitektur umum dari Distributed Autonomous Neural Network
(Rahmat, 2008)
2. Lakukan proses pelatihan sesuai dengan algoritma pelatihan jaringan multilayer perceptron yang sudah dijelaskan pada bagian 2.7.2. sebanyak epoch yang terdapat pada gen yang dikirimkan dari GRE
3. Hitung nilai dari fungsi objektifuntuk jaringan saraf tiruandengan rumus 2.14. 4. Hitung nilai selisih nilai output yang diharapkan dengan output yang sebenarnya
didapatkan dengan rumus: a
d y y
O (2.19)
dimana O merupakan selisih nilai output; yd merupakan nilai output yang diharapkan; yaadalah nilai output aktual yang didapatkan.
5. Kirimkan kembali nilai fungsi objektif dan nilai O, yang telah didapatkan pada langkah 3 dan 4, pada GRE
BAB 3