• Tidak ada hasil yang ditemukan

IMPLEMENTASI JARINGAN SYARAF TIRUAN ALGORITMA BACKPROPAGATION UNTUK MEMPREDIKSI CURAH HUJAN DI YOGYAKARTA NASKAH PUBLIKASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "IMPLEMENTASI JARINGAN SYARAF TIRUAN ALGORITMA BACKPROPAGATION UNTUK MEMPREDIKSI CURAH HUJAN DI YOGYAKARTA NASKAH PUBLIKASI"

Copied!
16
0
0

Teks penuh

(1)

IMPLEMENTASI JARINGAN SYARAF TIRUAN ALGORITMA

BACKPROPAGATION UNTUK MEMPREDIKSI

CURAH HUJAN DI YOGYAKARTA

NASKAH PUBLIKASI

diajukan oleh

Inggit Prahesti

09.11.2879

kepada

JURUSAN TEKNIK INFORMATIKA

SEKOLAH TINGGI MANAJEMEN INFROMATIKA DAN KOMPUTER

AMIKOM YOGYAKARTA

YOGYAKARTA

2013

(2)

Implementation of Backpropagation Algorithm nerve Network Simulating to Approximating

Predicting Rainfall in Yogyakarta

Implementasi Jaringan Syaraf Tiruan Algoritma Backpropagation untuk Memprediksi

Curah Hujan di Yogyakarta Inggit Prahesti

Kusrini

Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA

ABSTRACT

Neural network is one of the artificial representation of the human brain is always trying to simulate the learning process in the human brain. The term is used here because the artificial neural network was implemented using a computer program that is able to solve a number of the calculation during the learning process.

The rapid growth in technology and science has created the conditions for data-rich but minimal information. Neural network is mining or the discovery of new information by adopting the workings of biological neurons that focus on the workings of the brain nerves. By searching a particular pattern or rules of a number of large amounts of data, Backpropagation algorithm is expected to overcome the difficulties in predicting precipitation, especially in the area of Yogyakarta.

There are many methods have been developed to achieve optimal results from a prediction / forecasting. Which will be reviewed in this paper is the use of artificial neural network Backpropagation algorithm to obtain the prediction results are expected to provide a level of accuracy that comes closest to error.

(3)
(4)

1. Pendahuluan

Di Indonesia meteorologi diasuh dalam Badan Meteorologi Klimatologi dan Geofisika atau yang biasa disebut BMKG. Direktorat BMKG tersebut bertugas mengadakan penelitian dan pelayanan meteorologi klimatologi dan geofisika yang salah satu bidangnya adalah iklim. Iklim merupakan kebiasaan alam yang digerakkan oleh gabungan beberapa unsur yaitu radiasi matahari, temperatur, kelembaban, curah hujan, suhu udara, tekanan udara dan angin. Unsur-unsur itu berbeda pada tempat yang satu dengan tempat yang lainnya. Perbedaan itu disebabkan karena ketinggian tempat, garis lintang, daerah tekanan, arus laut, dan permukaan tanah.

Perbedaan tersebut berpengaruh dengan hubungan timbal balik, dan pengaruh timbal balik faktor tersebut akan menentukan pola yang diperlihatkan oleh unsur. Tetapi sebaliknya, unsur-unsur tersebut pada suatu batas tertentu akan mempengaruhi faktor juga, sehingga keadaan cenderung untuk melanjutkan proses timbal balik tadi. Batas pola yang ditentukan itu umumnya stabil. Namun terjadinya penyimpangan tidak dapat dihindari pada proses tersebut. Penyimpangan yang dimaksud sesungguhnya merupakan pengecualian yang harus diperhatikan. Sebagai contoh curah hujan yang terus menerus selama beberapa hari serta demikian lebat.

