BAB I PENDAHULUAN
A. Latar Belakang
Koperasi adalah suatu lembaga keuangan bukan bank yang bergerak dalam
kegiatan simpan pinjam layaknya bank, dimana ijin operasionalnya di bawah
Kementrian Koperasi dan tidak dalam pengawasan Bank Indonesia (BI). Seperti
layaknya lembaga keuangan koperasi juga menghimpun dana dari para anggota dan
calon anggota baik berupa tabungan maupun deposito dan menyalurkannya pada
anggota maupun calon anggota dengan mendapatkan keuntungan tertentu.
Pinjaman yang diberikan dapat berupa modal kerja, modal investasi, maupun
pembelian barang-barang consumer good misal: pembelian TV, kulkas, kendaraan,
dan lain-lain yang diperlukan anggota, demikian seterusnya dimana keuntungan
koperasi di akhir tahun yang biasa disebut Sisa Hasil Usaha (SHU) (Adi Sucipto,
2015: 1).
Koperasi juga merupakan salah satu lembaga keuangan yang melakukan
transaksi kredit. Dalam rangka mengembangkan usahanya dalam bentuk pinjaman
anggota, koperasi memiliki prinsip kehati-hatian sebagaimana yang diterapkan
pada perbankan dengan melakukan analisis kredit. Analisis kredit yang dilakukan
setiap lembaga keuangan belum tentu sama. Analisis kredit biasanya dilakukan
dengan cara penilaian 5C. Pada dasarnya konsep 5C adalah Character
(kepribadian) yaitu penilaian sifat atau watak dari calon debitur, Capacity
(kemampuan) yaitu prediksi tentang kemampuan usaha debitur untuk melunasi
pinjaman, Condition (kondisi ekonomi) yaitu analisis terhadap kondisi
perekonomian debitur, dan Collateral (agunan) yaitu harta kekayaan debitur
sebagai jaminan atau alat pengamanan apabila usaha yang dibiayai dengan kredit
tersebut gagal. Penilaian dengan 5C dapat memberikan beberapa informasi
mengenai seberapa baik nasabah akan melunasi pinjaman (Kasmir, 2012: 136).
Penilaian 5C tersebut biasanya dilakukan secara manual dengan melihat
data pribadi, hasil wawancara, serta hasil survei. Butuh waktu yang yang lama
untuk memproses satu pengajuan kredit. Namun demikian, masih sering terjadi
permasalahan seperti adanya nasabah yang terlambat membayar angsuran.
Penyebab yang biasanya terjadi adalah adanya nasabah yang sebenarnya telah
memenuhi kualifikasi peminjaman kredit tetapi nasabah tersebut memiliki potensi
yang tinggi untuk terlambat membayar kredit (Melissa Ira & Raymond, 2013: 18).
Analisis terhadap data kredit dengan teknik lain perlu dilakukan untuk
meminimalisir nasabah yang terlambat membayar kredit dengan memprediksi label
kelas dari calon peminjam. Analisis tersebut dapat dilakukan menggunakan data
mining. Data mining telah terbukti sebagai alat yang memegang peran penting
untuk industri perbankan dan retail, yang mengidentifikasikan informasi berguna
dari data ukuran besar. Proses di dalam data mining untuk membedakan kelas data
atau konsep yang bertujuan agar dapat digunakan untuk memprediksi kelas dari
objek yang label kelasnya tidak diketahui dikenal sebagai kalsifikasi. Terdapat
beberapa metode klasifikasi dalam data mining, diantaranya adalah decision tree
Decision tree merupakan metode klasifikasi paling terkenal karena mudah
untuk diinterpretasi oleh manusia (Gorunescu, 2011: 3). Algoritma C4.5
merupakan algoritma yang digunakan untuk membangun sebuah decision tree dari
data serta secara rekursif mengunjungi setiap simpul keputusan, memilih cabang
optimal, sampai tidak ada cabang lagi yang mungkin dihasilkan (Indri Rahmayuni,
2014: 42). Naïve bayes merupakan pengklasifikasian dengan metode probabilitas
dan statistik sederhana yang berdasar pada teorema Bayes dengan asumsi
independensi yang kuat (Eko Prasetyo, 2012: 59). Naive bayes terbukti memiliki
akurasi dan kecepatan yang tinggi saat diaplikasikan ke dalam database dengan
data yang besar (Kusrini & Emha, 2009: 189).
Analisis klasifikasi data kredit pada penelitian ini dilakukan menggunakan
metode decision tree dengan menggali informasi dari data-data yang ada seperti
pekerjaan, penghasilan keluarga, agunan, jangka waktu, dan lain-lain sehingga
didapatkan aturan klasifikasi dari pohon keputusan untuk memprediksi label kelas
pada data baru. Pengklasifikasian dengan metode decision tree digunakan algoritma
C4.5 untuk menghitung nilai information gain yang diperlukan dalam membangun
konstruksi pohon keputusan sehingga didapatkan pohon keputusan yang optimal.
Analisis klasifikasi data kredit juga dilakukan menggunakan metode naïve bayes
yang didasarkan pada teorema Bayes dengan memprediksi probabilitas
keanggotaan suatu kelas. Dalam penelitian ini metode tersebut dapat memprediksi
apakah suatu data peminjam baru dengan beberapa nilai atribut seperti pekerjaan
termasuk dalam anggota kelas lancar atau bermasalah berdasar pada teorema Bayes
dan asumsi independensi.
Model klasifikasi yang dihasilkan dari kedua metode tersebut akan
dibandingkan berdasarkan tingkat akurasinya. Dari hasil perbandingan akan
didapatkan sebuah model klasifikasi terbaik yang dapat digunakan untuk klasifikasi
pada data kredit nasabah Koperasi X. Pada penelitian ini, digunakan program bantu
WEKA 3.6.13. Hasil keluaran dari klasifikasi ini diharapkan dapat menjadi
kontribusi bagi lembaga keuangan koperasi kredit terkait dalam memperkuat
pertimbangan pemberian kredit nasabah.
B. Batasan Masalah
Pada penelitian ini pembahasan akan dibatasi pada masalah-masalah
berikut:
1. Metode klasifikasi yang digunakan yaitu decision tree C4.5 dan naïve bayes
dimana hasil klasifikasi dari kedua metode akan dibandingkan.
2. Pembentukan model klasifikasi menggunakan bantuan aplikasi software
yaitu WEKA 3.6.13.
3. Data yang digunakan adalah data peminjam Koperasi X pada tahun 2011
-Maret 2016 dan data laporan nominatif pinjaman perbulan tahun 2014 -
Maret 2016.
4. Klasifikasi nasabah kredit pada Koperasi X yaitu lancar, kurang lancar,
diragukan, dan macet.
5. Data yang digunakan berasal dari objek penelitian sehingga model hanya
C. Rumusan Masalah
Berdasarkan latar belakang masalah di atas, dapat dirumuskan masalah
sebagai berikut:
1. Bagaimana analisis klasifikasi pada data nasabah kredit Koperasi X
menggunakan decision tree C4.5 dan naïve bayes?
2. Bagaimana perbandingan hasil klasifikasi menggunakan decision tree C4.5
dengan naïve bayes?
D. Tujuan Penelitian
Tujuan penelitian ini adalah sebagai berikut:
1. Mengetahui prosedur analisis klasifikasi pada data nasabah kredit Koperasi
X menggunakan decision tree C4.5 dan naïve bayes.
2. Mengetahui perbandingan hasil klasifikasi menggunakan decision tree C4.5
dan naïve bayes.
E. Manfaat Penelitian
Hasil penelitian ini diharapkan memiliki manfaat sebagai berikut:
1. Bagi penulis
Menambah pengetahuan dan wawasan mengenai decision tree C4.5 dan
naïve bayes yang digunakan untuk mengklasifikasikan data nasabah kredit
Koperasi X.
2. Bagi civitas akademika
Menjadi bahan referensi dan panduan dalam melanjutkan penelitian di masa
3. Bagi instansi terkait
Dapat mempermudah dalam pengambilan keputusan pemberian kredit pada
nasabah koperasi X.
4. Bagi umum
Dapat menambah ilmu pengetahuan mengenai kredit dan analisis klasifikasi
BAB II
KAJIAN TEORI
Pada bab ini berisi tentang teori-teori dasar mengenai kredit, database,
penambangan data (data mining), aturan klasifikasi, decision tree C4.5, naïve
bayes, metode evaluasi model, WEKA, dan penelitian yang relevan sebagai
landasan pelaksanaan penelitian.
A. Kredit
Kredit adalah kemampuan untuk melaksanakan suatu pembelian atau
mengadakan suatu pinjaman dengan suatu janji pembayarannya akan dilakukan
ditangguhkan pada suatu jangka waktu yang disepakati (Teguh Pudjo Muljono,
2000: 9).
Menurut Undang-Undang Perbankan No.12 Tahun 1992 pasal 1, kredit
adalah penyediaan uang atau tagihan yang dapat dipersamakan dengan itu,
berdasarkan persetujuan atau kesepakatan pinjam-meminjam antara pihak bank
dengan pihak lain, yang mewajibkan pihak peminjam untuk melunasi hutangnya
setelah jangka waktu tertentu dengan bunga, imbalan, atau pembagian hasil
keuntungan.
Kegiatan perkreditan mempunyai prinsip-prinsip yang disebut juga sebagai
konsep 5C. Pada dasarnya konsep 5C dapat memberikan beberapa informasi
mengenai seberapa baik nasabah akan melunasi pinjaman. Konsep 5C tersebut
1. Character
Sifat atau watak dari orang-orang yang akan diberikan kredit benar-benar
harus dapat dipercaya. Manfaat dari penilaian character yaitu untuk
mengetahui sejauh mana tingkat kejujuran dan integritas serta tekad baik
yaitu kemauan untuk memenuhi kewajiban-kewajibannya dari calon
debitur.
2. Capacity
Kemampuan melunasi kewajiban-kewajibannya dari kegiatan usaha yang
dilakukannya atau kegiatan usaha yang akan dilakukan dengan biaya kredit
bank.
3. Capital
Besar atau kecilnya modal seorang calon debitur, serta analisis dari sumber
mana saja modal saat ini, termasuk banyaknya modal yang digunakan untuk
membiayai usaha yang akan dijalankan.
4. Collateral
Barang-barang jaminan yang diserahkan oleh peminjam/ debitur sebagai
jaminan atas kredit yang diterimanya. Manfaat collateral yaitu sebagai alat
pengamanan apabila usaha yang dibiayai dengan kredit tersebut gagal atau
sebab-sebab lain dimana debitur tidak mampu melunasi kreditnya dari hasil
usahanya yang normal.
5. Condition of Economy
Situasi dan kondisi politik, sosial, ekonomi, budaya, dan lain-lain yang
kurun waktu tertentu yang kemungkinannya akan dapat mempengaruhi
kelancaran usaha dari perusahaan yang memperoleh kredit.
Jumlah kredit yang disalurkan sangat berpengaruh terhadap hidup matinya
lembaga keuangan. Banyaknya jumlah kredit yang disalurkan juga harus
memperhatikan kualitas kredit tersebut. Bank Indonesia menggolongkan kualitas
kredit menurut ketentuan sebagai berikut (Kasmir, 2013: 107-108):
1. Lancar
Suatu kredit dikatakan lancar apabila:
a. pembayaran angsuran pokok dan/ atau bunga tepat waktu; dan
b. memiliki mutasi rekening yang aktif; atau
c. bagian dari kerdit yang dijamin dengan agunan tunai.
2. Dalam perhatian khusus
Dikatakan dalam perhatian khusus apabila memenuhi kriteria antara lain:
a. terdapat tunggakan pembayaran angsuran pokok dan/ bunga yang
belum melampaui 90 hari; atau
b. kadang-kadang terjadi cerukan atau jumlah penarikan yang melebihi
dana yang tersedia pada akun giro atau rekening negatif yang
disebabkan oleh nasabah yang menulis cek melebihi jumlah dana yang
ada direkeningnya; atau
c. jarang terjadi pelanggaran terhadap kontrak yang diperjanjikan; atau
d. mutasi rekening relatif aktif; atau
3. Kurang lancar
Dikatakan kurang lancar apabila memiliki kriteria diantaranya:
a. terdapat tunggakan angsuran pokok dan/ atau bunga yang telah
melampaui 90 hari; atau
b. sering terjadi cerukan; atau
c. terjadi pelanggaran terhadap kontrak yang diperjanjikan lebih dari 90
hari; atau
d. frekuensi mutasi rekening relatif rendah; atau
e. terdapat indikasi masalah keuangan yang dihadapi debitur; atau
f. dokumen pinjaman yang lemah.
4. Diragukan
Dikatakan diragukan apabila memenuhi kriteria diantaranya:
a. terdapat tunggakan pembayaran angsuran pokok dan/ atau bunga yang
melampaui 180 hari; atau
b. terjadi cerukan bersifat permanen; atau
c. terjadi wanprestasi lebih dari 180 hari; atau
d. terjadi kapitalisasi bunga; atau
e. dokumen hukum yang lemah, baik untuk perjanjian kredit maupun
peningkatan jaminian.
5. Macet
Dikatakan macet apabila memenuhi kriteria antara lain:
a. terdapat tunggakan pembayaran angsuran pokok dan/ atau bunga yang
b. kerugian operasional ditutup dengan pinjaman baru; atau
c. dari segi hukum dan kondisi pasar, jaminan tidak dapat dicairkan pada
nilai yang wajar.
Penggolongan kualitas kredit di atas digunakan untuk mengantisipasi resiko
kredit bermasalah secara dini. Kredit bermasalah atau problem loan dapat diartikan
sebagai pinjaman yang mengalami kesulitan pelunasan akibat adanya faktor
kesengajaan dan atau karena faktor eksternal di luar kemampuan kendali debitur.
Apabila kredit dikaitkan dengan tingkat kolektibilitasnya, maka yang digolongkan
kredit bermasalah adalah kredit yang memiliki kualitas dalam perhatian khusus,
kurang lancar, diragukan, dan macet (Dahlan Siamat 2004: 174).
B. Basis Data (Database)
Menurut Connolly & Begg (2002: 15) database merupakan suatu kumpulan
data yang terhubung secara logic, dan deskripsi dari data tersebut yang dirancang
untuk memenuhi kebutuhan informasi dari suatu organisasi. Database merupakan
tempat penyimpanan data yang besar, dimana dapat digunakan secara simultan oleh
banyak pengguna.
Database terdiri dari beberapa objek antara lain yaitu:
1. Field
Field adalah kumpulan dari beberapa karakteristik dari objek-objek yang
ada.
2. Record
3. File
File atau berkas adalah kumpulan dari beberapa record yang berhubungan
membentuk saling ketergantungan satu dengan yang lainnya.
4. Entity
Entity adalah satu kesatuan yang terdiri dari informasi yang disimpan.
5. Attribute
Atribut adalah nama dari suatu kolom relasi yang menjelaskan suatu entity.
6. Primary Key
Primary Key adalah sebuah field yang mempunyai nilai unik yang tidak
memiliki kesamaan antara record yang satu dengan record yang lain.
7. Foreign Key
Foreign Key adalah satu atribut atau kumpulan atribut dalam satu relasi
yang berguna untuk menghubungkan primary key lain yang berbeda dalam
tabel lain.
Menurut Han, et al (2012: 9) jenis-jenis database adalah sebagai berikut:
1. Relational database
Relational database atau basis data relasional adalah sebuah
kumpulan tabel dengan nama khusus dan setiap tabel terdiri atas kumpulan
atribut (kolom atau field) dan biasanya menyimpan data dalam jumah yang
besar pada data (baris atau record). Setiap data dalam tabel relasi
menunjukkan sebuah objek yang diidentifikasi oleh sebuah unique key dan
2. Data Warehouse
Data warehouse adalah tempat penyimpanan informasi dari berbagai
sumber data dan disimpan pada satu tempat. Data warehouse dibangun
melalui sebuah proses dari pembersihan data dari data-data yang tidak
lengkap, menganalisis data, perubahan bentuk data, pemuatan ulang
data-data yang baru, dan pembaharuan data-data secara periodik.
3. Transactional Data
Transactional data pada setiap record dikumpulkan berdasarkan
sebuah transaksi (dalam dunia bisnis). Sebuah transaksi memiliki nomor
identitas transaksi yang unik (trans_ID). Transactional data yang
mempunyai tabel tambahan yang berisi informasi lain direlasikan pada
hubungan yang mungkin terjadi, seperti deskripsi barang, informasi dari
pelayan toko, dan lain-lain.
C. Penambangan Data (Data Mining)
Data mining adalah proses menentukan pola dan informasi dari data yang
berjumlah besar. Sumber data dapat berupa database, data warehouse, Web, tempat
penyimpanan informasi lainnya atau data yang mengalir ke dalam sistem yang
dinamis (Han, et al, 2012: 8).
Menurut Grup Gartner (dalam Larose, 2005: 2) data mining adalah suatu
proses menemukan hubungan yang berarti, pola, dan kecenderungan dengan
memeriksa dalam sekumpulan besar data yang tersimpan dalam penyimpanan
Menurut Turban, dkk (dalam Kusrini & Emha, 2009: 3) Data mining adalah
proses yang menggunakan teknik statistik, matematika, kecerdasan buatan, dan
machine learning untuk mengekstraksi dan mengindentifikasi informasi yang
bermanfaat dan pengetahuan yang terkait dari berbagai database besar.
Data mining merupakan salah satu langkah penting dalam menemukan
sebuah pengetahuan pada proses Knowledge Discovery in Data (KDD). KDD
adalah proses menentukan informasi yang berguna serta pola-pola yang ada dalam
data. Tahapan proses KDD ditunjukkan pada Gambar 2.1.
Menurut Han, et al (2006: 7 ) tahapan dalam KDD dapat dijelaskan sebagai
berikut:
1. Pembersihan Data (Data Cleaning)
Pembersihan data merupakan proses menghilangkan noise dan data
yang tidak konsisten. Pada tahap ini data-data yang memiliki isian tidak
sempurna seperti data yang tidak memiliki kelengkapan atribut yang
dibutuhkan dan data yang tidak valid dihapus dari database.
2. Integrasi Data (Data Integration)
Integrasi data merupakan proses kombinasi beberapa sumber data ke
dalam database. Pada tahap ini dilakukan penggabungan data dari berbagai
sumber untuk dibentuk penyimpanan data yang koheren.
3. Seleksi Data (Data Selection)
Seleksi data merupakan pemilihan data yang digunakan untuk proses
data mining. Data hasil seleksi yang akan digunakan untuk proses data
mining, disimpan suatu berkas dan terpisah dari basis data operasional.
4. Transformasi Data (Data Transformation)
Transformasi data merupakan proses mentransformasikan dan
mengkonsolidasikan data yang digunakan untuk proses mining. Pada tahap
ini dilakukan pengubahan format data menjadi format yang sesuai dengan
teknik data mining yang digunakan.
5. Penambangan Data (Data Mining)
Penambangan data merupakan proses utama mencari pengetahuan
atau informasi menarik dalam data terpilih dengan menggunakan teknik
atau metode tertentu. Teknik dalam data mining sangat bervariasi,
pemilihan teknik yang tepat sangat bergantung pada tujuan dan proses KDD
secara keseluruhan.
6. Evaluasi Pola (Pattern Evaluation)
Evaluasi pola ialah proses mengidentifikasi kebenaran pola yang telah
didapat. Pada tahap ini pola yang telah didapat dari proses data mining
dievaluasi apakah pola yang ditemukan bertentangan dengan fakta atau
hipotesis yang ada sebelumnya.
7. Representasi Pengetahuan (Knowledge Presentation)
Representasi pengetahuan merupakan visualisasi dan presentasi
pengetahuan yang telah didapat kepada pengguna. Pada tahap terakhir ini
disajikan pengetahuan dan metode yang digunakan untuk memperoleh
pengetahuan yang dapat dipahami oleh pengguna atau semua orang.
Data mining mempunyai beberapa metode yang dilakukan pengguna untuk
meningkatkan proses mining supaya lebih efektif. Oleh karena itu, data mining
dibagi menjadi beberapa kelompok berdasarkan metodenya, yaitu (Larose, 2005:
11):
1. Deskripsi
Deskripsi digunakan untuk memberikan gambaran secara ringkas
berupa pola dan tren bagi data yang jumlahnya sangat besar dan jenisnya
beragam. Metode dalam data mining yang dapat digunakan untuk deskripsi
2. Klasifikasi
Pada klasifikasi terdapat variabel target yang berupa nilai kategori.
Contoh dari klasifikasi adalah penggolongan pendapatan masyarakat ke
dalam tiga kelompok, yaitu pendapatan tinggi, pendapatan sedang, dan
pendapatan rendah. Algoritma klasifikasi yang biasa digunakan adalah
Naïve Bayes, K-Nearest Neighbor, dan C4.5.
3. Estimasi
Estimasi mirip dengan klasifikasi namun variabel target pada proses
estimasi lebih condong ke arah numerik daripada ke arah kategori. Model
dibangun menggunakan record lengkap yang menyediakan nilai dari
variabel target sebagai nilai prediksi, kemudian nilai estimasi dari variabel
target dibuat berdasarkan pada nilai prediksi. Contoh algoritma estimasi
adalah linear regression dan neural network.
4. Prediksi
Prediksi hampir sama dengan klasifikasi dan estimasi, namun pada
prediksi data yang digunakan adalah data runtun waktu (data time series)
dan nilai pada hasil akhir digunakan untuk beberapa waktu mendatang.
Contoh prediksi dalam bisnis dan penelitian adalah prediksi harga beras
dalam tiga bulan kedepan.
5. Pengelompokan
Pengelompokan data atau pembentukan data ke dalam jenis yang
sama. Pengelompokan tidak untuk mengklasifikasi, mengestimasi, atau
kelompok-kelompok yang relatif sama (homogen). Perbedaan algoritma
pengelompokan dengan algoritma klasifikasi adalah pengelompokan tidak
memiliki target/ class/ label. Contoh algoritma pengelompokan adalah
K-Means dan Fuzzy C-Means.
6. Asosiasi
Asosiasi digunakan untuk menemukan atribut yang muncul dalam
waktu yang bersamaan dan untuk mencari hubungan antara dua atau lebih
data dalam sekumpulan data. Contoh penggunaan aturan asosiasi adalah
analisis kemungkinan seorang pelanggan membeli roti dan susu dalam
waktu yang bersamaan di suatu pasar swalayan. Contoh algoritma aturan
asosiasi yang sering digunakan adalah Apriori dan FP-Growth.
D. Klasifikasi
Klasifikasi adalah proses penemuan model (atau fungsi) yang membedakan
kelas data atau konsep yang bertujuan agar dapat digunakan untuk memprediksi
kelas dari objek yang label kelasnya tidak diketahui. Model ditemukan berdasarkan
analisis data training (objek data yang kelasnya diketahui) (Han, et al, 2006: 24).
Algoritma-algoritma yang sering digunakan untuk proses klasifikasi sangat banyak,
yaitu k-nearest neighbor, rough set, algoritma genetika, metode rule based, C4.5,
naive bayes, analisis statistik, memory based reasoning, dan support vector
machines (SVM).
Klasifikasi data terdiri dari 2 langkah proses. Pertama adalah learning (fase
training), dimana algoritma klasifikasi dibuat untuk menganalisa data training lalu
dimana data tes digunakan untuk memperkirakan akurasi dari aturan klasifikasi
(Han, et al, 2006: 286).
Proses klasifikasi didasarkan pada empat komponen (Gorunescu, 2011: 15):
1. Kelas
Variabel dependen berupa kategori yang merepresentasikan “label” yang
terdapat pada objek. Contohnya: risiko penyakit jantung, risiko kredit, dan
jenis gempa.
2. Predictor
Variabel independen yang direpresentasikan oleh karakteristik (atribut)
data. Contohnya: merokok atau tidak, minum alkohol atau tidak, besar
tekanan darah, jumlah tabungan, jumlah aset, jumlah gaji.
3. Training dataset
Satu set data yang berisi nilai dari kedua komponen di atas yang digunakan
untuk menentukan kelas yang cocok berdasarkan predictor.
4. Testing dataset
Berisi data baru yang akan diklasifikasikan oleh model yang telah dibuat
dan akurasi klasifikasi dievaluasi.
Proses klasifikasi dapat dicontohkan seperti yang ditunjukkan pada Gambar
2.2.
Gambar 2.2 poin (a) adalah proses pembelajaran dimana data training
dianalisis menggunakan algoritma klasifikasi. Atribut keputusan kredit sebagai
label kelas, dan model pembelajaran atau pengklasifikasian dipresentasikan dalam
klasifikasi. Proses klasifikasi digunakan untuk mengestimasi keakurasian dari
classification rule yang dihasilkan. Apabila akurasi dapat diterima maka aturan
yang diperoleh dapat digunakan pada klasifikasi data baru (Han, et al, 2006: 287).
1. Pohon Keputusan (Decision Tree)
Pohon keputusan merupakan salah satu metode klasifikasi yang
menggunakan representasi struktur pohon (tree) dimana setiap simpul internal
(internal node) merupakan sebuah atribut, setiap cabang merupakan nilai atribut,
dan setiap simpul daun (leaf node) atau simpul terminal merupakan label class, serta
simpul yang paling atas adalah simpul akar (root node) (Han, et al, 2006: 291).
Gambar 2.3 Bentuk Pohon Keputusan
Berikut penjelasan mengenai 3 jenis simpul yang terdapat pada pohon
keputusan:
a. Simpul Akar
Simpul akar merupakan simpul yang paling atas, pada simpul ini tidak
mempunyai input dan bisa tidak mempunyai output atau mempunyai
output lebih dari satu.
b. Simpul Internal
Simpul internal merupakan simpul percabangan dari simpul akar, pada
simpul ini hanya ada satu input dan mempunyai minimal dua output.
Simpul Internal
Simpul Akar
c. Simpul Daun
Simpul daun merupakan simpul terakhir, pada simpul ini hanya terdapat
satu input dan tidak mempunyai output, simpul ini sering disebut simpul
terminalserta merupakan suatukeputusan.
Dalam kaitannya dengan sebuah basis data, himpunan data dapat berupa
tabel, sedangkan sampel adalah record. Himpunan data dapat memiliki atribut yang
dapat bertipe diskrit maupun kontinu. Ilustrasi dari pohon keputusan berdasarkan
tipe atributnya dapat dijelaskan pada Gambar 2.4 (Han, et al, 2001).
Gambar 2.4 Ilustrasi Model Pohon Keputusan Berdasarkan Tipe Atributnya
Berdasarkan Gambar 2.4 jika atribut prediktor bertipe diskret , maka
cabang simpul dibuat untuk setiap nilai pada atribut diskrit tersebut , , … .
Sedangkan jika atribut prediktor bertipe kontinu atau numerik ), maka cabang
simpul dibuat untuk dua buah nilai yaitu �ℎ dan �ℎ, dimana �ℎ
adalah nilai ambang dari . Konsep dasar pohon keputusan ditunjukkan pada
Algoritma: Pembentukan_Pohon_Keputusan, Pembentukan pohon keputusan dari tupel pelatih pada partisi data, .
Masukan:
Partisi data, , yang merupakan satu set data tupel pelatihan dan label kelas yang berkaitan;
Daftar_atribut, kumpulan beberapa atribut;
Metode_seleksi_atribut, sebuah prosedur untuk menentukan kriteria terbaik pemecahan data tupel ke dalam kelas masing-masing. Kriteria ini terdiri dari
pemecahan_atribut dan kemungkinannya, baik pemecahan simpul atau pemecahan bagian.
Hasil: pohon keputusan
Metode:
(1) Bentuk sebuah simpul �;
(2) jika tupel di ada pada kelas yang sama, , maka
(3) kembali � sebagai simpul daun yang diberi label kelas ; (4) jika daftar_atribut kosong maka
(5) kembali � sebagai simpul yang diberi label dengan kelas terbanyak di ; // kelas terbanyak
(6) berlaku metode_seleksi_atribut ( , daftar_atribut) untuk menemukan pemecahan kriteria terbaik;
(7) beri label � dengan kriteria_pemecahan; (8) jika pemecahan_atribut bernilai diskrit dan
beberapa pemecahan diperbolehkan maka // tidak terbatas untuk pohon biner (9) daftar_atribut daftar_atribut – pemecahan_atribut; // hapus
pemecahan_atribut
(10)Untuksetiap j dari pemecahan_kriteria
(11) kemudian menjadi kumpulan data tupel di dengan hasil ; //
partisi
(12) jika kosong maka
(13) Lampirkan sebuah simpul daun dengan label kelas terbanyak
di untuk simpul �;
(14) Untuk lainnya lampirkan simpul kembali dengan pembentukan _pohon_keputusan ( , daftar _atribut) pada �; berakhir untuk (15)kembali �;
Berdasarkan Gambar 2.5, input algoritma dasar terdiri dari partisi data ,
daftar atribut (attribute list), dan metode seleksi atribut (attribute selection method).
Proses untuk membangun sebuah pohon keputusan seperti yang ditunjukkan pada
Gambar 2.5 di atas adalah sebagai berikut:
1. Pohon dimulai dengan simpul tunggal �yang merepresentasikan tupel training
pada (langkah 1).
2. Jika semua tupel di berasal dari kelas yang sama, maka simpul � menjadi
daun dan diberi label kelas tersebut (langkah 2 dan 3). Langkah 4 dan 5
merupakan kondisi akhir. Semua kondisi akhir dijelaskan pada akhir algoritma.
3. Jika tidak, maka metode seleksi atribut digunakan untuk memilih atribut split,
yaitu atribut terbaik dalam memisahkan tupel ke dalam kelas masing-masing
(langkah 6). Atribut tersebut menjadi atribut tes pada simpul � (langkah 7).
4. Terdapat dua kemungkinan yang dapat mempartisi . Apabila � atribut split
pada simpul � dan � memiliki sejumlah nilai yang berbeda { , , … �}
maka pada data training dapat terjadi (langkah 8 dan 9):
a. Jika � memiliki nilai-nilai bersifat diskrit, maka sebuah cabang dibentuk
untuk setiap nilai �. Nilai total cabang yang akan dibentuk sebanyak
cabang. Partisi terdiri dari record yang terdapat pada yang memiliki
nilai untuk atribut �. Selanjutnya atribut �dihapus dari daftar atribut.
b. Jika � memiliki nilai yang bersifat kontinu, maka hasil pengujian simpul
�akan menghasilkan dua cabang. Kedua cabang tersebut adalah � < split
point dan � split point. Split point merupakan keluaran metode seleksi
dipartisi, sehingga terdiri dari record dimana � < split point dan
adalah sisanya.
5. Cabang akan dibuat untuk setiap nilai pada atribut tes dan tupel pada data
training akan dipartisi lagi (langkah 10 dan langkah 11).
6. Proses pembentukan ini menggunakan proses rekursif untuk membentuk
pohon pada setiap data partisi (langkah 14).
7. Proses rekursif akan berhenti jika telah mencapai kondisi sebagai berikut:
a. Semua tupel pada simpul berada di dalam satu kelas (langkah 2 dan 3).
b. Tidak ada atribut lainnya yang dapat digunakan untuk mempartisi tupel
lebih lanjut (langkah 4). Selanjutnya dalam hal ini, akan diterapkan jumlah
terbanyak (langkah 5). Hal tersebut berarti mengubah sebuah simpul
menjadi daun dan memberi label dengan kelas pada jumlah terbanyak.
Sebagai alternatifnya, distribusi kelas pada simpul ini dapat disimpan.
c. Tidak ada tupel yang digunakan untuk mencabang, suatu partisi kosong
(langkah 12). Selanjutnya dalam hal ini, sebuah daun dibuat dan diberi
label dengan kelas yang memiliki kelas terbanyak di (langkah 13).
8. Kembali menghasilkan pohon keputusan (langkah 15) (Han, et al,
2012:331-336; Neni Miswaningsih, 2015: 37-39).
Pohon keputusan memiliki beberapa cara dalam menentukan ukuran data
dalam bentuk pohon, salah satunya adalah dengan algoritma C4.5. Algoritma C4.5
menggunakan information gain sebagai penentu simpul akar, internal, dan daun.
Misalkan � merupakan simpul partisi dari . Apabila terdapat nilai
�. Perhitungan informasi yang dibutuhkan untuk mengklasifikasi pada tupel
dinyatakan sebagai berikut:
= − ∑ log
= .
dimana merupakan banyaknya jenis kategori nilai pada atribut C, =| ,�|
| |
merupakan probabilitas dari tupel yang mempunyai kelas . Info ( ) merupakan
rata-rata dari informasi yang dibutuhkan untuk mengetahui label kelas dari tupel .
juga sering dikenal sebagai entropy dari tupel . Sebagai ilustrasi
diberikan Tabel 2.1.
Tabel 2.1 Banyaknya Kelas pada Tupel
Kelas
frekuensi
− log −log −log
− log − p log − log
Apabila diberikan tupel dengan dua pengklasifikasian yaitu kelas , dan
, dengan frekuensi dan serta adalah proporsi dari setiap kelas, maka
= +
untuk analog dengan perhitungan .
Perhitungan − log dilakukan untuk mentransformasi masing-masing
proporsi kelas menjadi informasi dalam bentuk bit atau bilangan basis 2. Informasi
tersebut dapat juga dipandang sebagai jumlah informasi yang dapat dikodekan
Nilai − log akan positif bila lebih besar dari nol dan kurang dari
satu. Ketika = maka nilai dari − log adalah nol, sehingga nilai
− log diantara bilangan positif atau nol pada data training. Nilai =
− ∑= log adalah nol jika dan hanya jika semua data memiliki klasifikasi
yang sama dimana probabilitasnya adalah satu. Sebagai contoh diberikan Tabel 2.2.
Tabel 2.2 Contoh Perhitungan
Kelas
frekuensi 9 5
0,643 0,357
− log 0,637 1,485
− log 0,409 0,531
Tabel 2.2 merupakan data penjualan komputer, dimana adalah membeli
komputer dan adalah tidak membeli komputer. Berdasarkan Tabel 2.2
= , + , = , , nilai ≠ , artinya data belum
memiliki klasifikasi kelas yang sama, sehingga dibutuhkan perhitungan lanjutan
untuk menemukan simpul akar dalam pembentukan pohon keputusan.
Selanjutnya misalkan terdapat atribut �yangmemiliki nilai yang berbeda
{ , , … �}. Atribut � dapat digunakan untuk membagi ke dalam partisi
{ , , … , �}, dimana memuat tupel yang memiliki nilai dari �. Sebagai
ilustrasi perhitungan entropy, diberikan Tabel 2.3.
Tabel 2.3 Kelas Tupel D Berdasarkan Partisi Atribut �
� Kelas Total
Tabel 2.3 menunjukkan jumlah tupel dengan partisi atribut � yang
mempunyai nilai kategori , serta pengklasifikasian sebanyak dua kelas yaitu
, . Dimana , … , merupakan jumlah sampel pada subset yang mempunyai
nilai , yang berada pada kelas , kemudian , merupakan jumlah
sampel yang mempunyai nilai , , dan , merupakan jumlah sampel
kategori kelas , , maka nilai dari entropy atribut � dapat dihitung sebagai
berikut:
� = × − log − log − log
+ × − log − log − log
Rumus secara umum dalam mencari nilai entropy dari subset � sebagai
berikut:
� = � = ∑ | || |
�
= × ( ) .
dimana � adalah entropy dari subset �, v merupakan banyaknya jenis kategori
nilai pada subset �, | |
| | merupakan bobot dari subset dan jumlah sampel pada
subset yang mempunyai nilai dari �, dibagi dengan jumlah tupel dari . Entropy
dari subset � merupakan informasi harapan yang dibutuhkan untuk mengklasifikasi
suatu tupel dari berdasarkan partisi dari atribut �.
Menurut Han, et al (2012: 337), nilai information gain dari atribut �pada
subset dapat dihitung dengan persamaan berikut:
Information gain didefinisikan sebagai perbedaan diantara informasi asli
yang dibutuhkan dengan jumlah informasi baru yang didapatkan dari partisi �.
Atribut � yang memiliki nilai information gain tertinggi dipilih sebagai pemisah
atribut pada simpul �
Proses untuk menghitung nilai � bergantung dari nilai suatu atribut. Jika
adalah atribut diskrit, maka tupel dibagi menjadi sub tupel … , dimana
jumlah nilai pada atribut dan adalah sub tupel yang memiliki nilai atribut
. Jika adalah atribut kontinu, maka sub tupel dibagi menjadi duasub tupel
� dan � dengan = { | } dan = { | > }, dimana
merupakan sebuah nilai ambang (split point).
Nilai split information digunakan pada pencarian nilai gain ratio untuk
mengatasi bias terhadap atribut yang memiliki banyak nilai unik. Persamaan split
information dan gain ratio dinyatakan sebagai berikut:
� = − ∑ | || | × | || |
�
= .
� = � � .
Apabila atribut tersebut memiliki nilai gain ratio terbesar maka atribut
tersebut terpilih sebagai atribut split pada konstruksi pohon keputusan (Han, et al,
2012: 337-339). Sebagai contoh penerapan decision tree C4.5 dengan perhitungan
manual pada sebuah kasus pelanggan AllElectronic. Tabel 2.4 merupakan data
Tabel 2.4 Keputusan Membeli Komputer
RID age income student credit_rating Class_
buys_computer
1 youth high no fair no
2 youth high no excellent no
3 middle_aged high no fair yes
4 senior medium no fair yes
5 senior low yes fair yes
6 senior low yes excellent no
7 middle_aged low yes excellent yes
8 youth medium no fair no
9 youth low yes fair yes
10 senior medium yes fair yes
11 youth medium yes excellent yes
12 middle_aged medium no excellent yes
13 middle_aged high yes fair yes
14 senior medium no excellent no
Sumber: Han, et al, 2006: 299
Kasus yang tertera pada Tabel 2.4 akan dibuat pohon keputusan untuk
menentukan membeli komputer atau tidak dengan melihat umur, pendapatan, status
pelajar, dan peringkat kredit.
Pertama menghitung informasi yang dibutuhkan untuk mengklasifikasikan
partisi data menggunakan persamaan (2.1) dengan = , adalah banyaknya
kategori nilai pada kelas membeli komputer. Tabel 2.5 merupakan total kasus
pelanggan yang berada pada kelas yes dan no.
Tabel 2.5 Kelas Membeli Komputer
Class_buys_computer
yes no
9 5
= − log ( ) − log ( ) = ,
Selanjutnya menghitung informasi harapan yang dibutuhkan untuk
atribut age. Banyaknya data yang berada dalam kelas yes atau no berdasarkan
atribut age dapat dilihat pada Tabel 2.6.
Tabel 2.6 Kelas Membeli Komputer Berdasarkan Partisi Atribut Age
age Class_buys_computer
yes no
youth 2 3
middle_aged 4 0
senior 3 2
Digunakan persamaan (2.2) untuk menghitung informasi harapan yang
dibutuhkan untuk klasifikasi data berdasarkan partisi dari atribut age dengan
adalah banyaknya kategori pada atribut age.
�� = × (− log − log ) + × (− log − log ) +
× ( log − log ) = ,
Oleh karena itu didapatkan information gain yang dihitung menggunakan
persamaan (2.3).
= − �� = , − , = ,
Pergitungan gain ratio atribut age dapat dihitung menggunakan persamaan
(2.5) namun terlebih dahulu perlu dihitung nilai split information menggunakan
persamaan (2.4) dengan adalah banyaknya jenis kategori nilai pada atribut age.
�� = − × log ( ) − × log ( ) − × log ( ) = ,
Setelah perhitungan gain ratio dari setiap atribut maka akan dipilih nilai yang terbesar sebagai atribut yang menjadi simpul akar dari pohon keputusan dan nilai dari
atribut tersebut menjadi cabang. Perhitungan lanjutan yang analog dengan perhitungan
simpul akar perlu dilakukan apabila setiap cabang belum menunjukkan keputusan akhir.
Pada saat pembangunan pohon keputusan, akan banyak ditemukan adanya
cabang yang noise atau outlier pada data training. Pemangkasan pohon dapat
dilakukan untuk menghapus cabang-cabang tersebut sehingga dapat mempercepat
proses klasifikasi. Pohon yang dipangkas akan menjadi lebih kecil dan lebih mudah
dipahami. Pemangkasan pohon dilakukan selain untuk pengurangan ukuran pohon,
juga bertujuan untuk mengurangi tingkat kesalahan klasifikasi pada kasus baru.
Contoh pemangkasan pohon keputusan ditunjukkan Gambar 2.6 dan Gambar 2.7.
Gambar 2.6 Pohon Keputusan Sebelum Pemangkasan (Han, et al, 2006:305)
Setelah pemangkasan pohon, kemudian dilakukan pembentukan aturan
keputusan, yaitu membuat aturan keputusan dari pohon yang telah dibentuk. Aturan
tersebut dapat dalam bentuk if-then diturunkan dari pohon keputusan dengan
melakukan penelusuran dari akar sampai ke daun. Setiap simpul dan percabangan
akan diberikan if, sedangkan nilai pada daun akan ditulis then. Setelah semua aturan
dibuat, maka aturan dapat disederhanakan (digabungkan).
2. Naïve Bayes
Sebelum membahas mengenai naïve bayes, perlunya pengetahuan tentang
peluang bersyarat. Peluang bersyarat adalah peluang terjadinya kejadian � bila
diketahui bahwa suatu kejadian telah terjadi. Peluang bersyarat dilambangkan
denagn � �| dibaca “peluang � bila terjadi”. Persamaan untuk peluang
bersyarat sebagai berikut (Walpole, 1995: 97-98).
� �| =� � ∩� � � > .
Sama halnya dengan peluang terjadinya kejadian bila diketahui bahwa
suatu kejadian � telah terjadi.
� |� =� � ∩� � � > .
Dengan mengkombinasikan persamaan (2.6) dan (2.7) maka diperoleh
� |� � � = � � ∩ = � �| �
sehingga persamaan (2.7) menjadi:
|� =� � ∩� �
Teorema Bayes memprediksi peluang di masa depan berdasarkan
pengalaman di masa sebelumnya. Pada teorema Bayes, � dijabarkan oleh kumpulan
atribut dengan adalah beberapa hipotesis, sehingga data � termasuk sebuah
kelas (Han, et al, 2012: 350). Persamaan dari teorema Bayes adalah
� |� = � �| �� � .
Keterangan :
� : Data dengan kelas yang belum diketahui
: Hipotesis data � merupakan suatu kelas khusus
� |� : Probabilitas hipotesis berdasarkan kondisi � (posterior probability)
� : Probabilitas hipotesis (prior probability)
� �| : Probabilitas � berdasarkan kondisi pada hipotesis
� � : Probabilitas �
Naïve Bayes adalah pengklasifikasian statistik yang dapat digunakan untuk
memprediksi probabilitas keanggotaan suatu class. Bayes merupakan teknik
berbasis probabilistik sederhana yang berdasar pada penerapan teorema Bayes
dengan asumsi independensi yang kuat. Dengan kata lain, dalam naïve bayes, model
yang digunakan adalah “model fitur independen” (Eko Prasetyo, 2012: 59).
Klasifikasi naïve bayes yang mengacu pada teorema Bayes di atas mempunyai
persamaan sebagai berikut
Keterangan :
� |� : Probabilitas hipotesis jika diberikan fakta atau record � (posterior
probability)
� �| : Nilai parameter yang memberikan kemungkinan yang paling besar
(likelihood)
� : Probabilitas kelas (Prior probability)
� � : Probabilitas �
Menurut Han, et al (2012: 351) proses dari pengklasifikasian naïve bayes
adalah sebagai berikut:
a. Variabel adalah kumpulan dari data dan label yang terkait dengan class.
Setiap data diwakili oleh vektor atribut -dimensi, � = � , � , … , � dengan
dibuat dari data atribut, berturut-turut, � , � , … , � .
b. Misalkan terdapat class, , , … , . Diberikan sebuah data �, kemudian
pengklasifikasian akan memprediksi � ke dalam kelompok yang memiliki
probabilitas posterior tertinggi berdasarkan kondisi �. Artinya klasifikasi naïve
bayes memprediksi bahwa � termasuk class jika dan hanya jika:
� |� > �( |�) untuk , ≠ .
Maka nilai � |� harus lebih dari �( |�) supaya diperoleh hasil akhir
� |� .
c. Ketika � � konstan untuk semua class maka hanya � �| � yang
dihitung. Jika probabilitas class prior sebelumnya tidak diketahui, maka
untuk menghitung � �| dan � �| � . Perhatikan bahwa probabilitas
class prior dapat diperkirakan oleh
� = (| , |)
| | .
dimana | , | adalah jumlah data training dari kelas dan adalah jumlah
total data training yang digunakan.
d. Apabila diberikan kumpulan data yang mempunyai banyak atribut, maka
perhitungan � �| dengan penjabaran lebih lanjut rumus Bayes tersebut
yaitu menjabarkan � � , . . . , � | menggunakan aturan perkalian, menjadi
sebagai berikut (Samuel Natalius: 2010):
� � , … , � | = � � | � � , … , � | , �
= � � | � � | , � � � , … , � | , � , �
� � , … , � | = � � | � � | , � … � � | , � , � , … , � −
Dapat dilihat bahwa hasil penjabaran tersebut menyebabkan semakin banyak
dan semakin kompleksnya faktor-faktor syarat yang mempengaruhi nilai
probabilitas, yang hampir mustahil untuk dianalisa satu-persatu. Akibatnya,
perhitungan tersebut menjadi sulit untuk dilakukan. Oleh karena itu digunakan
asumsi independensi yang sangat tinggi (naïve), bahwa masing-masing
petunjuk � , � , … , � saling bebas (independen) satu sama lain, maka
berlaku suatu kesamaan sebagai berikut (Samuel Natalius: 2010):
�(� |� ) =�(� ∩ � )�(� ) =� � �(� )
�(� ) = � � untuk ≠ , sehingga
Disimpulkan bahwa asumsi independensi naïve tersebut membuat syarat
peluang menjadi sederhana, sehingga perhitungan menjadi mungkin untuk
dilakukan. Selanjutnya, penjabaran � � , . . . , � | dapat disederhanakan
menjadi seperti berikut:
� �| = ∏ � � | = � � | ×
=
� � | × … × � � | .
Perhitungan � �| pada setiap atribut mengikuti hal-hal berikut:
1) jika � adalah kategori, maka � � | adalah jumlah data dari kelas di
yang memiliki nilai � untuk atribut � dibagi dengan | , | yaitu
jumlah data dari kelas di ,
2) jika � adalah numerik, biasanya diasumsikan memiliki distribusi Gauss
dengan rata-rata � dan standar deviasi �, didefinisikan oleh:
�, �, � = √ ��
− �−�� .
sehingga diperoleh:
� � | = � , � , � .
Setelah itu akan dihitung � dan � yang merupakan rata-rata dan standar
deviasi masing-masing nilai atribut � untuk tupel training kelas .
e. � �| � dievaluasi pada setiap kelas untuk memprediksi
pengklasifikasian label kelas data � dengan menggunakan
� �| � > �(�| )�( ) untuk , ≠ .
label kelas untuk data � yang diprediksi adalah kelas jika nilai � �| �
E. Pengujian dan Evaluasi Model
Model yang didapatkan dari kedua metode decision tree C4.5 dan naïve byes
kemudian dilakukan pengujian menggunakan k-fold cross validation.
Cross-validation adalah bentuk sederhana dari teknik statistik. Jumlah fold standar untuk
memprediksi tingkat error dari data adalah dengan menggunakan 10-fold cross
validation (Witten, et al, 2011: 153).
Data yang digunakan dibagi secara acak ke dalam k subset yaitu
, , … , dengan ukuran yang sama. Dataset akan dibagi menjadi data training
dan data testing. Proses training dan testing dilakukan sebanyak k kali secara
berulang-ulang. Pada iterasi ke-i, partisi disajikan sebagai data testing dan partisi
sisanya digunakan secara bersamaan dan berurutan sebagai data training. Iterasi
kedua, subset , , … , akan dites pada , dan selanjutnya hingga (Han, et
al, 2012: 364). Gambar 2.8 berikut adalah contoh ilustrasi 4-fold cross validation.
Gambar 2.8 Ilustrasi 4-Fold Cross Validation
Berdasarkan Gambar 2.8 ditunjukkan bahwa nilai fold yang digunakan
adalah 4-fold cross validation. Berikut diberikan langkah-langkah pengujian data
a. Dataset yang digunakan dibagi menjadi 4 bagian, yaitu , , , dan . �,
= , , , digunakan sebagai data testing dan dataset lainnya sebagai data
training.
b. Tingkat akurasi dihitung pada setiap iterasi ( iterasi-1, iterasi-2, iterasi-3,
iterasi-4), kemudian dihitung rata-rata tingkat akurasi dari seluruh iterasi untuk
mendapatkan tingkat akurasi data keseluruhan.
Evaluasi hasil klasifikasi dilakukan dengan metode confusion matrix.
Confusion matrix adalah tool yang digunakan sebagai evaluasi model klasifikasi
untuk memperkirakan objek yang benar atau salah. Sebuah matrix dari prediksi
yang akan dibandingkan dengan kelas sebenarnya atau dengan kata lain berisi
informasi nilai sebenarnyadan prediksi pada klasifikasi (Gorunescu, 2011: 319).
Tabel 2.7 Tabel Confusion Matrix Dua Kelas
Clasification Predicted class
Class=Yes Class=No
Class=Yes a (true positive) b (false negative)
Class=No c (false positive) d (true negative)
Pada tabel confusion matrix di atas, true positive (TP) adalah jumlah record
positif yang diklasifikasikan sebagai positif, false positive (FP) adalah jumlah
record negatif yang diklasifikasikan sebagai positif, false negatives (FN) adalah
jumlah record positif yang diklasifikasikan sebagai negatif, true negatives (TN)
adalah jumlah record negatif yang diklasifikasikan sebagai negatif. Setelah data uji
diklasifikasikan maka akan didapatkan confusion matrix sehingga dapat dihitung
Sensitivitas adalah proporsi dari class=yes yang teridentifikasi dengan
benar. Spesifisitas adalah proporsi dari class=no yang teridentifikasi dengan benar.
Contohnya dalam klasifikasi pelanggan komputer dimana class=yes adalah
pelanggan yang membeli computer sedangkan class=no adalah pelanggan yang
tidak membeli komputer. Dihasilkan sensitivitas sebesar 95%, artinya ketika
dilakukan uji klasifikasi pada pelanggan yang membeli, maka pelanggan tersebut
berpeluang 95% dinyatakan positive (membeli komputer). Apabila dihasilkan
spesifisitas sebesar 85%, artinya ketika dilakukan uji klasifikasi pada pelanggan
yang tidak membeli, maka pelanggan tersebut berpeluang 95% dinyatakan negative
(tidak membeli).
Rumus untuk menghitung akurasi, spesifisitas, dan sensitivitas pada
confusion matrix adalah sebagai berikut (Gorunescu, 2011: 319)
� = � + � + � + � =� + � + + + .+
= � + � = + .�
= � + � = + .�
F. Waikato Environment for Knowledge (WEKA)
The Waikato Environment for Knowledge Analysis (WEKA) adalah sebuah
sistem data mining open source yang berbasis java. Sistem ini dikembangkan oleh
Universitas Waikato di Selandia Baru dan merupakan perangkat lunak free yang
tersedia di bawah GNU (General Public License). WEKA menyediakan dukungan
yang luas untuk seluruh proses data mining mulai dari menyiapkan data masukkan,
pembelajaran. Metode atau teknik yang digunakan pada WEKA adalah Predictive
dan Descriptive karena sistem ini mendukung teknik-teknik data preprocessing,
clustering, classification, regression, visualization, dan feature Reduction. (Witten,
et all, 2011: 403-404 ).
Gambar 2.9 Tampilan Awal GUI WEKA
WEKA mulai dikembangkan sejak tahun 1994 dan telah menjadi software
data mining open source yang paling popular. WEKA mempunyai kelebihan seperti
mempunyai banyak algoritma data mining dan machine learning, kemudahan
dalam penggunaannya, selalu up-to-date dengan algoritma-algoritma yang baru.
Software WEKA tidak hanya digunakan untuk akademik saja namun cukup banyak
dipakaioleh perusahaan untuk meramalkan bisnis dari suatu perusahaan.
WEKA mendukung beberapa format file untuk inputnya, yaitu:
1. Comma Separated Values (CSV): Merupakan file teks dengan pemisah
tanda koma (,) yang cukup umum digunakan. File ini dapat dibuat dengan
menggunakan Microsoft Excel atau membuat sendiri dengan menggunakan
2. Format C45: Merupakan format file yang dapat diakses dengan
menggunakan aplikasi WEKA.
3. Attribute-Relation File Format (ARFF): Merupakan tipe file teks yang
berisi berbagai instance data yang berhubungan dengan suatu set atribut
data yang dideskripsikan serta di dalam file tersebut.
4. SQL Server/ MySql Server: Dapat mengakses database dengan
menggunakan SQL Server/MySql Server.
Beberapa menu dalam tampilan WEKA, diantaranya yaitu
1. Explorer, menu ini memberikan akses untuk semua fasilitas yang
menggunakan pilihan menu dan pengisian data. Pada menu ini terdapat
enam sub-menu pada bagian atas window, sub-menu tersebut yaitu:
a. Preprocess, proses pemilihan dataset yang akan diolah pemilihan filter,
b. Classify, terdapat berbagai macam teknik klasifikasi dan evaluasinya
yang digunakan untuk mengolah data,
c. Cluster, terdapat berbagai macam teknik cluster yang dapat digunakan
untuk mengolah data,
d. Associate, terdapat berbagai macam teknik association rules yang dapat
digunakan untuk mengolah data,
e. Select Atribut, proses pemilihan aspek yang mempunyai hubungan
paling relevan pada data,
f. Visualize, proses menampilan berbagai plot dua dimensi yang dibentuk
2. Experimenter, menu ini digunakan untuk mengatur percobaan dalam skala
besar, dimulai dari running, penyelesaian, dan menganalisis data secara
statistik.
3. Knowledge Flow, pada tampilan menu ini, pengguna memilih komponen
WEKA dari toolbar untuk memproses dan menganalisis data serta
memberikan alternatif pada menu Explorer untuk kondisi aliran data yang
melewati sistem. Selain itu, Knowledge Flow juga berfungsi untuk
memberikan model dan pengaturan untuk mengolahan data yang tidak bisa
dilakukan oleh Explorer.
4. Simple CLI, menu yang menggunakan tampilan command-line. Menu ini
menggunakan tampilan command-line untuk menjalankan class di weka.jar,
dimana langkah pertama variabel Classpath dijelaskan di file Readme.
Pada sub-menu klsifikasi WEKA terdapat test options yang digunakan
untuk menguji kinerja model klasifikasi. Ada empat model tes yaitu:
1. Use training set
Pengetesan dilakukan dengan menggunakan data training itu sendiri.
Akurasi akan sangat tinggi, tetapi tidak memberikan estimasi akurasi yang
sebenarnya terhadap data yang lain (data yang tidak dipakai untuk training).
2. Supplied test set
Pengetesan dilakukan dengan menggunakan data lain (file training dan
testing tersedia secara terpisah). Dengan menggunakan option inilah bisa
dilakukan prediksi pada data tes.
Pada cross-validation, akan ada pilihan banyaknya fold yang akan
digunakan. Nilai default-nya yaitu 10.
4. Percentage split
Hasil klasifikasi akan dites menggunakan k% dari data tersebut, dimana k
adalah proporsi dari dataset yang digunakan untuk data training. Persentase
di kolom adalah bagian dari data yang dipakai sebagai training set. Pada
option ini data training dan testing terdapat dalam satu file.
G. Penelitian yang Relevan
Penelitian tentang data mining dengan menggunakan berbagai algoritma
pada analisis bidang keuangan telah banyak dilakukan khususnya untuk analisis
klasifikasi kredit. Beberapa diantaranya yang mendukung penelitian ini dengan
variabel dan metode penelitian yang berkaitan.
Penelitian yang dilakukan oleh Yogi Yusuf, dkk dalam jurnal “Evaluasi
Pemohon Kredit Mobil di PT X dengan menggunakan Teknik Data Mining Decision
Tree”. Penelitian ini menggunakan model credit scoring dengan algoritma C5.0
kredit mobil dengan teknik decision tree dan bantuan software Celementine. Atribut
yang digunakan ada 8 yaitu penghasilan, cicilan per bulan, uang muka, jumlah
periode pinjaman, rekening tabungan, umur, rekening tagihan telepon, rekening
tagihan listrik, dan atribut label kelas. Jumlah sampel yang digunakan sebanyak 750
record. Data dibagi menjadi 60% sebagai data training dan 40% sebagai data
testing. Dari penelitian tersebut dapat diketahui bahwa terdapat 148 record
(79,57%) yang memiliki hasil validasi yang benar dari 186 sampel. Sedangkan
yang memiliki perbedaan antara hasil prediksi dan aktual. Hasil prediksi juga
menunjukkan bahwa sebesar 19,4 % yang semula diprediksi memiliki status kredit
lancar ternyata memiliki status kredit macet. Tingkat akurasi keseluruhan dari
model yang dibangun sebesar 79,57%.
Penelitian yang dilakukan oleh Claudia Clarentia Ciptohartono dalam jurnal
skripsi “Algoritma Klasifikasi Naïve Bayes untuk Menilai Kelayakan Kredit”.
Penelitian ini menggunakan algoritma naïve bayes dan software bantu Rapid Miner
untuk menentukan nilai kelayakan kredit konsumen dari perusahaan BCA Finance
Jakarta 2013. Data awal penelitian berjumlah 682 data dan 20 atribut, setelah tahap
preprocessing menjadi 682 data dan 16 atribut. Pada penelitian ini digunakan
metode cross validation untuk mengukur kinerja algoritma yang digunakan,
diketahui nilai akurasi sebelum preprocessing sebesar 85,57% dan setelah
preprocessing sebesar 92,53% .
Penelitian yang dilakukan oleh Rina Fiati dalam jurnal “Model Klasifikasi
Kelayakan Kredit Koperasi Karyawan Berbasis Decision Tree”. Pada penelitian ini
menggunakan algoritma decision tree dan bantuan software RapidMiner. Atribut
yang digunakan ada 6 yaitu nomor anggota, bagian, golongan, masa keanggotaan,
status marital, dan status pinjaman. Jumlah data yang digunakan ada 584 record,
perhitungan manual nilai gain menggunakan data sampel yaitu 10 record. Tingkat
akurasi decision tree untuk data dari koperasi karyawan PT Nojorono Tobacco
International sebesar 92,28%. Berdasakan model klasifikasi yang telah diperoleh
pada penelitian ini, penentuan kelayakan kredit koperasi karyawan adalah dengan
BAB III PEMBAHASAN
A. Sumber Data
Sumber data diperoleh dari Koperasi X yang terdiri dari 3 file excel
peminjam dengan jaminan sertifikat tanah, tunjuk, dan Buku Pemilik Kendaraan
Bermotor (BPKB) serta 25 file excel laporan nominatif pinjaman perbulan dimana
setiap file mewakili satu bulan. Data peminjam adalah data mengenai status
peminjam, pendapatan keluarga, pengeluaran keluarga, usaha, tempat tinggal,
agunan, dan info-info lain yang mencakup 5C yang digunakan sebagai
pertimbangan pemberian kredit. Data laporan nominatif pinjaman perbulan adalah
data mengenai besar pinjaman, sisa pinjaman, bunga, angsuran, kolektibilitas, dan
info-info lain yang berkaitan dengan angsuran perbulan. Rentang waktu dari data
peminjam adalah Januari 2011 - Maret 2016 dan rentang waktu pada data laporan
nominatif pinjaman perbulan adalah Januari 2014 - Maret 2016. Daftar atribut pada
kedua data dapat dilihat pada lampiran 1.
Data yang digunakan adalah data peminjam yang telah melunasi pinjaman
dan peminjam yang bermasalah. Pengumpulan data dilakukan secara manual yaitu
pada data laporan nominatif pinjaman perbulan dipilih data yang mempunyai nilai
bakidebet 0 artinya peminjam telah melunasi pinjaman dan data yang mempunyai
nilai kolektibilitas 2-4 artinya peminjam bermasalah dalam mengangsur pinjaman.
Hasil pemilihan pada data laporan nominatif pinjaman perbulan tersebut kemudian
dihubungkan dengan file peminjam dengan primary key yaitu No.Anggota
Pada data peminjam dan data laporan nominatif pinjaman perbulan tidak
semua atribut digunakan. Atribut yang digunakan pada data peminjam adalah
sebagai berikut:
a. No.Anggota digunakan sebagai primary key,
b. pekerjaan adalah pekerjaan peminjam ketika melakukan permohonan
pinjaman,
c. No KTP adalah Nomer Kartu Tanda Kependudukan peminjam,
d. pekerjaan istri/suami adalah pekerjaan suami atau istri peminjam ketika
melakukan permohonan pinjaman,
e. pendapatan keluarga adalah jumlah pendapatan peminjam ditambah dengan
jumlah pendapatan suami atau istri peminjam,
f. pengeluaran keluarga adalah jumlah pengeluaran keluarga perbulan untuk
memenuhi kebutuhan hidup,
g. pinjaman adalah besar pinjaman yang dilakukan,
h. kemampuan angsuran adalah kemampuan peminjam untuk mengangsur,
i. jangka waktu adalah jumlah waktu untuk mengembalikan pinjaman,
j. agunan adalah jaminan yang diberikan oleh peminjam,
k. status agunan adalah status kepemilikan jaminan,
l. nilai jaminan adalah besar nominal uang yang setara dengan jaminan,
m. tujuan adalah tujuan digunakannya dana pinjaman,
n. tanggal peminjaman adalah tanggal dimana peminjam melakukan pinjaman.
Atribut yang digunakan pada data laporan nominatif pinjaman perbulan
a. No.Anggota digunakan sebagai primary key,
b. kolektibilitas adalah status kelancaran peminjam dalam mengangsur
pinjaman.
Atribut-atribut lain yang tidak digunakan adalah atribut yang telah terwakili
oleh atribut yang digunakan, atribut yang tidak ada kaitannya dengan
pengklasifikasian, atribut yang nilainya terlalu beragam, dan atribut yang sering
tidak mempunyai isian, sehingga atribut tersebut tidak diperlukan pada penelitian
ini. Contoh data yang telah dikumpulkan dapat dilihat pada lampiran 2. Setelah data
lengkap maka tahap selanjutnya mempersiapkan data tersebut untuk proses data
mining yaitu preprocessing yang terdiri dari Data Cleaning, Data Integration, Data
Selection, Data Transformation.
B. Pembersihan Data (Data Cleaning) dan Integrasi Data (Data Integration) Preprocessing data yang dilakukan setelah data lengkap adalah
pembersihan data. Masih adanya data yang tidak memiliki kelengkapan atribut
dapat mengakibatkan hasil dari proses mining tidak baik atau memungkinkan
adanya noise. Oleh karena itu perlunya preprocessing pembersihan data.
Pembersihan data dilakukan terhadap data yang tidak memiliki kelengkapan atribut
dengan cara menghapus data tersebut.
Dari 1.076 dataset dilakukan penghapusan pada 97 dataset dengan rincian
sebagai berikut:
1. Data yang tidak mempunyai kelengkapan atribut pekerjaan sebanyak 1.
3. Data yang tidak mempunyai kelengkapan atribut pekerjaan suami/istri
sebanyak 54.
4. Data yang tidak mempunyai kelengkapan atribut pengeluaran keluarga
sebanayak 1.
5. Data yang tidak mempunyai kelengkapan atribut kemampuan angsuran
sebanyak 10.
6. Data yang tidak mempunyai kelengkapan atribut status agunan sebanyak 2.
7. Data yang tidak mempunyai kelengkapan atribut Nilai jaminan sebanyak 19.
8. Data yang tidak mempunyai kelengkapan atribut tujuan sebanyak 2.
9. Data yang tidak mempunyai kelengkapan atribut kolektibilitas sebanyak 1.
Setelah proses pembersihan data, jumlah data menjadi 979 dataset yang
kemudian dilanjutkan dengan proses integrasi data.
Integrasi data pada penelitian ini dilakukan pada awal ketika pemilihan
data-data yang diperlukan dan penghubungan data-data laporan nominatif pinjaman perbulan
dengan data peminjam menggunakan primary key yaitu No.Anggota yang
kemudian disimpan dalam satu file. Selain itu, integrasi data juga dilakukan dengan
penggantian atribut No.KTP dan tanggal peminjaman menjadi atribut umur. Atribut
umur tersebut dapat diidentifikasi melalui tahun peminjaman dikurangi dengan
tahun lahir peminjam. Tahun lahir peminjam dapat diidentifikasi melalui karakter
C. Seleksi Data (Data Selection) dan Transformasi Data (Data Transformation)
Seleksi data yang dilakukan adalah penghapusan atribut No.Anggota dan
penghapusan atribut-atribut yang tidak digunakan dalam analisis seperti nama,
alamat, nomer telepon, uraian usaha, dan lain-lain. Sehingga atribut-atribut yang
digunakan untuk analisis klasifikasi adalah pekerjaan, umur, pekerjaan istri/suami,
pendapatan keluarga, pengeluaran keluarga, pinjaman, kemampuan angsuran,
jangka waktu, agunan, status agunan, nilai jaminan, tujuan, dan kolektibilitas.
Setelah dilakukan tahap pembersihan data, integrasi data, dan seleksi data,
selanjutnya dilakukan tahap transformasi data. Transformasi data yang dilakukan
pada penelitian ini adalah pengubahan tipe data ke dalam format yang sesuai
sehingga siap untuk diproses menggunakan metode decision tree C4.5 dan naïve
bayes.
Transformasi data dilakukan pada data yang bertipe numerik menjadi
interval, diantaranya dilakukan pada beberapa atribut. Hasil transformasi dapat
dilihat pada Tabel 3.1-3.7.
Tabel 3.1 Transformasi Atribut Umur
Umur (tahun)
Sebelum Transformasi Sesudah Transformasi
27 30 U1
48 30-39 U2
68 40-49 U3
58 50-59 U4
Tabel 3.2 Transformasi Atribut Pendapatan Keluarga
Pendapatan Kel