• Tidak ada hasil yang ditemukan

Deteksi Penyakit Diabetes Melitus Pada Wanita Dewasa Menggunakan Metode Random Forest Dan Machine Learning

N/A
N/A
Protected

Academic year: 2021

Membagikan "Deteksi Penyakit Diabetes Melitus Pada Wanita Dewasa Menggunakan Metode Random Forest Dan Machine Learning"

Copied!
13
0
0

Teks penuh

(1)

Deteksi Penyakit Diabetes Melitus Pada Wanita Dewasa

Menggunakan Metode Random Forest Dan Machine Learning

1Mochammad Akbar Marwan, 2Trisamaya Nila 1Fakultas Ilmu Komputer dan Teknologi Informasi

2Fakultas Teknologi Industri

Universitas Gunadarma, Jl. Margonda Raya 100, Depok

1[email protected] 2[email protected]

Abstrak

Penyakit diabetes melitus merupakan penyakit yang sering terjadi pada bidang kesehatan. Penyakit tersebut diakibatkan oleh beberapa indikator kesehatan, diantaranya kadar gula darah dalam tubuh yang terlalu tinggi. Penyakit ini sering kali terjadi pada orang dewasa terutama wanita, karena faktor pola hidup tidak sehat, keturunan, hingga kehamilan. Penyakit diabetes mellitus dapat menyebabkan komplikasi dan jika tidak segera ditangani dapat menyebabkan kematian. Dibutuhkan beberapa indikator kesehatan untuk mendeteksi penyakit diabetes, hal ini menyebabkan pendeteksian penyakit diabetes secara manual membutuhkan waktu yang lama. Penelitian ini bertujuan untuk mendeteksi penyakit diabetes pada wanita dewasa secara otomatis. Metode yang digunakan pada penelitian ini adalah Random Forest dan Machine Learning. Pada penelitian ini menggunakan 8 indikator kesehatan pribadi pasien wanita dewasa dengan total 6114 data. Penelitian ini telah berhasil mengidentifikasi satu wanita dewasa negatif diabetes dengan akurasi 77.08%, dan dua wanita dewasa positif diabetes dengan akurasi 78.6%, dan 82.3%.

Kata kunci: Random Forest, machine learning, Diabetes Mellitus.

1. Latar Belakang

Diabetes Mellitus (DM) adalah salah satu penyakit tidak menular yang terjadi karena peningkatan kadar gula (glukosa) darah akibat kekurangan atau resistensi insulin di dalam tubuh. Berdasarkan data International Diabetes Federation (IDF) tahun 2012 lebih dari 300 juta orang di seluruh dunia mengidap Diabetes Mellitus, dan sekitar 60 juta dari mereka adalah perempuan dengan usia reproduksi (15-49 tahun). International Diabetes Federation tahun 2012 menunjukkan, sekitar 415 juta manusia di dunia mempunyai penyakit diabetes, dengan perbandingan satu diantara sebelas orang dewasa yang terjangkit, dan dari setiap enam detik satu orang meninggal karena penyakit ini.

Berdasarkan penelitian yang dilakukan oleh Lely S dan Indrawati T dalam Media Litbang Kesehatan (2004) disebutkan bahwa penderita diabetes pada perempuan yaitu sebesar 62% dan pada laki-laki yaitu sebesar 38%. Menurut data Riset Kesehatan Dasar (Riskesdas) tahun 2007, prevalensi DM pada penduduk usia lebih dari 15 tahun sebesar 5,7% pada penduduk daerah perkotaan. DM merupakan masalah kesehatan yang penting bagi perempuan terutama pada usia reproduksi. DM yang tidak terkontrol atau tidak terdiagnosis pada usia tersebut dapat mengakibatkan komplikasi pada saat kehamilan yang mengancam jiwa ibu atau

(2)

