Penerapan Jaringan Saraf Tiruan Untuk Memprediksi Pergerakan Harga Minyak Mentah Dunia Menggunakan Metode Backpropagation

(1)

BAB 2

TINJAUAN PUSTAKA

2.1 Jaringan Saraf Tiruan

Jaringan saraf tiruan (JST) pertama kali diperkenankan oleh informasi yang memiliki karakteristik-karakteristik menyerupai jaringan saraf biologi [2].

Dengan meniru sistem jaringan biologis maka sistem jaringan saraf tiruan memiliki 3 karakteristik utama, yaitu [1]:

1. Arsitektur jaringan

Merupakan pola keterhubungan antara neuron. Keterhubungan neuron

-neuron inilah yang membentuk suatu jaringan. 2. Algoritma Pembelajaran

Merupakan metode untuk menentukan nilai bobot hubungan. Ada dua jenis metode utama, yaitu metode pelatihan atau pembelajaran (memorisasi) dan metode pengenalan atau aplikasi.

3. Fungsi Aktivasi

Merupakan fungsi untuk menentukan nilai keluaran (output) berdasarkan nilai total masukan (input) pada neuron. Fungsi aktivasi suatu algoritma jaringan dapat berbeda dengan fungsi aktivasi algoritma jaringan lain.

2.1.1 Arsitektur jaringan saraf tiruan

Satu sel saraf dapat dimodelkan secara matematis seperti diilustrasikan oleh Gambar 1. Satu sel saraf terdiri dari tiga bagian, yaitu fungsi penjumlah (summing function),


(2)

Synaptic weights

fungsi aktivasi (activation function) dan keluaran (output). Secara matematis, dapat digambarkan sebuah neuron dengan menuliskan pasangan persamaan sebagai berikut:

Gambar 2.1. Model Neuron[1]

y = f (∑�=1 wi * xi +�) keterangan:

xi = sinyal masukan ke-i. wi = bobot hubungan ke-i.

� = bias

f(.) = fungsi aktivasi atau elemen pemroses

y = sinyal keluaran.

Beberapa konsep yang berhubungan dengan pemrosesan informasi tersebut seperti yang disebutkan di atas, yaitu:

1. Input

Nilai numerik atau representasi suatu atribut merupakan input dari jaringan. Beberapa tipe data seperti teks, gambar dan suara dapat juga digunakan sebagai input.

2. Output

Output jaringan berisi solusi untuk permasalahan. 3. Bobot (weights)

Unsur kunci Jaringan saraf tiruan adalah bobot. Bobot menunjukkan suatu kekuatan relatif (relative strength) atau nilai matematik dari input data atau

w

2

w

i

Uk Output

Yk Summing function Activation function

w

1

f

(.)

x1 x2 xi Input Signal Threshol dθ . . . . . .

b

1


(3)

banyaknya koneksi yang memindahkan data dari satu lapisan ke lapisan yang lainnya. Bobot sangat penting karena menyimpan pola pembelajaran dari informasi.

4. Fungsi Penjumlahan

Fungsi penjumlahan merupakan perkalian setiap nilai input dengan bobotnya.

5. Fungsi Aktivasi

Fungsi aktivasi merupakan hubungan antara tingkat aktivasi internal dan

output yang bisa berupa linier atau non-linier

Arsitektur pada jaringan saraf tiruan menggambarkan jumlah neuron dan hubungan bobot yang dipakai dan fungsi aktivasi. Secara umum arsitektur jaringan saraf dapat dibedakan menjadi tiga kelas yang berbeda, yaitu jaringan umpan-maju lapisan tunggal (single layer feedforward network atau perceptron), jaringan umpan-maju lapisan jamak (multilayer perceptron) dan jaringan dengan lapisan kompetitif [6].

2.1.2 Jaringan saraf tiruan backpropagation

Terdapat banyak ide dan definisi yang berhubungan dengan “belajar”. Taksonomi proses belajar dalam jaringan saraf tiruan dibagi secara umum menjadi dua bagian [5]:

