ANALISIS METODE BACKPROPAGATION UNTUK
MEMPREDIKSI INDEKS HARGA SAHAM PADA
KELOMPOK INDEKS BISNIS-27
NUR’AFIFAH
106094003169
PROGRAM STUDI MATEMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
i
ANALISIS METODE BACKPROPAGATION UNTUK MEMPREDIKSI INDEKS HARGA SAHAM PADA KELOMPOK INDEKS BISNIS-27
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh
Gelar Sarjana Sains
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh: Nur’Afifah
106094003169
PROGRAM STUDI MATEMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
iii
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI
BENAR-BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN
SEBAGAI SKRIPSI PADA PERGURUAN TINGGI ATAU LEMBAGA
MANAPUN.
Jakarta, Desember 2011
iv
PERSEMBAHAN
Alhamdulillahirobbil’alamiin, segala puji bagi
Allah SWT, tuhan semesta alam ini dan juga
Nabi kita Muhammad SAW.
Sebuah persembahan yang ku berikan kepada
Yayah dan Mamahku tercinta, Adik-adikku
tersayang yang selalu memotivasi baik moril
maupun materil....
Sahabat-sahabat terhebat yang selalu mendampingi
dan berjuang bersama dalam semangat persahabatan
dan persaudaraan....
MOTTO
Harus berusaha untuk menjadi yang terbaik karena tuhan menolong
orang yang berusaha dan menolong diri mereka sendiri.
Manfaatkan waktu sebaik mungkin karena
Kita adalah waktu
Yang setiap detiknya adalah kehilangan
Kecuali yang menanam biji kebajikan
v ABSTRAK
Jaringan Syaraf Tiruan (JST) merupakan metode komputasi yang didasarkan pada model matematika yang memiliki struktur seperti syaraf dan operasi yang menyerupai otak, JST dapat diterapkan untuk berbagai macam aplikasi terutama untuk peramalan. Backpropagation merupakan algoritma pada JST yang cocok dijadikan untuk peramalan, terutama peramalan harga saham dari suatu indeks. Data saham yang digunakan merupakan data yang kontinyu atau terus menerus dengan periode harian.
Algoritma backpropagation dibentuk dengan membuat generalisasi aturan pelatihan dengan cara menambahkan layar tersembunyi. Selain itu backpropagation akan merubah bobot untuk mengurangi perbedaan antara output jaringan dan target output. Sehingga pada jaringan yang dilatih 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 dengan pola yang dipakai selama pelatihan dan mencapai error yang dituju.
vi ABSTRACT
Artificial Neural Network (ANN) is computation method caused in mathematics model which have structures as neural and operations as same as brain, ANN can use for many applications especially for forecasting. Backpropagation is algorithm on ANN which becomes for forecasting, especially forecast cost of share from a index. Data of share in used is continue with period of the day.
Algorithm backpropagation in makes with generalization of training method with augment hidden layer. Beside that backpropagation will change weight for different decrease between output of network and purpose of output. So that, in the network which traine acquire balance between ability of network for know pattern in used towards same input pattern with pattern in used for duration of training and arrive squared error.
vii
KATA PENGANTAR
Segala puji bagi Allah SWT, Yang Maha Mulia, Sumber Cahaya Ilmu,
yang senantiasa melimpahkan rahmat kepada hamba-Nya. Berkat anugrah dan
ridho-Nya, penulis dapat menyelesaikan skripsi “Analisis Metode Backpropagation Untuk Memprediksi Indeks Harga Saham Pada Kelompok
Indeks Bisnis-27”. Shalawat dan salam teruntuk Baginda Nabi Muhammad saw,
panutan paling hak di bumi ini, beserta keluarga dan para sahabatnya.
Skripsi ini dimaksudkan untuk memenuhi salah satu syarat menempuh ujian
Sarjana Sains pada Program Studi Matematika, Fakultas Sains dan Teknologi,
Universitas Islam Negeri Syarif Hidayatullah Jakarta.
Pada penulisan skripsi ini, penulis mendapat bimbingan dan bantuan dari
berbagai pihak, sehingga pada kesempatan ini penulis mengucapkan terima kasih
kepada:
1. Dr. Syopiansyah Jaya Putra, M. Sis, Dekan Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah.
2. Yanne Irene, M.Si. Ketua Program Studi Matematika dan Suma’inna, M.Si, Sekretaris Program Studi Matematika.
3. Hata Maulana, S.Si, M.T.I selaku Pembimbing I yang selalu memberikan
bimbingan, arahan, informasi, dan motivasi terbaik.
viii
5. Seluruh Dosen Program Studi Matematika, terima kasih atas pengajaran dan
ilmu bermanfaat yang telah diberikan kepada penulis.
6. Kedua Orang tua, Yayah dan Mamah tercinta, yang sudah mendampingi dan
memberikan dukungan moral dan materil, kedua adik penulis, Tanzil dan
Nadllah, serta calon imam keluarga baruku Ahmad Fitroh Rizqi yang selalu
mensupport penyelesaian skripsi ini.
7. Untuk Ela, Jemy dan Tya, terima kasih atas bantuannya dalam penyusunan
skripsi ini, semoga Allah SWT membalas kebaikan kalian.
8. Teman seperjuangan dalam menyelesaikan skripsi, Yayan dan Indra. Serta
teman-teman Matematika 2006 terima kasih atas dukungannya selama ini.
9. Keluarga besar Matematika FST, terima kasih atas kerja samanya.
Pada akhirnya penulis berharap skripsi ini dapat bermanfaat bagi pembaca
pada umumnya. Penulis menyadari masih banyak kekurangan dalam penulisan
skripsi ini, sehingga penulis mengharapkan saran dan kritik yang konstruktif.
Jakarta, Desember 2011
ix
DAFTAR ISI
HALAMAN JUDUL ... i
PENGESAHAN UJIAN ... ii
PERNYATAAN ... iii
PERSEMBAHAN DAN MOTO... iv
ABSTRAK ... v
ABSTRACT ... vi
KATA PENGANTAR ... vii
DAFTAR ISI ... ix
DAFTAR TABEL ... xi
DAFTAR GAMBAR ... xii
DAFTAR LAMPIRAN ... xiii
BAB I PENDAHULUAN ... 1
1.1Latar Belakang ... 1
1.2Permasalahan... 3
1.3Pembatasan Masalah ... 4
1.4Tujuan Penelitian ... 4
1.5Manfaat Penelitian ... 4
BAB II LANDASAN TEORI ... 6
2.1. Indeks harga Saham ... 6
2.2. Indeks Bisnis-27 ... 7
2.3. Pengertian Jaringan Syaraf Tiruan ... 8
x
2.5. Metode Backpropagation ... 12
2.5.1. Fungsi Aktivasi pada Backpropagation... 13
2.5.2. Pelatihan Standar Backpropagation... 15
2.6. Algoritma Pelatihan ... 21
BAB III METODE PENELITIAN ... 24
3.1. Waktu dan Tempat Penelitian ... 24
3.2. Metode Pengumpulan Data ... 24
3.3. Metode Pengolahan Data ... 25
3.4. Alur Penelitian ... 28
BAB IV HASIL DAN PEMBAHASAN ... 32
4.1. Membentuk Jaringan ... 32
4.2. Penskalaan atau Normalisasi ... 34
4.3. Inisialisasi Jaringan ... . 35
4.4. Inisialisasi Bobot ... 36
4.5. Proses Pelatihan Backpropagation... 37
4.6. Analisis Hasil Peramalan... 39
4.6.1. Analisis Data Pelatihan... 41
4.6.2. Analisis Data Pengujian... 42
4.7. Nilai Kinerja... 46
BAB V KESIMPULAN DAN SARAN ... 47
5.1Kesimpulan... 47
5.2Saran ... 48
xi
DAFTAR TABEL
Table 3.1 Indeks Harga Saham Bisnis-27 (Januari 2009) ... 25
Tabel 4.1 Harga saham Indeks Bisnis-27 Januari 2009 – Desember 2010... 32
Table 4.2 Data Peramalan ... 34
Table 4.3 Ringkasan Statistik data Peramalan Saham Bisnis-27 ... 34
Tabel 4.4 Nilai masukan yang diskalakan... 35
Tabel 4.5 Nilai Keluaran Jaringan ... 38
Tabel 4.6 Tabel Bobot Akhir Lapisan Input ke lapisan tersembunyi Pertama... 39
Tabel 4.7 Hasil Peramalan Data Pelatihan Indeks Bisnis-27... 41
xii
DAFTAR GAMBAR
Gambar 2.1 Jaringan Syaraf Tiruan ... 10
Gambar 2.2 Jaringan Syaraf Sederhana Lapisan Tunggal ... 11
Gambar 2.3 Jaringan Syaraf Sederhana Lapisan Banyak ... 12
Gambar 2.4 Jaringan dengan Lapisan Kompetitif Reccurent ... 12
Gambar 2.5 Arsitektur Algoritma Backpropagation ... 13
Gambar 2.6 Fungsi Sigmoid Biner... 14
Gambar 2.7 Fungsi Sigmoid Bipolar... 15
Gambar 2.8 Flowchart Backpropagation... 20
Gambar 3.1 Diagram Pengolahan Data ... 28
Gambar 4.1 Perubahan Indeks Harian Indeks Bisnis-27... 33
Gambar 4.2 Arsitektur Jaringan Penelitian ... 36
Gambar 4.3 Grafik Hasil Data Pelatihan ... 41
Gambar 4.4 Grafik Hasil Data Pengujian ... 44
Gambar 4.4 Grafik Hasil Peramalan Saham Indeks Bisnis-27 ... 45
xiii
DAFTAR LAMPIRAN
Lampiran 1 Tabel Saham Kelompok Indeks Bisnis-27
Lampiran 2 Tabel Data Penutupan Harga Saham Indeks Bisnis-27 Periode
Januari 2009 sampai dengan Desember 2010
Lampiran 3 Tabel Data Pelatihan
Lampiran 4 Tabel Data Pengujian
Lampiran 5 Tabel Inisialisasi Bobot dan Bias Awal
Lampiran 6 Tabel Inisialisasi Bobot dan Bias Akhir
Lampiran 7 Program Peramalan Indeks Saham Menggunakan Metode
1
BAB I
PENDAHULUAN
1.1Latar Belakang
Bursa Efek Indonesia (BEI) terus berkembang seiring bertambahnya
waktu, dan keadaanpun semakin menunjukkan bahwa saham yang merupakan
bagian dari BEI semakin banyak peminatnya. Dilihat dari kapitalisasinya yang
terus bertambah dari tahun-tahun sebelumnya. Saat ini pembelian saham menjadi
salah satu pilihan modal untuk investasi.
Orang-orang cenderung berinvestasi pada saham disebabkan keuntungan
yang akan diterimanya. Pasar saham dipengaruhi oleh faktor-faktor ekonomi,
politik bahkan psikologis. Faktor-faktor ini berinteraksi satu sama lain dengan
cara yang sangat kompleks. Dengan demikian pada umumnya sangat sulit untuk
memprediksi pergerakan pasar saham. Sehingga dibutuhkan suatu metode atau
suatu cara untuk memprediksi pergerakan pasar saham tersebut.
Peramalan pasar saham telah menjadi topik penelitian yang hangat untuk
beberapa tahun belakangan ini. Secara umum pendekatan yang biasa digunakan
para investor untuk memprediksi harga saham yaitu analisis fundamental dan
analisis teknikal. Analisis fundamental adalah dengan menghitung nilai intrinsik
saham berdasarkan ratio dan laporan keuangan perusahaan.
Pada analisis teknikal adalah menggunakan data saham sebelumnya dan
mengumpulkan informasi untuk memprediksi pergerakan harga saham di masa
2
yang timbul pada pasar saham yang dapat diprediksi. Pola-pola tersebut adalah
seperti indikator-indikator teknikal. Beberapa indikator tersebut diturunkan dari
data-data deret waktu indeks saham. Pada kebanyakan kasus terdapat lima deret
waktu untuk indeks saham. Kelima deret tersebut adalah harga pembukaan, harga
tertinggi, harga terendah, stok indeks dan volume transaksi.
Untuk memaksimalkan keuntungan dari pasar saham, semakin banyak
teknik-teknik peramalan yang digunakan oleh para investor. Pada saat ini, para
investor tidak lagi bergantung pada satu teknik saja untuk mendapatkan informasi
mengenai masa depan pasar saham. Teknik-teknik tersebut diantaranya adalah
dengan Arch, Garch, Jaringan Syaraf Tiruan, Algoritma Genetika, dan lain-lain.
Pada penelitian sebelumnya yaitu, Aprilian Eko dari Universitas Indonesia
(2001) tentang aplikasi neural network untuk memprediksi indeks saham,
menjelaskan teori-teori utama pemikiran seperti Random Walk Hypothesis dan
Efficien Market Hypothesis. Random Walk Hypothesis menyatakan bahwa
harga-harga di pasar saham bergerak dengan cara yang random dan tak terprediksi.
Masing-masing harga berubah tanpa dipengaruhi oleh harga-harga sebelumnya.
Efficien Market Hypothesis menyatakan bahwa pergerakan pada pasar saham
tergantung pada informasi-informasi, dan harga-harga disesuaikan seketika sejak
saat informasi tersebut diperoleh.
Yasin Fahmi dari Univesitas Islam Indonesia (2011) dengan judul
peramalan nilai harga saham menggunakan jaringan syaraf tiruan dan algoritma
3
selalu satu. Penelitian lainnya yaitu, Choirun Nisa (2009) tentang Algoritma
backpropagation pada jaringan syaraf buatan lapisan banyak, menyatakan bahwa
algoritma backpropagation dalam menentukan bobot yang tepat pada
permasalahan klasifikasi dengan cara membuat struktur jaringan terlebih dahulu.
Perbedaan penelitian ini dengan penelitian sebelumnya yaitu terdapat dua lapisan
tersembunyi yang menghubungkan antara lapisan input dan lapisan output. Data
saham yang digunakan pada penelitian ini yaitu data Indeks Bisnis-27.
Pada jaringan syaraf tiruan, salah satu algoritma yang digunakan dalam
memprediksi saham dan diuji dalam penelitian ini adalah algoritma
Backpropagation atau disebut Supervised Multilayer Perceptron. Berdasarkan
latar belakang yang dijabarkan di atas, maka skripsi ini mengambil judul “
Analisis Metode Backpropagation Untuk Memprediksi Indeks Harga Saham
Pada Kelompok Indeks Bisnis-27”.
1.2Permasalahan
Permasalahan yang dibahas dalam skripsi ini adalah bagaimana
mengetahui pola-pola pada indikator teknikal yang mempengaruhi penurunan atau
kenaikan indeks saham, dengan melihat data-data saham sebelumnya. Sehingga
dapat diprediksi pergerakan harga saham di masa yang akan datang. Dalam
penelitian ini khususnya adalah pergerakan indeks saham bisnis 27 di masa yang
akan datang. Selain itu juga untuk mengetahui bagaimana langkah-langkah
peramalan menggunakan jaringan syaraf tiruan terutama dengan menggunakan
4
1.3Pembatasan masalah
Dalam penelitian ini, masalah dibatasi terhadap pemilihan indeks harga
saham Indeks Bisnis-27, data indeks saham yang digunakan merupakan data
harian dari Bulan Januari 2009 – Bulan Desember 2010. Selain itu faktor yang digunakan untuk peramalan pada skripsi ini hanya faktor data masa lalu, bukan
disebabkan faktor lain seperti politik, ekonomi, dan lain-lain. Pembatasan untuk
Backpropagation Jaringan Syaraf Tiruan yaitu, dalam memperbaharui bobotnya
dan jumlah lapisan tersembunyi menggunakan dua lapisan. Variasi
backpropagation pada scilab yang dipakai yaitu adaptive learning.
1.4Tujuan Penelitian
Tujuan dari skripsi ini adalah:
1. Untuk menganalisis metode backpropagation dalam memprediksi harga
saham.
2. Mendapatkan Mean Squared Error (MSE) atau nilai error tujuan pada
peramalan.
1.5Manfaat Penelitian
Adapun manfaat dari penelitian ini adalah sebagai berikut:
1. Bagi pengembangan ilmu pengetahuan, diharapkan penelitian ini dapat
menambah dinamika keilmuan dalam teknik peramalan saham terutama
5
2. Bagi pihak-pihak yang ingin melakukan kajian lebih dalam mengenai teknik
peramalan, diharapkan penelitian ini dapat menjadi referensi dan landasan
bagi penelitian selanjutnya.
3. Bagi para investor saham, diharapkan penelitian ini dapat menjadi bahan
pertimbangan untuk melakukan prediksi saham di pasar modal berdasarkan
6
BAB II
LANDASAN TEORI
2.1Indeks Harga Saham
Saham adalah satuan nilai atau pembukuan dalam berbagai instrumen
finansial yang mengacu pada bagian kepemilikan sebuah perusahaan [1]. Bentuk
fisik saham adalah selembar kertas, pada saham tersebut dinyatakan bahwa
pemegang saham adalah pemilik perusahaan. Menerbitkan saham merupakan
salah satu pilihan perusahaan ketika memutuskan untuk pendanaan perusahaan.
Saham dapat didefinisikan juga sebagai tanda penyertaan modal seseorang atau
pihak (badan usaha) dalam suatu perusahaan atau perseroan terbatas.
Indeks harga saham adalah indikator atau cerminan pergerakan harga
saham. Indeks merupakan salah satu pedoman bagi investor untuk melakukan
investasi di pasar modal khususnya saham. Indeks dapat memberikan investor
gagasan secara cepat tentang bagaimana kinerja sebuah bursa selama waktu
tertentu. Dengan melihat indeks, maka investor dapat memperkirakan dengan
cepat bagaimana kinerja portofolio sahamnya [2].
Saat ini Bursa Efek Indonesia memiliki 11 jenis indeks harga saham, yang
secara terus menerus disebarluaskan melalui media cetak maupun elektronik.
Indeks-indeks tersebut adalah Indeks Harga Saham Gabungan (IHSG), Indeks
Sektoral, Indeks LQ45, Jakarta Islamic Indeks (JII), Indeks Kompas100, Indeks
BISNIS-27, Indeks PEFINDO25, Indeks SRI-KEHATI, Indeks Papan Utama,
7
2.2Indeks BISNIS-27
Pada tanggal 27 Januari 2009, PT Bursa Efek Indonesia bersama dengan
Harian Bisnis Indonesia meluncurkan indeks harga saham yang diberi nama
Indeks Bisnis-27 yang diharapkan dapat menjadi salah satu indikator bagi investor
dalam berinvestasi di Pasar Modal Indonesia [3].
Indeks Bisnis-27 terdiri dari 27 saham yang dipilih berdasarkan kriteria
fundamental dan dan teknikal atau likuiditas, sebagai berikut:
1. Kriteria Fundamental
Beberapa faktor fundamental yang dipertimbangkan dalam pemilihan
saham adalah laba usaha, laba bersih, ROA, ROE, dan DER. Khusus untuk
emiten perbankan akan dipertimbangkan juga faktor LDR dan CAR.
2. Kriteria Teknikal atau Likuiditas Transaksi
Analisis Teknikal merupakan metode untuk memprediksi pergerakan
harga saham dan trend pasar di waktu mendatang dengan memakai kajian
grafik berdasarkan data masa lalu. Dari grafik dapat diperoleh informasi
mengenai pola pergerakan harga saham. Tujuan utama dari analisis ini
adalah untuk mendapatkan capital gain (keuntungan) dari selisih harga
beli dan harga jual saham dalam jangka waktu yang relatif pendek.
Beberapa faktor teknikal yang dipertimbangkan adalah hari transaksi,
nilai,volume dan frekuensi transaksi serta kapitalisasi pasar. Dalam pemilihan
8
Indeks Bisnis-27 yang terdiri dari para ahli dan profesional di pasar modal. Hal ini
untuk menjamin kewajaran dalam pemilihan saham tersebut.
Bursa Efek Indonesia dan Harian Bisnis Indonesia secara rutin akan
memantau komponen saham yang masuk dalam perhitungan indeks. Review dan
pergantian emiten yang masuk dalam perhitungan indeks bisnis-27 dilakukan
setiap 6 bulan yaitu setiap awal Februari dan Agustus.
2.3Pengertian Jaringan Syaraf Tiruan
Suatu jaringan saraf tiruan memproses sejumlah besar informasi secara
paralel dan terdistribusi, hal ini terinspirasi oleh model kerja otak biologis.
Beberapa definisi tentang jaringan saraf tiruan adalah sebagai berikut di bawah
ini.
Hecht-Nielsend (1988) mendefinisikan jaringan saraf tiruan adalah suatu
struktur pemroses informasi yang terdistribusi dan bekerja secara paralel, yang
terdiri atas elemen pemroses (yang memiliki memori lokal dan beroperasi dengan
informasi lokal) yang diinterkoneksi bersama dengan alur sinyal searah yang
disebut koneksi. Setiap elemen pemroses memiliki koneksi keluaran tunggal yang
bercabang ke sejumlah koneksi kolateral yang diinginkan (setiap koneksi
membawa sinyal yang sama dari keluaran elemen pemroses tersebut). Keluaran
dari elemen pemroses tersebut dapat merupakan sebarang jenis persamaan
matematis yang diinginkan [4].
Menurut Haykin, S. (1994), Neural Networks: A Comprehensive
9
saraf adalah sebuah prosesor yang terdistribusi paralel dan mempuyai
kecenderungan untuk menyimpan pengetahuan yang didapatkannya dari
pengalaman dan membuatnya tetap tersedia untuk digunakan. Hal ini menyerupai
kerja otak dalam dua hal yaitu: 1. Pengetahuan diperoleh oleh jaringan melalui
suatu proses belajar. 2. Kekuatan hubungan antar sel saraf yang dikenal dengan
bobot sinapsis digunakan untuk menyimpan pengetahuan.
Maka secara umum jaringan saraf tiruan (JST) (Artificial Neural Network
(ANN) adalah jaringan dari sekelompok unit pemroses kecil yang dimodelkan
berdasarkan jaringan saraf manusia. JST merupakan sistem adaptif yang dapat
merubah strukturnya untuk memecahkan masalah berdasarkan informasi eksternal
maupun internal yang mengalir melalui jaringan tersebut. Secara sederhana, JST
adalah sebuah alat pemodelan data statistik non-linier. JST dapat digunakan untuk
memodelkan hubungan yang kompleks antara masukan dan keluaran untuk
menemukan pola-pola pada data.
2.4Arsitektur Jaringan Syaraf Tiruan
Pemodelan struktur pemrosesan informasi terdistribusi dilakukan dengan
menentukan pola hubungan antar sel-sel saraf buatan. Pola hubungan yang umum
adalah hubungan antar layer (lapisan). Setiap lapisan terdiri dari sekumpulan sel
saraf buatan (unit) yang memiliki fungsi tertentu, misalnya fungsi masukan
10
Sistem saraf buatan terdiri dari tiga lapisan unit, yaitu:
1. Unit masukan
Pada Gambar 2.1 unit masukan dinotasikan dengan i. Unit masukan ini
menerima data dari jaringan saraf luar. Aktifasi unit-unit lapisan masukan
menunjukkan informasi dasar yang kemudian digunakan dalam jaringan saraf
buatan.
2. Unit tersembunyi
Unit tersembunyi dinotasikan dengan h pada Gambar 2.1. Unit
tersembunyi menerima dan mengirim sinyal ke jaringan saraf. Aktifasi setiap
unit-unit lapisan tersembunyi ditentukan oleh aktifasi dari unit-unit-unit-unit masukan dan bobot
dari koneksi antara unit-unit masukan dan unit-unit lapisan tersembunyi.
3. Unit keluaran
Unit keluaran dinotasikan dengan o. Unit keluaran mengirim data ke
jaringan saraf. Karakteristik dari unit keluaran tergantung dari aktifasi
unit lapisan tersembunyi dan bobot antara unit lapisan tersembunyi dan
unit-unit keluaran. Keluaran ini biasanya berupa nilai diskrit yang merupakan hasil
klasifikasi dari data masukan.
Gambar 2.1 Jaringan Saraf Tiruan
X1 X2 X3 X4
i1
Y1 Y2
i2 i3 i4
o2
o1
11
Sedangkan tipe arsitektur jaringan saraf buatan ada tiga yaitu :
1. Jaringan dengan lapisan tunggal (Single Layer Net)
Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot
yang terhubung. Jaringan ini hanya menerima masukan kemudian secara langsung
akan mengolahnya menjadi keluaran tanpa harus melalui lapisan tersembunyi
(Gambar 2.2).
Gambar 2.2. Jaringan Saraf Sederhana Lapisan Tunggal Feedforward 2. Jaringan dengan lapisan banyak (Multilayer Net)
Pada tipe ini, di antara lapisan masukan dan keluaran terdapat satu atau
lebih lapisan tersembunyi (Gambar 2.3). Hubungan antar lapisan berlangsung satu
arah. Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan yang
12
Gambar 2.3. Jaringan Saraf Sederhana lapisan banyak Feedforward
3. Reccurent Network
Tipe reccurent berbeda dengan kedua tipe sebelumnya. Pada reccurent,
sedikitnya memiliki satu koneksi umpan balik (feedback).
Gambar 2.4. Jaringan dengan lapisan kompetitif reccurent
2.5Metode Backpropagation
Jaringan Syaraf Tiruan backpropagataion atau rambat balik (JSTBP)
adalah metode yang paling sederhana dan mudah dipahami dari metode-metode
yang lain. JST-BP akan merubah bobot biasnya untuk mengurangi perbedaan
antara keluaran jaringan dan target keluaran. Setelah pelatihan selesai, dilakukan
13
syaraf membutuhkan perambatan maju dan diikuti dengan perambatan mundur.
Keduanya dilakukan untuk semua pola pelatihan.
Gambar 2.5. Arsitektur algoritma backpropagation
Keterangan X = lapisan masukan
Z = lapisan tersembunyi
Y = lapisan keluaran
= bobot dari lapisan masukan ke lapisan tersembunyi
= bobot dari lapisan tersembunyi ke lapisan keluaran
2.5.1 Fungsi Aktivasi pada Backpropagation
Dalam jaringan syaraf tiruan, fungsi aktivasi dipakai untuk menentukan
keluaran suatu neuron. Pada Backpropagation, fungsi aktivasi yang dipakai harus
memenuhi beberapa syarat sebagai berikut:
1. Kontinu
14
3. Merupakan fungsi yang tidak turun
Salah satu fungsi yang memenuhi ketiga syarat tersebut adalah fungsi
sigmoid biner yang memiliki range (0,1) [6]. Fungsi sigmoid biner didefinisikan
sebagai berikut.
Gambar 2.6. Fungsi sigmoid biner
Fungsi lain yang sering dipakai adalah fungsi sigmoid bipolar yang bentuk
fungsinya mirip dengan fungsi sigmoid biner, tapi dengan range (-1,1).
15
Dengan turunan
2
)) ( 1 ))( ( 1 ( )
(x f x f x
f
(2.4)
Gambar 2.7.Fungsi Sigmoid Bipolar
Fungsi sigmoid memiliki nilai maksimum 1. Maka untuk pola yang
targetnya > 1, pola masukan dan keluaran harus terlebih dahulu ditransformasi
sehingga semua polanya memiliki range yang sama seperti fungsi sigmoid yang
dipakai. Alternatif lain adalah menggunakan fungsi aktivasi sigmoid hanya pada
lapisan yang bukan lapisan keluaran. Pada lapisan keluaran, fungsi aktivasi yang
dipakai adalah fungsi identitas : f(x) = x.
2.5.2 Pelatihan Standard Backpropagation
Adapun langkah-langkah pelatihan dalam jaringan syaraf tiruan
backpropagation adalah sebagai berikut:
1. Definisikan pola masukan dan targetnya
16
3. Tentukan iterasi dan error yang diinginkan
4. Kerjakan langkah-langkah berikut selama (Epoh < Maksimum Epoh) dan
(MSE > Target Error)
Fase propagasi maju:
a. Jumlahkan semua sinyal yang masuk ke lapisan unit
Tiap-tiap unit masukan ( ) menerima sinyal dan meneruskan
sinyal tersebut ke semua unit pada lapisan yang ada diatasnya (lapisan
tersembunyi). Tiap-tiap unit pada suatu lapisan tersembunyi ( )
menjumlahkan sinyal-sinyal masukan berbobot:
ij
Dengan: = total sinyal masukan pada lapisan unit j
= nilai masukan pada unit i
= bobot antara masukan unit i dan lapisan unit j
b_ij = bobot bias masukan unit i dan lapisan unit j
Hitung keluaran semua lapisan unit j pada lapisan tersembunyi berdasarkan fungsi
aktivasi:
Dengan: = keluaran pada lapisan unit j
17
b. Jumlahkan semua sinyal yang masuk ke keluaran unit k
Tiap-tiap unit keluaran ( , k=1,2,3,..,m) menjumlahkan sinyal-sinyal masukan
berbobot.
Gunakan fungsi aktivasi untuk menghitung sinyal keluarannya dan kirimkan
sinyal tersebut ke semua unit di lapisan atasnya (unit-unit keluaran).
k
a. Hitung faktor kesalahan pada keluaran layer
Tiap-tiap unit keluaran ( ) menerima target pola yang
berhubungan dengan pola masukan.
(1- ) (2.9)
Dengan: = faktor kesalahan pada keluaran unit k
= keluaran pada keluaran unit k
Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk
18
b. Hitung penjumlahan kesalahannya
Tiap-tiap unit tersembunyi ( ) menjumlahkan delta masukannya
(dari unit-unit yang berada pada lapisan diatasnya)
kj
Kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung
informasi error.
Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk
memperbaiki nilai ).
(2.13)
Perubahan bobot
a. Ubah bobot yang menuju keluaran lapisan
kj kj
kj t w t w
w ( 1) () (2.14)
b. Ubah bobot yang menuju lapisan tersembunyi
ji kj
ji t v t v
v ( 1) () (2.15)
5. Hitung MSE pada setiap epoh
19
Dengan: = target pada keluaran unit k
= keluaran pada keluaran unit k
20
Adapun flowchart untuk backpropagation adalah sebagai berikut:
Inisialisasi jaringan
Randomisasi bobot
Hitung output pada masing-masing unit
Hitung sigmoid
Hitung nilai error pada unit output
)
Hitung nilai error pada unit tersembunyi
21
2.6 Algoritma Pelatihan
Algoritma standard yang digunakan dalam pelatihan Jaringan Syaraf
Tiruan Feed Forward Back Propagation, yaitu gradient conjugate dan gradient
conjugate with momentum seringkali terlalu lambat untuk keperluan praktis. Oleh
karena itu, pada penelitian ini akan digunakan Algoritma Gradient Conjugate
With Adaptive Learning Rate and Momentum (traingdx). Algoritma ini merupakan
penggabungan dari Algoritma Gradient Conjugate with Adaptive
Learning(traingda) dan Gradient Conjugate With Momentum(traingdm).
Pada standard backpropagation, perubahan bobot didasarkan atas gradien
yang terjadi untuk pola yang dimasukkan saat itu. Modifikasi yang dapat
dilakukan adalah melakukan perubahan bobot yang didasarkan atas arah gradien
pola terakhir dan pola sebelumnya (disebut momentum) yang dimasukkan, jadi
tidak hanya pola masukan terakhir saja yang diperhitungkan.
Penambahan momentum dimaksudkan untuk menghindari perubahan
bobot yang mencolok akibat adanya data yang sangat berbeda dengan yang lain
(outlier). Apabila beberapa data terakhir yang diberikan ke jaringan memiliki pola
yang serupa (berarti arah gradien sudah benar), maka perubahan bobot dilakukan
secara cepat. Namun, apabila data terakhir yang dimasukkan memiliki pola yang
berbeda dengan pola sebelumnya, maka perubahan dilakukan secara lambat [6].
Dengan Penambahan momentum, bobot baru pada waktu ke (t+1)
didasarkan atas bobot pada waktu t dan (t-1). Disini harus ditambahkan dua
22
adalah konstanta (0 ≤ ≤ 1) yang menyatakan parameter momentum maka
bobot baru dihitung berdasarkan persamaan :
() ( 1)
Algoritma gradient descent dengan adaptive learning rate, dasarnya sama
dengan algoritma gradient descent standard dengan beberapa perubahan.
Pertama-tama dihitung terlebih dahulu nilai output jaringan dan error pelatihan. Pada setiap
epoch, bobot-bobot baru dihitung dengan menggunakan learning rate yang ada.
Kemudian dihitung kembali output jaringan dan error pelatihan. Jika
perbandingan antara error pelatihan yang baru dengan error pelatihan lama
melebihi maksimum kenaikan kinerja (max_perf_inc), maka bobot-bobot baru
tersebut akan diabaikan, sekaligus nilai learning rate akan dikurangi dengan cara
mengalikannya dengan lr_dec. Sebaliknya, apabila perbandingan antara error
pelatihan baru dengan error pelatihan lama kurang dari maksimum kenaikan
kinerja, maka nilai bobot-bobot akan dipertahankan, sekaligus nilai learning rate
akan dinaikkan dengan cara mengalikannya dengan lr_inc.
Dengan cara ini, apabila learning rate terlalu tinggi dan mengarah ke
ketidakstabilan, maka learning rate akan diturunkan. Sebaliknya jika learning rate
terlalu kecil untuk menuju konvergensi, maka learning rate akan dinaikkan.
Dengan demikian, maka algoritma pembelajaran akan tetap terjaga pada kondisi
23
Algoritma gradient descent with momentum and adaptive learning
(traingdx) merupakan penggabungan antara algoritma gradient descent with
adaptive learning (traingda) dan algoritma gradient descent with momentum
(traingdm). Algoritma ini merupakan algoritma default yang digunakan oleh
scilab karena memiliki performa kecepatan pelatihan yang tinggi.
Simulasi dilakukan baik pada periode training maupun periode testing.
Salah satu cara yang dapat digunakan untuk melakukan evaluasi terhadap jaringan
syaraf yang digunakan adalah dengan menggunakan analisis regresi terhadap
respon jaringan dan target yang diharapkan. Analisis ini akan dilakukan dengan
fungsi postreg yang terdapat pada SCILAB.
Perambatan galat mundur (Backpropagation) merupakan sebuah metode
sistematik untuk pelatihan multiplayer jaringan saraf tiruan. Metode ini memiliki
dasar matematis yang kuat, obyektif dan algoritma ini mendapatkan bentuk
persamaan dan nilai koefisien dalam formula dengan meminimalkan jumlah
24
BAB III
METODE PENELITIAN
3.1Waktu Penelitian
Penelitian ini dilakukan pada Bulan April 2011 sampai dengan Bulan
November 2011, terhadap salah satu indeks saham Bursa Efek Indonesia yaitu
Indeks Bisnis-27. Pemilihan indeks ini sebagai objek penelitian dikarenakan
indeks ini masih baru dan pengambilan data yang diambil pada tahun pertamanya
antara 2009-2010 mempunyai kinerja yang baik dan perkembangannya berada
pada tren positif selama setahun terakhir.
3.2Metode Pengumpulan Data
Dalam penelitian ini data yang digunakan merupakan data kuantitatif
indeks saham bisnis-27. Sedangkan untuk jenis data yang digunakan dalam
penelitian ini yaitu jenis data skunder. Data sekunder yang digunakan yaitu data
indeks harga saham bisnis-27, data yang digunakan berupa data indeks saham
periode harian dari bulan Februari 2009 sampai dengan bulan Desember 2010.
Data dicatat sesuai dengan banyaknya hari kerja yaitu satu minggu terdiri dari
lima hari kerja dan hari libur tidak dicatat, dengan jumlah observasi T= 471. Data
diperoleh secara literatur dari salah satu situs yang membahas tentang saham di
25
3.3Metode Pengolahan Data
Metode pengolahan data yang dilakukan dalam penelitian ini yaitu
menggunakan metode Jaringan Syaraf Tiruan dengan menggunakan scilab.
Pemilihan metode ini karena data yang digunakan merupakan suatu data runtun
waktu (harian) yang terjadi secara bersamaan mengikuti pergerakan data deret
waktu yang lainnya. Sedangkan pada JST tersebut digunakan pelatihan jaringan
syaraf backpropagation momentum dengan adaptive learning.
Adapun langkah-langkah pengolahan data dalam jaringan syaraf tiruan
backpropagation adalah sebagai berikut:
1. Definisikan pola masukan dan targetnya
Dalam penelitian ini, pola masukkan bisa kita definisikan sebagai data x hari
dan targetnya adalah data hari berikutnya. Maka beberapa contoh pola
masukannya diilustrasikan pada tabel 3.1.
Tabel 3.1. Indeks harga saham Bisnis-27 (Januari2009)
x-1 x Target
121.910 120.096 120.841
120.096 120.841 121.790
120.841 121.790 118.963
.... .... ....
Adapun penjelasan pada tabel 3.1 yaitu pada baris pertama, x-1 dan x adalah
data tanggal 27 dan 28 Januari 2009 sedangkan targetnya adalah data tanggal
26
Januari 2009 sedangkan targetnya adalah data tanggal 30 Januari 2009.
Demikian seterusnya [5].
2. Inisialisasi bobot awal dengan bilangan acak
Pemilihan bobot awal sangat mempengaruhi jaringan syaraf dalam mencapai
minimum global (atau mungkin hanya lokal saja) terhadap nilai error, serta
cepat tidaknya proses pelatihan menuju kekonvergenan. Apabila nilai bobot
awal terlalu besar, maka masukan ke setiap lapisan tersembunyi atau lapisan
keluaran akan jatuh pada daerah dimana turunan fungsi sigmoidnya akan
sangat kecil. Biasanya bobot awal di inisialisasi secara random dengan nilai
antara -0.5 sampai 0.5 (atau -1 sampai 1, atau interval yang lainnya) [6].
3. Tentukan iterasi dan error yang diinginkan
4. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran,
kerjakan:
a. Fase pertama : propagasi maju
Selama propagasi maju, sinyal masukan (=xi) dipropagasikan ke layar
tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari
setiap unit lapisan tersembunyi (=zj) tersebut selanjutnya dipropagasikan
maju lagi ke layar tersembunyi diatasnya menggunakan fungsi aktivasi
yang ditentukan. Demikian 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
27
batas toleransinya, maka bobot setiap garis dalam jaringan akan
dimodifikasi untuk mengurangi kesalahan yang terjadi.
b. Fase Kedua : 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 k di setiap unit di lapisan tersembunyi
sebagai dasar perubahan bobot semua garis yang berasal dari unit
tersembunyi pada lapisan dibawahnya. Demikian seterusnya hingga semua
faktor di unit tersembunyi yang berhubungan langsung dengan unit
masukan dihitung.
c. Fase Ketiga : Perubahan Bobot
Setelah semua faktor dihitung, bobot semua garis dimodifikasi
bersamanaan. Perubahan bobot suatu garis didasarkan atas faktor neuron
di lapisan atasnya. Sebagai contoh, perubahan garis yang menuju ke layar
keluaran didasarkan atas 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
28
3.4Alur penelitian
Pengumpulan Indeks Harga Saham
Penyeleksian Data yang Akan di Olah
Penyimpanan Data
Mendefinisikan Pola Masukan dan Targetnya
Menentukan Arsitektur Jaringan dan Nilai Parameter yang Optimal
Masukkan ke Program
Lakukan Pelatihan Jaringan
Apakah Pelatihan Sudah Benar?
Uji Jaringan
Apakah Pengujian Berhasil?
Lakukan Pengujian Hingga Menemukan Nilai Peramalan yang akurasinya tinggi
Ya
Ya
Tidak
Tidak
Tidak
29
Penjelasan dari diagram 3.2 adalah sebagai berikut:
1. Mengumpulkan data saham Indeks Bisnis-27.
2. Data yang akan diolah di pilih data pada tanggal 27 Januari 2009 – Desember 2010.
3. Data yang dipilih disimpan di Ms.Excel.
4. Mendefinisikan pola masukan dengan x hari dan targetnya adalah data
hari berikutnya.
5. Menentukan arsitektur jaringan yaitu menentukan pola hubungan antar
sel-sel saraf buatan yang terdiri dari tiga lapisan unit, yaitu: unit
masukan, unit tersembunyi, unit keluaran. Arsitektur yang di pilih
adalah jaringan dengan lapisan banyak (Multilayer Net). Kemudian
menentukan nilai maksimum epoh, target error, dan learning rate.
6. Masukkan semua data yang sudah ditentukan nilai-nilainya pada
scilab.
7. Pelatihan jaringan yang dilakukan menggunakan algoritma
backpropagation pada jaringan syaraf tiruan. Karena data indeks
saham mempunyai arsitektur jaringan dengan lapisan banyak
(Multilayer Net).
8. Jika pelatihan sudah benar maka dilanjutkan pada uji jaringan
Jika pelatihan tidak benar maka menentukan nilai parameter kembali
30
9. Jika uji jaringan berhasil maka lakukan uji jaringan hingga
menemukan nilai peramalan yang akurasinya tinggi.
Jika uji jaringan tidak berhasil maka ditentukan kembali nilai
parameter dan dilakukan kembali pelatihan jaringan.
10.Mendapatkan nilai peramalan yang akurasinya tinggi dan errornya
32 BAB IV
HASIL DAN PEMBAHASAN
Setelah dilakukan penelitian dan pengumpulan data, maka pada bab ini
dilakukan pengolahan dan analisa terhadap data tersebut. Pengolahan dan analisa
dilakukan dengan proses pemilihan data indeks harga saham, penskalaan atau
normalisasi, inisialisasi jaringan, inisialisasi bobot, proses pelatihan
backpropagation, analisis hasil peramalan, dan nilai kinerja. Pengolahan dan
analisa dijabarkan sebagai berikut:
4.1 Proses Pemilihan Data Indeks Harga Saham
Data yang diperoleh oleh penulis berupa data indeks saham periode harian
dari Januari 2009 sampai dengan Desember 2010, yaitu:
Tabel 4.1. Harga saham Indeks Bisnis-27 Januari 2009 – Desember 2010 (Rupiah)
Date Prev Open High Low Close Change Volume
27/01/09 119,2770 0,0000 121,9100 121,9100 121,9102 2,6332
703,792, 889,700
28/01/09 121,9100 121,9100 122,4590 119,9370 120,0964 1,8136
468,463, 227,995
29/01/09 120,0960 120,0960 122,1740 119,9530 120,8406 0,7446
841,742, 191,000
30/01/09 120,8410 120,8410 121,7900 119,6940 121,7901 0,9491
620,099, 803,220
. . . .
. . . .
. . . .
29/12/10 319,7210 319,7300 323,9240 319,7350 323,1740 3,4530
1,580,76 4,297,75
30/12/10 323,1740 323,1300 324,9830 321,3270 322,2900 0,8840
33 Kemudian dari data tersebut, dipilih data penutupan (close) yang akan
digunakan sebagai masukan pada program backpropagation dan untuk
memperoleh hasil peramalan. Untuk lebih jelas lagi, pergerakan data penutupan
dapat dilihat pada Gambar 4.1.
Gambar 4.1. Perubahan Indeks Harian Indeks Bisnis-27
Dari Gambar 4.1 dapat dilihat adanya suatu pola siklus yang diawali
dengan tren naik yang puncaknya pada Bulan April 2010. Tren naik ini disusul
dengan tren turun sampai tanggal 27 Mei 2010. Kemudian terdapat lagi tren naik
puncaknya tanggal 27 September 2010. Dengan melihat data-data saham tersebut
dapat diprediksi pergerakan harga saham di masa yang akan datang.
Dari data penutupan tersebut selanjutnya dibuat menjadi dua variabel
masukan dan satu sebagai target. Variabel masukan pertama berupa data hari
kemarin, dan variabel masukan kedua berupa data hari sekarang. Sedangkan data
34 Tabel 4.2. Data Peramalan
Setelah data tersebut dipilih dan siap digunakan untuk dilakukan
peramalan, tahap selanjutnya yaitu melakukan penskalaan.
4.2Penskalaan atau Normalisasi
Data yang dimasukkan pada program, dilakukan penskalaan. Penskalaan
dilakukan karena skala sangat dibutuhkan pada jaringan syaraf tiruan yang
menggunakan fungsi aktifasi sigmoid. Data masukan dan target dilakukan
penskalaan sehingga masuk dalam range tertentu.
Pada penelitian ini proses penskalaan dilakukan dengan bantuan mean dan
standar deviasi. sehingga diperoleh ringkasan statistik pada Tabel 4.3 berikut ini.
Tabel 4.3. Ringkasan Statistik data Peramalan Saham Bisnis-27
35 Hasil yang didapatkan dari penskalaan diatas adalah:
Tabel 4.4. Nilai masukan yang diskalakan
No x-1 X
Tahap selanjutnya setelah penskalaan didapat yaitu melakukan inisialisasi
jaringan.
4.3 Inisialisasi Jaringan
Inisialisasi jaringan merupakan langkah sebelum membuat program
backpropagation di Scilab. Dalam skripsi ini, jaringan yang dibentuk terdiri dari
dua lapisan masukan, dua lapisan tersembunyi, dan satu lapisan keluaran. Lapisan
masukan yang dipakai telah dijelaskan sebelumnya di pembahasan 4.1.
Lapisan tersembunyi terdiri dari 2 lapisan, lapisan pertama terdiri atas 10
neuron dengan fungsi aktivasi sigmoid bipolar, sedangkan lapisan tersembunyi
kedua terdiri atas 5 neuron dengan fungsi aktivasi sigmoid biner. Lapisan keluaran
36
Lapisan Input Lapisan Tersembunyi
Pertama
Gambar 4.2. Arsitektur Jaringan Penelitian Keterangan: = lapisan masukan ke-i
= lapisan tersembunyi ke-i
y = lapisan keluaran
= bobot yang menghubungkan neuron ke-i dan neuron ke-j
jaringan dilakukan untuk mengetahui bentuk arsitektur jaringan syaraf
tiruan (Gambar 4.2) yang digunakan pada skripsi ini. Setelah arsitektur atau hasil
inisialisasi jaringan didapat, lalu dilakukan inisialisasi bobot dan bias.
4.4 Inisialisasi Bobot
Bobot adalah nilai matematis dari sebuah koneksi antar neuron, seperti
pada Gambar 4.2 terdapat bobot lapisan masukan ke lapisan tersembunyi
37 bobot lapisan tersembunyi kedua ke lapisan keluaran. Demikian juga dengan
bias mempunyai koneksi antar neuron yang sama seperti bobot. Bias merupakan
sebuah unit masukan yang nilainya selalu satu.
Setiap kali membentuk jaringan backpropagation, scilab akan
mengeluarkan nilai bobot dan bias awal dengan bilangan acak kecil. Nilai acak
yang dibangkitkan pada skripsi ini antara interval -0,5 sampai 0,5. Bobot dan
bias ini akan berubah setiap kali kita membentuk jaringan. Akan tetapi jika
diinginkan memberi bobot tertentu, kita bisa melakukan dengan memberi nilai
sendiri.
4.5 Proses Pelatihan Backpropagation
Proses pelatihan pada metode backpropagation dilakukan untuk
mendapatkan gambaran dan pembelajaran tentang data yang dimasukkan.
Latihan ini berupa memasukkan nilai iterasi, error tujuan, maksimum kenaikan
kinerja, rata-rata pembelajaran, rasio untuk menaikan rata-rata pembelajaran,
rasio untuk menurunkan rata-rata pembelajaran, dan jumlah iterasi yang akan
ditunjukkan kemajuannya serta nilai momentum. Sehingga dalam program
terdapat kejelasan apa yang harus dipelajari dan batasan mempelajari data
sehingga dapat menghasilkan peramalan yang baik.
Dalam pelatihan ini dibagi menjadi tiga fase, yaitu propagasi maju,
propagasi mundur, dan perubahan bobot. Propagasi maju dilakukan untuk
menentukan keluaran lapisan tersembunyi dan nilai keluaran akhir. Penjelasan
mengenai propagasi maju terdapat pada BAB II (Pelatihan Backpropagation).
38 Tabel 4.5. Nilai Keluaran Jaringan
Propagasi mundur dilakukan untuk mendistribusikan kesalahan di unit
berupa error dan untuk menghitung koreksi bobot dan bias. Penjelasan lebih
lengkap tentang propogasi mundur ada di BAB II (Pelatihan Backpropagation).
Perubahan bobot adalah kegiatan yang dilakukan dalam beberapa iterasi,
pada skripsi ini digunakan 20848 kali untuk mencapai nilai error tujuan yaitu
0,00476 dan secara otomatis bobot awal akan berubah menjadi: No. Nilai Keluaran
1 -1,901573347
2 -1,891800949
3 -1,872274234
4 -1,922166300
5 -1,941137097 .
. .
. . .
465 1,505524692
466 1,489221944
467 1,511671509
468 1,527948518
39 Tabel 4.6. Tabel Bobot Akhir Lapisan Masukan ke lapisan tersembunyi Pertama
Lapisan
Perubahan bobot akhir ini menghasilkan banyak keluaran, seluruh
keluaran berfungsi untuk mendapatkan hasil peramalan yang lebih baik. Hasil
perubahan bobot secara lengkap dapat dilihat di Lampiran 6 (Tabel inisialisasi
bobot dan bias akhir). Setelah proses pelatihan backpropagation didapatkan, akan
didapat pula hasil peramalan.
4.6 Analisis Hasil Peramalan
Tujuan utama penggunaan backpropagation adalah mendapatkan
keseimbangan antara pengenalan pola pelatihan secara benar dan respon yang
baik untuk pola lain yang sejenis (disebut data pengujian). Jaringan dapat dilatih
terus menerus hingga semua pola pelatihan dikenali dengan benar.
Umumnya data dibagi menjadi 2 bagian saling asing, yaitu pola data yang
dipakai sebagai data pelatihan dan data yang dipakai untuk pengujian. Pada
penelitian ini data pelatihan ada 369 data dan data pengujian ada 100 data.
40 pelatihan, kesalahan yang terjadi dihitung berdasarkan semua data (pelatihan dan
pengujian).
4.6.1 Analisis Data Pelatihan
Pelatihan jaringan akan berhenti jika telah mendapatkan error yang lebih
kecil dari target error dalam penelitian ini dinamakan MSE (Mean Squared
Error). Jika error tidak terpenuhi maka error akan berhenti pada maksimum
iterasi atau iterasi yang dimasukkan. Banyaknya masukan untuk lapisan masukan
juga berpengaruh untuk keakuratan prediksi oleh jaringan syaraf tiruan. data
masukanan juga dipakai sebagai data pelatihan untuk mencari bobot yang optimal.
Setiap arsitektur mempunyai bobot akhir yang dihasilkan berdasarkan bobot awal
dan data masukan.
Pada pelatihan jaringan akan memperhatikan parameter pembelajaran yang
digunakan, seperti parameter learning rate ( ). Semakin besar nilai , semakin
cepat pula proses pelatihan. Akan tetapi jika terlalu besar, maka algoritma
menjadi tidak stabil dan mencapai titik minimum lokal. Nilai pada penelitian ini
adalah 0,5. parameter lainnya adalah momentum yang digunakan untuk
melakukan perubahan bobot yang didasarkan atas arah gradien pola terakhir dan
pola sebelumnya. Nilai momentum yang digunakan adalah 0,8.
Data pelatihan terdiri dari 2 masukan dan 1 target di mana masing-masing
masukan dan target mempunyai 369 data. Hasil peramalan data pelatihan dapat
41 Tabel 4.7. Hasil Peramalan Data Pelatihan Indeks Bisnis-27
Data ke Target Prediksi JST Error
nilai 0,002646. Sedangkan error terbesar terletak pada data ke-323 dengan nilai
17,37. Untuk melihat lebih jelas penyimpangan antara nilai target dan prediksi
disajikan pula pada Gambar 4. 3.
42 Berdasarkan Gambar 4.3 dan Tabel 4.7. target dan keluaran jaringan
(hasil prediksi) di analisis dengan regresi linier menggunakan postreg pada scilab,
sehingga menghasilkan:
Gradien garis terbaik (m1) = 0,9952
Konstanta (a1) = 1,0277
Koefisien Korelasi (r1) = 0,9976
Koefisien korelasi bernilai 0,9976 dan mendekati 1, menunjukkan hasil
yang baik untuk kecocokan keluaran jaringan dengan target (Gambar 4.3).
4.6.2 Analisis Data Pengujian
Setelah melewati tahap pelatihan, yang dilakukan selanjutnya adalah tahap
pengujian. Pengujian jaringan dilakukan untuk mendapatkan arsitektur yang tepat
untuk peramalan saham penutupan esok hari. Data-data yang digunakan adalah
data yang tidak ikut dilatih.
Faktor-faktor yang berpengaruh untuk mendapatkan hasil yang terbaik
adalah jumlah neuron pada lapisan tersembunyi, learning rate, momentum, error
dan iterasi. Berdasarkan hasil pengujian dapat diambil kesimpulan pengaruh
learning rate dan momentum terhadap arsitektur jaringan sehingga mendapaatkan
arsitektur yang terbaik.
Penggunaan laju pembelajaran terlalu besar dan nilai momentum terlalu
kecil akan menyebabkan tingkat konvergensi lebih lambat. Laju pembelajaran
kecil dan momentum besar akan mempercepat tingkat konvergensi dan
43 Data pengujian terdiri dari 2 masukan dan 1 target dimana masing-masing
masukan dan target mempunyai 100 data. Hasil peramalan data pelatihan dapat
dilihat pada tabel 4.3.
Tabel 4.8. Hasil Peramalan Data Pengujian Indeks Bisnis-27
Data ke Target Prediksi Jst Error
1 285,32 288,60 -3,28
2 276,53 286,23 -9,70
3 277,31 277,95 -0,64
. . . .
. . . .
27 311,91 299,12 12,79
. . . .
. . . .
58 325,94 325,89 0,05
. . . .
. . . .
97 317,70 317,86 -0,16
98 319,72 318,39 1,33
99 323,17 323,17 3,15
100 322,29 322,20 0,09
Berdasarkan Tabel 4.8 Error terkecil terletak pada data ke-58 dengan nilai
0,05. Sedangkan error terbesar terletak pada data ke-27 dengan nilai 12,79. Untuk
melihat lebih jelas penyimpangan antara nilai target dan prediksi disajikan pula
44 Gambar 4.4. Grafik Hasil Data Pengujian
Berdasarkan Gambar 4.4 Dan tabel 4.8 target dan keluaran jaringan (hasil
prediksi) dianalisis dengan regresi linier menggunakan postreg pada scilab,
sehingga menghasilkan:
Gradien garis terbaik (m2) = 0,9246
Konstanta (a2) = 23,2020
Koefisien Korelasi (r2) = 0,9693
Koefisien korelasi bernilai 0,9689 dan mendekati 1, menunjukkan hasil
yang baik untuk kecocokan keluaran jaringan dengan target. Dibandingkan
45 Arsitektur yang digunakan untuk peramalan saham adalah arsitektur pada
data pengujian. Bobot dan bias yang digunakan pada data pengujian adalah bobot
dan bias pada data pelatihan. Berdasarkan hasil data pengujian pada Tabel 4.8.
diperoleh hasil peramalan untuk hari esok atau tanggal 3 januari 2011 adalah
322,20, dengan nilai lebih rendah dari harga sebelumnya yaitu 322,29. Berikut ini
adalah grafik antara target dan hasil prediksi JST berdasarkan data pengujian.
Gambar 4.5. GrafikHasil SahamPeramalan Indeks Bisnis-27
Pada Gambar 4.5, keluaran jaringan (o) dan target (*) sebagian besar
sudah berdekatan (hampir menempati posisi yang sama). Hasil terbaik terjadi
apabila posisi keluaran(o) dan target(*) betul-betul berada pada posisi yang sama.
Berdasarkan Tabel 4.4 dan Gambar 4.4 diperoleh kocokan nilai antar
target dan keluaran, hal ini menunjukkan nilai keluaran mendekati harga saham
46 4.6. Nilai Kinerja
Nilai kinerja atau nilai kondisi atau syarat adalah nilai tujuan error yang
ingin dicapai atau biasa disebut mean square error (MSE) . Nilai MSE didapat
dari semua data yaitu data pelatihan dan data pengujian. Pada tahap pelatihan dan
pengujian data menggunakan bobot dan bias yang sama. Untuk mengetahui nilai
MSE dapat dilihat pada Gambar 4.6.
Gambar 4.6. Nilai MSE Peramalan Saham Indeks Bisnis-27 Pada Gambar 4.6. terlihat bahwa perubahan error terjadi setiap 0.2 x
epoch atau iterasi. MSE yang didapatkan sebesar 0.00476 pada iterasi ke 20848.
47 BAB V
KESIMPULAN DAN SARAN
Setelah dilakukan analisa dan pengolahan data, maka pada bab ini diambil
kesimpulan dan diberikan saran untuk penelitian selanjutnya.
5.1Kesimpulan
Berdasarkan hasil yang telah diperoleh, maka kesimpulan yang bisa ditarik
dari analisis dan pembahasan sebelumnya adalah sebagai berikut:
1. Nilai korelasi pada data pelatihan bernilai 0,9976 sedangkan nilai korelasi
pada data pengujian bernilai lebih kecil dari data pelatihan yaitu 0.9693.
Dari masing-masing nilai korelasi data pelatihan dan data pengujian
mempunyai nilai korelasi yang sangat tinggi mendekati 1. Hal tersebut
menunjukkan hasil yang baik untuk kecocokan keluaran jaringan dan
target.
2. Hasil peramalan harga saham untuk hari berikutnya (1 Januari 2011)
adalah 322,20 lebih rendah dari harga sebelumnya (30 Desember 2010)
yaitu 322,29, dengan selisih 0,09.
3. Nilai Mean Squared Error (MSE) yang dihasilkan pada penelitian ini
48 5.2Saran
Dari hasil yang telah diperoleh, maka saran yang dapat dikemukakan
adalah sebagai berikut:
1. Untuk penelitian selanjutnya lebih dikembangkan lagi variasi algoritma
pelatihan supaya didapatkan hasil yang optimal dengan waktu pelatihan
yang lebih singkat.
2. Bobot diinisialisasi lebih baik lagi karena nilai bobot mempengaruhi hasil
49
DAFTAR PUSTAKA
[ 1 ] http://id.wikipedia.org/wiki/Saham
[ 2 ] http://idx.co.id/MainMenu/Education/IndeksHargaSahamObligasi/ tabid/ 195/1ang/id-ID/language/id-ID/Default.aspx
[ 3 ] http://detikFinance BEI Luncurkan Indeks Bisnis 27.htm
[ 4 ] http://myteks.wordpress.com/2010/08/31/jaringan-saraf-tiruan-artificial-neural-network/
[ 5 ] Suyanto. Artificial Intelligence, Bandung: Informatika. 2007.
[ 6 ] Kusumadewi, Sri. Membangun Jaringan Syaraf Tiruan Menggunakan Matlab & Excel Link, Jogjakarta: Graha Ilmu. 2004.
LAMPIRAN 1
Tabel Saham kelompok Indeks Bisnis-27
No Kode Nama Emiten
1 AALI Astra Agro Lestari Tbk 2 ADRO Adaro Energy Tbk 3 ANTM Aneka Tambang Tbk 4 ASII Astra International Tbk 5 BBCA Bank Central Asia Tbk 6 BBNI Bank Negara Indonesia Tbk 7 BBRI Bank Rakyat Indonesia Tbk 8 BDMN Bank Danamon Tbk
9 BMRI Bank Mandiri Tbk 10 BNGA Bank CIMB Niaga Tbk 11 BYAN Bayan Resources Tbk 12 GGRM Gudang Garam Tbk
13 INCO International Nickel Indonesia Tbk 14 INDF Indofood Sukses Makmur Tbk 15 INDY Indika Energy Tbk
16 INTP Indocement Tunggal Prakarsa Tbk 17 ISAT Indosat Tbk
18 ITMG Indo Tambangraya Megah Tbk 19 JSMR Jasa Marga Tbk
20 LPKR Lippo Karawaci Tbk 21 PGAS Perusahaan Gas Negara Tbk 22 PNBN Bank Pan Indonesia Tbk
23 PTBA Tambang Batubara Bukit Asam Tbk 24 SMGR Semen Gresik Tbk
25 TLKM Telekomunikasi Indonesia Tbk 26 UNTR United Tractors Tbk
LAMPIRAN 2
Tabel Data Penutupan Harga Saham Indeks Bisnis-27 Periode Januari 2009
LAMPIRAN 3
Keterangan x-1 = Saham hari sebelumnya
x = Saham hari sekarang
LAMPIRAN 4
Tabel Data Pengujian
No x-1 x t
1 290,339 287,181 285,325 2 287,181 285,325 276,527 3 285,325 276,527 277,310 4 276,527 277,310 283,960 5 277,310 283,960 286,224 6 283,960 286,224 288,468 7 286,224 288,468 285,639 8 288,468 285,639 283,080 9 285,639 283,080 281,662 10 283,080 281,662 284,309 11 281,662 284,309 284,712 12 284,309 284,712 286,843 13 284,712 286,843 290,926 14 286,843 290,926 291,217 15 290,926 291,217 291,461 16 291,217 291,461 290,163 17 291,461 290,163 291,602 18 290,163 291,602 291,710 19 291,602 291,710 287,424 20 291,710 287,424 286,355
LAMPIRAN 5
Tabel Inisialisasi Bobot dan Bias Awal
Tabel Bobot Awal Lapisan Input ke lapisan tersembunyi Pertama
Lapisan
Tabel Bobot Bias Awal Lapisan Input Ke Lapisan tersembunyi Pertama
Tabel Bobot Awal Lapisan tersembunyi Pertama ke Lapisan Tersembunyi Kedua
Lapisan Tersembunyi
Kedua
Lapisan Tersembunyi pertama
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10
N1 1,45 1,0501 0,9679 -0,0225 0,0705 -1,765 0,8302 1,1893 1,1413 0,3847 N2 0,7305 1,4203 -0,3329 0,1057 -0,1429 -1,5011 -1,5074 1,0495 -1,1499 -1,0838 N3 1,5362 -1,2236 -0,6011 0,0316 0,8532 0,4183 -1,4828 0,9369 -0,906 1,3406 N4 1,4153 -1,2922 -0,1157 -1,2216 1,048 1,6869 0,0372 0,9609 0,1592 -0,8628 N5 0,9604 1,1946 -1,2088 1,4801 0,3484 -0,2468 1,257 -0,9697 -1,4478 -0,7297
Tabel Bobot Bias Awal lapisan tersembunyi Pertama ke lapisan Tersembunyi
Kedua
Lapisan Tersembunyi
Kedua
Bias Lapisan Tersembunyi
Pertama
N1 -3,2889
N2 -1,6445
N3 0,7314
N4 0,6446
Tabel Bobot Awal Lapisan Tersembunyi Kedua Ke Lapisan Output
Lapisan Tersembunyi
Kedua
Lapisan Output
N1 0,6595
N2 -0,3997
N3 0,4192
N4 -0,8508
N5 0,0004
Tabel Bobot Bias Awal Lapisan Tersembunyi Kedua Ke Lapisan Output
Bias Lapisan Tersembunyi
Kedua
Lapisan Output
LAMPIRAN 6
Tabel Inisialisasi Bobot dan Bias Akhir
Tabel Bobot Akhir Lapisan Input ke lapisan tersembunyi Pertama
Lapisan
Tabel Bobot Bias Akhir Lapisan Input Ke Lapisan tersembunyi Pertama
Tabel Bobot Akhir Lapisan tersembunyi Pertama ke Lapisan Tersembunyi Kedua
Tabel Bobot Bias Akhir lapisan tersembunyi Pertama ke lapisan Tersembunyi
Kedua
Tabel Bobot Awal Lapisan Tersembunyi Kedua Ke Lapisan Output
Tabel Bobot Bias Akhir Lapisan Tersembunyi Kedua Ke Lapisan Output
Bias Lapisan Tersembunyi
Kedua
Lapisan Output
LAMPIRAN 7
Program Peramalan Indeks Saham Menggunakan Metode Backpropagation
clear;
[pn,meanp,stdp,tn,meant,stdt]=prestd(P,T)
%membangun jaringan saraf feedforward
net=newff(minmax(pn),[10 5 1],{'tansig''logsig''purelin'},'traingdx');
%set bobot
%melihat bobot awal input,lapisan,dan bias
BobotAwal_Input=net.IW{1,1} BobotAwal_Bias_Input=net.b{1,1} BobotAwal_Lapisan1=net.LW{2,1} BobotAwal_Bias_Lapisan1=net.b{2,1} BobotAwal_Lapisan2=net.LW{3,2} BobotAwal_Bias_Lapisan2=net.b{3,1}
%set max epoh,goal,learning rate,show step
net.trainParam.epochs=20000; net.trainParam.goal=0.00476; net.trainParam.max_perf_inc=1.06; net.trainParam.lr=0.5;
%melakukan pembelejaran
net=train(net,pn,tn);pause
%Melihat bobot-bobot awal input,lapisan dan bias
BobotAkhir_Input=net.IW{1,1} BobotAkhir_Bias_Input=net.b{1,1} BobotAkhir_Lapisan1=net.LW{2,1} BobotAkhir_Bias_Lapisan1=net.b{2,1} BobotAkhir_Lapisan2=net.LW{3,2} BobotAkhir_Bias_Lapisan2=net.b{3,1}
%Melakukan simulasi
an=sim(net,pn);
a=poststd(an,meant,stdt); H=[(1:size(P,2))' T' a' (T'-a')];
sprintf('%2d %9.2f %7.2f %5.2f\n',H')
%Evaluasi output jaringan (data pelatihan dengan target)
[m1,a1,r1]=postreg(a,T)
Qn=trastd(Q,meanp,stdp); bn=sim(net,Qn)
b=poststd(bn,meant,stdt)
L=[(1:size(Q,2))' TQ' b' (TQ'-b')]; sprintf('%2d %11.2f %9.2f %7.2f\n',L')
%Evaluasi output jaringan (data testing dengan target)
[m2,b1,r2]=postreg(b,TQ) pause
k=[1:size(Q,2)];
plot(k,TQ,'bo',k,b','r*');
title('Hasil pengujian dengan data pelatihan:Target(o),Output(*)'); xlabel('Data ke-');ylabel('Target/Output');
%text(k+0.2*ones(length(k),1),TQ,int2str(k));