Anda di halaman 1dari 9

IMPLEMENTASI MODEL CONVOLUTIONAL NEURAL NETWORK (CNN)

UNTUK KLASIFIKASI PENYAKIT TBC BERBASIS DEKSTOP

1
Suharni
2
Eel Susilowati
3
Taufiq Muldan Hidayat
1
Universitas Gunadarma, harni@staff.gunadarma.ac.id
2
Universitas Gunadarma, eel@staff.gunadarma.ac.id
3
Universitas Gunadarma, muldantaufiq@gmail.com

ABSTRAK
Penyakit Tuberkulosis (TBC) merupakan salah satu penyakit yang masih menjadi
masalah utama di negara berkembang seperti Indonesia. Tuberkulosis (TBC) adalah
penyakit yang disebabkan oleh bakteri Mycobacterium Tuberculosis. Tuberkulosis
menyerang paru-paru dan dapat mengifneksi orang lain. Penyakit ini bersifat menular.
Radiologi termasuk salah satu pemeriksaan diagnosis yang dapat dilakukan pada
penyakit TB-paru. Dengan menganalisa citra x-ray hasil rontgen pada dada tubuh
seseorang, maka para dokter dapat melakukan proses diagnosa penyakit TBC.
Permasalahan yang terjadi adalah diagnosa penyakit TBC masih dilakukan secara
manual oleh dokter. Tujuan penelitian ini adalah mengimplementasikan model
Convolutional Neural Network (CNN) untuk klasifikasi penyakit TBC berbasis dektop.
Untuk mengoptimalkan model tersebut menggunakan optimizer Stochastic Gradient
Descent (SGD). Model CNN optimal yang diimplementasikan bisa membantu dokter
dalam proses identifikasi hasil rontgen menggunakan proses komputerisasi. Hasil
identifikasi ini dapat mengklasifikasi apakah seseorang mempunyai penyakit tbc atau
tidak. Dataset didapat dari website kaggle.com berjumlah 240 data yang terdiri dari
160 data latih dan atau 80 data uji. Citra yang digunakan berukuran 128x128 piksel.
Pelatihan model menggunakan 50 epochs dan learning rate 0.01. Hasil pelatihan
tersebut mendapatkan nilai akurasi sebesar 98.75%. Implementasi model CNN pada
uji coba aplikasi menggunakan 15 citra x-ray yang terdiri dari 8 citra x-ray normal
dan 7 citra x-ray TBC menunjukan bahwa semua prediksi berdasarkan sistem dan
aktual hasilnya sesuai.
Kata Kunci: TBC, Convolutional Neural Network, Citra X-ray.

PENDAHULUAN melalui udara seperti batuk dan bersin.


Penyakit Tuberkulosis (TBC) Radiologi termasuk salah satu
merupakan salah satu penyakit yang pemeriksaan diagnosis yang dapat
masih menjadi masalah utama di dilakukan pada penyakit TB-paru.
negara berkembang seperti Indonesia. Dengan menganalisa citra x-ray hasil
Tuberkulosis (TBC) adalah penyakit rontgen pada dada tubuh seseorang,
yang disebabkan oleh bakteri maka para dokter dapat melakukan
MycobacteriumTuberculosis proses diagnosa penyakit TBC. Proses
(Zimmermann dan Hammond, 2017). yang dibutuhkan harus cepat dan
Tuberkulosis menyerang paru-paru dan akurat. Selama ini dalam melakukan
dapat menginfeksi orang lain. Penyakit diagnosa hasil rontgen penyakit TBC
ini dapat menular melalui kontak masih dilakukan secara manual oleh
langsung dengan penderita TBC, lalu dokter, sehingga kecermatan mata

UG JURNAL VOL.16 Edisi 04 April 2021 1