1. Supervised learning

Supervised learning adalah proses belajar yang membutuhkan guru. Yang dimaksud guru disini adalah sesuatu yang memiliki pengetahuan tentang lingkungan. Guru bisa direpresentasikan sebagai sekumpulan sampel input-ouput.

2. Unsupervised learning

Sesuai dengan namanya, unsupervised atau self-organized learning tidak membutuhkan guru untuk memantau proses belajar. Dengan kata lain, tidak ada sekumpulan input-output atau fungsi tertentu untuk dipelajari oleh jaringan.


(4)

Jaringan saraf tiruan backpropagation dikategotikan sebagai supervised learning yang melakukan pembelajaran sehinggamemberikan output yang masuk akal jika diberi masukan serupa (tidak harus sama) dengan pola yang dipakai dalam pelatihan. Sifat generalisasi ini membuat pelatihan lebih efisien karena tidak perlu dilakukan pada semua data [9].

Backpropagation dibentuk dengan membuat generalisasi aturan pelatihan dalam model widrow-hoff dengan cara menambahkan layer tersembunyi. Kata

backpropagation merujuk pada cara bagaimana gradien perubahan bobot dihitung.

Suatu jaringan saraf tiruan backpropagation memproses informasi masukan pada setiap neuron. Pada gambar 2. ditunjukkan arsitektur JST backpropagation

dengan tiga layer dimana unit masukan X, unit hidden layer Z, dan unit keluaran Y. Sedangkan v0j adalah nilai bias untuk hidden layer Z dan wok adalah nilai bias untuk keluaran Y.

Y1 Yk Ym

w01 w11 wj1 wp1 w0k w1k wjk wpk w0m w1m wjm wpm

Z1 Zj Zp

X1 Xi Xn

v01 v11 vi1 vn1 v0j v1j vij vnj v0p v1p vip vnp

1

1

Gambar 2.2. Arsitektur Jaringan Saraf Tiruan dengan Backpropagation[7] Keterangan:

X = Masukan (input)

V = Bobot lapisan tersembunyi W = Bobot lapisan keluaran


(5)

n = Jumlah unit pengolah lapisan tersembunyi Z = Lapisan tersembunyi (hidden layer) Y = Keluaran (output)

2.1.3 Fungsi Aktivasi

Sebuah sinyal aktivasi diperlukan oleh suatu neuron untuk menyalakan atau memadamkan penjalaran sinyal dari neuron tersebut. Sinyal aktivasi dalam jaringan saraf tiruan ditentukan oleh suatu fungsi aktivasi.

Fungsi aktivasi merupakan fungsi pengolah jumlahan data masukan menjadi data keluaran. Karakteristik pada fungsi aktivasi dari backpropagation adalah

continue, dapat diturunkan, dan tidak menurun secara monoton. Fungsi aktivasi untuk algoritma backpropagation adalah sebagai berikut [6]:

1. Linier atau Purelin

Fungsi linier akan membawa masukkan ke keluaran yang sebanding. Fungsi ini didefinisikan:

Ilustrasi fungsi liner digambarkan pada gambar 2.3 berikut ini:

Gambar 2.3. Fungsi Aktivasi Linier -1

1

0 x

f(x) x

x f( )=


(6)

2. Sigmoid Biner atau Logsig

