Klasifikasi Penderita Penyakit Ginjal Kronis Menggunakan Algoritme Support Vector Machine (SVM)

  

Vol. 2, No. 12, Desember 2018, hlm. 6597-6602 http://j-ptiik.ub.ac.id

Klasifikasi Penderita Penyakit Ginjal Kronis Menggunakan Algoritme

  

Support Vector Machine (SVM)

1 2 3 Ega Ajie Kurnianto , Imam Cholissodin , Edy Santoso

  Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya 1 2 3 Email: [email protected], [email protected], [email protected]

  

Abstrak

  Data mining merupakan salah satu proses yang dapat digunakan pada industri kesehatan saat ini. Dengan banyaknya jumlah data yang dikumpulkan, akan dapat digunakan untuk mendapatkan suatu informasi atau mendapatkan bentuk pola yang menarik. Nantinya, informasi tersebut bisa digunakan untuk memberikan bantuan, diagnosis, maupun pengambilan keputusan terhadap seorang penderita penyakit tertentu, misalnya penyakit ginjal kronis, yang merupakan salah satu bentuk gangguan yang terjadi pada ginjal. Penyakit ini perupakan penyakit yang mematikan, tetapi dengan tindakan pencegahan yang tepat, penyakit ini juga dapat dihindari. Biasanya sebagian besar pasien penderita penyakit ginjal kronis tidak mengetahui penyakit yang diderita, serta pasien cenderung menganggap remeh ketika mendapati gejala- gejala awal pada penyakit ginjal kronis. Oleh karena itu, dibutuhkan sistem yang dapat memudahkan pendeteksian awal penyakit ginjal kronis. Salah satu teknik yang dapat digunakan yaitu klasifikasi dengan menggunakan algoritme Support Vector Machine (SVM). Algoritme ini bertujuan membuat

  

hyperplane atau garis pemisah yang optimal. Pada penelitian ini data pasien yang digunakan berjumlah

  158 data dengan 24 fitur dan 2 kelas. Berdasarkan hasil pengujian parameter SVM, hasil akurasi terbaik yang didapat mencapai 100% dengan detail nilai parameter yaitu nilai augmenting factor (

  λ) = 0.001,

  nilai learning rate (

  γ) = 0.001, nilai complexity (C) = 0,001, nilai sigma (σ) = 1, dan jumlah iterasi = 1000.

  Kata kunci: penyakit ginjal kronis, support vector machine, klasifikasi

Abstract

Data mining is one of the processes that can be used in the healthcare industry currently. With the large

amount of data collected, it can be used to get some information or an interesting pattern. Later on, the

information can be used to provide assistance, diagnose, or decision making of a patient with the certain

disease, such as chronic kidney disease, which is one form of disorder in the kidney. It is a deadly

disease, but with proper precautions, this disease can also be avoided. Usually, most patients with a

chronic kidney disease don’t know the suffered disease and patients tend to underestimate when they

find early symptoms of chronic kidney disease. Therefore, it needs a system that can facilitate the early

detection of the chronic kidney disease. One technique that can be used is the classification using

Support Vector Machine (SVM) algorithm. This algorithm aims to create an optimal hyperplane or

dividing line. This research used data from 158 patients with 24 features and 2 classes. Based on test

results, obtained best accuracy 100% with the details of parameter value is augmenting factor value (λ)

= 0,001, learning rate value (γ) = 0,001, complexity value (C) = 0,001, sigma value (σ) = 1, and number

of iteration = 1000.

  Keywords: chronic kidney disease, support vector machine, classification

  sekitar 20% darah manusia masuk ke ginjal tiap 1.

   PENDAHULUAN menitnya untuk dibersihkan (Wibowo, 2008).

  Fungsi kedua yaitu menyaring dan membuang Ginjal memiliki peranan penting bagi limbah seperti urea atau garam berlebih, bahkan kesehatan tubuh sehingga organ ini sangat racun di dalam tubuh kita. Tanpa adanya ginjal, penting bagi manusia. Ginjal berfungsi limbah dan racun akan menumpuk di dalam diantaranya sebagai penyaring darah, dimana

  Fakultas Ilmu Komputer Universitas Brawijaya

