BACKPROPAGATION NEURAL NETWORK AS A METHOD OF FORECASTING ON CALCULATION INFLATION RATE IN JAKARTA AND SURABAYA Anggi Purnama Undergraduate Program, Computer Science, 2007 Gunadarma Universiy http://www.gunadarma.ac.id Keywords: neural network, forecasting, inflation rate ABSTRACT: Artificial Neural Network has been grown up very fast, such as for forecasting purpose, one of example is forecasting inflation rate. Inflation is a condition economic where the prices are high. Inflation rate consist of national inflation rate and region inflation rate. Region inflation rate, it self consist of many cities. Jakarta and Surabaya are two big city in Indonesia. Jakarta as the capital of Indonesia and Surabaya as the capital of east java have a role in influence of national inflation rate. In this paper will be discussing about how to work of artificial neural network in inflation rate forecasting ( Jakarta and Surabaya City ). For implementation use Matlab.
1
1. Pendahuluan Jaringan syaraf tiruan adalah suatu teknologi komputasi yang berbasis pada model syaraf biologis dan mencoba mensimulasikan tingkah laku dan kerja model syaraf terhadap berbagai macam masukan. Namun, saat ini jaringan syaraf tiruan sudah berkembang sangat pesat, diantaranya untuk tujuan peramalan ( forecasting ), salah satunya adalah peramalan laju inflasi. Laju inflasi adalah suatu kondisi perekonomian dimana harga-harga pada umumnya naik. Kenaikan dari satu atau dua barang saja belum dapat dikatakan sebagai inflasi, kecuali bila kenaikan tersebut meluas. Dampak inflasi pada umumnya merugikan masyarakat, baik produsen maupun konsumen. Laju inflasi terdiri dari laju inflasi nasional dan laju inflasi daerah. Laju inflasi daerah itu sendiri terdiri dari beberapa kota yang berada di daerah tersebut. Jakarta dan Surabaya adalah dua kota besar yang ada di Indonesia. Jakarta sebagai ibukota negara secara tidak langsung ikut mempengaruhi laju inflasi nasional. Sedangkan Surabaya sebagai ibu kota daerah Jawa Timur dan salah satu kota besar di Indonesia, kegiatan perekonomiannya tidak kalah dengan kota-kota besar lainnya di Indonesia dan memiliki pengaruh juga pada laju inflasi. Surabaya menjadi salah satu tolak ukur penghitungan laju inflasi di daerah Jawa Timur dan tolak ukur daerah Jawa Timur dengan daerah provinsi lainnya di Indonesia. Terdapat berbagai metode jaringan syaraf tiruan terkait dengan peramalan. Salah satunya metode jaringan syaraf tiruan dengan algoritma backpropagation. Algoritma ini salah satu algoritma yang cocok untuk proses peramalan. Oleh karena itu penulis akan membahas mengenai Jaringan Syaraf Tiruan Backpropagation sebagai Metode Peramalan ( Forecasting ) pada Penghitungan Laju Inflasi Kota Jakarta dan Surabaya. Tujuan Penulisan adalah 1. untuk mengetahui cara kerja jaringan syaraf tiruan sebagai metode peramalan inflasi ( kota Jakarta dan Surabaya ). Adapun batasan masalahnya adalah 1. Pada penulisan ini akan membahas peramalan ( forecasting ) laju inflasi kota Jakarta dan Surabaya berdasarkan laju inflasi bulanan ( Maret 2009 – Maret 2010 ) kota tersebut menggunakan jaringan syaraf tiruan backpropagation. 2. Landasan Teori 2.1 Inflasi Secara singkat dapat dikemukakan bahwa inflasi adalah suatu kondisi perekonomian dimana harga-harga pada umumnya naik. Sedangkan kondisi sebaliknya dimana harga-harga pada umumnya turun disebut deflasi. 2
2.2 Jaringan Syaraf Tiruan Jaringan syaraf tiruan adalah paradigma pemrosesan suatu informasi yang terinspirasi oleh sistem sel syaraf biologi, sama seperti otak yang memproses suatu informasi. Elemen mendasar dari paradigma tersebut adalah struktur yang baru dari sistem pemrosesan informasi. Jaringan syaraf tiruan seperti manusia belajar dari suatu contoh. Jaringan syaraf tiruan dibentuk untuk memecahkan suatu masalah tertentu. 2.2.1 Arsitektur Jaringan Syaraf Tiruan Berdasarkan dari arsitektur (pola koneksi), Jaringan Syaraf Tiruan dapat dibagi kedalam dua kategori : a. Struktur Feedforward Sebuah jaringan yang sederhana mempunyai struktur feedforward dimana signal bergerak dari input kemudian melewati lapisan tersembunyi dan akhirnya mencapai unit output (mempunyai struktur perilaku yang stabil). b. Struktur Recurrent ( Feedback ) Jika suatu jaringan berulang (mempunyai koneksi kembali dari output ke input) akan menimbulkan ketidakstabilan dan akan menghasilkan dinamika yang sangat kompleks. 2.2.2 Faktor Keberhasilan Jaringan Syaraf Tiruan Ada beberapa faktor yang mendukung keberhasilan tersebut antara lain : Handal. Jaringan Syaraf Tiruan adalah teknik pemodelan yang sangat memuaskan yang dapat membuat model suatu fungsi yang sangat kompleks. Mudah digunakan. Jaringan Syaraf Tiruan dipelajari dengan contoh. Pengguna Jaringan Syaraf Tiruan mengumpulkan data dan melakukan pembelajaran algoritma untuk mempelajari secara otomatis struktur data, sehingga pengguna tidak memerlukan pengetahuan khusus mengenai bagaimana memilih dan mempersiapkan data, bagaimana memilih Jaringan Syaraf Tiruan yang tepat, bagaimana membaca hasil, tingkatan pengetahuan yang diperlukan untuk keberhasilan Menggunakan Jaringan Syaraf Tiruan tidak lebih dari pemecahan masalah yang menggunakan metode statistik nonlinear yang telah dikenal. 2.3 Backpropagation Backpropagation dibuat untuk menggeneralisasi aturan belajar Widrow-Hoff terhadap jaringan berlapis banyak dan fungsi transfer diferensial. Backpropagation standar adalah algoritma gradient descent yaitu aturan belajar Widrow-Hoff. 2.3.1 Arsitektur Backpropagation Backpropagation memiliki beberapa unit yang ada dalam satu atau lebih layar tersembunyi. Gambar 2.1 adalah arsitektur backpropagation dengan n buah masukan ( ditambah sebuah bias ), sebuah layar tersembunyi yang terdiri dari p unit ( ditambah sebuah bias ), serta m buah unit keluaran.
3
Gambar 2.1 Arsitektur Backpropagation 2.3.2 Pelatihan Backpropagation 1. Fase Propagasi Maju Selama propagasi maju, sinyal masukan (x ) dipropagasikan ke layer tersembunyi menggunakan 1
fungsi aktivasi yang ditentukan. Keluaran dari unit tersembuyi (Z ) tersebut selanjutnya j
dipropagasi maju lagi ke layer tersembunyi berikutnya dengan fungsi aktivasi yang telah ditentukan. Dan seterusnya hingga menghasilkan keluaran jaringan (y ). k
2. Fase Propagasi Mundur Berdasarkan kesalahan t – y dihitung faktor δ (k= 1, ..., m) yang dipakai untuk k
k
k
mendistribusikan kesalahan di unit Y ke semua unit tersembunyi yang terhubung langsung k
dengan Y . δ juga dipakai untuk mengubah bobot garis yang berhubungan langsung dengan unit k
k
keluaran. Dengan cara yang sama, dihitung faktor δ di setiap layer tersembunyi sebagai dasar j
perubahan bobot semua garis yang berasal dari unit tersembunyi di layer di bawahnya. Dan seterusnya hingga semua faktor δ di unit tersembunyi yang terhubung langsung dengan unit masukan dihitung. 3. Fase Modifikasi Bobot Setelah semua faktor δ dihitung, bobot semua garis dimodifikasi bersamaan. Perubahan bobot suatu garis didasarkan atas faktor δ neuron di layer atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke layer keluaran didasarkan atas δ yang ada di unit keluaran k
2.3.3 Algoritma Backpropagation • • • •
Inisialisasi bobot ( ambil bobot awal dengan nilai random yang cukup kecil ). Tetapkan : Maksimum epoh, kinerja tujuan, dan learning rate. Kerjakan langkah-langkah berikut selama ( epoh < maksimum epoh ) dan ( MSE < kinerja tujuan ). Untuk setiap pasang data pelatihan, lakukan langkah 1-6 4
Fase I : Propagasi Langkah 1 : Tiap unit masukan menerima sinyal dan meneruskannya ke unit tersembunyi di atasnya. Langkah 2 : Hitung semua keluaran di unit tersembunyi zj (j = 1,2,..,p) z_netj = v0j + xivij zj = f(z_netj) = 1 / ( 1 + e-z_net_j ) Langkah 3 : Hitung semua keluaran jaringan di unit yk (k = 1,2,…,m) y_netk = woj + = jwjk yk = f(y_netk) = 1 / ( 1 + e-y_net_k ) Fase II : Propagasi Mundur Langkah 4 : Hitung faktor δ unit keluaran berdasarkan kesalahan di setiap unit keluaran yk = (k = 1,2,…,m) δ = ( t – y ) f’ (y ) = (t – y ) y (1 – y ) k
k
k
_net k
k
k
k
k
δ merupakan kesalahan yang akan dipakai dalam perubahan bobot layer k
dibawahnya (langkah 7) Hitung suku perubahan bobot wkj (yang akan dipakai nanti untuk merubah bobot Wkj ) dengan laju percepatan α. Δw = α δ z (k= 1,2, ..., m ; j = 0,1,2, ..., p) jk
k j
Langkah 5 : Hitung faktor δ unit tersembunyi berdasarkan kesalahan di setiap unit tersembunyi zj = (j=1,2,…,p) = δ k wkj _net j
Faktor δ unit tersembunyi : δ =δ f’(z )=δ z (1 – z ) j
_net j
_net j
_net j j
j
Hitung suku perubahan bobot v (yang akan dipakai untuk merubah v ) ij
Δv = α δ x (j = 1,2, ..., p ; i = 0,1,2, ..., n) ij
j
ij
i
Fase III : Perubahan Bobot Langkah 6 : Hitung semua perubahan bobot. Perubahan bobot garis yang menuju ke unit keluaran ; w (baru) = w (lama) + Δw (k=1,2, ...m ; j =0,1,2,...,p) jk
jk
jk
Perubahan bobot garis yang menuju ke unit tersembunyi: v (baru) = v (lama) + Δv (j=1,2, ...p ; i =0,1,2,...,n) ij
ij
ij
Langkah 7 : Stop 2.4 Pembahasan 2.4.1 Pengumpulan Data Data yang digunakan dalam penulisan ini tidak diambil secara langsung dari lapangan tetapi diambil dari data yang telah ada (dicatat) pada Badan Pusat Statistik DKI Jakarta 2010 dan BPS Provinsi Jawa Timur ( Laju Inflasi untuk Kota Surabaya ) bulan Maret 2009 sampai dengan bulan Maret 2010. Tabel 2.1 Laju Inflasi Kota Jakarta Maret 2009 – Maret 2010
5
Bulan
Presentase
Maret’09
0,33%
April’09
-0.,15%
Mei’09
0,17%
Juni’09
0,13%
Juli’09
0,36%
Agustus’09
0,45%
September’09
0,91%
Oktober’09
0,12%
November’09
0,05%
Desember’09
0,51%
Januari’10
0,72%
Februari’10
0,14%
Maret’10
0,07%
Sumber : BPS DKI Jakarta
Tabel 2.2 Laju Inflasi Kota Surabaya Maret 2009 – Maret 2010 Bulan
Presentase
Maret’09
-0,16%
April’09
-0,44%
Mei’09
-0,20%
Juni’09
0,22%
Juli’09
0,25%
Agustus’09
-0,20%
September’09
0,10%
Oktober’09
0,16%
November’09
0,05%
Desember’09
0,52%
Januari’10
0,20%
Februari’10
0,25%
Maret’10
-0,12% 6
Sumber : BPS Jawa Timur ( Kota Surabaya ) 2.4.2 Hasil Peramalan
Tabel 2.3 Hasil Peramalan Kota Jakarta Learning Rate
Momentum Arsitektur Jaringan Terbaik Layer 1
0,01
0,02
0,04
0,04
0,05
MSE
Prosentase
0,6
75
Layer 2 1
0,00999
99,468%
0,7
60
1
0,01
99,468%
0,8
60
1
0,01
99,465%
0,9
60
1
0,01
99,467%
0,6
60
1
0,00999
99,467%
0,7
60
1
0,00999
99,467%
0,8
50
1
0,00999
99,468%
0,9
55
1
0,00999
99,467%
0,6
55
1
0,00999
99,465%
0,7
40
1
0,01
99,468%
0,8
50
1
0,01
99,467%
0,9
50
1
0,00998
99,468%
0,6
30
1
0,01
99,468%
0,7
40
1
0,00999
99,467%
0,8
40
1
0,00999
99,483%
0,9
50
1
0,00999
99,468%
0,6
50
1
0,00999
99,468%
0,7
40
1
0,00999
99,467%
0,8
40
1
0,01
99,465%
0,9
50
1
0,00998
99,468%
Berdasarkan hasil tabel di atas ( juga dapat dilihat pada Lampiran Hasil Pengujian ) dapat dilihat bahwa jaringan mengenali pola tidak begitu cepat. Dari hasil tersebut didapatkan arsitektur jaringan yang terbaik adalah 40.1 dengan learning rate = 0,04 dan momentum = 0,8. Dengan learning rate = 0,04 dan momentum = 0,8 serta arsitektur 40.1 didapat hasil MSE = 0,00999 dan prosentase = 99,483%. 7
Tabel 2.4 Hasil Peramalan Kota Surabaya Learning Rate
Momentum Arsitektur Jaringan Terbaik Layer 1
0,01
0,02
0,04
0,04
0,05
MSE
Prosentase
0,6
16
Layer 2 1
0,0120
99,349%
0,7
20
1
0,0128
99,302%
0,8
16
1
0,0120
99,35%
0,9
18
1
0,0124
99,328%
0,6
19
1
0,0120
99,348%
0,7
16
1
0,0119
99,352%
0,8
19
1
0,0119
99,352%
0,9
19
1
0,0119
99,351%
0,6
19
1
0,0119
99,352%
0,7
18
1
0,0120
99,348%
0,8
19
1
0,0119
99,351%
0,9
16
1
0,0119
99,352%
0,6
19
1
0,0119
99,352%
0,7
18
1
0,0120
99,35%
0,8
20
1
0,0119
99,352%
0,9
16
1
0,0119
99,323%
0,6
12
1
0,0120
99,348%
0,7
18
1
0,0119
99,352%
0,8
19
1
0,01190
99,352%
0,9
19
1
0,0119
99,352%
Berdasarkan hasil tabel diatas menunjukkan bahwa hasil minimum Mean Squared Error ( MSE ) yang dapat dicapai adalah 0,0119 dengan prosentase sebesar 99,352%. Untuk 2 layer, walaupun nilai MSE semua arsitektur terbaik adalah 0,0119 dengan prosentase 99,352%. Namun yang memberikan hasil lebih baik adalah dengan learning rate 0,05 dan nilai momentum 0,8 yaitu dengan arstitektur 19.1. Hal ini dapat dilihat pada jumlah error yang lebih kecil dibanding dengan arsitektur lainnya yang memiliki nilai MSE dan prosentase yang sama. DAFTAR PUSTAKA 8
[1] Siang JJ., 2009, Jaringan Syaraf Tiruan & Pemrogramannya Menggunakan MATLAB, ANDI, Yogyakarta. [2] Kusumadewi, Sri, 2003, Membangun Jaringan Syaraf Tiruan Menggunakan MATLAB, GRAHA ILMU, Yogyakarta. [3] Muqtashidah,Ida, 2009, Jaringan Syaraf Tiruan Backpropagation dan Analisis Runtun Waktu Sebagai Metode Forecast Pada Penghitungan Laju Inflasi, Skripsi, Universitas Negeri Semarang. [4] Setiawan, Wahyu, 2008, Prediksi Harga Saham Menggunakan Jaringan Syaraf Tiruan Feedforward Network Dengan Algoritma Backpropagation, Paper, Konferensi Nasional Sistem dan Informatika 2008. [5] Subdirektorat Layanan dan Promosi Statistik, 2009, Perkembangan Beberapa Indikator Utama Sosial-Ekonomi Indonesia,Badan Pusat Statistik, Jakarta, www.bps.go.id [6] Yani, Eli, 2005, Pengantar Jaringan Syaraf Tiruan, www.ilmukomputer.com [7] Eliyani, 2007, Peramalan Harga Saham Perusahaan Menggunakan Artificial Neural Network, Paper, Seminar Nasional Aplikasi Teknologi Informasi 2007.
9