• Tidak ada hasil yang ditemukan

Implementasi Model Support Vector Machine dan Logistic Regression Untuk Memprediksi Penyakit Stroke

N/A
N/A
Protected

Academic year: 2023

Membagikan "Implementasi Model Support Vector Machine dan Logistic Regression Untuk Memprediksi Penyakit Stroke"

Copied!
9
0
0

Teks penuh

(1)

Implementasi Model Support Vector Machine dan Logistic Regression Untuk Memprediksi Penyakit Stroke

Dikan Ismafillah*, Tatang Rohana, Yana Cahyana

Fakultas Ilmu Komputer, Teknik Informatika, Universitas Buana Perjuangan, Karawang, Indonesia

Email: 1,*if19.dikanismafillah@mhs.ubpkarawang.ac.id, 2tatang.rohana@ubpkarawang.ac.id, 3yana.cahyana@ubpkarawang.ac.id Email Koresponding : if19.dikanismafillah@mhs.ubpkarawang.ac.id

Submitted 05-01-2023; Accepted 24-02-2023; Published 27-02-2023 Abstrak

Dalam penelitian ini topik yang diangkat tentang penyakit stroke. Berdasarkan hasil statistik Badan Riset Dinas Kesehatan Indonesia (2018), stroke merupakan penyakit pada urutan pertama di Indonesia. Penelitian sebelumnya telah dilakukan penelitian penyakit stroke diantaranya, penelitian yang mengambil data dari pasien di RSUD Abdul Wahab Sjahranie. Model yang digunakan adalah Machine Learning Decision Tree, dengan hasil accuracy sebesar 87,5%. Untuk akurasi yang lebih baik, penelitian ini memprediksi stroke dengan menggunakan dua algoritma, yaitu support vector machine (SVM) dan logistic regression (LR). Pada data penyakit stroke yang ditemukan terdapat 10 atribut dan 1 output, yang terdiri dari gender, age, hypertension, heart_disease, ever_married, work_type, Residence_type, avg_glucose_level, bmi, smoking_status, dan stroke(output). Penelitian ini menggunakan model SVM+SMOTE dengan confusion matrix dan K-Fold serta menggunakan 4981 baris dan 11 kolom. Berdasarkan hasil penelitian, algoritma support vector machine lebih baik daripada algoritma logistic regression (LR) dalam memprediksi dataset dengan metode oversampling dan cross-validation. Pengujian model SVM + SMOTE dengan menggunakan confusion matrix dan metode K-Fold menghasilkan akurasi yang jauh lebih baik pada pembagian data penyakit stroke secara akurat. Hasil menunjukkan bahwa algoritma klasifikasi Support Vector Machine dapat bekerja secara efektif dengan akurasi sempurna sebesar 95,3% pada tingkat validasi 10K-Fold Validation.

Kata Kunci: Penyakit Stroke; Algoritma Machine Learning; K-Fold Cross Validation; Confusion Matrix; Prediksi Abstract

In this study the topic raised was about stroke. Based on the statistical results of the Indonesian Health Service Research Agency (2018), stroke is the disease in the first order in Indonesia. Previous studies have carried out stroke research including research that took data from patients at Abdul Wahab Sjahranie Hospital. The model used is the Machine Learning Decision Tree, with an accuracy of 87.5%.

For better accuracy, this study predicts stroke using two algorithms, namely support vector machine (SVM) and logistic reg ression (LR). In the stroke data found there were 10 attributes and 1 output, which consisted of gender, age, hypertension, heart_disease, ever_married, work_type, Residence_type, avg_glucose_level, bmi, smoking_status, and stroke(output). This study uses the SVM+SMOTE model with a confusion matrix and K-Fold and uses 4981 rows and 11 columns. Based on the research results, the support vector machine algorithm is better than the logistic regression (LR) algorithm in predicting datasets using the overs ampling and cross-validation methods. Testing the SVM + SMOTE model using the confusion matrix and the K-Fold method produces much better accuracy in the distribution of stroke data accurately. The results show that the Support Vector Machine classification algorithm can work effectively with perfect accuracy of 95.3% at the 10K-Fold Validation level.

Keywords: Stroke Disease; Machine Learning Algorithm; K-Fold Cross Validation; Confusion Matrix; Prediction.

1. PENDAHULUAN