6597 darah. Fungsi lainnya yaitu memantau serta mengendalikan keseimbangan air di dalam tubuh. Ginjal juga berfungsi sebagai pengatur tekanan darah dan tingkat garam dalam darah darah (Alodokter, 2016). Karena fungsi ginjal sangat penting bagi kesehatan tubuh, maka sangat riskan apabila mengalami gangguan. Adanya gangguan pada ginjal ini dapat dideteksi dengan melihat adanya kelainan yang terdapat dalam urin, darah, ataupun melalui prosedur biopsi ginjal (Prince & Wilson, 2006). Salah satu bentuk gangguan pada ginjal yaitu penyakit ginjal kronis. Penyakit ini merupakan penyakit yang dapat menyebabkan menurunnya kinerja organ ginjal sehingga pada akhirnya dapat mengakibatkan ketidakmampuan ginjal untuk melakukan fungsinya dengan baik (Cahyaningsih, 2011). Beberapa penyakit juga dapat memicu munculnya penyakit ginjal kronis ini, misalnya penyakit diabetes atau hipertensi (Alodokter, 2016).

  Penyakit ginjal kronis merupakan salah satu penyakit yang tingkat penderitanya cukup tinggi di dunia. Menurut The United States Renal

  Machine (SVM), Jaringan Syaraf Tiruan, dan Naive Bayes. Ketiga algoritme tersebut

  2. PENYAKIT GINJAL KRONIS

  Vector Machine (SVM).

  (SVM)”. Penelitian ini diharapkan dapat membantu untuk pengklasifikasian penderita penyakit ginjal kronis dengan menggunakan algoritme Support

  Support Vector Machine

  Berdasarkan dari penjelasan di atas, maka penulis mengajukan judul penelitian yang dibuat pada skripsi ini adalah “Klasifikasi Penderita Penyakit Ginjal Kronis Menggunakan Algoritme

  Hasilnya, algoritme SVM memiliki tingkat akurasi terbaik dengan nilai sebesar 81.10%.

  review film. Data yang digunakan merupakan data review film yang diambil dari situs IMDb.

  diimplementasikan untuk analisis sentimen

  Menurut penelitian sebelumnya yang dilakukan oleh Chandani V. (2015) yang membahas tentang perbandingan antara tiga algoritme klasifikasi yaitu, Support Vector

  Data System (USRDS), jumlah penderita

  pola secara umum, dimana optimasi parameter dilakukan pada pada ruang hasil transformasi yang lebih rendah (Nugroho, et al., 2003).

  Machine (SVM) dengan metode pengenalan

  salah satu algoritme pengenalan pola yang menerapkan transformasi data pada input ke ruang yang berdimensi tinggi serta melakukan optimasi pada ruang vector baru tersebut. Hal ini yang membedakan algoritme Support Vector

  Machine (SVM). Algoritme SVM merupakan

  Untuk penelitian kali ini metode yang digunakan yaitu algoritme Support Vector

  Penelitian tentang klasifikasi penyakit ginjal kronis sebelumnya pernah dilakukan oleh Kunwar, et al. (2016), yang membandingkan antara 2 algoritme klasifikasi yaitu, Naive Bayes dan Jaringan Syaraf Tiruan untuk klasifikasi penyakit ginjal kronis.

  States National Center for Health Statistics (USNCHS) (Pernefri, 2012).

  Indonesia sendiri termasuk salah satu negara dengan tingkat penderita penyakit ginjal kronis yang cukup tinggi. Tingkat penderita penyakit ginjal kronis bahkan mencapai urutan tertinggi ketiga (Depkes, 2013). Perhimpunan Nefrologi Indonesia (Pernefri) mencatatkan dalam hasil surveinya bahwa ada sekitar 22.304 penduduk Indonesia menderita penyakit ginjal kronis pada tahun 2011 dan meningkat menjadi 28.782 pada tahun berikutnya. Di negara-negara berkembang lainnya penderita penyakit ginjal kronis ini mencapai 40 sampai 60 kasus tiap 1 juta penduduk pertahunnya. Bahkan penyakit ginjal kronis menduduki peringkat 10 besar untuk penyakit yang memiliki tingkat kematian yang tinggi berdasarkan data terbaru dari United

  penyakit ginjal kronis diperkirakan mencapai 2.020 kasus perjuta penduduknya pada tahun 2012 dengan tingkat pertumbuhan mencapai 7% dan untuk di Amerika Serikat, hampir setiap tahunnya sekitar 70 orang meninggal dunia akibat menderita penyakit ginjal kronis (Fmc, 2012). Menurut hasil survei yang dilakukan di Guangzhou, China, angka penderita penyakit ginjal kronis mencapai 12% untuk di wilayah Guangzhou. Dimana dari angka tersebut, hanya kurang dari 10% pasien yang sadar jika bermasalah dengan penyakit tersebut, artinya lebih dari 90% pasien tidak mengetahui penyakit yang diderita. Apalagi biasanya pasien cenderung menganggap remeh ketika mendapati gejala-gejala awal pada penyakit ginjal kronis (Erabaru, 2006).

  Penyakit ginjal kronis dapat diartikan sebagai suatu kondisi terjadinya kerusakan ginjal atau memiliki laju Glomerular Filtration (GFR) < 60 mL/menit selama 3 bulan atau lebih (Dulhare & Ayesha, 2016). Dalam keadaan tersebut fungsi organ ginjal akan menurun, sehingga pada akhirnya dapat menyebabkan ketidakmampuan ginjal untuk melakukan fungsinya dengan baik (Cahyaningsih, 2011). Menurunnya fungsi organ ginjal ini akan menyebabkan terjadinya penumpukan produk sisa metabolisme dan cairan di dalam tubuh (Smartpatient, 2016).

  Penyakit ginjal kronis dapat dibagi menjadi beberapa tahapan berikut:  Gangguan fungsi ginjal: 51% - 80% dari fungsi ginjal normal  Gagal ginjal: hanya 25% - 50% dari fungsi ginjal  Gagal ginjal berat: hanya 15% - 25% dari fungsi ginjal  Gagal ginjal stadium akhir: kurang dari

  λ ditunjukkan pada Gambar 1.

        i i i i C E         , ,

  1 max min (5) i i i      (6)

  4. PENGUJIAN DAN ANALISIS

  4.1. Pengujian Terhadap Parameter λ

  Pengujian terhadap nilai parameter lambda (

  λ)

  dilakukan untuk mendapatkan solusi terbaik dari nilai

  λ yaitu 0.001, 0.01, 0.1, 0.5, 1, 10, 50, 100,

  500, dan 1000. Detail nilai parameter SVM yang digunakan dalam pengujian ini adalah

  γ = 0.1, C

  = 100, σ = 50, dan jumlah iterasi = 3. Perbandingan data latih dan data uji yang digunakan dalam pengujian ini yaitu 50%:50%.

  Hasil pengujian parameter

  Gambar 1 Hasil Pengujian Parameter λ

   

  Berdasarkan dari grafik hasil pengujian parameter

  λ pada Gambar 1, menunjukkan

  bahwa semakin besar nilai parameter

  λ tidak

  berpengaruh pada nilai akurasi. Pada kernel linier, nilai parameter

  λ yang terlalu besar dapat

  menyebabkan sistem lambat dalam mencapai

  100 100 100 100 100 100 100 100 100 100

  20

  40

  60

  80 100 A kur as i (% )

  Nilai Lambda

   n j ij j i D E 1  (4)

  menggunakan Persamaan 4, Persamaan 5, dan Persamaan 6.

  10% - 15% dari fungsi ginjal Ketika seorang penderita mencapai tahap gagal ginjal stadium akhir maka akan membutuhkan beberapa bentuk perawatan dialisis atau transplantasi ginjal untuk bertahan hidup.

  (2) Untuk mencari nilai

  Registry (IRR), penyebab penyakit ginjal kronis

  Penyakit ginjal kronis ini dapat disebabkan oleh kebiasaan hidup yang kurang baik misalnya, banyak mengkonsumsi makanan cepat saji, minuman berenergi, kurangnya konsumsi air putih. Menurut data dari Indonesian Renal

  α dapat dihitung

       

     

     2 2

  2 , exp  y x K y x

  α dapat menggunakan

  Pada dataset Chronic Kidney Disease yang digunakan pada penelitian ini, ada beberapa parameter yang dapat digunakan sebagai acuan untuk menentukan apakah seseorang menderita penyakit ginjal kronis atau tidak, diantaranya umur, tekanan darah, kadar gula dalam tubuh, kadar urea dalam darah, kadar kadar albumin, jumlah sel darah putih, kadar natrium dalam tubuh, jumlah sel darah merah, dan lain-lain (Anon., 2017).

  metode sequential training (Vijayakumar & Wu, 1999). Dengan menghitung nilai matriks hessian yang disimbolkan dengan [D] lalu melakukan iterasi

  α. Perhitungan matriks hessian ditunjukkan pada Persamaan 3.

     

    2

  ,    j i j i ij

  K x x y y D

  (3) Iterasi pelatihan

  ini diantaranya menderita diabetes mellitus, hipertensi serta memiliki kebiasaan merokok (Lathifah, 2016).