Penyimpangan tersebut dapat menimbulkan bencana, baik bagi manusia, ternak, tumbuh-tumbuhan, seperti halnya banjir, badai atau angin topan, kekeringan, dan lain sebagainya. Iklim beserta unsurnya penting untuk diperhatikan dan dipelajari dengan sebaik-baiknya, karena pengaruhnya sering menimbulkan masalah bagi manusia serta makhluk hidup lainnya. Masalah tersebut merupakan tantangan bagi manusia karena harus berusaha untuk mengatasinya dengan menghindari atau memperkecil pengaruh yang tidak menguntungkan kehidupan manusia.

2. Landasan Teori

2.1 Pengertian Curah Hujan

Curah hujan yang terukur didefinisikan sebagai suatu ketinggian air hujan yang terkumpul dalam tempat yang datar, sebelum menguap, tidak meresap, dan mengalir. Curah hujan diukur dalam satuan tinggi (mm), atau sebagai volume air hujan persatuan luas. Dengan asumsi bahwa sebaran hujan yang terjadi merata, tinggi air hujan yang tertampung pada luasan yang kecil (alat penakar hujan) akan sama dengan tinggi air pada daerah yang luas (wilayah yang terwakili oleh penakar hujan). Curah hujan dapat dihitung dari volume air yang tertampung pada penakar hujan dibagi luas mulut penakar hujan.

(5)

2.2 Jaringan Syaraf Tiruan

Jaringan syaraf tiruan merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba mensimulasikan proses pembelajaran pada otak manusia tersebut. Istilah buatan disini digunakan karena jaringan syaraf ini diimplementasikan dengan menggunakan program komputer yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.1

2.3 Backpropagation

Penemuan Backpropagation yang terdiri dari beberapa layar membuka kembali cakrawala. Terlebih setelah berhasil ditemukannya berbagai aplikasi yang dapat diselesaikan dengan Backpropagation, membuat Jaringan Syaraf Tiruan semakin diminati orang. Seperti halnya model JST lain, Backpropagation melatih jaringan untuk mendapatkan keseimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan selama pelatihan serta kemampuan jaringan untuk memberikan respon yang benar terhadap pola masukan yang serupa (tapi tidak sama) dengan pola yang dipakai selama pelatihan.

2.3.1 Pelatihan Standar Backpropagation

Pelatihan Backpropagation meliputi 3 fase. Fase pertama adalah fase maju. Pola masukan dihitung maju mulai dari layar masukan hingga layar keluaran menggunakan fungsi aktivasi yang ditentukan. Fase kedua adalah fase mundur. Selisih antara keluaran jaringan dengan target yang diinginkan merupakan kesalahan yang terjadi. Kesalahan tersebut dipropagasikan mundur, dimtrlai dari garis yang berhubungan langsung dengan unit-unit di layar keluaran. Fase ketiga adalah modifikasi bobot untuk menurunukan kesalahan yang terjadi.2

Fase I : Propagasi maju

Selama propagasi maju, sinyal masukan (= xi) dipropagasikan ke lapis

tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari setiap unit lapis tersembunyi (= zj) tersebut selanjutnya dipropagasikan maju lagi ke lapis

tersembunyi di atasnya menggunakan fungsi aktivasi yang ditentukan. Demikian

1

Kusumadewi, Sri. Membangun Jaringan Syaraf Tiruan Menggunakan MATLAB dan Excel Link. Yogyakarta: (Graha Ilmu,2004),49.

2

Jong, Jek Siang. Jaringan Syaraf Tiruan dan Pemrogramannya Menggunakan MATLAB. (Yogyakarta: Penerbit Andi,2005), 102-103.

(6)

seterusnya hingga menghasilkan keluaran jaringan (= yk). Berikutnya, keluaran jaringan

(= yk) dibandingkan dengan target yang harus dicapai (= tk). Selisih tk-yk adalah

kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari batas toleransi yang ditentukan, maka iterasi dihentikan. Akan tetapi apabila kesalahan masih lebih besar dari batas toleransinya, maka bobot setiap garis dalam jaringan akan dimodifikasikan untuk mengurangi kesalahan yang terjadi.

Fase II : Propagasi mundur

Berdasarkan kesalahan tk-yk, dihitung faktor δk (k=1, 2, …, m) yang dipakai

