ALGORITMA K-NEAREST NEIGHBOR BERBASIS FORWARD SELECTION UNTUK MENDIAGNOSIS PENYAKIT JANTUNG KORONER
KOMPUTAKI Vol.3, No.1 Februari 2017
ALGORITMA K-NEAREST NEIGHBOR BERBASIS FORWARD
SELECTION UNTUK MENDIAGNOSIS PENYAKIT JANTUNG KORONER Achmad Nuruddin Safriandono email :
Abstrak K-Nearest Neighbor merupakan salah satu algoritma yang diusulkan oleh para peneliti data mining di bidang kesehatan seperti penyakit jantung koroner. Penyakit jantung koroner adalah penyakit berbahaya dan salah satu penyebab kematian di seluruh dunia. Maka dari itu, penyakit jantung koroner perlu didiagnosis. Algoritma yang digunakan dalam penelitian ini adalah K-Nearest Neighbor (K-NN) berbasis Forward Selection untuk meningkatkan akurasi dalam diagnosis penyakit jantung koroner. Penelitian ini menggunakan dataset jantung koroner yang diperoleh dari UCI Dataset Machine Learning Repository . Hasil penelitian menunjukkan bahwa algoritma Forward Selection-KNN memiliki akurasi yang lebih baik dari pada KNN.
Kata kunci: Data mining, penyakit jantung koroner, K-Nearest Neighbor, Forward Selection
PENDAHULUAN electrocardiograms (ECG or EKG), dan tes-
tes untuk menghilangkan stress.Penyakit jantung Koroner adalah salah satu penyakit yang menyebabkan kematian di Data mining dapat diaplikasikan di Amerika [1]. Lebih dari 600.000 orang-orang bidang kesehatan misalnya mendiagnosis Amerika meninggal setiap tahun disebabkan penyakit kanker payudara, penyakit jantung, penyakit jantung. Istilah “penyakit jantung” penyakit diabetes dan lain-lain [2]. Terdapat menjelaskan beberapa tipe kondisi jantung [1]. Salah satu tipe penyakit jantung adalah beberapa metode dalam mendiagnosis
coronary artery disease, yang menyebabkan
penyakit kanker payudara misalnya K-Nearest serangan jantung. Jenis penyakit jantung yang
Neighbor (KNN) [3], Naïve Bayes [4] , Neural
lain termasuk katup jantung atau jantung yang tidak terpompa dengan baik dan menyebabkan
Network [5], C4.5 [5] dan lain-lain.
gangguan jantung. Beberapa orang meninggal Penelitian yang dilakukan oleh Mehdi karena penyakit jantung [1]. Maka dari itu Moradian dan Ahmad Barani menjelaskan penyakit jantung perlu didiagnosis. Para tentang algoritma K-Nearest Neighbor (KNN) dokter menguji melakukan tes untuk adalah salah satu algoritma klasifikasi yang mendiagnosis penyakit jantung, termasuk X- digunakan sebagian besar dalam aplikasi yang rays pada dada, coronary angiograms, berbeda [3]. Salah satu masalah dari algoritma KNN adalah semua atribut dalam menghitung
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom)
Weighted Naïve Bayes (DE-WNB), Naïve Bayes (NB), Gain Ratio-Weighted Naïve Bayes (GR-WNB), MI-WNB, Correlation- based Feature Selection-Weighted Naïve Bayes (CFS-WNB) dan Tree-Weighted Naïve Bayes (Tree-WNB). Algoritma Differential Evolution Weighted Naïve Bayes (DE-WNB)
Tree-Weighted Naïve Bayes (Tree-WNB)
menggunakan dataset jantung menghasilkan keakuratan sebesar 82.93±6.14%. Algoritma
Weighted Naïve Bayes (MI-WNB)
jantung menghasilkan keakuratan sebesar 84.22±5.99%. Algoritma Mutual Information-
based Feature Selection-Weighted Naïve Bayes (CFS-WNB) menggunakan dataset
sebesar 81.63±6.23%. Algoritma Correlation-
Naïve Bayes (GR-WNB) menggunakan dataset jantung menghasilkan keakuratan
jantung menghasilkan keakuratan sebesar 83.78±5.41%. Algoritma Gain Ratio-Weighted
Naïve Bayes (NB) menggunakan dataset
menggunakan dataset jantung menghasilkan keakuratan sebesar 83.44±5.51%. Algoritma
metode seperti backwards sequential elimination, lazy elimination dan lain-lain [4]. Mengujikan algoritma baru menggunakan 36 data set dari UCI Repository diseleksi dengan perangkat lunak Weka dan dibandingkan dengan algoritma Differential Evolution
jarak antara record baru dan record yang tersedia dalam dataset training. Hal ini menyebabkan proses klasifikasi yang tidak baik dan menurunkan akurasi algoritma klasifikasi. Pendekatan utama untuk menangani masalah ini adalah untuk atribut- atribut bobot yang berbeda ketika menghitung jarak antara dua record. Dalam pembahasan ini, menggunakan aturan-aturan asosiasi untuk atribut-atribut bobot dan menyarankan algoritma klasifikasi baru K-Nearest Neighbor
Naïve Bayes dengan menggabungkan metode-
Penelitian yang dilakukan oleh Jia WU dan Zhihua CAI telah mengusulkan banyak metode efektif untuk meningkatkan kinerja
dataset jantung menghasilkan akurasi sebesar 81.48% [3].
Algoritma LWL menggunakan dataset jantung menghasilkan akurasi sebesar 71.85%. Algoritma IBK menggunakan dataset jantung menghasilkan akurasi sebesar 81.48%. Algoritma KNNBA menggunakan
jantung menghasilkan akurasi sebesar 80.37%. Algoritma VFI menggunakan dataset jantung menghasilkan akurasi sebesar 80%.
Bayes Tree (NBTree) menggunakan dataset
IBK. Algoritma Naïve Bayes (NB) menggunakan dataset heart disease menghasilkan akurasi sebesar 83.707%. Algoritma Neural Network (NN) menggunakan dataset jantung menghasilkan akurasi sebesar 78.15%. Algoritma J48 menggunakan dataset jantung menghasilkan akurasi sebesar 76.67%. Algoritma Naïve
Network (NN), J4.8, NBTREE, VFI, LWL dan
Pengujian ini menggunakan 15 UCI data set, dan dibandingkan dengan yang algoritma klasifikasi lain Naïve Bayes (NB), Neural
Based Association (KNNBA) yang dapat meningkatkan akurasi algoritma KNN.
menggunakan dataset jantung menghasilkan keakuratan sebesar 84.04±5.90% [4]. Dari penelitian yang pernah dilakukan untuk diagnosis penyakit jantung terutama yang menggunakan algoritma K-Nearest Neighbor,
KOMPUTAKI Vol.3, No.1 Februari 2017 akurasinya belum tinggi. Kelebihan-kelebihan 1.
Data cleaning dapat digunakan untuk data spesifik model algoritma K-Nearest Neighbor
yang missing value [5]. Karena ditemukan berbasis Forward Selection pada penyakit adanya data yang terlewat tidak terisi jantung yang akan diteliti dibanding teknik- (missing value) pada data. Pengolahan data teknik diagnosis lain yaitu Forward Selection digunakan untuk mereduksi ukuran data set awal dilakukan untuk mengisi nilai yang [5] sehingga dapat meningkatkan akurasi pada
missing value dengan pekerjaan replace K-Nearest Neighbor. Maka dari itu, penelitian missing value dilakukan.
ini menggunakan algoritma K-Nearest
Neighbor berbasis Forward Selection untuk
2. reduction digunakan untuk Data mendiagnosis penyakit jantung yang dapat menghasilkan data set yang volumenya meningkatkan akurasi dibandingkan dengan lebih kecil [5]. Salah satu strategi data penelitian-penelitian sebelumnya.
reduction yang digunakan pada penelitian ini adalah attribute subset selection [5].
Attribute subset selection digunakan untuk
Penelitian ini menggunakan proses Cross- mereduksi ukuran data set dengan
Standard Industry-Data Mining (CRISP-DM)
menghilangkan atribut-atribut yang tidak dengan tahap-tahap penelitian meliputi relevan atau redudant [5]. Salah satu teknik pemahaman bisnis, pemahaman data,
attribute subset selection yang digunakan pengolahan data, pemodelan dan evaluasi [2].
pada penelitian ini adalah Forward
Tahap Pemahaman Bisnis Selection [5].
Penelitian ini dilakukan untuk menerapkan algoritma K-Nearest Neighbor berbasis
Forward Selection untuk meningkatkan Tahap Pemodelan akurasi dalam mendiagnosis penyakit jantung.
Model yang digunakan dalam tahap ini menggunakan algoritma K-Nearest Neighbor
Tahap Pemahaman Data berbasis Forward Selection.
Penelitian ini mengambil dataset jantung dari UCI Machine Learning [10].
Tahap Pengolahan Data Tahap Pemodelan pada Algoritma K-
Teknik-teknik pengolahan data awal (data pre-
Nearest Neighbor (KNN) dengan Dataset processing) yang digunakan pada penelitian
Jantung Koroner
ini adalah [5] :
Dataset jantung dimana data diambil 10 data
dari 123 data dapat dilihat pada tabel dibawah
2
Langkah-langkah penghitungan algoritma K-
2
2
2
d(1,11) = ((32-33)
( ) √∑ ( )
2. Menghitung jarak (similarity) di antara semua training records dan objek baru dapat dilihat pada tabel 3.2.
Menentukan parameter k, misal k = 5.
Nearest Neighbor : 1.
0; Thalach = 0; Exang = 0; Oldpeak = 1; Slope = 2; Ca = 0; Thal = 6; dan Num = 2. Data yang telah didapatkan dihitung dengan metode KNN untuk mendapatkan hasil berupa Sex “Male (M) atau “Female (F)”.
2
Trestbpd = 100; Chol = 0; Fbs = 0; Restecg =
2 Objek baru terdiri dari Age = 33; Cp = 3;
6
2
1
1 33 ? 3 100 140
3
1
2
2
2
1/2
2
2
2
2
2
= 15.43 d(2,11) = ((34-33)
1/2
d(1,11) = (238.09)
= (1 + 4 + 25 + 0 + 0 + 0 + 169 + 0 + 0.09 + 1 + 0 + 36 + 2)
2
1/2
)
2
2
2
2
2
2
38 M 4 150 120
3
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom) Dataset jantung koroner sebanyak 10 data
0.7
1
35 M 4 130
1
1
0.2
34 M 4 115 154
1
1
1 95 127
3
32 M
Nu m
C a Tha l
Oldpea k Slop e
Thalac
h
Exan gFb s Restec g
Trestbp d Cho l
Ag e Sex C p
7
36 M 4 110 125
38 M 4 135 150
3
1
7
2
1
38 M 3 115 128
1
38 M 3 100 179 -1.1
1
2
1
38 F 4 110 156
2
1
2.8
38 F 4 105 166
1
6
2
1
- (1-3)
- (95-100)
- (0-0)
- (0-0)
- (0-0)
- (127- 140)
- (0-0)
- (0.7-1)
- (1-2)
- (0-0)
- (0-6)
- (1-2)
- (4-3)
- (115-100)
- (0-0)
- (0-0)
- (0-0)
- (154-
- (0-0)
- (0.2-1)
- (1-2)
- (0-0)
- (0-6)
- (1-2)
- 0.64 + 1 + 0 + 36 + 1)
- (3-3)
- (100-100)
- (0-0)
- (0-0)
- (0-0)
- (179- 140)
= 39.84 d(8,11) = ((38-33)
2
2
2
)
1/2
= (25 + 0 + 0 + 0 + 0 + 0 + 1521 + 0
1/2
d(7,11) = (1587.01)
1/2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
d(6,11) = (393)
2
2
)
1/2
2
1/2
= (25 + 1 + 100 + 0 + 0 + 0 + 256 + 0 + 1 + 0 + 0 + 9 + 1)
1/2
= 19.83 d(7,11) = ((38-33)
2
2
2
2
2
2
- (0-0)
- (-1.1-1)
- (4-3)
- (0-100)
- (0- 0)
- (1-2)
- (0-0)
- (0-6)
- (0-2)
- (0-0)
- (0-0)
- (130-140)
- (1-0)
- (0-1)
- (0-2)
- (0-0)
- (7-6)
- (3-2)
- 0.01 + 1 + 0 + 36 + 4)
- (3-3)
- (115-100)
- (0-0)
- (4-3)
- (110-100)
- (0-0)
- (0-0)
- (0-0)
- (128- 140)
- (0-0)
- (0-0)
- (125- 140)
- (1-0)
- (0-1)
- (2-2)
- (0-0)
2
- (1-0)
- (1-1)
- (2-2)
- (0-0)
- (7-6)
- (1-2)
- (6-6)
- (1-2)
- 0 + 0 + 0 + 0 + 1)
- (4-3)
- (135-100)
- (0-0)
- (4-3
- (105-100)
- (0-0)
- (0-0)
- (0-0)
- (150- 140)
- (0-0)
- (0-0)
- (166- 140)
- (0-0)
- (0-1)
- (0-2)
- (0-0)
- (0-0)
- (2.8-1)
- (1-2)
- (0-0)
- (3-6)
- (2-2)
- (0-0)
- (1-2)
- 3.24 + 1 + 0 + 0 + 1)
- (4-3)
- (150-100)
- (0-0)
- (4-3)
- (110-100)
- (0-0)
- (0-0)
- (0-0)
- (120- 140)
- (0-0)
- (0-0)
- (156- 140)
- (1-0)
- (0-1)
- (0-2)
- (0-0)
= (25 + 0 + 225 + 0 + 0 + 0 + 144 + 1 + 1 + 0 + 0 + 1 + 1)
2
2
1/2
d(9,11) = (1365)
1/2
= 36.95 d(10,11) = ((38-33)
2
2
2
2
2
1/2
2
2
2
2
2
2
2
)
= (25 + 1 + 1225 + 0 + 0 + 0 + 100 + 0 + 1 + 4 + 0 + 9 + 0)
)
)
2
1/2
2
1/2
d(8,11) = (398)
1/2
= 19.95 d(9,11) = ((38-33)
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
)
2
2
2
2
2
2
2
1/2
2
= (4 + 1 + 10000 + 0 + 0 + 0 + 100 + 1 + 1 + 4 + 0 + 1 + 1)
1/2
d(3,11) = (10113)
1/2
= 100.56 d(4,11) = ((36-33)
2
2
2
2
2
2
2
KOMPUTAKI Vol.3, No.1 Februari 2017
140)
2
2
2
2
2
2
)
2
1/2
= (1 + 1 + 225 + 0 + 0 + 0 + 196 + 0
1/2
d(2,11) = (461.64)
1/2
= 21.49 d(3,11) = ((35-33)
2
2
2
2
2
1/2
2
2
2
2
)
1/2
= (25 + 1 + 25 + 0 + 0 + 0 + 676 + 0
d(5,11) = (732.24)
2
1/2
= 27.06 d(6,11) = ((38-33)
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
)
1/2
= (6 + 1 + 100 + 0 + 0 + 0 + 225 + 1
1/2
d(4,11) = (334)
1/2
= 18.28 d(5,11) = ((38-33)
2
2
2
2
2
1/2
- (0-0)
- (0-1)
- (2-2)
- (0-0)
- (3-6)
- (1-2)
- (3-6)
- (1-2)
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom)
= (25 + 1 + 2500 + 0 + 0 + 0 + 400 +
1/2
1 + 1 + 4 + 0 + 9 + 1)
1/2
d(10,11) = (2942) = 54.24
Tabel 4.2 Perhitungan dengan melibatkan sampel data set jantung 3.36 M
6
6
6
27.06
38 F
5
5
2
18.28
4
19.83
4
10
35 M 100.56
3
3
5
21.49
34 M
2
2
38 F
3
15.43
38 M
11 (objek baru)
11
9
54.24
38 M
10
10
7
36.95
9
7
9
4
19.95
38 M
8
8
8
39.84
38 M
7
1
32 M
Pengurutan data berdasarkan nilai jarak dari nilai yang terkecil sampai terbesar dapat dilihat pada Tabel 4.3.
21.49
5
5
18.28
36 M
4
4
35 M 100.56
3
3
34 M
27.06
2
2
15.43
32 M
1
1
No. Data ke- Age Sex Jarak (d)
Tabel 4.4. Pengambilan dataset jantung sejumlah nilai K=54. Pengambilan data sejumlah nilai K (misal K=5), dapat dilihat pada tabel 4.4.
Tabel 4.3. Hasil pengurutan dataset jantung berdasarkan nilai jarak38 F
6
1
9
1
33 ? No. Data ke- Age Sex Jarak (d) Urutan jarak terke
11 (objek baru)
11
54.24
38 M
10
10
36.95
38 M
9
6
19.95
38 M
8
8
39.84
38 M
7
7
19.83
38 F
33 ?
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom)
Data ke- Urutan jarak terkecil
Age Sex Jarak (d)
1
32 M
15.43
1
4
36 M
18.28
2
6
38 F
19.83
3
8
38 M
19.95
4
2
34 M
21.49
5 11 (objek baru) 33 ?
Tahap Pemodelan pada Algoritma Forward 5.
Selection dengan Dataset Jantung
Menentukan label yang frekuensinya paling sering di antara k training records yang Langkah-langkah Forward Selection yang digunakan untuk dataset jantung : paling dekat dengan objek. Pada tabel 4.4, hasil pengambilan data 1.
Mulai dengan tidak ada variabel-variabel sejumlah nilai K, yaitu 5 data, maka dalam model. didapatkan hasil “sex” sebagai berikut: 2.
Variabel yang paling berkorelasi dengan Cp
Male (M) = 4
sebagai variabel dependen dipilih dan jika
Female (F) = 1 signifikan dimasukkan ke dalam model.
3. Menentukan prediktor-prediktor yang Dengan menggunakan label yang frekuensinya paling sering, maka dimasukkan ke dalam model. Variabel didapatkan nilai atribut class adalah ”Male
Exang yang memiliki nilai koefisien (M)”.
korelasi (r = 0.269). F-statistic sekuensial Jadi objek baru pada dataset jantung adalah yang berhubungan dengan Restecg menjadi
age = 33; sex = M; trestbpd = 100; chol =
variabel kedua yang dimasukkan ke dalam 0; fbs = 0; restecg = 0; thalach = 140; model. F-statistic sekuensial yang
exang = 0; oldpeak = 1; slope = 2; ca= 0; thal = 6 dan num =2.
berhubungan dengan Num menjadi variabel ketiga yang dimasukkan ke dalam model.
KOMPUTAKI Vol.3, No.1 Februari 2017
reduced SS Restecg|Exang = SS Exang,Restecg, – SS Exang
Statistik uji untuk F-test parsial (atau sekuensial) pada dataset jantung adalah 15.58.
Restecg,Exang = 6.653 : 0.427 = 15.58.
MSE
Exang,Restecg :
F(Exang|Resteg) = SS
0.427, memeberikan
− 4.173 = 2.48 Statistik uji untuk F-test parsial (atau sekuensial) pada dataset jantung adalah : F(Exang|Resteg) = SS Exang,Restecg : MSE Restecg,Exang Dari tabel 4.6 memiliki MSE Restecg,Exang =
SS Restecg|Exang = SS Exang,Restecg, – SS Exang = 6.653
= 6.653 dan SS Exang = 4.173, memberikan
Restecg,Exang
Dari Tabel 4.6 kami memiliki SS
Tabel ANOVA dan model summary dari prosedur Forward Selection dengan dataset jantung dibuat menggunakan software SPSS 16.0.
− SS
4. Prosedur yang variabel-variabelnya tidak
prediktor. Model 3 menunjukkan model dengan Exang, Rectecg dan Num yang dimasukkan sebagai prediktor. SS extra = SS full
normal nucleoli yang dimasukkan sebagai
dengan single epithelial cell size hanya sebagai prediktor. Model 2 menunjukkan model dengan single epithelial cell size dan
selection. Model 1 menunjukkan model
4.6. Tabel 4.6 berisi tabel ANOVA untuk model-model dipilih oleh prosedur forward
Menghitung F-statistik sekuensial pada variabel-variabel dapat dilihat pada Tabel
ε 5.
(Num) +
3
y = β + β 1 (Exang) + β 2 (Restecg) + β
dependen :
signifikan maka masuk ke dalam model dan model regresi berganda (multiple regression) untuk Cp sebagai variabel
Model summary dari prosedur Forward Selection dengan dataset jantung
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom)
Change Statistics R
Std. Squar Adjuste Error of e F
Mod R d R the Chang Chang Sig. F el R Square Square Estimate e e df1 df2 Change
a
1 .269 .072 .064 .66616 .072 9.405 1 121 .003
b
2 .339 .115 .100 .65330 .043 5.810 1 120 .017
c
3 .401 .161 .140 .63871 .046 6.548 1 119 .012
a. Predictors: (Constant), Exang
b. Predictors: (Constant), Exang, Restecg
c. Predictors: (Constant), Exang, Restecg, Num
Tabel 4.6 Tabel ANOVA untuk model-model yang dipilih prosedur Forward Selection dengandataset jantung d ANOVA
Sum of Model Squares Df Mean Square F Sig.
a
1 Regression 4.173 1 4.173 9.405 .003 Residual 53.696 121 .444 Total 57.870 122
KOMPUTAKI Vol.3, No.1 Februari 2017
Penelitian ini menggunakan dataset jantung
cross validation pada algoritma K-Nearest Neighbor (k=1) sebesar 91.86% +/- 0.29%,
Pada dataset jantung sebanyak 123 record, nilai akurasi dihitung menggunakan ten fold
Neighbor , setelah itu pengujian pada algoritma Forward Selection-KNN.
Pengujian pada diagnosis jantung koroner dengan menggunakan algoritma K-Nearest
cross validation [5]. Pengujian pada penelitian ini menggunakan ten fold cross validation.
Salah satu teknik untuk menilai akurasi adalah
jantung sebanyak 123 record [10].
(0-3) colored by flourosopy), thal, dan Num (diagnosis of heart disease). Jumlah data set
tresbpd (resting blood pressure), Chol (serum cholestoral in mg/dl), fbs (fasting blood sugar), Restecg (Resting electrocardiographic results), Thalach (maximum heart rate achieved), Exang : exercise induced angina, oldpeak, slope, Ca (number of major vessels
parameter yaitu age, sex, chest pain type (Cp),
koroner yang diambil dari UCI parameter-
HASIL DAN PEMBAHASAN Hasil Eksperimen dan Pengujian Model
2 Regression 6.653 2 3.327 7.794 .001
Pengukuran dan evaluasi pada penelitian ini menggunakan confusion matrix (accuracy) dan ROC Curve.
Tahap Pengukuran dan Evaluasi
d. Dependent Variable: Cp
c. Predictors: (Constant), Exang, Restecg, Num
b. Predictors: (Constant), Exang, Restecg
a. Predictors: (Constant), Exang
Residual 48.546 119 .408 Total 57.870 122
c
3 Regression 9.324 3 3.108 7.619 .000
Residual 51.217 120 .427 Total 57.870 122
b
sebagai berikut :
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom)
testing, record 97-123 termasuk data training.
true Male true Female class precision pred. Male 105 8 92.92% pred. Female
Nearest Neighbor dengan dataset jantung
Tabel 5.1 Confusion matrix pada algoritma K-dataset jantung dapat dilihat pada tabel 5.1 dan gambar 5.1.
pada algoritma K-Nearest Neighbor dengan
matrix dan kurva Area Under Curve (AUC)
akurasi 86.79% +/- 7.73%. Tabel confusion
Pengukuran dan Evaluasi pada K-Nearest Neighbor dengan Dataset Jantung Dataset jantung pada k=1 yang memiliki nilai
Evaluasi dan validasi pada penelitian ini menggunakan confusion matrix (accuracy) dan ROC Curve.
Pengukuran dan Evaluasi
10. Pengujian 10 : record 108-123 termasuk data testing.
data testing, record 109-123 termasuk data training.
9. Pengujian 9 : record 97-108 termasuk
8. Pengujian 8 : record 85-96 termasuk data
1. Pengujian 1 : record 1-12 termasuk data
testing, record 85-123 termasuk data training.
7. Pengujian 7 : record 73-84 termasuk data
testing, record 73-123 termasuk data training.
6. Pengujian 6 : record 61-72 termasuk data
testing, record 61-123 termasuk data training.
5. Pengujian 5 : record 49-60 termasuk data
testing, record 49-123 termasuk data training.
4. Pengujian 4 : record 37-48 termasuk data
testing, record 37-123 termasuk data training.
3. Pengujian 3 : record 25-36 termasuk data
testing, record 25-123 termasuk data training.
2. Pengujian 2 : record 13-24 termasuk data
testing, record 13-123 termasuk data training.
8 2 20.00% class recall 92.92% 20.00%
Gambar 5.1 Area Under Curve (AUC) pada algoritma K-Nearest Neighbor dengan dataset jantungPada tabel 5.1 dihasilkan nilai TP (true TP+TN Akurasi =
positive) 105, nilai TN (true negative) 2, nilai
TP+TN+FP+FN FP (false positive) 8, nilai FN (false negative) 8 dan nilai AUC (Area Under Curve) 0,936+/-
105+2 0.071 yang termasuk dalam kategori
=
105+2+8+8 sangat baik (excellent “klasifikasi
classification)
”. Jika akurasinya adalah:
= 107 : 123
Diketahui:
= 86.79%
TP = 105 FN = 8 FP = 8 TN = 2
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom) Pengukuran dan Evaluasi pada Forward pada algoritma Forward Selection
- – KNN dengan dataset jantung dapat dilihat pada tabel
Selection - K-Nearest Neighbor (KNN) 5.2 dan gambar 5.2. dengan Dataset Jantung
Tabel 5.2 Confusion matrix pada algoritmaDataset jantung pada k=1 yang memiliki nilai
akurasi 91.86% +/- 0.29%. Tabel confusion Forward Selection
- – KNN dengan
matrix dan kurva Area Under Curve (AUC) dataset jantung
true Male true Female class precision pred. Male 113 10 91.87% pred. Female
0.00% class recall 100.00% 0.00%
Gambar 5.2 Area Under Curve (AUC) pada algoritma Forward Selection- – KNN dengan dataset jantung
Pada tabel 5.2 dihasilkan nilai TP (true 10 dan nilai AUC (Area Under Curve)
positive) 113, nilai TN (true negative) 0, nilai 0.777+/-0.134 yang termasuk dalam kategori
FP (false positive) 0, nilai FN (false negative)
“Assessment of input variables determination on the SVM model performance using PCA , Gamma test , and forward selection techniques for monthly stream flow prediction,”
D. T. Larose, Discovering Knowledge
Moghaddamnia, D. Han, M. H. Zokaei- ashtiani, and A. Farokhnia,
[8] R. Noori, A. R. Karbassi, A.
Model Technique. Romania: Springer, 2011.
F. Gorunesco, Data Mining Concept
USA: Kauffmann, Morgan, p. 2011. [7]
Data mining: Practical Machine Learning Tools and Techniques, 3rd ed.
I. H. Witten, E. Frank, and M. A.Hall,
United States of America: Diane Cerra, 2006. [6]
[5] J. Han and M. Kamber, Data Mining Concept dan Techniques, 2nd ed.
[4] J. Wu and Z. Cai, “Attribute Weighting via Differential Evolution Algorithm for Attribute Weighted Naive Bayes ( WNB ),” vol. 5, pp. 1672–1679, 2011.
Theoretical and Applied Information Technology, 2009.
A. Baraani, “KNNBA: K-Nearest-Neighbor Based Association Algorithm,” Journal of
Wiley & Sons, Inc, 2005. [3] M. Moradian and
in Data: An Introduction to Data Mining. United States of America: John
Chronic Disease Prevention and Health Promotion, pp. 1
KOMPUTAKI Vol.3, No.1 Februari 2017
[1] N. C. for C. D. P. and H. Promotion, “Heart Disease,” National Center for
tingkat akurasinya lebih tinggi dari pada algoritma K-Nearest Neighbor (KNN) dalam mendiagnosis penyakit jantung koroner.
Selection berbasis K-Nearest Neighbor (KNN)
Pada penelitian ini, algoritma Forward
classification).
akurasi 91.86% +/- 0.29% dan nilai AUC (Area Under Curve) 0.777+/-0.134 yang termasuk dalam kategori klasifikasi sama (fair
Forward Selection-KNN (k=1) memiliki nilai
Pada dataset jantung koroner, algoritma
classification).
Pada dataset jantung koroner, algoritma KNN (k=1) memiliki nilai akurasi 86.79% +/- 7.73% dan nilai AUC (Area Under Curve) 0,936+/-0.071 yang termasuk dalam kategori klasifikasi sangat baik (excellent
belum tinggi.
Dari penelitian-penelitian yang pernah dilakukan tentang diagnosis penyakit jantung koroner terutama yang menggunakan algoritma K-Nearest Neighbor, akurasinya
KESIMPULAN
“klasifikasi sama (fair classification). Jika akurasinya adalah: Diketahui: TP = 113 FN = 10
- –2, 2009. [2]
Algoritma K-Nearest Neighbor Berbasis Forward Selection Untuk Mendiagnosis Penyakit Jantung Koroner (Achmad Naruddin Safriandono, M.Kom)
Journal of Hydrology, vol. 401, no. 3
- – 4, pp. 177 –189, 2011.
Machine Learning Repository” http://archive.ics.uci.edu/ml/datasets.ht
[9]
D. T. Larose, Data Mining Methods and
Models. New Jersey, Canada: John Wiley & Sons, Inc, 2007.
[10] Frank, A. & Asuncion, A, “UCI
Irvine, CA: University of California, School of Information and Computer Science, 2010.