3. SUPPORT VECTOR MACHINE (SVM)

   

    

  dengan mencari nilai f(x) pada margin hyperplane tersebut (Nugroho, et al., 2003). Nilai f(x) dapat dihitung menggunakan Persamaan 1.

  Hyperplane pemisah terbaik dapat ditemukan

  Konsep SVM yaitu sebagai usaha untuk menemukan pemisah hyperplane yang optimal.

    

   

    n i i i i

  K b x x y sign x f 1

  , ) (  (1) Pada perhitungan SVM dengan data nonlinier, fungsi kernel harus digunakan agar mempermudah dalam perhitungan, contoh kernel yang sering digunakan yaitu RBF. Fungsi kernel RBF dapat dihitung menggunakan Persamaan 2. konvergen dan proses pembelajaran menjadi tidak stabil, sehingga waktu komputasi akan lebih lama. Sedangkan pada kernel non linier, nilai parameter

  λ tidak berpengaruh secara

  20

  σ)

  dilakukan untuk mendapatkan solusi terbaik dari nilai

  σ yaitu 0.001, 0.01, 0.1, 1, 5, 10, 20, 50,

  100, dan 1000. Detail nilai parameter SVM yang digunakan dalam pengujian ini adalah

  λ = 0.001, γ = 0.001, C = 0.01, dan jumlah iterasi = 3.

  Perbandingan data latih dan data uji yang digunakan dalam pengujian ini yaitu 50%:50%. Hasil pengujian parameter

  σ ditunjukkan pada Gambar 4.

  Gambar 4 Hasil Pengujian Parameter σ

  Berdasarkan dari grafik hasil pengujian parameter

  σ pada Gambar 4, menunjukkan

  bahwa nilai akurasi terbaik didapat pada nilai

  100 100 100 100 100 100 100 100 100 100

  40

  4.4. Pengujian Terhadap Parameter σ

  60

  80 100 A kur as i (% )

  Nilai Gamma 100 100 100 100 100 100 100 100 100 100

  20

  40

  60

  80 100 A kur as i (% )

  Nilai Complexity 73,08 73,08 91,03

  100 100 100 100 100 100 100

  20

  40

  60

  80 100 A kur as i (% )

  Pengujian terhadap nilai parameter sigma (

  akurasi pada proses latih menjadi berkurang sehingga data uji tidak dapat diklasifikasikan dengan baik dan akibatnya, nilai akurasi akan cenderung menurun. Sedangkan apabila nilai C semakin besar akan menyebabkan waktu komputasi yang lebih lama, tetapi nilai akurasi yang dihasilkan menjadi lebih baik.

  langsung seperti pada kernel linier (Vijayakumar & Wu, 1999).

  γ =

  4.2. Pengujian Terhadap Parameter γ

  Pengujian terhadap nilai parameter gamma (

  γ)

  dilakukan untuk mendapatkan solusi terbaik dari nilai

  γ yaitu 0.001, 0.01, 0.1, 0.5, 1, 5, 10, 100,

  500, dan 1000. Detail nilai parameter SVM yang digunakan dalam pengujian ini adalah

  λ = 0.001, C = 100, σ = 50, dan jumlah iterasi = 3.

  Perbandingan data latih dan data uji yang digunakan dalam pengujian ini yaitu 50%:50%. Hasil pengujian parameter

  γ ditunjukkan pada Gambar 2.

  Gambar 2 Hasil Pengujian Parameter γ

  Berdasarkan dari grafik hasil pengujian parameter

  γ pada Gambar 2, menunjukkan

  bahwa nilai akurasi terbaik didapat pada nilai

  0.001 hingga 1000 dengan nilai akurasi mencapai 100%. Nilai

  hyperplane . Hal ini akan menyebabkan tingkat

  γ tidak berpengaruh pada

  hasil akurasi, karena berapapun nilai

  γ nilai

  akurasi tidak berubah. Pada dasarnya, nilai

  γ

  berfungsi untuk mengatur learning rate atau nilai pembelajaran. Jika nilai pembelajaran semakin besar, maka proses pembelajaran akan menjadi lebih cepat. Namun apabila nilai pembelajaran terlalu besar, umumnya proses pelatihan dapat melampaui kondisi optimal dan dapat menyebabkan ketelitian dari sistem menjadi berkurang, begitu juga sebaliknya.

  4.3. Pengujian Terhadap Parameter C

  Pengujian terhadap nilai parameter complexity (C) dilakukan untuk mendapatkan solusi terbaik dari nilai C yaitu 0.001, 0.01, 0.1, 1, 5, 10, 20, 50, 100, dan 1000. Detail nilai parameter SVM yang digunakan dalam pengujian ini adalah

  λ =

  0.001, γ = 0.001, σ = 50, dan jumlah iterasi = 3. Perbandingan data latih dan data uji yang digunakan dalam pengujian ini yaitu 50%:50%.

  Hasil pengujian parameter C ditunjukkan pada Gambar 3.

  Gambar 3 Hasil Pengujian Parameter C

  Berdasarkan dari grafik hasil pengujian parameter C pada Gambar 3, menunjukkan bahwa nilai akurasi terbaik didapat pada nilai C = 0.001 hingga 1000 dengan nilai akurasi mencapai 100%. Pada dasarnya, pengujian parameter ini bertujuan untuk meminimalkan nilai error. Ketika nilai C mendekati nol, dapat mengakibatkan lebar margin akan menjauhi

  Nilai Sigma

  σ = 1 hingga 1000 dengan nilai akurasi mencapai

  5. KESIMPULAN

  σ dapat menyebabkan

  penurunan nilai akurasi, karena nilai

  σ

  berpengaruh pada kernel RBF yang digunakan dalam algoritme SVM.

  100%. Semakin kecil nilai

  1. Algoritme SVM dapat diimplementasikan untuk klasifikasi penderita penyakit ginjal kronis. Untuk mengimplementasikan algoritme SVM, langkah pertama adalah melakukan normalisasi data. Dari data tersebut dilakukan proses perhitungan kernel. Selanjutnya yaitu melakukan penghitungan sequential learning SVM untuk mendapatkan nilai α terbaik. Kemudian melakukan perhitungan bias yang nilainya digunakan untuk proses pengujian. Hasil klasifikasi akan didapatkan setelah proses pengujian telah selesai, sehingga dapat dihitung nilai akurasinya dengan membandingkan hasil klasifikasi dari sistem dengan kelas aktualnya.

  Berdasarkan hasil penelitian tentang klasifikasi penderita penyakit ginjal kronis menggunakan algoritme SVM maka dapat diambil kesimpulan sebagai berikut:

4.5. Pengujian Terhadap Jumlah Iterasi

  0.001, γ = 0.001, C = 0.01, dan σ = 0.001. Perbandingan data latih dan data uji yang digunakan dalam pengujian ini yaitu 50%:50%.

  60

  Indonesia. [online] Tersedia di:

  http://www.depkes.go.id/ [Diakses 11 April 2017]. Dulhare, D. U. N. & Ayesha, M., 2016.

  Extraction of Action Rules for Chronic Kidney Disease using Naïve Bayes Classifier. IEEE.

  100 100 100 100 100 100 100 100 100 100

  20

  40

  80 100 A k uras i ( % )

  Klasifikasi Machine Learning Dan Feature Selection pada Analisis Sentimen Review Film. Journal of Intelligent Systems, Volume 1, pp. 56-60.

  Jumlah Iterasi 0,0867164 0,0867096

  0,1247643 0,0973953 0,1129546 0,1113048

  0,1079402 0,1047065 0,2357047 1,5557687

  0,4 0,8 1,2 1,6

  W akt u ( de ti k)

  Jumlah Iterasi

  Depkes, 2013. Kementrian Kesehatan Republik

  Perawatan Gagal Ginjal. Dalam: Yogyakarta: Cendekia Press. Chandani, V., 2015. Komparasi Algoritme

  Hasil dari pengujian jumlah iterasi ditunjukkan pada Gambar 5 dan Gambar 6.

  α

  Gambar 5 Hasil Pengujian Jumlah Iterasi Gambar 6 Pengaruh Jumlah Iterasi Terhadap Waktu

  Berdasarkan dari grafik hasil pengujian jumlah iterasi pelatihan

  α pada Gambar 5, menunjukkan

  bahwa nilai akurasi terbaik didapat dari jumlah iterasi 4 hingga 10000. Pada iterasi 4 sampai 10000 menunjukkan akurasi yang konvergen. Hal ini terjadi karena nilai alpha telah mencapai konvergen, dimana perubahan nilai alpha ini dipengaruhi oleh jumlah iterasi. Pada Gambar 6 menunjukkan bahwa nilai akurasi terbaik didapat dari jumlah iterasi 1000 dengan nilai akurasi mencapai 100%, karena pada jumlah iterasi 1000 merupakan titik sebelum terjadinya peningkatan waktu komputasi secara signifikan.

  λ =

  dilakukan untuk mendapatkan solusi terbaik dari jumlah iterasi yaitu 4, 5, 10, 20, 30, 40, 50, 100, 1000, dan 10000. Detail nilai parameter SVM yang digunakan dalam pengujian ini adalah

  2. Berdasarkan hasil pengujian parameter SVM, didapatkan hasil akurasi terbaik mencapai 100% dengan detail nilai parameter yaitu parameter

  Tersedia di: http://kamuskesehatan.com/ [Diakses 17 April 2017]. Cahyaningsih, D. N., 2011. Panduan Praktis

  λ = 0.001,

  parameter

  γ = 0.001, nilai complexity (C) =

  Pengujian terhadap jumlah iterasi pelatihan

  σ) = 1, dan jumlah iterasi = 1000.

  6. DAFTAR PUSTAKA

  Alodokter, 2016. Alodokter. [online] Tersedia di: http://www.alodokter.com Anon., 2017. Kamus Kesehatan. [online]

  0.001, nilai sigma ( Erabaru, 2006. 90% Pasien tak Sadar Mereka Menderita Penyakit Ginjal Kronis.

  [online] Tersedia di: http://www.erabaru.net/2016/04/28/90- pasien-tak-sadar-mereka-menderita- penyakit-ginjal-kronis/ [Diakses 17 April 2017]. Fmc, 2012. ESRD Patients in 2012 A Global

  Perspective, Germany: Fresenius Medical Care.

  Kunwar, V., Chandel, K., Sabitha, A. S. & Bansal, A., 2016. Chronic Kidney Disease Analysis Using Data Mining Classification Techniques. 2016 6th

  International Conference - Cloud System and Big Data Engineering (Confluence),

  pp. 300-305. Lathifah, A. U., 2016. Faktor Resiko Kejadian

  Gagal Ginjal Kronik Pada Usia Dewasa Muda. Nugroho, A. S., Witarto, A. B. & Handoko, D.,

  2003. Support Vector Machine Teori dan Aplikasinya dalam Bioinformatika. Pernefri, 2012. 5th Report of Indonesian Renal

  Registry, Jakarta: Perhimpunan Nefrolog Indonesia.

  Prince, S. A. & Wilson, L. M., 2006.

  Patofisiologi : Konsep Klinis Proses- proses Penyakit. Jakarta: EGC.

  Qian, H., Mao, Y., Xiang, W. & Wang, Z., 2010.

  Recognition of Human Activities Using SVM Multi-class Classifier. Pattern

  Recognition Letters, Volume 31, pp. 100- 111.

  Smartpatient, 2016. Smart Patient. [online] Tersedia di: http://www21.ha.org.hk/ smartpatient/EM/id-id/Home/ [Diakses

  17 April 2017]. Vijayakumar, S. & Wu, S., 1999. Sequential

  Support Vector Classifiers and Regression. Proc. International

  Conference on Soft Computing (SOCO ‘99), pp. 610-619.