Kamis, 15 November 2018

Aplikasi Sistem Pakar di Bidang Eksplorasi Alam

MODEL IDENTIFIKASI PETA SECARA OTOMATIS
MENGGUNAKAN KONSEP JARINGAN SARAF TIRUAN
BACKPROPAGATION

Era teknologi informasi semakin berkembang dengan cepat dan kompleks, kehandalan sistem yang mengolah data dengan baik akan menghasilkan informasi yang baik, begitu pula dengan pemakai sistem yang merupakan faktor utama suatu aplikasi sistem yang sedang dijalankan selain perangkat keras dan perangkat lunak. Brainware adalah konsep pemikiran yang dimiliki oleh manusia dalam kaitannya dengan sistem komputer secara luas. Konsep pemikiran manusia yang dapat melakukan pembelajaran terhadap segala sesuatu yang ditemui nya merupakan hal menarik yang menjadi landasan dibentuknya model Jaringan saraf tiruan (JST) dalam domain yang cukup bervariasi dalam sistem cerdas. Sistem cerdas yang diaplikasikan untuk identifikasi objek dua dimensi pada pemetaan wilayah geografis merupakan sistem yang dapat memberikan pengetahuan dan informasi mengenai keadaan wilayah pada suatu tempat atau daerah yang diinginkan pemakai. Sistem yang dibangun dapat menentukan lokasi wilayah, objek wisata, dan hal-hal yang terkait di dalamnya. Pemakai hanya menunjuk bagian tertentu yang diinginkan dalam peta, kemudian sistem akan memberikan informasi tentang wilayah yang diinginkan pemakai tersebut. Penerapan sistem cerdas ini dapat diaplikasikan pada pola pembelajaran siswa dan mahasiswa pada pelajaran geografi dan hal yang menyangkut pemetaan wilayah, maupun tempat-tempat yang strategis, terutama di jantung kota budaya ini.

