METODOLOGI PENELITIAN
23
3.1. Pengumpulan Data
Penelitian ini menggunakan dataset pemasaran bank yang dikumpulkan dari
bank ritel Portugis. Kumpulan data ini dibuat oleh P. Rita, P. Cortez, dan S. Moro dari
bank data yang sebenarnya selama 2008 hingga tahu 2010 [2]. Kumpulan data berisi
informasi rekam kampanye pemasaran langsung institusi bank, dan berisi 45.211 data
pribadi klien. Setiap kontak memiliki 16 atribut input dan satu atribut keputusan. Jenis
atribut input berbeda. Tiga atribut adalah tipe biner, tujuh atribut tipe data numerik, dan
enam atribut tipe data kategoris. Atribut target adalah tipe biner. Tabel yang terangkum
sebagai berikut.
24
primary 6851 15.153 %
unknown 1857 4.1074 %
default Memiliki kredit di akun no 44396 98.197 %
default yes 815 1.802 %
Housing Jika ada pinjaman rumah yes 25130 55.583 %
no 20081 44.416 %
loan Punya pinjaman pribadi no 37967 83.977 %
yes 7244 16.022 %
contact Tipe komunikasi cellular 29285 64.774 %
unknown 13020 28.798 %
telephone 2906 6.427 %
Month Terakhir terhubung dalam may 13766 30.448 %
bulan jul 6895 15.250 %
aug 6247 13.817 %
jun 5341 11.813 %
nov 3970 8.781 %
apr 2932 6.485 %
feb 2649 5.859 %
jan 1403 3.103 %
oct 738 1.632 %
sep 579 1.280 %
mar 477 1.055 %
dec 214 0.473 %
poutcome Hasil dari hasil unknown 36959 81.747 %
sebelumnya failure 4901 10.840 %
other 1840 4.069 %
success 1511 3.342 %
Y = target apakah klien berlangganan no 39922 88.301 %
class deposito berjangka? yes 5289 11.698 %
25
Tabel 2. Tabel Data Numerikal
26
dilakukan
untuk klien
ini dari
kampanye
sebelumnya
Pdays jumlah hari 40.197 100.128 -1.000 -1.000 -1.000
yang berlalu
setelah klien
terakhir
dihubungi
dari
kampanye
sebelumnya
3.2. Preprocessing
Dalam penelitian ini preprocessing data diadopsi pada penelitian dengan
menambahkan proses baru dengan tujuan menghasilkan data latih yang lebih baik dari
sebelumnya. Langkah preprocessing dalam penelitian ini dijelaskan dalam ke beberapa
paragraf berikut.
Pertama, terdapat nilai “unknown” dalam beberapa variabel kategori pada job,
education, poutcome. Data ini dianggap sebagai data tidak diketahui. Maka diperlukan
proses imputasi mengisi nilai yang hilang pada suatu dataset. Dengan dilakukan
membuat model decision tree yang menggunakan fitur-fitur lain pada dataset sebagai
input, dan menggunakan nilai yang hilang sebagai target. Kemudian, model decision
tree tersebut dijadikan sebagai "predictor" yang akan digunakan untuk memprediksi
nilai yang hilang pada dataset [19].
Kedua, setiap variabel numeric memiliki standar deviasi yang cukup tinggi.
rentang nilai yang berbeda. Dapat dilihat sebagai contoh pada nilai rentang pada
variabel balance dengan nilai rata-rata standar deviasi 1362,272 sedangkan dengan
27
campaign 2.763, nilai rentang antara kedua variabel sangat tinggi maka diperlukan
Standarisasi pada semua variabel. Normalisasi dilakukan untuk menyamakan rentang
nilai pada setiap variabel numeric yang memiliki rentang nilai yang berbeda. Agar
menghasilkan yang lebih baik.
Ketiga, variabel data kategoris yang tersedia pada dataset dalam penelitian ini
yaitu: job, marital, education, default, housing, loan, contact, month, dan poutcome
dikodekan ulang menggunakan metode One-Hot-Encoding. Hal tersebut dilakukan
untuk mengurangi efek kardinalitas yang tinggi dalam semua variabel. Gong Et.al
menyimpulkan dengan menggunakan metode One-Hot-Encoding akan menghasilkan
hasil yang lebih seimbang [21].
Keempat, preprocessing data ini menghasilkan data pemodelan yang lebih
bersih dibandingkan pada penelitian sebelumnya [9]. Data numerik yang terbentuk
yaitu :'age', 'balance', 'day', 'duration', 'campaign', 'pdays', 'previous'. Dan fitur
kategoris yang telah disandikan yaitu:'job', 'marital', 'education', 'default', 'housing',
'loan', 'contact', 'month', 'poutcome'.
Kelima, Pada penelitian ini dataset yang sebanyak 45211 yang memiliki 16
atribut dan 1 atribut label yang terbagai menjadi 2 kelas yaitu kelas “Yes” sebanyak
5.289 dan kelas “No” sebanyak 39.922 akan dibagi menjadi 80% data latih dan, 20%
data uji.
Terakhir, Data yang digunakan dikatakan imbalance dikarenakan jumlah kelas
“yes” dan kelas “no” tidak seimbang. Untuk pemilihan metode penyetaraan terhadap
data imbalance secara umum yang pertama adalah undersampling yaitu data kelas
terbanyak dipangkas dan diselaraskan pada data yang terkecil,namun teknik
undersampling ini memiliki kelemahan yakni akan menghapus data yang cukup
penting dalam dataset yang kedua adalah oversampling yaitu data kelas yang jumlah
terkecil diselaraskan dengan data terbanyak sehingga terjadi suatu keseimbangan
antara kedua kelas data, namun teknik ini juga memiliki kelemahan yang
memungkinkan menghasilkan data yang duplikat. dalam menangani data yang tidak
seimbang atau imbalance maka diperlukan penyeimbangan dataset dengan
menggunakan SMOTE (Synthetic Minority Over-sampling Technique) yang dimana
28
teknik ini bertujuan untuk mensintesiskan kelas minor dengan memperbanyak
jumlahnya sehingga menyamakan kelas mayor [22]. Teknik ini merupakan
pengembangan dari teknik oversampling karena tidak menghasilkan data yang duplikat
atau sama yang menyebabkan overfitting sehingga mempengaruhi data uji, melainkan
teknik ini menghasilkan titik data yang berbeda dari titik data sebenarnya. Data
imbalance pada kelas “yes” sebelumnya sebanyak 4226 dan kelas “no” sebanyak
31942. Setelah dilakukan SMOTE maka data pada kelas “yes” menjadi 31942 dan data
pada kelas “no” sebanyak 31942 Dikatakan bahwa tiap kelas pada dataset seimbang.
29
Optimalisasi Hyperparameter berperan penting dalam penelitian ini. Optimasi
Hyperparameter bertujuan meningkatkan kinerja prediksi suatu model [24]. Pada
penelitian yang telah dilakukan mengenai optimalisasi hyperparameter yang dilakukan
oleh Alhakeem et.al dalam memprediksikan kekuatan tekanan beton yang ramah
lingkungan menghasilkan akurasi yang meningkat signifikan dengan menggunakan
hyperparameter tuning n_estimator, Learning Rate, Max Depth, dan Subsample [25].
Hyperparameter yang ditentukan pada tabel 4:
No Hyperparameter nilai
3 n_estimators 150
4 max_depth 4,6,8
30
4. max_depth : mengindikasikan kedalaman tree yang dibuat. lebih
dalam suatu tree maka lebih bercabang dan menangkap informasi yang artinya
semakin dalam maka memungkinkan model untuk mempalajari relasi atau
hubungan yang lebih speisifik pada sampel
3.4. Evaluasi
Evaluasi yang akan digunakan pada penelitian ini meliputi classification report
dengan menggunakan library sklearn yang memuat nilai akurasi, presisi, dan recall.
Akurasi adalah hasil seberapa baik performa dari model yang digunakan. Presisi adalah
rasio antara dari nilai True Positive dengan keseluruhan data positif. Selain dari hasil
evaluasi dari nilai akurasi dan presisi, nilai recall juga penting, karena recall
memberikan informasi seberapa akurat model yang digunakan untuk mengidentifikasi
data yang relevan, biasanya disebut dengan nilai Sensitivity atau True Positive Rate.
Kemudian evaluasi tambahan yang lain adalah menggunakan confusion matrix
berisi True Positive (TP), True Negative (TN), False Positive (FP), dan False Negative
(FN) pada tabel 5.
31
Tabel 4. Confusion matrix
Keterangan:
• True Positive: Klasifikasi benar terhadap pelanggan berlangganan deposito
berjangka.
Dari Confusion matrix yang didapatkan kita dapat mengevaluasi dengan evaluasi
matrik diantaranya: matrik akurasi kelas 0 dan kelas 1, presisi kelas 0 dan 1, recall
kelas 0 dan kelas 1.
32
Berikut perhitungan nilai metrik berdasarkan hasil confusion matrix diatas
𝑇𝑃 + 𝑇𝑁
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 =
𝑃+𝑁
7742
𝑃𝑟𝑒𝑠𝑖𝑠𝑖𝑘𝑒𝑙𝑎𝑠0 = = 0.96775
7742 + 258
𝑇𝑁
𝑃𝑟𝑒𝑠𝑖𝑠𝑖𝑘𝑒𝑙𝑎𝑠0 =
𝑇𝑁 + 𝐹𝑁
𝑇𝑃
𝑃𝑟𝑒𝑠𝑖𝑠𝑖𝑘𝑒𝑙𝑎𝑠1 =
𝑇𝑃 + 𝐹𝑃
𝑃𝑟𝑒𝑠𝑖𝑠𝑖𝑘𝑒𝑙𝑎𝑠0 + 𝑃𝑟𝑒𝑠𝑖𝑠𝑖𝑘𝑒𝑙𝑎𝑠1
𝑅𝑎𝑡𝑎 − 𝑟𝑎𝑡𝑎𝑝𝑟𝑒𝑠𝑖𝑠𝑖 =
2
𝑇𝑁
𝑅𝑒𝑐𝑎𝑙𝑙𝐾𝑒𝑙𝑎𝑠0 =
𝑇𝑁 + 𝐹𝑃
𝑇𝑃
𝑅𝑒𝑐𝑎𝑙𝑙𝐾𝑒𝑙𝑎𝑠1 =
𝑇𝑃 + 𝐹𝑁
𝑅𝑒𝑐𝑎𝑙𝑙𝐾𝑒𝑙𝑎𝑠0 + 𝑅𝑒𝑐𝑎𝑙𝑙𝐾𝑒𝑙𝑎𝑠1
𝑅𝑎𝑡𝑎 − 𝑟𝑎𝑡𝑎 𝑟𝑒𝑐𝑎𝑙𝑙 =
2
Akurasi adalah rasio total data yang diklasifikasikan benar dalam sebuah set data uji.
presisi digambarkan sebagai rasio prediksi benar dibandingkan dengan keseluruhan
hasil yang diprediksi setiap kelas. Persentase data yang diklasifikasikan dengan benar
disebut recall). spesifisitas merupakan matrik yang menjelaskan klasifikasi akurat dari
data kelas 0. Terakhir, perbandingan rata-rata antara presisi dan recall disebut F1-Score
yang dapat dirumuskan pada Persamaan 3.
33
𝑟𝑎𝑡𝑎−𝑟𝑎𝑡𝑎𝑃𝑟𝑒𝑠𝑖𝑠𝑖×𝑟𝑎𝑡𝑎−𝑟𝑎𝑡𝑎𝑟𝑒𝑐𝑎𝑙𝑙
𝐹1𝑆𝑐𝑜𝑟𝑒 = 2 × 𝑟𝑎𝑡𝑎−𝑟𝑎𝑡𝑎𝑃𝑟𝑒𝑠𝑖𝑠𝑖+𝑟𝑎𝑡𝑎−𝑟𝑎𝑡𝑎𝑅𝑒𝑐𝑎𝑙𝑙 (3)
34