untuk mendistribusikan kesalahan di unit yk ke semua unit tersembunyi yang terhubung

langsung dengan yk. δk juga dipakai untuk mengubah bobot garis yang

menghubungkan langsung dengan unit keluaran. Dengan cara yang sama, dihitung δj

di setiap unit di lapis tersembunyi sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi di lapis di bawahnya. Demikian seterusnya hingga faktor δ di unit tersembunyi yang berhubungan langsung dengan unit masukan dihitung.

Fase III : Perubahan bobot

Setelah semua faktor δ dihitung, bobot semua garis dimodifikasi bersamaan. Perubahan bobot suatu garis didasarkan atas faktor δ neuron di lapis atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke lapis keluaran didasarkan atas dasar δk yang ada di unit keluaran. Ketiga fase tersebut diulang-ulang terus hingga kondisi penghentian dipenuhi. Umumnya kondisi penghentian yang sering dipakai adalah jumlah iterasi atau kesalahan. Iterasi akan dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan yang terjadi sudah lebih kecil dari batas toleransi yang diijinkan.

2.3.2 Optimalitas Arsitektur Backpropagation

Masalah utama yang dihadapi dalam backpropagation adalah lamanya iterasi yang harus dilakukan. Backpropagation tidak dapat memberikan kepastian tentang berapa epoch yang harus dilalui untuk mencapai kondisi yang diinginkan.

a. Pemilihan bobot dan bias awal

Pemilihan inisialisasi bobot akan mempengaruhi apakah jaringan mencapai galat pada minimum global atau lokal. Perubahan bobot antara kedua unit tergantung pada kedua turunan fungsi aktivasi unit di atas dan unit dibawahnya. Sangatlah penting untuk menghindari pemilihan bobot awal yang akan membuat fungsi aktivasi atau turunannya menjadi nol. Jika bobot awal terlalu besar, masukan awal ke tiap unit tersembunyi atau keluaran akan berada pada daerah di mana

(7)

turunan fungsi sigmoid memiliki nilai sangat kecil (disebut daerah jenuh). Sebaliknya jika bobot terlalu kecil sinyal masukan pada unit tersembunyi atau keluaran akan mendekati nol yang menyebabkan pelatihan jaringan akan sangat lambat. Prosedur umum adalah menginisialisasi bobot dengan nilai acak antara -0,5 dan 0,5 (atau -1 dan 1) atau pada rentang nilai yang lain yang sesuai. Nilai bisa positif atau negatif, karena bobot pada akhir pelatihan juga memiliki kedua tanda tersebut.

b. Jumlah unit tersembunyi

Hasil teoritis yang didapat menunjukkan bahwa jaringan dengan sebuah lapis tersembunyi sudah cukup bagi backpropagation untuk mengenali sembarang perkawanan antara masukan dan target dengan tingkat ketelitian yang ditentukan. Akan tetapi panambahan jumlah lapis tersembunyi kadangkala membuat pelatihan lebih mudah. Semakin banyak hidden layer yang digunakan, maka jaringan akan mampu menangani jangkauan statistik yang lebih luas dan tinggi. Jumlah lapisan yang terlalu banyak bisa menyebabkan laju konvergensi menjadi lebih lambat. Hal ini disebabkan sinyal galat berkurang secara numerik jika melewati terlalu banyak lapisan dan lapisan tambahan cenderung menciptakan minimum lokal.

c. Jumlah pola pelatihan

Tidak ada kepastian tentang berapa banyak pola yang diperlukan agar jaringan dapat dilatih dengan sempurna. Jumlah pola yang dibutuhkan dipengaruhi oleh banyaknya bobot dalam jaringan serta tingkat akurasi yang diharapkan.

d. Parameter laju pembelajaran