JARINGAN SARAF TIRUAN UMPAN BALIK
Banyak model jaringan saraf tiruan dalam dunia riset JST, salah satu modelnya adalah Jaringan saraf tiruan Backpropagation. Jaringan saraf tiruan Backpropagation (BP) pertama kali diperkenalkan oleh Rumelhart, Hinton dan William pada tahun 1986, kemudian Rumelhart dan Mc Cleland mengembangkannya pada tahun 1988. Jaringan ini merupakan model jaringan multilayer. Backpropagation paling banyak digunakan oleh pemakai jaringan saraf tiruan, bahkan diperkirakan lebih dari 80 % proyek jaringan saraf tiruan yang tengah dikembangkan menggunakan Backpropagation. Dalam metode Backpropagation, biasanya, digunakan jaringan multilayer. Sebagai contoh, pada Gambar 1 dilustrasikan jaringan dengan sebuah hidden layer. Dalam jaringan, selain terdapat unit input, unit tersembunyi (hidden units) dan output juga terdapat bias yang diberikan pada unit-unit tersembunyi dan output.
Pada intinya, pelatihan dengan metode Backpropagation terdiri atas tiga langkah, yaitu sebagai berikut.
a. Data dimasukkan ke input jaringan (feedforward)
b. Perhitungan dan propagasi balik dari error yang bersangkutan
c. Pembaharuan (adjustment) bobot dan bias.
Saat umpan maju (feedforward), setiap unit input (Xi) akan menerima sinyal input dan akan menyebarkan sinyal tersebut pada tiap hidden unit (Zj). Setiap hidden unit kemudian akan menghitung aktivasinya dan mengirim sinyal (zj) ke tiap unit output. Kemudian, setiap unit output (Yk) juga akan menghitung aktivasinya (yk) untuk menghasilkan respon terhadap input yang diberikan jaringan.
Saat proses pelatihan (training) setiap unit output membandingkan aktivasinya (yk) dengan nilai target (desired output) untuk menentukan besarnya error. Berdasarkan error tersebut, dihitung faktor δk. Faktor δk digunakan untuk mendistribusikan error dari output kembali ke layer sebelumnya. Dengan cara yang sama, faktor δi juga dihitung pada hidden unit Zj. Faktor δk digunakan untuk memperbaharui bobot antara hidden layer dan input layer.
Setelah semua faktor δ ditentukan, bobot untuk semua layer di sesuaikan secara bersamaan. Pembaharuan bobot Wjk (dari hidden unit Zj ke unit output Yk) dilakukan berdasarkan faktor δk dan aktivasi zj dari hidden unit Zj. Sedangkan, pembaharuan bobot vij (dari input unit Xi ke hidden unit Zj) dilakukan berdasarkanfaktor δj dan aktivasi xi dari input.
Langkah 1.Inisialisasi bobot dan bias. Baik bobot maupun bias dapat diset dengan sembarang angka (acak) dan    biasanya, angka di sekitar 0 dan 1 atau -1 (bias positif atau negatif).
Langkah 2.Jika stop condition masih belum terpenuhi, jalankan langkah 3-10
Langkah 3.Untuk setiap data training, lakukan langkah 4-9
Umpan maju (feedforward)
Langkah 4.Setiap unit input (Xi, i= 1,…n) menerima sinyal input xi dan menyebarkan sinyal tersebut pada seluruh unit pada hidden unit. Perlu diketahui bahwa input xi yang dipakai di sini adalah input training data yang sudah diskalakan.
Langkah 5.Setiap hidden unit (Zj, j=1,…,p) akan menjumlahkan sinyal-sinyal input yang sudah berbobot, termasuk biasnya.
dan memakai fungsi aktivasi yang telah ditentukan untuk menghitung sinyal output dari hidden unit yang bersangkutan. zj = f ( z _ inj ),(2) lalu mengirim sinyal output tersebut ke seluruh unit pada unit output.
Langkah 6. Setiap unit output (Yk, k=1,..,m) akan menjumlahkan sinyal-sinyal input yang sudah berbobot, termasuk biasnya,
dan memakai fungsi aktivasi yang telah ditentukan untuk menghitung sinyal output dari unit output yang bersangkutan yj = f ( y _ ink ),(4) lalu mengirim sinyal output ini ke seluruh unit pada unit output.
Propagasi error (backpropagation of error
Langkah 7.Setiap unit output (Yk, k = 1,…,m) menerima suatu target patter (desired output) yang sesuai dengan input training pattern untuk menghitung kesalahan (error) antara target dengan output yang dihasilkan jaringan. δk = (tk − yk ) f ‘( y _ ink )(5) Sebagaimana input training data, output training data tk juga telah diskalakan menurut fungsi aktivasi yang dipakai Faktor δk digunakan untuk menghitung koreksi error (∆Wjk) yang nantinya akan dipakai untuk memperbaharui Wjk, di mana (6)∆Wjk = αδkzj selain itu, juga dihitung koreksi bias ∆W0k yang nantinya akan dipakai untuk memperbaharui ∆W0k, di mana:  ∆W 0 k = αδk(7) Faktor δk kemudian dikirimkan ke layer yang berada pada langkah 8.
Langkah 8.Setiap hidden unit (Zj, j = 1,…,p) menjumlahkan input delta (yang
dikirim dari layer pada langkah 7) yang sudah berbobot.
Kemudian, hasilnya dikalikan dengan turunan dari fungsi aktivasi yang digunakan jaringan untuk menghasilkan faktor koreksi error j.
di mana δj = δ _ inj f ‘( z _ inj ) (9)
Faktor δj digunakan untuk menghitung koreksi error (∆vij) yang nantinya akan dipakai untuk memperbaharui vij, di mana: (10) ∆vij = αδj xi
Selain itu, juga dihitung koreksi bias ∆v0j yang nantinya akan dipakai untuk memperbaharui v0j, di mana: ∆v0 j = αδj(11)
Pembaharuan bobot (adjustment) dan bias
Langkah 9.Setiap unit output (Yk, k = 1,…,m) akan memperbaharui bias dan bobotnya dari setiap hidden unit (j = 0,…,p), (12)wjk(baru) = wjk(lama) + ∆wjk demikian pula, setiap hidden unit (Zj, j= 1,…, p) akan memperbaharui bias dan bobotnya dari setiap unit input (i = 0,…,n) wij(baru) = wij(lama) + ∆vij(13)
Langkah 10.Memeriksa stop condition.

ANALISIS DAN PERANCANGAN SISTEM
Perancangan piranti lunak jaringan saraf tiruan didasari oleh model multilayer perceptron dengan propagasi balik dan fungsi aktifasi sigmoid biner untuk setiap neuronnya. Ide dasar yang dapat dilakukan pada penelitian ini adalah menentukan masukan yang akan dilakukan proses pembelajaran, selain itu karena model yang dikembangkan ini adalah model pembelajaran terawasi (supervised learning), maka normalisasi output juga harus diberikan pada saat awal pengembangan sistem.
3.1  Analisis Masukan dan Keluaran
Masukan utama adalah citra peta wilayah. Citra peta berwarna kemudian dirubah menjadi gambar dengan skala keabuan, metode yang dipakai untuk menjadikan peta tersebut berwarna grayscale adalah konversi yang dikeluarkan oleh CCIR Recommendation 601-1 yaitu pada persamaan 14 di bawah ini.
Dengan Y adalah nilai piksel yang baru pada mode grayscale, R adalah nilai piksel merah, G adalah nilai piksel hijau, dan B adalah nilai piksel biru
Masukan sistem adalah normalisasi dari segmentasi piksel terhadap wilayah per kecamatan se kotamadya Yogyakarta yang telah dibuat nilai histogram terhadap nilai grayscale. Gambar dibatasi dengan format BMP dengan jumlah piksel image 776 * 521 piksel. Segmentasi dilakukan dengan tiga tahap, yaitu
a. Segmentasi bujur sangkar, yaitu dengan melakukan pengelompokan piksel dengan jumlah 20 piksel horisontal dan 20 piksel vertikal, sehingga didapat jumlah piksel 400 buah untuk satu segmentasinya.
b. Segmentasi horisontal, yaitu dengan melakukan pengelompokan piksel dengan jumlah piksel 20 secara horisontal.
c. Segmentasi vertikal, yaitu dengan malakukan pengelompokan piksel dengan jumlah piksel 20 secara vertikal.
Dari pengelompokan tersebut, kemudian di buat frekuensi nilai penyebaran nilai terang dan nilai gelap suatu warna piksel. Sehingga, bila frekuensi warna terang lebih besar dari frekuensi warna gelap akan dinormalisasi menjadi nilai terang atau 1. Begitu juga sebaliknya. Dari hasil normalisasi tersebut diatas, maka didapat jumlah masukan yang sama untuk seluruh pola wilayah kecamatan yang diberikan (tabel 1) dan jumlah masukan yang akan masuk pada jaringan adalah 257 (jumlah bit biner hasil normalisasi). Karena model Backpropagation yang dikembangkan menggunakan model supervised, maka nilai keluaran juga harus diberikan dan diidentifikasi dahulu. Output adalah nama wilayah kecamatan yang ada di kotamadya Yogyakarta, sehingga jumlah yang didapat adalah 14. Nilai 14 dalam domain biner yang dapat terlingkupi menjadi 4 buah digit, sehingga dapat ditentukan nilai biner untuk tiap-tiap kecamatan tersebut. Sehingga (tabel 1).
Tabel 1. Contoh nilai biner input dan nilai biner output pelatihan
Rancangan Arsitektur Sistem yang akan dibangun
Dari hasil perancangan masukan dan keluaran yang telah di analisa, kemudian ditentukan jumlah hidden, baik jumlah layernya ataupun jumlah unit pada tiap layer yang ada. Jumlah hidden ditentukan dengan cara trial and error, dalam arti hasil pembelajaran yang tercepat dan terbaik itulah yang akan menentukan jumlah hidden layer tersebut. Adapun perancangan jaringan saraf tiruan backpropagation adalah seperti Gambar 2.
HASIL PERCOBAAN
Dari hasil perancangan yang telah dibuat dihasilkan percobaan yang terbaik. Terbaik disini diartikan mempunyai hasil ketepatan atau kebenaran yang cukup baik (lebih dari 82 %) dan pembelajaran (waktu maupun kestabilan) yang cukup baik. Dari percobaan yang dilakukan didapat jumlah iterasi maksimal yang dicapai mencapai 25000 iterasi, dan diperlukan pembelajaran 14 jam terhadap seluruh pola yang diberikan. Selain hal tersebut juga ditetapkan konstanta pembelajaran terbaik adalah 0.02 dengan toleransi kesalahan 0.01 dan lapisan tersembunyi 1 layer dengan jumlah unit 10 (lihat Tabel 1 dan 2)s.
Tabel 2. Hasil pengujian dengan konstanta belajar 0.7
Tabel 3. Hasil pengujian dengan konstanta belajar 0.02
KESIMPULAN
JST backpropagation dapat melakukan pembelajaran dan pengenalan terhadap suatu pola dengan tingkat generalisasi yang cukup tinggi. Sistemidentifikasi menghasilkan tingkat generalisasi sebesar 82,330%. Tingkat kegagalan (failure) terhadap data percobaan sebesar 17 % dari total 100 percobaan.

Tidak ada komentar:

Posting Komentar