persalinan yang sulit, dan komplikasi yang mengancam kehidupan dan kesehatan anak yang baru lahir. Bayi yang dilahirkan dari ibu yang mempunyai riwayat gestasional diabetes mellitus (GDM) akan berisiko mengalami DM tipe 2. Diabetes mellitus pada saat kehamilan (GDM) adalah sebuah tanda diabetes yang berkelanjutan dan perempuan dengan usia subur akan semakin berisiko tinggi untuk mengalami diabetes yang menetap (Aleida, 2011). IDF tahun 2012 menyebutkan bahwa faktor risiko untuk diabetes tipe 2 (dua) adalah kegemukan, diet dan aktivitas fisik, meningkatnya usia, resistensi insulin, riwayat keluarga diabetes, dan etnis. Perubahan diet dan aktivitas fisik yang berkaitan dengan pesatnya urbanisasi telah menyebabkan peningkatan tajam pada penderita diabetes. Wanita hamil yang memiliki berat badan berlebih telah dan memiliki riwayat keluarga diabetes berisiko tinggi terkena diabetes gestasional (GDM).

Tes gula darah di laboratorium dapat dilakukan untuk mengontrol kandungan gula darah dalam tubuh. Namun, hasil tes gula darah tidak selalu akurat dan dibutuhkan beberapa indikator kesehatan tubuh lain untuk menjadi acuan awal deteksi penyakit diabetes, seperti kadar insulin, tekanan darah, dan ketebalan kulit. Selain itu, keterbatasan tenaga medis untuk mendeteksi secara manual pada jumlah data yang sangat besar masih menjadi kendala. Salah satu cara untuk mengatasi kendala tersebut adalah memanfaatkan peranan teknologi di bidang medis.

Salah satu teknologi yang banyak digunakan saat ini adalah Machine Learning (ML). Machine Learning adalah bagian dari kecerdasan buatan (artificial intelligence), dan merupakan metode untuk mengoptimalkan performa dari sistem dengan mempelajari data sampel atau data histori (Alpaydin, 2009). Bagian penting dari ML adalah klasifikasi. Kemampuan untuk secara tepat mengklasifikasikan pengamatan sangat berharga untuk berbagai aplikasi, misalnya untuk memprediksi apakah pengguna tertentu akan membeli produk, atau memperkirakan apakah pinjaman yang diberikan akan gagal bayar atau tidak, atau memprediksi diagnosis suatu penyakit.

Terdapat beberapa algoritma klasifikasi yang umum digunakan seperti regresi logistik, Support Vector Machine (SVM), Naive Bayes, dan decision tree. Namun yang dari urutan pengklasifikasi tersebut yang unggul adalah pengklasifikasi Random Forest. Metode Random Forest merupakan pengembangan dari metode single decision tree. Metode ini terdiri dari beberapa tree dimana setiap tree dilakukan training terhadap sampel data. Penentuan kelas dilakukan berdasarkan jumlah vote dari setiap tree. Komputer dapat mengidentifikasi data histori yang menjadi indikator penyakit diabetes dengan memanfaatkan teknologi ML dan metode Random Forest sebagai pendeteksi penyakit diabetes. Pendeteksian penyakit diabetes menggunakan komputer dapat dilakukan dengan mengolah data kesehatan pribadi yang diinput oleh pengguna.

2. Perancangan Web

Elemen-elemen yang digunakan dalam perancangan web yaitu diagram use case dan rancangan tampilan antarmuka.

(3)

Diagram use case

Diagram use case digunakan untuk menggambarkan user pengguna sistem dan perilaku user terhadap suatu sistem. Diagram use case dari aplikasi web pendeteksi DM ditampilkan pada Gambar 1.

Gambar 1. Diagram use case aplikasi pendeteksi DM

Pada Gambar 1 terdapat satu aktor yaitu user. Saat user membuka web maka sistem akan menampilkan halaman utama dan dapat melihat data chart diabetes dengan 8 indikator. Setelah user memasukkan data kesehatan pribadi pada sidebar, maka sistem menjalankan program dan menampilkan hasil pada tabel klasifikasi.

Rancangan Tampilan Antarmuka − Halaman Utama

Pada halaman utama pengguna dapat menampilkan dan menyembunyikan sidebar yang ada pada sebelah kiri web. Selain itu pada halaman utama terdapat data informasi mengenai penyakit diabetes yang disajikan dalam table, statistik, dan chart.

(4)

− Sidebar

Tampilan sidebar berisi 8 indikator kesehatan pribadi yang harus dimasukkan pasien untuk mendapatkan hasil deteksi penyakit diabetes. 8 indikator yang harus diinput disajikan dalam bentuk slider.

