BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10....

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

Transcript of BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10....

Page 1: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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.

Page 2: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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.

Page 3: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 4: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 5: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 6: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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.

Page 7: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 8: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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.

Page 9: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 10: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 11: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 12: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 13: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 14: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 15: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 16: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

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

Page 17: BAB IV HASIL DAN PEMBAHASAN 4.1 Kebutuhan Sistemeprints.umm.ac.id/67326/5/BAB IV.pdf · 2020. 10. 2. · 4.1 Kebutuhan Sistem Dalam proses implementasi penelitian yang dilakukan,

32

5 Proposed

Classification

Method

Glioma, Meningioma,

Pituitary (Augmentation)

97,65% CNN