World Health Organization (WHO) menjelaskan bahwa stroke salah satu penyakit yang beresiko kehilangan fungsi otak secara tiba-tiba yang terjadi dalam waktu 24 jam atau lebih [1]. Stroke adalah penyakit yang berhubungan dengan fungsi saraf. Beberapa bagian tubuh, seperti wajah, kaki, atau tangan, mungkin tampak kesemutan, yang mungkin sering hilang atau tidak, dan mati rasa disatu sisi tubuh [2]. Stroke, juga dikenal cerebrovascular accident (CVA), disebabkan oleh kurangnya aliran darah menuju ke otak, mengakibatkan kelumpuhan atau bahkan kematian [3]. Pada tahun 2022, akan ada 12,2 juta kasus baru di seluruh dunia, 62% di antaranya terjadi pada orang di bawah 70 tahun. Di seluruh dunia, 101,4 juta orang menderita stroke dan 6,5 juta meninggal. Diperkirakan satu dari empat orang yang berusia di atas 25 tahun akan mengalami stroke [4]. Angka kejadian stroke di Indonesia juga meningkat. Di Indonesia penyakit ini menempati urutan pertama, yang terlampir pada Gambar 1. Diagram data statistik kesehatan. Pada tahun 2007, menurut hasil Survei Kesehatan Dasar (Riskesdas), 8,3 orang per seribu penduduk menderita stroke. Stroke juga menjadi penyebab utama kematian di hampir semua rumah sakit di Indonesia, yakni mencapai 14,5% [1]. Secara keseluruhan, jumlah absolut orang yang terkena stroke dapat mengalami resiko cacat bahkan kematian. Faktor pemicu peningkatan stroke dan penyakit jantung seperti pola makan yang tidak sehat. Salah satunya banyak makan junk food, makanan dipastikan mengandung lemak jahat, makanan olahan, kebiasaan merokok, dan kurangnya olahraga secara teratur. Menurut statistik dari Badan Riset Kesehatan Indonesia. Sekitar 21,1% kematian di Indonesia disebabkan oleh stroke dan 12,9% karena penyakit kardiovaskular [5]. Berikut merupakan lampiran pada gambar 1. yang menjelaskan grafik tingkat kematian karena stroke yang berasal dari Data Statistik Dinas Kesehatan [5].

(2)

Gambar 1. Data Statistik Dinas Kesehatan

Identifikasi stroke dapat dilakukan dengan menggunakan metode algoritma Machine Learning untuk memproses dan mengeksplorasi dataset yang ada sebagai penentu hasil identifikasi. Pada penelitian ini accuracy yang dicapai oleh algoritma pohon keputusan adalah 85,28%, pada perbandingan accuracy algoritma penyakit diabetes sedangkan hasil akurasi yang didapatkan oleh algoritma Support Vector Machine adalah 83.85%. [6]. Adapun, penelitian yang dilakukan oleh Sulaeman et.al(2022) menjelaskan tentangproses Pada pengujian algoritma SVM pada klasifikasi Stroke, program ini menggunakan SVM classifier yang memperoleh akurasi tertinggi dari data kernel linear unbalanced yaitu polinomial 80% [7]. Penelitian yang dilakukan oleh Wafa H.S, et.al (2022) Tujuannya adalah untuk menentukan apakah seorang pasien menderita diabetes atau tidak menggunakan teknik data mining dan klasifikasi menggunakan algoritma Support Vector Machine Radial Basis Function berdasarkan seleksi sebelumnya, sehingga menghasilkan akurasi yang tinggi sebesar 91% [8]. Kemudian, penelitian yang dilakukan oleh Handayani et.al(2021) membandingkan hasil klasifikasi penyakit jantung menggunakan tiga algoritma machine learning, yaitu Support Vector Machine (SVM), Logistic Regression (LR) dan Artificial Neural Network (ANN). Pada penelitian ini, metode regresi logistik memiliki akurasi tertinggi sebesar 86% dengan menggunakan 80 skenario pembagian data 80:20 [9].

Data yang diperoleh dalam penelitian ini memiliki kategori tidak seimbang. Dimana kelas mayoritas lebih besar dari kelas minoritas. Kelas yang tidak seimbang dapat mempengaruhi hasil akurasi klasifikasi. Salah satu solusi dalam mengatasi data yang tidak seimbang adalah dengan memakai teknik oversampling yaitu Synthetic Minority Oversampling Technique (SMOTE). Pada penelitian yang dilakukan oleh Lishania (2019)[10]. Kelas yang seimbang terjadi karena jumlah kelas mayoritas jauh lebih banyak pada kelas minoritas [11]. Ada sebagian cara untuk mengatasi ketidakseimbangan data stroke, salah satunya adalah dengan menggunakan metode pengambilan sampel data yang unik baik untuk kelas mayoritas (undersampling) maupun kelas minoritas (oversampling). Selanjutnnya, pada penelitian oleh Hidayat et.al(2021) tentang pengaruh algoritma ADASYN (Adaptive Synthetic Sampling Approach) dan SMOTE (Metode Synthetic Minority Over-sampling Technique) pada kinerja support vector machine pada kumpulan data Airbnb yang tidak seimbang. SVM menambah tingkat akurasi sebesar 1% dari 80% menjadi 81%, dipengaruhi oleh peningkatan hasil uji true label (minoritas) dan penurunan hasil uji false label (mayoritas), SVM SMOTE lebih baik dari ADASYN+SVM dan SVM tanpa oversampling [12]. Pada penelitian yang dilakukan oleh Normah (2022) Untuk analisis sentimen evolusi Vtuber menggunakan metode support vector machine berbasis Smote, menghasilkan nilai accuracy terbaik dengan nilai sebesar 88,18% dan 89% nilai positif[13]. Sehingga, sebagai hasil dari percobaan yang dilakukan oleh Stoyo (2020) [14] menunjukkan bahwa kinerja ANN + SMOTE mencapai akurasi 87,06%, sedangkan Artificial Neural Network (ANN) hanya 86,35%. Selanjutnya, pengujian memakai Cross Validation Decision Tree dan SMOTE (Metode Synthetic Minority Over-sampling Technique) diperoleh akurasi 63.56% untuk klasifikasi data kecelakaan lalu lintas yang dilakukan oleh Franseda Afrilio (2020)[15]. Penerapan metode SMOTE (Metode Synthetic Minority Over- sampling Technique) telah terbukti mengatasi masalah ketidakseimbangan data dan mencapai hasil deteksi yang lebih baik. Oleh karena itu, penelitian ini diharapkan dapat memberikan hasil yang optimal untuk membandingkan algoritma SVM.