Gambar 3. Rancangan Sidebar 3. Akuisisi Data

Data yang digunakan pada penelitian ini diperoleh dari data www.kaggle.com. Seluruh data pada penelitian ini berjumlah 6144 data yang dibagi dalam 8 indikator.

Pemisahan Data

Data yang telah diperoleh selanjutnya dipisahkan sebagian untuk data uji. Setiap kelas dipisahkan 192 data secara manual dan acak untuk dijadikan data uji. Data uji digunakan untuk mengukur sejauh mana pengklasifikasi berhasil melakukan klasifikasi dengan benar. Karena itu, data yang ada pada data uji tidak boleh ada pada data latih sehingga dapat diketahui apakah model pengklasifikasi sudah "pintar" dalam melakukan klasifikasi. Pemisahan data menjadi data latih dan data uji dimaksudkan agar model yang diperoleh nantinya memiliki kemampuan generalisasi yang baik dalam melakukan klasifikasi data. Tabel 1 merupakan jumlah hasil data yang telah dilakukan pemisahan data.

Tabel 1. Pemisah Data Latih dan Data Uji

Indikator Data Latih Data Uji

Pregnancies 576 192 Glucose 576 192 Blood Pressure 576 192 Skin Thickness 576 192 Insulin 576 192 BMI 576 192 DPF 576 192 Age 576 192 Total 4608 1536

(5)

Preprocessing Data

Sebelum data dapat digunakan, akan dilakukan proses pra-pemrosesan agar sesuai dengan keperluan arsitektur model. Pra-pemrosesan yang dilakukan yaitu spliting data.

Overfiting adalah suatu keadaan dimana data latih sangat baik sehingga apabila dilakukan tes dengan data yang berbeda maka akan mengurangi tingkat akurasi sedangkan underfitting adalah suatu keadaan dimana data latih tidak mewakili keseluruhan data yang akan digunakan sehingga memperburuk pemforma latihan.

Overfitting dan underfitting dapat dihindari dengan memisahkan porsi kecil dari data latih yaitu membagi dua dengan perbandingan 75% untuk data train dan 25% untuk data validasi dari setiap kelas. Jumlah data train yang di dapat adalah sebanyak 4608 data sedangkan jumlah data validasi sebanyak 1536 data. Data train digunakan oleh algoritma klasifikasi untuk membentuk sebuah model classifier. Model ini merupakan representasi pengetahuan yang akan digunakan untuk prediksi kelas data baru yang belum pernah ada. Sedangkan, data validasi adalah digunakan untuk mencari parameter yang paling baik untuk sebuah algoritma klasifikasi.

4. Hasil dan Pembahasan

Aplikasi web ini menggunakan bantuan Streamlit yaitu open-source application framework yang digunakan untuk machine learning. Total data yang digunakan adalah 4608 data latih dan 1536 data uji. Untuk mengenali penyakit diabetes pada penelitian ini terdiri dari dua bagian utama, yaitu proses pelatihan data dan proses uji coba data. Pada proses pelatihan data, sistem akan melakukan proses pelatihan (training) dengan menggunakan metode Random Forest Classifier. Pada proses testing atau uji coba, sistem akan melakukan klasifikasi data yang telah dimasukkan pengguna ke dalam sistem agar sistem dapat melakukan pengenalan dengan baik.

Pemisahan Data

Tahap ini dilakukan proses pembagian data untuk menghindari overfitting dan underfitting. Pembagian data latih dilakukan dengan perbandingan 75% untuk data train dan 25% untuk data test dari setiap kelas. Gambar 4 adalah kode program untuk melakukan pemisahan datasets menggunakan pustakasklearn pada bahasa python.

Gambar 4. Pemisahan data

Pada kode program di atas x_train dan y_train adalah kesatuan dari data train atau data latih dan x_test dan y_train adalah kesatuan dari data testing.

Mengubah Dictionary Menjadi Variable

Setelah user memasukan 8 data kesehatan pribadi sesuai dengan indikator yang ada pada sidebar, maka data masukan tersebut harus disimpan ke dalam variable agar data tersebut

(6)

dapat dikenali dan diolah oleh sistem. Gambar 5 menunjukkan kode program untuk merubah delapan indikator yang telah dimasukkan ke dalam variable.

