Anda di halaman 1dari 12

BAB III

METODOLOGI PENELITIAN

Gambar 1. Rancangan penelitian yang diusulkan

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.

Tabel 1. Tabel data kategorikal

Atribut Deskripsi Fitur Jumlah Persentase


job Tipe pekerjaan Blue-collar 9732 21.525 %
Management 9458 20.919 %
Technician 7597 16.803 %
Admin 5171 11.437 %
Services 4154 9.188 %
Retired 2264 5.007 %
Self-employed 1579 3.492 %
Entrepreneur 1487 3.289 %
Unemployed 1303 2.882 %
Housemaid 1240 2.742 %
Student 938 2.074 %
Unknown 288 0.637 %
marital Status nikah married 27214 60.193 %
single 12790 28.289 %
divorced 5207 11.517 %
education Level edukasi secondary 23202 51.319 %
tertiary 13301 29.419 %

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

Fitur Deskripsi Rata- STD Persentil 25 Persentil 50 Persentil 75


Rata
age Interger yang 40.936 10.618 33.00 39.00 48.00
mengindikasi
umur klien
balance Rata-rata 1362.27 3044.76 72.00 448.00 1428.00
Neraca per 2 5
tahun
day hari kontak 15.806 8.322 8.00 16.00 21.00
terakhir
setiap bulan
duration durasi kontak 258.163 257.527 103.00 180.00 319.00
terakhir
dalam detik
campaign Jumlah 2.763 1.00 1.00 2.00 3.00
kontak yang
dilakukan
selama iklan
kampanye ini
untuk klien
ini
days Jumlah hari 15.806 8.32247 8.00 16.00 21.00
berlalu sejak 6
kontak
kampanye
terakhir
previous Jumlah 0.580 0.00 0.00 0.00 0.00
kontak yang

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.

3.3. Implementasi Model


Gradient Boosting merupakan metode yang dapat digunakan untuk
mengembangkan model klasifikasi dan regresi untuk mengoptimalkan proses
pembelajaran model, yang sebagian besar bersifat non-linier dan lebih dikenal sebagai
decision tree atau regresi. Gradient Boosting adalah metode Supervised berdasarkan
pohon keputusan yang dapat digunakan untuk klasifikasi. Algoritma gradient Boosting
bekerja secara berurutan menambahkan prediktor sebelumnya yang tidak cocok dengan
prediksi ke ensemble, memastikan kesalahan yang dibuat sebelumnya diperbaiki.
Gambaran sederhana dari konsep ensemble adalah keputusan dari berbagai machine
learning yang digabungkan, kemudian untuk kelas yang mendapat mayoritas adalah
kelas yang akan diprediksi oleh keseluruhan ensemble. Gradient Boosting dimulai
dengan menghasilkan pohon klasifikasi awal dan terus menyesuaikan pohon baru
dengan meminimalkan fungsi kerugian ⁠.
Fleksibilitas tinggi ini membuat Gradient Boosting sangat dapat disesuaikan
untuk tugas berbasis data tertentu. Ini memperkenalkan banyak kebebasan ke dalam
desain model sehingga membuat pilihan fungsi kerugian yang paling tepat menjadi
masalah yang sederhana. Namun, algoritma boosting relatif sederhana untuk
diterapkan, yang memungkinkan seseorang untuk bereksperimen dengan desain model
yang berbeda. Selain itu, Gradient Boosting telah menunjukkan keberhasilan yang
cukup besar tidak hanya dalam aplikasi praktis, tetapi juga dalam berbagai tantangan
pembelajaran mesin dan penambangan data.

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:

Tabel 3. Hyperparameter yang digunakan

No Hyperparameter nilai

1 Learning Rate 0.01, 0.02, 0.03

2 Subsample 0.9, 0.5, 0.2

3 n_estimators 150

4 max_depth 4,6,8

berikut penjelasan pada hyperparameter tabel diatas:


1. n_estimators : Merupakan representasi jumlah tree dalam gradient
boosting. Jika semakin banyak jumlah tree makan proses melakukan training
akan semakin lama
2. learning_rate : Salah satu parameter digunakan dalam mengatur
kecepatan dalam algoritma pembelajaran. Jika nilai learning rate semakin kecil
maka semakin teliti algoritma tersebut mempelajari dan akan berpengaruh
pada lama proses training.
3. Subsample : Menentukan fraksi data latih yang digunakan saat
pelatihan setiap pohon. Semakin tinggi nilai subsample akan mempengaruhi
lama proses training.

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

Maka dari itu penelitian ini mengadapatasikan Hyperparameter yang dilakukan


oleh penelitian yang dilakukan sebelumnya dengan Mengunakan optimalisasi
hyperparameter menggunakan library sklearn RandomizedSearchCV yang bertujuan
untuk menemukan parameter terbaik untuk menjadi tolak ukur dalam proses fit pada
algoritma Gradient Boosting.

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

Class Positive Negative

Positive True Positive (TP) False Negative (FN)

Negative False Positive (FP) True Negative (TN)

Keterangan:
• True Positive: Klasifikasi benar terhadap pelanggan berlangganan deposito
berjangka.

• True Negative: Klasifikasi benar terhadap pelanggan tidak berlangganan


deposito berjangka.

• False Negative: Klasifikasi salah terhadap pelanggan berlangganan deposito


berjangka. yang dianggap sebagai pelanggan tidak berlangganan deposito
berjangka.

• False Positive: Klasifikasi salah terhadap pelanggan tidak berlangganan


deposito berjangka. yang dianggap sebagai 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

Anda mungkin juga menyukai