2. METODOLOGI PENELITIAN

2.1 Objek Penelitian

Pada penelitian ini menggunakan dua algoritma Machine Learning untuk memprediksi stroke yaitu, Support Vector Machines (SVM) dan Logistic Regression. Dataset yang dihasilkan dibagi sesuai dengan kriteria yang diuji dan dibandingkan antara empat metode berdsarkan penjelasan pada Gambar 2. untuk menentukan kinerja setiap metode yang digunakan.

(3)

Gambar 2. Alur Penelitain

Data yang diperoleh untuk bahan penelitian ini berasal dari situs web dengan data dunia yang disediakan oleh Kaggle, yang mencakup banyak data dari seluruh negeri. Berdasarkan survei data, jenis data kuantitatif dapat langsung diukur atau dihitung dalam bentuk keterangan yang diberikan atas dasar kategori, maupun berupa nilai numerik. Total 4981 data dalam 11 kolom. Data yang diperoleh terdiri dari: gender, age, hypertension, heart_disease, ever_married, work_type, Residence_type, avg_glucose_level, bmi, smoking_status, dan stroke. Berikut dataset untuk digunakan dalam penelitian ini terlampir pada Tabel 1 dan Tabel 2.

Tabel 1. Data Stroke

gender age hypertension heart_disease ever_married

0 Male 67.0 0 1 yes

1 Male 80.0 0 1 yes

2 Female 49.0 0 0 yes

3 Female 79.0 1 0 yes

4 Male 81.0 0 0 yes

Tabel 2.Data Stroke Lanjutan

work_type Residence_type avg_glucose_level bmi smoking_status stroke

0 Private Urban 228.69 36.6 Formerly 1

1 Private Rural 105.92 32.5 Never smoked 1

2 Private Urban 171.23 34.4 smokes 1

3 Self-employed Rural 174.12 24.0 Never smoked 1

4 private Urban 186.21 29.0 formerly 1

2.2 SMOTE

Dalam data yang ditemukan, berdasarkan hasil penelitian, kami menemukan data yang tidak seimbang. Oleh karena itu, diperlukan teknik data oversampling untuk menyamakan data yang diperiksa menggunakan teknik SMOTE. Synthetic Minority Oversampling Technique (SMOTE) adalah pendekatan untuk menyeimbangkan data sampel untuk kelas yang terlalu tidak seimbang (mayoritas) dengan berfokus pada kelas minoritas untuk meningkatkan efisiensi metode klasifikasi [16]. SMOTE dapat menyebabkan duplikasi data dikelas minoritas, Pada penelitian yang telah dilakukan oleh Hidayat (2021) [12] menjelaskan bahwa penggunaan SMOTE meningkatkan akurasi SVM sebesar 1% dari 80% menjadi 81%, yang dipengaruhi oleh peningkatan skor pengujian label true (minoritas).

2.3 Support Vector Machine (SVM)

Menurut penelitian yang telah dilakukan sebelumnya, algoritma Support Vector Machine (SVM) yaitu algoritma yang berfokus dalam klasifikasi [17], Vapnik awalnya mengusulkan SVM untuk memecahkan masalah klasifikasi dan analisis regresi. Algoritma ini sering digunakan untuk masalah klasifikasi data linier dan nonlinier [18]. Dalam SVM, algoritma dapat mengklasifikasikan pola sebagai positif atau negatif dan menggunakan batasan keputusan yang berbeda untuk membedakannya. Margin yaitu jarak antara hyperplane dan pola terdekat untuk setiap kelas. Ada dua kasus pemisahan kelas hyperplane. Lapisan yang dapat dipisahkan sepenuhnya disebut SVM linier, dan lapisan yang tidak bisa dipisahkan

Mulai

Import Data Stroke

Akuisisi Data

Training Data

Data Pre-processing Results

Testing Data

Prediksi Algoritma SVM dan LR

Hasil Prediksi

Accurasy ROC

Evaluasi Prediksi Algoritma Terbaik

Selesai Akuisisi Data

(4)

sepenuhnya disebut SVM nonlinier. SVM nonlinier adalah solusi untuk masalah SVM kernel dengan mengimplementasikan fungsi pengali dalam ruang fitur berdimensi tinggi yang dilampirkan pada Tabel 3.

Tabel 3. Rumus SVM