dalam mendiagnosa hasil rontgen Convolutional Neural Network (CNN)
sangat diperlukan. Keterbatasan berbasis desktop untuk mengklasifikasi
kemampuan manusia dalam penyakit TBC yang bertujuan untuk
menginterpretasikan hasil diagnosa membantu dokter dalam proses
secara visual bisa mengakibatkan identifikasi hasil rontgen. Hasil
kesalahan. identifikasi ini dapat mengklasifikasi
Penelitian-penelitian apakah seseorang mempunyai penyakit
sebelumnya yang terkait dengan TBC atau tidak.
diagnosa penyakit paru sudah banyak
dilakukan, namun masih terdapat METODE PENELITIAN
keterbatasan dalam hasil tingkat Metode yang digunakan untuk
akurasi. Penelitian yang dilakukan oleh melakukan klasifikasi penyakit TBC
Abdul Hamid (2019) yaitu “Klasifikasi pada paru-paru manusia menggunakan
Penyakit Tuberculosis Dan Pneumonia teknologi Deep Learning dengan model
Pada Paru-Paru Manusia Berdasarkan Convolutiunal Neural Network (CNN).
Citra Chest X-Ray Menggunakan Metode CNN merupakan salah satu
Convolutional Neural Network”. metode yang sedang berkembang saat
Pemillihan model terbaik dipilih ini. Pada metode ini menggunakan
berdasarkan nilai AUC (Area Under masukan berupa gambar. Kemudian
The Curve). Hasil Penelitian melalui lapisan konvolusi, gambar
menunjukkan model yang dibuat tersebut akan diolah berdasarkan filter
memperoleh tingkat akurasi mencapai yang ditentukan. Setiap lapisan ini
85.96% menggunakan epochs 50 dan menghasilkan pola dari beberapa bagian
skenario data 90:10. citra yang memudahkan proses
Penelitian selanjutnya yaitu klasifikasi (Li, W., Zhao, R., Xiao, T.,
“Klasifikasi Chest X-Ray Images dan Wang, X, 2014).
Berdasarkan Kriteria Gejala Covid-19 Pada bagian ini akan
Menggunakan Convolutional Neural menjelaskan tahapan-tahapan dari
Network”. Penelitian ini dilakukan proses klasifikasi penyakit TBC dengan
untuk melakukan klasifikasi penyakit metode CNN. Tahap pertama akuisisi
covid-19. Penelitian ini menggunakan citra atau pengumpulan dataset, tahap
dataset terdiri dari 2 kelas yaitu kasus kedua preprocessing, tahap ketiga
positif COVID-19 dengan jumlah citra membuat arsitektur model
1200 data dan normal dengan jumlah convolutional neural network (CNN),
citra sebanyak 1341 data. Dataset tahap keempat melakukan pelatihan
dibagi menjadi 80% data latih dan 20% dataset, dan tahap kelima melakukan
data uji. Epochs yang digunakan testing program. Tahapan-tahapan
sebanyak 50. Hasil evaluasi tersebut disajikan pada gambar 1.
menunjukkan model yang digunakan
dapat menghasilkan akurasi 96% (Vina Tahap Pengambilan Citra
dan Ida, 2021). Tahap awal dimulai dengan
Dengan masih terdapat proses pengambilan data. Data yang
keterbatasan kemampuan manusia dikumpulkan berupa data citra paru
dalam mengklasifikasi hasil diagnosa grayscale yang terdiri dari 2 jenis yaitu,
penyakit paru dan dari hasil penelitian citra paru yang normal dan citra paru
sebelumnya maka penting adanya yang terkena TBC. Data citra paru
sebuah sistem yang mampu untuk diambil dari website kaggle.com.
mengklasifikasi hasil diagnosa tersebut. Seluruh data pada penelitian ini
Pada penelitian ini akan berjumlah 240 data dengan 120 data
mengimplementasikan model citra paru normal dan 120 data citra

2 UG JURNAL VOL.16 Edisi 04 April 2021


