PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PENYALURAN KREDIT BERDASARKAN PREDIKSI PENJUALAN SEPEDA MOTOR DI DIY DENGAN MENGGUNAKAN BACKPROPAGATION
Skripsi
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer
Oleh: Anastasia Kristi Astuti NIM
: 023124064
PROGRAM STUDI ILMU KOMPUTER JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SANATA DHARMA 2007
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI iv
PERNYATAAN KEASLIAN KARYA Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 14 Maret 2007 Penulis
Anastasia Kristi Astuti
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI v
Seberapapun Besarnya Kesulitan yang Dihadapi, Tetaplah Kuat dan Berjuang untuk Orang – orang yang Kita Sayangi. Mereka Semua Mendoakan Kita untuk Memperoleh yang Terbaik... Untuk Itu, Berjuang dan Berusahalah Untuk Mencapai yang Terbaik, Agar Kita Dapat Membahagiakan Mereka dan Diri Kita Sendiri. - AnKA-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI vi
Karya ini kupersembahkan untuk: JC, Bunda Maria dan Santo Yusuf Mama dan Papa Tercinta Mas Toto, Mbak Iin & Mas Doni, Mbak Titi Dek’ Ranu – Keponakanku tersayang Daru – Sahabat dan Penyemangatku
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI vii
ABSTRAK PENYALURAN KREDIT BERDASARKAN PREDIKSI PENJUALAN SEPEDA MOTOR DI DIY DENGAN MENGGUNAKAN BACKPROPAGATION ( Studi Kasus : PT. Adira Dinamika Multifinance untuk Honda )
Jaringan Syaraf Tiruan adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi. Jaringan Syaraf Tiruan memiliki berbagai macam metode di dalam pembelajarannya, yang dapat diaplikasikan ke dalam berbagai bidang. Salah satu aplikasi yang dapat dibuat dengan menggunakan Jaringan Syaraf Tiruan adalah aplikasi dalam bidang peramalan. Dalam skripsi ini dibuat program untuk memprediksi jumlah peminat pembelian sepeda motor di DIY secara kredit melalui PT. Adira Dinamika Multifinance dengan menggunakan salah satu metode yang terdapat pada mata kuliah Jaringan Syaraf Tiruan, yaitu metode Backpropagation dan menggunakan software Matlab 6.5. Dari pengujian – pengujian didapatkan hasil terbaik (rerata error testing terkecil), yaitu : fungsi pelatihan menggunakan algoritma Levenberg-Marquardt (trainlm), pembagian data training dan testing dengan menggunakan tahun ganjil sebagai data training dan tahun genap sebagai data testing, jumlah unit masukan : 12, arsitektur jaringan : 12−4−2−1. Pengujian menggunakan data Dealer ABC Motor di Kotamadya Yogyakarta dengan periode tahun 2001-2005. Dari hasil prediksi yang didapat, maka dapat disimpulkan bahwa prediksi minat pembeli sepeda motor untuk Dealer ABC Motor dengan menggunakan jasa PT. Adira Dinamika Multifinance pada periode tahun 2001 – 2005 mengalami peningkatan di bulan Maret dan November tahun 2006.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI viii
ABSTRACT CREDIT DISTRIBUTION BASED ON SELLING PREDICTION OF MOTORCYCLE IN DIY USING BACKPROPAGATION METHOD (Case Study: PT. Adira Dinamika Multifinance for Honda) Artificial Neural Network is an information processing system which has a similar characteristic with biological neural network. Artificial Neural Network has various method of learning, which can be applied to a lot of work field. One of the fields is forecasting. In these thesis is made for predicting a sum of person who wants to buy motorcycle which use PT. Adira Dinamika Multifinance services. The thesis use one of the methods in Artificial Neural Network subject that is Backpropagation, and using Matlab 6.5 software. From the research, there are several best result: training function using Levenberg-Marquardt algorithm (trainlm), distribution of odd years as training data and even years as testing data, input unit: 12, network architecture: 12-4-2-1. The research data is taken from ABC Motor Dealer in central DIY at the years of 2001 until 2005. From the prediction result, the conclusion that can be obtained is there is an increasing interest in buying motor cycle at ABC motor dealer using PT. Adira Dinamika Multifinance services in the March and November 2006.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI ix
KATA PENGANTAR
Puji Syukur kepada Tuhan Yang Maha Esa atas berkat, rahmat dan karuniaNya sehingga penulis dapat menyelesaikan skripsi yang berjudul “ Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation ” sebagai salah satu syarat memperoleh gelar Sarjana Sains (S.Si.) di Fakultas MIPA, program studi Ilmu Komputer Universitas Sanata Dharma Yogyakarta. Selama penelitian sampai pada penyusunan skripsi ini, penulis banyak mendapat bantuan dari berbagai pihak. Pada kesempatan ini, penulis ingin menyampaikan banyak ucapan terima kasih kepada : 1. Tuhan Yesus beserta Bunda Maria dan Santo Yusuf yang selalu setia membantu dan mendampingiku. 2. Ibu P.H. Prima Rosa, S.Si., M.Sc. selaku Kepala Program Studi Ilmu Komputer Sanata Dharma dan Dosen Pembimbing Akademik. 3. Bapak Drs. Jong Jek Siang, M.Sc., selaku Dosen Pembimbing Skripsi. Trima kasih atas segala perhatian dan bimbingannya. 4. Bapak Y. Joko Nugroho, S.Si dan bapak Eko Hari, S.Si, M.Kom selaku Dosen Penguji. 5. Mas Tukijo dan Ibu Linda... Trima kasih atas bantuannya. Kompak selalu ya... 6. Mama dan Papa tercinta, trima kasih atas dukungan, doa dan kasih sayangnya... Akhirnya aku bisa berkumpul kembali di rumah...
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI x
7. Kakak-kakakku : mas Toto, mbak Iin, mas Doni dan mbak Titi, yang selalu memberi semangat dan mengingatkan penulis untuk segera menyelesaikan skripsi ini & berkumpul kembali dengan keluarga tercinta di Pondok Gede. 8. Adek Ranu, keponakanku tersayang. Cerita-cerita tentangmu membuat semangat penulis menjadi bertambah. 9. Sahabatku tersayang disaat suka maupun duka, Daru. Thanks for all... 10. Playgroup SC yang selalu ceria : Daru, Hendi, Tina, Anel dan Mbak Kris. 11. Teman-teman seperjuanganku di IKOM Universitas Sanata Dharma angkatan 2002 dan mas Nunu IKOM’00... Ciayoo... 12. Teman-teman kost Benteng Takeshi : Alam, mbak Icha, Titien, Kristin, mbak Keny, mbak Ria, Veni, Neldi, Aya, Nana, Pipiet, Astu...Ceria kalian sangat menghibur penulis. Kapan kita ke Pasar Klewer naik Pramex??? 13. Eyang Warno&Harjo, Rm. Bass, Mbak Eny & Om Mono, trima kasih atas dukungan dan doanya. Risky PBI’00, thanks untuk abstract – nya ya... 14. Gank KC & PKK Girl’s on PL-2 Servatius... Friendship Forever.
Penulis menyadari bahwa masih banyak kekurangan dalam penyusunan skripsi ini. Penulis memohon kritik dan saran yang akan sangat berarti bagi penulis. Penulis memiliki harapan yang sangat besar, semoga skripsi ini dapat bermanfaat bagi pembaca dan perkembangan ilmu pengetahuan.
Yogyakarta, Maret 2007 Penulis, Anastasia Kristi Astuti
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xi
DAFTAR ISI
HALAMAN JUDUL .........................................................................................
i
HALAMAN PERSETUJUAN ...........................................................................
ii
HALAMAN PENGESAHAN ............................................................................
iii
PERNYATAAN KEASLIAN KARYA .............................................................
iv
MOTTO .............................................................................................................
v
HALAMAN PERSEMBAHAN .........................................................................
vi
ABSTRAK ........................................................................................................
vii
ABSTRACT ......................................................................................................
viii
KATA PENGANTAR ........................................................................................
ix
DAFTAR ISI .....................................................................................................
xi
DAFTAR GAMBAR .........................................................................................
xv
DAFTAR TABEL ............................................................................................. xvii BAB I PENDAHULUAN .................................................................................
1
A.
Latar Belakang Masalah ......................................................................
1
B.
Rumusan Masalah ...............................................................................
2
C.
Batasan Masalah ..................................................................................
3
D.
Tujuan Penulisan .................................................................................
3
E.
Manfaat Penulisan ...............................................................................
3
F.
Metodologi Penelitian .........................................................................
4
G.
Sistematika Penulisan ..........................................................................
4
BAB II LANDASAN TEORI ............................................................................
6
A.
Jaringan Syaraf Biologi .......................................................................
6
B.
Jaringan Syaraf Tiruan .........................................................................
7
C.
Backpropagation ..................................................................................
7
1. Arsitektur Backpropagation ........................................................
8
2. Fungsi Aktivasi ...........................................................................
9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xii
3. Pre – Processing (Normalisasi Data) ...........................................
9
4. Konstruksi Jaringan ....................................................................
10
5. Inisialisasi Bobot Awal Secara Random ......................................
10
6. Pelatihan .....................................................................................
11
7. Kuadrat Rata – rata Kesalahan (MSE) .........................................
15
8. Simulasi ......................................................................................
16
9. Post – Processing (Denormalisasi Data) ......................................
16
Prediksi ...............................................................................................
16
BAB III PERANCANGAN SISTEM .................................................................
18
D.
A.
Perancangan Umum .............................................................................
18
B.
Perancangan Antar Muka .....................................................................
19
1. Training, Testing dan Prediksi .....................................................
19
2. Training, Testing dan Prediksi dengan Metode 5 .........................
29
3. Perancangan Form Jumlah Unit Hidden Layer .............................
31
4. Perancangan Form Masukan Data Baru ......................................
30
5. Perancangan Form Pengubahan Data ..........................................
32
Perancangan Proses .............................................................................
33
1. Proses Pengambilan Data Input dan Target Training ....................
34
2. Proses Normalisasi Data Training (Pre-Processing Data) ............
35
3. Proses Training ...........................................................................
36
4. Proses Pengambilan Data Input dan Target Testing .....................
36
5. Proses Normalisasi Data Testing .................................................
37
6. Proses Testing dan Prediksi ........................................................
37
7. Proses Denormalisasi Data Prediksi (Post-Processing Data) ........
37
BAB IV IMPLEMENTASI DAN PEMBAHASAN............................................
39
C.
A.
Implementasi........................................................................................
39
1. Implementasi Sistem ...................................................................
39
a. Pembagian Data Input dan Target Training ............................
39
b. Proses Normalisasi Data Training (Pre-Processing Data) .......
41
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xiii
c. Proses Training .....................................................................
42
d. Proses Pengambilan Data Input dan Target Testing ...............
43
e. Proses Normalisasi Data Testing ...........................................
43
f. Proses Testing dan Prediksi ...................................................
44
g. Proses Denormalisasi Data Prediksi (Post-Processing Data) ..
44
2. Implementasi Antar Muka ...........................................................
45
a. Implementasi Antar Muka Training, Testing dan Prediksi ......
46
b. Implementasi Antar Muka Training, Testing dan Prediksi
B.
dengan Metode 5 ...................................................................
47
c. Implementasi Jumlah Unit 1 dan 2 Hidden Layer ..................
48
d. Implementasi Antar Muka Masukan Data Baru .....................
49
e. Implementasi Antar Muka Pengubahan Data .........................
50
Pembahasan..........................................................................................
51
1. Menentukan Fungsi Pelatihan yang Tercepat ...............................
52
2. Menentukan Jumlah Unit Masukan dan Metode Pembagian Data Training dan Testing....................................................................
55
a. Pembagian data training dan testing dengan menggunakan metode 1 ...............................................................................
56
b. Pembagian data training dan testing dengan menggunakan metode 2 ...............................................................................
57
c. Pembagian data training dan testing dengan menggunakan metode 3 ...............................................................................
59
d. Pembagian data training dan testing dengan menggunakan metode 4 ...............................................................................
60
e. Pembagian data training dan testing dengan menggunakan metode 5 ...............................................................................
61
f. Pembagian data training dan testing dengan menggunakan metode 6 ...............................................................................
62
3. Menentukan Jumlah Unit Lapisan Tersembunyi...........................
64
a. Pengujian Satu Hidden Layer Terhadap Rerata Error Testing ..
65
b. Pengujian Dua Hidden Layer Terhadap Rerata Error Testing ....
66
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xiv
4. Pengujian Banyak Iterasi Terhadap MSE dan Rerata Error Testing
68
5. Pengujian Target Error Terhadap Banyak Iterasi..........................
70
6. Pengamatan Hasil Prediksi ..........................................................
73
BAB V PENUTUP .............................................................................................
74
A.
Kesimpulan ..........................................................................................
74
B.
Saran ....................................................................................................
75
DAFTAR PUSTAKA .........................................................................................
76
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xv
DAFTAR GAMBAR Gambar 2.1 Neuron Biologi .............................................................................
6
Gambar 2.2 Arsitektur Backpropagation ..........................................................
8
Gambar 3.1 Bagan Alir Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation.....................................................
18
Gambar 3.2 Perancangan Form Training, Testing dan Prediksi dengan Metode 1 29 Gambar 3.3 Perancangan Form Training, Testing dan Prediksi dengan Metode 5 30 Gambar 3.4 Perancangan Form Jumlah Unit 1 Hidden Layer ............................
31
Gambar 3.5 Perancangan Form Jumlah Unit 2 Hidden Layer ...........................
31
Gambar 3.6 Perancangan Form Masukan Data Baru ........................................
32
Gambar 3.7 Perancangan Form Pengubahan Data ............................................
33
Gambar 4.1 Hasil Implementasi Training, Testing dan Prediksi dengan Metode 1
46
Gambar 4.2 Hasil Implementasi Training, Testing dan Prediksi dengan Metode 5
47
Gambar 4.3 Hasil Implementasi Jumlah Unit 1 Hidden Layer ............................
48
Gambar 4.4 Hasil Implementasi Jumlah Unit 2 Hidden Layer ............................
48
Gambar 4.5 Hasil Implementasi Masukan Data Baru .........................................
49
Gambar 4.6 Hasil Implementasi Pengubahan Data ..............................................
50
Gambar 4.7 Urutan Pengujian dan Pengamatan Hasil Prediksi ............................
52
Gambar 4.8 Pengujian Fungsi Pelatihan dengan dengan Arsitektur 12 − 10 − 1
53
Gambar 4.9 Pengujian Fungsi Pelatihan dengan dengan Arsitektur 12 − 3 − 4 − 1 .................................................................................
55
Gambar 4.10 Pengujian Unit Masukan dengan Menggunakan Metode 1 .............
57
Gambar 4.11 Pengujian Unit Masukan dengan Menggunakan Metode 2 .............
58
Gambar 4.12 Pengujian Unit Masukan dengan Menggunakan Metode 3 .............
60
Gambar 4.13 Pengujian Unit Masukan dengan Menggunakan Metode 4 .............
60
Gambar 4.14 Pengujian Unit Masukan dengan Menggunakan Metode 5 .............
62
Gambar 4.15 Pengujian Unit Masukan dengan Menggunakan Metode 6 .............
63
Gambar 4.16 Pengujian Unit Masukan dengan Menggunakan Metode 1-6 ..........
64
Gambar 4.17 Pengujian Satu Hidden Layer Terhadap Rerata Error Testing.........
64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xvi
Gambar 4.18 Satu Hidden Layer dengan Rerata Error Testing Terkecil ..............
66
Gambar 4.19 Pengujian Dua Hidden Layer Terhadap Rerata Error Testing .........
67
Gambar 4.20 Dua Hidden Layer dengan Rerata Error Testing Terkecil ..............
68
Gambar 4.21 Pengujian Banyak Iterasi Terhadap MSE ......................................
69
Gambar 4.22 Pengujian Banyak Iterasi Terhadap Rerata Error Testing ..............
70
Gambar 4.23 Pengujian Target Error Terhadap Banyak Iterasi ...........................
72
Gambar 4.24 Pengujian Target Error Terhadap Banyak Rerata Error Testing .....
72
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xvii
DAFTAR TABEL
Tabel 3.1 Data Penjualan Sepeda Motor di Dealer ABC Motor ........................
22
Tabel 3.2 Data Training dengan Menggunakan Metode 1 .................................
22
Tabel 3.3 Data Testing dengan Menggunakan Metode 1 ..................................
23
Tabel 3.4 Data Training dengan Menggunakan Metode 2 .................................
23
Tabel 3.5 Data Testing dengan Menggunakan Metode 2 ..................................
24
Tabel 3.6 Data Training dengan Menggunakan Metode 3 .................................
24
Tabel 3.7 Data Testing dengan Menggunakan Metode 3 ..................................
25
Tabel 3.8 Data Training dengan Menggunakan Metode 4 .................................
25
Tabel 3.9 Data Testing dengan Menggunakan Metode 4 ..................................
26
Tabel 3.10 Data Training dengan Menggunakan Metode 5 ...............................
26
Tabel 3.11 Data Testing dengan Menggunakan Metode 5 ................................
27
Tabel 3.12 Data Training dengan Menggunakan Metode 6 ...............................
27
Tabel 3.13 Data Testing dengan Menggunakan Metode 6 ................................
28
Tabel 3.14 Data Sebelum dan Sesudah Dilakukan Normalisasi ........................
35
Tabel 4.1 Hasil Pengujian Fungsi Pelatihan dengan Arsitektur 12 − 10 − 1 .......
53
Tabel 4.2 Hasil Pengujian Fungsi Pelatihan dengan Arsitektur 12 − 3 − 4 − 1 ...
54
Tabel 4.3 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 1........ Tabel 4.4 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 2........ Tabel 4.5 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 3........ Tabel 4.6 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 4........ Tabel 4.7 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 5........ Tabel 4.8 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 6........ Tabel 4.9 Hasil Pengujian Banyak Iterasi Terhadap MSE dan Rerata Error Testing .............................................................................................. Tabel 4.10 Hasil Pengujian Target Error terhadap Banyak Iterasi dan Rerata Error Testing .............................................................................................. Tabel 4.11 Hasil Prediksi Data ABC Motor untuk Tahun 2006 ...........................
56 58 59 60 61 63 69 71 73
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN
A. Latar Belakang Masalah Perkiraan jumlah stok barang yang laku terjual seringkali menjadi masalah sebuah perusahaan dalam memperkirakan jumlah penjualan di masa yang akan datang, apakah akan mengalami kenaikan penjualan atau bahkan akan mengalami penurunan penjualan. Permasalahan tersebut ada ketika sebuah perusahaan ingin mengetahui apakah perlu menambah upaya – upaya dalam mempromosikan barang – barang yang dijual, supaya dapat mengalami peningkatan penjualan barang yang ditawarkan oleh perusahaan tersebut. Dengan tidak adanya kepastian besarnya jumlah barang yang laku terjual, maka sebuah perusahaan tidak dapat mengetahui berapa besar biaya yang kira – kira harus dikeluarkan untuk membayar biaya promosi. Permasalahan di atas dapat diatasi dengan membuat sebuah perangkat lunak yang dapat memprediksi jumlah penjualan barang di bulan atau di masa yang akan datang. Perangkat lunak yang dibuat menggunakan metode Backpropagation dari mata kuliah Jaringan Syaraf Tiruan. Backpropagation melatih jaringan untuk mendapatkan keseimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan selama pelatihan serta kemampuan jaringan untuk memberikan respon yang benar terhadap pola masukan yang serupa ( tapi tidak sama ) dengan pola yang dipakai selama pelatihan. Pola yang dimaksud disini adalah pola kejadian yang ada di masa yang lampau. Dalam penggunaan metode
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
Backpropagation data – data yang ada terlebih dahulu dilakukan proses pelatihan, setelah itu dilakukan proses pengujian dan kemudian akan didapatkan hasil prediksi jumlah penjualan barang di bulan atau di masa yang akan datang. Data – data yang akan digunakan, diambil dari data – data PT. Adira Dinamika Multifinance Jakarta untuk wilayah Daerah Istimewa Yogyakarta (DIY). Dengan adanya perangkat lunak yang akan dibuat, dapat memberikan bantuan kepada perusahaan yang bergerak di bidang penyaluran kredit atau dapat juga digunakan untuk perusahaan yang bergerak di bidang penjualan barang, di dalam menentukan langkah – langkah yang harus diambil untuk meningkatkan minat konsumen. Langkah – langkah itu dapat berupa usaha untuk meningkatkan promosi ataupun pemberian diskon terhadap barang – barang yang ada (bagi perusahaan yang bergerak di bidang penjualan barang).
B. Rumusan Masalah Pokok permasalahan yang akan dibahas dalam skripsi ini dapat ditulis dengan beberapa pertanyaan berikut : 1. Bagaimana proses pelatihan, pengujian dan prediksi dengan metode Backpropagation dilakukan. 2. Bagaimana implementasi metode backpropagation untuk prediksi jumlah penjualan barang di PT. Adira Dinamika Multifinance.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
C. Batasan Masalah Dalam skripsi ini dilakukan beberapa batasan sebagai berikut : 1. Data – data jumlah barang yang digunakan adalah data – data dealer ABC Motor selama lima tahun terakhir (2001 – 2005) 2. Program dikhususkan untuk Dealer yang bergabung pada awal tahun (bulan Januari) selama beberapa periode (1 periode = 12 bulan) 3. Program dibuat dengan menggunakan software Matlab 6.5 4. Dalam pembuatan database digunakan bahasa pemrograman MySQL dan ODBC
D. Tujuan Penulisan Penulisan skripsi ini bertujuan untuk : 1. Mengamati seberapa besar pengaruh komponen – komponen penyusun Backpropagation (fungsi pelatihan, jumlah hidden layer, banyak iterasi dan target error) di dalam proses training dan testing. 2. Memperkirakan jumlah penjualan barang di masa yang akan datang dengan menggunakan metode Backpropagation pada Jaringan Syaraf Tiruan.
E. Manfaat Penulisan Manfaat yang diharapkan dalam penulisan skripsi ini adalah : 1. Memberikan sumbangan kepada perusahaan yang bergerak di bidang penjualan barang untuk memprediksikan jumlah penjualan barang di bulan atau di masa yang akan datang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
2. Dapat melihat perkembangan minat penduduk di masing – masing kabupaten untuk wilayah Yogyakarta dalam hal pembelian motor Honda secara kredit melalui PT. Adira Dinamika Multifinance (untuk kedepannya, apakah semakin tinggi minatnya atau bahkan semakin menurun).
F. Metodologi Penelitian Metodologi yang digunakan dalam pembuatan tugas akhir ini adalah : 1. Studi pustaka tentang penerapan metode Backpropagation di dalam proses pelatihan, proses pengujian dan prediksi (peramalan). 2. Perancangan dan implementasi metode Backpropagation untuk sebuah peramalan (forecasting) dalam suatu program. 3. Jalankan program dengan cara mengisi data – data sebagai input untuk melihat hasil training, hasil testing dan hasil prediksi dengan menggunakan program yang sudah dibuat. 4. Analisis tingkat minat pemakaian kredit untuk sepeda motor di wilayah DIY.
G. Sistematika Penulisan Sistematika penulisan tugas akhir terdiri dari lima bab dengan urutan sebagai berikut : BAB I PENDAHULUAN Menjelaskan uraian mengenai hal-hal yang menjadi dasar dalam pembahasan skripsi ini. Uraian tersebut mengenai latar belakang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 5
masalah, rumusan masalah, batasan masalah, tujuan penulisan, manfaat penulisan, metodologi penulisan dan sistematika penulisan BAB II LANDASAN TEORI Memberikan penjelasan secara singkat beberapa dasar pengetahuan yang menjadi dasar dan dibahas bagaimana cara mengolah data-data input dengan melakukan proses pelatihan dan pengujian. BAB III PERANCANGAN SISTEM Bab ini berisi tentang rancangan program yang akan digunakan di dalam implementasi. BAB IV IMPLEMENTASI DAN PEMBAHASAN Bab ini berisi tentang implementasi dari rancangan sistem yang telah dibuat, serta mengimplementasikan desain ke dalam pemrograman sesungguhnya, serta berisi tentang analisis kerja program yang telah dibuat. BAB V PENUTUP Bab ini berisi tentang kesimpulan dari analisis dan saran dari hasil analisis serta pembahasan masalah berdasarkan pada hasil yang didapat secara keseluruhan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 6
BAB II LANDASAN TEORI
A. Jaringan Syaraf Biologi Di dalam jaringan syaraf biologi terdapat sebuah bagian, yang sering disebut sebagai neuron. Neuron memiliki 3 komponen penting, yaitu : dendrit, soma dan axon. Dendrit menerima sinyal dari neuron lain. Sinyal tersebut berupa impuls elektrik yang dikirim melalui celah sinaptik melalui proses kimiawi. Sinyal tersebut dimodifikasi (diperkuat / diperlemah) di celah sinaptik. Berikutnya, soma menjumlahkan semua sinyal-sinyal yang masuk. Kalau jumlahan tersebut cukup kuat dan melebihi batas ambang (threshold), maka sinyal trsebut akan diyetruskan ke sel lain melalui axon. Frekuensi penerusan sinyal berbeda-beda antara satu sel dengan yang lain.
Gambar 2.1 Neuron Biologi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 7
B. Jaringan Syaraf Tiruan Jaringan Syaraf Tiruan (JST) adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi. JST dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi, dengan asumsi : •
Pemrosesan informasi terjadi pada banyak elemen sederhana (neuron).
•
Sinyal dikirimkan diantara neuron-neuron melalui penghubung-penghubung.
•
Penghubung antar neuron memiliki bobot yang akan memperkuat atau memperlemah sinyal.
•
Untuk menentukan output, setiap neuron menggunakan fungsi aktivasi (biasanya bukan fungsi liner) yang dikenakan pada jumlahan input yang diterima. Besarnya output ini selanjutnya dibandingkan dengan suatu batas ambang. JST ditentukan oleh 3 hal :
•
Pola hubungan antar neuron (disebut arsitektur jaringan)
•
Metode untuk menentukan bobot penghubung (disebut metode training / learning / algoritma)
•
Fungsi aktivasi
C. Backpropagation Backpropagation melatih jaringan untuk mendapatkan kesimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan selama pelatihan serta kemampuan jaringan untuk memeberikan respon yang benar terhadap pola
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8
masukan yang serupa (tapi tidak sama) dengan pola yang dipakai selama pelatihan. 1. Arsitektur Backpropagation Backpropagation memiliki beberapa unit yang ada dalam satu atau lebih layar tersembunyi. Gambar 2.2 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.
Gambar 2.2 Arsitektur backpropagation
vji merupakan bobot garis dari unit masukan xi ke unit layar tersembunyi zj (vj0 merupakan bobot garis yang menghubungkan bias di unit masukan ke unit layar tersembunyi zj). wkj merupakan bobot dari unit layar tersembunyi zj ke unit keluaran yk (wk0 merupakan bobot dari bias di layar tersembunyi ke unit keluaran zk).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
2. Fungsi aktivasi Dalam program yang akan dibuat, menggunakan fungsi aktivasi logsig (sigmoid biner). f ( net ) =
1 1 + e − net
Fungsi sigmoid biner memiliki bentuk serupa dengan sigmoid bipolar, hanya rangenya adalah [0,1].
3. Pre – Processing (Normalisasi Data) Jika ingin menggunakan fungsi aktivasi sigmoid (biner), data harus ditransformasikan dulu karena range keluaran fungsi aktivasi sigmoid adalah [0,1]. Data bisa diransformasikan ke interval [0,1]. Tapi akan lebih baik jika ditransformasikan ke interval yang lebih kecil, misal pada interval [0.1, 0.9]. Ini mengingat fungsi sigmoid merupakan fungsi asimtotik yang nilainya tidak pernah mencapai 0 ataupun 1. Jika a adalah data minimum dan b adalah data maksimum, transformasi linier yang dipakai untuk mentransformasikan data ke interval [0.1, 0.9] adalah : x’ =
0.8( x − a ) + 0.1 b−a
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
4. Konstruksi Jaringan Arsitektur jaringan yang sering digunakan oleh algoritma backpropagation adalah jaringan feedforward dengan banyak lapisan. Untuk membangun suatu jaringan feedforward digunakan instruksi newff. Fungsi : net = newff(PR,[S1 S2 ... SN1],{TF1 TF2 ... TFN1},BTF,BLF,PF) PR : matriks berukuran Rx2 yang berisi nilai minimum dan maksimum, dengan R adalah jumlah variabel input. Si
: jumlah neuron pada lapisan ke-i, dengan i = 1,2,...,N1
TFi : fungsi aktivasi pada lapisan ke-i, dengan i = 1,2,...,N1; (default:tansig) BTF : fungsi pelatihan jaringan (default:traingdx) BLF : fungsi pelatihan untuk bobot (default:learngdm) PF : fungsi kinerja(default:mse) Fungsi aktivasi Tfi harus merupakan fungsi yang dapat dideferensialkan, seperti tansig, logsig atau purelin. Fungsi pelatihan BTF dapat digunakan fungsi – fungsi pelatihan untuk backpropagation, seperti trainlm, trainbfg, trainrp, atau traingd. Fungsi kinerja bisa digunakan fungsi kinerja yang dapat dideferensialkan, seperti mse atau msereg.
5. Inisialisasi Bobot Awal Secara Random 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
besar, maka input ke setiap lapisan tersembunyi atau lapisan output akan jatuh pada daerah dimana turunan fungsi sigmoidnya akan sangat kecil. Sebaliknya, apabila nilai bobot awal terlalu kecil, maka input ke setiap lapisan tersembunyi atau lapisan output akan sangat kecil, yang akan menyebabkan proses pelatihan akan berjalan sangat lambat. Biasanya bobot awal diinisialisasi secara random dengan nilai antara -0.5 sampai 0.5 (atau -1 sampai 1, atau interval yang lainnya).
6. Pelatihan Metode belajar yang digunakan adalah metode belajar terbimbing (supervised learning). Pelatihan dengan jaringan backpropagation with delta-bardelta terdiri dari tiga fase. Fase pertama adalah fase maju. Pola masukan dihitung maju mulai dari layar masukan hingga layar keluaran menggunkan fungsi aktivasi yang ditentukan. Fase kedua adalah fase mundur. Selisih antara keluaran jaringan dengan target yang diinginkan merupakan kesalahan yang terjadi. Kesalahan tersebut dipropagasikan mundur, dimulai dari garis yang berhubungan langsung dengan unit-unit di layar keluaran. Fase ketiga adalah modifikasi bobot untuk menurunkan kesalahan yang terjadi. •
Fase I : Propagasi Maju Selama propagasi maju, sinyal masukan (= xi) dipropagasikan ke layar
tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari setiap unit layar tersembunyi (= zj) tersebut selanjutnya dipropagasikan maju lagi ke layar tersembunyi di atasnya menggunakan fungsi yang ditentukan. Demikian seterusnya hingga menghasilkan keluaran jaringan (= yk).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
Berikutnya, keluaran jaringan (= yk) dibandingkan dengan target yang harus dicapai (= tk). Selisih tk-yk adalah kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari batas toleransi yang ditentukan, maka iterasi dihentikan. Akan tetapi apabila kesalahan masih lebih besar dari batas toleransinya, maka bobot setiap garis dalam jaringan akan dimodifikasi untuk mengurangi kesalahan yang terjadi. •
Fase II : Propagasi Mundur Berdasarkan kesalahan tk-yk, dihitung faktor
k
(k = 1,2,...,m) yang dipakai
untuk mendistribusikan kesalahan di unit yk ke semua unit tersembunyi yang terhubung langsung dengan yk.
k
juga dipakai untuk mengubah bobot garis yang
berhubungan langsung dengan unit keluaran. Dengan cara yang sama, dihitung faktor
j
di setiap unit di layar tersembunyi
sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi di layar di 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 suatu garis didasarkan atas faktor
neuron di layar atasnya. Sebagai
contoh, perubahan bobot 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
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 layar tersembunyi (dengan fungsi aktivasi sigmoid biner) adalah sebagai berikut : 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 zj ( j = 1,2,...,p ) n
z_netj = vj 0 +
zjvji
i =1
zj = f(z_netj) =
1 1 + e − z + netj
Langkah 5 : Hitung semua keluaran jaringan di unit yk (k = 1,2,...,m) p
y_netk = wk 0 +
zjwkj
j =1
yk = f(y_netk) =
1 1 + e − y + netk
Fase II : Propagasi mundur Langkah 6 : Hitung faktor
unit keluaran berdasarkan kesalahan di setiap
unit keluaran yk(k = 1,2,...,m) k=
(t
k
− yk ) f '( y _ netk ) = (tk − yk ) yk (1 − yk )
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
k
merupakan unit kesalahan yang akan dipakai dalam perubahan bobot layar
di bawahnya (langkah 7). Hitung suku perubahan bobot wkj (yang akan dipakai nanti untuk merubah bobot wkj ) dengan laju percepatan . 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) _netj =
m
δw k
kj
k =1
Faktor unit tersembunyi : j
(z _ netj ) = δ _ netjzj (1 − zj ) = δ _ netjf '
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)
Perubahan bobot garis yang menuju ke unit tersembunyi : vji (baru ) = vji (lama ) + ∆vji (j = 1,2,...,p ; i = 0,1,...,n)
Setelah pelatihan 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 15
Apabila fungsi aktivasi yang dipakai bukan sigmoid biner, maka langkah 4 dan 5 harus disesuaikan. Demikian juga turunannya pada langkah 6 dan7. Dalam matlab pembelajaran dilakukan dengan menggunakan fungsi train. Misal : net = train(net,pn,tn) pn = vektor input ; tn = vektor target ; net = jaringan yang sudah dikonstruksi
7. Kuadrat Rata – rata Kesalahan (MSE) MSE merupakan singkatan dari Mean Squared Error. Fungsi mse dalam Matlab adalah fungsi kinerja yang dihasilkan jaringan. Fungsi mse mengukur kinerja jaringan sesuai kuadrat rata – rata kesalahan (Mean Squared Error). MSE dipakai untuk mengukur kinerja jaringan supervised learning, yang memiliki pasangan input jaringan dan target, {p1,t1},{p2,t2},...,{pQ,tQ} Dimana pQ adalah sebuah input jaringan , tQ targetnya dan
Q
adalah cacah
seluruh input. Dalam pembelajaran jaringan, setiap input akan menghasilkan output yang dibandingkan dengan target. Error dihitung sebagai selisih antara target dan output. SSE = Σ(Output yang diharapkan – Output jaringan)2 MSE =
SSE JumlahElemenOutput
Yang paling sering digunakan adalah MSE, fungsi ini akan mengambil rata – rata kuadrat error yang terjadi antara output jaringan dan target.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 16
8. Simulasi Dalam matlab simulasi dilakukan dengan menggunakan fungsi sim. Misal : a = sim(net,pn) ;pn = vektor input ; net = jaringan yang sudah dikonstruksi
9. Post – Processing (Denormalisasi Data) Post-processing data mencakup beberapa proses yang diterapkan pada output Neural Network. Seperti halnya pre-processing, post-processing sepenuhnya bergantung pada simulasi jaringan dan termasuk mendeteksi kapan parameter melampaui jangkauan yang dapat diterima. Pada saat melakukan post-processing data terhadap hasil output sistem dilakukan proses perubahan data sehingga data output dapat dibaca oleh user, ini disebut sebagai proses denormalisasi. Terkadang post-processing hanya merupakan kebalikan dari pre-processing. Rumus yang digunakan pada post-processing yaitu : Nilai baru =
(outputJST − 0.1) × (max Value − min Value ) + min Value 0.8
Dengan nilai baru adalah nilai yang telah didenormalisasi, output JST adalah output yang dihasilkan berdasarkan proses prediksi, minValue adalah nilai minimum data dan maxValue adalah nilai maksimum data.
D. Prediksi Prediksi merupakan salah satu kegiatan matematis terlampau dalam bisnis, dan telah dilakukan bertahun – tahun sebelum penguasaan komputer dengan menggunakan kalkulator meja. Dengan adanya penggunaan komputer, maka para
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
pemrediksi (prediktor) dapat membuat perhitungan secara lebih cepat, akurat dan mudah (Wibowo,2003). Fakta – fakta dasar yang ada dalam proses prediksi yang dilakukan pemrediksi adalah sebagai berikut : •
Prediksi adalah proyeksi dari masa lalu, sehingga dasar untuk memperkirakan apa yang akan terjadi pada masa yang akan datang adalah dengan melihat masa lampau. Hal ini merupakan alasan mengapa data sangat penting dalam menentukan prediksi, dan data ini akan memberikan data hipotesis.
•
Seluruh prediksi terdiri dari keputusan semi terstruktur, keputusan tersebut didasarkan oleh beberapa variabel yang dapat diukur dengan mudah dan variabel – variabel yang tidak dapat diukur.
•
Tidak ada teknik prediksi atau peramalan yang sempurna. Dalam proses prediksi tidak diharapkan untuk memprediksi masa depan dengan tingkat akurasi 100 %.
•
Peramalan tidak dapat dilakukan untuk jangka panjang, karena terbukti kurang akurat dan kerapkali meleset jauh dari yang diharapkan. Dapat saja peramalan yang telah dilakukan dapat menjadi tidak berguna. Sehingga, peramalan jangka panjang tidak dapat meramalkan dengan baik perkembangan dan situasi di masa mendatang yang penuh dengan ketidakpastian.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
BAB III PERANCANGAN SISTEM
A. Perancangan Umum Bagan alir (flowchart) Program “Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan menggunakan Backpropagation” dapat dilihat pada gambar 3.1.
Gambar 3.1 Bagan Alir Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19
B. Perancangan Antar Muka Perancangan antar muka untuk program “ Penyaluran Kredit Sepeda Motor di DIY dengan Menggunakan Backpropagation” ini antara lain berisi perancangan antar muka ‘training, testing dan prediksi’, perancangan antar muka jumlah unit hidden layer, perancangan antar muka masukan data baru dan perancangan antar muka pengubahan data.
1. Training, Testing dan Prediksi Di dalam pembagian data training dan data testing digunakan 5 (lima) metode, yaitu : •
Metode 1 -
Data training = sisa seluruh data yang tidak digunakan oleh data testing, pengambilan data training dimulai dari tahun awal.
-
Data testing = jumlah unit masukan + 6, pengambilan data testing dihitung dari data terakhir pada tahun terakhir.
-
Terdapat perbedaan pembagian data training dan data testing untuk jumlah unit masukan yang berbeda – beda.
•
Metode 2 -
Data training = seluruh data yang memiliki bulan ganjil, pengambilan data training dimulai dari tahun awal sampai dengan tahun akhir.
-
Data testing = seluruh data yang memiliki bulan genap, pengambilan data testing dimulai dari tahun awal sampai dengan tahun akhir.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
-
Pembagian data training dan data testing adalah sama untuk jumlah unit masukan yang berbeda – beda.
•
Metode 3 -
Data training = setengah dari jumlah seluruh data, pengambilan data training dimulai dari tahun awal sampai dengan tahun batas pengambilan.
-
Data testing = setengah dari jumlah seluruh data, pengambilan data testing dimulai dari tahun batas pengambilan sampai dengan tahun akhir.
-
Pembagian data training dan data testing adalah sama untuk jumlah unit masukan yang berbeda – beda.
•
Metode 4 -
Data training = data yang memiliki tahun ganjil, pengambilan data training dimulai dari tahun awal ganjil sampai dengan tahun akhir ganjil.
-
Data testing = data yang memiliki tahun genap, pengambilan data testing dimulai dari tahun awal genap sampai dengan tahun akhir genap.
-
Pembagian data training dan data testing adalah sama untuk jumlah unit masukan yang berbeda – beda.
•
Metode 5 -
Data training = data yang digunakan berdasarkan pemilihan tahun secara acak. Pengambilan data training dimulai dari tahun awal yang sudah dipilih secara acak sampai dengan tahun akhir yang sudah dipilih secara acak.
-
Data testing = data yang digunakan berdasarkan pemilihan tahun secara acak. Pengambilan data testing dimulai dari tahun awal yang sudah dipilih
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
secara acak sampai dengan tahun akhir yang sudah dipilih secara acak, dengan catatan bahwa tahun yang sudah digunakan untuk data training tidak dapat digunakan kembali untuk data testing. -
Pembagian data training dan data testing adalah sama untuk jumlah unit masukan yang berbeda – beda.
•
Metode 6 -
Data training = data yang digunakan berdasarkan pengambilan data secara urut setiap 6 (enam) bulan. Pengambilan data training dimulai dari bulan paling awal pada tahun awal dan dilakukan secara bergantian dengan data testing setiap 6 (enam) bulan.
-
Data testing = data yang digunakan berdasarkan pengambilan data secara urut setiap 6 (enam) bulan. Pengambilan data testing dimulai dari bulan ketujuh pada tahun awal dan dilakukan secara bergantian dengan data training setiap 6 (enam) bulan.
-
Pembagian data training dan data testing adalah sama untuk jumlah unit masukan yang berbeda – beda.
Contoh penggunaan metode 1 sampai 6 pada pengambilan data training dan data testing di Dealer ABC Motor dengan periode tahun 2001-2005 yang terdapat di wilayah Kotamadya Yogyakarta akan diterangkan di bawah ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
Tabel 3.1 Data Penjualan Sepeda Motor di Dealer ABC Motor Tahun 2001 2002 2003 2004 2005
•
1 1 0 0 27 25 24 28 15 8
Bulan ( Januari – Desember ) 1 7 7 0 2 0 0 0 1 0 0 0 0 0 2 16 39 21 26 13 30 24 27 28 12 18 13 26 12 27 20 14 15 9 5 8 19 10 10 8
0 2 0 15 26 45 18 14 6 6
Metode 1 Contoh pembagian data training dan testing dengan metode 1 menggunakan
jumlah unit masukan = 12. Pembagian data training dengan metode 1 tampak pada tabel 3.2 dan pembagian data testing dengan metode 1 tampak pada tabel 3.3.
Tabel 3.2 Data Training dengan Menggunakan Metode 1 No Bln-Thn 01-01 1 02-01 2 03-01 3 04-01 4 05-01 5 06-01 6 07-01 7 08-01 8 09-01 9 10-01 10 11-01 11 12-01 12 01-02 13 02-02 14
Data 1 1 7 7 0 0 1 2 0 0 0 2 0 1
No Bln-Thn Data 03-02 0 15 04-02 0 16 05-02 0 17 06-02 0 18 07-02 0 19 08-02 0 20 09-02 0 21 10-02 2 22 11-02 13 23 12-02 15 24 01-03 27 25 02-03 39 26 03-03 21 27 04-03 26 28
No 29 30 31 32 33 34 35 36 37 38 39 40 41 42
Bln-Thn Data 05-03 13 06-03 26 07-03 25 08-03 30 09-03 24 10-03 27 11-03 28 12-03 45 01-04 24 02-04 12 03-04 18 04-04 13 05-04 26 06-04 18
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
Tabel 3.3 Data Testing dengan Menggunakan Metode 1 No 1 2 3 4 5 6 •
Bln-Thn Data No 07-04 28 7 08-04 12 8 09-04 27 9 10-04 20 10 11-04 14 11 12-04 14 12
Bln-Thn Data 01-05 15 02-05 15 03-05 9 04-05 5 05-05 8 06-05 6
No 13 14 15 16 17 18
Bln-Thn 07-05 08-05 09-05 10-05 11-05 12-05
Data 8 19 10 10 8 6
Metode 2 Pembagian data training dengan metode 2 tampak pada tabel 3.4 dan
pembagian data testing dengan metode 2 tampak pada tabel 3.5.
Tabel 3.4 Data Training dengan Menggunakan Metode 2 No Bln-Thn 01-01 1 02-01 2 03-01 3 04-01 4 05-01 5 06-01 6 07-01 7 08-01 8 09-01 9 10-01 10
Data 1 7 0 1 0 0 0 0 0 0
No 11 12 13 14 15 16 17 18 19 20
Bln-Thn 11-01 12-01 01-02 02-02 03-02 04-02 05-02 06-02 07-02 08-02
Data 0 16 27 21 13 25 24 28 24 18
No 21 22 23 24 25 26 27 28 29 30
Bln-Thn 09-02 10-02 11-02 12-02 01-03 02-03 03-03 04-03 05-03 06-03
Data 26 28 27 14 15 9 8 8 10 8
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 24
Tabel 3.5 Data Testing dengan Menggunakan Metode 2 No 1 2 3 4 5 6 7 8 9 10 •
Bln-Thn 07-03 08-03 09-03 10-03 11-03 12-03 01-04 02-04 03-04 04-04
Data 1 7 0 2 0 2 1 0 0 0
No 11 12 13 14 15 16 17 18 19 20
Bln-Thn 05-04 06-04 07-04 08-04 09-04 10-04 11-04 12-04 01-05 02-05
Data 2 15 39 26 26 30 27 45 12 13
No 21 22 23 24 25 26 27 28 29 30
Bln-Thn Data 03-05 18 04-05 12 05-05 20 06-05 14 07-05 15 08-05 5 09-05 6 10-05 19 11-05 10 12-05 6
Metode 3 Pembagian data training dengan metode 3 tampak pada tabel 3.6 dan
pembagian data testing dengan metode 3 tampak pada tabel 3.7.
Tabel 3.6 Data Training dengan Menggunakan Metode 3 No 1 2 3 4 5 6 7 8 9 10
Bln-Thn 01-01 02-01 03-01 04-01 05-01 06-01 07-01 08-01 09-01 10-01
Data 1 1 7 7 0 0 1 2 0 0
No 11 12 13 14 15 16 17 18 19 20
Bln-Thn 11-01 12-01 01-02 02-02 03-02 04-02 05-02 06-02 07-02 08-02
Data 0 2 0 1 0 0 0 0 0 0
No 21 22 23 24 25 26 27 28 29 30
Bln-Thn Data 09-02 0 10-02 2 11-02 13 12-02 15 01-03 27 02-03 39 03-03 21 04-03 26 05-03 13 06-03 26
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
Tabel 3.7 Data Testing dengan Menggunakan Metode 3 No 1 2 3 4 5 6 7 8 9 10
•
Bln-Thn 07-03 08-03 09-03 10-03 11-03 12-03 01-04 02-04 03-04 04-04
Data 25 30 24 27 28 45 24 12 18 13
No 11 12 13 14 15 16 17 18 19 20
Bln-Thn 05-04 06-04 07-04 08-04 09-04 10-04 11-04 12-04 01-05 02-05
Data 26 18 28 12 27 20 14 14 15 15
No 21 22 23 24 25 26 27 28 29 30
Bln-Thn Data 03-05 9 04-05 5 05-05 8 06-05 6 07-05 8 08-05 19 09-05 10 10-05 10 11-05 8 12-05 6
Metode 4 Pembagian data training dengan metode 4 tampak pada tabel 3.8 dan
pembagian data testing dengan metode 4 tampak pada tabel 3.9.
Tabel 3.8 Data Training dengan Menggunakan Metode 4 No 1 2 3 4 5 6 7 8 9 10 11 12
Bln-Thn 01-01 02-01 03-01 04-01 05-01 06-01 07-01 08-01 09-01 10-01 11-01 12-01
Data 1 1 7 7 0 0 1 2 0 0 0 2
No 13 14 15 16 17 18 19 20 21 22 23 24
Bln-Thn 01-02 02-02 03-02 04-02 05-02 06-02 07-02 08-02 09-02 10-02 11-02 12-02
Data 27 39 21 26 13 26 25 30 24 27 28 45
No 25 26 27 28 29 30 31 32 33 34 35 36
Bln-Thn Data 01-03 15 02-03 15 03-03 9 04-03 5 05-03 8 06-03 6 07-03 8 08-03 19 09-03 10 10-03 10 11-03 8 12-03 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 26
Tabel 3.9 Data Testing dengan Menggunakan Metode 4 No 1 2 3 4 5 6 7 8 •
Bln-Thn 01-04 02-04 03-04 04-04 05-04 06-04 07-04 08-04
Data 0 1 0 0 0 0 0 0
No 9 10 11 12 13 14 15 16
Bln-Thn 09-04 10-04 11-04 12-04 01-05 02-05 03-05 04-05
Data 0 2 16 15 24 12 18 13
No 17 18 19 20 21 22 23 24
Bln-Thn Data 05-05 26 06-05 18 07-05 28 08-05 12 09-05 27 10-05 20 11-05 14 12-05 14
Metode 5 Contoh pembagian data training dengan pengambilan tahun secara acak :
2001, 2003, 2004 dan pembagian data testing dengan pengambilan tahun secara acak : 2002, 2005. Pembagian data training dengan metode 5 tampak pada tabel 3.10 dan pembagian data testing dengan metode 5 tampak pada tabel 3.11.
Tabel 3.10 Data Training dengan Menggunakan Metode 5 No 1 2 3 4 5 6 7 8 9 10 11 12
Bln-Thn 01-01 02-01 03-01 04-01 05-01 06-01 07-01 08-01 09-01 10-01 11-01 12-01
Data 1 1 7 7 0 0 1 2 0 0 0 2
No 13 14 15 16 17 18 19 20 21 22 23 24
Bln-Thn 01-02 02-02 03-02 04-02 05-02 06-02 07-02 08-02 09-02 10-02 11-02 12-02
Data 27 39 21 26 13 26 25 30 24 27 28 45
No 25 26 27 28 29 30 31 32 33 34 35 36
Bln-Thn Data 01-03 24 02-03 12 03-03 18 04-03 13 05-03 26 06-03 18 07-03 28 08-03 12 09-03 27 10-03 20 11-03 14 12-03 14
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
Tabel 3.11 Data Testing dengan Menggunakan Metode 5 No 1 2 3 4 5 6 7 8
•
Bln-Thn 01-04 02-04 03-04 04-04 05-04 06-04 07-04 08-04
Data 0 1 0 0 0 0 0 0
No 9 10 11 12 13 14 15 16
Bln-Thn 09-04 10-04 11-04 12-04 01-05 02-05 03-05 04-05
Data 0 2 16 15 15 15 9 5
No 17 18 19 20 21 22 23 24
Bln-Thn Data 05-05 8 06-05 6 07-05 8 08-05 19 09-05 10 10-05 10 11-05 8 12-05 6
Metode 6 Pembagian data training dengan metode 6 tampak pada tabel 3.12 dan
pembagian data testing dengan metode 6 tampak pada tabel 3.13.
Tabel 3.12 Data Training dengan Menggunakan Metode 6 No 1 2 3 4 5 6 7 8 9 10
Bln-Thn 07-03 08-03 09-03 10-03 11-03 12-03 01-04 02-04 03-04 04-04
Data 1 1 7 7 0 0 0 1 0 0
No 11 12 13 14 15 16 17 18 19 20
Bln-Thn 05-04 06-04 07-04 08-04 09-04 10-04 11-04 12-04 01-05 02-05
Data 0 0 27 39 21 26 13 26 24 12
No 21 22 23 24 25 26 27 28 29 30
Bln-Thn Data 03-05 18 04-05 13 05-05 26 06-05 18 07-05 15 08-05 15 09-05 9 10-05 5 11-05 8 12-05 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
Tabel 3.13 Data Testing dengan Menggunakan Metode 6 No 1 2 3 4 5 6 7 8 9 10
Bln-Thn 07-03 08-03 09-03 10-03 11-03 12-03 01-04 02-04 03-04 04-04
Data 1 2 0 0 0 2 0 0 0 2
No 11 12 13 14 15 16 17 18 19 20
Bln-Thn 05-04 06-04 07-04 08-04 09-04 10-04 11-04 12-04 01-05 02-05
Data 16 15 25 30 24 27 28 45 28 12
No 21 22 23 24 25 26 27 28 29 30
Bln-Thn Data 03-05 27 04-05 20 05-05 14 06-05 14 07-05 8 08-05 19 09-05 10 10-05 10 11-05 8 12-05 6
Antar muka Training, Testing dan Prediksi merupakan antar muka yang berfungsi sebagai tempat untuk melakukan proses training, testing dan prediksi. Antar Muka Training, Testing dan Prediksi dengan Metode 1, 2, 3, 4 dan 6 memiliki tampilan yang sama, perbedaan terletak pada penggunaan rumus di dalam implementasi program. Kabupaten, nama dealer, tahun awal dan tahun akhir yang digunakan berdasarkan pilihan dari user. Pada antar muka Training, Testing dan Prediksi terdapat popupmenu kabupaten/kotamadya, nama dealer,
tahun awal dan tahun akhir yang berfungsi untuk memilih kabupaten/kotamadya, nama dealer, tahun awal dan tahun akhir, tombol jumlah data yang berfungsi untuk menampilkan jumlah seluruh data dari tahun awal sampai dengan tahun akhir, tombol input hidden layer yang berfungsi untuk menuju ke form jumlah unit 1 atau 2 hidden layer, sesuai dengan jumlah hidden layer yang telah diinputkan sebelumnya, tombol training data yang berfungsi untuk menjalankan proses training, tombol hasil prediksi yang berfungsi untuk menampilkan nilai hasil prediksi, popupmenu bulan yang berfungsi untuk memilih bulan yang akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
diprediksi, popupmenu fungsi pelatihan yang berfungsi untuk memilih fungsi pelatihan, tombol back yang berfungsi untuk kembali ke antar muka metode pengolahan data dan tombol exit yang berfungsi untuk menampilkan Pesan Keluar. Contoh perancangan antar muka Training, Testing dan Prediksi dengan Metode 1 dapat dilihat pada gambar 3.2.
Gambar 3.2 Perancangan Antar Muka Training, Testing dan Prediksi dengan Metode 1
2. Training, Testing dan Prediksi dengan Metode 5 Antar muka Training, Testing dan Prediksi dengan Metode 5 merupakan antar muka yang berfungsi sebagai tempat untuk melakukan proses training, testing dan prediksi. Kabupaten, nama dealer, tahun awal dan tahun akhir yang akan digunakan, berdasarkan pilihan dari user. Pada antar muka Training, Testing dan Prediksi
dengan
Menggunakan
Metode
5
terdapat
popupmenu
kabupaten/kotamadya dan nama dealer yang berfungsi untuk memilih
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
kabupaten/kotamadya dan nama dealer, tombol input hidden layer yang berfungsi untuk menuju ke form jumlah unit 1 atau 2 hidden layer, sesuai dengan jumlah hidden layer yang telah diinputkan sebelumnya, popupmenu tahun training yang berfungsi untuk memasukkan urutan tahun yang akan dijadikan sebagai data training, popupmenu tahun testing yang berfungsi untuk memasukkan urutan tahun yang akan dijadikan sebagai data testing, tombol training data yang berfungsi untuk menjalankan proses training, tombol hasil prediksi yang berfungsi untuk menampilkan nilai hasil prediksi, popupmenu bulan yang berfungsi untuk memilih bulan yang akan diprediksi, tombol back yang berfungsi untuk kembali ke antar muka metode pengolahan data dan tombol exit yang berfungsi untuk menampilkan Pesan Keluar. Perancangan antar muka Training, Testing dan Prediksi dengan Metode 5 dapat dilihat pada gambar 3.3.
Gambar 3.3 Perancangan Antar Muka Training, Testing dan Prediksi dengan Metode 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
3. Jumlah Unit Hidden Layer Antar muka Jumlah Unit Hidden Layer merupakan antar muka yang berfungsi sebagai tempat untuk memasukkan jumlah unit hidden layer. Pada antar muka Jumlah Unit
Hidden Layer terdapat tombol ambil data hidden layer yang
berfungsi untuk mengambil data berupa jumlah unit hidden layer yang akan digunakan di dalam proses training. Perancangan antar muka Jumlah Unit Hidden Layer dapat dilihat pada gambar 3.4 dan 3.5.
Gambar 3.4 Perancangan Antar Muka Jumlah Unit 1 Hidden Layer
Gambar 3.5 Perancangan Antar Muka Jumlah Unit 2 Hidden Layer
4. Masukan Data Baru Antar muka Masukan Data Baru merupakan form yang berfungsi sebagai tempat untuk memasukkan data kode dealer, nama dealer, nama kabupaten, kode kabupaten, tahun dan jumlah sepeda motor dari bulan Januari sampai Desember.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
Pada antar muka Masukan Data Baru terdapat popupmenu nama kabupaten yang berfungsi untuk memilih nama kabupaten, tombol save yang berfungsi untuk menyimpan data-data, tombol change yang berfungsi untuk menampilkan antar muka Pengubahan Data, listbox jumlah motor untuk bulan Januari-Desember yang berfungsi untuk menampilkan data-data yang sudah disimpan (nama dealer, tahun dan jumlah sepeda motor untuk bulan Januari sampai Desember), tombol
menu pilihan yang berfungsi untuk menampilkan antar muka Menu Pilihan dan tombol exit yang berfungsi untuk menampilkan antar muka Pesan Keluar. Perancangan antar muka Masukan Data Baru dapat dilihat pada gambar 3.6.
Gambar 3.6 Perancangan Antar Muka Masukan Data Baru
5. Pengubahan Data Antar muka Pengubahan Data merupakan antar muka yang berfungsi sebagai tempat untuk melakukan pengubahan data-data yang sudah tersimpan di
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
dalam database. Pada antar muka Pengubahan Data terdapat popupmenu nama
kabupaten yang berfungsi untuk memilih nama kabupaten, tombol save yang berfungsi untuk menyimpan data-data, tombol menu pilihan yang berfungsi untuk menampilkan antar muka Menu Pilihan dan tombol exit yang berfungsi untuk menampilkan Pesan Keluar. Selain itu pada antar muka Pengubahan Data terdapat tempat masukan (edit) untuk kode dealer, nama dealer, kode kabupaten, tahun dan jumlah sepeda motor dari bulan Januari sampai Desember. Perancangan antar muka Pengubahan Data dapat dilihat pada gambar 3.7.
Gambar 3.7 Perancangan Antar Muka Pengubahan Data
C. Perancangan Proses Proses yang akan dilakukan di dalam Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan menggunakan Backpropagation meliputi : proses pengambilan data input dan target training, proses normalisasi data input dan target training, proses training, proses pengambilan data input dan target testing, proses normalisasi data input dan target testing, proses testing dan prediksi, proses denormalisasi data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 34
1. Proses Pengambilan Data Input dan Target Training Data yang telah terkumpul dibagi menjadi data training dan data testing. Di dalam pembagian data training dan data testing digunakan 5 (lima) metode (Lihat halaman 19-28 pada BAB III). Dari data training yang ada kemudian dikelompokkan menjadi data input dan target sesuai dengan jumlah unit input data. Contoh pengelompokan data training menjadi data input (x1-x12) dan target (t) dengan jumlah unit masukan = 12 (pengelompokan menggunakan data metode 4, lihat halaman 25 pada BAB III) :
x1 1 1 7 7 0 0 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45
x2 1 7 7 0 0 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15
x3 7 7 0 0 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15
x4 7 0 0 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9
x5 0 0 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9 5
x6 0 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9 5 8
x7 1 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9 5 8 6
x8 2 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9 5 8 6 8
x9 0 0 0 2 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9 5 8 6 8 19
x10 x11 x12 0 0 2 0 2 27 2 27 39 27 39 21 39 21 26 21 26 13 26 13 26 13 26 25 26 25 30 25 30 24 30 24 27 24 27 28 27 28 45 28 45 15 45 15 15 15 15 9 15 9 5 9 5 8 5 8 6 8 6 8 6 8 19 8 19 10 19 10 10 10 10 8
t 27 39 21 26 13 26 25 30 24 27 28 45 15 15 9 5 8 6 8 19 10 10 8 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
2. Proses Normalisasi Data Training (Pre-Processing Data) Sebelum dilakukan proses training, maka dilakukan penskalaan pada data input dan target terlebih dahulu sedemikian sehingga data – data input dan target tersebut masuk ke dalam suatu range tertentu. Proses ini dikenal dengan nama
normalisasi data. Sebelum data – data input dan target yang digunakan diimplementasikan ke dalam proses training, terlebih dahulu dilakukan proses pre-processing data berupa scaling atau normalisasi data. Rumus yang digunakan untuk menormalisasi data dengan a sebagai data minimum dan b sebagai data maksimum.:
x’ =
0.8(x − a ) + 0. 1 b−a
Contoh data sebelum dan sesudah dilakukan normalisasi tampak pada tabel 3.14.
Tabel 3.14 Data Sebelum dan Sesudah Dilakukan Normalisasi No 1 2 3 4 5 6 7 8 9 10 11 12
Data Bulan Januari Februari Maret April Mei Juni Juli Agustus September Oktober November Desember
Sebelum Normalisasi 1 7 0 1 0 0 0 0 0 0 0 16
Sesudah Normalisasi 0.1286 0.3000 0.1000 0.1286 0.1000 0.1000 0.1000 0.1000 0.1000 0.1000 0.1000 0.5571
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
3. Proses Training Setelah dilakukan proses normalisasi data training, selanjutnya dilakukan proses training. Urutan proses training yang akan dilakukan meliputi : •
Penginisialisasian bobot dan bias awal.
•
Set jumlah iterasi, nilai target error dan nilai learning rate
•
Lakukan proses feedforward pada backpropagation, selama nilai error training ≤ nilai target error.
•
Hitung perubahan bobot.
•
Hitung nilai keluaran training
•
Hitung nilai error training
4. Proses Pengambilan Data Input dan Target Testing Dari data testing yang ada (lihat halaman 25 pada BAB III), kelompokkan menjadi data input dan target sesuai dengan jumlah unit input data. Contoh pengelompokan data testing menjadi data input (x1-x12) dan target (t) dengan jumlah unit masukan = 12 : x1 0 1 0 0 0 0 0 0 0 2 16 15
x2 1 0 0 0 0 0 0 0 2 16 15 24
x3 0 0 0 0 0 0 0 2 16 15 24 12
x4 0 0 0 0 0 0 2 16 15 24 12 18
x5 0 0 0 0 0 2 16 15 24 12 18 13
x6 0 0 0 0 2 16 15 24 12 18 13 26
x7 0 0 0 2 16 15 24 12 18 13 26 18
x8 0 0 2 16 15 24 12 18 13 26 18 28
x9 0 2 16 15 24 12 18 13 26 18 28 12
x10 x11 x12 2 16 15 16 15 24 15 24 12 24 12 18 12 18 13 18 13 26 13 26 18 26 18 28 18 28 12 28 12 27 12 27 20 27 20 14
t 24 12 18 13 26 18 28 12 27 20 14 14
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
5. Proses Normalisasi Data Testing Sebelum dilakukan proses testing, maka dilakukan penskalaan pada data input dan target terlebih dahulu sedemikian sehingga data – data input dan target tersebut masuk ke dalam suatu range tertentu. Proses ini dikenal dengan nama
normalisasi data. Tata cara untuk melakukan normalisasi data testing sama seperti cara untuk menormalisasi data training.
6. Proses Testing dan Prediksi Setelah dilakukan proses normalisasi data testing, selanjutnya dilakukan proses testing dan prediksi. Urutan proses testing dan prediksi yang akan dilakukan meliputi : •
Ambil bobot akhir data training
•
Hitung nilai keluaran testing
•
Hitung nilai error testing dan rerata error testing
•
Ambil data prediksi
•
Normalisasi data prediksi
•
Hitung nilai keluaran prediksi
7. Proses Denormalisasi Data Prediksi (Post-Processing Data) Post-processing data mencakup beberapa proses yang diterapkan pada output
Neural
Network.
Seperti
halnya
pre-processing,
post-processing
sepenuhnya bergantung pada simulasi jaringan dan termasuk mendeteksi kapan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
parameter melampaui jangkauan yang dapat diterima. Pada saat melakukan postprocessing data terhadap hasil output sistem dilakukan proses perubahan data sehingga data output dapat dibaca oleh user, ini disebut sebagai proses
denormalisasi. Terkadang post-processing hanya merupakan kebalikan dari preprocessing. Rumus yang digunakan pada post-processing yaitu : Nilai baru =
(outputJST − 0.1) × (max Value − min Value ) + min Value 0.8
Dengan nilai baru adalah nilai yang telah didenormalisasi, output JST adalah output yang dihasilkan berdasarkan proses prediksi, minValue adalah nilai minimum data dan maxValue adalah nilai maksimum data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
BAB IV IMPLEMENTASI DAN PEMBAHASAN
A. Implementasi Implementasi pada pembuatan Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation ini antara lain Implementasi Sistem dan Implementasi Antar Muka. Di dalam Implementasi Sistem dan Implementasi Antar Muka digunakan software Matlab 6.5.
1. Implementasi Sistem Pada implementasi sistem ini, dilakukan beberapa langkah sebelum mengimplementasikan rancangan antar muka. Langkah – langkah tersebut antara lain (contoh pengambilan data input dan target training dan testing menggunakan metode 4):
a. Proses Pengambilan Data Input dan Target Training indek_tahun_baru=1; indek_ambil_tahun=1; reset_data1=1; for kr=1:total_data if(indek_ambil_tahun <= total_data) dt_input_sem(indek_tahun_baru) = nilai_baru(indek_ambil_tahun); if(reset_data1<=12) indek_ambil_tahun=indek_ambil_tahun+1; reset_data1=reset_data1+1; end if(reset_data1==13) reset_data1=1; indek_ambil_tahun=indek_ambil_tahun+12; end indek_tahun_baru=indek_tahun_baru+1; end end
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
Perintah untuk mengambil input data training berdasarkan array 1 dimensi. Proses pengambilan input data training dengan alur algoritma sebagai berikut : •
Untuk pengambilan data training berdasarkan pada tahun-tahun ganjil maka pengambilan data dimulai dari 1-12, kemudian dilanjutkan 25-36, 49-60 dan seterusnya.
•
Bentuk inisialisasi nilai-nilai yang akan digunakan sebagai pengolahan data yang akan dicari sebagai input data training. Inisialisasi nilai-nilai yang dipakai indek_tahun yang diset 1, indek_ambil_tahun yang diset 1, dan reset_data1 yang diset 1.
•
Mencari data yang akan digunakan sebagai pengisi elemen-elemen matrik yang dimaksudkan, dengan melakukan pencarian dengan perintah perulangan sebanyak total data.
•
Melakukan pengecekan apakah nilai pada indek_ambil_tahun kurang dari atau sama dengan total data. Jika syarat masih terpenuhi maka akan melanjutkan tugas berikutnya.
•
Melakukan pengecekan apakah nilai reset_data1 bernilai kurang dari atau sama dengan 12. Jika terpenuhi maka nilai indek_ambil_tahun hasilnya akan diakumulasikan kembali dengan penjumlahan bernilai 1. Sedangkan nilai reset_data1 akan diakumulasikan dengan penjumlahan bernilai 1.
•
Melakukan pengecekan apakah nilai reset_data1 bernilai kurang dari atau sama dengan 13. Jika terpenuhi maka nilai indek_ambil_tahun hasilnya akan dikumulasikan kembali dengan penjumlahan bernilai 12. Sedangkan nilai reset_data1 akan diset ulang menjadi bernilai 1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 41
for ba=1:jumlah_data_training ambil_input(ba)=dt_input_sem(ba); end
Perintah untuk mengambil data training berdasarkan array 1 dimensi yang diperoleh dari matrik dt_input_sem. Perintah dibawah ini hanya digunakan untuk memindahkan isi matrik dari nilai_baru untuk dipindahkan ke dalam suatu matrik dengan nama variabel baru yang diberi nama ambil input. Dapat ditarik kesimpulan bahwa matrik ambil_input sama dengan matrik dt_input_sem
nil_baru=1; for br=1:(jumlah_data_training - (jumlah_unit_masukkan)) for kl=1:jumlah_unit_masukkan if(br==1) ambil_input2(br,kl)=ambil_input(1,kl); else ambil_input2(br,kl)=ambil_input(1,(kl+nil_baru)); end end if(br>1 && br< jumlah_data_training-(jumlah_unit_masukkan)) nil_baru=nil_baru + 1; end end
Perintah untuk mengubah array 1 dimensi(bentukan sementara) menjadi array 2 dimensi(pola)
for j=1:(jumlah_data_training-(jumlah_unit_masukkan)) data_target(j)=ambil_input(j+(jumlah_unit_masukkan)); end
Perintah untuk mencari target training
b. Proses Normalisasi Data Training (Pre-Processing Data) cp=(0.8*(p-a)/(b-a))+0.1; ct=(0.8*(t-a)/(b-a))+0.1;
Perintah untuk menormalisasi data dengan a sebagai nilai minimum dan b sebagai nilai maksimum.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
c. Proses Training net=newff(minmax(cp),[layer1,1],{'logsig','logsig','purelin'},fs_pelatihan);
Perintah konstruksi jaringan Backpropagation.
bobot_awal_input=net.IW{1,1}; bobot_awal_bias_input=net.b{1}; bobot_awal_lapisan1=net.LW{2,1}; bobot_awal_bias_lapisan1=net.b{2};
Perintah untuk mengeset bobot2 awal.
net.trainParam.epochs=iterasi; net.trainParam.goal=target_error; net.trainParam.lr=nil_lr; net.trainParam.show=25;
Perintah untuk mengeset nilai dari jumlah iterasi (epochs), target error dan learning rate.
tic; net2 = train(net,cp,ct); net=init(net); nil_wkt = toc;
Perintah untuk menghitung nilai net dan menampilkan waktu pada proses training.
bobot_akhir_input=net2.IW{1,1}; bobot_akhir_bias_input=net2.b{1}; bobot_akhir_lapisan=net2.LW{2,1}; bobot_akhir_bias_lapisan=net2.b{2};
Melihat bobot akhir input, lapisan dan bias x = sim(net2,cp); nilai_net = net2; net2=init(net2); clear net;
Perintah untuk menghitung keluaran dari proses training.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
d. Proses Pengambilan Data Input dan Target Testing ax=13; ay=1; reset_data2=12; for rx=1:total_data if(ax < total_data) dt_input_testing(ay)=nilai_baru(ax); if(reset_data2 >=12 & reset_data2 <24) ax=ax+1; reset_data2=reset_data2+1; end if(reset_data2==24) reset_data2=12; ax=ax+12; end ay=ay+1; end end for ba=1:jumlah_data_testing ambil_input_testing(ba)=dt_input_testing(ba); end jumlah_data_testing = total_data - jumlah_data_training; nil_test=1; for bz=1:(jumlah_data_testing-(jumlah_unit_masukkan)) for kz=1:jumlah_unit_masukkan if(bz==1) ambil_data_testing(bz,kz)=ambil_input_testing(1,kz); else ambil_data_testing(bz,kz)=ambil_input_testing(1,(kz+nil_test)); end end if(bz>1 && bz < (jumlah_data_testing-(jumlah_unit_masukkan))) nil_test=nil_test + 1; end end
Perintah untuk mengambil data input testing
z=1; for j=1:(jumlah_data_testing-(jumlah_unit_masukkan)) data_target_testing(z)=ambil_input_testing(j+(jumlah_unit_masukkan)); z=z+1; end
Perintah untuk mengambil data target testing
e. Proses Normalisasi Data Testing ccek = (0.8*(cek-a)/(b-a))+0.1; ctcek = (0.8*(tcek-a)/(b-a))+0.1;
Perintah untuk menormalisasi data dengan a sebagai nilai minimum dan b sebagai nilai maksimum.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
f. Proses Testing dan Prediksi y = sim(net2,ccek); error = abs(y-ctcek); rerata_error = mean(error); set(handles.edit_rerata_error_testing,'String',num2str(rerata_error))
Perintah untuk menghitung keluaran proses testing.
z=1; for j=(data_diambil_awal+1):total_data data_prediksi(z)=nilai_baru(j); z=z+1; end jumlah_data_prediksi = 12 + jumlah_unit_masukkan; nil_pred=1; for bz=1:(jumlah_data_prediksi-jumlah_unit_masukkan) for kz=1:jumlah_unit_masukkan if(bz==1) ambil_data_prediksi(bz,kz)=data_prediksi(1,kz); else ambil_data_prediksi(bz,kz)=data_prediksi(1,(kz+nil_pred)); end end if(bz>1 && bz < jumlah_data_prediksi) nil_pred=nil_pred + 1; end end
Perintah untuk mengambil data prediksi dt_pred = (0.8*(ambil_nilai_prediksi-a)/(b-a))+0.1;
Perintah untuk menormalisasi data prediksi
y = sim(net2,dt_pred);
Perintah untuk menghitung keluaran prediksi
g. Proses Denormalisasi Data Prediksi (Post-Processing Data) hasil_prediksi = abs(floor(((y-0.1)*(b-a))/0.8)+a);
Perintah untuk mendenormalisasi data dengan a sebagai nilai minimum, b sebagai nilai maksimum dan y sebagai keluaran prediksi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 45
2. Implementasi Antar Muka Implementasi antar muka Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation adalah implementasi ‘Training, Testing dan Prediksi dengan Metode 1, 2, 3, 4 dan 6’, implementasi Jumlah Unit 1 dan 2 Hidden Layer, implementasi Masukan Data Baru dan implementasi Pengubahan Data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
a. Implementasi Antar Muka Training, Testing dan Prediksi Implementasi antar muka ‘Training, Testing dan Prediksi dengan Metode 1, 2, 3, 4 dan 6’ memiliki tampilan yang sama. Antar muka ‘Training, Testing dan Prediksi’ merupakan antar muka yang berfungsi sebagai tempat untuk melakukan proses training, testing dan prediksi, dengan menggunakan metode 1 , 2, 3, 4 dan 6. Antar muka ‘Training, Testing dan Prediksi dengan Metode 1 , 2, 3, 4 dan 6’ memiliki tombol ‘Jumlah Data’, ‘Input Hidden Layer’, ‘Training Data’, ‘Hasil Prediksi’, ‘Back’ dan ‘Exit’. Hasil implementasi ‘Training, Testing dan Prediksi dengan Metode 1’ dapat dilihat pada gambar 4.1.
Gambar 4.1 Implementasi Training, Testing dan Prediksi dengan Metode 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
b. Implementasi Antar Muka Training, Testing dan Prediksi dengan Metode 5 Antar muka ‘Training, Testing dan Prediksi dengan Metode 5’ merupakan antar muka yang berfungsi sebagai tempat untuk melakukan proses training, testing dan prediksi, dengan menggunakan metode 5. Antar muka ‘Training, Testing dan Prediksi dengan Metode 5’ memiliki tombol ‘Input Hidden Layer’, ‘Training Data’, ‘Hasil Prediksi’, ‘Back’ dan ‘Exit’. Pada pemakaian popupmenu tahun training dan tahun testing, jika hanya ingin memasukkan 3 tahun pada data training, maka 2 tahun yang lainnya harus diisikan salah satu tahun yang sama dengan tahun yang ingin dimasukkan di dalam proses training dan testing. Hasil implementasi ‘Training, Testing dan Prediksi dengan Metode 5’ dapat dilihat pada gambar 4.2.
Gambar 4.2 Implementasi Training, Testing dan Prediksi dengan Metode 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
c. Implementasi Antar Muka Jumlah Unit 1 dan 2 Hidden Layer Antar muka ‘Jumlah Unit 1 dan 2 Hidden Layer’ merupakan antar muka yang berfungsi untuk memasukkan jumlah unit pada 1 dan 2 hidden layer. Antar muka ‘Jumlah Unit 1 dan 2 Hidden Layer’ memiliki tombol ‘Ambil Data Hidden Layer’. Hasil implementasi ‘Jumlah Unit 1 dan 2 Hidden Layer’ dapat dilihat pada gambar 4.3 dan hasil implementasi ‘Jumlah Unit 2 Hidden Layer’ dapat dilihat pada gambar 4.4.
Gambar 4.3 Implementasi Jumlah Unit 1 Hidden Layer
Gambar 4.4 Implementasi Jumlah Unit 2 Hidden Layer
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
d. Implementasi Antar Muka Masukan Data Baru Antar muka ‘Masukan Data Baru’ merupakan antar muka yang berfungsi untuk memasukkan data baru. Antar muka ‘Masukan Data Baru’ memiliki tombol ‘Save’, ‘Change’ yang berfungsi jika ingin melakukan pengubahan data, tombol ‘Menu Pilihan’ dan ‘Exit’. Hasil implementasi ‘Masukan Data Baru’ dapat dilihat pada gambar 4.5.
Gambar 4.5 Implementasi Masukan Data Baru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 50
e. Implementasi Antar Muka Pengubahan Data Antar muka ‘Pengubahan Data’ merupakan antar muka yang berfungsi jika ingin melakukan pengubahan data. Antar muka ‘Pengubahan Data’ memiliki tombol ‘Save’ yang berfungsi untuk menyimpan data – data yang telah diubah, tombol ‘Menu Pilihan’ dan ‘Exit’. Hasil implementasi ‘Pengubahan Data’ dapat dilihat pada gambar 4.6.
Gambar 4.6 Implementasi Pengubahan Data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
B. Pembahasan Program yang telah dibuat akan diuji dengan menggunakan seperangkat komputer yang menggunakan spesifikasi sebagai berikut : Prosesor : Intel Pentium 4 Memori : 256 MB Pengujian program prediksi penjualan sepeda motor meliputi pengujian fungsi pelatihan terbaik untuk mendapatkan proses training dengan waktu tercepat, pengujian pengaruh banyak iterasi terhadap nilai MSE dan rerata error testing, pengujian pengaruh target error terhadap banyak iterasi dan rerata error testing, pengujian pengaruh jumlah unit masukan pada masing – masing jenis data training dan testing terhadap rerata nilai testing, pengujian pengaruh banyak unit dalam lapisan tersembunyi terhadap rerata error. Selain dilakukan pengujian – pengujian, dilakukan juga pengamatan hasil prediksi yang telah didapat untuk memberikan kesimpulan akhir. Semua pengujian menggunakan data yang diambil dari data Dealer ABC Motor periode tahun 2001-2005. Flowchart urutan pengujian dan pengamatan hasil prediksi dapat dilihat pada gambar 4.7.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
Gambar 4.7 Urutan Pengujian dan Pengamatan Hasil Prediksi
1. Menentukan Fungsi Pelatihan yang Tercepat Pengujian dilakukan dengan menggunakan satu hidden layer dengan jumlah unit : 10 dan dua hidden layer dengan jumlah unit : 3 (layar tersembunyi pertama) dan 4 (layar tersembunyi kedua). Penggunaan bobot antara fungsi pelatihan yang satu dengan yang lain sama. Hasil pengujian beberapa fungsi pelatihan dengan arsitektur 12 − 10 − 1 tampak pada tabel 4.1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
Tabel 4.1 Hasil Pengujian Fungsi Pelatihan dengan Arsitektur 12 − 10 − 1 Fungsi Pelatihan
MSE
traingd
0.0194063
traingdm traingda traingdx trainrp traincgf traincgp traincgb trainscg trainbfg trainoss trainlm
0.00999978 0.00988252 0.00984625 0.00948291 0.00983747 0.00997385 0.00948675 0.00986143 0.00928161 0.00997065 0.00877592
Berhenti pada epoch keTidak selesai selama 20000 epoch. 17202 2387 491 55 25 29 8 33 19 75 3
Waktu training (seconds) 59.2500 55.4210 7.5630 1.5630 0.3280 0.5940 0.6250 0.3280 0.5310 0.6720 1.0780 0.2500
Pengujian Fungsi Pelatihan dengan Satu Hidden Layer untuk Mendapatkan Proses Training dengan Waktu Tercepat 20000
Epoch
15000 epoch
10000 5000
p tra in cg f tra in cg p tra in cg b tra in sc g tra in bf g tra in os s tr a in lm
tra in r
tra in gd tra in gd m tra in gd a tra in gd x
0
Fungsi Pelatihan
Gambar 4.8 Pengujian Fungsi Pelatihan dengan dengan Arsitektur 12 − 10 − 1
Terlihat besarnya perbedaan kecepatan diantara fungsi pelatihan yang berbeda. Dari pengujian fungsi pelatihan di atas, didapatkan hasil bahwa fungsi pelatihan dengan menggunakan Algoritma Levenberg-Marquardt (trainlm) merupakan fungsi pelatihan tercepat. Maka dalam pengujian – pengujian dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 54
menggunakan program, selanjutnya akan digunakan fungsi pelatihan dengan menggunakan Algoritma Levenberg-Marquardt (trainlm). Dengan menggunakan fungsi pelatihan Algoritma Levenberg-Marquardt (trainlm) maka akan dihasilkan rerata error testing : 0.1614. Hasil pengujian beberapa fungsi pelatihan dengan arsitektur 12 − 3 − 4 − 1 tampak pada tabel 4.2.
Tabel 4.2 Hasil Pengujian Fungsi Pelatihan dengan Arsitektur 12 − 3 − 4 − 1 Fungsi Pelatihan
MSE
traingd
0.0167405
traingdm
0.0250803
traingda traingdx trainrp traincgf traincgp traincgb trainscg trainbfg trainoss trainlm
0.00995369 0.00991612 0.00999932 0.00990678 0.00993761 0.00917127 0.00999874 0.00927836 0.00999293 0.00798728
Berhenti pada epoch keTidak selesai selama 20000 epoch Tidak selesai selama 20000 epoch 2570 578 2522 104 34 20 101 84 29 4
Waktu training (seconds) 73.2190 80.0160 10.0930 2.2340 10 1.3750 0.7500 0.4220 0.9690 1.4840 0.6250 0.2500
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55
Pengujian Fungsi Pelatihan dengan Dua Hidden Layer untuk Mendapatkan Proses Training dengan Waktu Tercepat 25000
Epoch
20000 15000
epoch
10000 5000
tra in g tr a d in gd m tr a in gd a tr a in gd x tra in rp tra in cg tr a f in cg p tr a in cg b tra in sc g tra in bf g tra in os s tra in lm
0
Fungsi Pelatihan
Gambar 4.9 Pengujian Fungsi Pelatihan dengan dengan Arsitektur 12 − 3 − 4 − 1
Terlihat besarnya perbedaan kecepatan diantara fungsi pelatihan yang berbeda. Dari pengujian fungsi pelatihan di atas, didapatkan hasil bahwa fungsi pelatihan dengan menggunakan Algoritma Levenberg-Marquardt (trainlm) merupakan fungsi pelatihan tercepat. Maka dalam pengujian – pengujian dengan menggunakan program, selanjutnya akan digunakan fungsi pelatihan dengan menggunakan Algoritma Levenberg-Marquardt (trainlm). Dengan menggunakan fungsi pelatihan Algoritma Levenberg-Marquardt (trainlm) maka akan dihasilkan rerata error testing : 0.1518.
2. Menentukan Jumlah Unit Masukan dan Metode Pembagian Data Training dan Testing Pengujian jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) dilakukan terhadap masing – masing jenis data training dan testing.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 56
Pengujian dilakukan dengan menggunakan dua hidden layer dengan jumlah unit : 3 (layar tersembunyi pertama) dan 4 (layar tersembunyi kedua), karena dari pengujian di atas ditemukan bahwa pemakaian dua hidden layer memiliki rerata error testing yang lebih kecil daripada pemakaian satu hidden layer. Pengujian menggunakan fungsi pelatihan : Algoritma Levenberg-Marquardt (trainlm), maksimum epoh = 20000, kinerja tujuan (target error) = 0.01, learning rate = 0.01, jumlah epoch yang akan ditunjukkan kemajuannya (EpohShow) = 1000. Dilakukan pengujian sebanyak tiga kali pada metode data training dan testing pertama (metode 1), untuk mendapatkan bobot terbaik. Bobot tersebut akan digunakan untuk pengujian pada masing – masing metode data training dan testing (metode 1 – metode 6). Di dalam pembagian data training dan data testing digunakan 5 (lima) metode (Lihat halaman 19 pada BAB III).
a. Pembagian Data Training dan Testing dengan Menggunakan Metode 1 Hasil pengujian untuk jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) dengan menggunakan metode 1 :
Tabel 4.3 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 1 Unit Masukan
MSE
3 4 5 6 7
0.00859248 0.00953041 0.00961667 0.00959077 0.00996899
Berhenti pada epoch ke8 7 23 35 10
Waktu Training 0.1870 0.2030 0.2970 0.3750 0.2190
Rerata Error Testing 0.1176 0.1241 0.1362 0.0872 0.1184
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 57
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
0.00924536 0.00979398 0.00965627 0.00973238 0.00798728 0.00973016 0.00739326 0.00873884 0.00730128 0.00779799 0.00837191 0.00955608 0.00749467 0.00750325 0.00747631 0.0075206 0.00599454
5 6 12 9 4 11 6 4 6 8 11 3 6 3 4 3 3
0.1870 0.1560 0.2500 0.2030 0.2500 1.8750 0.1720 0.1880 0.2650 0.2810 0.3120 0.1720 0.2190 0.2500 0.2350 0.2350 0.2500
0.1006 0.1735 0.1485 0.1936 0.1518 0.1003 0.1297 0.3098 0.1841 0.2651 0.8649 0.0618 0.1338 0.2635 0.1866 0.1366 0.0610
Rerata Error Testing
Pengujian Data - data Pada Tahun Terakhir Digunakan Sebagai Acuan untuk Memperolh Target Data Testing 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Unit Masukan
rerata error testing
Gambar 4.10 Pengujian Unit Masukan dengan Menggunakan Metode 1
b. Pembagian Data Training dan Testing dengan Menggunakan Metode 2 Hasil pengujian untuk jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 58
Tabel 4.4 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 2 Unit Masukan 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
MSE
Berhenti pada epoch ke-
Waktu Training
0.00970619 0.00996358 0.00777157 0.00940429 0.00940498 0.00965967 0.00866342 0.00833991 0.00810026 0.00829694 0.00902062 0.00738256 0.00746094 0.00285307 0.00607911 0.0024545 0.00747101 0.00506108 0.0032589 0.0063898 0.00623074 0.00462604
60 17 6 17 5 5 13 12 8 8 3 11 2 7 8 2 3 3 10 1 1 1
0.5940 0.2340 0.1720 0.2340 0.1710 0.1720 0.2340 0.2180 0.1870 0.3120 0.4370 0.2500 0.1720 0.2500 0.2810 0.1880 0.1870 0.1720 0.3910 0.1880 0.1720 0.1720
Rerata Error Testing 0.4812 0.3847 0.4461 0.2102 0.2125 0.2011 0.3755 0.3469 0.2770 0.2936 0.1977 0.4865 0.2808 0.1757 0.3226 0.1501 0.1213 0.1698 0.4115 0.1276 0.1277 0.1419
Rerata Error Testing
Pengujian Data - data Pada Bulan Ganjil Digunakan Sebagai Data Training dan Data - data Pada Bulan Genap Digunakan Sebagai Data Testing 0.6 0.5 0.4 0.3 0.2 0.1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Jumlah Unit Masukan
rerata error testing
Gambar 4.11 Pengujian Unit Masukan dengan Menggunakan Metode 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 59
c. Pembagian Data Training dan Testing dengan Menggunakan Metode 3 Hasil pengujian untuk jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) :
Tabel 4.5 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 3 Unit Masukan
MSE
Berhenti pada epoch ke-
Waktu Training
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
0.00734945 0.00901276 0.00960151 0.00979861 0.00712282 0.00624053 0.00783384 0.00869558 0.00845133 0.00785693 0.00302184 0.00999364 0.00893908 0.00451988 0.00991381 0.0088118 0.0062623 0.00339464 0.00308279 0.00615971 0.00697247 0.00578318
5 7 10 5 5 5 5 2 7 9 4 48 27 6 15 25 5 9 2 4 3 3
0.1720 0.2030 0.2180 0.1400 0.1870 0.1870 0.1720 0.1410 0.1720 1.4060 0.2030 0.5940 0.5470 0.2500 0.3590 0.5460 0.1710 0.2190 0.2810 0.2650 0.2340 0.2340
Rerata Error Testing 0.1406 0.2044 0.2050 0.2284 0.1204 0.1275 0.1386 0.2226 0.2829 1.9995 0.2263 0.2461 0.2335 0.2315 0.3360 0.1022 0.0718 0.6064 1.1802 0.9695 0.0921 0.5344
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 60
Rerata Error Testing
Pengujian Setengah dari Seluruh Data Digunakan Sebagai Data Training dan Setengah yang Lainnya Digunakan Sebagai Data Testing 2.5 2 1.5 1 0.5 0 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Jumlah Unit Masukan
rerata error testing
Gambar 4.12 Pengujian Unit Masukan dengan Menggunakan Metode 3
d. Pembagian Data Training dan Testing dengan Menggunakan Metode 4 Hasil pengujian untuk jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) :
Tabel 4.6 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 4 Unit Masukan
MSE
Berhenti pada epoch ke-
Waktu Training
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
0.00982333 0.00989614 0.00968865 0.00845464 0.00773993 0.0935055 0.00998974 0.00450712 0.00950946 0.0071233 0.00858826 0.00799746 0.0074203 0.0083267 0.00962625 0.00765747
28 30 12 30 8 12 12 7 11 7 8 6 2 4 4 2
0.3750 0.4060 0.2190 0.3590 0.2350 0.2350 0.2660 0.2030 0.2350 0.2650 0.2960 0.1880 0.2030 0.2650 0.2190 0.2030
Rerata Error Testing 0.1384 0.1390 0.1435 0.3297 0.1682 0.1896 0.1948 0.1919 0.1484 0.1562 0.1738 0.0657 0.0719 0.3208 0.1197 0.1577
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 61
19 20 21 22 23 24
0.00609518 0.00447771 0.00373543 0.00413036 0.0325063 0.00559029
2 6 8 3 3 1
0.1410 0.2030 0.3290 0.2190 0.2030 0.1410
0.2631 0.0549 0.5491 0.1241 0.0246 -
Rerata Error Testing
Pengujian Data - data Pada Tahun Ganjil Digunakan Sebagai Data Training dan Data - data Pada Tahun Genap Digunakan Sebagai Data Testing 0.6 0.5 0.4 0.3 0.2 0.1 0 3 4 5
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Jumlah Unit Masukan
rerata error testing
Gambar 4.13 Pengujian Unit Masukan dengan Menggunakan Metode 4
e. Pembagian Data Training dan Testing dengan Menggunakan Metode 5 Hasil pengujian untuk jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) :
Tabel 4.7 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 5 Unit Masukan
MSE
Berhenti pada epoch ke-
Waktu Training
3 4 5 6 7 8 9
0.00970848 0.00926816 0.00935271 0.00902925 0.00862828 0.00963749 0.0094849
20 17 86 36 11 9 6
0.2650 0.2660 0.8280 0.3910 0.2810 0.2190 0.1880
Rerata Error Testing 0.1252 0.1795 0.1912 0.1403 0.1251 0.2322 0.3864
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 62
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
0.00712303 0.0089277 0.0092696 0.0083236 0.00804108 0.00829536 0.00934673 0.00822343 0.00936274 0.00732684 0.00999925 0.0075977 0.00892511 0.0252278 0.00592129
7 8 3 6 4 2 6 4 2 3 5 24 3 3 1
0.2350 0.2030 0.2190 0.2340 0.1560 0.2500 0.2660 0.2190 0.2190 0.1720 0.2190 0.5310 0.2340 0.2500 0.1250
0.2896 0.2195 0.2796 0.8336 0.2355 0.2431 0.0923 0.3146 0.2919 0.4524 0.2099 0.7397 0.2159 0.2639 -
Rerata Error Testing
Pengujian Pengambilan Data Training dan Testing Dilakukan Secara Acak Berdasarkan Tahun 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 3 4
5 6 7 8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Jumlah Unit Masukan
rerata error testing
Gambar 4.14 Pengujian Unit Masukan dengan Menggunakan Metode 5
f. Pembagian Data Training dan Testing dengan Menggunakan Metode 6 Hasil pengujian untuk jumlah unit masukan yang berbeda – beda (3 – 24 unit masukan) tampak pada tabel 4.8.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 63
Tabel 4.8 Hasil Pengujian Unit Masukan dengan Menggunakan Metode 6 Unit Masukan 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
MSE
Berhenti pada epoch ke-
Waktu Training
0.00999563 0.00996076 0.00625079 0.00791212 0.00999169 0.00890743 0.0065672 0.00603445 0.00695347 0.0098678 0.00395648 0.00233022 0.00747032 0.00784561 0.00719932 0.00734078 0.00394905 0.00539858 0.00814626 0.00926222 0.0093086 0.0048728
64 39 19 12 9 13 13 4 6 7 4 4 3 5 3 2 2 2 1 1 1 1
0.6720 0.4370 0.2500 0.2030 0.2350 0.2190 0.2650 0.1870 0.1720 0.2970 0.1720 0.1250 0.2340 0.2190 0.2350 0.1870 0.1560 0.1570 0.1560 0.1720 0.1870 0.1410
Rerata Error Testing 0.2548 0.3528 0.4505 0.2204 0.3591 0.1984 0.1665 0.2051 0.1896 0.1726 0.1459 0.1401 0.1574 0.1772 0.1246 0.1327 0.0817 0.0791 0.0786 0.0872 0.0690 0.0903
Pengujian Pengambilan Data Setiap Enam Bulan Secara Bergantian Untuk Data Training dan Testing Rerata Error Testing
0.5 0.4 0.3 0.2 0.1
Jumlah Unit Masukan
23
21
19
17
15
13
11
9
7
5
3
0
Rerata Error Testing
Gambar 4.15 Pengujian Unit Masukan dengan Menggunakan Metode 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 64
Hasil seluruh pengujian pengaruh jumlah unit masukan pada masing – masing jenis data training dan testing terhadap rerata error testing dapat dibuat sebuah grafik keseluruhannya yang tampak pada gambar 4.16.
Pengujian Pengaruh Jumlah Unit Masukan Pada Masing-Masing Metode Pembagian Data Training dan Testing Terhadap Rerata Error Testing
Rerata Error Testing
2.5 2
Metode 1 Metode 2
1.5
Metode 3
1
Metode 4 Metode 5
0.5
Metode 6
0 3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Jumlah Unit Masukan
Gambar 4.16 Pengujian Unit Masukan dengan Menggunakan Metode 1−6
Dari gambar grafik di atas, dapat disimpulkan bahwa pemilihan data training dan testing dengan menggunakan metode 4 (pencarian data training dan testing berdasarkan tahun ganjil dan genap) mempunyai tingkat kekuratan yang paling baik (rerata error testing paling kecil).
3. Menentukan Jumlah Unit Lapisan Tersembunyi Pengujian dilakukan terhadap satu hidden layer dan dua hidden layer, dengan jumlah unit yang berbeda – beda. Pengujian menggunakan fungsi pelatihan :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 65
Algoritma Levenberg-Marquardt (trainlm), maksimum epoh = 20, kinerja tujuan (target error) = 0.01, learning rate = 0.01, jumlah epoch yang akan ditunjukkan kemajuannya (EpohShow) = 10, jenis data training dan testing dengan metode 4 (pencarian data training dan testing berdasarkan tahun ganjil dan genap).
a. Pengujian Satu Hidden Layer Terhadap Rerata Error Testing Pengujian dilakukan pada jumlah unit masukan yang berbeda – beda (6 – 23 unit masukan). Pengujian juga dilakukan pada satu hidden layer dengan jumlah unit yang berbeda – beda (3-5 unit). Hasil seluruh pengujian satu hidden layer terhadap rerata nilai testing dapat dibuat sebuah grafik keseluruhannya yang tampak pada gambar 4.17.
Pengujian Satu Hidden Layer Terhadap Rerata Error Testing
Rerata Error Testing
0.35 0.3 0.25
3 Unit
0.2
4 unit 5 unit
0.15 0.1 0.05
22
20
18
16
14
12
10
8
6
0 Jumlah Unit Masukan
Gambar 4.17 Pengujian Satu Hidden Layer Terhadap Rerata Error Testing
Dari gambar grafik di atas, dapat disimpulkan bahwa penggunaan hidden layer dengan jumlah unit yang berbeda – beda tidak mengalami perubahan yang sangat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 66
berarti pada rerata error testing. Penggunaan satu hidden layer yang menghasilkan rerata error testing terkecil terlihat pada pemakaian 3 unit hidden layer.
0.25 0.2 0.15
3 Unit
0.1 0.05
22
20
18
16
14
12
8
10
0
6
Rerata Error Testing
Satu Hidden Layer yang Memiliki Rerata Error Testing Terkecil
Jumlah Unit Masukan
Gambar 4.18 Satu Hidden Layer dengan Rerata Error Testing Terkecil
Dari gambar grafik di atas, dapat disimpulkan bahwa unit masukan yang berjumlah 12 sampai 16 merupakan jumlah unit masukan yang dapat menghasilkan rerata error testing yang terbaik, atau dapat juga dikatakan bahwa unit masukan dengan jumlah 12 sampai 16 lebih akurat untuk memprediksikan jumlah pengguna kredit penjualan motor di dealer ABC Motor.
b. Pengujian Dua Hidden Layer Terhadap Rerata Error Testing Pengujian dilakukan pada jumlah unit masukan yang berbeda – beda (6 – 23 unit masukan). Pengujian juga dilakukan pada dua hidden layer dengan jumlah unit yang berbeda – beda (3 unit pada layar tersembunyi pertama dan 3 unit pada layar tersembunyi kedua, 3 unit pada layar tersembunyi pertama dan 2 unit pada layar tersembunyi kedua, 4 unit pada layar tersembunyi pertama dan 4 unit pada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 67
layar tersembunyi kedua, 4 unit pada layar tersembunyi pertama dan 3 unit pada layar tersembunyi kedua, 4 unit pada layar tersembunyi pertama dan 2 unit pada layar tersembunyi kedua). Hasil seluruh pengujian satu hidden layer terhadap rerata nilai testing dapat dibuat sebuah grafik keseluruhannya yang tampak pada gambar 4.19.
Pengujian Dua Hidden Layer Terhadap Rerata ErrorTesting 3 unit 3 unit
Rerata Error Testing
0.3 0.25
3 unit 2 unit
0.2 4 unit 4 unit
0.15 0.1
4 unit 3 unit
0.05
22
20
18
16
14
12
10
4 unit 2 unit 8
6
0 Jumlah Unit Masukan
Gambar 4.19 Pengujian Dua Hidden Layer Terhadap Rerata Error Testing
Dari gambar grafik di atas, dapat disimpulkan bahwa penggunaan hidden layer dengan jumlah unit yang berbeda – beda tidak mengalami perubahan yang sangat berarti pada rerata error testing. Penggunaan dua hidden layer yang menghasilkan rerata error testing terkecil terlihat pada pemakaian 4 unit pada layar tersembunyi pertama dan 2 unit pada layar tersembunyi kedua.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 68
Rerata Error Testing
0.18 0.16
Dua Hidden Layer yang Memiliki Rerata Error Testing Terkecil
0.14 0.12 0.1
4 unit 2 unit
0.08 0.06 0.04 0.02 0 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Jumlah Unit Masukan
Gambar 4.20 Dua Hidden Layer dengan Rerata Error Testing Terkecil
Dari gambar grafik di atas, dapat disimpulkan bahwa unit masukan yang berjumlah 12 sampai 16 merupakan jumlah unit masukan yang dapat menghasilkan rerata error testing yang terbaik, atau dapat juga dikatakan bahwa unit masukan dengan jumlah 12 sampai 16 lebih akurat untuk memprediksikan jumlah pengguna kredit penjualan motor di dealer ABC Motor.
4. Pengujian Banyak Iterasi Terhadap MSE dan Rerata Error Testing Pengujian dilakukan terhadap dua hidden layer dengan jumlah unit : 4 pada layar tersembunyi pertama dan jumlah unit : 2 pada layar tersembunyi kedua. Dipilih penggunaan dua hidden layer dengan jumlah unit : 4 pada layar tersembunyi pertama dan jumlah unit : 2 pada layar tersembunyi kedua, karena hidden layer tersebut mempunyai rerata error testing yang lebih kecil dibandingkan dengan satu hidden layer dengan jumlah unit : 3. Pengujian menggunakan fungsi pelatihan : Algoritma Levenberg-Marquardt (trainlm),
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 69
kinerja tujuan (target error) = 0, learning rate = 0.01, pemilihan data training dan testing dengan menggunakan metode 4 (pencarian data training dan testing berdasarkan tahun ganjil dan genap), jumlah unit masukan : 12. Pengujian pengaruh banyak iterasi terhadap MSE dan rerata error testing dengan menggunakan arsitektur 12-4-2-1 tampak pada tabel 4.9.
Tabel 4.9 Hasil Pengujian Banyak Iterasi Terhadap MSE dan Rerata Error Testing
Banyak Iterasi 1 4 5 10 12 14 50 100
MSE 0.0384763 0.00931661 0.00867366 0.000180514 1.65795e-010 7.67355e-031 7.67355e-031 7.67355e-031
Rerata Error Testing 0.1622 0.0834 0.0861 0.1574 0.1641 0.1641 0.1641 0.1641
Pengujian Pengaruh Banyak Iterasi Terhadap MSE
MSE
5.00E-03 4.00E-03 3.00E-03 2.00E-03 1.00E-03 0.00E+00 1
4
5
10
12
Banyak Iterasi
14
50
100 MSE
Gambar 4.21 Pengujian Banyak Iterasi Terhadap MSE
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 70
Rerata Error Testing
Pengujian Pengaruh Banyak Iterasi Terhadap Rerata Error Testing 0.2 0.15 0.1 0.05 0 1
4
5
10
12
Banyak Iterasi
14
50
100
rerata error testing
Gambar 4.22 Pengujian Banyak Iterasi Terhadap Rerata Error Testing
Hasil dari pengujian pengaruh banyak iterasi terhadap nilai MSE adalah : semakin banyak jumlah iterasi, maka nilai MSE yang dihasilkan akan semakin kecil. Dalam pengujian diatas, nilai MSE bernilai tetap pada jumlah iterasi 14. Jumlah iterasi yang menghasilkan rerata error testing terkecil adalah : 4.
5. Pengujian Target Error Terhadap Banyak Iterasi Pengujian dilakukan terhadap dua hidden layer dengan jumlah unit : 4 pada layar tersembunyi pertama dan jumlah unit : 2 pada layar tersembunyi kedua. Dipilih penggunaan dua hidden layer dengan jumlah unit : 4 pada layar tersembunyi pertama dan jumlah unit : 2 pada layar tersembunyi kedua, karena hidden layer tersebut mempunyai rerata error testing yang lebih kecil dibandingkan dengan satu hidden layer dengan jumlah unit : 3. Pengujian menggunakan fungsi pelatihan : Algoritma Levenberg-Marquardt (trainlm), learning rate = 0.01, jumlah iterasi = 4, pemilihan data training dan testing dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 71
menggunakan metode 4 (pencarian data training dan testing berdasarkan tahun ganjil dan genap), jumlah unit masukan : 12. Pengujian target error terhadap banyak iterasi dan rerata error testing dengan menggunakan arsitektur 12-4-2-1 tampak pada tabel 4.10.
Tabel 4.10 Hasil Pengujian Target Error terhadap Banyak Iterasi dan Rerata Error Testing Target Error 10-1 10-2 10-3 10-4 10-5 10-6 10-7 10-8 10-9 10-10 10-11 10-12 10-13 10-14 10-15 10-16 10-17 10-18 10-19 10-20
Banyak Iterasi 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
Rerata Error Testing 0.1622 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834 0.0834
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 72
Target Error
10 -1 9
10 -1 7
10 -1 5
10 -1 3
-9
10 -1 1
10
-7 10
-5 10
10
10
-3
5 4 3 2 1 0
-1
Banyak Iterasi
Pengujian Pengaruh Target Error Terhadap Banyak Iterasi
Banyak Iterasi
Gambar 4.23 Pengujian Target error Terhadap Banyak Iterasi
Target Error
-1 9 10
-1 7 10
-1 5 10
-1 3 10
-1 1
10
10 -9
10 -7
10 -5
10 -3
0.2 0.15 0.1 0.05 0 10 -1
Rerata Error Testing
Pengujian Pengaruh Target Error Terhadap Rerata Error Testing
rerata error testing
Gambar 4.24 Pengujian Target Error Terhadap Rerata Error Testing
Hasil dari pengujian pengaruh target error terhadap banyak iterasi dan rerata error testing dengan menggunakan dua hidden layer adalah : semakin kecil nilai target error, maka jumlah iterasi yang dihasilkan akan semakin kecil. Dalam pengujian diatas, banyak iterasi berjumlah tetap pada target error : 10-2. Target error yang menghasilkan rerata error testing terkecil adalah : 10-2.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 73
6. Pengamatan Hasil Prediksi Proses prediksi menggunakan fungsi pelatihan : Algoritma LevenbergMarquardt (trainlm), arsitektur jaringan : 12 − 4 − 2 − 1, kinerja tujuan (target error) = 0.01, learning rate = 0.01, jumlah iterasi = 4, jenis data training dan testing metode 4 (pencarian data training dan testing berdasarkan tahun ganjil dan genap). Dari proses prediksi terhadap data ABC Motor periode tahun 2001 – 2005, menghasilkan data hasil prediksi untuk tahun 2006 yang tampak pada tabel 4.11.
Tabel 4.11 Hasil Prediksi Data ABC Motor untuk Tahun 2006 No 1 2 3 4 5 6 7 8 9 10 11 12
Bulan Januari Februari Maret April Mei Juni Juli Agustus September Oktober November Desember
Data Hasil Prediksi 5 7 22 4 1 2 1 2 1 3 14 5
Dari hasil prediksi yang telah didapat, maka dapat disimpulkan bahwa prediksi minat pembeli sepeda motor untuk Dealer ABC Motor dengan menggunakan jasa PT. Adira Dinamika Multifinance pada tahun 2006 mengalami peningkatan di bulan Maret dan November 2006.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 74
BAB V PENUTUP
A. Kesimpulan Dari hasil analisa dan implementasi Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation, dapat ditarik kesimpulan, yaitu : •
Penggunaan bobot yang berbeda – beda dapat menghasilkan tingkat keakuratan yang berbeda – beda (tingkat keakuratan dilihat dari nilai rerata error testing).
•
Dari percobaan yang dilakukan pada PT. Adira Dinamika Multifinance dengan periode tahun 2001−2005, diperoleh pengujian terbaik (rerata error testing terkecil) : fungsi pelatihan : Algoritma Levenberg-Marquardt (trainlm), arsitektur jaringan : 12 − 4 − 2 − 1, kinerja tujuan (target error) = 0.01, learning rate = 0.01, jumlah iterasi = 4, pembagian data training dan testing dengan menggunakan metode 4 (pembagian data training dan testing berdasarkan tahun ganjil dan genap).
•
Prediksi minat pembeli sepeda motor untuk Dealer ABC Motor dengan menggunakan jasa PT. Adira Dinamika Multifinance adalah : peningkatan minat pembeli di bulan Maret dan November tahun 2006.
adanya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 75
B. Saran Setelah mengamati, merancang dan membangun Program Penyaluran Kredit Berdasarkan Prediksi Penjualan Sepeda Motor di DIY dengan Menggunakan Backpropagation ini, maka untuk pengembangan di masa mendatang, disarankan untuk melakukan beberapa hal : •
Peramalan dapat menggunakan model pembelajaran Jaringan Syaraf Tiruan yang lainnya, selain Backpropagation.
•
Peramalan dapat menggunakan bahasa pemrograman lainnya, selain bahasa pemrograman Matlab 6.5.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 76
DAFTAR PUSTAKA
Jong, J.S, 2005. Jaringan Syaraf Tiruan dan Pemrogramannya dengan
Matlab,Andi Offset, Yogyakarta. Kusumadewi, Sri, 2004. Membangun Jaringan Syaraf Tiruan Menggunakan
Matlab, Graha Ilmu, Yogyakarta. Oktara, L.S, 2005. Implementasi Jaringan Syaraf Tiruan Menggunakan Metode
Backpropagation untuk Prediksi Penjualan ‘Flate Rate’ (Studi Kasus pada PT. Pos Indonesia Yogyakarta), Universitas Gajah Mada, Yogyakarta. Rahayu, T.P, 2005. Sistem Peramalan Beban Listrik Menggunakan Jaringan
Syaraf Tiruan, Universitas Gajah Mada, Yogyakarta. Wibowo, Edhi, 2004. Perancangan dan Pembuatan Perangkat Lunak Prediksi
Penjualan
dengan
Jaringan
Syaraf
Tiruan
Backpropagation.
http://digilib.its.ac.id/go.php?id=jiptits-gdl-s1-2005-edhiewibow350&width=400&PHPSESSID=ec415d9816b50edc8a3e59fc98d6fc3e Wibowo, Y.B, 2005. Implementasi Jaringan Syaraf Tiruan Backpropagation
untuk Memprediksi Harga Saham, Universitas Gajah Mada, Yogyakarta.