Gambar 5. Merubah dictionary menjadi variable pada masukan user

Pada Gambar 5 terlihat user_input dipanggil dan ditampilkan pada subheader “User Input:” yang telah dibuat.

Train Model

Train model adalah salah satu bagian utama dalam pembuatan aplikasi web pendeteksi penyakit diabetes ini. Model yang digunakan adalah Random Forest Classifier.Model random forest dilatih untuk mempelajari fitur-fitur dan data yang ada pada datasets. Tujuan dari latihan ini adalah agar model dapat mengenali ciri data untuk melakukan deteksi penyakit diabetes.

Gambar 6. Train Model

Klasifikasi random forest dilakukan melalui penggabungan pohon (tree) dengan melakukan training pada sampel data yang dimiliki. Penggunaan tree yang semakin banyak akan mempengaruhi akurasi yang akan didapatkan menjadi lebih baik. Penentuan klasifikasi dengan random forest diambil berdasarkan hasil voting dari tree yang terbentuk. Pemenang dari tree yang terbentuk ditentukan dengan vote terbanyak.

Menampilkan Hasil

Pada tahap ini, hasil dari model random forest classifier disimpan kedalam variable yang diberi nama “prediction”, sehingga data kesehatan yang diinput user sebelumnya akan tersimpan pada variable prediction dan akan ditampilkan pada tabel hasil. (lihat Gambar 7)

(7)

Gambar 7. Program Menampilkan Hasil

Pada bagian Model Test Accuracy Score, digunakan y_test dan x_test dengan tampilan dalam bentuk persen. Setelah variable prediction telah menyimpan hasil prediksi, maka hasil tersebut akan ditampilkan pada tabel klasifikasi yang diberi nama “Classification”. Pada tabel ini akan muncul 1 digit angka yaitu 0 atau 1, dimana 0 adalah index untuk negatif diabetes, dan 1 adalah index untuk positif diabetes.

Tampilan Aplikasi Web

Tampilan halaman dari aplikasi web yang telah dibuat dapat dilihat pada Gambar 8 sampai dengan Gambar 11.

(8)

Gambar 9. Tampilan Tabel Data dan Tabel Statistik

Gambar 10. Tampilan Data Diagram

(9)

Gambar 11. Tampilan Sidebar Hasil Pengujian

Pada tahap ini dilakukan pengujian kepada 3 data sample berjenis kelamin wanita secara acak. Delapan indikator independen yang digunakan antara lain:

1. Pregnancies: Mempresentasikan berapa kali wanita tersebut hamil selama hidupnya. 2. Glucose: Mempresentasikan konsentrasi glukosa plasma pada 2 jam dalam tes toleransi

glukosa.

3. Blood Pressure: Tekanan darah adalah cara yang sangat terkenal untuk mengukur kesehatan jantung seseorang, ada juga ukuran tekanan darah yaitu diastolik dan sistolik. Dalam data ini, mempresentasikan tekanan darah diastolik dalam (mm / Hg) ketika jantung rileks setelah kontraksi.

4. Skin Thickness: Mempresentasikan nilai yang digunakan untuk memperkirakan lemak tubuh (mm) yang diukur pada lengan kanan setengah antara proses olecranon dari siku dan proses akromial scapula.

