PREDIKSI CURAH HUJAN DI KOTA MEDAN MENGGUNAKAN
METODE
BACKPROPAGATION NEURAL NETWORK
Yudhi Andrian1, Erlinda Ningsih2
1
Dosen Teknik Informatika, STMIK Potensi Utama 2
Mahasiswa Sistem Informasi, STMIK Potensi Utama 1,2
STMIK Potensi Utama, Jl. K.L. Yos Sudarso Km 6,5 No. 3A Tanjung Mulia-Medan 1
[email protected], [email protected]
Abstrak
Besarnya curah hujan yang terjadi tidak dapat ditentukan secara pasti, namun dapat diprediksi atau diperkirakan. Dengan menggunakan data historis besarnya curah hujan beberapa waktu yang lampau, maka dapat diprediksi berapa besarnya curah hujan yang terjadi pada masa yang akan datang. Jaringan saraf tiruan
(Artificial Neural Network) sebagian besar telah cukup handal dalam pemecahan masalah, salah satunya
adalah prediksi curah hujan dengan metode backpropagation. Pada penelitian ini, penulis mencoba memprediksi curah hujan di kota medan menggunakan metode backpropagation neural network. Dari hasil penelitian dapat disimpulkan antara lain : Pengujian dengan hidden 5 memiliki akurasi yang lebih baik dibandingkan dengan hidden 6, 7, dan 8. Nilai akurasi tertinggi di dapat dari pengujian data dengan jumlah
hidden 5 dan target error 0.0072 yaitu 43.27 %. Semakin kecil target error, maka jumlah iterasi akan
semakin besar. hidden layer yang lebih besar tidak selalu menyebabkan jumlah iterasi meningkat.
Kata kunci : Prediksi curah hujan, backpropagation, neural network
1. Pendahuluan
Secara umum pola musim di Indonesia dikenal dengan pola Monsun. Pola monsun ini sangat dipengaruhi oleh angin monsun yang menghasilkan dua musim yakni musim hujan dan musim kemarau. Puncak musim hujan terjadi pada bulan Desember, Januari dan Februari sedangkan puncak musim kemarau terjadi pada bulan Juni, Juli dan Agustus [1]. Kondisi cuaca sangat berpengaruh dalam kehidupan sehari-hari, seperti dalam bidang pertanian, transportasi dan industri. Maka dari itu pengamatan terhadap kondisi cuaca, khususnya kondisi curah hujan sangat penting dilakukan [3].
Besarnya curah hujan yang terjadi tidak dapat ditentukan secara pasti, namun dapat diprediksi atau diperkirakan. Dengan menggunakan data historis besarnya curah hujan beberapa waktu yang lampau, maka dapat diprediksi berapa besarnya curah hujan yang terjadi pada masa yang akan datang. Banyak cara yang dapat dilakukan untuk memprediksi besarnya curah hujan di suatu tempat, salah satunya adalah menggunakan teknik jaringan syaraf tiruan (Artificial Neural Network)[3].
Jaringan Saraf Tiruan (Artificial Neural
Network) sebagian besar telah cukup handal
selama beberapa tahun terakhir dalam pemecahan masalah. Jaringan saraf tiruan menyediakan metodologi yang sangat handal dalam pemecahan masalah non-linier. Jaringan saraf tiruan terinspirasi oleh otak manusia di mana neuron
saling interkoneksi secara non-linier. Neuron
saling terhubung satu sama lain melalui suatu jaringan. Jaringan ini yang dilatih menggunakan algoritma backpropagation yang mengikuti
Gradient Descent Method [2].
Pai, Maya L., et al. (2014) mengungkapkan bahwa parameter laut sangat mempengaruhi dalam memprediksi curah hujan monsun barat selatan menggunakan teknik jaringan saraf tiruan. Hasil penelitian menunjukan bahwa metode JST dapat diterapkan dalam memprediksi curah hujan [4].
Pratiwi, Dian, et al. (2011) menggunakan metode backpropagation untuk memprediksi keparahan penyakit osteoarthritis. Penggunaan metode backpropagation neural network terbukti sebagai salah satu metode untuk mengklasifikasikan atau memprediksi keparahan penyakit osteoarthritis berdasarkan warna dan tekstur dengan persentase akurasi 66,6% [5].
Masing-masing metode yang telah dijelaskan di atas dapat diterapkan dalam memprediksi suatu keadaan yang akan datang. Pada penelitian ini penulis mencoba memprediksi curah hujan di Kota Medan dengan metode
backpropagation neural network dengan
Neural Network
Neural Network / Jaringan Saraf Tiruan
(JST) adalah paradigma pengolahan informasi yang terinspirasi oleh sistem saraf secara biologis, seperti proses informasi pada otak manusia. Elemen kunci dari paradigma ini adalah struktur dari sistem pengolahan informasi yang terdiri dari sejumlah besar elemen pemrosesan yang saling berhubungan (neuron), bekerja serentak untuk menyelesaikan masalah tertentu.
Cara kerja JST seperti cara kerja manusia, yaitu belajar melalui contoh. Lapisan-lapisan penyusun JST dibagi menjadi 3, yaitu lapisan
input (input layer), lapisan tersembunyi (hidden
layer), dan lapisan output(ouput layer) [6].
Metode Backpropagation
Arsitektur backpropagation merupakan salah satu arsitektur jaringan saraf tiruan yang dapat digunakan untuk mempelajari dan menganalisis pola data masa lalu lebih tepat sehingga diperoleh keluaran yang lebih akurat (dengan kesalahan atau error minimum) [3].
Langkah-langkah dalam membangun algoritma backpropagation adalah sebagai berikut [6]:
e. Inisialisasi bobot (ambil nilai random yang cukup kecil).
f. Tahap perambatan maju (forward propagation)
4) Setiap unit input (X1, i=1,2,3,…,n)
menerima sinyal xi dan meneruskan sinyal
tersebut ke semua unit pada lapisan tersembunyi.
5) Setiap unit tersembunyi (Z1, j=1,2,3,…,p)
menjumlahkan bobot sinyal input, ditunjukkan dengan persamaan (1).
Dan menerapkan fungsi aktivasi untuk menghitung sinyal output-nya, ditunjukkan dengan persamaan (2).
Fungsi aktivasi yang digunakan adalah fungsi sigmoid, kemudian mengirimkan sinyal tersebut ke semua unit output. 6) Setiap unit output (Yk, k=1,2,3,…,m)
menjumlahkan bobot sinyal input,
ditunjukkan dengan persamaan (3).
Dan menerapkan fungsi aktivasi untuk menghitung sinyal output-nya, ditunjukkan dengan persamaan (4).
g. Tahap perambatan balik (backpropagation)
3) Setiap unit output (Yk, k=1,2,3,…,m)
menerima pola target yang sesuai dengan
pola input pelatihan, kemudian hitung
error, ditunjukkan dengan persamaan (5).
f’ adalah turunan dari fungsi aktivasi. Kemudian hitung korelasi bobot, ditunjukkan dengan persamaan (6).
Dan menghitung koreksi bias, ditunjukkan dengan persamaan (7).
Sekaligus mengirimkan δk ke unit-unit
yang ada di lapisan paling kanan.
4) Setiap unit tersembunyi (Zj, j=1,2,3,…,p)
menjumlahkan delta input-nya (dari unit-unit yang berada pada lapisan di kanannya), ditunjukkan dengan persamaan (8).
Untuk menghitung informasi error,
kalikan nilai ini dengan turunan dari fungsi aktivasinya, ditunjukkan dengan persamaan (9).
Kemudian hitung koreksi bobot, ditunjukkan dengan persamaan (10).
Setelah itu, hitung juga koreksi bias, ditunjukkan dengan persamaan (11).
h. Tahap perubahan bobot dan bias
3) Setiap unit output (Yk, k=1,2,3,…,m)
dilakukan perubahan bobot dan bias
(j=0,1,2,…,p), ditunjukkan dengan
persamaan (12).
Setiap unit tersembunyi (Zj, j=1,2,3,…,p)
dilakukan perubahan bobot dan bias
(i=0,1,2,…,n), ditunjukkan dengan
persamaan (13).
4) Tes kondisi berhenti.
2. Metode Penelitian
Penelitian ini bertujuan untuk memprediksi curah hujan di Kota Medan menggunakan metode
backpropagation neural network. Penulis ingin
mengetahui apakah dengan menggunakan metode
backpropagation neural network dapat
memprediksi curah hujan di kota Medan dengan akurasi yang lebih baik.
tahun 1997 – 2012. Data bersumber dari BMKG Stasiun Polonia, Kota Medan.
Prediksi curah hujan dengan
backpropagation neural network digunakan
langkah-langkah sebagai berikut:
e. Memisahkan data yang akan digunakan sebagai data pelatihan dan data uji. Data curah hujan tahun 1997 – 2008 akan digunakan sebagai data pelatihan selama perancangan JST sedangkan data tahun 2009 – 2012 digunakan sebagi data pengujian.
f. Desain JST
Desain JST dilakukan untuk prediksi curah hujan bulanan dimulai dengan menentukan banyaknya data masukan yang digunakan, banyaknya layar tersembunyi (hidden layer)
yang digunakan, dan banyaknya keluaran yang diinginkan. Data yang digunakan sebagai masukan sebanyak 8 data (8 tahun) dan data keluaran atau target adalah data pada tahun ke-9 (data input 1997 – 2004 dengan target 2005). Untuk mengetahui curah hujan pada tahun ke-10 maka data masukannya merupakan data pada tahun ke-2 sampai tahun ke-9 (data input 1998 – 2005 dengan target 2006), demikian seterusnya. Desain JST prediksi curah hujan dapat dilihat pada gambar 1.
Gambar 1. Desain Backpropagation Neural Network
g. Pengenalan pola (pelatihan)
Pengenalan pola dilakukan dengan cara penyesuaian nilai bobot. Penghentian penyesuaian bobot dalam pengenalan pola apabila error yang dihasilkan mencapai target
error. Error dihitung setelah tahapan forward
propagation. Apabila error lebih besar dari
target error maka pelatihan akan dilanjutkan
ke tahap backward propagation sampai error yang dihasilkan mencapai target error.
h. Pengujian dan prediksi
Pengujian dilakukan bertujuan untuk mengetahui tingkat keakuratan sistem JST yang telah dibuat dalam memprediksi data curah hujan pada tahun tertentu. Sedangkan prediksi bertujuan untuk memprediksi data curah hujan yang akan datang.
3. Hasil dan Analisa
Untuk mengetahui apakah aplikasi yang dibuat telah berjalan dengan baik, maka dilakukan pengujian. Data curah hujan tahun 1997 – 2008 akan digunakan sebagai data pelatihan sedangkan data tahun 2009 – 2012 digunakan sebagai data pengujian. Proses yang ditempuh untuk prediksi curah hujan menggunakan backpropagation
neural network meliputi tahap training, tahap
pengujian dan tahap prediksi. Tabel 1 merupakan
input data curah hujan tahun 1997 – 2008.
Tabel 1(a). Data Input Tahun 1997 sampai 2004 dengan Target 2005
Tabel 1(b). Data Input Tahun 1998 sampai 2005 dengan Target 2006 Hidden Layer Output Layer
Tabel 1(c). Data Input Tahun 1999 sampai
Tabel 1(d). Data Input Tahun 2000 sampai 2007 dengan Target 2008
Sebelum diproses data-data input tersebut akan dinormalisasi. Normalisasi terhadap data dilakukan agar keluaran jaringan sesuai dengan fungsi aktivasi yang digunakan. Data-data tersebut dinormalisasi dalam interval [0, 1] karena dalam prediksi curah hujan, nilai curah hujan pasti bernilai positif atau 0. Selain itu juga terkait fungsi aktivasi yang diberikan yaitu sigmoid biner.
Fungsi sigmoid adalah fungsi asimtotik (tidak pernah mencapai 0 ataupun 1) maka transformasi data hendaknya dilakukan pada interval yang lebih kecil yaitu [0.1, 0.8], ditunjukkan dengan persamaan (14).
a adalah data minimum, b adalah data maksimum,
x adalah data yang akan dinormalisasi dan x’ adalah data yang telah ditransformasi. Tabel 2 merupakan hasil normalisasi data input.
Tabel 2(a). Data Hasil Normalisasi Tahun 1997 sampai 2004 dengan Target 2005
1997 1998 1999 2000 2001 2002 2003 2004 2005
Tabel 2(b). Data Hasil Normalisasi Tahun 1998 sampai 2005 dengan Target 2006
1998 1999 2000 2001 2002 2003 2004 2005 2006
Tabel 2(c). Data Hasil Normalisasi Tahun 1999 sampai 2006 dengan Target 2007
1999 2000 2001 2002 2003 2004 2005 2006 2007
Tabel 2(d). Data Hasil Normalisasi Tahun 2000 sampai 2007 dengan Target 2008
2000 2001 2002 2003 2004 2005 2006 2007 2008 menunjukkan hasil generate nilai bobot.
Tabel 3. Hasil generate Nilai Bobot
Bobot Input Ke Hidden Awal
0.3528 0.2667 0.2898 0.1448 0.151 0.3874
Tahap selanjutnya adalah trainning. Proses
training dilakukan sampai error yang dihasilkan
training dengan target error 0.01 dan jumlah
hidden layer 6.
Gambar 2. Grafik Penurunan Kuadrat Error
Pada gambar 1 dapat dilihat bahwa penurunan
kuadrat error berhenti dan mencapai target error
0.01 dengan jumlah iterasi sebanyak 66. Proses
trainning akan memperbaiki bobot nilai random.
Hasil bobot yang telah diperbaiki melalui proses
training ditunjukkan pada tabel 4. Pada tabel 4
dapat dilihat bahwa semua nilai bobot telah berubah.
Tabel 4. Nilai Bobot Hasil Training
Bobot Input Ke Hidden Hasil Training
0.375 0.2489 0.243 0.0915 0.0151 0.3219
Bias Input Ke Hidden Hasil Training
-0.29 -0.205 0.02 0.0784 0.1885 0.3498
Bobot Hidden Ke Output Hasil Training
1.086 0.6341 0.238 0.2438 -0.986 -0.1135
Bias Hidden Ke Output Hasil Training -1.67
Setelah tahap tranning, tahap berikutnya adalah pengujian. Tahap pengujian digunakan untuk menguji validasi data yang telah dilakukan pada proses training dengan memasukkan data baru yang belum pernah dilatih sebelumnya untuk mengetahui keakurasian dari sistem yang telah dibuat. Data tahun 2009 – 2012 digunakan sebagai data pengujian. Pengujian dilakukan dengan memvariasikan jumlah hidden layer dan memvariasikan nilai target error. Hasil pengujian dapat dilihat pada tabel 5.
Tabel 5(a). Hasil Pengujian dengan Target Error 0.01
Tabel 5(b). Hasil Pengujian dengan Target Error 0.008
Tabel 5(c). Hasil Pengujian dengan Target Error 0.0072 pengujian dengan jumlah hidden 5 memiliki nilai akurasi yang lebih baik dari pada pengujian menggunakan hidden 6, 7, dan 8 yaitu 42.79% dan jumlah iterasi sebanyak 160. Pada tabel 5(c), pengujian dengan jumlah hidden 5 memiliki nilai akurasi yang lebih baik dari pada pengujian menggunakan hidden 6, 7, dan 8 yaitu 43.27% dan jumlah iterasi sebanyak 4500. Dari ke-3 tabel di atas dapat disimpulkan bahwa pengujian dengan menggunakan hidden 5 dan target error
0.0072 memiliki nilai akurasi yang lebih baik dibandingkan dengan pengujian lainnya yaitu 43.27%.
Pada tabel 5 dapat dilihat bahwa target error
yang berbeda akan menghasilkan jumlah iterasi yang berbeda pula. Semakin kecil target error, maka jumlah iterasi akan semakin besar. Pada tabel 5 dapat dilihat juga bahwa jumlah hidden
yang berbeda maka jumlah iterasi juga berbeda. Jumlah hidden layer yang lebih besar tidak selalu menyebabkan jumlah iterasi meningkat.
Tahap terakhir yaitu melakukan prediksi curah hujan untuk beberapa tahun berikutnya dengan mengambil nilai akurasi tertinggi dari hasil pengujian yaitu 43.27%. Tahap prediksi curah hujan di kota Medan menggunakan metode
backpropagation neural network menggunakan
Tabel 6. Hasil Prediksi Curah hujan di Kota Medan
Tahun Bulan
2013 2014 2015 2016 2017
1 122.7 143 153 168.9 154.3
2 108.3 86.4 98.9 109.7 104
3 153.2 141 176.5 204.1 179.2
4 211.4 195.9 163 158.7 143.4
5 315.8 281.4 227.6 231.8 170
6 138.3 110.1 117.4 133.2 143.9
7 189.1 225.9 197.5 175.9 173
8 154.4 157.5 196.9 247.2 249.4
9 254.3 227.2 239.8 208.3 162.5
10 290 264.2 244.2 214.6 211.9
11 224.3 289 228.6 172.9 197.8
12 238 196.2 162.6 129.3 160.4
Pada tabel 6 dapat dilihat bahwa rata-rata curah hujan tertinggi pada tahun 2013 terjadi pada bulan 5, tahun 2014 terjadi pada bulan 11, tahun 2015 terjadi pada bulan 10, tahun 2016 terjadi pada bulan 8, dan tahun 2017 terjadi pada bulan 8.
4. Kesimpulan
Dari hasil penelitian dapat diambil beberapa kesimpulan antara lain:
1. Pengujian dengan hidden 5 memiliki akurasi yang lebih baik dibandingkan dengan hidden
6, 7, dan 8.
2. Nilai akurasi tertinggi di dapat dari pengujian data dengan jumlah hidden 5 dan target error
0.0072 yaitu 43.27 %.
3. Target error yang berbeda akan menghasilkan jumlah iterasi yang berbeda pula. Semakin kecil target error, maka jumlah iterasi akan semakin besar.
4. Jumlah hidden yang berbeda maka jumlah iterasi juga berbeda. Jumlah hidden layer yang lebih besar tidak selalu menyebabkan jumlah iterasi meningkat.
5. Pada hasil prediksi rata-rata curah hujan tertinggi pada tahun 2013 terjadi pada bulan 5 yaitu 315.8.
Daftar Pustaka
[1] Ihwan, Andi, 2013, Metode Jaringan Saraf Tiruan Propagasi Balik untuk Estimasi
Curah Hujan Bulanan di Ketapang
Kalimantan Barat, Prosiding Semirata
FMIPA Universitas Lampung.
[2] Naik, Arti R. and S.K.Pathan, 2012,
Weather Classification and Forecasting using Back Propagation Feed-forward
Neural Network, International Journal of
Scientific and Research Publications, Volume 2, Issue 12, December.
[3] Oktaviani, Cici dan Afdal, 2013, Prediksi
Curah Hujan Bulanan Menggunakan
Jaringan Syaraf Tiruan dengan Beberapa
Fungsi Pelatihan Backpropagation, Jurnal
Fisika Unand, Vol. 2, No. 4, Oktober. [4] Pai, Maya L., et al, 2014, Long Range
Forecast on South West Monsoon Rainfall using Artificial Neural Networks based on
Clustering Approach, I.J. Information
Technology and Computer Science, 2014, 07, 1-8.
[5] Pratiwi, Dian, et al, (2011), An Application
Of Backpropagation Artificial Neural
Network Method for Measuring The
Severity of Osteoarthritis, International
Journal of Engineering & Technology IJET-IJENS, Vol: 11 No: 03.
[6] Sutojo, T., et al, 2010, Kecerdasan Buatan,