paru terkena TBC. Data yang diperoleh menggunakan filter pada layer untuk
disimpan pada penyimpanan lokal menghasikan feature map. Pemrosesan
komputer dan diunggah pada google layer pertama Conv2D dengan
drive dan dimasukan ke dalam folder kernel_size(3,3), fungsi aktivasi ReLu,
dengan nama tbc-xray dan sub dan input_shape(128,128,3), kemudian
foldernya dengan nama folder normal akan di proses kembali layer kedua
dan tbc. Proses pengambilan citra paru Conv2D dengan kernel_size(3,3). Citra
disajikan pada gambar 2. tersebut menggunakan 32 filter acak
dari program. Filter digunakan untuk
Tahap Preprocessing menentukan pola apa yang akan
Pada tahap ini, proses yang dilakukan selanjutnya , dimana nilai
dilakukan adalah memisahkan data matriks yang ada bergantung pada pola
citra paru untuk data latih dan data uji. tersebut. Tujuan dilakukannya
Sebelum memisahkan data, proses yang konvolusi pada data citra adalah untuk
dilakukan adalah mengubah ukuran meng-ekstraksi fitur dari citra input.
citra dan type data citra. Langkah- Konvolusi akan menghasilkan
langkah pada tahap Preprocessing transformasi linear dari data input
disajikan pada gambar 3. sesuai informasi spasial pada data.
Proses awal tahap Bobot pada layer tersebut
preprocessing adalah membaca dataset menspesifikasikan kernel konvolusi
yang telah disiapkan pada google drive yang digunakan, sehingga kernel
dengan library opencv. Setelah dataset konvolusi dapat dilatih berdasarkan
dibaca dilakukan resize gambar agar input pada CNN (I Wayan Suartika E.
semua resolusi pada data gambar P, Arya Yudhi Wijaya, dan Rully
menjadi ukuran yang sama, dan Soelaiman., 2016).
mempercepat proses training. Resolusi Pooling layer berfungsi untuk
yang digunakan adalah 128x128 piksel. mengurangi masukan secara spasial
Selanjutnya adalah membagi dataset atau mengurangi jumlah parameter.
yang digunakan untuk data latih Pooling layer yang digunakan adalah
sebanyak 80 dan 60 untuk data uji. MaxPooling. Max pooling membagi
Kemudian tipe data diubah menjadi output dari convolution layer menjadi
float32 pada x_train dan x_test. beberapa grid kecil lalu mengambil
Langkah terakhir pada tahap nilai maksimal dari setiap grid untuk
preprocessing adalah mengubah menyusun matriks citra yang telah
y_train dan y_test menjadi categorical. direduksi. Prosesnya dilakukan dengan
mengambil nilai piksel terbesar dari
Architectural Modeling dimensi yang ditentukan. Max pooling
Tahap Archtitrcutral Model dibuat yang digunakan adalah 2x2 dan stride
perancangan arsitektur Convolutional 2.
Neural Network (CNN) menggunakan Dropout adalah teknik regulasi
library Keras-Python. Arsitektur dibuat jaringan syaraf dimana beberapa neuron
secara bertahap menggunakan metode akan dipilih secara acak dan tidak
sekuensial. dipakai selama pelatihan (I Wayan
Convolution layer befungsi untuk Suartika E. P, Arya Yudhi Wijaya, dan
mengekstrak filter dari citra input dan Rully Soelaiman., 2016). Dropout
menghasilkan peta 2D atau peta fitur merupakan proses mencegah terjadinya
(feature map). Filter yang terkandung overfitting dan juga mempercepat
dalam lapisan lilitan memiliki panjang, proses learning dengan menghapus
tinggi, dan ketebalan sesuai dengan neuron secara acak sebesar 0.25 pada
saluran input data. Proses convolution proses pertama dan proses dropout

UG JURNAL VOL.16 Edisi 04 April 2021 3


kedua menghapus neuron secara acak Gradient Descent (SGD), epochs 50,
sebesar 0.5. dan learning rate 0.01.
Flattening adalah merubah
matriks yang ada di pooling layer Testing Program
menjadi vektor tunggal. Pooling masih Testing program dilakukan
berupa array 2 dimensi, kemudian setelah proses training dataset. Testing
diubah menjadi data satu dimensi single program ini berfungsi untuk
vector (I Wayan Suartika E. P, Arya mengiplementasikan ke dalam program
Yudhi Wijaya, dan Rully Soelaiman., unit prediksi dari hasil yang sudah
2016). didapatkan pada proses training serta
Fully – Connected Layer adalah mengevaluasi apakah model yang
lapisan dimana semua neuron aktivasi dibuat untuk mengklasifikasikan
dari lapisan sebelumnya terhubung penyakit TBC pada paru-paru dapat
semua dengan neuron di lapisan berjalan dengan baik atau tidak.
selanjutnya seperti halnya jaringan Akurasi yang didapatkan sebesar
saraf tiruan biasa. Setiap aktivasi dari 98.75%. Nilai akurasi sudah sangat
lapisan sebelumnya perlu diubah baik untuk dapat mengklasifikasikan
menjadi data satu dimensi sebelum antara penyakit TBC atau Normal.
dapat dihubungkan ke semua neuron di Testing ini dilakukan dengan
fully connected layer (I Wayan Suartika menggunakan metode Confusion
E. P, Arya Yudhi Wijaya, dan Rully Matrix untuk memberikan informasi
Soelaiman, 2016). Feature map yang perbandingan hasil klasifikasi yang
dihasilkan dari feature extraction layer dilakukan oleh sistem model dengan
masih berbentuk multidimensional hasil klasifikasi sebenarnya. Confusion
array, sehingga harus melakukan Matrix dapat diartikan sebagai suatu
“flatten” atau reshape feature map alat yang memiliki fungsi untuk
menjadi sebuah vektor agar bisa melakukan analisis apakah classifier
digunakan sebagai input dari fully- tersebut baik dalam mengenali tuple
connected layer. dari kelas yang berbeda. Pada
Softmax adalah sebuah fungsi aktivasi Confusion Matrix terdapat 4 kombinasi
yang di gunakan untuk permasalahan nilai prediksi dan nilai aktual yang
klasifikasi, fungsi aktivasi ini berbeda. Nilai dari TruePositive dan
digunakan pada output layer. Fungsi True-Negative memberikan informasi
softmax biasa digunakan pada layer ketika classifier dalam melakukan
terakhir dari Neural Network untuk klasifikasi data bernilai benar,
mengklasifikasi atau mengelompokkan sedangkan FalsePositive dan False-
lebih dari 2 kelas (Yin, X., Goudriaan, Negative memberikan informasi ketika
J., Lantinga, E. A, Vos, L, dan Spiertz, classifier salah dalam melakukan
H. J, 2003). klasifikasi data. Kombinasi nilai dari
confusion Matrix dapat dilihat pada
Training Dataset Tabel 1.
Training dataset adalah sebuah Terdapat 4 istilah sebagai
proses pembuatan model yang representasi hasil proses klasifikasi
digunakan untuk membuat prediksi dan pada confusion matrix yaitu:
menjalankan fungsi dari algoritma
convolutional neural network. True Positive (TP)
Parameter yang digunakan untuk Merupakan data positif yang
mengoptimalkan model dari algoritma diprediksi benar. Contohnya, hasil
tersebut adalah optimizer Stochastic rontgen pasien menderita TBC (class
0) dan dari model yang dibuat