Parameter laju pembelajaran (learning rate) sangat berpengaruh pada proses pelatihan. Begitu pula terhadap efektivitas dan kecepatan mencapai konvergensi dari pelatihan. Nilai optimum dari learning rate tergantung permasalahan yang diselesaikan, prinsipnya dipilih sedemikian rupa sehingga tercapai konvergensi yang optimal dalam proses pelatihan. Nilai learning rate yang cukup kecil menjamin penurunan gradient terlaksana dengan baik, namun ini berakibat bertambahnya jumlah iterasi. Pada umumnya besarnya nilai laju pembelajaran tersebut dipilih mulai 0,001 sampai 1 selama proses pelatihan.

e. Momentum

Disamping koefisien laju pembelajaran, ada koefisien lain yang bertujuan untuk mempercepat konvergensi dari algoritma error backpropagation. Penggunaan koefisien momentum ini disarankan apabila konvergensi berlangsung terlalu lama, dan juga untuk mencegah terjadinya lokal minimum. Dengan penambahan momentum, bobot baru pada waktu ke-t+1 didasarkan atas bobot pada waktu t dan t-1.

(8)

2.4 MATLAB3

MATLAB adalah sebuah bahasa dengan (high-performance) kinerja tinggi untuk komputasi masalah teknik. Matlab mengintegrasikan komputasi, visualisasi, dan pemrograman dalam suatu model yang sangat mudah untuk pakai dimana masalah-masalah dan penyelesaiannya diekspresikan dalam notasi matematika yang familiar. Penggunaan Matlab meliputi bidang–bidang :

 Matematika dan Komputasi

 Pembentukan Algorithm

 Akusisi Data

 Pemodelan, simulasi, dan pembuatan prototipe

 Analisa data, explorasi, dan visualisasi

 Grafik Keilmuan dan bidang Rekayasa

MATLAB merupakan suatu sistem interaktif yang memiliki elemen data dalam suatu array sehingga tidak lagi kita dipusingkan dengan masalah dimensi. Hal ini memungkinkan kita untuk memecahkan banyak masalah teknis yang terkait dengan komputasi, kususnya yang berhubungan dengan matrix dan formulasi vektor, yang mana masalah tersebut merupakan persoalan apabila kita harus menyelesaikannya dengan menggunakan bahasa level rendah seperti Pascall, C dan Basic.

Nama MATLAB merupakan singkatan dari matrix laboratory. MATLAB pada awalnya ditulis untuk memudahkan akses perangkat lunak matrik yang telah dibentuk oleh LINPACK dan EISPACK. Saat ini perangkat MATLAB telah menggabung dengan

LAPACK dan BLAS library, yang merupakan satu kesatuan dari sebuah seni tersendiri

dalam perangkat lunak untuk komputasi matrix.

Dalam lingkungan perguruan tinggi teknik, Matlab merupakan perangkat standar untuk memperkenalkan dan mengembangkan penyajian materi matematika, rekayasa dan kelimuan. Di industri, MATLAB merupakan perangkat pilihan untuk penelitian dengan produktifitas yang tingi, pengembangan dan analisanya.

Fitur-fitur MATLAB sudah banyak dikembangkan, dan lebih kita kenal dengan nama toolbox. Sangat penting bagi seorang pengguna Matlab, toolbox mana yang mandukung untuk learn dan apply technologi yang sedang dipelajarinya. Toolbox toolbox ini merupakan kumpulan dari fungsi-fungsi MATLAB (M-files) yang telah dikembangkan ke suatu lingkungan kerja MATLAB untuk memecahkan masalah dalam kelas particular. Area-area yang sudah bisa dipecahkan dengan toolbox saat ini meliputi pengolahan sinyal, system kontrol, neural networks, fuzzy logic, wavelets, dan lain-lain

3

(9)

3. Analisis

3.1 Analisis Kebutuhan Fungsional

Kebutuhan fungsional pada aplikasi prediksi curah hujan ini adalah sebagai berikut :

1. Pengujian Data

Fungsi ini berguna untuk mengetahui tingkat keakuratan nilai prediksi dengan nilai aktualnya.

2. Pelatihan Data

Fungsi ini berguna untuk melatih jaringan hingga diperoleh bobot yang sesuai.

3. Prediksi

Fungsi ini berguna jika user ingin memprediksi curah hujan satu bulan tertentu secara khusus.

