klasifikasi penyakit hipertensi menggunakan … · hipertensi merupakan penyebab kematian nomor...
TRANSCRIPT
i
KLASIFIKASI PENYAKIT HIPERTENSI MENGGUNAKAN
ALGORITMA NAÏVE BAYES
STUDI KASUS RSU PROVINSI NTB
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Disusun oleh :
Nyoman Wisnu Wardana
125314060
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2016
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
CLASSIFICATION OF HYPERTENSION DISEASES
USING NAÏVE BAYES ALGORITHMS CASE STUDY
GENERAL HOSPITAL PROVINCE IN NTB
THESIS
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Komputer Degree
In Informatics Engineering
By :
Nyoman Wisnu Wardana
125314060
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2016
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
HALAMAN PERSETUJUAN
TUGAS AKHIR
KLASIFIKASI PENYAKIT HIPERTENSI MENGGUNAKAN
ALGORITMA NAÏVE BAYES STUDI KASUS RSU PROVINSI NTB
Oleh :
Nyoman Wisnu Wardana
125314060
Telah disetujui oleh :
Pembimbing,
Albertus Agung Hadhiatma, S.T.,M.T. Tanggal :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
HALAMAN PENGESAHAN
SKRIPSI
KLASIFIKASI PENYAKIT HIPERTENSI MENGGUNAKAN ALGORITMA
NAÏVE BAYES STUDI KASUS RSU PROVINSI NTB
Studi Data : RSU Provinsi NTB
Yang Dipersiapkan dan Disusun Oleh :
Nyoman Wisnu Wardana
125314060
Telah dipertahankan di depan Panitia Penguji
Pada tanggal 8 November 2016
Dan dinyatakan memenuhi syarat
Susunan Panitia Penguji
Nama Lengkap Tanda Tangan
Ketua : P.H Prima Rosa, S.Si., M.Sc . ………………
Sekretaris : Drs. Haris Sriwindono, M.Kom. ………………
Anggota : Albertus Agung Hadhiatma, S.T., M.T. ………………
Yogyakarta, ………….……..
Fakultas Sains dan Teknologi
Universitas Sanata Dharma
Dekan,
Sudi Mungkasi, S.Si.,M.Math.Sc.,Ph.D
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
HALAMAN MOTO
“The wise man lets go of all results, whether good or bad, and is focused on the
action alone. Yoga is skill in actions”
-Bhagavad Gita 2.47-
“When doubts haunt me, when disappointments stare me in the face, and I see
not one ray of hope on the horizon, I turn to Bhagavad Gita”
-Mahatma Gandhi-
SING PENTING YAKIN !
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN
Skripsi ini saya persembahkan untuk :
Ida Shang Hyang Widhi Wasa yang telah mendampingi, dan memberikan
ketenangan hati dan pikiran dalam proses pengerjaan skripsi.
Orang tua, kakak, dan keluarga yang selalu memberikan doa, dukungan,
nasihat dalam proses perkuliahan dan pengerjaan skripsi.
Seluruh Dosen dan semua karyawan yang telah memberikan pengetahuan,
bimbingan dan fasilitas selama perkuliahaan.
Teman-teman Teknik Informatika Angkatan 2012 yang telah memberikan
semangat, motivasi, dukungan, dan keceriaan.
Teman-teman kos Tweety dan orang-orang terdekat yang selalu berbagi
keceriaan, suka cita, motivasi dan semangat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis tidak
memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam
kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 8 Desember 2016
Penulis
Nyoman Wisnu Wardana
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI
KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma ;
Nama : Nyoman Wisnu Wardana
Nomor Mahasiswa : 125314060
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah saya yang berjudul :
KLASIFIKASI PENYAKIT HIPERTENSI MENGGUNAKAN ALGORITMA
NAÏVE BAYES STUDI KASUS RSU PROVINSI NTB
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya
memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan,
mengalihkan dalam bentuk media lain, mengelolanya di internet atau media lain untuk
kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalty
kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya.
Dibuat di Yogyakarta
Pada tanggal : 8 Desember 2016
Nyoman Wisnu Wardana
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRAK
Hipertensi merupakan penyebab kematian nomor tiga setelah stroke dan
tuberkolosis , yakni mencapai 6,7% kematian pada semua umur di Indonesia. Data
Riskesdas 2007 menyebutkan prevalensi hipertensi di Indonesia berkisar 30%. Di
RSU Propinsi NTB sendiri, jumlah kasus untuk penyakit hipertensi ini tergolong
cukup banyak penderitanya. Pada tahun 2014, didapatkan jumlah kunjungan
sebanyak 3040 pasien, dimana 1537 pasiennya mengidap penyakit hipertensi
primer diantaranya 731 pasien laki-laki dan 806 pasien perempuan.
Dari data penyakit hipertensi yang didapatkan dari RSU Provinsi NTB
tersebut dapat diolah menggunakan proses data mining dengan menggunakan
metode klasifikasi dimana metode ini akan mengelompokkan objek ke dalam
kategori yang sudah ditentukan sebelumnya dengan tujuan untuk memprediksi
kelas target dari setiap record di data baru. Dalam proses klasifikasi akan
digunakan algoritma Naïve Bayesian yang akan melakukan perhitungan
probabilitas untuk nilai kelas yang dibandingkan untuk nantinya nilai probabilitas
yang paling tinggi akan menjadi nilai prediksi.
Keluaran sistem adalah hasil prediksi jenis penyakit hipertensi yang diambil
dari RSU Provinsi NTB. Peneliti melakukan pengujian pada dataset dengan
jumlah 655 record data dan mengggunakan fold benilai 3,5,10,15 dan 20 cross
validation dengan nilai rata-rata tingkat akurasi yang dihasilkan mencapai 92.5%.
Kata kunci : Naïve Bayesian, Cross Validation, Klasifikasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
ABSTRACT
Hypertension is in the third highest cause of death after stroke and
tuberculosis, which reaches 6.7% deaths among all ages in Indonesia. Riskesdas’s
data in 2007 mentions that the prevalence of hypertension in Indonesia is around
30 %. According to the General Hospital in NTB Province, the total case for
hypertension is categorized as a considerable number. In 2014, there are 3040
patients where 1537 patients get primary hypertension, around 731 male patients
and 830 female patients.
The data on hypertension taken from the general hospital in NTB Province
can be processed by using data mining process with classification method where
the method classifies objects which have been determined before, for the purpose
of predicting the class target from each record in a new data. The classification
process will use Naïve Bayesian algorithms which calculate the probability of the
compared class value, in which the highest probability value becomes the
prediction value.
The output system is the final prediction of hypertension diseases. The
researcher conducts a test on the data set with a total of 655 record data and uses
fold that values 3, 5, 10,1 5 and 20 cross validation with an average accuracy
reaching 92.5%.
Keywords : Naïve Bayesian, Cross Validation, Classification.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
KATA PENGANTAR
Terima kasih dan segala puji syukur penulis panjatkan kepada Ida Shang Hyang
Widhi Wasa Tuhan Yang Maha Esa, dikarenakan karena anugrah dan kehendakNya
penulis dapat menyelesaikan tugas akhir dengan judul “Klasifikasi Penyakit Hipertensi
menggunakan Algoritma Naïve Bayes Studi Kasus RSU Provinsi NTB”. Tugas akhir
ini ditulis sebagai salah satu syarat untuk memperoleh gelar sarjana program studi
Teknik Informatika, Fakultas Sains dan Teknologi Universitas Sanata Dharma.
Penulis juga mengucapkan terimakasih kepada semua orang yang membantu
penulis dalam menyelesaikan penulisan tugas akhir ini, antara lain kepada :
1. Bapak Sudi Mungkasi, S.Si.,M.Math.Sc.,Ph.D selaku Dekan Fakultas Sains
dan Teknologi Universitas Sanata Dharma Yogyakarta.
2. Ibu Dr. Anastasia Rita Widiarti, S.Si.,M.Kom selaku Kaprodi Teknik
Informatika Universitas Sanata Dharma Yogyakarta.
3. Bapak Albertus Agung Hadhiatma, S.T.,M.T selaku Dosen Pembimbing, yang
telah sabar dalam memberikan bimbingan dan segala masukan sehingga penulis
dapat menyelesaikan tugas akhir ini.
4. Ibu Paulina Heruningsih Prima Rosa, S.Si.,M.Sc. dan Bapak Drs. Haris
Sriwindono, M.Kom. selaku panitia penguji yang telah memberikan kritik dan
saran dalam penulisan tugas akhir.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
5. Seluruh dosen dan staff karyawan Program Studi Teknik Informatika
Universitas Sanata Dharma yang telah memberikan bekal ilmu, bimbingan serta
pengalaman dan fasilitas selama saya menempuh studi.
6. Bapak AKBP I Gede Astawa, Ibu Trivina Tribudiastuti S.Kep., Ni Luh Irma
Kumala Astari S.Ant., Ni Made Irene Novianti Astaningtias M.Psi., yang
merupakan keluarga penulis, terimakasih untuk cinta, kasih sayang, doa dan
nasihat selama masa studi dan penulisan tugas akhir.
7. Staff Rekam Medis RSU Provinsi NTB : Dian Karmila Walla selaku Kepala
Rekam Medis RSU Provinsi NTB, Bapak M. Syahrial Luthfi, Ibu Mariatun, Ibu
Baiq Widyanti, Ibu Irmiati atas bantuan, bimbingan dan perhatiannya selama
penulis melakukan penelitian dan pengambilan data.
8. Paulus Dian Wicaksana S.Kom, Audio Alief Kautsar Hartama, Raden
Alexander Purbo, Yohanes Satrio Prabowo, yang telah memberikan bantuan,
perhatian, dukungan dan nasihatnya selama dalam masa bimbingan bersama
dosen pembimbing.
9. Teman-teman Teknik Informatika angkatan 12 yang selalu berbahagia,
khususnya yang tergabung dalam “Ikatan Teknik Informatika Liberal”: Cahyo
Wicaksono, Anjar Nugraha, Daniel Risamasu, Alvin Christanto, Yosua
Gultom, Rekiyan Seto, Thomas Wiga, Fx. Dwi Kurniawan, Agustinus Nyoman
Mariadi, Christian Bayu, Laurensius Haris, Nicolaus Dhesa, Pius Juan,
Henrycus Bagus, Romualdus Vanadio, Alexander Purbo, Adrian Nada, Dian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
Tobias, Ari Manibuy, Stephanus Wijaya, Laurensia Eva, Febrina Cornelia,
Octaviani, Young Queen, Theo Mahardian, Cesarius Agni dan Kevinda
Mahatma yang telah berbagi keramaian, keceriaan, dan suka cita di setiap
pertemuannya.
10. Teman - teman pejuang skripsi yang bersarang di Laboratorium Tugas Akhir :
Dionisius Wisnu selaku Asisten Laboran, Mikael Fajar, Bapak Dosen Pradit,
Agustinus Agri, Vian Juanito, Engelbertus Vione, Kresentia Nita, Vina, Novi,
Tripina Putri.
11. Sahabat tercinta penulis, Ni Nengah Feby Charolina S.H yang selalu
mendengarkan keluhan dan cerita dari setiap masalah penulis, dan memberikan
nasihat, saran, semangat dan suka cita selama proses pengerjaan tugas akhir.
12. Teman-teman UKF Basket FST dan UKM Basket USD khususnya para senior,
Andropo, Murdhiana, Roy, Theo, Fidelis, Aweng, Tedy Wiranata, Gono, Boaz,
Bonifasius, Maleh, Lintang, Dimas, Budi, Awan, Rony, Koh Wen, Epafroditus
dan teman-teman seangkatan Edo, Ezra, yang telah membentuk karakter,
disiplin, dan semangat pantang menyerah kepada penulis.
13. Teman-teman kos tweety : Bonaventura Dian Patria S.Pd., Felicianus Ochatani
S.T., Giovani Batista, Tian, Agapitus Saputra, Aditya Mey Saputra, Tommy
Aprilla, David Tasin, Christian Naibaho, Filfridus Alberto yang telah
memberikan semangat, motivasi, dan berbagi suka cita.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
14. Bruno Mars, Justin Timberlake, Boyce Avenue, Christina Grimmie, Kris
Thomas, Christian Porter, Alex Goot, David Dam, Bria Kelly atas lantunan lagu
– lagunya yang menemani pembuatan tugas akhir.
15. Serta seluruh pihak yang telah membantu penulisan dan pembuatan tugas akhir
baik secara langsung maupun tidaklangsung yang tidak dapat disebutkan satu
persatu.
Akhirnya dengan rendah hati penulis menyadari bahwa tugas akhir ini jauh dari
kata sempurna. Oleh karena itu, penulis mengharapkan kritik dan saran yang
membangun guna memperbaiki tugas akhir ini. Semoga tugas akhir ini dapat berguna
dan bermanfaat bagi semua pihak . Terima kasih.
Yogyakarta, 8 Desember 2016
Penulis
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR ISI
HALAMAN JUDUL ................................................................................................... i
HALAMAN JUDUL (Bahasa Inggris) ...................................................................... ii
HALAMAN PERSETUJUAN .................................................................................. iii
HALAMAN PENGESAHAN .................................................................................... iv
HALAMAN MOTO .................................................................................................... v
HALAMAN PERSEMBAHAN ................................................................................ vi
HALAMAN PERNYATAAN KEASLIAN KARYA ............................................. vii
HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI ............................ viii
ABSTRAK .................................................................................................................. ix
ABSTRACT ................................................................................................................. x
KATA PENGANTAR ................................................................................................ xi
BAB I ............................................................................................................................ 1
PENDAHULUAN ....................................................................................................... 1
1.1. Latar Belakang ............................................................................................. 1
1.2. Rumusan Masalah ........................................................................................ 3
1.3. Tujuan ........................................................................................................... 3
1.4. Batasan Masalah .......................................................................................... 3
1.5. Luaran ........................................................................................................... 4
1.6. Metodologi ..................................................................................................... 4
1.7. Sistematika Penulisan .................................................................................. 5
BAB II .......................................................................................................................... 6
LANDASAN TEORI .................................................................................................. 6
2.1 Hipertensi ........................................................................................................... 6
2.1.1 Etiologi ......................................................................................................... 7
2.1.2 Gejala Hipertensi ........................................................................................ 7
2.1.3 Pemeriksaan Penunjang ............................................................................. 8
2.2 Data Mining ....................................................................................................... 9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
2.2.1 Klasifikasi .................................................................................................. 12
2.3 Naïve Bayes ....................................................................................................... 13
2.4 Pengujian .......................................................................................................... 19
2.4.1 K-Fold Cross Validation ........................................................................... 19
2.4.2 Confusion Matrix ....................................................................................... 20
BAB III ....................................................................................................................... 22
METODOLOGI ........................................................................................................ 22
3.1 Data ................................................................................................................... 22
3.2 Analisis Pengolahan Data ............................................................................... 23
3.2.1 Pembersihan Data ..................................................................................... 24
3.2.2 Seleksi Data ............................................................................................... 24
3.2.3 Transformasi Data .................................................................................... 24
3.2.4 Penambangan Data ................................................................................... 25
3.3 Perancangan Sistem ........................................................................................ 25
3.3.1 Diagram Use Case ..................................................................................... 25
3.3.2 Deskripsi Use Case .................................................................................... 26
3.3.3 Skenario Use Case ..................................................................................... 27
3.3.4 Diagram Aktifitas ..................................................................................... 32
3.3.5 Diagram Aktivitas Impor Data ............................................................... 32
3.3.6 Diagram Aktivitas Pilih Fold ................................................................... 33
3.3.7 Diagram Aktivitas Melakukan Uji Akurasi ........................................... 33
3.3.8 Diagram Aktivias Melakukan Uji Data Tunggal ................................... 34
3.4 Perancangan Algoritma Naïve Bayes ............................................................. 34
3.4.1 Menghitung Kelas Frekuensi…………………………………………….34
3.4.2 Menghitung Probabilitas Kelas………………………………………….35
3.4.3 Menghitung Kelas Distribusi Naïve Bayes……………………………...35
3.5 Desain Antarmuka Sistem .............................................................................. 36
3.5.1 Halaman Utama ........................................................................................ 36
3.5.2 Halaman Bantuan ..................................................................................... 37
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
3.5.3 Halaman Uji Akurasi ............................................................................... 38
3.5.4 Halaman Uji Data Tunggal ...................................................................... 39
3.6 Perancangan Struktur Data ........................................................................ 40
3.7 Pengujian ....................................................................................................... 41
BAB IV ....................................................................................................................... 43
IMPLEMENTASI SISTEM ..................................................................................... 43
4.1 Spesifikasi Software dan Hardware ................................................................ 43
4.2 Implementasi User Interface ........................................................................ 44
4.2.1 Halaman Beranda ..................................................................................... 44
4.2.2 Halaman Bantuan ..................................................................................... 45
4.2.3 Halaman Uji Akurasi ............................................................................... 46
4.2.4 Halaman Uji Data Tunggal ...................................................................... 47
4.3 Proses Input Data ......................................................................................... 48
4.3.1 Membaca Data Teks ke dalam Sistem .................................................... 49
4.3.2 Menulis Ulang Teks di dalam Sistem ...................................................... 51
4.4 Implementasi Algoritma Naïve Bayes pada Sistem ..................................... 53
4.4.1 Menghitung Frekuensi Kelas ................................................................... 54
4.4.2 Menghitung Probabilitas Kelas ............................................................... 55
4.4.3 Menghitung Kelas Distribusi Naïve Bayes ............................................. 56
4.5 Pengujian .......................................................................................................... 60
4.5.1 Menhitung Evaluasi Cross Validation .................................................... 60
4.5.2 Menghitung Akurasi ................................................................................. 63
4.5.4 Melakukan Pengujian Data Tunggal ...................................................... 65
BAB V ........................................................................................................................ 67
PENGUJIAN DAN ANALISA HASIL ................................................................... 67
5.1 Hasil Pengujian Sistem ................................................................................... 67
5.1.1 Hasil Uji Akurasi ...................................................................................... 67
5.1.2 Hasil Uji Data Tunggal ............................................................................. 75
BAB VI ....................................................................................................................... 78
PENUTUP .................................................................................................................. 78
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xviii
6.1 Kesimpulan ...................................................................................................... 78
6.2 Saran ................................................................................................................. 78
DAFTAR PUSTAKA ................................................................................................ 80
LAMPIRAN ............................................................................................................... 81
LAMPIRAN II .......................................................................................................... 82
LAMPIRAN III ......................................................................................................... 91
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xix
DAFTAR RUMUS
Rumus 2.1 Perhitungan Probabilitas P(Vj) ............................................................... 14
Rumus 2.2 Perhitungan Probabilitas P(Wk | Vj) ....................................................... 14
Rumus 2.3 Perhitungan Probabilitas Pembelian Komputer ....................................... 16
Rumus 2.4 Perhitungan Probabilitas WK Kategori yes atau no ................................ 16
Rumus 2.5 Perhitungan Probabilitas Menentukan Pembelian Komputer .................. 18
Rumus 2.6 Perhitungan Likelihood ............................................................................ 18
Rumus 2.7 Perhitungan Akurasi Menggunakan Confusion Matrix 2x2 Versi 1 ....... 21
Rumus 2.8 Perhitungan Akurasi Menggunakan Confusion Matrix 2x2 Versi 2 ........ 21
Rumus 4.1 Perhitungan Probabilitas P(Wk | Vj) ....................................................... 53
Rumus 4.2 Perhitungan Probabilitas yes atau no ....................................................... 55
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xx
DAFTAR TABEL
Tabel 2.1 Data Buys Computer .................................................................................. 15
Tabel 3.1 Atribut Penyakit Hipertensi ........................................................................ 22
Tabel 3.2 Tabel Ringkasan Use Case ......................................................................... 27
Tabel 3.3 Tabel Skenario Use Case : Impor Data ..................................................... 28
Tabel 3.4 Tabel Skenario Use Case : Pilih Fold ........................................................ 29
Tabel 3.5 Tabel Skenario Use Case : Hitung Akurasi ............................................... 30
Tabel 3.6 Tabel Skenario Use Case : Uji Data Tunggal ........................................... 31
Tabel 5.1 Tabel Hasil Akurasi Sistem ........................................................................ 72
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xxi
DAFTAR GAMBAR
Gambar 2.1 Tahapan dalam KDD ............................................................................ 10
Gambar 2.2 Ilustrasi Metode Cross Validation Menggunakan 3 fold ....................... 20
Gambar 2.3 Confusion Matrix 2x2 ............................................................................ 21
Gambar 3.1 Diagram Use Case ................................................................................ 26
Gambar 3.2 Diagram Aktivitas : Mengimpor Data ................................................... 32
Gambar 3.3 Diagram Aktivitas : Memilih Fold ........................................................ 33
Gambar 3.4 Diagram Aktivitas : Melakukan Uji Akurasi ........................................ 33
Gambar 3.5 Diagram Aktivitas : Melakukan Uji Data Tunggal ............................... 34
Gambar 3.6 Desain Halaman Utama ......................................................................... 35
Gambar 3.7 Desain Isi Bar Menu .............................................................................. 36
Gambar 3.8 Desain Halaman Bantuan ..................................................................... 36
Gambar 3.9 Desain Halaman Uji Akurasi ................................................................. 37
Gambar 3.10 Desain Halaman Uji Data Tunggal ...................................................... 38
Gambar 3.11 Struktur Kode Hashmap ..................................................................... 39
Gambar 4.1 Tampilan User Interface Halaman Beranda .......................................... 42
Gambar 4.2 Tampilan User Interface Isi Bar Menu ................................................. 43
Gambar 4.3 Tampilan User Interface Halaman Bantuan .......................................... 43
Gambar 4.4 Tampilan User Interface Halaman Uji Akurasi .................................... 44
Gambar 4.5 Tampilan User Interface Halaman Uji Data Tunggal ............................ 45
Gambar 4.6 Tampilan Kotak Dialog ......................................................................... 46
Gambar 5.1 Dataset yang akan diuji.......................................................................... 66
Gambar 5.2 Hasil Uji Akurasi Menggunakan 3 fold ................................................. 67
Gambar 5.3 Hasil Uji Akurasi Menggunakan 5 fold ................................................. 68
Gambar 5.4 Hasil Uji Akurasi Menggunakan 10 fold .............................................. 69
Gambar 5.5 Hasil Uji Akurasi Menggunakan 15 fold ............................................... 70
Gambar 5.6 Hasil Uji Akurasi Menggunakan 20 fold ............................................... 71
Gambar 5.7 Dataset yang akan diuji ......................................................................... 73
Gambar 5.8 Data Testing atau Data Tunggal yang akan diuji ................................... 74
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xxii
Gambar 5.9 Hasil Pengujian Data Tunggal ............................................................... 74
Gambar 5.10 Hasil Prediksi Jumlah Data Benar atau Salah ..................................... 75
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan dunia kesehatan saat ini sangatlah penting, itu karena
kesadaran masyarakat akan manfaat kesehatan sudah tinggi sehingga peningkatan
jumlah kesehatan setiap tahun mengalami kenaikan. Dengan demikian bukan tidak
mungkin dapat menimbulkan masalah bagi setiap anggota medis dalam
mendiagnosa dengan baik.
Hipertensi merupakan penyebab kematian nomor tiga setelah stroke dan
tuberculosis , yakni mencapai 6,7% kematian pada semua umur di Indonesia. Data
Riskesdas 2007 menyebutkan prevalensi hipertensi di Indonesia berkisar 30%
dengan insiden komplikasi penyakit kardiovaskular lebih banyak pada perempuan
(52%) dibandingkan laki-laki (48%). Oleh karena dampaknya yang berhubungan
dengan morbiditas dan mortalitas, maka hipertensi merupakan tantangan bagi
kesehatan masyarakat. Di Puskesmas Kelurahan Joglo II, berdasarkan data tahun
2010, terdapat 565 kasus hipertensi dari 15.342 kunjungan sakit, dengan usia
tersering penderita antara 40-70 tahun. Angka ini menempatkan hipertensi pada
urutan terbanyak ketiga setelah ISPA (Infeksi Saluran Pernafasan Akut) dan
mialgia (cedera yang disebabkan oleh infeksi dan virus).
Di RSU Propinsi NTB sendiri, jumlah kasus untuk penyakit hipertensi ini
sendiri tergolong cukup banyak penderitanya. Pada tahun 2014, didapatkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
jumlah kunjungan sebanyak 3040 pasien, dimana 1537 pasiennya mengidap
penyakit hipertensi primer diantaranya 731 pasien laki-laki dan 806 pasien
perempuan. Dengan ketersediaan data yang cukup banyak, kebutuhan akan
informasi sebagai pendukung dalam pengambilan keputusan untuk membuat
penanganan medis, serta dukungan infrastruktur di bidang teknologi informasi
menciptakan lahirnya suatu teknologi data mining.
Data mining adalah serangkaian proses untuk menggali nilai tambah
dari suatu kumpulan data, berupa pengetahuan didalam database yang selama ini
tidak diketahui secara manual. Data mining adalah proses yang menggunakan
teknik statistik, matematika, kecerdasan buatan, dan machine learning untuk
mengekstraksi informasi yang bermanfaat dan pengetahuan yang terkait dari
berbagai database besar.
Untuk bisa mendapatkan informasi dari data-data yang ada perlu dilakukan
proses data mining seperti klasifikasi. Klasifikasi yaitu mengelompokkan objek ke
dalam kategori yang sudah ditentukan sebelumnya. Dalam konteks data mining,
klasifikasi dilakukan dengan menggunakan model yang dibangun di atas data.
Tujuan dari klasifikasi secara akurat memprediksi kelas target untuk setiap record
di data baru, yaitu, data yang tidak di data.
Pada penelitian ini akan digunakan satu macam algoritma klasifikasi yaitu
algoritma klasifikasi Naïve Bayes. Dalam penilaian model, Naïve Bayes
membentuknya dengan sangat cepat, juga mengukur secara linear jumlah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
prediktor dan baris. Naïve Bayes membuat prediksi menggunakan teorema Bayes
melalui prediksi probabilitas dari bukti yang mendasari. Dalam prakteknya, Naïve
Bayes tidak menurunkan akurasi dari model prediksi secara signifikan dan
membuat perbedaan kecepatan antara algoritma komputasional. Dengan
dibuatnya sistem ini dengan algoritma Naïve Bayes diharapkan dapat membantu
tenaga medis dalam memberikan penanganan kepada pasien yang mengidap
penyakit hipertensi dengan tiap jenis yang berbeda.
1.2. Rumusan Masalah
Masalah yang dirumuskan dalam penelitian ini adalah bagaimana
algoritma klasifikasi Naïve Bayes dapat diterapkan untuk mendeteksi dan
mengklasifikasikan jenis penyakit hipertensi pada data yang didapatkan dari RSU
Provinsi NTB.
1.3. Tujuan
Tujuan dari penelitian ini adalah untuk menerapkan algoritma Naïve Bayes
dalam melakukan klasifikasi, mengenali jenis penyakit hipertensi dan
memberikan hasil akurasi pada data penyakit hipertensi dengan tepat.
1.4. Batasan Masalah
Batasan masalah dari penelitian ini adalah :
1. Algoritma klasifikasi yang digunakan adalah algoritma Naïve Bayes.
2. Data yang digunakan adalah data hasil uji laboratorium RSU Provinsi NTB
untuk penyakit hipertensi sepanjang tahun 2014-2015.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
3. Atribut yang digunakan dari data penyakit hipertensi sejumlah 16 atribut dan
sudah termasuk kelas, yaitu jenis kelamin (sex), umur, hemoglobin (HGB),
hematocrit (HCT), white blood cell (WBC), platelets (PLT), asam urat,
kolesterol LDL, kolesterol HDL, kolesterol total, kreatinin, sistolik, diastolik,
ureum dan kelas prediksi.
4. Hasil dari output sistem yang akan dibuat ini adalah tingkat persentase akurasi
berdasarkan input dari atribut data penyakit hipertensi, hasil probabilitas dan
prediksi jenis penyakit hipertensi dari pengujian data tunggal, serta
memberikan hasil jumlah data salah dan benar.
1.5. Luaran
Sistem yang dibuat secara otomatis dapat melakukan klasifikasi, mengetahui
tingkat akurasi dan memperkirakan jenis penyakit hipertensi.
1.6. Metodologi
Metodologi penelitian yang digunakan dalam penelitian ini antara lain :
1. Studi literatur untuk mempelajari data mining dan algoritma klasifikasi Naïve
Bayes.
2. Analisis data untuk melakukan klasifikasi terhadap penyakit hipertensi.
3. Pengujian menggunakan k-fold cross validation dengan membagi data training
dan data testing, dan confusion matrix untuk mengetahui tingkat akurasi dari
algoritma Naïve Bayes yang digunakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
1.7. Sistematika Penulisan
BAB I merupakan pendahuluan yang berisikan latar belakang, rumusan
masalah, tujuan, batasan masalah, keluaran yang dihasilkan, metodologi dan
sistematika penulisan.
BAB II merupakan landasan teori yang dipakai untuk pembuatan dan
penyusunan tugas akhir.
BAB III merupakan metodologi penelitian yang berisikan tentang data
penyakit hipertensi, alur proses training dan testing serta penjelasan rancangan
sistem yang akan dibuat.
BAB IV merupakan implementasi sistem yang akan membahas hasil
implementasi sistem yang telah dirancang.
BAB V merupakan analisis hasil yang berisikan tentang analisis sistem yang
telah dirancang pada bab IV.
BAB VI merupakan penutup yang berisikan kesimpulan dan saran dari
penelitian yang telah dilakukan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
BAB II
LANDASAN TEORI
Pada bab ini, akan dijelaskan secara singkat tentang teori-teori yang
digunakan dalam penulisan penelitian, antara lain tentang hipertensi, data mining,
klasifikasi, algoritma klasifikasi Naïve Bayes, dan cross-validation. Teori-teori
tersebut dijelaskan sebagai berikut :
2.1 Hipertensi
Hipertensi atau peningkatan tekanan darah adalah keadaan dimana supply
oksigen dan nutrisi dibawa oleh darah terhambat dalam proses pengirimannya ke
jaringan tubuh yang membutuhkan. Penyakit ini dapat menimbulkan gangguan
pada organ tubuh yang lain karena menyebabkan organ-organ tersebut harus
bekerja lebih keras. Pada awalnya menderita penyakit ini tidak ada tanda-tanda
yang muncul sehingga tidak dapat di deteksi. Hipertensi baru akan terdeteksi
ketika dilakukan pemeriksaan untuk penyakit yang berkaitan dengan hipertensi
seperti pemeriksaan diabetes, stroke dan sebagainya. Oleh karena itu penyakit ini
dikenal dengan nama silent killer. (Rika Anisa, 2013)
Hipertensi adalah salah satu penyakit yang umun melanda di dunia dan
merupakan faktor risiko penting untuk penyakit jantung serta kontributor utama
mortalitas dan morbiditas baik di negara maju maupun di negara berkembang.
Menurut laporan kesehatan dunia, pada tahun 2002, sekitar 600 juta orang di
seluruh dunia menderita hipertensi. Hipertensi diperkirakan menyebabkan 7,1 juta
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
kematian setiap tahunnya, angka tersebut mewakili sekitar 13% dari total
kematian. Di berbagai negara di Asia, prevalensi hipertensi bervariasi, berkisar
antara 15 – 35%. Angka tersebut diperkirakan akan terus meningkat setiap
tahunnya. Misalnya, prevalensi hipertensi di Vietnam pada tahun 2002 sebesar
14,1% dan hipertensi juga merupakan penyakit yang menyebabkan sejumlah besar
kematian di rumah sakit.
2.1.1 Etiologi
Berdasarkan jurnal ilmiah Joint National Comitte on Detection, Evaluation,
and Treatment of High Blood Pressure (JNC) hipertensi telah dikelompokkan ke
dalam klasifikasi normal, pre, stadium 1 dan stadium 2. Sedangkan untuk jenis
hipertensi sendiri dibagi menjadi 2 yaitu hipertensi primer dan hipertensi
sekunder.
2.1.2 Gejala Hipertensi
Hipertensi sulit disadari oleh seseorang dikarenakan hipertensi tidak
memiliki gejala khusus. Gejala-gejala yang mudah diamati antara lain yaitu :
a. Pusing atau sakit kepala
b. Sering gelisah
c. Wajah merah
d. Tengkuk terasa pegal
e. Mudah marah
f. Telinga berdengung
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
g. Sukar tidur
h. Sesak nafas
i. Rasa berat di tengkuk
j. Mudah lelah
k. Mata berkunang-kunang
l. Mimisan (keluar darah dari hidung)
Hipertensi dapat diketahui dengan mengukur tekanan darah secara teratur.
Penderita hipertensi apabila tidak ditangani dengan baik akan mempunyai resiko
besar untuk meninggal karena komplikasi kardiovaskular seperti stroke, serangan
jantung, gagal jantung dan gagal ginjal.
2.1.3 Pemeriksaan Penunjang
Pemeriksaan penunjang umunya diperlukan untuk membantu mengevaluasi
tingkat hipertensi pasien. Penilaian berulang terhadap fungsi renal, elektrolit
serum, gula darah puasa, dan lemak dapat dilakukan setelah pemberian obat-
obatan antihipertensi yang baru, dan tiap tahun atau secara sering diperiksa jika
secara klinis diperlukan. Uji laboratorium yang lebih ekstensif diperlukan jika
pasien mengalami resistensi obat atau ketika evaluasi klinis menemukan suatu
bentuk hipertensi sekunder.
Pemeriksaan penunjang lainnya dapat berupa EKG, dengan mengamati
tanda-tanda sekunder dari hipertensi, seperti pembesaran jantung, maupun gagal
jantung.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Pemeriksaan penunjang terdiri atas:
a. Tes darah rutin
b. Glukosa darah (sebaiknya puasa)
c. Kolesterol total serum
d. Kolesterol LDL dan HDL serum
e. Trigilserida serum (puasa)
f. Asam urat serum
g. Kreatinin serum
h. Kalium serum
i. Hemoglobin dan hematokrit
j. Urinalisis
k. Elektrokardiogram
Pada pasien hipertensi, beberapa pemeriksaan untuk menentukan adanya
kerusakan organ target dapat dilakukan secara rutin, sedang pemeriksaan lainnya
hanya dilakukan bila ada kecurigaan yang didukung oleh keluhan dan gejala pasien.
2.2 Data Mining
Data mining adalah proses pengumpulan informasi penting dari sejumlah data
besar yang tersimpan di dalam basis data, gudang data, atau tempat penyimpanan
lainnya. Data mining merupakan proses yang tidak dapat dipisahkan dengan
Knowledge Discovery in Database (KDD), karena penambangan data adalah salah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
satu dari tahap dalam proses KDD (Han & Kamber, 2006) seperti yang ditunjukkan
pada gambar 2.1
Gambar 2.1 Tahapan dalam KDD (Han & Kamber, 2006)
Menurut Han dan Kamber (2006), tahapan-tahapan dalam proses KDD
adalah sebagai berikut :
1. Pembersihan data (Data Cleaning)
Pembersihan data merupakan proses untuk menghilangkan data yang
mengandung noise, atau data yang tidak konsisten.
2. Integritas data (Data Integration)
Pada tahap ini akan dilakukan penggabungan data yang berasal dari
berbagai sumber.
3. Seleksi data (Data Selection)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Pada tahap ini akan dilakukan pemilihan data yang relevan dari database.
4. Transformasi data (Data Transformation)
Pada tahap ini data akan ditransformasikan kedalam format yang sesuai
untuk diproses dalam penambangan data.
5. Penambangan data (Data Mining)
Penambangan data merupakan proses penting dimana metode akan
disistemkan untuk mengekstrak pola data.
6. Evaluasi pola (Pattern Evaluation)
Pada tahap ini, pola/model yang dihasilkan dari teknik data mining akan
mengidentifikasi pola-pola yang menarik berdasarkan ukuran tertentu
7. Presentasi pengetahuan (Knowledge Presentation)
Pada tahap ini akan dilakukan teknik visualisasi yang digunakan untuk
menampilkan pengetahuan hasil proses mining kepada pengguna.
Data mining juga dibagi menjadi beberapa kelompok berdasarkan tugas
yang dapat dilakukan, yaitu.:
1. Deskripsi, terkadang peneliti dan analis secara sederhana ingin mencoba
mencari cara untuk menggambarkan pola dan kecenderungan yang terdapat
dalam data.
2. Estimasi, estimasi hampir sama dengan klasifikasi, kecuali variabel target
estimasi lebih ke arah numerik dari pada ke arah kataegori. Model dibangun
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
menggunakan record lengkap yang menyediakan nilai variabel target
sebagai nilai prediksi.
3. Prediksi, prediksi hampir sama dengan klasifikasi dan estimasi, kecuali
bahwa dalam prediksi nilai dari hasil akan ada di masa mendatang.
4. Klasifikasi, dalam klasifikasi, terdapat target variabel kategori. Sebagai
contoh, penggolongan pendapatan dapat dipisahkan dalam tiga kategori,
yaitu pendapatan tinggi, pendapatan sedang, dan pendapatan rendah.
5. Pengklusteran, pengklusteran merupakan pengelompokan record,
pengamatan, atau memperhatikan dan membentuk kelas objek-objek yang
memiliki kemiripan. Kluster adalah kumpulan record yang memiliki
kemiripan satu dengan yang lainnya dan memiliki ketidakmiripan dengan
record-record dalam kluster lain.
6. Asosiasi, asosiasi dalam data mining adalah menemukan atribut yang
muncul dalam satu waktu. Dalam dunia bisnis lebih umum disebut analisis
keranjang belanja.
2.2.1 Klasifikasi
Klasifikasi adalah suatu fungsionalitas data mining yang akan menghasilkan
model untuk memprediksi kelas atau kategori dari objek-objek di dalam basis data.
Klasifikasi merupakan proses yang terdiri dari dua tahap, yaitu tahap pembelajaran
dan tahap pengklasifikasian.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Pada tahap pembelajaran, sebuah algoritma klasifikasi akan membangun
sebuah model klasifikasi dengan cara mengalisis training data. Tahap
pembelajaran dapat juga dipandang sebagai tahap pembentukan fungsi atau
pemetaan Y=F(X) dimana Y adalah kelas hasil prediksi dan X adalah tuple yang
ingin diprediksi kelasnya. Selanjutnya pada tahap pengklasifikasian, model yang
telah dihasilkan akan digunakan untuk melakukan klasifikasi.
2.3 Naïve Bayes
Naïve Bayes merupakan pengklasifikasian dengan metode probabilitas dan
statistik yang dikemukakan oleh ilmuan Inggris Thomas Bayes, yaitu
memprediksi peluang di masa depan berdasarkan pengalaman di masa
sebelumnya sehingga dikenal sebagai teorema Bayes dengan asumsi
indenpendensi (ketidaktergantungan) yang kuat (naif). Dengan kata lain, dalam
Naïve Bayes model yang digunakan adalah model dengan fitur indenpenden
(Prasetyo, 2012).
Algoritma Naïve Bayes sendiri memiliki dua tahap dalam proses klasifikasi,
yaitu tahap pembelajaran dan tahap pengujian klasifikasi. Pada tahap
pembelajaran dilakukan proses analisis terhadap sampel dokumen berupa
pemilihan vocabulary, yaitu kata yang mungkin muncul dalam koleksi sampel
dokumen yang sedapat mungkin dapat menjadi representasi dokumen.
Selanjutnya adalah penentuan probabilitas prior bagi tiap kategori berdasarkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
sampel dokumen. Pada tahap klasifikasi ditentukan nilai kategori dari dokumen
berdasarkan term yang muncul dalam dokumen yang diklasifikasi.
Untuk melakukan perhitungan nilai kelas yang akan dibandingkan (yes or
no) mengunakan algoritma Naïve Bayes maka dilakukan perhitungan probabilitas
P(Vj) dengan rumus sebagai berikut :
P(Vj) = |docj|
|Contoh|
Rumus 2.1 Perhitungan probabilitas P(Vj).
Docj adalah banyaknya dokumen yang memiliki kategori j dalam
pembelajaran, sedangkan contoh adalah banyaknya dokumen dalam contoh yang
digunakan untuk pembelajaran. Untuk nilai P(Wk|Vj), yaitu probabilitas kata wk
dalam kategori j, ditentukan dengan rumus sebagai berikut :
P(Wk|Vj) = Nk+1
N+|vocabulary|
Rumus 2.2 Perhitungan probabilitas P(Wk | Vj)
Nk adalah frekuensi munculnya kata wk dalam dokumen yang berkategori
vj ditambah 1, hal ini berfungsi untuk menghindari angka nol dalam data atau
biasa disebut Laplace Smoothing, sedangkan nilai N adalah banyaknya seluruh
data dalam dokumen berkategori vj, dan vocabulary adalah banyaknya kata
dalam pembelajaran. Berikut contoh kasus menggunakan data buys computer
yang akan diselesaikan dengan algoritma Naïve Bayes :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
Tabel 2.1 Data Buys Computer
RID Age Income Student Credit_Rating Class
1. 29 High No Fair No
2. 29 High No Excellent No
3. 31..40 High No Fair Yes
4. 41 Medium No Fair Yes
5. 41 Low Yes Fair Yes
6. 41 Low Yes Excellent No
7. 31..40 Low Yes Excellent Yes
8. 29 Medium No Fair No
9. 29 Low Yes Fair Yes
10. 41 Medium Yes Fair Yes
11. 29 Medium Yes Excellent Yes
12. 31..40 Medium No Excellent Yes
13. 31..40 High Yes Fair Yes
14. 41 Medium No Excellent No
Berdasarkan data pada tabel 2.1., model Naïve Bayes Classifier adalah
sebagai berikut :
1. Tentukan P(yes) sebagai probabilitas orang yang membeli komputer dan
P(no) sebagai probabilitas orang yang tidak membeli komputer dengan
rumus sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
P(yes/no) = |doc j|
|Contoh|
Rumus 2.3 Perhitungan probabilitas pembelian komputer dan tidak
membeli komputer.
Dimana doc j adalah banyaknya dokumen yang memiliki kategori j
dalam pembelajaran, sedangkan Contoh adalah banyaknya dokumen
dalam contoh yang digunakan untuk pembelajaran. Berikut hasil dari
perhitungan menggunakan rumus diatas :
P(Yes) = 9/14 = 0.64
P(No) = 5/14 = 0.36
2. Kemudian tentukan P(Wk|Yes) dan P(Wk|No) yaitu probabilitas kata wk
dalam kategori yes atau no ditentukan dengan rumus berikut :
P(Wk|Yes) = Nk+1
N+|Vocabulary|
Rumus 2.4 Perhitungan probabilitas WK dalam kategori yes atau no
Nk adalah frekuensi munculnya kata wk dalam dokumen yang ber
kategori yes atau no, sedangkan nilai n adalah banyaknya seluruh kata
dalam dokumen berkategori yes atau no, dan vocabulary adalah
banyaknya kata dalam contoh pembelajaran. Berikut hasil dari
perhitungan probabilitas kata wk :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
a. Probabilitas kelas Age (W1)
P(W1=<30|Yes)=(2+1)/(36+10)=0.06
P(W1=<30|No)=(3+1) /(20+10)=0.13
P(W1=31..40|Yes)=(4+1)/(36+10)=0.10
P(W1=31..40|No)=(0+1)/(20+10)=0.03
P(W1=>40|Yes)=(3+1)/(36+10)=0.08
P(W1=>40|No)=(2+1)/(20+10)=0.1
b. Probabilitas kelas Income (W2)
P(W2=low|Yes)=(3+1)/(36+10)=0.08
P(W2=low|No)=(1+1)/(20+10)=0.06
P(W2=medium|Yes)=(4+1)/(36+10)=0.10
P(W2=medium|No)=(2+1)/(20+10)=0.1
P(W2=high|Yes)=(2+1)/(36+10)=0.06
P(W2=high|No)=(2+1)/(20+10)=0.1
c. Probabilitas kelas Student (W3)
P(W3=yes|Yes)=(6+1)/(36+10)=0.17
P(W3=yes|No) =(1+1)/(20+10)=0.06
P(W3=no|Yes)=(3+1)/(36+10)=0.08
P(W3=no|No)=(4+1)/(20+10)=0.16
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
d. Probabilitas kelas Credit_Rating (W4)
P(W4=fair|Yes)=(6+1)/(36+10)=0.15
P(W4=fair|No)=(2+1)/(20+10)=0.1
P(W4=excelent|Yes)=(3+1)/(36+10)=0.08
P(W4=excelent|No)=(3+1)/(20+10)=0.13
3. Langkah sekanjutnya adalah mencari nilai probabilitas data testing. Jika
diketahui umur 29 tahun, berpenghasilan tinggi (high), bukan pelajar,
dan peringkat rating (credit_rating) fair, maka perhitungan probabilitas
untuk menentukan membeli komputer atau tidak adalah :
P(X|Y=yes) =
P(Yes)*(E1=<30|Yes)*P(E2=high|Yes)*P(E3=No|Yes)*P(E4=fair|Yes)
= 0.64*0.06*0.06*0.08*0.15 = 3.61 * 10-5
P(X|Y=no) =
P(E1=<30|No)*P(E2=high|No)*P(E3=No|No)*P(E4=fair|No)
= 0.36*0.13*0.1*0.16*0.1 = 7.93 * 10-5
Rumus 2.5 Perhitungan probabilitas menentukan pembelian komputer
Setelah didapatkan hasil likelihood maka hasil tersebut dibagi dengan
total hasil likelihood agar mendapatkan nilai probabilitas :
P(X|Y=yes) = 3.61 * 10-5/(3.61 * 10-5+7.93 * 10-5) = 0.31
P(X|Y=no)=7.93 * 10-5/(3.61 * 10-5+7.93 * 10-5) = 0.69
Rumus 2.6 Perhitungan likelihood untuk menentukan nilai probabilitas
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Berdasarkan hasil perhitungan tersebut, nilai dari probabilitas tidak
(0,69) lebih besar jika dibandingkan dengan nilai probabilitas ya (0,31),
sehingga dapat disimpulkan bahwa untuk kasus ini calon pembeli yang
berumur 29 tahun, berpenghasilan tinggi, bukan pelajar, dan memiliki
credit rating fair masuk dalam kelas yang tidak membeli komputer.
2.4 Pengujian
2.4.1 K-Fold Cross Validation
Cross-validasi adalah metode statistik yang mengevaluasi dan
membandingkan algoritma pembelajaran dengan membagi data menjadi dua yaitu
data training dan data testing. Bentuk dari cross validation adalah k-fold cross
validation (Payam R., Lie Tang dan Huan Liu. 2008).
Metode k-fold cross validation yang sering dipakai adalah 3-fold cross
validation dan 5-fold cross validation. Dalam cross-validation, tentukan nilai
folds atau partisi untuk data. Prinsip dari k-fold cross validation adalah membagi
tiap kelompok data menjadi k bagian kelompok data yang selanjutnya data
tersebut secara bergantian akan digunakan untuk training dan testing sejumlah k
pengujian. Berikut gambar dari metode Cross Validation.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
Gambar 2.2 Ilustrasi metode Cross Validation menggunakan 3 fold
2.4.2 Confusion Matrix
Dalam mengukur keakuratan akurasi dari hasil klasifikasi, dapat
menggunakan metode confusion matrix. Confusion matrix adalah media yang
berguna untuk menganalisis seberapa baik classifier dapat mengenali tupel dari
kelas yang berbeda (Tan, Steinbach, & Kumar, 2006). Pada pengerjaannya,
confusion matrix memiliki 2 kelas yang diistilahkan menjadi tupel positif dan
tupel negatif. True positive menunjukkan bahwa pada tupel positif yang diberi
label dengan tepat oleh classifier, sementara true negative adalah tupel negatif
yang diberi label dengan tidak tepat oleh classifier. Selanjutnya, terdapat tupel
false positive yaitu tupel negative yang diberi label dengan tidak tepat oleh
classifier, demikian pula dengan false negative, adalah tupel positif yang diberi
label tidak tepat oleh classifier. Dari penjelasan diatas, berbagai istilah tersebut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
nantinya berfungsi untuk menganalisis kemampuan classifier dan diringkas dalam
gambar di bawah ini.
Gambar 2.3 Confusion Matrix untuk matrix 2x2 (Tan, Steinbach, & Kumar,
2006)
Misalkan terdapat confusion matrix 2x2 seperti pada gambar diatas, maka
rumus yang akan digunakan untuk menghitung akurasi dari klasifikasi adalah
sebagai berikut :
Rumus 2.7 Perhitungan akurasi dari klasifikasi menggunakan confusion
matrix versi 1
Rumus diatas juga dapat didefinisikan seperti pada rumus berikut :
Rumus 2.8 Perhitungan akurasi dari klasifikasi menggunakan confusion
matrix versi 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
BAB III
METODOLOGI
Bab metodologi ini berisi gambaran proses yang akan dilakukan dalam
penelitian dan cara kerja sistem.
3.1 Data
Dalam penelitian ini, sistem mengklasifikasikan jenis-jenis hipertensi yang
diidentifikasi dari data yang didapatkan dari rekam medis RSU Provinsi NTB
sepanjang tahun 2014 dan 2015 menggunakan algoritma Naïve Bayes. Data ini
berjumlah 654, dengan 16 atribut termasuk atribut kelas, yaitu Jenis Kelamin (Sex)
Umur, Hemoglobin (HGB), Hematokrit (HCT), White Blood Cell (WBC), PLT,
Asam Urat (Uric Acid), Kolesterol total serum, Kolesterol LDL, Kolesterol HDL,
Kreatinin, Tekanan Darah (Sistolik dan Diastolik), Trigilserida, dan Ureum.
Adapun tiap atribut yang disebutkan diatas memiliki nilai rujukan yang dapat
dilihat pada tabel dibawah :
Tabel 3.1 Atribut Penyakit Hipertensi
Data Nilai Rujukan Satuan
Jenis Kelamin - -
Umur - -
HGB L : 13.0 – 18.0 Mg %
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
P : 11.5 – 16.5
HCT L : 40.0 – 50.0
P : 37.0 – 45.0
Mg %
WBC 4.0 – 11.0 Mg %
PLT 150 - 400 Mg %
Asam Urat L : 3.5 – 7.2
P : 2.6 – 6.0
Mg %
Kolesterol LDL < 130 Mg %
Kolesterol HDL < 45 Mg %
Kolesterol Total < 200 Mg %
Kreatinin L : 0.9 – 1.3
P : 0.6 – 1.1
Mg %
Ureum 6 - 26 Mg %
Trigilserida < 200 Mg %
Sistolik <120 - >=160 mmHG
Diastolik <80 - >=100 mmHG
3.2 Analisis Pengolahan Data
Sebelum data diolah menggunakan sistem yang akan dirancang, dilakukan
metode pemrosesan data awal terlebih dahulu sesuai dengan proses KDD.
Terdapat 4 langkah dalam melakukan pemrosesan data awal, yaitu pembersihan
data (data cleaning), seleksi data, transformasi data, dan penambangan data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
3.2.1 Pembersihan Data
Pada tahap ini akan dilakukan pembersihan data yang tidak lengkap, kosong
(null), noise, dan data yang tidak konsisten. Dalam langkah ini, data yang bernilai
kosong (null), akan dibersihkan dengan cara dihapus secara manual, dan akan
dilakukan penghapusan atribut atau mengganti data tersebut. Pembersihan data
dilakukan setelah proses integrasi dan seleksi data, dikarenakan proses tersebut
akan memudahkan proses pencarian data, sementara proses seleksi data akan
mengurangi jumlah data yang akan dibersihkan.
3.2.2 Seleksi Data
Pada tahap ini, akan dilakukan penyelesaian data untuk mengurangi data
yang tidak relevan, dan berlebihan (redundant). Menurut Tan, Steinbach, dan
Kumar (2006), atribut yang tidak relevan adalah atribut yang berisi informasi yang
tidak berguna unutk melakukan penambangan data, sedangkan atribut yang
berlebihan (redundant) adalah atribut yang menduplikasikan banyak atau semua
informasi yang terdapat di dalam satu atau lebih pada atribut lainnya.
3.2.3 Transformasi Data
Pada tahap ini akan dilakukan transformasi data. Data hipertensi
diklasifikasikan menjadi beberapa jenis sesuai dengan jurnal ilmiah Joint National
Comitte on Detection, Evaluation, and Treatment of High Blood Pressure (JNC).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
3.2.4 Penambangan Data
Data yang telah diproses pada tahap sebelumnya kemudian akan diuji
menggunakan algoritma Naïve Bayes. Langkah awal adalah proses input dimana
sistem akan membaca data teks. Setelah data dibaca, data berupa string akan
tercampur di dalam satu baris data, sehingga data perlu dipisah untuk kemudian
diubah ke tipe data double kecuali data kelas, yaitu normal, pre, stadium 1, stadium
2 sehingga data dapat diproses ke dalam perhitungan klasifikasi. Untuk melakukan
pemrosesan data tersebut maka sistem perlu menulis ulang data teks hipertensi
sehingga data teks hipertensi dapat diproses oleh sistem dan menghasilkan output
berupa hasil akurasi dan prediksi jenis hipertensi.
3.3 Perancangan Sistem
Pada bagian ini, akan dijelaskan tentang gambaran sistem yang akan
dibangun, yaitu berupa diagram Use Case, skenario Use Case, diagram aktifitas,
dan desain antarmuka sistem.
3.3.1 Diagram Use Case
Aktor dari sistem ini hanya pengguna. Fungsi utama yang dapat dilakukan
oleh pengguna adalah melakukan klasifikasi. Pengguna juga dapat mengimpor
data dan menentukan jumlah fold.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Ketika sistem melakukan fungsi klasifikasi, sistem akan melakukan proses
cross validation, menghitung akurasi dan menampilkan hasil (output) berupa
jumlah akurasi dan waktu proses dari algoritma Naïve Bayes.
Gambar 3.1 Diagram Use Case
3.3.2 Deskripsi Use Case
Fungsi yang dapat dilakukan oleh pengguna terhadap sistem yang dijelaskan
pada diagram use case dapat di deskripsikan sebagai berikut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Tabel 3.2 Tabel Ringkasan Use Case
No. Nama Use Case Deskripsi Use Case
1 Impor data Fungsi ini digunakan untuk memasukkan data
ke dalam sistem menggunakan file yang
berekstensi .data. Data yang dimasukkan akan
di klasifikasikan menggunakan algoritma
Naïve Bayes.
2 Pilih fold Fungsi ini digunakan untuk menentukan
jumlah fold yang digunakan dalam proses
cross validation.
3 Hitung Akurasi Fungsi ini digunakan untuk menghitung
tingkat akurasi untuk kemudian mendapatkan
hasil berupa nilai akurasi dan error rate.
4 Uji Data Tunggal Fungsi ini digunakan untuk melakukan proses
pengujian data tunggal untuk kemudian
mendapatkan hasil berupa prediksi kelas dan
nilai probabilitas tiap kelas.
3.3.3 Skenario Use Case
Skenario use case merupakan penjabaran dari masing-masing use case yang
terdapat pada diagram use case.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Tabel 3.3 Tabel Skenario Use Case : Impor Data
Nama Use Case Impor data
Deskripsi
Use Case
Use case ini digunakan untuk memasukkan data ke dalam
sistem menggunakan file yang berekstensi .data
Pra Kondisi -
Langkah
Umum
Kegiatan Aktor Respon Sistem
Pengguna menekan
tombol open
Sistem menampilkan kotak
dialog open file
Pengguna memilih file
yang diinginkan dan
menekan tombol open
Sistem membaca file dan
menampilkan lokasi file ke
dalam sistem
Alternatif -
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Kesimpulan Use case ini berhenti apabila data telah masuk dan terbaca
oleh sistem.
Tabel 3.4 Tabel Skenario Use Case : Pilih Fold
Nama Use Case Pilih fold
Deskripsi Use
Case
Use case ini digunakan untuk menentukan jumlah fold
yang akan digunakan dalam proses cross validation.
Pra Kondisi Data telah diimpor
Langkah Umum Kegiatan Aktor Respon Sistem
Pengguna memilih
jumlah fold yang
diinginkan.
Sistem mengeset angka yang
telah diganti sebagai fold.
Alternatif
Kesimpulan Use case ini berhenti apabila telah memilih angka di combo
box dan menekan tombol proses.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
Tabel 3.5 Tabel Skenario Use Case : Hitung Akurasi
Nama Use Case Hitung Akurasi
Deskripsi Use
Case
Use case ini digunakan untuk melakukan proses uji akurasi
dan menghitung akurasi. Pengguna dapat melihat hasil
akurasi yang dihasilkan.
Pra Kondisi - Data telah dimasukkan ke dalam sistem.
- Jumlah fold telah ditentukan
Langkah Umum Kegiatan Aktor Respon Sistem
Pengguna menekan
tombol proses
Sistem menampilkan hasil
akurasi, dan error rate.
Alternatif -
Kesimpulan Use case ini berhenti apabila telah berhasil menampilkan
hasil akurasi, error rate dan jumlah data salah dan benar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Tabel 3.6 Tabel Skenario Use Case : Uji Data Tunggal
Nama Use Case Uji Data Tunggal
Deskripsi Use
Case
Use case ini digunakan untuk melakukan proses uji data
tunggal dan menghitung probabilitas tiap kelas. Pengguna
dapat melihat hasil probabilitas dan hasil prediksi yang
dihasilkan oleh sistem.
Pra Kondisi - Data telah dimasukkan ke dalam sistem.
Langkah Umum Kegiatan Aktor Respon Sistem
Pengguna menekan
tombol proses
Sistem menampilkan hasil
prediksi dan nilai probabilitas
Alternatif -
Kesimpulan Use case ini berhenti apabila telah berhasil menampilkan
hasil prediksi dan nilai probabilitas tiap kelas.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
3.3.4 Diagram Aktifitas
Diagram aktifitas ini digunakan untuk menunjukkan kegiatan yang
dilakukan oleh pengguna dan sistem dalam setiap use case. Berikut rincian
diagram aktifitas dari sistem yang dibuat :
3.3.5 Diagram Aktivitas Impor Data
Gambar 3.2 Diagram Aktivitas Mengimpor Data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
3.3.6 Diagram Aktivitas Pilih Fold
Gambar 3.3 Diagram Aktivitas Memilih Fold
3.3.7 Diagram Aktivitas Melakukan Uji Akurasi
Gambar 3.4 Diagram Aktivitas Melakukan Uji Akurasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
3.3.8 Diagram Aktivias Melakukan Uji Data Tunggal
Gambar 3.5 Diagram Aktivitas Melakukan Uji Data Tunggal
3.4 Perancangan Algoritma Sistem Naïve Bayes
Pada bagian ini akan disebutkan bagaimana proses sistem dalam
menjalankan algoritma Naïve Bayes.
3.4.1 Menghitung Kelas Frekuensi
1. Deklarasikan FrekuensiKelas bertipe double[].
2. Untuk i=0, dan selama memenuhi i<numClasses lakukan
FrekuensiKelas[i] = 0
3. Selama Instance inst : Instances2Train lakukan
FrekuensiKelas[Classname2IndexCCountermap.get(inst.classValue())]
++.
4. Kembalikan nilai FrekuensiKelas.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
3.4.2 Menghitung Probabilitas Kelas
1. Deklarasikan probs dan freq bertipe double[].
2. Untuk k=0, dan selama k<numClasses lakukan probs[k] = (freq[k] + 1)
/ (numInstances + numClasses).
3. Kembalikan nilai probs.
3.4.3 Menghitung Kelas Distribusi Naïve Bayes
1. Deklarasikan variabel out bertipe HashMap<Object, Double>.
2. Deklarasikan variabel featureName_HT bertipe Hashtable<Integer,
Hashtable<Double, ClassCounter>>.
3. Deklarasikan freq bertipe double[].
4. Deklarasikan total bertipe double.
5. Untuk k=0 , dan selama memenuhi syarat k<numClasses lakukan
langkah 6-13.
6. Deklarasikan denominator bertipe double.
7. Deklarasikan classScore bertipe double.
8. Selama Object key : featureName_HT.keySet(), lakukan langkah 9-11.
9. Deklarasikan featureName dan numValues bertipe integer.
10. Deklarasikan featureValue dan numerator bertipe double.
11. Lakukan classScore += fnc.log2(numerator + 1) - fnc.log2(denominator
+ numValues).
12. Lakukan out.put(classes[k], classScore).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
13. Lakukan total = total + Math.pow(2,classScore).
14. Untuk l=0 , dan selama l<classes.length lakukan langkah 15-16.
15. Deklarasikan classScore bertipe double.
16. Lakukan out.put(classes[l], Math.pow(2.0,(classScore-
fnc.log2(total)))).
17. Kembalikan nilai out.
3.5 Desain Antarmuka Sistem
3.5.1 Halaman Utama
Gambar 3.6 Desain halaman utama
Halaman beranda merupakan halaman utama yang muncul pertama kali saat
sistem dijalankan. Halaman ini memiliki menu bar yaitu menu dan keluar. Saat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
bar menu di klik maka akan menampilkan Gambar 4.2 dan saat bar keluar di klik
maka akan keluar dari sistem.
Gambar 3.7 Desain isi Bar Menu
3.5.2 Halaman Bantuan
Gambar 3.8 Desain Halaman Bantuan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Halaman bantuan merupakan halaman yang berfungsi untuk memberikan
petunjuk penggunaan sistem kepada pengguna. Petunjuk yang diberikan yaitu cara
mengakses form, cara menguji akurasi, cara keluar program. Halaman ini juga
memiliki menu bar yaitu bar menu dan keluar. Saat bar menu di klik maka akan
menampilkan Gambar 4.2 dan saat bar keluar di klik maka akan keluar dari sistem.
3.5.3 Halaman Uji Akurasi
Gambar 3.9 Desain Halaman Uji Akurasi
Halaman uji akurasi merupakan halaman yang berfungsi untuk melakukan
uji akurasi terhadap data yang akan di klasifikasi menggunakan algoritma Naïve
Bayes. Pada halaman ini pertama-tama pengguna menekan tombol open file untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
membuka file data yang akan di klasifikasikan, setelah itu akan muncul kotak
dialog seperti gambar 4.5, cari lokasi file lalu tekan tombol open. Selanjutnya
isikan jumlah fold pada combo box fold lalu klik button proses untuk melihat hasil
akurasi dari file data yang diklasifikasi.
3.5.4 Halaman Uji Data Tunggal
Gambar 3.10 Desain Halaman Uji Data Tunggal
Halaman uji data tunggal merupakan halaman yang berfungsi untuk
melakukan pengujian data tunggal untuk melakukan prediksi data penyakit
hipertensi. Pada halaman ini pertama-tama pengguna menekan tombol open
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
dataset dan open data test untuk membuka file data yang akan di uji, setelah itu
akan muncul kotak dialog seperti gambar 4.5, cari lokasi file lalu tekan tombol
open. Selanjutnya klik button proses untuk melihat hasil prediksi dari file data
yang diuji.
3.6 Perancangan Struktur Data
Perancangan struktur data dalam pembuatan sistem ini digunakan untuk
menyimpan dan mengorganisasikan informasi yang tersedia. Struktur data sendiri
dapat membantu pengolahan data agar lebih efisien. Pada sistem yang akan
dirancang, struktur data yang digunakan adalah konsep struktur data hashmap.
Hashmap atau sering disebut hash tables merupakan struktur data yang
sering digunakan untuk mengimplementasikan ADT (Abstract Data Type) pada
sebuah Dictionary, yang hanya mengizinkan pencarian, penyisipan, dan
penghapusan elemen-elemen yang ada di dalamnya. (Ruli dkk, 2008.).
Dalam tabel hash yang digunakan pada Java, setiap lokasi array adalah suatu
list berantai yang berisi pasangan kunci/nilai (atau mungkin juga list kosong). Jika
dua item memiliki kode hash yang sama, maka kedua item tersebut akan ada pada
list yang sama. Berikut desain struktur data dari hashmap :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
Gambar 3.11 Struktur kode hashmap
Pada gambar 3.11., hanya ada satu item dengan kode hash 0, tidak ada item
dengan kode hash 1, dua item dengan kode hash 2, dan seterusnya. Pada tabel
hash yang dirancang dengan benar, hampir semua list berantai berisi nol atau satu
elemen saja, dengan rata-rata panjang list kurang dari 1. Meskipun kode hash dari
suatu kunci mungkin tidak membawa kita langsung pada kunci yang kita mau,
akan tetapi tidak akan lebih dari satu atau dua item yang harus kita cari sebelum
kita sampai pada item yang kita inginkan (Anonim. 2012).
3.7 Pengujian
Pengujian dilakukan untuk mengetahui akurasi dari proses klasifikasi.
Akurasi merupakan presentase data yang terklasifikasikan dengan benar.
Pengujian ini menggunakan k-fold cross validation dengan membagi data menjadi
beberapa bagian untuk training dan testing. Dari jumlah data, akan dibagi menjadi
beberapa bagian dan digunakan untuk testing dan training. Proses tersebut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
dilakukan beberapa kali dengan kombinasi kelompok data yang berbeda-beda.
Hasil dari proses tersebut dapat dibentuk menjadi tabel confusion matrix dimana
tabel tersebut dapat diketahui jumlah data yang teridentifikasi secara benar untuk
selanjutnya dihitung akurasinya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
BAB IV
IMPLEMENTASI SISTEM
Bab ini akan membahas hasil penelitian yang berupa sistem yang telah
dibangun berdasarkan perancangan yang telah dibahas pada bab sebelumnya dan
hasil yang didapatkan dari sistem. Implementasi yang dijelaskan berupa software
dan hardware yang digunakan dalam implementasi sistem dan implementasi kelas
pembuatan sistem.
4.1 Spesifikasi Software dan Hardware
Spesifikasi software dan hardware yang digunakan dalam implementasi
sistem ini adalah :
Bahasa Pemograman : Java Netbeans IDE 7.2.1
Processorss : Intel Core i5-5200, 2.7GHz
Memory : 4 GB
Harddisk : 500 GB
Operating System (OS) : Windows 10 Enterprise 64-bit
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
4.2 Implementasi User Interface
Pada bagian ini akan dibahas mengenai implementasi dari sistem yang telah
dirancang pada bab sebelumnya. Sistem ini mempunyai tiga halaman yaitu
halaman beranda, halaman bantuan, dan halaman uji akurasi.
4.2.1 Halaman Beranda
Gambar 4.1 Tampilan User Interface Halaman Beranda
Halaman beranda merupakan halaman utama yang muncul pertama kali saat
sistem dijalankan. Halaman ini memiliki menu bar yaitu menu dan keluar. Saat
bar menu di klik maka akan menampilkan Gambar 4.2 dan saat bar keluar di klik
maka akan keluar dari sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
Gambar 4.2 Tampilan User Interface Isi Bar Menu
4.2.2 Halaman Bantuan
Gambar 4.3 Tampilan User Interface Halaman Bantuan
Halaman bantuan merupakan halaman yang berfungsi untuk memberikan
petunjuk penggunaan sistem kepada pengguna. Petunjuk yang diberikan yaitu cara
mengakses form, cara menguji akurasi, cara keluar program. Halaman ini juga
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
memiliki menu bar yaitu bar menu dan keluar. Saat bar menu di klik maka akan
menampilkan Gambar 4.2 dan saat bar keluar di klik maka akan keluar dari sistem.
4.2.3 Halaman Uji Akurasi
Gambar 4.4 Tampilan User Interface Uji Akurasi
Halaman uji akurasi merupakan halaman yang berfungsi untuk melakukan
uji akurasi terhadap data yang akan di klasifikasi menggunakan algoritma Naïve
Bayes. Pada halaman ini pertama-tama pengguna menekan tombol open file untuk
membuka file data yang akan di klasifikasikan, setelah itu akan muncul kotak
dialog seperti gambar 4.5, cari lokasi file lalu tekan tombol open. Selanjutnya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
isikan jumlah fold pada combo box fold lalu klik button proses untuk melihat hasil
akurasi dari file data yang diklasifikasi.
4.2.4 Halaman Uji Data Tunggal
Gambar 4.5 Tampilan User Interface Uji Data Tunggal
Halaman uji data tunggal merupakan halaman yang berfungsi untuk
melakukan prediksi data tunggal hipertensi menggunakan algoritma Naïve Bayes.
Pada halaman ini pertama-tama pengguna menekan tombol open dataset untuk
membuka file dataset yang akan di klasifikasikan, kemudian menekan tombol
open data test untuk membuka file data test yang akan diprediksi setelah itu akan
muncul kotak dialog seperti gambar 4.6, cari lokasi file lalu tekan tombol open.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
Selanjutnya klik button proses untuk melihat hasil prediksi. Hasil prediksi
didapatkan dari hasil probabilitas tertinggi yang muncul pada field.
Gambar 4.6 Tampilan kotak dialog.
4.3 Proses Input Data
Pada subbab ini akan dibahas langkah-langkah bagaimana sistem melakukan
preprocessing dari data hipertensi RSU Prov. NTB agar data tersebut nantinya
dapat dimasukkan ke dalam proses klasifikasi. Data yang digunakan adalah data
yang berbentuk teks, agar data teks tersebut dapat diproses dengan klasifikasi
maka langkah pertama adalah membaca data teks kemudian menulis ulang
menjadi data yang dapat di proses oleh sistem ke dalam klasifikasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
4.3.1 Membaca Data Teks ke dalam Sistem
Pada tahap ini, sistem akan melakukan pembacaan file teks, dimana proses
pembacaan teks dilakukan per barisan teks dengan melakukan perulangan untuk
membaca teks dari baris awal sampai dengan baris akhir. Berikut kode
programnya :
Implementasi pada kode program diatas, untuk melakukan perulangan
sampai baris terakhir dan selanjutnya dilakukan pembacaan teks per baris.
Kode program diatas berfungsi untuk melakukan pembacaan teks sesuai
dengan file yang nantinya dipilih oleh pengguna.
public class LineIterator implements Iterable<String>, Iterator<String>,
Closeable{
private BufferedReader in = null;
private String next = null;
private static InputStream stream(File f) {
try {
return new FileInputStream(f);
} catch (FileNotFoundException e) {
throw new RuntimeException(e);
}
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
Kode program diatas akan melakukan pembacaan teks perbaris, dimana jika
terdapat comments atau blank dengan inisiasi karakter ‘#’ dan ‘//’ pada teks, maka
tidak dianggap sebagai teks dan akan dilewati. Selanjutnya, untuk melakukan
proses perhitungan klasifikasi, sistem perlu melakukan penulisan ulang pada isi
dari data teks.
public LineIterator(Reader reader, boolean skipComments, boolean
skipBlanks) {
try {
in = new BufferedReader(reader);
next = in.readLine();
if (next == null) {
in.close();
}
} catch (IOException e) {
throw new RuntimeException(e);
}
commentIdentifiers.add("#");
commentIdentifiers.add("//");
if (skipComments) {
setSkipComments(true);
}
setSkipBlanks(true);
}
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
4.3.2 Menulis Ulang Teks di dalam Sistem
Pada tahap ini akan dilakukan penulisan ulang isi dari data teks yang telah
dibaca ke dalam sistem agar dapat di proses ke dalam klasifikasi Naïve Bayes.
Langkah – langkah yang akan dilakukan sistem yaitu :
1. Memecah nilai berdasarkan separator (pemisah)
2. Mengubah nilai menjadi bertipe double untuk kelas pembanding dan
string untuk kelas yang dibandingkan, hal ini dilakukan agar nilai dapat
dimasukkan ke dalam proses perhitungan klasifikasi
3. Menyimpan ke dalam dataset.
Langkah pertama dalam melakukan penulisan ulang isi dari data teks adalah
memecah nilai berdasarkan separator (pemisah). Berikut adalah kode programnya
Kode program diatas adalah langkah pertama dimana program akan
membuat tempat penyimpanan untuk data yang telah ditulis ulang pada out.
Kemudian, akan melakukan perulangan sebanyak jumlah baris pada data dan
dilakukan pemisahan berdasarkan separator dengan perintah split dan
menyimpannya pada string array yaitu arr. Terakhir, membuat tempat
Dataset out = new DefaultDataset(); //disimpan ke dalam out
for (String line : it) {
String[] arr = line.split(separator);
//proses pemisahan value dengan separator
double[] values; //menyimpan value
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
penyimpanan untuk nilai kelas pembanding yang akan diubah menjadi bertipe
double ke dalam double array yaitu values.
Langkah kedua adalah mengubah nilai menjadi bertipe double untuk kelas
pembanding dan string untuk kelas yang akan dibandingkan. Untuk melakukan
hal ini, pertama akan dilakukan perulangan sebanyak jumlah baris yang dipisah
(split). Selama melakukan perulangan, masukkan nilai sesuai index dengan
ketentuan index ke-0 adalah nilai kelas yang dibandingkan dan index selanjutnya
adalah nilai yang dibandingkan kemudian menggabungkan kembali menjadi
sebuah array yang berisi nilai kelas yang dibandingkan dan kelas pembanding.
String classValue = null; // karena classValue adalah string yes atau no
for (int i = 0; i < arr.length; i++) {
if (i == classIndex) { //jika i=classValue
classValue = arr[i]; // simmpan ke classValue
} else {
double val;
try {
val = Double.parseDouble(arr[i]);
} catch (NumberFormatException e) {
val = Double.NaN;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
if (classIndex != -1 && i > classIndex)
values[i - 1] = val;
else
values[i] = val;
}
}
out.add(new DenseInstance(values, classValue));
}
return out;
}
Kode program diatas akan melakukan perulangan sebanyak baris yang
dipisah kemudian untuk kelas yang ke-0 akan disimpan ke dalam string yaitu kelas
value dan kelas index sisanya dikonversi menjadi double, kemudian disimpan ke
di array double yaitu values dan terakhir nilai kelas pembanding dan kelas yang
dibandingkan ditambahkan ke kelas dense instance untuk kemudian nantinya
menjadi data yang dipakai utuk melakukan perhitungan klasifikasi.
4.4 Implementasi Algoritma Naïve Bayes pada Sistem
Pada tahap ini akan dijelaskan proses implementasi dari perhitungan
algoritma Naïve Bayes. Langkah-langkah yang dilakukan dalam proses klasifikasi
dengan algoritma Naïve Bayes adalah :
1. Menghitung frekuensi kelas yang dibandingkan dan kelas pembanding
2. Menghitung probabilitas yang dibandingkan dan kelas pembanding
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
3. Menghitung nilai likelihood dengan mengkalikan semua probabilitas
kelas
4. Normalisasi nilai likelihood ke dalam bentuk probabilitas
5. Membandingkan nilai probabilitas likelihood dan nilai tertinggi untuk
dijadikan hasil akhir klasifikasi.
4.4.1 Menghitung Frekuensi Kelas
Langkah pertama dalam proses klasifikasi algoritma Naïve Bayes adalah
menghitung frekuensi kelas. Frekuensi adalah banyaknya sebuah data dalam
kategori tertentu. Berikut kode programnya :
Kode program diatas, sistem akan menyimpan nilai dari frekuensi kelas
kedalam sebuah array double. Kemudian melakukan perulangan sebanyak jumlah
kelas yang dimiliki oleh data hipertensi dan mensetting nilai frekuensi kelas
menjadi 0. Selanjutnya dilakukan perulangan sehingga frekuensi kelas akan
private double[] HitungFrekuensiKelas(Dataset Instances2Train) {
double[] FrekuensiKelas = new double[numClasses];
for (int i = 0; i < numClasses; i++) {
FrekuensiKelas[i] = 0;
}
for (Instance inst : Instances2Train) {
FrekuensiKelas[Classname2IndexCCountermap.get(inst.classValue())]++;}
return FrekuensiKelas;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
otomatis bertambah 1 sesuai dengan setiap data yang muncul pada kategori
tertentu. Lalu, sistem akan menambahkan satu pada tiap kelas pembanding yang
muncul, hal ini dapat dilakukan dikarenakan Classname2IndexCCountermap
dapat mendeteksi kepemilikan kelas pada nilai kelas pembanding sehingga ketika
nilai keluar, maka pada kelas pemilik sistem akan menambahkan nilai satu.
Kode program diatas, sistem membuat nama untuk tiap nilai kelas
pembanding pada data training, sehingga sistem akan menambah nilai frekuensi
kelas data ketika dipanggil.
4.4.2 Menghitung Probabilitas Kelas
Langkah kedua adalah menghitung probabilitas kelas dari masing-masing
kelas. Dalam proses klasifikasi Naive Bayes, perhitungan probabilitas kelas dapat
dihitung menggunakan rumus berikut :
P(Wk|Vj) = Nk+1
N+|vocabulary|
Rumus 4.1 Perhitungan probabilitas P(Wk | Vj)
for (Object o : trainingData.classes()) {
String classname = o.toString();
Classname2IndexCCountermap.put(classname, cnt);
classes[cnt] = classname;
cnt++;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
Rumus diatas akan diimplemetaskan ke dalam kode program berikut :
Pada kode program diatas, sistem akan membuat sebuah array untuk
menyimpan nilai frekuensi dan probabilitas, kemudian lakukan iterasi sebanyak
jumlah kelas untuk melakukan perhitungan probabilitas.
4.4.3 Menghitung Kelas Distribusi Naïve Bayes
Langkah ketiga adalah menghitung probabilitas likelihood dari Naïve Bayes
dengan mengkalikan semua probabilitas kelas, kemudian menormalisasi hasil
likelihood ke dalam bentuk probabilitas, dan kemudian membandingkan
probabilitas kelas yang dibandingkan untuk mendapatkan hasil akhir dari
klasifikasi. Yang pertama dilakukan adalah membuat suatu tempat penyimpanan
untuk menyimpan nilai frekuensi, fitur tabel dan menyimpan hasil klasifikasi.
Berikut kode programnya :
private double[] HitungProbsKelas() {
double[] probs = trainResult.getClassFreqs().clone();
// menyimpan probabilitas kelas
double[] freq = trainResult.getClassFreqs().clone();
for (int k = 0; k < numClasses; k++) {
probs[k] = (freq[k] + 1) / (numInstances +
numClasses);
}
return probs;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
Untuk langkah selanjutnya adalah menghitung probabilitas nilai kelas yang
akan dibandingkan dengan menggunakan rumus :
P(yes/no) = |doc j|
|Contoh|
Rumus 4.2 Perhitungan probabilitas yes atau no
Rumus diatas akan diimplemetaskan ke dalam kode program berikut :
Kode program diatas akan melakukan perulangan untuk menghitung
probabilitas nilai kelas yang akan dibandingkan sebanjak jumlah kelas. Dalam
kasus ini, diulang 4 kali karena kelas yang akan dibandingkan adalah 4 (normal,
pre, stadium 1, stadium 2). Selanjutnya sistem akan menghitung nilai dari kelas
HashMap<Object, Double> out = new HashMap<Object,
Double>(numClasses); //menyimpan hasil klasifikasi
coverAbsentFeatures_And_fill_helpMap(inst);
Hashtable<Integer, Hashtable<Double, ClassCounter>>
featureName_HT = trainResult.getFeatureTable(); //menyimpan fitur table
double[] freq = trainResult.getClassFreqs().clone();
double total = 0;
for (int k = 0; k < numClasses; k++) {
double denominator = freq[k];
double classScore2 = freq[k]/numInstances;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
pembanding lainnya dengan menggunakan rumus perhitungan probabilitas P(Wk
| Vj) (Rumus 4.2).
Kemudian mengkalikan seluruh probabilitas kelas pembanding untuk
kategori yes dan no untuk mendapatkan likelihood yang nantinya akan
dibandingkan. Selanjutnya sistem akan menghitung probabilitas kelas
pembanding yang muncul dan mengkalikan seluruhnya untuk mendapatkan
likelihood, kemudian sistem akan menormalisasi nilai likelihood agar berbentuk
probabilitas dengan cara likelihood yes ataupun no dibagi hasil total dari
penjumlahan hasil perkalian likelihood yes dan no.
for (Object key : featureName_HT.keySet()) {
int featureName = (Integer) key;
int numValues = featureName_HT.get(featureName).size();
Double featureValue = getInstValue(featureName, inst);
double numerator = featureName_HT.get(featureName).get(
featureValue).getCountClass(k);
classScore2 *= (numerator+1)/(denominator+numValues);
}
//menghitung probabilitas kelas pembanding
out.put(classes[k], classScore2);
total = total +classScore2;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
//Normalizing to probabilities
for (int l = 0; l < classes.length; l++) {
double classScore2 = out.get(classes[l]);
out.put(classes[l], classScore2/total);
}
return out;
}
Setelah mendapatkan nilai probabilitas, sistem akan melakukan
perbandingan kemudian mengembalikan nilai probabilitas tertinggi sebagai hasil
akhir klasifikasi. Berikut kode programnya :
public Object classify(Instance instance) {
Map<Object, Double> distribution =
KelasDistribusi(instance);
double max = 0;
Object out = null;
for (Object key : distribution.keySet()) {
if (distribution.get(key) > max) {
max = distribution.get(key);
out = key;
}
}
return out;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
4.5 Pengujian
4.5.1 Menhitung Evaluasi Cross Validation
Teknik cross validation digunakan untuk melakukan validasi keakuratan
dari suatu klasifikasi. Pada tahap ini akan dijelaskan beberapa proses dalam
melakukan evaluasi dengan cross validation. Untuk melakukan evaluasi
klasifikasi dengan teknik cross validation, perlu diperhatikan beberapa langkah
yaitu :
1. Melakukan perulangan sebanyak jumlah fold. Selama perulangan
tersebut lakukan pengambilan satu data sebagai data validasi dan sisanya
sebagai data latih / training.
2. Lakukan klasifikasi pada data training dengan algoritma Naïve Bayes.
3. Tentukan true positive, true negative, false positive, dan false negative.
Langkah pertama yang dilakukan pada sistem adalah membuat tempat
penyimpanan data untuk validasi dan data untuk training. Berikut kode
programnya :
for (int i = 0; i < numFolds; i++) {
Dataset validation = folds[i]; //untuk menyimpan data validasi
Dataset training = new DefaultDataset(); //untuk menyimpan data training
Pada kode program diatas, perulangan dilakukan untuk mengambil data yang
akan dijadikan data validasi. Perulangan dilakukan sebanyak jumlah fold yang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
diinnginkan. Setelah pengambilan data validasi, sisa dari data dijadikan sebagai
data training.
for (int j = 0; j < numFolds; j++) {
if (j != i)
training.addAll(folds[j]);
} classifier.buildClassifier(training);
Pada kode program diatas perulangan digunakan untuk mengambil semua
data terkecuali data yang dijadikan sebagai data validasi dan melatihnya dengan
klasifikasi Naïve Bayes. Selanjutnya adalah menentukan jumlah true positive,
jumlah true negative, jumlah false positive, jumlah false negative.
for (Instance instance : validation) {
//selama instance bagian dari validation
Object prediction = classifier.classify(instance);
Pada bagian kode program diatas, akan dilakukan pengecekan pada data yang
dijadikan validasi dan dicocokan dengan data yang telah di training dengan
melakukan proses klasifikasi.
for (Instance instance : validation) { //selama instance bagian dari validation
Object prediction = classifier.classify(instance);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
if (instance.classValue().equals(prediction)) {// prediction == class
for (Object o : out.keySet()) {
if (o.equals(instance.classValue())) {
out.get(o).tp++;
} else {
out.get(o).tn++; } }
Pada bagian kode program diatas, setelah proses dijalankan, maka
pengecekan akan dimulai dari klasifikasi yang bernilai benar terlebih dahulu.
Apabila klasifikasi bernilai benar (nilai data validasi dan nilai data training sama),
maka untuk data selanjutnya yang bernilai benar positive maka data tersebut
masuk ke dalam kategori tp++. Dan jika data yang benar bernilai negative maka
masuk ke dalam kategori tn++.
else {// prediction != class
for (Object o : out.keySet()) {
/* prediction is positive class */
if (prediction.equals(o)) {
out.get(o).fp++;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
/* instance is positive class */
else if (o.equals(instance.classValue())) {
out.get(o).fn++;
}
/* none is positive class */
else {
out.get(o).tn++; }
}}}}
return out; //mengembalikan nilai out(hasil)
}
Pada bagian kode program diatas, sistem akan mengecek hasil klasifikasi
yang salah (jika data validasi bernilai benar dan data training bernilai salah atau
sebaliknya). Maka untuk data selanjutnya jika data salah bernilai positive maka
masuk ke dalam kategori fp++, dan jika data salah bernilai negative maka masuk
ke dalam kategori fn++.
4.5.2 Menghitung Akurasi
Setelah mendapatkan hasil dari true positive (tp), true negative (tn), false
positive (fp), false negative (fn), untuk langkah selanjutnya adalah menghitung
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
akurasi atau frekuensi benar dari sebuah klasifikasi. Menghitung akurasi dari
sebuah klasifikasi dapat mengunakan rumus sebagai berikut :
(A+B) / C
A = jumlah klasifikasi positive benar (true positive)
B = jumlah klasifikasi negative benar (true negative)
C = jumlah total seluruh data
Kemudian rumus tersebut diimplementasikan ke dalam kode program sebagai
berikut :
public double getAkurasi() {
return (this.tp+this.tn)/this.getTotal();
}
4.5.3 Menghitung Error Rate
Setelah mendapatkan hasil dari true positive (tp), true negative (tn), false
positive (fp), false negative (fn), dan hasil dari akurasi, untuk langkah selanjutnya
adalah menghitung error rate atau frekuensi salah dari sebuah klasifikasi.
Menghitung error rate dari sebuah klasifikasi dapat mengunakan rumus sebagai
berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
public double getErrorRate() {
return (this.fp+this.fn)/this.getTotal();
}
(A+B) / C
A = jumlah klasifikasi positive salah (false positive)
B = jumlah klasifikasi negative salah (false negative)
C = jumlah total seluruh data
Kemudian rumus tersebut diimplementasikan ke dalam kode program sebagai
berikut :
4.5.4 Melakukan Pengujian Data Tunggal
Pada tahap ini akan dilakukan pengujian data tunggal untuk mendapatkan
hasil prediksi klasifikasi jenis penyakit hipertensi. Dimana untuk mendapatkan
hasilnya dataset akan dibandingkan dengan data test untuk kemudian dilakukan
perhitungan probabilitas tiap kelas, dan nilai probabilitas tertinggi menjadi hasil
akhir untuk menentukan prediksi. Berikut kode programnya :
Dataset data = FileHandler.loadDataset(new File("d:/hypertension.data"), 14,
",");
Dataset dataForClassification = FileHandler.loadDataset(new
File("d:/hypertensionsingledata.data"), 14, ",");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
boolean useLaplace = true;
boolean useLogs = true;
Classifier nbc = new NaiveBayesClassifier(useLaplace, useLogs,
false);
nbc.buildClassifier(data);
for (Instance inst : dataForClassification) {
System.out.println("Instance :" + inst);
System.out.println("kelas distribusi instance :" +
nbc.KelasDistribusi(inst));
System.out.println("kelas value instance :" + inst.classValue());
System.out.println("hasil klasifikasi :" + nbc.classify(inst));
System.out.println();
}
Pada program diatas, sistem akan melakukan import dataset dan data test,
selanjutnya akan dilakukan perulangan untuk melakukan perbandingan terhadap
kedua data tersebut dan melakukan perhitungan probabilitas pada tiap kelas.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
67
BAB V
PENGUJIAN DAN ANALISA HASIL
Pada bab ini akan dibahas mengenai hasil dari pengujian sistem yaitu proses
klasifikasi dan akurasi pada dataset hipertensi serta menganalisa hasil proses
tersebut.
5.1 Hasil Pengujian Sistem
Tahap akhir pada penelitian ini adalah pengujian sistem yang telah dibangun
menggunakan algoritma Naïve Bayes. Pada tahap ini, pengujian akan dilakukan
untuk melihat hasil akurasi dan hasil prediksi data tunggal.
5.1.1 Hasil Uji Akurasi
Proses dari uji akurasi ini dilakukan dengan menggunakan teknik k-fold cross
validation yaitu membagi dataset menjadi beberapa kelompok data training dan
data testing. Dalam pengujian ini, penulis menggunakan 3 fold, 5 fold, 10 fold, 15
fold, dan 15 fold.
Selanjutnya, setelah data dikelompokkan menjadi beberapa kelompok (sesuai
nilai fold), maka langkah selanjutnya menghitung tingkat akurasi dari dataset
hipertensi. Proses perhitungan tingkat akurasi data menggunakan rumus yang
telah dibahas pada bab sebelumnya. Berikut hasil dari pengujian sistem :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
Gambar 5.1 Dataset yang akan diuji
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
69
Gambar 5.2 Hasil uji akurasi menggunakan 3 fold.
Gambar diatas merupakan hasil uji akurasi menggunakan 3 fold cross
validation dimana didapatkan hasil akurasi sejumlah 90.1 % dan error rate
sejumlah 9.9 %.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
70
Gambar 5.3 Hasil uji akurasi menggunakan 5 fold
Gambar diatas merupakan hasil uji akurasi menggunakan 5 fold cross
validation dimana didapatkan hasil akurasi sejumlah 90.4 % dan error rate
sejumlah 9.6 %.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
71
Gambar 5.4 Hasil uji akurasi menggunakan 10 fold
Gambar diatas merupakan hasil uji akurasi menggunakan 10 fold cross
validation dimana didapatkan hasil akurasi sejumlah 91.2 % dan error rate
sejumlah 8.8 %.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
72
Gambar 5.5 Hasil uji akurasi menggunakan 15 fold
Gambar diatas merupakan hasil uji akurasi menggunakan 15 fold cross
validation dimana didapatkan hasil akurasi sejumlah 90.1 % dan error rate
sejumlah 9.9 %.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
73
Gambar 5.6 Hasil uji akurasi menggunakan 20 fold
Gambar diatas merupakan hasil uji akurasi menggunakan 20 fold cross
validation dimana didapatkan hasil akurasi sejumlah 90.8 % dan error rate
sejumlah 9.2 %.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
Setelah dilakukan pengujian pada sistem menggunakan 3, 5, 10, 15 dan 20
fold cross validation maka hasil pada tabel berikut :
Tabel 5.1 Tabel Hasil Akurasi Sistem
Fold Hasil Akurasi Error Rate
3 90.1 9.9
5 90.4 9.6
10 91.2 8.8
15 90.1 9.9
20 90.8 9.2
Dari hasil pengujian pada sistem seperti terlihat pada tabel diatas dapat
disimpulkan bahwa :
1. Jumlah fold dapat mempengaruhi hasil dari akurasi.
2. Nilai rata-rata prosentase untuk hasil dari akurasi sebesar 90.52%
3. Nilai rata-rata prosentase untuk hasil dari error rate sebesar 9.48%
4. Pada pengujian diatas, yang memiliki hasil maksimal prosentase akurasi
adalah pada pengujian dengan menggunakan fold bernilai 10, sedangkan
yang memiliki hasil akurasi terendah adalah di pengujian dengan
menggnakan fold bernilai 3 dan 15.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
75
5. Pada pengujian diatas yang memiliki hasil maksimal prosentase error rate
tertinggi adalah di pengujian dengan menggunakan fold bernilai 3 dan 15,
sedangkan yang memiliki hasil prosentase error rate terendah adalah di
pengujian dengan menggunakan fold bernilai 10.
5.1.2 Hasil Uji Data Tunggal
Proses dari uji data tunggal ini adalah pengguna melakukan impor data
tunggal dan dataset, selanjutnya melakukan perhitungan nilai probabilitas
menggunakan rumus yang telah dibahas pada bab sebelumnya. Berikut hasil dari
pengujian sistem :
Gambar 5.7 Dataset yang akan diuji
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
76
Gambar 5.8 Data testing atau data tunggal yang akan diuji
Gambar 5.9 Hasil pengujian data tunggal.
Dari pengujian diatas didapatkan hasil prediksi jenis hipertensi berupa PRE.
Hasil pengujian untuk data tunggal tersebut didapatkan dari nilai probabilitas tiap
kelas dimana nilai probabilitas tertinggi menjadi hasil prediksi untuk data tunggal
yang diuji.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
77
Gambar 5.10 Prediksi jumlah data benar dan salah
Dari pengujian diatas didapatkan hasil prediksi jumlah data benar sebesar 635
dan data salah sebesar 19. Hasil pengujian diatas didapatkan dari hasil perhitungan
confusion matrix dengan menjumlahkan total tupel true positive untuk data yang
diprediksi benar dan menjumlahkan tupel false negative untuk data yang
diprediksi salah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
78
BAB VI
PENUTUP
1.1 Kesimpulan
Berdasarkan hasil penelitan klasifikasi hipertensi menggunakan algoritma
Naïve Bayes ini, dapat diambil kesimpulan sebagai berikut :
1. Algoritma Naïve Bayes dapat melakukan dan memberikan hasil prediksi
dari data penyakit hipertensi yang diambil dari RSU Provinsi NTB,
dimana hasil prediksi jenis hipertensi diambil dari nilai tertinggi
probabilitas jenis hipertensi berdasarkan inputan atribut jenis kelamin
(sex) umur, HGB, HCT, WBC, PLT, asam urat, kolesterol LDL,
kolesterol HDL, kolesterol total, kreatinin, sistolik, diastolik, ureum dan
trigilserida.
2. Dari hasil pengujian tingkat akurasi data dengan menggunakan 3, 5, 10,
15, 20 fold dalam sistem ini, maka dihasilkan rata-rata akurasi sebesar
90.52%
1.2 Saran
Sebagai akhir dari penelitian ini, terdapat beberapa saran yang dapat berguna
bagi mahasiswa dan peneliti lainnya, antara lain sebagai berikut :
1. Sistem ini dapat dikembangkan agar dapat menerima file dengan
ekstensi file .arf, .dat, .xls dan lain-lain.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
79
2. Hasil klasifikasi dapat dikembangkan dalam bentuk grafik sehingga
lebih interaktif.
3. Sistem hanya terbatas pada jumlah atribut yang diinputkan secara statis,
yaitu 15 variabel input. Oleh, karena itu, agar sistem dapat berjalan
dengan baik, pengguna dapat lebih fleksibel dalam memilih atribut yang
digunakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
80
DAFTAR PUSTAKA
Pang-Ning Tan, Michael Steinbach, Vipin Kumar.(2006). Introduction to Data
Mining.Boston: Pearson Education, Inc.
Jiawei Han, Micheline Kamber (2006). Data Mining: concept and techniques.
San Francisco: Elsevier Inc.
Santosa Budi (2007), Data Mining: Teknik Pemanfaatan Data Untuk
Keperluan Bisnis. Yogyakarta: Graha Ilmu.
“The Sevent Report of the Joint National Committe (JNC 7) on Prevention,
Detection, Evaluation, and Treatment of High Blood Pressure”, U.S. Department of
Health and Human Services, 2003.
“The Eight Report of the Joint National Committe (JNC 8) on Prevention,
Detection, Evaluation, and Treatment of High Blood Pressure”, U.S. Department of
Health and Human Services, 2003.
Wicaksana, Paulus Dian. (2015). “Perbandingan Algoritma K-Nearest
Neighbors dan Algoritma Naïve Bayes untuk Studi Data Wisconsin Diagnosis Breast
Cancer”. Skripsi. Yogyakarta: Teknik Informatika Sanata Dharma.
Setiawan, Carolus Benny Dwi.(2015). “Prediksi Penjualan Helm
Menggunakan Algoritma Naïve Bayesian, Studi Kasus : Distribusi Perusahaan XYZ di
Wilayah Jawa Tengah dan Daerah Istimewa Yogyakarta”. Skripsi.Yogyakarta: Teknik
Informatika Sanata Dharma.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
81
LAMPIRAN
FLOWCHART ALUR SISTEM
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
82
LAMPIRAN II
DATA HIPERTENSI RSU PROVINSI NTB SEBELUM PREPROCESSING
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
83
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
84
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
85
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
86
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
87
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
88
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
89
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
90
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
91
LAMPIRAN III
DATA HIPERTENSI RSU PROVINSI NTB SESUDAH PREPROCESSING
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
92
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
93
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
94
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
95
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
96
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
97
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
98
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
99
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
100
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI