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 SexMale (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 g

  Fb 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=5

  4. Pengambilan data sejumlah nilai K (misal K=5), dapat dilihat pada tabel 4.4.

Tabel 4.3. Hasil pengurutan dataset jantung berdasarkan nilai jarak

  38 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 dengan

  dataset 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 jantung

  Pada 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 algoritma

  Dataset 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.