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