IMPLEMENTASI DATA MINING ALGORITMA C4.5 UNTUK MEMPREDIKSI PEMBAYARAN PINJAMAN PADA KOPERASI SIMPAN PINJAM PRIMKOVERI BINA BAKTI PEMALANG
NASKAH PUBLIKASI
diajukan oleh Rezki Badriza 11.11.5436
kepada JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2014
IMPLEMENTATION OF DATA MINING ALGORITHM C4.5 TO PREDICT COOPERATIVE LOAN PAYMENT ON CREDIT UNION PRIMKOVERI BINA BAKTI PEMALANG IMPLEMENTASI DATA MINING ALGORITMA C4.5 UNTUK MEMPREDIKSI PEMBAYARAN PINJAMAN PADA KOPERASI SIMPAN PINJAM PRIMKOVERI BINA BAKTI PEMALANG Rezki Badriza Kusrini Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA
ABSTRACT Along with the rapid development of the era and the rapid advancement of science and technology, it is also rapidly emerging institutions be it in business, healthcare, insurance, corporate, banking, or government agencies. No exception with the agency that is engaged in the economy such as credit unions. Cooperative is an organization to join and strive together for the deficiency that occurs in economic activity can be overcome. Besides, the cooperative is also a tool for the economically weak to help themselves so as to meet the needs and improve their lives. Therefore encourage each technological advancement agencies in the world economy is to improve the quality of service to members in order to more efficiently and effectively. Data mining is the solution in the world of technology to solve the problems facing cooperatives in providing timely and accurate information and efficient to those who need such information, where the information contained in the data storage medium that is specially prepared. Research using the C4.5 decision tree algorithm is used to classify the data with decision tree form. Keyword : Data mining, D4.5, Cooperative
iii
1.
Pendahuluan Seiring dengan perkembangan jaman dan teknologi pada saat ini sangat pesat, di
perkirakan akan ada banyaknya peminjaman uang pada sebuah bank atau koperasi simpan pinjam. Dengan banyaknya peminjaman itu dapat menimbulkan masalah jika bank atau koperasi tidak dapat memanajemen pihak peminjam. Primkoveri Bina Bakti Comal Pemalang merupakan salah satu koperasi simpan pinjam yang sukses menarik banyak nasabah tiap tahunnya, terbukti dengan meningkatnya jumlah nasabah baru tiap tahunnya. Maka dengan peningkatan ini pihak koperasi juga harus meningkatkan kualitas dan kenyamanan bagi nasabah dalam melakukan transaksi. Namun pihak koperasi simpan pinjam sering kerepotan akan hal pembayaran karena banyaknya orang yang terlambat bahkan terlalu melewati jadwal dalam pembayarannya. Kebanyakan koperasi simpan pinjam hanya melihat dari aspek gaji untuk menentukan kelancaran pembayaran, sedangkan kita tidak selalu tahu kebutuhan seseorang sehingga dapat terjadi kekeliruan. Data Mining merupakan algoritma yang di gunakan untuk membentuk pohon keputusan. Pohon Keputusan merupakan metode klasifikasi dan prediksi yang sangat kuat dan terkenal. Pohon keputusan juga berguna utuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variable input
dengan
sebuah
variable
target.
Dengan
melihat
beberapa
factor
dan
meperhitungkannya akan bisa diambil keputusan atau prediksi yang lebih akurat. Oleh karena itu di perlukan sebuah sistem yang dapat membantu pihak Koperasi simpan pinjam (Primkoveri Bina Bakti) Pemalang dalam menentukan perilaku pembayaran nasabah. Untuk itu penulis membuat βImplementasi Data Mining Algoritma C4.5 Untuk Memprediksi Pembayaran Pinjaman Pada Koperasi Simpan Pinjam Primkoveri Bina Baktiβ.
2.
Landasan Teori
2.1
Pengertian Data Mining Data Mining merupakan analisis dari peninjauan kumpulan data untuk menemukan
hubungan yang tidak diduga dan meringkas data dengan cara yang berbeda dengan sebelumnya, yang dapat dipahami dan bermanfaat bagi pemilik data. (Larose, 2005 dalam Kusrini, 2009: 4) Data mining juga disebut sebagai serangkaian proses untuk menggali nilai tambah dari suatu kumpulan data berupa pengetahuan yang selama ini tidak diketahui secara manual. (Pramudiono, 2006 dalam Kusrini, 2009: 3)
1
2.2
Pohon Keputusan Pohon keputusan merupakan metode klasifikasi dan prediksi yang sangat kuat dan
terkenal. Metode pohon keputusan mengubah fakta yang sangat besar menjadi pohon keputusan yang merepresentasikan aturan. Aturan dapat dengan mudah dipahami dengan Bahasa alami. Dan mereka juga dapat diekspresikan dalam bentuk Bahasa basis data seperti Structured Query Language untuk mencari record pada kategori tertentu. (Kusrini, 2009) Pohon keputusan juga berguna untuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variable input dengan sebuah variable target. (Kusrini, 2009) Secara umum algoritma C4.5 untuk membangun pohon keputusan adalah sebagai berikut. (Kusrini, 2009) a. Pilih atribut sebagai akar. b. Buat cabang untuk tiap-tiap nilai. c.
Bagi kasus dalam cabang.
d. Ulangi proses untuk setiap cabang sampai semua kasus pada cabang memiliki kelas yang sama. Untuk memilih atribut sebagai akar, didasarkan pada nilai gain tertinggi dari atributatribut yang ada. Untuk menghitung gain digunakan rumus seperti tertera dalam persamaan berikut. (Kusrini, 2009) n
πΊπππ (π, π΄) = πΈππ‘ππππ¦(π) β β i=0
|ππ | β πΈππ‘ππππ¦(ππ) |π|
Keterangan: S
: himpunan kasus
A
: atribut
n
: jumlah partisi atribut A
|Si|
: jumlah kasus pada partisi ke-i
|S|
: jumlah kasus dalam S
Sementara itu, perhitungan nilai entropi dapat dilihat pada persamaan 2 berikut. (Kusrini, 2009)
2
π
πΈππ‘ππππ¦(π) = β β ππ β πππ2 ππ π=1
S
: himpunan kasus
A
: fitur
n
: jumlah partisi S
pi 2.3
βΆ proporsi dari Si terhadap S
Data Flow Diagram Data Flow Diagram (DFD) adalah suatu model logika data atau proses yang dibuat
untuk menggambarkan asal data dan tujuan data yang keluar dari sistem, tempat penyimpanan data, proses apa yang menghasilkan data tersebut, serta interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut. (Kusrini, 2007) DFD ini adalah salah satu alat pembuatan model yang sering digunakan, khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks daripada data yang dimanipulasi oleh sistem. Dengan kata lain, DFD adalah alat pembuatan model yang memberikan penekanan hanya pada fungsi sistem. 2.4
MySQL
MySQL
merupakan
software
yang
tergolong
sebagai
DBMS
(DatabaseManagement system) yang bersifat open source. MySQL termasuk sebagai database server (server yang melayani permintaan terhadap database) yang andal, dapat menangani database yang besar dengan kecepatan tinggi, mendukung banyak sekali fungsi untuk mengakses database, dan sekaligus mudah untuk digunakan. (Abdul, 2008) 3.
Analisis dan Perancangan Sistem
3.1
Analisis Sistem Analisis sistem dapat didefinisikan sebagai βPenguraian dari suatu sistem
informasi yang utuh ke dalam bagian β bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan-permasalahan, kesempatan dan hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikannya. (Jogiyanto, 2005)
3
Analisis sistem merupakan salah satu tahapan pada pengembangan sistem. Tahap analisis merupakan tahap yang kritis dan sangat penting, karena kesalahan di dalam tahap ini juga akan menyebabkan kesalahan di tahap selanjutnya. Tahap analisis dilakukan setelah tahap perancangan sistem dan sebelum tahap desain sistem. 3.2
Analisis Data Tidak semua data nasabah akan dicari hubungannya dengan data pembayaran,
hanya beberapa aktribut yang kira-kira berguna dan datanya tidak terlalu acak. Karena data yang acak akan membuat proses mining memakan waktu yang lama dan tingkat hubungannya pun rendah. Data nasabah akan dicari hubungannya meliputi proses Penghasilan, Pinjaman, Status Pernikahan, dan Status Rumah. Adapun variabel yang akan diproses mining meliputi : 1. Penghasilan Dalam memberikan pinjaman tentu saja kita harus melihat dari aspek penghasilan, karena tingkat pembayaran dapat kita perhitungkan. Jika kita memberikan pinjaman yang besar sedangkan penghasilan peminjam terlalu kecil sangat memungkinkan akan timbulnya keterlambatan pembayaran yang dapat mengakibatkan kerugian. Variable ini berasal dari buku data anggota karena sistem mereka masih manual. 2. Pinjaman Setelah melihat besarnya penghasilan nasabah kita tentu saja perlu melihat besar pinjaman yang ingin di pinjam oleh nasabah. Jika nasabah meminta peminjaman yang terlalu besar sedangkan kemampuannya dalam membayar tidak memadai sangat tidak layak untuk memberikan pinjaman pada nasabah tersebut. Variable ini berasal dari buku angsuran anggota karena sistem mereka masih manual. 3. Status Pernikahan Tingkat kebutuhan setiap orang pasti berbeda tapi jelas tingkat kebutuhan antara orang yang sudah menikah dengan yang belum menikah pasti berbeda. Kebutuhan orang yang memiliki keluarga yang harus diberi nafkah dapat mengurangi penghasilan sehingga dapat mengganggu dalam pembayarannya jika nasabah yang berkeluarga hendak meminta pinjaman. Variable ini berasal dari buku data anggota karena sistem mereka masih manual. 4. Status Rumah Jika dilihat dari besarnya kebutuhan kehidupan sekarang tentu saja tempat tinggal mempengaruhi biaya hidup terutama bagi mereka yang sudah berubah tangga. Biaya sewa rumah sekarang tidak murah, belum lagi biaya listrik, air,
4
dan lainnya. Sehingga sangat besar kemungkinan nasabah yang masih belum memiliki rumah pribadi dapat mengalami keterlambatan dalam pembayaran. Variable ini berasal dari buku data anggota karena sistem mereka masih manual. 3.3
Analisis Model Kebutuhan masukan dari sistem adalah berupa atribut yang dimiliki oleh sebuah
data nilai atribut dan nilai kemungkinannya yang dibuat kedalam sebuah data tabel. Data tabel yang dimaksud adalah data yang mempunyai minimal dua kolom atribut. Satu kolom sebagai kolom atribut masukan dan satu kolom sebagai kolom atribut target. Ketentuan lain yang harus dipenuhi agar masukan dapat diproses dengan lancar adalah peletakan kolom target harus berada pada posisi terakhir dari kolom pada tabel masukan. Sistem akan membaca masukan dengan atribut target berada pada kolom terakhir dari tabel, maka dari itu selain kolom terakhir sistem akan mengenalinya sebagai atribut masukan dari sistem. Berikut adalah data untuk menentukan apakah nasabah layak diberi pinjaman atau tidak dengan nilai kemungkinannya. Berikut ini adalah penjelasan lebih terperinci mengenai tiap-tiap langkah dalam pembentukan pohon keputusan dengan menggunakan algoritma C4.5 menyelesaikan permasalahan dalam skripsi. Salah satu proses kalkulasi dari entropy adalah proses kalkulasi nilai entropy kelancaran yaitu dengan jumlah sampel 132 data.
5
Tabel 1 Perhitungan Node 1 Jml node
1
kelancaran
Kasus
Ya
Tidak
(S)
(S1)
(S2)
132
114
Entropy
18
Gain
0.574636
pinjaman
0.042313 <3jt
38
36
2
0.297472
3jt-4jt
62
55
7
0.508611
>4jt
32
23
9
0.857148
penghasilan
0.138512 >=4jt
62
62
0
0
<4jt
70
52
18
0.822404
status
0.13529 menikah
71
53
18
0.816811
61
61
0
0
belum menikah rumah
0.055398 pribadi
95
88
7
0.379524
sewa
37
26
11
0.877962
Dari tabel hasil kalkulasi di atas dapat kita lihat hasil entropy dan gain yang diperoleh dari masing-masing atribut. Dan dapat kita lihat juga hasil pohon keputusan berdasarkan kolom node yang dihasilkan. Pada node pertama dihasilkan variable penghasilan sebagai pohon pertama. Pohon pertama ditentukan dari melihat hasil gain terbesar. Setelah itu untuk menentukan hasil keputusan akhir dapat dilihat dari hasil entropy yang hasilnya nol. Apabila telah di dapat hasil entropy nol maka selanjutnya kita lihat hasil variable keputusan yang paling banyak nilainya. Sehingga terbentuklah decision tree seperti berikut.
6
penghasilan
>=4jt
<4jt
Ya
status
menikah
belum menikah Ya
pinjaman
<3jt
Tidak
rumah sewa
3jt-4jt >4jt
Tidak
pribadi Ya
Tidak
Gambar 1 Hasil Akhir Pohon Keputusan
4.
Implementasi dan Pembahasan Tahapan implementasi dilakukan dengan menerapkan hasil rancangan pada
bagian sebelumnya dengan pembuatan kode source code agar dapat dijalankan komputer. Setelah
melakukan
analisis
dan
perancangan
sistem,
programmer
melakukan
pemrograman yang merupakan aktivitas membuat program atau sederetan instruksi yang digunakan untuk mengatur program agar bekerja dan berjalan sesuai dengan maksud dari instruksi yang diketik. Tahapan implementasi dilakukan ketika sistem telah selesai dan telah melalui tahap pengujian program sehingga sistem tersebut siap digunakan. Pengujian sistem dilakukan untuk mengetahui apakah program telah bebas dari kesalahan-kesalahan sebelum diterapkan. Kesalahan program yang mungkin terjadi adalah kesalahan bahasa
7
(syntax) yakni kesalahan pada penulisan source code program, serta kesalahan pada saat program sedang berjalan (runtime), yaitu kesalahan pada saat execubatle program dijalan. 4.1
Uji Coba Program dan Hasilnya
Pengujian program dilakukan pada form prediksi dan pohon keputusan dilihat dari hasil yang diperoleh dari program dengan hasil manual. Untuk proses pengujian program digunakan data yang sama seperti pada perhitungan manual yaitu 132 data. Sebagian dari data yang digunakan adalah sebagai berikut.
Gambar 2 Sebagian Data yang Digunakan Berikut ini pengujian berdasarkan masing-masing form. 1.
Form Pohon Keputusan Pengujian dilakukan dengan menampilkan pohon keputusan yang
terbentuk dari hasil olah data sistem.
8
Berikut ini adalah hasil pohon keputusan yang terbentuk dari program .
Gambar 3 Pohon Keputusan 2.
Form Prediksi Pengujian dilakukan dengan cara menginputkan nilai variabel yang dimiliki
oleh calon anggota baru. Apabila nilai-nilai tersebut setelah diproses, maka sistem akan menampilkan output berupa prediksi kelancaran pembayaran pinjaman sang calon anggota baru. Pengujian ini menggunakan contoh calon anggota yang memiliki kasus sebagai berikut. 1. Penghasilan
: >=4jt
2. Status
: menikah
3. Status Rumah
: pribadi
4. Pinjaman
: >4j
9
Berikut ini gambar hasil prediksi dari pengujian sistem pada kasus di atas.
Gambar 4 Hasil Prediksi
5.
Penutup
5.1
Kesimpulan
Berdasarkan penjelasan di bab-bab sebelumnya, kesimpulan yang dapat diambil dalam pengerjaan skripsi ini adalah 1. Membuat aplikasi yang dapat menampilkan informasi yang berguna untuk mengambil keputusan dalam menganalisa tingkat kelancaran pembayaran anggota berdasarkan data kasus tiap anggota menggunakan data mining. 2. Aplikasi ini dapat berjalan sesuai dengan rancangan yang dibuat, yaitu dapat digunakan untuk prediksi kelancaran pembayaran, input data kasus anggota, perbaharui data kasus, hapus data kasus dan bentuk pohon keputusan dari perhitungan yang dihasilkan program. 3. Proses yang dilakukan memerlukan data yang banyak sehingga diperlukan fungsi input data dalam bentuk file tersendiri agar memudahkan pengguna.
10
5.2
Saran Pada penulisan skripsi ini tentu masih terdapat kekurangan yang dapat
disempurnakan lagi pada pengembangan berikutnya, sehingga terdapat beberapa saran yang bisa menjadi pertimbangan agar aplikasi pohon keputusan C45 ini menjadi lebih baik, diantaranya : 1. Adanya penambahan variabel lain yang memungkinkan mempengaruhi kelancaran pembayaran seperti, angsuran, pendidikan, dan lainnya. 2. Sebaiknya data yang ditambahkan ke dalam sistem di update secara berkala, sehingga keputusan yang dihasilkan akurat.
11
DAFTAR PUSTAKA
Jogiyanto, HM. 2005. Analisis dan Desain Sistem Informasi. Yogyakarta: Andi Offset. Kadir, Abdul. 2008. Belajar Database Menggunakan MySQL. Yogyakarta: Andi Offset. Kusrini, dan Emha Taufik Luthfi. 2009. Algoritma Data Mining. Yogyakarta: Andi Offset. Kusrini. 2007. Strategi Perancangan dan Pengelolaan Basis Data. Yogyakarta: Andi Offset.
12