SVM Jenis Kernel Definisi Rumus Linier Linier K (x,y) = x.y Non

linier

Polynomial K (x,y) = (x.y + 1)p RBF K (x,y) = 𝑒−|𝑥.𝑦|2/2𝜎2 Sigmoid (x,y) = tanh (Kx.y- δ)

SVM bertujuan untuk menemukan fungsi hyperplane atau diskriminan terbaik (batas keputusan) untuk memisahkan dua atau lebih kelas di ruang input. Hyperplanes dapat berupa garis atau garis dalam dua dimensi dan bidang datar dalam beberapa bidang terlampir pada Gambar 3 [19].

Gambar 3. Grafik Proses Multiple Planes

Karakteristik dibandingkan dengan metode lain, SVM didasarkan pada kemampuannya untuk menemukan hyperplane terbaik yang memisahkan dua kelas dalam ruang fitur, yang didukung oleh strategi SRM (Structural Risk Minimization). SVM juga mempunyai 2 jenis linear dan non-linear

a. SVM linier digunakan untuk data yang dapat dipisahkan secara linier, artinya jika kumpulan data dapat diklasifikasikan menjadi dua kelas dengan satu baris, data tersebut dikatakan dapat dipisahkan secara linier dan pengklasifikasi yang digunakan disebut SVM linier.

b. SVM Non-linier, digunakan untuk data yang tidak dapat dipisahkan secara linier, jika kumpulan data tidak dapat diklasifikasikan dengan garis lurus, data tersebut disebut data nonlinier dan classifier.

2.4 Logistic Regresion

Logistic Regression digunakan untuk menghitung probabilitas kejadian biner yang terjadi, dan untuk menangani masalah klasifikasi. Untuk menganalisis klasifikasi data dapat menggunakan jika variable dependen adalah variable dikotomi[20].

Pada variabel dikotomi dapat mengasumsikan suatu peristiwa akan terjadi atau tidak dengan diberikan angka antara 0 sampai 1[21]. Hal tersebut menjadi masalah klasifikasi jika ambang keputusan digunakan sehingga bisa dipatkan jenis yang berbeda. Regresi logistik mencoba untuk memprediksi apakah ada hubungan (tipe diktum) antara variabel dependen (Y) yang terkait dengan ya atau tidak terjadinya suatu peristiwa dan satu atau lebih variabel independen kategori atau continuous [21]. Rumus dasar algoritma ini dibentuk dengan meletakkan nilai Y pada fungsi linier, yaitu :

p = 1+𝑒−(𝑎+𝑏𝑋)1 (1)

Pada persamaan (1), p adalah probabilitas dan a, b adalah parameter model, X adalah faktor. Menurut Vincent Michael (2019)[22] dalam artikel, pengolahan data awal memiliki pengaruh yang kuat pada tingkat kualitas model yang dihasilkan. Ada beberapa hal yang perlu kita perhatikan untuk mendapatkan model regresi logistik yang baik, yaitu:

a. Binary Output Variable, dimana Logistic Regression dirancang untuk mengklasifikasikan data menjadi dua kelas (direpresentasikan dengan 0 dan 1)

b. Menghapus noise, penghapusan data outlier atau data yang dilaporkan sebagai kesalahan klasifikasi oleh data training.

c. Distribusi Gaussian melakukan transformasi dan normalisasi pada data training untuk memperbaiki hubungan linier antara input dan output.

Algoritma Logistic regression adalah metode regresi dan klasifikasi yang dapat digunakan untuk memperkirakan kumpulan data yang mengandung satu atau lebih variabel independen yang mengindikasikan suatu hasil. Hasil tersebut diukur dan dibagi menggunakan variabel (terdapat 2 kemungkinan hasil).

(5)

3. HASIL DAN PEMBAHASAN

3.1 Preprocessing

Kumpulan data set yang diperoleh dari kaggle yang memiliki 11 kolom dengan 4981 data. sebagai bahan acuan penelitian ini dan data diolah dalam beberapa proses. 11 kolom data (jenis kelamin, umur, tekanan darah tinggi, jantung, pekerjaan, jenis pekerjaan, tempat tinggal, glukosa, indeks massa tubuh, perokok dan diagnosis stroke). Informasi dibagi menjadi dua bagian yaitu data testing dan data training. Data pelatihan adalah data asli yang mengarah ke diagnosis. Tes data adalah data yang digunakan untuk menguji suatu algoritma tanpa memasukkan data diagnostik. Proses awal ini dilakukan untuk mengubah data mentah menjadi data yang lebih bersih dan bermanfaat, sebab data yang dipakai tidak selamanya siap untuk diolah terlampir pada Tabel 4 dan 5.

Tabel 4. Data Sebelum Preprocessing

gender age hypertension heart_disease ever_married

0 Male 67.0 0 1 yes

1 Male 80.0 0 1 yes

2 Female 49.0 0 0 yes

3 Female 79.0 1 0 yes

4 Male 81.0 0 0 yes

Tabel 5

.

Data Sebelum Preprocessing Lanjutan

work_type Residence_type avg_glucose_level bmi smoking_status stroke