3.2 Identifikasi Masalah

Memprediksi curah hujan adalah suatu kegiatan memprakirakan curah hujan dimasa datang dengan mengacu pada data-data curah hujan terdahulu. Dalam hal ini perlu dilakukan analisis data yang dibutuhkan guna memprediksi curah hujan, dan analisis sistem yang akan digunakan untuk memprediksi curah hujan dimasa datang. Dengan jaringan syaraf tiruan yang akan buat, diharapkan dapat melakukan prediksi curah hujan semaksimal mungkin.

3.3 Analisis Kebutuhan Data

Dalam pelatihan Jaringan Syaraf Tiruan, banyak data yang dibutuhkan supaya jaringan dapat dilatih dengan benar. Data yang digunakan dibagi menjadi dua, yaitu data yang akan dijadikan bahan pelatihan serta data yang akan diujikan. Semakin banyaknya data yang digunakan dalam pelatihan, jaringan akan mudah mengenali polanya dan diharapkan hasil prediksinya mendekati sempurna.

3.4 Perancangan Jaringan Backpropagation

Beberapa langkah untuk merancang jaringan dengan algoritma backpropagation yaitu, pertama pengumpulan data yang akan dijadikan variabel masukan serta target yang menjadi keluarannya. Lalu pembagian data menjadi data pelatihan dan data pengujian. Berikutnya menentukan arsitektur jaringan sesuai dengan algoritma yang digunakan. Selanjutnya tentukan jumlah sel (neuron) untuk lapisan tersembunyi serta fungsi aktifasi yang digunakan setiap lapisan.

(10)

Selain itu, terdapat beberapa nilai parameter yang harus diset untuk pelatihan. Parameter-parameter tersebut yaitu maksimum epoch , laju pembelajaran (learning rate) serta momentum.

3.5 Pengumpulan Data dan Penentuan Pola

Data curah hujan bulanan didapat dari BMKG Stasiun Geofisika Yogyakarta yaitu data dari Januari 2009 sampai Desember 2011. Total data adalah 36 data yang akan dibagi 2 yaitu 24 data untuk pelatihan jaringan, dan 12 data untuk pengujian jaringan. Berikut table data curah hujan bulanan yang didapat dari BMKG Yogyakarta :

Table Data curah hujan bulan Januari 2009 – Desember 2011

Jan Feb Mar April Mei Juni Juli Agt Sept Okt Nov Des

2009 263 326 130 229 132 49 21 1 0 100 102 227

2010 227 174 259 151 208 81 100 107 396 322 342 374

2011 396 405 234 274 184 5 0 0 0 26 241 310

Yang dimaksud sebagai data pelatihan dan data pengujian adalah : 1. Data Pelatihan

Data pelatihan adalah data yang digunakan untuk mendapatkan bobot yang optimal, akan tetapi kriteria penghentian didasarkan atas data pengujian. Jika kesalahan data uji masih turun, pelatihan dilanjutkan. Pelatihan dihentikan apabila kesalahannya mulai naik.4

2. Data Pengujian

Sedangkan yang dimaksud dengan data pengujian adalah data yang digunakan untuk mendapatkan keseimbangan antara pengenalan pola pelatihan secara benar dan respon yang baik untuk pola lain yang sejenis.5

3.6 Algoritma Pelatihan

Algoritma pelatihan jaringan backpropagation yang memiliki tiga lapisan dengan fungsi aktivasi sigmoid biner serta penambahan momentum adalah sebagai berikut:

 Inisialisasi bobot dan bias secara acak dengan bilangan acak kecil.

Tetapkan jumlah epoch maksimum, batas galat, laju pembelajaran dan momentum.

4

Op.Cit. hlm.124. 5 Ibid. hlm.112

(11)

Selama kondisi penghentian belum terpenuhi (epoch < epoch maksimum dan MSE > batas galat), maka lakukan langkah-langkah berikut :

1) Epoch = Epoch + 1

2) Untuk setiap pasang data pelatihan, kerjakan Fase Feed Forward, Fase

