bab iv hasil dan pembahasan 4.1 kebutuhan sistemeprints.umm.ac.id/67326/5/bab iv.pdf · 2020. 10....
TRANSCRIPT
16
BAB IV
HASIL DAN PEMBAHASAN
4.1 Kebutuhan Sistem
Dalam proses implementasi penelitian yang dilakukan, sistem dibangun
dengan pengujian menggunakan spesifikasi perangkat keras dan perangkat lunak
sebagai berikut:
a. Laptop Lenovo Ideapad 320 dengan spesifikasi:
• Intel Core i7-7500U 2.70-3.50GHz
• Memori 8GM RAM
b. Sistem Operasi Windows 10 64-bit
c. Jupyter notebook
d. Python 3.6
4.2 Dataset
Tahapan awal sebelum mengimplementasikan sistem adalah memisahkan
dataset berdasarkan jenis tumornya. Kemudian data tersebut akan dipisahkan lagi
menjadi tiga bagian yaitu data imbalance dengan rincian 1426 citra untuk jenis tumor
Glioblastoma, 708 citra untuk Meningioma, dan 930 citra untuk jenis tumor
Pituitary. Data yang digunakan pada klasifikasi ini terdapat 3 jenis yaitu data
balance, data imbalance, dan data augmentasi. Ketiga jenis data ini dibagi lagi
menjadi dua bagian lagi yaitu data training dan data test, dimana data training
digunakan untuk bahan dari tahapan pelatihan model sedangkan data test digunakan
untuk bahan pengujian model yang berfungsi untuk menilai performa model yang
dibuat.
4.2.1 Data Balance
Data balance yang dimaksud pada penelitian ini adalah data yang berjumlah
imbang per kategori tumor otak dimana berjumlah 708 untuk tumor Glioblastoma,
Meningioma, dan Pituitary. Dataset ini dilakukan balancing dari jenis data yang
sama dari data yang digunakan pada data imbalance. Kemudian setelah dilakukan
balancing menjadi 708 gambar per kategori langkah selanjutnya yang dilakukan
adalah memisahkan data train dan data test dimana perbandingannya adalah 20%
data testing dan 80% data train dan dilakukan secara manual dan bersifat acak.
17
4.2.2 Data Imbalance
Data imbalance yang dimaksud pada penelitian ini adalah data dari sumber
yang didapatkan dimana jumlah gambar per kategori tidak seimbang, maka dari itu
dinamakan data imbalance. Data yang digunakan berjumlah 1426 citra untuk jenis
tumor Glioblastoma, 708 citra untuk Meningioma, dan 930 citra untuk jenis tumor
Pituitary. Kemudian langkah selanjutnya yang dilakukan adalah memisahkan data
train dan data test dimana perbandingannya adalah 20% data testing dan 80% data
train dan dilakukan secara manual dan bersifat acak.
4.2.3 Data Augmentasi
Data augmentasi yang dimaksud pada penelitian ini adalah melakukan suatu
teknik manipulasi pada data yang ada tanpa kehilangan inti dari data tersebut.
Augmentasi yang dilakukan pada penelitian ini adalah dengan membalik di sekitar
sumbu x kemudian melakukan mirroring kanan dan kiri, menambahkan salt noise
dan merotasi gambar sebesar 45 derajat. Data yang diaugmentasi diambil dari data
imbalance yang berjumlah 1426 citra untuk jenis tumor Glioblastoma, 708 citra
untuk Meningioma, dan 930 citra untuk jenis tumor Pituitary sehingga
menghasilkan hasil akhir sebesar 15,320 data. Kemudian langkah selanjutnya yang
dilakukan adalah memisahkan data train dan data test dimana perbandingannya
adalah 20% data testing dan 80% data train dan dilakukan secara manual dan
bersifat acak. Contoh data yang telah dilakukan augmentasi dapat dilihat pada
Gambar 8 dibawah.
4.3 Data Preprocessing
Sebelum data yang didapatkan bisa diolah, maka dilakukan tahapan
preprocessing yang utama yaitu mengekstraksi data berformat .mat menjadi .jpg agar
dihasilkan data berupa gambar seperti yang diharapkan. Kemudian sebelum gambar
dapat dimasukkan ke dalam struktur yang diusulkan langkah selanjutnya yang
dilakukan adalah dengan mengubah piksel awal gambar dari 512 x 512 menjadi 128
(a) (b) (c) (d) (e)
Gambar 10. Contoh data yang telah di Augmentasi. (a) Gambar asli, (b) Dilakukan
mirroring pada gambar, (c) Dilakukan rotasi 45 derajat pada gambar, (d) Memberikan
noise pada gambar, (e) Dilakukan flip pada gambar.
18
x 128. Hal ini dilakukan guna membantu kinerja model untuk melakukan kinerja
yang lebih tepat dalam waktu yang relatif rendah. Kemudian data berupa gambar
yang telah dikelompokkan berdasarkan jenisnya dibagi secara acak menjadi data
testing dan data training dengan jumlah presentase 20% data testing dan 80% data
training secara manual.
4.4 Memuat Dataset
Pada tahapan ini akan dilakukan pemuatan dataset dalam sistem yang akan dibangun
menggunakan jupyter notebook.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from keras.preprocessing.image import ImageDataGenerator
train_datagen = ImageDataGenerator( rescale = 1./255,
shear_range = 0.2,
zoom_range=0.2,
horizontal_flip=True)
test_datagen = ImageDataGenerator(rescale = 1./255)
training_set =
train_datagen.flow_from_directory('D:\DATA_ASLI\TRAIN',
target_size=(128,128),
color_mode="rgb",shuffle=False,batch_size = 32,
class_mode='categorical')
testing_set =
test_datagen.flow_from_directory('D:\DATA_ASLI\TEST',
target_size=(128,128),
color_mode="rgb",shuffle=False, batch_size = 32,
class_mode='categorical')
Gambar 11. Source Code Untuk Memuat Dataset Dalam Sistem
Pada baris 2, hasil source code ini digunakan untuk memuat data gambar
yang sebelumnya sudah di proses pada ImageDataGenerator dan menampilkan total
gambar sesuai masing" kategori kelasnya.
4.5 Model CNN
Tahap ini merupakan pembuatan model CNN pada sistem yang akan dibuat.
Model yang digunakan pada penelitian ini menggunakan dua jenis model yang
berbeda, dimana untuk pengujian data balance dan imbalance menggunakan
skema1 dan data augmentasi menggunakan skema2. Sebelum model dibuat, hal
utama yang dilakukan yaitu mengimport library.
1
2
3
4
from keras.models import Sequential
from keras.layers import Dense, Flatten, Conv2D, MaxPooling2D
# Helper libraries
import numpy as np
19
5
6
7
8
9
10
import pandas as pd
import matplotlib.pyplot as plt
import cv2
import glob
from sklearn.model_selection import train_test_split
from sklearn import preprocessing
Gambar 12. Source Code Import Library
4.5.1 Model Skema 1
Model ini digunakan untuk pengujian terhadap data balance dan data
imbalance, dimana data balance berjumlah 708 gambar dari tiap-tiap jumlah
tumor sehingga diperoleh jumlah akhir 2124. Sedangkan data imbalance
berjumlah 1426 citra untuk jenis tumor Glioblastoma, 708 citra untuk
Meningioma, dan 930 citra untuk jenis tumor Pituitary.
1
2
3
4
5
6
7
8
9
10
11
12
#Build The CNN
model = Sequential() #Create the architecture
model.add(Conv2D(64, (5, 5), activation='relu',
input_shape=(128,128,3)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64, (5, 5), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(32, (5, 5), activation='relu'))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dense(128, activation='relu'))
model.add(Dense(3, activation='softmax'))
Gambar 13. Source Code Model Skema 1
Pada tabel 7 telah dijabarkan source code yang digunakan untuk membuat
model CNN dengan keterangan sebagai berikut:
a. Menambahkan sequential untuk model neural network yang berupa
sequential network. Hal ini merupakan dasar dari inisialisasi neural
network.
b. Dilanjutkan dengan menambahkan Convolution2D layer, layer convolusi2d
digunakan pada data berupa gambar, hal ini berfungsi untuk mengenali
gambar berdasarkan piksel-piksel yang terdapat pada gambar, dengan
menggunakan fungsi activation relu. Pada tahap ini parameter filter diisikan
sebanyak 64, artinya jumlah filter yang dikeluarkan dalam proses konvolusi
sebanyak 64 dengan ukuran 5x5 (kernel_size=(5, 5)). Kemudian
input_shape(128, 128, 3) ini berarti semua ukuran gambar yang masuk ke
20
dalam input layer berukuran 128x128 pixels dan berukuran 3 lapisan warna
dalam bentuk matriks. Activation yang digunakan yaitu ReLu (Rectifier
Linear Unit) hal ini dikarenakan fungsi ini adalah fungsi yang umum
digunakan untuk CNN.
c. Dilanjutkan dengan menambahkan MaxPooling2D layer yang digunakan
untuk mengurangi resolusi gambar dengan tetap mempertahankan informasi
pada gambar, cara kerja maxpooling2d layer adalah dengan mengambil nilai
maximum dari data yang diolah. Dimana ukuran pooling adalah 2x2. Dengan
demikian, analisisnya akan lebih cepat karena ukuran feature maps yang
kecil.
d. Line 6,7,8 merupakan proses yang digunakan untuk mempertajam dan
meningkatkan performa dari model CNN yang telah dibuat, dengan
menambahkan layer proses convolution2d dan maxpooling2d. Dengan
menambahkan proses ini hasil feature maps setelah maxpooling pada line
selanjutnya akan menghasilkan hasil yang lebih detail pada feature maps
yang baru. Kemudian dilakukan maxpooling guna memperkecil ukuran.
Dengan ini feature yang ditangkan benar-benar berisi dan compact.
e. Kemudian dilanjutkan dengan memberi flatten. Dengan perintah ini maka
semua matriks menjadi berukuran single vector yang akan menjadi inputan
bagi neural network di depan.
f. Langkah selanjutnya adalah memberi dense atau menambah hidden layer.
Pada line 11 tertulis sebesar 128 ini artinya terdapat 128 neuron yang ada
pada layer ini. Kemudian parameter selanjutnya adalah activation=’relu’.
g. Selanjutnya line 12 merupakan pendefinisian output layer. Karena jenis
datanya berupa kategori (glioma, meningioma, pituitary) maka terdapat 3
neuron sesuai dengan banyaknya macam label pada dataset. Ada dua jenis
buat prediksi label dari neural network, sigmoid dan softmax, untuk data
kategori yang digunakan adalah softmax.
4.5.2 Model Skema 2
Model ini digunakan untuk pengujian terhadap data augmentasi dimana
data augmentasi ini diambil dari data imbalance yang berjumlah 3064.
Proses augmentasi yang dilakukan adalah dengan melakukan flip, kemudian
melakukan mirroring kanan / kiri, menambahkan salt noise, dan melakukan
21
rotasi gambar sebesar 45 derajat. Dengan melakukan proses augmentasi ini
maka hasil akhir yang didapatkan berjumlah 15320 citra.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#Build The CNN
from keras.layers import Dense, Flatten, Conv2D, MaxPooling2D,
Dropout
model = Sequential()
model.add(Conv2D(64, (5, 5), activation='relu',
input_shape=(128,128,3)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64, (5, 5), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(32, (5, 5), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dropout(0.2))
model.add(Dense(1028, activation='relu'))
model.add(Dense(512, activation='relu'))
model.add(Dense(256, activation='relu'))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(3, activation='softmax'))
Gambar 14. Source Code Model Skema 2
Pada tabel 8 telah dijabarkan source code yang digunakan
untuk membuat model CNN skema 2 dengan keterangan sebagai berikut:
a. Menambahkan sequential untuk model neural network yang berupa
sequential network. Hal ini merupakan dasar dari inisialisasi neural
network.
b. Dilanjutkan dengan menambahkan Convolution2D layer, layer convolusi2d
digunakan pada data berupa gambar, hal ini berfungsi untuk mengenali
gambar berdasarkan piksel-piksel yang terdapat pada gambar, dengan
menggunakan fungsi activation relu. Pada tahap ini parameter filter diisikan
sebanyak 64, artinya jumlah filter yang dikeluarkan dalam proses konvolusi
sebanyak 64 dengan ukuran 5x5 (kernel_size=(5, 5)). Kemudian
input_shape(128, 128, 3) ini berarti semua ukuran gambar yang masuk ke
dalam input layer berukuran 128x128 pixels dan berukuran 3 lapisan warna
dalam bentuk matriks. Activation yang digunakan yaitu ReLu (Rectifier
Linear Unit) hal ini dikarenakan fungsi ini adalah fungsi yang umum
digunakan untuk CNN.
22
c. Dilanjutkan dengan menambahkan MaxPooling2D layer yang digunakan
untuk mengurangi resolusi gambar dengan tetap mempertahankan informasi
pada gambar, cara kerja maxpooling2d layer adalah dengan mengambil nilai
maximum dari data yang diolah. Dimana ukuran pooling adalah 2x2. Dengan
demikian, analisisnya akan lebih cepat karena ukuran feature maps yang
kecil.
d. Line 6,7,8 merupakan proses yang digunakan untuk mempertajam dan
meningkatkan performa dari model CNN yang telah dibuat, dengan
menambahkan layer proses convolution2d dan maxpooling2d. Dengan
menambahkan proses ini hasil feature maps setelah maxpooling pada line
selanjutnya akan menghasilkan hasil yang lebih detail pada feature maps
yang baru. Kemudian dilakukan maxpooling guna memperkecil ukuran.
Dengan ini feature yang ditangkan benar-benar berisi dan compact.
e. Kemudian dilanjutkan dengan memberi flatten. Dengan perintah ini maka
semua matriks menjadi berukuran single vector yang akan menjadi inputan
bagi neural network di depan.
f. Selanjutnya terdapat perintah dropout yang berfungsi untuk mengurangi
overfitting pada model yang dibuat.
g. Langkah selanjutnya adalah memberi dense atau menambah hidden layer.
Pada line 11 tertulis sebesar 1028, 512, 256, 128 ini artinya terdapat 1028
neuron yang ada pada layer pertama kemudian 512 neuron pada layer kedua
kemudian 256 pada layer ke 3 dan 128 neuron pada layer ke 4. Kemudian
parameter selanjutnya adalah activation=’relu’.
h. Selanjutnya line 12 merupakan pendefinisian output layer. Karena jenis
datanya berupa kategori (glioma, meningioma, pituitary) maka terdapat 3
neuron sesuai dengan banyaknya macam label pada dataset. Ada dua jenis
buat prediksi label dari neural network, sigmoid dan softmax, untuk data
kategori yang digunakan adalah softmax.
4.6 Data Training
Pada tahap ini dilakukan pelatihan model terhadap dataset yang telah ada.
Fungsi dari dilakukannya data training agar yaitu membuat prediksi atau
menjalankan fungsi dari sebuah model yang akan dibangun. Pada dasarnya algoritma
23
pada mesin perlu mencari korelasi atau belajar pola dari data yang telah diberikan
yaitu data training.
1
2
3
4
5
6
7
start_time = time.time()
baseline_history = model.fit_generator(training_set,
steps_per_epoch=100,
epochs=50,
validation_data=testing_set,
validation_steps=50)
stop_time = time.time()
Gambar 15. Source Code Training Data
Proses training dijalankan pada model.fit.generator, pada model.fit.generator
terdapat step per epoch yaitu batch size untuk tiap tiap epoch, dimana batch size =
100, dan epoch terdiri dari 50 iterasi, kegunaan validation_data yaitu untuk
memvalidasi model berdasarkan testing set. Kemudian pada validation steps terdapat
batch size 50 per epoch.
4.7 Pelatihan dan Pengujian Model beserta Confusion Matrix
4.7.1 Pelatihan Model Skema 1
Pada model ini loss function yang digunakan adalah loss function
categorical cross-entropy hal ini dilakukan untuk menghitung kesalahan
model selama proses optimasi. Model ini dilatih selama 100 epoch.
1
2
3
model.compile(optimizer='adam',
loss='categorical_crossentropy',
metrics=['accuracy'])
Gambar 16. Source Code Fitting Model Network
Setelah model telah dibuat maka proses selanjutnya adalah melakukan
proses pelatihan menggunakan data training dan diuji menggunakan data test
yang telah dipersiapkan sebelumnya.
4.7.1.1 Pelatihan Model Skema 1 pada Data Balance
Grafik nilai accuracy dan loss pada tahap pelatihan model skema 1
dengan menggunakan data uji balance dapat dilihat pada Gambar 15 dan
Gambar 16, kemudian confusion matrix dapat dilihat pada Gambar 17 yang
tertera di bawah.
24
Pada trend grafik akurasi model dari data train dan data testing jika
dilihat dari epoch 1 sampai 100 dominan naik, namun juga ada penurunan
pada epoch tertentu, kenaikan dan penurunan akurasi model terjadi karena
data yang diprediksi benar setiap iterasi selalu berbeda atau naik turun.
Pergerakan akurasi yang dihasilkan pada data test maupun train hampir stabil
hal ini kemungkinan disebabkan oleh jumlah data yang sama pada tiap
kelompok tumor.
Pada Gambar 16 diatas terlihat data train mengalami penururan dari
epoch 1 hingga 100. Hal ini disebabkan karena fungsi loss yang diterapkan
membuat model memiliki loss yang lumayan kecil.
Gambar 17. Grafik Akurasi Data Uji Balance Skema 1
Gambar 18. Grafik Loss Data Balance Skema 1
25
4.7.2 Pelatihan Model Skema 2
Pada model ini loss function yang digunakan adalah sama seperti model
skema1 yaitu loss function categorical cross-entropy hal ini dilakukan untuk
menghitung kesalahan model selama proses optimasi. Model ini dilatih
selama 100 epoch.
1
2
3
model.compile(optimizer='adam',
loss='categorical_crossentropy',
metrics=['accuracy'])
Gambar 20. Source Code Fitting Model Network
Setelah model telah dibuat maka proses selanjutnya adalah melakukan
proses pelatihan menggunakan data training dan diuji menggunakan data test
yang telah dipersiapkan sebelumnya.
4.7.2.1 Pelatihan Model Skema 2 pada Data Imbalance
Grafik nilai accuracy dan loss pada tahap pelatihan model skema
2 dengan menggunakan data uji imbalance dapat dilihat pada Gambar
21 dan Gambar 22, kemudian confusion matrix dapat dilihat pada
Gambar 23 yang tertera di bawah.
Gambar 19. Confusion Matrix Data Balance Skema 1
Gambar 21. Grafik Akurasi Data Imbalance Skema 2
26
Pada trend grafik akurasi jika dilihat dari epoch 1 sampai 100
nampak data testing pergerakannya mengalami penurunan yang
signifikan. Kemungkinan hal ini disebabkan oleh kurang seimbangnya
jumlah data yang ada pada tiap tiap kelompok atau jenis data tumor yang
digunakan.
Pada trend grafik loss garis biru menunjukkan pergerakan untuk
data train sedangkan garis berwarna oranye menunjukkan pergerakan
nilai loss untuk data test. Grafik tersebut menunjukkan nilai loss yang
mengalami penurunan mulai dari epoch 1 hingga epoch 100 pada data
train, sedangkan nilai loss untuk data test mengalami naik dan kemudian
mengalami penurunan pada epoch ke 100 hal ini disebabkan karena
fungsi loss yang mungkin kurang cocok atau tidak bekerja dengan baik
pada datanya.
Gambar 22. Grafik Loss Data Imbalance Skema 2
Gambar 23. Confusion Matrix Data Imbalance Skema 2
27
4.7.2.3 Pelatihan Model Skema 2 pada Data Augmentasi
Grafik nilai accuracy dan loss pada tahap pelatihan model skema
2 dengan menggunakan data uji augmentasi dapat dilihat pada Gambar
24 dan Gambar 25, kemudian confusion matrix dapat dilihat pada
Gambar 26 yang tertera di bawah.
Grafik yang terdapat pada Gambar 18 menunjukan hasil nilai
akurasi yang dihasilkan ketika menggunakan data latih dan data uji
pada data augmentasi yang dilakukan pada model skema 2. Nampak
tren dari data test mengalami kenaikan pada akhir epoch. Hal ini
menjadikan skema 2 menjadi skema terbaik untuk data uji
augmentasi.
Gambar 24. Grafik Akurasi Data Uji Augmentasi Skema 2
Gambar 25. Grafik Loss Data Uji Augmentasi Skema 2
28
Pada trend grafik loss model diatas garis biru menunjukkan
pergerakan untuk data train sedangkan garis berwarna oranye
menunjukkan pergerakan nilai loss untuk data test. Grafik diatas
menunjukkan nilai loss yang mengalami naik turun mulai dari awal
hingga akhir, dan pada akhirnya mengalami kenaikan. Mungkin saja
hal ini terjadi karena model mengalami underfitting.
4.8 Perbandingan Model
Berikut merupakan perbandingan model skema1 dan skema2 setelah
dilakukan beberapa kali trial and error sehingga menghasilkan output yang
diharapkan.
Tabel 2. Perbandingan Model Skema1 dan Model Skema2
Model Skema1 Model Skema2
Menggunakan arsitektur sequential Menggunakan arsitektur sequential
Terdapat 2 max pooling layer Terdapat 3 max pooling layer
Terdapat 2 hidden layer (dense) Terdapat 4 hidden layer (dense)
Tidak terdapat dropout layer Terdapat dropout layer
Menggunakan adam optimizer Menggunakan adam optimizer
Berdasarkan trial and error yang merujuk pada tabel 16 jawaban terbaik yang
didapatkan untuk jenis data balance dan imbalance adalah menggunakan model
skema1 sedangkan untuk jenis data augmentasi model yang digunakan adalah model
skema2 karena ditemukan akurasi yang baik ketika ditambahkan 4 hidden layer dan
dropout layer.
Gambar 27. Confusion Matrix Data Augmentasi Skema 2
Gambar 26. Confusion Matrix Data Augmentasi Skema 2
29
4.9 Evaluasi
Evaluasi yang dilakukan pada penelitian ini adalah menampilkan perhitungan
precision, recall dan accuracy dari hasil klasifikasi data test yang dilakukan, hasil
evaluasinya adalah berbentuk bilangan desimal.
Tabel 3. Evaluasi Data Balance Skema 1
Glioma Meningioma Pituitary
Precision 0,68 0,63 0,84
Recall 0,62 0,64 0,91
F1-score 0,65 0,64 0,87
Tabel 4. Evaluasi Data Imbalance Skema 2
Glioma Meningioma Pituitary
Precision 0,69 0,53 0,74
Recall 0,81 0,51 0,52
F1-score 0,74 0,52 0,80
Tabel 5. Evaluasi Data Augmentasi Skema 2
Glioma Meningioma Pituitary
Precision 0,97 0,97 0,98
Recall 0,98 0,94 0,95
F1-score 0,98 0,95 0,99
4.10 Hasil Penelitian
4.10.1 Hasil Akurasi Terbaik
Berdasarkan trial and error yang dilakukan dalam membangun sebuah
model yang mengacu pada presentase pengukuran model pada data test
berdasarkan akurasinya maka didapatkan hasil seperti yang tertera pada Tabel
6 dibawah.
Jenis Data Hasil Skema Epoch
Balance 0,72 Skema 1 100
Imbalance 0,70 Skema 2 100
30
Tabel 6. Hasil Pengujian pada Data Uji Balance, Imbalance, Augmentasi
4.10.2 Pengaruh Jumlah Epoch
Pada penelitian yang dilakukan oleh Royani Darma dan Gunawan Ariyanto
dikatakan bahwa semakin banyak jumlah epoch maka semakin baik persentase
akurasi data yang dihasilkan[28], berdasarkan keterangan tersebut maka peneliti
melakukan hal yang sama yaitu menguji sistem pada epoch 50 dan 100
kemudian dari hasil yang didapat disimpulkan bahwa jumlah epoch sangat
mempengaruhi akurasi, hal ini bisa terjadi karena banyak faktor diantaranya
bergantung pada jenis dataset, jumlah dataset, dan seperti apa model CNN yang
dibangun. Perbandingan hasil akurasi data test pada tiap skema berdasarkan
epoch yang digunakan dapat dilihat pada Tabel 7 dibawah dimana hasil akurasi
yang digunakan ditandai dengan huruf yang tebal.
Tabel 7. Perbandingan Hasil Akurasi Data Test Skema 1 dan Skema 2
berdasarkan Epoch
Jenis Data Uji Epoch Akurasi
Skema 1 Skema 2
Balance 50 0,70 0,71
Balance 100 0,72 0,33
Imbalance 50 0,68 0,68
Imbalance 100 0,45 0,70
Augmentasi 50 0,79 0,74
Augmentasi 100 0,94 0,97
4.11 Perbandingan Hasil dengan Penelitian Sebelumnya
Berikut merupakan hasil perbandingan penelitian yang dilakukan dengan
beberapa penelitian yang telah dilakukan sebelumnya.
a) Author: Sunanda Das, O.F.M. Riaz Rahman Aranya, Nishat Nayla Labiba
Dataset: Meningoma (708 images), Glioma (1426 images), Pituitary (930
images) / Data Imbalance.
Augmentasi 0,97 Skema 2 100
31
Tabel 8. Perbandingan Hasil Penelitian Data Uji Imbalance
Glioma Meningioma Pituitary
Penelitian
Sebelumnya
Penelitian
Sekarang
Penelitian
Sebelumnya
Penelitian
Sekarang
Penelitian
Sebelumnya
Penelitian
Sekarang
Precision 0,88 0,69 0,94 0,53 0,98 0,93
Recall 0,85 0,81 0,95 0,51 0,99 0,70
F1-score 0,87 0,74 0,94 0,52 0,99 0,80
Final
Accuracy
Penelitian Sebelumnya: 0,94
Penelitian Sekarang: 0,70
b) Author: Hossam H. Sultan, Nancy M Salem
Dataset: Meningoma (708 images), Glioma (1426 images), Pituitary (930
images) dilakukan augmentasi terhadap data tersebut sehingga jumlah
data menjadi 15,320 data.
Tabel 9. Perbandingan Hasil Penelitian Data Uji Augmentasi
Glioma Meningioma Pituitary
Penelitian
Sebelumnya
Penelitian
Sekarang
Penelitian
Sebelumnya
Penelitian
Sekarang
Penelitian
Sebelumnya
Penelitian
Sekarang
Precision 0,97 0,97 0,95 0,97 0,95 0,98
Recall 0,94 0,98 0,95 0,94 0,93 0,95
F1-score 0,95 0,98 0,98 0,95 0,97 0,99
Final
Accuracy
Penelitian Sebelumnya: 0,94
Penelitian Sekarang: 0,97
Tabel 10. Perbandingan Hasil Dengan Penelitian Sebelumnya
Model Dataset Accuracy Classification
Method
1 Jajang Sofian
et al.[22].
Benign, Maligna
(Imbalance)
83,33% KNN
2 Mustafa R.
Ismael et
al.[23]
Glioma, Meningioma,
Pituitary (Imbalance)
91,28% Back-propagation
Neural Network
3 Sunanda Das
et al. [3]
Glioma, Meningioma,
Pituitary (Imbalance)
93,33% CNN
4 Hossam H.
Sultan et
al.[2]
Glioma, Meningioma,
Pituitary (Augmentation)
96,13% CNN
32
5 Proposed
Classification
Method
Glioma, Meningioma,
Pituitary (Augmentation)
97,65% CNN