0 Private Urban 228.69 36.6 Formerly 1

1 Private Rural 105.92 32.5 Never smoked 1

2 Private Urban 171.23 34.4 smokes 1

3 Self-employed Rural 174.12 24.0 Never smoked 1

4 private Urban 186.21 29.0 formerly 1

Tahap pra-pemrosesan data penelitian ini dilakukan sedemikian rupa sehingga data lebih ideal untuk digunakan pada tahap berikutnya, termasuk penghapusan data dengan komponen yang tidak lengkap untuk menghindari manipulasi lebih dari 1000. Data dibersihkan untuk menghindari duplikat data atau nilai nol. Pengolahan data preprocessing dilakukan untuk mengubah inkonsisten karakter data dari Huruf menjadi Numerik. Berikut merupakan lampiran Tabel 6,7 dan 8 Hasil dari Preprocessing data.

Tabel 6. Hasil Pre-processing Data

gender age hypertension heart_disease ever_married

2537 0 9.0 0 0 0

4164 1 12.0 0 0 0

3507 0 66.0 0 1 1

1724 1 61.0 0 0 1

902 0 50.0 0 0 1

637 1 66.0 0 0 1

4100 0 4.0 0 0 0

2526 1 67.0 0 1 1

4014 1 65.0 0 0 1

2701 1 44.0 1 0 1

Tabel 7. Hasil Pre-processing Data Lanjutan avg_glucose_leve

l

bmi strok e

work_type_Govt_jo b

work_type_Pri vate

work_type_Self -employed

work_type_childre n

142.68 24.4 0 0 0 0 1

70.13 17.8 0 0 0 0 1

239.21 33.7 0 0 1 0 0

194.53 45.0 0 0 1 0 0

57.93 27.6 0 0 1 0 0

200.49 34.6 0 1 0 0 0

112.83 18.2 0 0 0 0 1

94.45 29.6 0 0 0 1 0

205.78 41.7 0 0 1 0 0

105.77 36.8 0 1 0 0 0

(6)

Tabel 8. Hasil Pre-processing Data Lanjutan Residence_type

_Rural

Residence_type _Urban

smoking_status_U nknown

smoking_status_f ormerly smoked

smoking_status _never smoke

smoking_status_

smokes

0 1 1 0 0 0

1 0 1 0 0 0

1 0 0 1 0 0

1 0 0 0 1 0

0 1 1 0 0 0

1 0 0 0 0 1

1 0 1 0 0 0

1 0 0 1 0 0

1 0 0 0 1 0

1 0 0 0 1 0

Data kategori diubah menjadi nilai numerik dimana 1 = ya dan 0 = tidak. Preprocessing data dilakukan untuk mengubah data karakter yang tidak konsisten dari karakter menjadi angka. Kolom label data dikonversi pada langkah preprocessing adalah Residence, Average Glucose Level, Gender, Work Type, Ever Married, Smoking Status dan BMI.

3.2 Evaluasi

Uji kinerja dijalankan pada model algoritma Machine Learning untuk memvalidasi kinerja model algoritma tersebut berdasarkan data uji. Penilaian didasarkan pada akurasi dan presisi. Perhitungan ini disebut confusion matrix.Confusion matrix digunakan untuk proses mengukur kinerja pada suatu masalah klasifikasi nilai biner dan masalah klasifikasi multikelas. Klasifikasi nilai biner hanya menghasilkan dua kategori keluaran (label) seperti "Ya" atau "Tidak", "0" atau

"1" untuk setiap data masukan [24]. Proses evaluasi menggunakan data uji yang telah dipisahkan pada proses sebelumnya dan hasil dari contoh evaluasi menggunakan perhitungan confusion matrix yang ditunjukkan pada Gambar 4.

Gambar 4. Rumus Perhitungan Confusion Matrix

Pengujian dalam penelitian ini dievaluasi menggunakan teknik K-Fold Cross Validation. Cara kerja dari teknik ini adalah untuk memisahkan data K menjadi data uji dan data latih. Pengujian menggunakan dua teknik ini untuk mengurangi bias yang melekat pada data acak. Dalam penelitian ini, membagi kumpulan data menjadi 10 bagian (lipatan) yang berbeda dengan ukuran yang sama dan melatih serta menguji model 10 kali.

Selanjutnya dilakukan prediksi dengan model Support Vector Machine (SVM) dan Logistic Regression. Dari setiap proses prediksi yang digunakan didapat nilai accuracy dan precision. Berikut merupakan tahapan persilangan k-fold.

Pertama bagi data dengan faktor k. Kedua, pada percobaan pertama, jadikan bagian pertama sebagai data uji dan bagian lainnya sebagai data pelatihan. Pada percobaan kedua, satu bagian diubah untuk data pengujian dan bagian lainnya untuk data pelatihan. Tes ketiga mengubah bagian ketiga menjadi data uji dan bagian lainnya menjadi data pelatihan, dan seterusnya. Ketiga, dari hasil tersebut, skor evaluasi kinerja model disimpan dengan menggunakan matriks konfusi.