Fungsi ini memiliki sifat nonlinier sehingga sangat baik diterapkan dalam penyelesaian masalah yang kompleks. Keluaran dari fungsi sigmoid biner berupa bilangan biner (0 atau 1) atau nilai yang berada di antara 0 sampai 1. Sigmoid biner memiliki range dari [0,1] dan didefinisikan :

) exp( 1 1 ) ( x x f − + =

dan fungsi turunannya adalah : f'(x)= f1(x)[1− f1(x)]

Ilustrasi fungsi sigmoid biner digambarkan pada gambar 2.4 berikut ini:

Gambar 2.4. SigmoidBiner[11]

3. Sigmoid Bipolar atau Tansig

Sigmoid Bipolar memiliki range dari (-1,1) dan didefinisikan :

1 ) exp( 1 2 ) ( − − + = x x f

dan turunan fungsi adalah :

[

1 ( )

][

1 ( )

]

2 1 ) (

' x f2 x f2 x

f = + −

x f(x)

0

-1 1


(7)

Ilustrasi fungsi sigmoid bipolar digambarkan pada gambar 2.5 berikut ini:

Gambar 2.5. Sigmoid Bipolar[12]

2.1.4 Algoritma pembelajaran metode backpropagation

Proses pelatihan backpropagation meliputi tiga tahap, yaitu tahap umpan maju (feedforward), tahap umpan mundur, dan tahap update bobot dan bias[7]. Algoritma

backpropagation diuraikan sebagai berikut:

Fase I: Propagasi Maju

Selama propagasi maju, sinyal masukan (= xi ) dipropagasikan ke layer tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari setiap unit layer

tersembunyi (= zj ) tersebut selanjutnya dipropagasikan maju lagi ke layer tersembunyi di atasnya menggunakan fungsi aktivasi yang ditentukan. Demikian seterusnya hingga menghasilkan keluaran jaringan (=yk ). Berikutnya, keluaran jaringan (= yk ) dibandingkan dengan target yang harus dicapai (= tk ). Selisih dari tk terhadap yk yaitu ( 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 dimodifikasi untuk mengurangi kesalahan yang terjadi.

-1

x f(x)


(8)

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 berhubungan langsung dengan unit keluaran.

Dengan cara yang sama, dihitung faktor δj ( j = 1,2,…, p ) di setiap unit di layer

tersembunyi sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi di layerdi bawahnya. Demikian seterusnya hingga semua 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 layer atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke layer keluaran didasarkan atas δk yang ada di unit keluaran. Ketiga fase terebut 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. Algoritma pelatihan untuk jaringan dengan satu layer tersembunyi (dengan fungsi aktivasi sigmoid biner) adalah sebagai berikut [4]:

Langkah 0 : Inisialisasi semua bobot dengan bilangan acak kecil.

Langkah 1 : Jika kondisi penghentian belum terpenuhi, lakukan langkah 2 – 9. Langkah 2 : Untuk setiap pasang data pelatihan, lakukan langkah 3 – 8.

Fase I : Propagasi maju

Langkah 3 : Tiap unit masukan menerima sinyal dan meneruskannya ke unit tersembunyi di atasnya.

Langkah 4 : Hitung semua keluaran di unit tersembunyi j z ( j = 1,2,…, p ).


(9)

Langkah 5 : Hitung semua keluaran jaringan di unit k

Fase II : Propagasi mundur

Langkah 6 : Hitung faktor δ unit keluaran berdasarkan kesalahan di setiap unit keluaran yk ( k = 1,2,…,m ). δk merupakan unit kesalahan yang akan dipakai dalam perubahan bobot layer dibawahnya (langkah 7). Hitung suku perubahan bobot wkj (yang akan dipakai nanti untuk merubah bobot wkj) dengan laju perceptron α

Δwkj=αδk zj ; k = 1,2,…,m ; j = 0,1,…, p

Langkah 7 : Hitung faktor δ unit tersembunyi berdasarkan kesalahan di setiap unit

tersembunyi zj ( j = 1,2,…, p ).

Faktor δ unit tersembunyi :

δj= δ_netj f ’(z_netj) = δ_netj zj ( 1– zj )

Hitung suku perubahan bobot Vji (yang akan dipakai nanti untuk merubah bobot Vji).

Δvji= α δj xi ; j = 1,2,…,p ; I = 0,1,…,n

Fase III : Perubahan bobot

Langkah 8 : Hitung semua perubahan bobot.

Perubahan bobot garis yang menuju ke unit keluaran :

Wkj (baru) = Wkj (lama) + ΔWkj ( k = 1,2,…,m ; j = 0,1,…,p )


(10)

Vji (baru) = Vji (lama) + Δvji ( j = 1,2…,p ; I = 0,1,…,n )

Setelah selesai dilakukan, jaringan dapat dipakai untuk pengenalan pola. Dalam hal ini, hanya propagasi maju (langkah 4 dan 5) saja yang dipakai untuk menentukan keluaran jaringan. Apabila fungsi aktivasi yang dipakai bukan sigmoid biner, maka langkah 4 dan 5 harus disesuaikan. Demikian juga turunannya pada langkah 6 dan 7.

2.1.5 Preprocessing dan postprocessing

1. Min dan Max

Sebelum dilakukan pelatihan, seringkali dilakukan penskalaan pada input dan target sedemikian hingga data input dan target tersebut masuk dalam satu range tertentu[5]. Fungsi premnmx digunakan untuk menskala input dan output sedemikian hingga data-datanya akan terletak pada range [1,1].

Systax:

[pn,minp,maxp,tn,mint,maxt] = premnmx(p,t), atau [pn,minp,maxp] = premnmx(p), atau [tn,mint,maxt] = premnmx(t)

Dengan p adalah hasil input, dan t adalah matriks output. Fungsi ini akan menghasilkan:

pn : matriks input yang ternormalisasi (terletak pada range [-1,1]) tn : matriks target yang ternormalisasi (terletak pada range [-1,1]) minp : nilai minimum pada matriks input asli(p).

maxp : nilai maksimum pada matriks input asli(p). mint : nilai minimum pada matriks target asli(p). maxt : nilai maksimum pada matriks target asli(p).

Apabila matriks yang sudah ternormalisasi ini ingin dikembalikan kebentuk aslinya, maka dapat digunakan fungsi postmnmx.

Systax:


(11)

[p] = postmnmx (pn,minp,maxp), atau [t] = postmnmx (tn,mint,maxt)

Dengan p dan t adalah matriks yang telah didenormalisasi.

Apabila pada jaringan saraf tiruan yang telah dilatih menggunakan premnmx untuk

preprocessing, maka apabila ada data input baru yang akan disimulasikan, data baru tersebut juga harus disesuaikan dengan nilai minimum dan maksimum dari jaringan. Untuk keperluan ini, dapat digunakan fungsi tramnmx.

2. Mean dan standar deviasi

Selain dengan meletakkan data input dan target pada range tertentu, proses normalisasi juga dapat dilakukan dengan bantuan mean dan standar deviasi[5]. Fungsi

prestd akan membawa data ke bentuk normal dengan mean=0 dan deviasi standar=1. Syntax:

[pn,meanp,stdp,tn,meant,stdt] = prestd(p,t), atau [pn,meanp,stdp] = prestd(p), atau [tn,meant,stdt] = prestd(t)

Dengan p adalah hasil input, dan t adalah matriks output. Fungsi ini akan menghasilkan:

pn : matriks input yang ternormalisasi (terletak pada range [-1,1]) tn : matriks target yang ternormalisasi (terletak pada range [-1,1]) meanp : mean pada matriks input asli(p).

stdp : standar deviasi pada matriks input asli(p) meant : mean pada matriks input target(t).

stdt : standar deviasi pada matriks target asli(p)

Apabila matriks yang sudah ternormalisasi ini ingin dikembalikan kebentuk aslinya, maka dapat digunakan fungsi poststd.

Systax:

[p,t] = poststd(pn,meanp,stdp,tn,meant,stdt), atau [p] = poststd (pn,meanp,stdp), atau


(12)

[t] = poststd (tn,meant,stdt)

Dengan p dan t adalah matriks yang telah didenormalisasi.

Apabila pada jaringan saraf tiruan yang telah dilatih menggunakan trastd untuk

preprocessing, maka apabila ada data input baru yang akan disimulasikan, data baru tersebut juga harus disesuaikan dengan nilai mean dan standar deviasi dari jaringan. Untuk keperluan ini, dapat digunakan fungsi trastd.

2.2 Aplikasi Backpropagation Dalam Prediksi

Prediksi adalah perkiraan tentang sesuatu yang akan terjadi pada waktu yang akan datang yang didasarkan pada data waktu sekarang dan waktu lampau (historical data)[4].

Prediksi merupakan suatu proses untuk memperkirakan kejadian ataupun perubahan di masa yang akan datang[11]. Dalam suatu proses kegiatan, proses prediksi ini merupakan awal dari rangkaian kegiatan, dan sebagai titik tolak kegiatan berikutnya. Permodelan time series sering sekali dikaitkan dengan proses prediksi (forecasting) suatu nilai karakteristik tertentu pada periode kedepan, melakukan pengendalian suatu proses ataupun untuk mengenali pola perilaku sistem[15].

Dengan mendeteksi pola dan kecendrungan data time series, kemudian memformulasikannya dalam suatu model, maka dapat digunakan untuk memprediksi data yang akan datang. Model dengan akurasi yang tinggi akan menyebabkan nilai prediksi cukup valid untuk digunakan sebagai pendukung dalam proses pengambilan keputusan.

Salah satu metode prediksi yang berkembang saat ini adalah menggunakan jaringan saraf tiruan (artificial neural network), dimana jaringan saraf tiruan telah menjadi penelitian yang menarik dan banyak digunakan untuk menyelesaikan masalah pada beberapa bidang kehidupan. Salah satu diantaranya adalah untuk analisis data


(13)

Salah satu jaringan pada JST yang dapat diaplikasikan dengan baik dalam bidang prediksi (forecasting) adalah backpropagation. Prediksi yang sering kita dengar adalah prediksi jumlah penjualan, nilai tukar, valuta asing, prediksi besarnya aliran air sungai, dll[4].

Secara umum, masalah prediksi dapat dinyatakan sebagai berikut: Diketahui sejumlah data runtun waktu (time series) x1, x2, …, xn. Masalahnya adalah memperkirakan berapa harga xn+1 berdasarkan x1, x2, …, xn.

Dengan backpropagation, record data dipakai sebagai data pelatihan untuk mencari bobot yang optimal. Untuk itu kita perlu menetapkan besarnya periode dimana data berfluktuasi secara teratur. Besarnya periode ini kita tentukan secara intuitif. Misalnya: perminggu, perbulan, perempat bulan atau pertahun.

Bagian tersulit dari memprediksi sesuatu menggunakan jaringan saraf tiruan

backpopagation adalah menentukan jumlah layer (dan unitnya). Tidak ada teori yang dengan pasti yang dapat dipakai. Tapi secara praktis dicoba jaringan yang kecil terlebih dahulu (misalnya terdiri dari satu layer tersembunyi dengan beberapa unit saja). Jika gagal (kesalahan tidak turun dalam epoch yang besar), maka jaringan diperbesar dengan menambahkan unit tersembunyi atau bahkan menambah layer

tersembunyi.

2.3 Prediksi Harga Minyak Mentah Dunia

Energi adalah mesin pertumbuhan ekonomi yang utama dan minyak bumi adalah primadonanya karena kemudahan dan fleksibilitas penggunaannya paling tinggi dibandingkan energi lainnya. Minyak bumi telah berperan besar dalam memajukan negara-negara industri yang mengkonsumsinya dalam jumlah besar dan harga murah sedangkan dewasa ini negara-negara ekonomi baru yang sedang tumbuh juga sangat memerlukan namun pada situasi pasokan yang sudah sedikit dan pada harga yang jauh lebih tinggi[12].


(14)

Kecukupan pasokan dan harga minyak yang stabil sangat diperlukan dalam mendorong pertumbuhan ekonomi maupun kegiatan usaha. Karena itu harga yang dapat diprediksi dengan baik akan sangat bermanfaat bagi banyak pihak, baik pemerintah, badan usaha maupun investor agar semua kegiatan dapat direalisasikan sesuai rencana[14].

Sebaliknya, harga minyak yang naik-turun saat ini, sering membuat cemas para pelaku ekonomi bahkan dapat mengancam stabilitas pertumbuhan perekonomian jika tidak di-manage dengan baik. Pada kenyataannya pergerakan harga minyak dalam runut waktu tertentu dapat digolongkan data time series yang umumnya dapat dipahami dengan melihat pola kejadian di masa lalu dan saat ini.

Pada pengamatan data time series harga minyak, terdapat beberapa reverensi yang dapat diambil, yaitu harga dari pasar minyak mentah dunia. Dari beberapa pasar minyak mentah yang terbesar antara lain: WTI (West Texas Intermediate), NYMEX (New York Mercantile Exchange), Brent North Sea, Tapis, Minas[10].

2.4 Tinjauan Penelitian yang Relevan

Berikut ini penelitian tentang jaringan saraf tiruan backpropagation, khususnya penggunaan dalam hal prediksi:

1. Penelitian oleh Dini Otaviani ini membahas tentang penggunaan jaringan saraf tiruan backpropagation untuk memprediksi kurs mata valuta asing. Hasil dari penelitian ini, jaringan saraf tiruan backpropagation dapat memprediksi nilai kurs valuta asing dengan faktor penentu keberhasilan pelatihan antara lain: jumlah layer, jumlah neuron dan parameter pelatihan. Pelatihan perbulan menghasilkan pencapaian yang baik, namun pada pelatihan periode lain seperti harian atau mingguan kurang baik karena data pelatihan yang kurang banyak [14].


(15)

2. Penelitian oleh Edy Suprianto ini mengimplementasikan algoritma

Backpropagation untuk memprediksi harga saham. Dalam penelitian ini dilakukan beberapa prediksi dalam bentuk harian, dengan empat variabel input

yaitu nilai tertinggi, terendah, penutupan dan volume. Dari hasil penelitian algoritma backpropagation bisa digunakan karena sifatnya yang adaptif karena jaringan berusaha mencapai kestabilan kembali untuk mencapai output yang diharapkan [8].


(1)

Vji (baru) = Vji (lama) + Δvji ( j = 1,2…,p ; I = 0,1,…,n )

Setelah selesai dilakukan, jaringan dapat dipakai untuk pengenalan pola. Dalam hal ini, hanya propagasi maju (langkah 4 dan 5) saja yang dipakai untuk menentukan keluaran jaringan. Apabila fungsi aktivasi yang dipakai bukan sigmoid biner, maka langkah 4 dan 5 harus disesuaikan. Demikian juga turunannya pada langkah 6 dan 7.

2.1.5 Preprocessing dan postprocessing

1. Min dan Max

Sebelum dilakukan pelatihan, seringkali dilakukan penskalaan pada input dan target sedemikian hingga data input dan target tersebut masuk dalam satu range tertentu[5]. Fungsi premnmx digunakan untuk menskala input dan output sedemikian hingga data-datanya akan terletak pada range [1,1].

Systax:

[pn,minp,maxp,tn,mint,maxt] = premnmx(p,t), atau [pn,minp,maxp] = premnmx(p), atau [tn,mint,maxt] = premnmx(t)

Dengan p adalah hasil input, dan t adalah matriks output. Fungsi ini akan menghasilkan:

pn : matriks input yang ternormalisasi (terletak pada range [-1,1]) tn : matriks target yang ternormalisasi (terletak pada range [-1,1]) minp : nilai minimum pada matriks input asli(p).

maxp : nilai maksimum pada matriks input asli(p). mint : nilai minimum pada matriks target asli(p). maxt : nilai maksimum pada matriks target asli(p).

Apabila matriks yang sudah ternormalisasi ini ingin dikembalikan kebentuk aslinya, maka dapat digunakan fungsi postmnmx.

Systax:


(2)

[p] = postmnmx (pn,minp,maxp), atau [t] = postmnmx (tn,mint,maxt)

Dengan p dan t adalah matriks yang telah didenormalisasi.

Apabila pada jaringan saraf tiruan yang telah dilatih menggunakan premnmx untuk

preprocessing, maka apabila ada data input baru yang akan disimulasikan, data baru

tersebut juga harus disesuaikan dengan nilai minimum dan maksimum dari jaringan. Untuk keperluan ini, dapat digunakan fungsi tramnmx.

2. Mean dan standar deviasi

Selain dengan meletakkan data input dan target pada range tertentu, proses normalisasi juga dapat dilakukan dengan bantuan mean dan standar deviasi[5]. Fungsi

prestd akan membawa data ke bentuk normal dengan mean=0 dan deviasi standar=1.

Syntax:

[pn,meanp,stdp,tn,meant,stdt] = prestd(p,t), atau [pn,meanp,stdp] = prestd(p), atau [tn,meant,stdt] = prestd(t)

Dengan p adalah hasil input, dan t adalah matriks output. Fungsi ini akan menghasilkan:

pn : matriks input yang ternormalisasi (terletak pada range [-1,1]) tn : matriks target yang ternormalisasi (terletak pada range [-1,1]) meanp : mean pada matriks input asli(p).

stdp : standar deviasi pada matriks input asli(p) meant : mean pada matriks input target(t).

stdt : standar deviasi pada matriks target asli(p)

Apabila matriks yang sudah ternormalisasi ini ingin dikembalikan kebentuk aslinya, maka dapat digunakan fungsi poststd.

Systax:

[p,t] = poststd(pn,meanp,stdp,tn,meant,stdt), atau [p] = poststd (pn,meanp,stdp), atau


(3)

[t] = poststd (tn,meant,stdt)

Dengan p dan t adalah matriks yang telah didenormalisasi.

Apabila pada jaringan saraf tiruan yang telah dilatih menggunakan trastd untuk

preprocessing, maka apabila ada data input baru yang akan disimulasikan, data baru

tersebut juga harus disesuaikan dengan nilai mean dan standar deviasi dari jaringan. Untuk keperluan ini, dapat digunakan fungsi trastd.

2.2 Aplikasi Backpropagation Dalam Prediksi

Prediksi adalah perkiraan tentang sesuatu yang akan terjadi pada waktu yang akan datang yang didasarkan pada data waktu sekarang dan waktu lampau (historical data)[4].

Prediksi merupakan suatu proses untuk memperkirakan kejadian ataupun perubahan di masa yang akan datang[11]. Dalam suatu proses kegiatan, proses prediksi ini merupakan awal dari rangkaian kegiatan, dan sebagai titik tolak kegiatan berikutnya. Permodelan time series sering sekali dikaitkan dengan proses prediksi

(forecasting) suatu nilai karakteristik tertentu pada periode kedepan, melakukan

pengendalian suatu proses ataupun untuk mengenali pola perilaku sistem[15].

Dengan mendeteksi pola dan kecendrungan data time series, kemudian memformulasikannya dalam suatu model, maka dapat digunakan untuk memprediksi data yang akan datang. Model dengan akurasi yang tinggi akan menyebabkan nilai prediksi cukup valid untuk digunakan sebagai pendukung dalam proses pengambilan keputusan.

Salah satu metode prediksi yang berkembang saat ini adalah menggunakan jaringan saraf tiruan (artificial neural network), dimana jaringan saraf tiruan telah menjadi penelitian yang menarik dan banyak digunakan untuk menyelesaikan masalah pada beberapa bidang kehidupan. Salah satu diantaranya adalah untuk analisis data


(4)

Salah satu jaringan pada JST yang dapat diaplikasikan dengan baik dalam bidang prediksi (forecasting) adalah backpropagation. Prediksi yang sering kita dengar adalah prediksi jumlah penjualan, nilai tukar, valuta asing, prediksi besarnya aliran air sungai, dll[4].

Secara umum, masalah prediksi dapat dinyatakan sebagai berikut: Diketahui sejumlah data runtun waktu (time series) x1, x2, …, xn. Masalahnya adalah memperkirakan berapa harga xn+1 berdasarkan x1, x2, …, xn.

Dengan backpropagation, record data dipakai sebagai data pelatihan untuk mencari bobot yang optimal. Untuk itu kita perlu menetapkan besarnya periode dimana data berfluktuasi secara teratur. Besarnya periode ini kita tentukan secara intuitif. Misalnya: perminggu, perbulan, perempat bulan atau pertahun.

Bagian tersulit dari memprediksi sesuatu menggunakan jaringan saraf tiruan

backpopagation adalah menentukan jumlah layer (dan unitnya). Tidak ada teori yang

dengan pasti yang dapat dipakai. Tapi secara praktis dicoba jaringan yang kecil terlebih dahulu (misalnya terdiri dari satu layer tersembunyi dengan beberapa unit saja). Jika gagal (kesalahan tidak turun dalam epoch yang besar), maka jaringan diperbesar dengan menambahkan unit tersembunyi atau bahkan menambah layer

tersembunyi.

2.3 Prediksi Harga Minyak Mentah Dunia

Energi adalah mesin pertumbuhan ekonomi yang utama dan minyak bumi adalah primadonanya karena kemudahan dan fleksibilitas penggunaannya paling tinggi dibandingkan energi lainnya. Minyak bumi telah berperan besar dalam memajukan negara-negara industri yang mengkonsumsinya dalam jumlah besar dan harga murah sedangkan dewasa ini negara-negara ekonomi baru yang sedang tumbuh juga sangat memerlukan namun pada situasi pasokan yang sudah sedikit dan pada harga yang jauh lebih tinggi[12].


(5)

Kecukupan pasokan dan harga minyak yang stabil sangat diperlukan dalam mendorong pertumbuhan ekonomi maupun kegiatan usaha. Karena itu harga yang dapat diprediksi dengan baik akan sangat bermanfaat bagi banyak pihak, baik pemerintah, badan usaha maupun investor agar semua kegiatan dapat direalisasikan sesuai rencana[14].

Sebaliknya, harga minyak yang naik-turun saat ini, sering membuat cemas para pelaku ekonomi bahkan dapat mengancam stabilitas pertumbuhan perekonomian jika tidak di-manage dengan baik. Pada kenyataannya pergerakan harga minyak dalam runut waktu tertentu dapat digolongkan data time series yang umumnya dapat dipahami dengan melihat pola kejadian di masa lalu dan saat ini.

Pada pengamatan data time series harga minyak, terdapat beberapa reverensi yang dapat diambil, yaitu harga dari pasar minyak mentah dunia. Dari beberapa pasar minyak mentah yang terbesar antara lain: WTI (West Texas Intermediate), NYMEX (New York Mercantile Exchange), Brent North Sea, Tapis, Minas[10].

2.4 Tinjauan Penelitian yang Relevan

Berikut ini penelitian tentang jaringan saraf tiruan backpropagation, khususnya penggunaan dalam hal prediksi:

1. Penelitian oleh Dini Otaviani ini membahas tentang penggunaan jaringan saraf tiruan backpropagation untuk memprediksi kurs mata valuta asing. Hasil dari penelitian ini, jaringan saraf tiruan backpropagation dapat memprediksi nilai kurs valuta asing dengan faktor penentu keberhasilan pelatihan antara lain: jumlah layer, jumlah neuron dan parameter pelatihan. Pelatihan perbulan menghasilkan pencapaian yang baik, namun pada pelatihan periode lain seperti harian atau mingguan kurang baik karena data pelatihan yang kurang banyak [14].


(6)

2. Penelitian oleh Edy Suprianto ini mengimplementasikan algoritma

Backpropagation untuk memprediksi harga saham. Dalam penelitian ini

dilakukan beberapa prediksi dalam bentuk harian, dengan empat variabel input

yaitu nilai tertinggi, terendah, penutupan dan volume. Dari hasil penelitian algoritma backpropagation bisa digunakan karena sifatnya yang adaptif karena jaringan berusaha mencapai kestabilan kembali untuk mencapai output yang diharapkan [8].