Backpropagation dan Fase Perubahan Bobot

4. Hasil dan Pembahasan

4.1 Membangun Jaringan dengan MATLAB

Langkah pertama yang harus dilakukan untuk memprogram backpropagation dengan MATLAB adalah membuat inisialisasi jaringan. Perintah untuk membentuk jaringan adalah newff. Yang formatnya adalah sebagai berikut:

net = newff(PR,[S1 S2 ... SN],{TF1 TF2 … TFN},BTF,BLF,PF) dengan keterangan :

net = Jaringan backpropagation yang terdiri dari n layer

PR = Matriks ordo R x 2 yang berisi nilai minimum dan maksimum R buah elemen masukannya.

Si = Fungsi aktivasi yang dipakai pada layar ke-i (i=1,2,...,n). Default = tansig (sigmoid bipolar)

BTF = Fungsi pelatihan jaringan. Defaultnya = traingdx BLF = Fungsi perubahan bobot/bias. Default=learngdm PF = Fungsi perhitungan error (Mean Square Error MSE)

Sebelum pelatihan dilakukan, terlebih dahulu ditentukan nilai parameter yang diinginkan guna memperoleh hasil yang optimal. Untuk memberikan nilai parameter dalam MATLAB adalah sebagai berikut :

 Net.trainParam.Show

Perintah yang digunakan untuk menampilkan frekuensi perubahan MSE (default setiap 25 epochs)

 Net.trainParam.epochs

Perintah yang dipakai untuk menentukan jumlah epochs maksimum pelatihan (default 100 epochs)

 Net.trainParam.goal

Perintah untuk menentukan batas MSE agar iterasi dihentikan. Iterasi akan berhenti jika MSE < dari batas yang ditentukan atau jumlah epoch telah mencapai maksimum sesuai nilai yang diberikan pada perintah net.trainParam.epochs

(12)

Perintah yang digunakan untuk menentukan laju pembelajaran (learning rate). Default-nya adalah 0,01. Semakin besar nilai laju pembelajaran, semakin cepat pula proses pelatihan. Akan tetapi jika nilainya terlalu besar, algoritma menjadi tidak stabil dan mencapai titik minimum lokal.

 Net.trainParam.time

Perintah untuk membatasi lama pelatihan (dalam detik). Pelatihan dihentikan jika lamanya melebihi nilai yang ditentukan.

 Net.trainParam.mc

Perintah ini digunakan untuk menentukan nilai momentum antara 0 – 1 (default adalah 0,9).

4.2 Pelatihan Jaringan

Data disimpan dalam format .xls yang diberi nama Data_Latih.xls, kemudian data tersebut akan disimpan dalam matriks A yang berukuran m x n. Dengan m adalah jumlah baris data dan n adalah jumlah kolom data. Sesuai tabel data pelatihan, jumlah baris data adalah 9 dan jumlah kolom data adalah 1, sehingga matriks input A berukuran 9 x 1. Setelah itu matriks A dibagi menjadi input (p) dan target (t).

Parameter-parameter yang digunakan dalam pelatihan ini adalah : - Momentum : m = 0,25; m = 0,5; m = 0,75

- Learning Rate : lr = 0,1; lr = 0,5; lr = 0,9

- Lapisan tersembunyi : n = 25; n = 50; n = 75; n = 100

Lalu program membaca file data yang disimpan dalam format .xls dengan perintah :

A = xlsread(Data_Latih.xls); [m,n] = size(A);

Setiap elemen matriks harus diubah pada range 0,1 – 0,9 sesuai dengan fungsi aktifasi yang digunakan (logsig).

x1 = A(:,1);

min_x1=min(min(x1)); max_x1=max(max(x1));

Perintah diatas menunjukkan bahwa kolom input matriks A disimpan dalam matriks x1, dan nilai minimum dan maksimum disimpan dalam variable min_x1 dan max_x1.

Kemudian data input diubah ke dalam range 0,1 – 0,9 dengan perintah: x1=(0.8*(x1-min_x1)/(max_x1-min_x1))+0.1; Perintah untuk input data target :