Kemudian tentukan rata-rata untuk setiap percobaan. Keempat, gunakan model algoritma yang dipilih, dapat ditemukan percobaan yang dapat digunakan sebagai acuan. Berikut tabel hasil persilangan k-fold yang terlampir pada Tabel 9.

Tabel 9. Hasil Persilangan K-Fold K-Fold SVM + SMOTE LR + SMOTE

1 93,81% 93,66%

2 94,57% 92,76%

3 89,74% 95,47%

(7)

4 95,47% 92,30%

5 88,23% 93,21%

6 96,22% 91,70%

7 94,25% 92,90%

8 94,25% 93,50%

9 95,16% 93,35%

10 95,46% 92,44%

3.3 Perbandingan hasil

Berdasarkan penelitian sebelumnya, K-Fold untuk penyeimbangan data adalah K-Fold 10. Maka hasil evaluasi yang sudah didapat dibandingkan pada tabel 10.

Tabel 10. Perbandingan K-Fold dan Confusion Matrix Perbandingan K-Fold dan Confusion Matrix

Metode Akurasi

SVM + SMOTE 95,3%

LR + SMOTE 93,1%

Pada penelitiaan yang telah dilakukan menggunakan Teknik oversampling SMOTE, yang menyeimbangkan data sampel untuk kelas (mayoritas) yang terlalu tidak seimbang dengan berfokus pada kelas minoritas. Penggunaan SMOTE pada SVM sangat berpengaruh bahkan pengunaan SMOTE dapat memperbaiki accuracy dengan pembagian data secara seimbang mengguanakan K-fold dan oversampling. Namun, dibandingkan dengan menggunakan teknik confusion matrix dengan akurasi 100% pada proses pembagian dan perhitungan data masih menggunakan cara manual, sehingga terjadi distribusi data yang tidak seimbang. Pada hasil perbandingan SVM + SMOTE dan LR + SMOTE tingkat accuracy SVM lebih baik sebesar 95,3% dibandingkan LR dengan accuracy 93,1%. Terlampir pada tabel 11.

Tabel 11. Hasil Perbandingan K-Fold 10 K-Fold Cross Validation 10

Metode Akurasi

SVM + SMOTE 95,3%

LR + SMOTE 93,1%

Partisi data K-Fold Cross Validation digunakan pada pengujian kedua karena metode ini dapat digunakan untuk mengurangi bias data acak. Sehingga, algoritma support vector machine (SVM) dapat menghasilkan model prediksi yang lebih akurat dari pada Logistic Regression sebesar 95,3%. Berikut merupakan Grafik perbandingan anatara algoritma tanpa SMOTE dan Menggunakan SMOTE yang terlampir pada Gambar 12. Metode prediksi dapat dievaluasi berdasarkan berbagai kriteria seperti acuraccy, kecepatan, reliabilitas, skalabilitas, interpretabilitas, dan ROC( Recevier Operating Characteristic). Pada penelitian medis, kurva ROC sering digunakan untuk menggambarkan akurasi diagnostik dan menentukan nilai cut-off yang optimal. Akurasi diagnostik berasal dari area di bawah kurva ROC dan batas optimal digunakan untuk memprediksi kondisi positif dan negatif untuk diagnosis [23]. Hasil uji model bertujuan untuk mengukur tingkat acuraccy dan Recevier Operating Characteristic (ROC) dalam memprediksi penyakit stroke dengan menggunakan model perhitungan cross-validation. Berdasarkan hasil pengujian model yang telah dilakukan yaitu mengukur tingkat acuraccy dan Recevier Operating Characteristic (ROC) untuk menemukan algoritma terbaik dalam penelitian Stroke ini.

Tujuan dari hasil pengujian model yang dilakukan adalah untuk mengukur tingkat akurasi prediksi stroke dan memperoleh Recevier Operating Characteristic (ROC) dengan menggunakan metode cross-validation.Grafik ROC SVM + SMOTE dengan hasil nilai AUC (Area Under Curve) yang dihasilkan sebesar 0.953 terlampir pada Gambar 5. dibawah ini

Gambar 5. Hasil Recevier Operating Characteristic(ROC)

(8)

Dari hasil pengujian di atas, evaluasi dengan menggunakan confussion matrix dan kurva ROC menunjukkan bahwa hasil pengujian algoritma Support Vector Machine + SMOTE memiliki skor akurasi yang lebih tinggi daripada algoritma Logistic Regression + SMOTE yang memiliki skor akurasi 93,1 %. Sedangkan model algoritma Support Vector Machine+SMOTE memiliki nilai akurasi sebesar 95,3%.

4. KESIMPULAN