4 UG JURNAL VOL.16 Edisi 04 April 2021


memprediksi pasien tersebut memproses gambar yang akan di
menderita TBC (class 0). prediksi, dan button Clear berfungsi
untuk membersihkan canvas dan label
True Negative (TN) hasil prediksi. Tampilan Utama aplikasi
Merupakan data negatif yang dapat dilihat pada gambar 7, sedangkan
diprediksi benar. Contohnya, hasil untuk tampilan hasil prediksi disajikan
rontgen pasien tidak menderita TBC pada gambar 8.
(class 1) dan dari model yang dibuat
memprediksi pasien tersebut tidak HASIL DAN PEMBAHASAN
menderita TBC (class 1). Implementasi Model
Convolutional Neural Network (CNN)
False Postive (FP) untuk Klasifikasi Penyakit TBC
Merupakan data negatif namun Berbasis Dekstop merupakan salah satu
diprediksi sebagai data positif. model yang digunakan untuk
Contohnya, hasil rontgen pasien tidak mengidentifikasi seseorang mempunyai
menderita TBC (class 1) tetapi dari penyakit TBC atau tidak. Untuk
model yang telah memprediksi pasien mengetahui hasil dari implementasi
tersebut menderita TBC(class 0). model tersebut perlu dilakukan uji coba
aplikasi.
False Negative (FN)
Merupakan data positif namun Uji Coba Aplikasi
diprediksi sebagai data negatif. Uji coba aplikasi dari model
Contohnya, hasil rontgen pasien CNN yang diimplementasikan
menderita TBC (class 0) tetapi dari menggunakan data aktual sebanyak 15
model yang dibuat memprediksi citra x-ray yang terdiri dari 8 citra x-ray
pasien tersebut tidak menderita TBC normal dan 7 citra x-ray TBC. Hasil
(class 1). Berikut confusion matrix uji coba aplikasi disajikan pada tabel 2.
yang telah dibuat terdapat pada Pada Tabel 2, kolom 2 adalah citra x-
gambar 6. ray dari data aktual hasil rontgen paru-
paru manusia. Pada kolom 3 adalah
Perancangan Tampilan Aplikasi hasil dari sistem yang memprediksi
Tampilan aplikasi terdiri dari dari citra x-ray dengan model CNN
tampilan utama dan tampilan hasil Pada yang diimplementasikan. Sedangkan
tampilan aplikasi terdapat beberapa pada kolom 4 adalah hasil nyata
komponen yang digunakan yaitu canvas (aktual) dari citra x-ray. Dari kolom 3
yang berfungsi untuk menampilkan dan 4 bahwa secara sistem maupun
gambar yang telah dipilih untuk secara aktual dengan jumlah data
pendeteksian penyakit TBC atau sebanyak 15, hasilnya adalah sesuai
Normal. Label berfungsi untuk dan diterangkan pada kolom 5.
menunjukan hasil prediksi penyakit
TBC. Button Select & Process
berfungsi untuk memilih dan

UG JURNAL VOL.16 Edisi 04 April 2021 5