(13)

min_y=min(min(y)); max_y=max(max(y));

y=(0.8*(y-min_y)/(max_y-min_y)+0.1);

Setelah range diubah, maka jaringan Backpropagation dapat dibangun. Untuk contoh pelatihan pertama, berikut parameter-parameter yang digunakan:

Data ini : Data_Latih.xls Fungsi Aktivasi ke Lapisan Tersembunyi : Logsig Fungsi Aktivasi ke Lapisan Keluaran : Logsig Jenis Pelatihan : Traingdx Jumlah Neuron Lapisan Tersembunyi : 25

Momentum : 0,25

Learning rate : 0,1 Batas Galat Maksimum : 0,0001 Batas Epoch Maksimum : 100.000 Perintahnya sebagai berikut :

net = newff (minmax(p),[25 1], {'logsig', 'logsig'}, 'traingdx'); net.trainparam.lr = 0.1; net.trainparam.mc = 0.25; net.trainparam.epochs = 100000; net.trainparam.show = 100; net.trainparam.goal = 0.0001;

Kemudian untuk melatih jaringan digunakan perintah : net = train (net,p,t);

Kemudian disimulasi dengan perintah : a = sim(net,p);

Setelah pengujian selesai, range dikembalikan dalam bentuk data curah hujan dengan perintah :

target=round((((t-0.1)*(max_t-min_t))/0.8)+min_t); output=round((((a-0.1)*(max_t-min_t))/0.8)+min_t);

Pelatihan ini dilakukan beberapa kali dengan parameter berbeda untuk mendapatkan hasil yang maksimal. Berikut ini adalah contoh table hasil pelatihan :

(14)

Table Presentase kebenaran & epoch yang dicapai pada n=15

Momentum Learning Rate Pencapaian Epoch Presentase kebenaran n=15 0.25 0.1 103602 81,8% 0.5 103777 72,7% 0.9 103820 72,7% 0.5 0.1 >140901 0% 0.5 77624 81,8% 0.9 93908 27,28% 0.75 0.1 67211 81,8% 0.5 >154301 0% 0.9 >140601 0%

Pelatihan dihentikan pada epoch-epoch tersebut diatas (yang diberi tanda >) adalah dikarenakan performance yang dihasilkan jauh mendekati goal yang ditentukan dan mengalami pendekatan nilai goal yang tidak stabil. Pada pelatihan yang baik adalah

performance mengalami penurunan nilai mendekati goal yang ditentukan, namun pada

pelatihan tersebut performance menunjukan penurunan dan juga kenaikan yang menjauhi nilai goal.

5. Kesimpulan dan Saran 5.1 Kesimpulan

Berdasarkan hasil dan analisa dari bab sebelumnya maka penulis dapat mengambil kesimpulan sebagai berikut :

1. Semakin kecil batas galat yang ditentukan, maka akan mengalami waktu pelatihan yang semakin lama serta epoch yang dicapai semakin besar. Pada pelatihan yang dijelaskan seperti pada bab sebelumnya, galat yang ditentukan adalah sebesar 0.0001 dan waktu yang dibutuhkan untuk mencapainya kurang dari 10 menit.

2. Hasil pengujian data yang telah dilatih menunjukkan performa yang cukup baik. Selisih antara target yang sebenarnya dengan hasil output program tidak menunjukkan perbedaan yang begitu besar.

3. Jumlah data masukan yang digunakan untuk pelatihan jaringan sangat menentukan output dari pelatihan jaringan. Semakin banyak data yang

(15)

digunakan untuk pelatihan, jaringan akan semakin mampu mengenali pola, sehingga penentuan nilai galat dapat diperkecil.

4. Fasilitas MATLAB yang menyediakan fitur-fitur untuk perhitungan neural network sangat membantu dalam pembuatan aplikasi Jaringan Syaraf Triuan. Meskipun fasilitas GUIDE MATLAB 6.5 masih terbatas jika dibandingkan dengan perangkat lunak yang berorientasi objek lainnya, namun dalam penggunaannya untuk pembangunan aplikasi Jaringan Syaraf Tiruan sangat matematis dan mudah.