5. Insulin: Mempresentasikan tingkat insulin 2 jam insulin serum dalam satuan mu U/ml. 6. BMI: Mempresentasikan Indeks Massa Tubuh (berat dalam kg / (tinggi dalam meter

kuadrat), dan merupakan indikator kesehatan seseorang.

7. Diabetes Pedigree Function: Mempresentasikan indikator riwayat diabetes dalam keluarga.

8. Age: Mempresentasikan umur.

Tabel 2 menunjukkan data kesehatan dari masing-masing sample yang dimasukkan ke sistem Tabel 2. Data kesehatan dari tiga sampel

Indikator Sample 1 Sample 2 Sample 3

Pregnancies 1 1 6

Glucose 115 mg/dL 180 mg/dL 192 mg/dL

Blood Pressure 70 mmHg 64 mmHg 95 mmHg

(10)

Insulin 96.54 mu U/ml 190.23 mu U/ml 30 mu U/ml

BMI 34 33.55 32

Diabetes Pedigree

Function 0.52 0.34 0.37

Age 28 tahun 40 tahun 29 tahun

Gambar 12. Hasil Sample 1

Gambar 12 memperlihatkan bahwa dari delapan data yang telah dimasukkan diperolah hasil klasifikasi 0 (negatif diabetes) untuk sample pertama dengan model test accuracy score 77.083%.

Gambar 13. Hasil Sample 2

Gambar 13 menunjukkan dari data sample kedua diperoleh hasil 1 (positif diabetes) dengan model test accuracy score 78.64583%

(11)

Gambar 14. Hasil Sample 3

Pada Gambar 14 dapat dilihat hasil dari sample ketiga menunjukan angka 1 (positif diabetes) dengan model test accuracy score 82.2916%

5. Penutup

Dari hasil dan pembahasan di atas, maka dapat diperoleh kesimpulan sebagai berikut:

1. Implementasi metode Random Forest Classifier untuk mendeteksi penyakit diabetes pada wanita dewasa dilakukan menggunakan bahasa pemograman Python telah berhasil dilakukan.

2. Klasifikasi dilakukan dengan jumlah 6144 data, yang dibagi menjadi dua data set, yaitu 4608 data train dan 1536 data test.

3. Implementasi metode Random Forest Classifier dengan data validasi dari 25% data train sejumlah 4608 dari total 6144 data yang dibagi rata setiap indikator. Sedangkan hasil pengujian menggunakan 75% dari data test dengan total sebanyak 1536 data yang tersebar dalam 8 indikator.

4. Hasil pengujian dari implementasi metode Random Forest Classifier pada 3 wanita dewasa menghasilkan 2 wanita positif diabetes dengan accuracy score 78.64583% dan 82.2916%. Sedangkan 1 wanita dideteksi negatif diabetes dengan accuracy socre 77.083%.

Penelitian ini tidak menutup kemungkinan untuk dikembangkan lebih baik dengan memperbanyak datasets dan tidak membatasi jenis kelamin dan usia sample sehingga mampu menambah tingkat akurasi dalam mendeteksi penyakit diabetes dan dapat digunakan pada semua jenis kelamin dan usia.

DAFTAR PUSTAKA

[RISKESDAS] Riset Kesehatan Dasar. 2007. Jakarta: Badan Penelitian dan Pengembangan Kesehatan, Departemen Kesehatan, Republik Indonesia.

(12)

Abdullah, Dahlan. 2017. Merancang Aplikasi PErpustakaan Menggunakan SDLC. Lhokseumawe: SEFA.

Ahmad, Abu. 2017. Mengenal Artificial Intelligence, Machine Learning, Neural Network, dan Deep Learning. Jurnal Teknologi Indonesia.

Alpaydin, E., 2009. Introduction to Machine Learning, Second Edition. London: MIT Press. Basil. 2012. A Simulation Model for the Waterfall, International Journal of Enginering &

Technology (iJET).

Enterprise, Jubilee. 2016. Trik Cepat Menguasai Pemrograman Python. Jakarta: PT Elex Media Komputindo.

IDF. Women and Diabetes. International Diabetes Federation. 2012. Diunduh dari

http://riskesdas.idf.org/women-and-diabetes. Diakses pada tanggal 17 Agustus 2020. Rich, Elaine dan Knight, Kevin. 1991. Artificial Intelligence. McGraw-Hill Inc,.New York. Rivas, Aleida M. Gestational Diabetes Mellitus After Delivery, Gestational Diabetes, Prof.

Miroslav Radenkovic. Diunduh dari

http://Riskesdas.intechopen.com/books/gestationaldiabetes/gestationaldiabetes-mellitus-after-delivery. Diakses pada tanggal 11 Agustus 2020

Schmidhuber, J.2015. Deep Learning in Neural Networks: An Overview. Publishedonline 2014; based on TR arXiv:1404.7828 [cs.NE]. Vol. 61.10.1016/j.neunet.2014.09.003. Supardi, Yuniar. 2017. Semua Bisa Menjadi Programmer Python Basic. Jakarta: PT Elex

Media Komputindo.

Suyanto, Asep, Herman. (2008). Step by Step Web Design Theory and Practice Edisi II. Yogyakarta: Andi Publisher.

Widodo, Prabowo, Pudji dan Herlawati. 2011. Menggunakan UML. Bandung: Informatika. Mahapatra, Sambit. Why Deep Learning over Traditional Machine

Learning?.https://towardsdatascience.com/why-deep-learning-is-neededover-traditional-machine-learning-1b6a99177063. Diakses pada tanggal 11 Agustus 2020. Sanofi Indonesia. Diabetes. https://www.sanofi.co.id/id/kesehatan-anda/obat-resep/diabetes.

Diakses pada tanggal 11 Agustus 2020.

The National Institute of Diabetes and Digestive and Kidney Diseases Health Information Center, Diabetes, http: https://www.niddk.nih.gov/health-information/diabetes. Diakses pada tanggal 17 Agustus 2020.

Wikipedia. Diabetes Melitus. https://id.wikipedia.org/wiki/Diabetes_melitus. Diakses pada tanggal 11 agustus 2020.

Wikipedia. PyCharm. https://id.wikipedia.org/wiki/PyCharm. Diakses tanggal 11 Agustus 2020.

Wikipedia. Random Forest. https://id.wikipedia.org/wiki/Random_forest. Diakses pada tanggal 14 agustus 2020

Yanuar, Aditya. Random Forest.https://machinelearning.mipa.ugm.ac.id/2018/07/28/random-forest/. Diakses pada tanggal 17 Agustus 2020.

(13)

Perpustakaan Universitas Gunadarma BARCODE

BUKTI UNGGAH DOKUMEN PENELITIAN PERPUSTAKAAN UNIVERSITAS GUNADARMA

Nomor Pengunggahan

SURAT KETERANGAN

Nomor: 47/PERPUS/UG/2020

Surat ini menerangkan bahwa:

Nama Penulis : MOCHAMMAD AKBAR MARWAN

Nomor Penulis : 010244

Email Penulis : [email protected]

Alamat Penulis : poin mas

dengan penulis lainnya sebagai berikut:

Penulis ke-2/Nomor/Email : TRISAMAYA NILA / 57416446 / [email protected]

Telah menyerahkan hasil penelitian/ penulisan untuk disimpan dan dimanfaatkan di Perpustakaan Universitas Gunadarma, dengan rincian sebagai berikut :

Nomor Induk : FILKOM/DB/PENELITIAN/47/2020

Judul Penelitian : Deteksi Penyakit Diabetes Melitus Pada Wanita Dewasa Menggunakan Metode

Random Forest Dan Machine Learning

Tanggal Penyerahan : 20 / 08 / 2020

Gambar

Diagram use case
Tabel 1. Pemisah Data Latih dan Data Uji
Gambar 5. Merubah dictionary menjadi variable pada masukan user
Gambar 8. Tampilan Judul Halaman Utama
+5

Referensi

Dokumen terkait

Dalam melakukan klasifikasi tweet yang mengandung informasi gempa, metode Random Forest memiliki akurasi Recall sebesar 96.7%, lebih baik bila

Random forest adalah pengembangan dari pohon keputusan dengan menggunakan beberapa pohon keputusan dimana pada setiap pohon keputusan dilakukan proses training data

Puji syukur pada Tuhan Yang Mahakuasa karena atas rahmat-Nya skripsi berjudul “Implementasi Metode Random Forest dan Recursive Feature Elimination untuk Klasifikasi Berita

Wibisono dan Fahrurozi (2019) membandingkan algoritma klasifikasi Naïve Bayes, K-Nearest Neighbor, Decision Tree dan Random Forest dalam pengklasifikasian data

Dengan bantuan regresi logistik dan random forest sebagai classifier, dapat ditunjukkan fitur-fitur penting yang membantu model untuk klasifikasi. Baik regresi

Conclusion In this paper, we propose an original Genetic Algorithm based highlight choice Intrusion Detection System which utilizes the Random Forest classifier.. This developmental

Sistem hasil perancangan menggunakan metode ekstraksi ciri Local Binary Pattern dan klasifikasi Random Forest sudah mampu mengidentifikasi penyakit pada daun kopi dengan nilai akurasi

KESIMPULAN Dalam penelitian ini, dilakukan perbandingan akurasi pendeteksian penyakit diabetes dengan teknik klasifikasi naïve bayes dan random forest dengan hasil penelitian yang