Pengambilan Preprocessing Architectural
Citra Modelling

Testing Pelatihan Data


Program Set
Gambar 1. Tahapan Umum Proses Klasifikasi Penyakit TBC

Gambar 2. Proses Pengambilan Citra Paru

Gambar 3. Tahap Preprocessing

Gambar 4. Arsitektur CNN

6 UG JURNAL VOL.16 Edisi 04 April 2021


Gambar 5. Hasil dari nilai akurasi

Tabel 1.
Model Confusion Matrix
Nilai prediksi Nilai sebenarnay
True False
True TP (true positif) FP(false negative)
False FN (false negative) TN (true negative)
Sumber: J. Han dan M. Kamber (2006).

Gambar 6. Hasil dari Confusion Matrix Akurasi

Gambar 7. Tampilan Awal Aplikasi

UG JURNAL VOL.16 Edisi 04 April 2021 7


Gambar 8. Tampilan Hasil Prediksi Matrix Akurasi

Tabel 2.
Hasil Uji Coba Deteksi Penyakit TBC
No Gambar Sistem Aktual Keterangan
1 Normal Normal Sesuai

2 TBC TBC Sesuai

3 TBC TBC Sesuai

4 Normal Normal Sesuai

5 Normal Normal Sesuai

6 Normal Normal Sesuai

7 TBC TBC Sesuai

8 TBC TBC Sesuai

9 TBC TBC Sesuai

10 Normal Normal Sesuai

11 Normal Normal Sesuai

12 TBC TBC Sesuai

13 Normal Normal Sesuai

8 UG JURNAL VOL.16 Edisi 04 April 2021


Tabel 2 lanjutan
14 Normal Normal Sesuai

15 TBC TBC Sesuai

KESIMPULAN DAN SARAN J. Han and M. Kamber. (2006). Data


Berdasarkan hasil dari Mining: Concepts and Techniques
penelitian yang telah dilakukan, (2nd Edition). San Francisco:
implementasi model Convolusional Elsevier.
Neural Network untuk klasifikasi Li, W., Zhao, R., Xiao, T., dan Wang,
penyakit TBC menunjukkan bahwa X. (2014). Deepreid: Deep filter
hasil pengujian model dengan pairing neural network for person
menggunakan 240 data yang terdiri dari re-identification. In The IEEE
160 data latih dan 80 data uji dengan Conference on Computer Vision and
50 epochs mendapatkan akurasi hasil Pattern Recognition (CVPR).
sebesar 98.75%. Uji coba aplikasi dari P. G. Zimmermann dan B. B.
model CNN yang diimplementasikan Hammond, (2017), Sheehy's
menggunakan 15 citra x-ray yang Emergency and Disaster Nursing -
terdiri dari 8 citra x-ray normal dan 7 1st Indonesian Edition, Elsevier
citra x-ray TBC memperoleh hasil Health Sciences.
bahwa semua prediksi menunjukan Vina A dan Ida N. (2021). Klasifikasi
hasil yang sesuai. Dalam penelitian ini Chest X-Ray Images Berdasarkan
dataset yang digunakan masih sedikit. Kriteria Gejala Covid-19
Untuk itu disarankan pada Menggunakan Convolutional Neural
pengembangan selanjutnya dapat Network, JSAI: Journal Scientific
menambahkan data set citra x-ray TBC and Applied Informatics Vol. 4, No.
dan citra x-ray Normal agar 2.
mendapatkan hasil yang lebih Xinyou Yin., Jan Goudriaan, Egbert A
maksimal. Lantinga, Jan Vos, dan Huub J
Spiertz. (2003). A flexible sigmoid
DAFTAR PUSTAKA function of determinate growth.
Abdul Hamid. (2019). Klasifikasi Annals of Botany (Lond) , 2003
Penyakit Tuberculosis Dan May;91(6):753. Doi:
Pneumonia Pada Paru-Paru 10.1093/aob/mcg029.
Manusia Berdasarkan Citra Chest
X-Ray Menggunakan Convolutional
Neural Network. Tugas Akhir,
Program Studi Matematika, Fakultas
Sains dan Teknologi, UIN Syarif
Hidayatullah Jakarta.
I Wayan Suartika E. P, Arya Yudhi
Wijaya, dan Rully Soelaiman.
(2016). Klasifikasi Citra
Menggunakan Convolutional Neural
Network (Cnn) pada Caltech 101,
Jurnal Teknik ITS Vol. 5, No. 1.

UG JURNAL VOL.16 Edisi 04 April 2021 9

Anda mungkin juga menyukai