Support Vector Machines (SVM) dan logistic Regression dapat diimplementasikan pada proses prediksi penderita Stroke dengan nilai acuraccy rata – rata sebesar 90% keatas. Penelitian ini menggunakan dataset yang didapat dari Kaggle. Data Stroke yang semula berjumlah 4981 data dengan atribut gender, age, hypertension, heart_disease, ever_married, work_type, Residence_type, avg_glucose_level, bmi, smoking_status, dan stroke sebagai Target Value. Metode penilaian kerja yang akan digunakan adalah Accuracy, Recall, Precision, F1 Score yang berpatokan pada Confussion Matrix, dan grafik Recevier Operating Characteristic (ROC). Diperlukan pendekatan yang lebih baik dan akurat dalam diagnosis penyakit ini. Penelitian ini memiliki tujuan untuk mengetahui seberapa akurat model algoritma machine learning yang digunakan dalam kasus prediksi. Penerapan algoritma machine learning dalam prediksi penyakit Stroke berhasil dilakukan dengan baik, berdasarkan hasil prediksi algoritma machine learning. Sehingga, hasil analisis accuracy prediksi yang sudah di lakukan dengan total data yang ditemukan 4981 baris dan 11 kolom data, proses pencarian dan pengolahan data dilakukan selama 1 bulan menggunakan data penyakit Stroke. Pada proses perhitungan K-fold 10 dan SMOTE, penerapan algoritma Support Vector Machine menggunakan SMOTE sangat efisien dibandingkan dengan LR + SMOTE yang memiliki tingkat prediksi kurang akurat. Evaluasi model juga berhasil dilakukan dengan nilai acuraccy menengah ada Logistic Regression dengan nilai 93,1% dan 95,3% untuk Support Vector Machine dengan nilai acuraccy tertinggi untuk data Stroke.

REFERENCES

[1] N. Permatasari, “Perbandingan Stroke Non Hemoragik dengan Gangguan Motorik Pasien Memiliki Faktor Resiko Diabetes Melitus dan Hipertensi,” J. Ilm. Kesehat. Sandi Husada, vol. 11, no. 1, pp. 298–304, 2020, doi: 10.35816/jiskh.v11i1.273.

[2] S. Hospitals, “Ciri dan Penyebab Stroke di Usia Muda,” 2022, 2022. .

[3] S. Sutarwi, Y. Bakhtiar, and N. Rochana, “Sensitivitas dan Spesifitas Skor Stroke Literature Review,” Gaster, vol. 18, no. 2, p.

186, 2020, doi: 10.30787/gaster.v18i2.521.

[4] V. L. Feigin et al., “World Stroke Organization (WSO): Global Stroke Fact Sheet 2022,” Int. J. Stroke, vol. 17, no. 1, pp. 18–29, 2022, doi: 10.1177/17474930211065917.

[5] BUNG HARYANTO, “Penyebab Kematian Tertinggi di Indonesia adalah Stroke dan Penyakit Jantung,” SUBANING RUSTRIANTONO. 2018, [Online]. Available: http://subaning.sentradetox.com/blog/read/seputar-detoksifikasi/107/penyebab- kematian-tertinggi-di-indonesia-adalah-stroke-dan-penyakit-jantung.html.

[6] J. B. Junior, R. R. Saedudin, and V. P. Widharta, “Perbandingan Akurasi Algorima Decision Tree Dan Algoritma Support Vector Machine Pada Penyakit Diabetes,” vol. 8, no. 5, pp. 9749–9756, 2021.

[7] K. R. Sulaeman, C. Setianingsih, and R. E. Saputra, “Analisis Algoritma Support Vector Machine Dalam Klasifikasi Penyakit Stroke,” eProceedings Eng., vol. 9, no. 3, pp. 922–928, 2022, [Online]. Available:

https://openlibrarypublications.telkomuniversity.ac.id/index.php/engineering/article/view/17909/17544%0Ahttps://openlibrary publications.telkomuniversity.ac.id/index.php/engineering/article/view/17909.

[8] H. S. Wafa, A. I. Hadiana, and F. R. Umbara, “Prediksi Penyakit Diabetes Menggunakan Algoritma Support Vector Machine (SVM),” vol. 4, no. 1, pp. 40–45, 2022, [Online]. Available: https://e-journal.unper.ac.id/index.php/informatics.

[9] F. Handayani, “Komparasi Support Vector Machine, Logistic Regression Dan Artificial Neural Network Dalam Prediksi Penyakit Jantung,” J. Edukasi dan Penelit. Inform., vol. 7, no. 3, p. 329, 2021, doi: 10.26418/jp.v7i3.48053.

[10] I. Lishania, R. Goejantoro, and Y. N. Nasution, “Perbandingan Klasifikasi Metode Naive Bayes dan Metode Decision Tree Algoritma (J48) pada Pasien Penderita Penyakit Stroke di RSUD Abdul Wahab Sjahranie Samarinda,” J. Eksponensial, vol. 10, no. 2, pp. 135–142, 2019.

[11] A. Indrawati, “Penerapan Teknik Kombinasi Oversampling Dan Undersampling Untuk Mengatasi Permasalahan Imbalanced Dataset,” JIKO (Jurnal Inform. dan Komputer), vol. 4, no. 1, pp. 38–43, 2021, doi: 10.33387/jiko.v4i1.2561.

[12] W. Hidayat, M. Ardiansyah, and A. Setyanto, “Pengaruh Algoritma ADASYN dan SMOTE terhadap Performa Support Vector Machine pada Ketidakseimbangan Dataset Airbnb,” Edumatic J. Pendidik. Inform., vol. 5, no. 1, pp. 11–20, 2021, doi:

10.29408/edumatic.v5i1.3125.

[13] Normah, B. Rifai, S. Vambudi, and R. Maulana, “Analisa Sentimen Perkembangan Vtuber Dengan Metode Support Vector Machine Berbasis SMOTE,” J. Tek. Komput. AMIK BSI, vol. 8, no. 2, pp. 174–180, 2022, doi: 10.31294/jtk.v4i2.

[14] E. Sutoyo and M. A. Fadlurrahman, “Penerapan SMOTE untuk Mengatasi Imbalance Class dalam Klasifikasi Television Advertisement Performance Rating Menggunakan Artificial Neural Network,” J. Edukasi dan Penelit. Inform., vol. 6, no. 3, p.

379, 2020, doi: 10.26418/jp.v6i3.42896.

[15] A. Franseda, W. Kurniawan, S. Anggraeni, and W. Gata, “Integrasi Metode Decision Tree dan SMOTE untuk Klasifikasi Data Kecelakaan Lalu Lintas,” J. Sist. dan Teknol. Inf., vol. 8, no. 3, p. 282, 2020, doi: 10.26418/justin.v8i3.40982.

[16] R. Siringoringo, “KLASIFIKASI DATA TIDAK SEIMBANG MENGGUNAKAN ALGORITMA SMOTE DAN k-NEAREST NEIGHBOR,” 2018.

[17] R. Kusumawati, A. D’Arofah, and P. A. Pramana, “Comparison Performance of Naive Bayes Classifier and Support Vector Machine Algorithm for Twitter’s Classification of Tokopedia Services,” J. Phys. Conf. Ser., vol. 1320, no. 1, 2019, doi:

10.1088/1742-6596/1320/1/012016.

[18] I. Ahmad, M. Basheri, M. J. Iqbal, and A. Rahim, “Performance Comparison of Support Vector Machine, Random Forest, and

(9)

Extreme Learning Machine for Intrusion Detection,” IEEE Access, vol. 6, pp. 33789–33795, 2018, doi:

10.1109/ACCESS.2018.2841987.

[19] Trivusi, “Penjelasan Lengkap Algoritma Support Vector Machine (SVM),” https://www.trivusi.web.id/, 2022. .

[20] J. J. Khanam and S. Y. Foo, “A comparison of machine learning algorithms for diabetes prediction,” ICT Express, vol. 7, no. 4, pp. 432–439, 2021, doi: 10.1016/j.icte.2021.02.004.

[21] M. I. Gunawan, D. Sugiarto, and I. Mardianto, “Peningkatan Kinerja Akurasi Prediksi Penyakit Diabetes Mellitus Menggunakan Metode Grid Seacrh pada Algoritma Logistic Regression,” J. Edukasi dan Penelit. Inform., vol. 6, no. 3, p. 280, 2020, doi:

10.26418/jp.v6i3.40718.

[22] V. Michael, “Mengenal Logistic Regression,” 4 mei 2019, 2019. .

[23] Z. N. et. a. KUSMANTORO, “AKURASI UJI DIAGNOSTIK MENGGUNAKAN LUASAN BAWAH KURVA ROC SMOOTHED EMPIRICAL,” Universitas Gajah Mada, 2018. .

[24] K. S. Nugroho, “Confusion Matrix untuk Evaluasi Model pada Supervised Learning,” https://ksnugroho.medium.com/, 2019.

Referensi

Dokumen terkait

Berdasarkan tingkat akurasi yang dihasilkan, machine learning dengan menggunakan algoritma Support Vector Machine (SVM) memiliki kinerja yang lebih baik dibanding algoritma

Penelitian ini akan mempermudah dan meningkatkan efisiensi dalam kegiatan absensi yang dilakukan oleh para mahasiswa yaitu dengan menggunakan aplikasi android untuk sistem

Percobaan lapangan perlakuan mulsa sisa tanaman (batang jagung) dan strip penguat teras telah dilakukan pada usaha tani lahan kering di Sub DAS Solo Hulu dan

Instrumen yang digunakan adalah alat penilaian kemampuan guru (APKG) yang diadopsi dari APKG sertifikasi guru rayon 21 Undiksha tahun 2013. Evaluasi dilakukan pada tiga orang guru

disusun draft deskripsi kerja yang baru, sesuai dengan struktur organisasi yang baru pula. Oleh karena itu, proses ini baru dapat dimulai ketika

Pada periode 2006-2007, kelompok sektor utilitas mendominasi PDRB Kabupaten Kepulauan Meranti, ini ditunjukkan oleh sumbangnnya yang menunjukkan angka paling besar terhadap

Dalam penelitian ini dilakukan pengujian model dengan menggunakan Support Vector Machine dan Support Vector Machine berbasis Optimasi Genetic Algorithm (GA) dengan

Grafik Hubungan Yield dengan Rasio Bahan-Pelarut pada Konsentrasi Pelarut 1 g / 100mL Gambar 3 hingga gambar 5 menunjukan grafik hubungan yield dengan rasio bahan-pelarut