5.2 Saran

Saran yang penulis ajukan untuk perbaikan dan pengembangan lebih lanjut mengenai aplikasi ini adalah sebagai berikut :

1. Terjadinya hujan adalah dipengaruhi oleh beberapa hal seperti garis lintang, factor ketinggian tempat, jarak dari sumber air, arah angin, deretan pegunungan, factor perbedaan suhu tanah dan factor luas daratan. Data curah hujan bulanan adalah akumulasi dari data harian yang didapat dari pengukuran berdasarkan alat pengukur curah hujan. Dalam penelitian ini, data yang gunakan hanyalah data 3 tahun curah hujan yaitu data akumulasi data harian dan tidak menggunakan inputan data lain yang mempengaruhi curah hujan. Pengembangan selanjutnya bisa dilakukan dengan lebih detil lagi yaitu prediksi curah hujan harian dengan memberikan inputan factor-faktor yang mempengaruhi curah hujan dan menggunakan data yang lebih banyak. Standar untuk prediksi curah hujan yang sesungguhnya adalah menggunakan 30 tahun data tahun sebelumnya.

2. Aplikasi Jaringan Syaraf Tiruan yang dibangun dengan MATLAB ini masih terlihat kaku dan terbatas. Data yang dipanggil harus disimpan dalam file excel dengan ukuran baris dan kolom yang tidak bisa dirubah, sehingga ketika user ingin menggunakan data lain yang ukuran baris dan kolomnya tidak sama, maka program tidak mau membaca file tersebut. Oleh karena itu, pada pengembangannya nanti diharapkan dapat ditemukan cara yang praktis dalam pemanggilan file datanya.

(16)

DAFTAR PUSTAKA

Jong, Jek Siang. 2005. Jaringan Syaraf Tiruan dan Pemrogramannya Menggunakan

MATLAB. Yogyakarta: Penerbit Andi.

Kusumadewi, Sri. 2004. Membangun Jaringan Syaraf Tiruan Menggunakan MATLAB dan

Excel Link. Yogyakarta: Graha Ilmu

Gambar

Table Data curah hujan bulan Januari 2009 – Desember 2011
Table Presentase kebenaran &amp; epoch yang dicapai pada n=15

Referensi

Dokumen terkait

Untuk mengetahui perbedaan rata-rata aktivitas volume perdagangan pada 10 saham termahal dalam kelompok KOMPAS-100 sebelum dan sesudah perubahan satuan perdagangan di Bursa

Judul yang dipilih oleh Tim peneliti untuk Hibah Penelitian dan Pengabdian Pada Masyarakat Kemenristekdikti 2017 ini adalah “Rencana Kontinjensi Pengurangan Risiko Bencana

Salah satu kegiatan yang akan dilakukan untuk mengatasi ke-lima hal tersebut antara lain, : pada tahun 2015 ini Kementerian Koperasi dan UKM akan melakukan

Bambang Wahyudi (2002:101) menyatakan: penilaian kinerja adalah suatu evaluasi yang dilakukan secara periodik dan sistematis tentang prestasi kerja atau jabatan

Ada beberapa cara yang dapat di lakukan oleh masyarakat awam untuk membedakan jamur beracun dengan jamur yang tidak beracun, umumnya jamur beracun mempunyai warna yang mencolok

Penerapan metode Jaringan Syaraf Tiruan (JST) untuk peramalan permintaan minuman kesehatan instan jahe DIA dengan menggunakan model jaringan Backpropagation,

Berdasarkan pemikiran di atas dan apa yang telah dilakukan oleh perpustakaan FE UII serta ditambah dengan hasil studi dari Szulanski (1996) yang mendiskusikan per- masalahan

Tujuan dari penelitian ini adalah untuk menganalisa kesalahan-kesalahan gramatika yang dilakukan para mahasiswa dalam mempelajari business english correspondence dan