You are on page 1of 15

Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210

Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

Pengaruh Preprocessing Terhadap Klasifikasi


Diabetic Retinopathy dengan Pendekatan Transfer
Learning Convolutional Neural Network
http://dx.doi.org/10.28932/jutisi.v7i1.3327
Riwayat Artikel
Received: 24 Januari 2021 | Final Revision: 25 Februari 2021 | Accepted: 4 Maret 2021

Juan Elisha Widyaya#1, Setia Budi*2


#
Magister Ilmu Komputer, Universitas Kristen Maranatha
Jl. Prof. Drg. Surya Sumantri, MPH 65. Bandung
1mi1979006@student.it.maranatha.edu

2setia.budi@it.maranatha.edu

Abstract —Diabetic retinopathy (DR) is eye diseases caused by memeriksa citra fundus retina secara seksama. Proses
diabetic mellitus or sugar diseases. If DR is detected in early pemeriksaan seperti ini cukup memakan waktu [3]. Belum
stages, the blindness that follows can be prevented. lagi perbandingan antara jumlah pasien potensial dan
Ophthalmologists or eye clinicians usually decide the stage of ketersediaan tenaga medis tidak seimbang, sehingga
DR from retinal fundus images. Careful examination of retinal
fundus images is a time-consuming task and requires
mendorong kebutuhan adanya sistem untuk membantu
experienced clinicians or ophthalmologists but a computer deteksi DR secara otomatis [2].
which has been trained to recognize the DR stages can diagnose Deteksi DR pada citra fundus retina dapat dibagi menjadi
and give results in real-time manner. One approach of dua tugas [2], 1) deteksi DR berdasarkan tingkat lesion dan
algorithms to train a computer to recognize an image is deep 2) deteksi DR berdasarkan tingkat citra. Deteksi pada tingkat
learning Convolutional Neural Network (CNN). CNN allows a lesion artinya mendeteksi gejala klinis pada citra fundus
computer to learn the features of an image, in our case is retinal retina, seperti tanda-tanda microaneurysm, hemorrhages,
fundus image, automatically. Preprocessing is usually done exudates, dan neovascular. Deteksi DR pada tingkat citra
before a CNN model is trained. In this study, four preprocessing artinya deteksi DR pada citra fundus retina untuk menilai
were carried out on “APTOS 2019 Blindness Detection” dataset.
Of the four preprocessing tested, preprocessing with Contrast
apakah terdapat tanda-tanda DR.
Limited Adaptive Histogram Equalization followed by unsharp Deteksi pada tingkat citra mengklasifikasikan citra fundus
masking on the green channel of the retinal fundus image give ke dalam dua kategori, yaitu normal atau memiliki tanda-
the best results with an accuracy of 78.79%, 82.97% precision, tanda DR. Citra fundus yang terdapat tanda-tanda DR dapat
74.64% recall, and 95.81% AUC. The CNN architecture used is dibagi ke dalam dua kelas berdasarkan tingkat keparahannya
Inception v3. 1) Non-Proliferative Diabetic Retinopathy (NPDR) dan 2)
Proliferative Diabetic Retinopathy (PDR). NPDR adalah
Keywords— classification; Convolutional Neural Network; tahap awal di mana diabetes mulai merusak pembuluh darah
Diabetic Retinopathy; Inception v3; transfer learning kecil pada retina, hal ini umum ditemui pada penderita
diabetes; di mana pembuluh darah mulai mengeluarkan
cairan dan darah yang menyebabkan retina bengkak. Seiring
I. PENDAHULUAN berjalannya waktu, pembengkakan atau edema dapat
Diabetic Retinopathy (DR) atau yang dikenal juga sebagai menebalkan retina yang menyebabkan pandangan kabur.
Diabetic Eye Disease adalah penyakit mata akibat komplikasi Fitur klinis pada tahap ini setidaknya terdapat satu
diabetes yang merusak retina dan dapat mengakibatkan microaneurysm atau hemorrhage baik tanpa atau dengan
kebutaan [1]. DR merupakan penyakit progresif yang akan exudates [2].
berkembang semakin parah seiring lamanya seorang pasien PDR adalah tahapan lanjut yang mengarah ke
menderita DR. Deteksi DR sejak dini sangat penting agar pertumbuhan pembuluh darah baru. PDR ditandai dengan
pasien mendapatkan perawatan untuk mengurangi penyebaran pembuluh darah abnormal di dalam retina
perkembangan DR dan mencegah kebutaan karena pada menuju rongga vitreous. Pembuluh darah baru ini bersifat
tahap tertentu DR tidak bisa disembuhkan lagi [2]. Diagnosis rapuh dan dapat mengakibatkan pendarahan pada rongga
pasien DR biasanya dilakukan oleh ophthalmologist dengan vitreous yang menyebabkan kebutaan. Terdapat beberapa

110
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

sistem untuk menilai tingkat keparahan DR, seperti American dataset baru (dataset citra fundus retina). Menurut Yosinski
Academy of Ophthalmology (AAO), Early Treatment of dan kawan-kawan [7], dan Nima Tajbakhsh dan kawan-
Diabetic Retinopathy Study (ETDRS), dan protokol penilaian kawan [5], pendekatan transfer learning cenderung
Scottish. Pada penelitian ini DR diklasifikasikan menjadi memberikan hasil yang lebih baik jika dibandingkan dengan
lima kelas yang mengacu pada protokol penilaian Scottish, pendekatan end to end learning.
yaitu tidak ada DR, DR ringan, DR sedang, DR parah, dan Sebelum model CNN di-training, biasanya akan dilakukan
PDR. Contoh citra fundus retina dengan tingkat DR yang preprocessing terhadap citra fundus retina untuk mengatasi
berbeda dapat dilihat pada Gambar 1. Gambar kiri-atas beberapa tantangan pada pengolahan citra digital seperti
dengan label DR-0 adalah citra fundus retina tidak ada DR, variasi skala, variasi iluminasi, atau gambar tidak fokus. Dari
atau citra fundus retina normal. Gambar kanan-bawah dengan tinjauan pustaka yang dilakukan, tidak banyak yang
label DR-4 adalah citra fundus retina PDR. membahas pengaruh preprocessing terhadap performa
model. Penelitian ini membandingkan pengaruh
preprocessing terhadap performa model diantaranya adalah
Maria A. Bravo [8] dan Chunyan Lian [9]. Dari tinjauan
pustaka juga dapat dilihat bahwa pendekatan transfer
learning lebih banyak digunakan jika dibandingkan dengan
end to end learning. Hal ini umum dilakukan karena
DR-0 DR-1 DR-2 keterbatasan jumlah citra untuk training model CNN menjadi
salah satu tantangan di bidang citra medis [5]. Namun fine
tuning pada pendekatan transfer learning tersebut tidak
membahas berapa banyak lapisan dari arsitektur CNN yang
perlu di-fine tuning. Salah satu penelitian yang
menyampaikan hal ini adalah penelitian yang dilakukan oleh
DR-3 DR-4 Saboora dan kawan-kawan [10]. Saboora melakukan fine
tuning sebanyak dua dan empat blok pada arsitektur
Gambar 1. Citra fundus retina dengan tingkat DR yang berbeda
Inception v3 dan Xception untuk klasifikasi biner citra fundus
Berbagai upaya dilakukan untuk mendeteksi dan retina.
mengklasifikasikan citra fundus retina dengan bantuan Sesuai dengan latar belakang yang disampaikan, maka
komputer atau Computer Aided Diagnosis (CAD) [2]. Salah penelitian ini menguji pengaruh preprocessing terhadap
satu pendekatan untuk mengklasifikasikan DR pada citra performa model dan menguji banyaknya blok Inception v3
fundus retina adalah dengan pendekatan deep learning yang perlu di-fine tuning. Tugas klasifikasi yang diberikan
Convolutional Neural Network (CNN). CNN berkembang adalah mengklasifikasikan citra fundus retina ke dalam lima
pesat dan banyak digunakan untuk tugas klasifikasi citra kelas. Sehingga terdapat dua pertanyaan yang dijawab pada
sejak kompetisi ImageNet pada tahun 2012 yang penelitian ini, yaitu:
dimenangkan oleh Alex Krizhevsky dan kawan-kawan [4]. • Apa pengaruh preprocessing terhadap hasil training
Mereka membawa revolusi CNN melalui penggunaan model dengan pendekatan transfer learning?
Graphics Processing Unit (GPU), Rectified Linear Units • Berapa banyak blok Inception v3 dari sebuah model
(ReLU), regularisasi dropout, dan augmentasi data yang yang di-training dengan pendekatan transfer learning
efektif [5]. perlu di-fine tuning?
Training model CNN dapat dilakukan dengan salah satu Diharapkan dari penelitian ini bisa memberikan jawaban
dari dua pendekatan, yaitu end to end learning atau transfer atas dua rumusan masalah diatas, yaitu:
learning. Training model dengan pendekatan end to end • Mengetahui pengaruh preprocessing yang diterapkan
learning memiliki tantangan sendiri [5], yaitu membutuhkan pada citra fundus retina terhadap performa model yang
jumlah data yang besar. Namun jumlah data yang besar tidak dihasilkan.
selalu dijumpai pada domain citra medis. Jika terdapat dataset • Mengetahui jumlah blok Inception v3 yang perlu di-
dalam jumlah yang besar, permasalahan berikutnya muncul, fine tuning ketika training model dengan pendekatan
yaitu kebutuhan akan sumber daya komputasi yang besar. transfer learning untuk tugas klasifikasi citra fundus
Selain itu, training model CNN juga sering kali sulit karena retina.
overfitting atau masalah konvergensi model sehingga
dibutuhkan penyesuaian hyperparameter model berulang Penelitian ini membangun model untuk
kali. mengklasifikasikan citra fundus retina menjadi lima kelas,
Salah satu pendekatan alternatif adalah training model mulai dari kelas tidak ada DR, DR ringan, DR sedang, DR
CNN dengan pendekatan transfer learning. Pendekatan parah, dan PDR dengan teknik CNN. Arsitektur CNN yang
transfer learning menggunakan model yang sudah di- dipakai adalah Inception v3 [11]. Dataset yang digunakan
training pada domain dataset tertentu (umumnya dataset adalah citra fundus retina yang diambil dari Kaggle.com [12].
ImageNet [6]) lalu disesuaikan (fine-tuned) pada domain Dataset ini merupakan dataset untuk kompetisi pada Kaggle

111
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

dengan judul “APTOS 2019 Blindness Detection”. Penelitian menghasilkan sejumlah lapisan data atau fitur yang di bagian
ini fokus untuk melihat pengaruh preprocessing terhadap akhir lapisan akan ditransformasi menjadi array satu
model yang dihasilkan dan melihat jumlah blok Inception v3 dimensi. Proses transformasi ini disebut dengan istilah
yang perlu di-fine tuning dengan pendekatan transfer flattening.
learning. Gambar 2 adalah contoh operasi CNN. CNN memiliki
Penelitian ini mengemukakan dua hipotesis sebagai sejumlah lapisan convolutional dan pooling yang
berikut: menghasilkan feature map sebelum tahap flattening dan
• Preprocessing yang tepat akan memberikan dampak masuk ke Neural Network untuk klasifikasi. Pada gambar
positif terhadap performa model. Dengan tersebut input adalah tensor dua dimensi 6 × 6 dan
preprocessing diharapkan fitur yang diinginkan pada convolutional menggunakan kernel 3 × 3 yang berjalan
citra menjadi lebih menonjol. secara sekuensial dengan stride 1. Operasi convolution
• Fine tuning perlu dilakukan pada beberapa blok menghasilkan feature map berukuran 4 × 4 . Lapisan max
terakhir saja dari model yang di-training dengan pooling menggunakan kernel berukuran 2 × 2 dengan stride
pendekatan transfer learning. Pada lapisan awal, fine 2 yang mengambil satu nilai maksimum dari empat elemen
tuning tidak memberikan pengaruh terhadap performa terkait (patch) sebagai representasi data. Operasi max pooling
model karena pada lapisan awal CNN mengekstrak menghasilkan pooled feature map berukuran 2 × 2. Pooled
fitur umum dari citra. feature map kemudian diubah dari dua dimensi menjadi satu
dimensi (flattened) sebelum masuk ke Neural Network [14].
II. LANDASAN TEORI
Convolutional Neural Network (CNN) adalah Neural
Network (NN) khusus untuk memproses data yang memiliki
topologi berbentuk grid [13]. Data time series adalah data
dengan topologi satu dimensi dan citra adalah data dengan
topologi dua dimensi. Nama Convolutional Neural Network
mengindikasikan bahwa Neural Network melakukan proses
operasi matematika convolution yang merupakan operasi
linear. Convolutional Neural Network secara sederhana
adalah Neural Network yang menggunakan convolution
sebagai operasi multiplikasi matrix setidaknya pada salah
satu lapisan. CNN terdiri dari lapisan convolution dan Gambar 2. Proses Convolutional Neural Network [14]
pooling yang memungkinkan fitur diekstrak dari citra.
Inception v3
Convolutional Neural Network
Arsitektur Inception v1 dari GoogLeNet didesain untuk
CNN mengekstrak fitur dari citra dengan melakukan bekerja dengan baik dengan kondisi komputasi yang terbatas
operasi convolution antara kernel dengan input tensor yang [15]. Hal ini dicapai dengan melakukan penggabungan output
merupakan subset array pixel [14]. Perubahan posisi kernel dari kernel convolution berukuran 1 × 1, 3 × 3, 5 × 5 dan
secara berturut-turut dikenal dengan istilah strides. Stride pooling sambil menjaga tinggi dan lebar output dari setiap
lebih dari satu memberikan efek downsampling pada output kernel tidak berubah [15], [16]. Lapisan bottleneck atau
operasi convolution. Produk perkalian element wise dari operasi convolution 1 × 1 selalu dilakukan sebelum operasi
setiap subset array pixel dan kernel akan dijumlahkan untuk convolution 3 × 3 dan 5 × 5 untuk mengurangi jumlah
menghasilkan satu nilai numerik dalam feature map. Feature operasi matematika sampai dengan faktor 10. Arsitektur ini
map ini diteruskan ke fungsi aktivasi, yang biasanya dikembangkan lebih lanjut oleh Christian Szegedy dan
menggunakan fungsi aktivasi Rectified Linear Unit (ReLU) kawan-kawan [11] menjadi Inception v3.
sebelum diteruskan ke lapisan pooling. Lapisan pooling Arsitektur Inception v3 [11] memanfaatkan teknik
melakukan downsample terhadap feature map untuk faktorisasi convolution asimetris untuk mengurangi jumlah
mengurangi kebutuhan daya komputasi dan mencegah operasi matematika. Modul Inception v3 terdiri atas tiga
overfitting. Operasi pooling yang digunakan umumnya desain yaitu [17]:
adalah max pooling. Max pooling menghasilkan output sama
dengan nilai maksimum dari setiap patch data pada feature
map. Max pooling dengan kernel 2 × 2 dan stride 2 akan
mengambil satu nilai maksimum dari setiap empat feature
map. Sekuensial dari convolution, kernel, dan pooling

112
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

Filter Concat
Filter Concat
nx1
nx1
3x3
1xn Stride 2
Filter Concat 1xn
Filter Concat
3x3
3x3 nx1 Stride 2
3x3 1x3 3x1
1x3 3x1
3x3
3x3 1x1 1xn 1x1 3x3 1x1 Stride 1

Pool
1x1 1x1 Pool 1x1 1x1 1x1 Pool 1x1 1x1 1x1 Pool 1x1 1x1 1x1 Stride 2

Base Base Base Base

Modul A Modul B Modul C Grid Size Reduction


Gambar 3. Modul arsitektur Inception v3 [11]

• Modul Inception A (Gambar 3 Modul A): modul ini classifier konvergen, fine tuning dapat dilakukan pada bagian
mengganti convolution 5 × 5 pada Inception v1 convolution. Menurut Yosinski dan kawan-kawan [7], fine
dengan dua buah convolution 3 × 3. Jika ditinjau dari tuning dari lapisan manapun pada bagian convolution
total operasi matematika, convolution 5 × 5 memberikan benefit terhadap performa model.
membutuhkan 25 operasi matematika, sedangkan dua
buah convolution 3 × 3 membutuhkan 18 operasi Input Layer
matematika.
• Modul Inception B (Gambar 3 Modul B): modul ini Inception v3
menggunakan teknik convolution asimetris 1 × 7 dan
7 × 1 sebagai ganti convolution 7 × 7.
GlobalAveragePooling2D GlobalMaxPooling2D
• Modul Inception C (Gambar 3 Modul C): modul ini
diajukan untuk mempromosikan representasi dimensi
tinggi. Concatenate
Inception v3 menawarkan langkah paralel (Gambar 3 Grid
Size Reduction) yang menggabungkan operasi convolution BatchNormalization
dan operasi pooling untuk mendapatkan jumlah feature map
yang sama dengan operasi convolution diikuti pooling atau
pun sebaliknya namun Grid Size Reduction memiliki beban Dropout (0.5) BatchNormalization

komputasi yang lebih ringan.


Secara umum arsitektur Inception v3 dapat dibagi menjadi Dense (512) ReLu
dua bagian besar, yaitu bagian convolution dan bagian
classifier yang digambarkan pada Gambar 15. Bagian
Dropout (0.5)
convolution adalah kumpulan dari lapisan convolution,
pooling, aktivasi ReLU, dan Batch Normalization yang akan
mengekstrak fitur dari citra input. Bagian classifier tersusun Dense (5)
atas Neural Network yang bertugas mengklasifikasikan fitur
yang sudah diekstrak oleh bagian convolution. Softmax

Transfer Learning Gambar 4. Arsitektur classifier yang dimodifikasi


Ketika training model dengan pendekatan transfer
Arsitektur yang ditambahkan pada bagian akhir CNN
learning, bagian classifier dari pretrained model perlu
dapat dilihat pada Gambar 4. Arsitektur ini terinspirasi dari
diganti dengan classifier baru. Classifier yang ditambahkan
Fastai namun dimodifikasi pada posisi BatchNormalization
pada bagian akhir CNN di-training terlebih dahulu sementara
dan Relu. Pada Fastai [18], BatchNormalization diletakkan
bobot pada bagian convolution akan dibekukan. Setelah
setelah lapisan aktivasi Relu. Namun menurut Andrew Ng

113
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

[19], BatchNormalization umumnya diletakkan sebelum DR ke dalam dua kelas. Preprocessing yang dilakukan adalah
lapisan aktivasi ReLU. mengubah ukuran citra agar memiliki ukuran yang sama,
nilai setiap pixel dikurangi dengan nilai rata-rata lokal, lalu
Penelitian Terkait citra dipetakan terhadap 50% abu-abu sehingga ketajaman
Berbagai penelitian sudah dilakukan untuk membangun citra lebih merata. Pinggiran dari citra retina dipotong untuk
model menggunakan komputer untuk mendiagnosis DR menghilangkan efek garis batas. Arsitektur yang dipilih
secara otomatis [2]. Metode tradisional machine learning adalah Inception v3 dan Xception yang di-training dengan
akan mengekstrak fitur dari citra fundus retina. Fitur yang pendekatan transfer learning. Model di-training sebanyak
sudah diekstrak tersebut menjadi input bagi classifier tertentu 200 iterasi dengan nilai learning rate 0.0001. Augmentasi
seperti random forest, support vector machine, atau yang digunakan adalah pergeseran citra, rotasi citra,
AdaBoost classifier [20]. Salah satu prasyarat teknik hand pembalikan citra vertikal dan horizontal selama training.
engineered feature adalah memahami gejala klinis DR secara Saboora membandingkan beberapa parameter training untuk
mendalam untuk memilih fitur yang tepat. Berbeda dengan melihat pengaruhnya terhadap performa model yang
deep learning seperti CNN yang akan mengekstrak fitur dihasilkan. Parameter yang dibandingkan adalah optimasi
secara otomatis dari citra [21]. Jika dibandingkan dengan Adaptive Moment Estimation (ADAM) dengan SGDM
hand engineered feature, teknik deep learning secara umum (momentum = 0.9), aktivasi Exponential Linear Unit (ELU)
memberikan hasil yang lebih unggul [2]. dengan ReLU, dan dua blok dengan empat blok yang di-fine
Maria A. Bravo dan Pablo A. Arbelaez [8] menggunakan tuning. Hasil terbaik dengan nilai akurasi 87.12% diperoleh
dataset dari EyePACS untuk mengklasifikasikan DR ke dari model Inception v3, optimasi ADAM, dan fine tuning
dalam lima kelas. Preprocessing yang dilakukan adalah: sebanyak dua blok.
• Circle RGB: citra fundus retina RGB yang dipotong Gabriel Garcia dan kawan-kawan [22] menggunakan
melingkar dengan ukuran 224 × 224 pixel. dataset EyePACS untuk mengklasifikasikan DR ke dalam
• Square: citra fundus retina yang dipotong bujur dua kelas. Preprocessing yang dilakukan adalah mengubah
sangkar dengan ukuran 224 × 224 pixel. ukuran citra sehingga memiliki ukuran yang sama, citra
• Color centered: citra circle RGB dikurangi dengan dikurangi dengan nilai rata-rata lokal, lalu dipetakan ke abu-
warna rata-rata lokal menggunakan filter Gaussian. abu. Setelah preprocessing tersebut, citra diskalakan menjadi
Intensitas setiap channel citra dipusatkan pada 127. 256 × 256 pixel. Augmentasi yang dilakukan adalah
• Grayscale: citra circle RGB dikonversi menjadi citra flipping citra dan cropping 80% citra. Gabriel Garcia
grayscale. menggunakan arsitektur VGG-16 yang di-training dengan
pendekatan transfer learning. Karena jumlah citra dari
TABEL I masing-masing tidak seimbang, Gabriel menggunakan class
HASIL PERCOBAAN MARIA A. BRAVO weight dengan perbandingan untuk kelas normal dan DR
sebesar 1:2.74. Model VGG di-training dengan regularisasi
Preprocessing VGG-16 Inception V4
weight decay 0.00005. Performa model yang diperoleh
Circle RGB 46.3% 44.62%
Square 45.3%
adalah akurasi 83.68%, sensitivity 54.47%, specificity
Color centered 48.3% 45.00% 93.65%.
Grayscale 48.1% Xiaoliang Wang dan kawan-kawan [16] menggunakan
dataset dari EyePACS yang dipilih 166 citra saja untuk
Arsitektur CNN yang digunakan adalah VGG-16 dan mengklasifikasikan DR ke dalam lima kelas. Preprocessing
Inception v4. Kedua arsitektur ini di-training dengan yang dilakukan mengubah ukuran citra menjadi 227 × 227
pendekatan transfer learning. Model VGG-16 di-training untuk AlexNet, 224 × 224 untuk VGG-16, dan 299 × 299
kira-kira sebanyak 14 epoch, learning rate 0.001 yang diubah untuk Inception v3. Ketiga arsitektur ini di-training dengan
setiap 5 epoch dengan faktor 10, batch size 115, optimasi pendekatan transfer learning. Parameter training yang
stochastic gradient descent with momentum (SGDM) digunakan adalah: optimasi SGDM (momentum = 0.9),
(momentum = 0.9), dan regularisasi dropout untuk fungsi aktivasi ReLU, dan beberapa parameter lain yang
mengurangi overfitting. Sedangkan model Inception v4 di- berbeda untuk setiap arsitektur. Hasil akurasi yang diperoleh
training sebanyak 20 epoch, batch size 32, learning rate adalah 37.43% untuk AlexNet, 50.03% untuk VGG-16, dan
0.001, dan regularisasi weight decay 0.00004. Selama 63.23% untuk Inception v3.
training model, baik arsitektur VGG-16 maupun arsitektur Chunyan Lian dan kawan-kawan [9] menggunakan dataset
Inception v4, dilakukan augmentasi citra dengan rotasi antara EyePACS untuk mengklasifikasikan DR ke dalam lima kelas.
0° sampai dengan 360°, perbesar dan perkecil gambar antara Preprocessing yang mereka lakukan adalah mengubah citra
0 sampai dengan 20 pixel, pembalik vertikal dan horizontal menjadi 256 × 256 pixel, meningkatkan warna citra dengan
yang dilakukan secara acak. Hasil percobaan ini bisa dilihat mengurangi warna rata-rata lokal, dan membuang warna latar
pada Tabel I. hitam. Pada dataset dilakukan subsampling dan augmentasi
Saboora Mohammadian dan kawan-kawan [10] untuk mengatasi persoalan dataset yang tidak seimbang.
menggunakan dataset EyePACS untuk mengklasfikasikan Terdapat tiga arsitektur yang dicoba, yaitu AlexNet, ResNet-

114
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

50, dan VGG-16. Ketiga arsitektur ini di-training dengan didapatkan dari dataset validation adalah akurasi 0.9491,
pendekatan transfer learning. Parameter yang digunakan precision 0.9598, recall 0.9256, F-score 0.9395, dan AUC
selama training adalah: learning rate 0.001 yang berkurang 0.9852.
dengan faktor 10 setiap 27 epoch, batch size 25, optimasi
SGDM (momentum = 0.9), dan weight decay 0.0005. Hasil
akurasi yang diperoleh pada penelitian ini adalah 73.19% III. METODOLOGI PENELITIAN
untuk AlexNet, 76.41% untuk ResNet-50, 79.04% untuk Secara umum penelitian ini mengklasifikasikan citra
VGG-16 dengan preprocessing, dan 76.01% untuk model fundus retina ke dalam lima kelas berdasarkan tingkatannya.
VGG-16 tanpa preprocessing. Citra fundus retina tersebut diklasifikasikan ke dalam salah
Zhentao Gao dan kawan-kawan [20] menggunakan dataset satu kelas: DR-0, DR-1, DR-2, DR-3, dan DR-4. Penelitian
yang dibangun sendiri dengan total 4,476 citra untuk ini mengimplementasi teknik deep learning CNN yang
mengklasifikasikan DR menurut perawatan yang disarankan. mengekstrak fitur secara otomatis dari sebuah citra.
DR diklasifikasikan ke dalam empat kelas, dari normal, Arsitektur CNN yang digunakan adalah Inception v3 dengan
sedang, berat, dan parah. Preprocessing yang dilakukan modifikasi pada bagian classifier seperti pada Gambar 4.
adalah mentransformasi citra, sehingga setiap citra memiliki
ukuran dan bentuk yang sama, dan melakukan normalisasi Start
warna. Augmentasi citra selama training adalah pembalikan Studi literatur
citra horizontal dan vertikal, rotasi citra antara [-25º, 25º]
secara acak, pembesaran citra antara [0.85, 1.15], dan distorsi Menentukan rumusan Inisialisasi
citra secara acak. Terdapat lima arsitektur yang dicoba pada masalah
penelitian Zhentao Gao, yaitu ResNet-18, Resnet-101, VGG- Menentukan tujuan
19, Inception v3, dan arsitektur Inception@4 yang penelitian Ambil dataset &
merupakan modifikasi dari Inception v3. Beberapa parameter setup environment
Menentukan manfaat
yang digunakan untuk training model adalah: batch size 32,
penelitian
optimasi ADAM, learning rate 0.00001, weight decay 0.2,
Preprocess citra dataset
dan aktivasi ReLU. Akurasi yang diperoleh adalah 87.61% Pemilihan metode
untuk ResNet-18, 87.26% untuk ResNet-101, 85.50% untuk
VGG-19, 88.35% untuk Inception v3, dan 88.72% untuk Citra fundus
Inception@4. Menentukan hipotesis
retina
Misgina Tsighe Hagos dan kawan-kawan [23]
menggunakan dataset EyePACS untuk mengklasifikasikan
Hapus duplikasi citra
DR ke dalam dua kelas. Jumlah dataset yang digunakan dengan hash function
Training model dengan
terdiri dari 2,500 citra training dan 5,000 citra validation. arsitektur Inception v3
Preprocessing yang mereka lakukan adalah membuang Rescale citra dengan
radius pixel 300
warna latar hitam, mengubah citra menjadi 300 × 300 pixel,
Metrik model:
dan mengurangi warna rata-rata lokal dari setiap pixel. Preprocessing Ben loss, accuracy,
Arsitektur CNN yang digunakan adalah Inception v3 yang di- Graham precision,
training dengan pendekatan transfer learning. Parameter recall, AUC
yang dipakai selama training adalah: optimasi SGD dengan Preprocessing Nakhon
ascending learning rate 0.0005, fungsi loss cosine, dan
Simpan model & log
fungsi aktivasi ReLU. Hasil akurasi yang diperoleh adalah Preprocessing
training
Ramasubramanian
90.9%.
Md Sazzad Hossen dan kawan-kawan [1] menggunakan Preprocessing enhanced
dataset APTOS-2019 untuk mengklasifikasikan DR ke dalam green
lima kelas. Preprocessing yang mereka lakukan adalah End

mengubah skala citra sehingga memiliki radius yang sama,


Gambar 5. Diagram alir penelitian
mengurangi warna rata-rata lokal yang dipetakan ke 50%
grayscale, memotong citra menjadi ukuran 90%. Ukuran Pipeline Penelitian
citra yang digunakan untuk training adalah 224 × 224 pixel.
Pipeline penelitian ini dapat dilihat pada Gambar 5.
Arsitektur CNN yang dipilih adalah DenseNet-121 dan di-
Penelitian diawali dengan studi literatur, menentukan
training dengan pendekatan transfer learning. Selama
rumusan masalah, tujuan penelitian, pemilihan metode, dan
training mereka melakukan augmentasi dengan flipping
hipotesis yang diuji. Eksperimen diawali dengan membuang
horizontal dan vertikal secara acak dan pembesaran antara
duplikasi citra dalam dataset [24], lalu semua citra diubah
85% sampai dengan 115% secara acak. Parameter training
ukurannya sehingga memiliki radius pixel 300 pada wilayah
yang digunakan adalah: optimasi ADAM, total epoch 12,
retina [25]. Citra yang sudah diubah ukurannya ini
regularisasi dropout, dan fungsi aktivasi ReLU. Hasil yang

115
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

dilanjutkan dengan empat preprocessing terpisah, yaitu


preprocessing Ben Graham [25], Nakhon [26],
Ramasubramanian [27], dan enhanced green.
Setelah preprocessing, dilakukan training model dengan
menggunakan teknik deep learning CNN. Training model
dilakukan dengan pendekatan transfer learning
menggunakan beberapa kondisi dataset, yaitu:
• Citra tanpa preprocessing hanya dilakukan rescale.
• Citra dengan preprocessing Ben Graham [25].
• Citra dengan preprocessing Nakhon Ratchasima [26].
• Citra dengan preprocessing Ramasubramanian [27]
• Citra dengan preprocessing enhanced green.
• Citra tanpa preprocessing hanya dilakukan rescale lalu
di-fine tuning sebanyak n blok Inception v3, n = [1,
2, …, 10] dan semua lapisan.
Pada bagian akhir training, model dievaluasi berdasarkan Gambar 6. Contoh citra fundus retina beserta dengan labelnya.
metrik loss, akurasi, precision, recall, dan AUC. Meskipun Deskripsi dataset adalah sebagai berikut:
terdapat beberapa metrik yang digunakan, metrik akurasi • File format citra: PNG
dipilih sebagai metrik utama untuk mengukur performa • Variasi dimensi citra: 474 × 358 𝑝𝑖𝑥𝑒𝑙 – 3,388 ×
model. 2,588 𝑝𝑖𝑥𝑒𝑙
• Variasi ukuran file citra: 217 kB – 7,495 kB
Dataset
• Jumlah citra training: 3,662 citra
Dataset yang digunakan untuk training model diambil dari
dari Kaggle.com [12]. Dataset ini berasal dari rumah sakit Preprocessing Dataset
mata Aravind Eye Hospital [13] yang dikeluarkan bersamaan
Hapus duplikasi citra Preprocessing
dengan kegiatan APTOS Symposium ke-4 [28]. Dataset
APTOS 2019 ini diberikan kepada publik dengan tujuan dengan hash function Ben Graham
untuk meningkatkan kemampuan rumah sakit
mengidentifikasi tingkatan DR dengan bantuan teknologi dan
dapat memberikan hasil yang konsisten atau robust dengan Rescale citra dengan Preprocessing
berbagai kondisi dan variasi citra input. Dataset merupakan radius pixel 300 Nakhon
fotografi fundus retina dalam berbagai kondisi yang telah
diberi label terhadap setiap citra dengan skala 0 sampai 4 oleh
ahli klinis seperti yang dapat dilihat pada Tabel II.
Preprocessing
Ramasubramanian
TABEL II
LABEL UNTUK CITRA SESUAI DENGAN TINGKAT DR

Label Label one hot Indikasi Jumlah citra Preprocessing


0 [1, 0, 0, 0, 0] Tidak ada DR 1,805 enhanced green
1 [0, 1, 0, 0, 0] DR rendah 370
2 [0, 0, 1, 0, 0] DR sedang 999 Gambar 7. Diagram alir preprocessing
3 [0, 0, 0, 1, 0] DR parah 193
4 [0, 0, 0, 0, 1] DR proliferative 270 Preprocessing diawali dengan memeriksa apakah terdapat
Total citra 3,662 duplikasi citra dalam dataset. Citra yang memiliki duplikasi
akan dieliminasi dari dataset. Dataset yang sudah bersih dari
Kumpulan citra dalam dataset ini merupakan citra duplikasi akan diubah ukurannya sehingga memiliki radius
sebagaimana adanya ketika diambil yaitu terdapat noise pada pixel yang sama untuk area retina pada citra. Berdasarkan
citra dan label. Di antara citra terdapat objek asing, tidak tinjauan pustaka, preprocessing yang umum digunakan pada
fokus, kurang cahaya atau kelebihan cahaya. Citra ini juga citra fundus retina merujuk pada preprocessing Ben Graham.
diambil dari berbagai klinik menggunakan beragam kamera Selain preprocessing tersebut terdapat preprocessing yang
di waktu yang berbeda sehingga memberikan variasi yang ditawarkan oleh Nakhon Ratchasima [26], yang merupakan
tinggi terhadap kumpulan citra. Contoh dataset dapat dilihat notebook preprocessing dengan vote terbanyak pada Kaggle
pada Gambar 6. Pada gambar tersebut dapat terlihat citra kompetisi dengan judul “APTOS 2019 Blindness Detection”.
fundus retina dengan labelnya yang encoded dalam bentuk Ramasubramanian [27] juga mengemukakan teknik
one hot vector. preprocessing dengan menggunakan channel hijau saja.
Preprocessing Ramasubramanian menjadi dasar inspirasi

116
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

untuk preprocessing enhanced green. Sehingga terdapat Gambar 8. Contoh gambar duplikasi dengan label yang berbeda.
empat preprocessing yang diterapkan kepada dataset dan Setelah citra dibersihkan dari duplikasi, maka diperoleh
diuji pengaruhnya terhadap performa model, yaitu jumlah citra yang digunakan adalah 3,498 seperti yang dapat
preprocessing Ben Graham [25], Nakhon [26], dilihat pada Tabel III.
Ramasubramanian [27], dan enhanced green. Hubungan
preprocessing yang satu dengan yang lain dapat dilihat pada TABEL III
JUMLAH CITRA SEBELUM DAN SETELAH MENGHAPUS DUPLIKASI
Gambar 7.
Tingkat DR Sebelum Setelah Komposisi Setelah
Menghapus Duplikasi Citra 0 1,805 1,796 51.3%
Sebelum masuk ke tahap preprocessing, dataset diperiksa 1 370 338 9.7%
terlebih dahulu, apakah terdapat duplikasi citra. Algoritma 2 999 921 26.3%
difference hash (dhash) digunakan untuk memberikan 3 193 173 4.9%
signature atau identitas pada setiap gambar [24]. Dari 4 270 270 7.7%
signature tersebut dapat ditemukan duplikasi jika terdapat Total 3,662 3,498
dua citra dengan signature yang sama. Signature diperoleh
dengan mengambil n digit bilangan biner dari sebuah citra. Dari Tabel III dapat dilihat bahwa kelas 0 memiliki
Langkah untuk membuat signature dengan algoritma dhash komposisi citra sebanyak 51.3% dari total dataset. Jumlah
adalah: citra yang tidak seimbang seperti ini akan menghasilkan
• Konversi citra RGB menjadi citra grayscale. model yang didominasi oleh salah satu kelas dengan jumlah
• Mengubah ukuran citra menjadi ukuran (𝑛 + 1) × 𝑛 citra terbanyak. Harry Pratt [29] dan Gabriel Garcia [22]
(𝑐𝑜𝑙𝑢𝑚𝑛 × 𝑟𝑜𝑤). menggunakan pembobotan setiap kelas sesuai dengan jumlah
• Periksa apakah nilai pixel ke 𝑖 > 𝑖 + 1 dalam satu citra dari masing-masing kelas untuk mengatasi jumlah kelas
baris citra sehingga menghasilkan 𝑛 − 1 perbedaan yang tidak seimbang. Pembobotan kelas juga digunakan pada
antara pixel yang bersebelahan. 𝑛 baris dengan 𝑛 nilai penelitian ini. Bobot masing-masing kelas dihitung dengan
perbedaan menghasilkan 𝑛2 deret bilangan biner. cara [30]:
• Deret biner True / False (1 atau 0) tersebut
dikonversikan menjadi integer berbentuk desimal yang ∑𝑘𝑖 𝑛𝑖
𝑤𝑗 = (2)
dirumuskan dengan: 𝑐 × 𝑛𝑗

𝑛−1
𝑠𝑖𝑔𝑛𝑎𝑡𝑢𝑟𝑒 = ∑ 𝑑𝑖 × 2𝑖 (1)
Di mana:
𝑖=0 • ∑𝑘 𝑖 𝑛𝑖 adalah jumlah seluruh citra dari 𝑘 kelas
• 𝑤𝑗 adalah bobot kelas ke - 𝑗
Di mana: • 𝑛𝑗 adalah jumlah citra dari kelas ke - 𝑗
• 𝑑𝑖 adalah nilai 1 atau 0 dari deret biner ke - 𝑖
• 𝑐 adalah jumlah kelas dari dataset
Dengan perhitungan tersebut diperoleh bobot dari setiap
Pada penelitian ini 𝑛 yang dipakai adalah 32, sehingga
kelas yang dapat dilihat pada Tabel IV.
diperoleh 1,024-bit nilai hash yang dikonversi ke bilangan
integer. Nilai integer tersebut yang menjadi signature dari
sebuah citra. Citra duplikasi dieliminasi dari dataset dengan TABEL IV
ketentuan sebagai berikut: BOBOT DARI SETIAP KELAS DR
• Jika terdapat dua citra atau lebih dengan signature
Tingkat DR Jumlah citra Bobot kelas
yang sama dan label yang sama, maka diambil satu 0 1,796 0.389532
citra saja. 1 338 2.069822
• Jika terdapat dua citra atau lebih dengan signature 2 921 0.759609
yang sama dan label yang berbeda, maka citra 3 173 4.043931
dikeluarkan dari dataset. 4 270 2.591111
Pada Gambar 8 dapat dilihat duplikasi citra sebanyak tiga Total 3,498
buah dengan label yang berbeda. Citra dengan kondisi seperti
ini dieliminasi semuanya dari dataset. Label terletak di bagian
atas citra. Mengubah Ukuran Citra
Teknik mengubah ukuran citra mengadopsi teknik yang
digunakan Ben Graham [25]. Citra diubah ukurannya
sehingga memiliki radius pixel yang sama. Radius pixel yang
digunakan adalah 300 pixel. Berikut ini adalah potongan kode
dengan bahasa python:

117
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

Algoritma 1: Mengubah ukuran citra dengan radius yang • 𝜆 ( 𝜆 = 4 ) adalah faktor skala yang mengontrol
ditentukan peningkatan kontras citra output
Input: img dan scale=300
Output: s (faktor skala citra) Nilai 𝑔(𝑛, 𝑚) diperoleh dari:
x = img[img.shape[0] // 2, :, :].sum(1)
r = (x > x.mean() / 10).sum() / 2 𝑔(𝑛, 𝑚) = 𝐺(𝑛, 𝑚, 𝜎) ∗ 𝑥(𝑛, 𝑚) (4)
s = scale * 1.0 / r
Di mana:
Di mana:
• 𝐺(𝑛, 𝑚, 𝜎) adalah gaussian filter dengan 𝜎 = 10
• x menghitung nilai citra pada baris tengah dan
• ∗ adalah operator convolution
dijumlahkan pada sumbu channel. • 𝑥(𝑛, 𝑚) adalah citra input
• r menghitung radius fundus retina. Operasi x >
x.mean() / 10 memberikan nilai True untuk area
retina dan False untuk area warna hitam.
• s mengkonversi nilai r dengan radius pixel pilihan
yaitu 300 pixel. Nilai skalar s digunakan sebagai
faktor skala untuk mengubah ukuran citra.
Teknik mengubah ukuran citra dengan menggunakan
faktor skala akan tetap memperhatikan aspek rasio dari setiap
citra. Hasil dari citra yang sudah diubah ukurannya dapat
dilihat pada Gambar 9. Citra yang diubah ukurannya ini Gambar 10. Preprocessing Ben Graham
menjadi dasar untuk setiap preprocessing berikutnya karena
Hasil dari preprocessing Ben Graham dapat dilihat pada
citra yang ukurannya lebih kecil mengurangi beban
Gambar 10. Gambar sebelah kiri merupakan gambar input,
komputasi.
yang belum melewati preprocessing Ben Graham dan
gambar sebelah kanan adalah citra yang sudah melewati
preprocessing Ben Graham. Tampak bahwa warna citra
setelah preprocessing lebih homogen.
Preprocessing Nakhon
Preprocessing Nakhon [26] diawali dengan mengubah
ukuran citra dan memotong margin hitam pada citra. Margin
hitam dipotong dengan mencari baris dan kolom pada citra
Gambar 9. Citra sebelum dan setelah ukuran diubah yang memiliki setidaknya satu pixel di sepanjang baris dan
kolom yang lebih besar dari nilai threshold yang ditentukan
Preprocessing Ben Graham (𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑 = 7) sehingga membentuk bounding box pada
Terdapat tiga tahapan preprocessing yang dilakukan oleh area fundus retina saja [31]. Setelah margin hitam dibuang,
Ben Graham [25], yaitu: proses selanjutnya serupa dengan preprocessing yang
• Mengubah ukuran citra dengan metode rescale yang dilakukan oleh Ben Graham, namun Nakhon tidak
sudah dibahas pada bagian 2) Mengubah Ukuran Citra. membuang “boundary effect”. Nakhon memotong setiap citra
• Mengurangi warna citra dengan warna rata-rata lokal, secara melingkar, sehingga citra fundus retina memiliki
lalu dipetakan ke 50% abu-abu bentuk yang sama. Gambar 11 menunjukan citra input dan
• Memotong citra secara melingkar menjadi 90% dari citra output dari preprocessing Nakhon. Bisa dilihat pada
radius pixel yang diberikan untuk menghilangkan citra output, bentuk retina dipotong dengan melingkar
“boundary effects.” sempurna dan memiliki “boundary effect”
Citra dikurangi warna rata-rata lokal dengan
menggunakan persamaan klasik linear unsharp masking yang
diberikan dengan:

𝑦(𝑛, 𝑚) = 𝜆 × 𝑥(𝑛, 𝑚) + (−𝜆) × 𝑔(𝑛, 𝑚) + 128 (3)

Di mana:
• 𝑦(𝑛, 𝑚) adalah citra output
• 𝑥(𝑛, 𝑚) adalah citra input,
• 𝑔(𝑛, 𝑚) adalah citra yang diburamkan dengan Gambar 11. Preprocessing Nakhon Ratchasima
Gaussian blur.

118
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

Preprocessing Ramasubramanian • Citra asli diburamkan. Teknik untuk memburamkan


Ramasubramanian dan Selvaperumal [27] mengusulkan citra menggunakan Gaussian blur seperti yang
teknik preprocessing dengan mengambil green channel dari diusulkan oleh Ben Graham.
citra RGB karena green channel memiliki informasi paling • Kurangi citra asli dengan citra yang sudah diburamkan.
banyak dan menunjukkan diskriminasi antara gejala klinis Proses ini membentuk mask.
dengan warna latar belakang. Mula-mula citra diambil • Tambahkan citra asli dengan mask yang terbentuk
channel hijau saja lalu margin hitam dipotong. Median filter Unsharp masking bisa diberikan dengan persamaan [33]:
digunakan untuk menghilangkan salt and pepper noise pada
citra sambil mempertahankan garis tepi pada citra fundus 𝑦(𝑛, 𝑚) = 𝛼 × 𝑥(𝑛, 𝑚) + 𝛽 × 𝑔(𝑛, 𝑚) (5)
retina. Ukuran kernel median filter yang digunakan adalah
3 × 3. Di mana:
Setelah noise dihilangkan, citra ditingkatkan dengan • 𝑦(𝑛, 𝑚) adalah citra output
menggunakan Contrast Limited Adaptive Histogram • 𝑥(𝑛, 𝑚) adalah citra input
Equalization (CLAHE). CLAHE membagi citra input ke • 𝑔(𝑛, 𝑚) adalah citra yang diburamkan dengan
dalam delapan wilayah kontekstual lalu histogram Gaussian blur.
equalization diterapkan pada wilayah tersebut. Dengan • 𝛼 adalah koefisien citra asli. 𝛼 ditetapkan dengan nilai
CLAHE, fitur tersembunyi seperti exudates, 4 mengikuti koefisien yang dipilih oleh Ben Graham.
microaneurysms, fovea, blood vessel akan lebih terlihat. • 𝛽 adalah 1 − 𝛼
Hasil preprocessing usulan Ramasubramanian dapat dilihat
pada Gambar 12. Citra hasil preprocessing Nilai 𝑔(𝑛, 𝑚) diperoleh dari:
Ramasubramanian disimpan sebagai citra tiga channel yang
terdiri atas channel hijau semua (Green, Green, Green / G, 𝑔(𝑛, 𝑚) = 𝐺(𝑛, 𝑚, 𝜎) ∗ 𝑥(𝑛, 𝑚) (6)
G, G). Dari kiri ke kanan: citra sebelum preprocessing, citra
yang sudah melewati preprocessing Ramasubramanian dan Di mana:
dilipatkan menjadi tiga channel. • 𝐺(𝑛, 𝑚, 𝜎) adalah gaussian filter dengan 𝜎 = 10
• 𝑥(𝑛, 𝑚) adalah citra input
• ∗ adalah operator convolution

Citra hasil preprocessing enhanced green disimpan


sebagai citra tiga channel yang terdiri atas channel hijau
semua (G, G, G). Hasil preprocessing enhanced green dapat
dilihat pada Gambar 13. Citra sebelah kiri merupakan citra
input. Citra sebelah kanan merupakan citra output dari
preprocessing enhanced green yang dilipatkan menjadi tiga
Gambar 12. Preprocessing Ramasubramanian dan Selvaperumal channel. Dapat dilihat pada gambar tersebut, objek pada
Preprocessing Enhanced Green gambar berupa titik atau garis lebih tajam.
Preprocessing enhanced green menerapkan dua teknik
processing citra, yaitu CLAHE yang diikuti dengan unsharp
masking. Citra yang digunakan pada preprocessing ini adalah
citra dari channel hijau saja seperti yang diusulkan oleh
Ramasubramanian. Mula-mula kontras citra ditingkatkan
dengan CLAHE. CLAHE membagi citra input ke dalam
beberapa wilayah kontekstual dengan kernel berukuran 8 × 8
lalu histogram equalization diterapkan pada wilayah
tersebut. Menurut Ramasubramanian [27], CLAHE
Gambar 13. Preprocessing enhanced green
menonjolkan fitur tersembunyi seperti exudates,
microaneurysms, fovea, blood vessel. Augmentasi
Setelah kontras citra diperbaiki, citra ditajamkan dengan Augmentasi citra adalah strategi yang memungkinkan
unsharp masking. Unsharp masking telah lama digunakan praktisi untuk meningkatkan keragaman data yang tersedia
dalam industri percetakan dan penerbitan untuk menajamkan untuk training model, tanpa benar-benar mengumpulkan data
citra dengan mengurangi citra asli dengan citra yang sudah baru [34]. Dengan augmentasi, model menerima input citra
diburamkan (unsharp). Proses unsharp masking terdiri dari yang sudah ditransformasi sehingga citra input lebih
beberapa langkah [32]: beragam. Tujuan augmentasi adalah agar model tidak melihat
citra yang sama dua kali selama training. Augmentasi
membantu model terpapar aspek yang lebih banyak dari data

119
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

dan menghasilkan model yang lebih mengeneralisir [35]. No Hyperparameter Nilai


Teknik augmentasi yang dipakai adalah: 5 Metrik Accuracy (Acc), precision,
recall, AUC
• Rotasi citra: 10° 6 Learning rate classifier 1𝑒 −4
• Pergeseran citra pada sumbu 𝑥 dan sumbu 𝑦 7 Epoch classifier 50
• Distorsi citra dengan shear sebesar 0.1 8 Learning rate fine tuning 2𝑒 −6
• Zoom: 90% – 110% 9 Epoch fine tuning 50
10 Weight decay 0.01
• Flipping horizontal dan vertikal
Augmentasi ini diterapkan untuk citra training saja,
sedangkan untuk citra validation tidak dilakukan augmentasi. Training model terbagi menjadi dua skema sesuai dengan
Citra yang diaugmentasi dapat dilihat pada Gambar 14. rumusan masalah yang diberikan, yaitu:
• Training model untuk menguji pengaruh
preprocessing terhadap performa model.
• Training model untuk menguji banyaknya blok
Inception v3 yang perlu di-fine tuning.
Pengujian Pengaruh Preprocessing
Training model ini dilakukan dengan pendekatan transfer
learning. Bagian convolution dari Inception v3 menggunakan
bobot pretrained dari dataset ImageNet. Sedangkan bobot
bagian classifier diinisialisasi dengan Glorot Uniform [36].
Training model dilakukan pada bagian classifier terlebih
dahulu lalu diikuti dengan fine tuning dua blok Inception v3
[10]. Training classifier dilakukan sebanyak 50 epoch
dengan learning rate 1𝑒 −4 . Sewaktu training classifier,
bobot pada bagian convolution dibekukan sehingga tidak
diperbaharui. Fine tuning dilakukan sebanyak 50 epoch
Gambar 14. Citra training dengan augmentasi
dengan learning rate 2𝑒 −6 .
Dataset dibagi menjadi 80% untuk training dan 20% untuk
Training Model validation dengan metode 5-fold cross validation. Hasil dari
Training model menggunakan library Keras, yang 5-fold cross validation ini dirata-ratakan sebagai nilai akhir
merupakan high level API dari platform deep learning akurasi model. Dataset yang dipakai pada training ini adalah
Tensorflow. Pada Keras sudah terdapat berbagai model 1) citra yang sudah diubah ukurannya, 2) citra dengan
pretrained yang di-training dengan dataset ImageNet, preprocessing Ben Graham, 3) citra dengan preprocessing
termasuk model dengan arsitektur Inception v3. Perangkat Nakhon Ratchasima, 4) citra dengan preprocessing
keras yang digunakan adalah CPU Core2Quad Q9550, RAM Ramasubramanian, dan 5) citra dengan preprocessing
8GB, GPU GTX 1070 8GB. Adapun Hyperparameter yang enhanced green.
dipakai untuk training model dapat dilihat pada Tabel V. Fine Tuning n Blok Inception v3
Training model ini menggunakan dataset yang diubah
TABEL V ukurannya. Mula-mula training dilakukan pada bagian
HYPERPARAMETER YANG DIPAKAI SETIAP TRAINING MODEL
classifier, yang diikuti dengan fine tuning terhadap blok
No Hyperparameter Nilai Inception v3 seperti yang diilustrasikan pada Gambar 16.
1 Ukuran citra 299 × 299 × 3 Fine tuning dilakukan sebanyak n blok, 𝑛 = [1,2,3, … ,10]
2 Batch Size 32 dan semua lapisan. Dataset dibagi menjadi dua, yaitu 80%
3 Optimisasi ADAM train dan 20% validation dengan teknik holdout, bukan
4 Loss function Categorical cross entropy dengan 5-fold cross validation.

120
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

Keterangan: Bagian convolution Bagian classifier

3× modul Inception A Grid size 4 × modul Inception B Grid size 2 × modul Inception C
Reduction Reduction

Gambar 15. Bagian umum arsitektur CNN [37]

Keterangan: Fine tuning semua lapisan Fine tuning n blok

N=10 N=9 N=8 N=7 N=6 N=5 N=4 N=3 N=2 N=1

Gambar 16. Fine tuning n blok Inception v3 [37]


Model ramasubramanian adalah model yang di-
IV. HASIL DAN PEMBAHASAN training dengan dataset dengan preprocessing
Hasil training untuk melihat pengaruh preprocessing Ramasubramanian.
terhadap performa model akan fokus pada akurasi model. • Model enhanced_green adalah model yang di-training
Training dengan lima kondisi dataset menghasilkan lima dengan dataset dengan preprocessing enhanced green.
model, yaitu: Demikian juga untuk training model fine tuning n blok
• Model rescale_png adalah model yang di-training Inception v3. Hasil training ini melihat akurasi yang
dengan dataset asli yang diubah ukurannya. diberikan oleh setiap model dengan jumlah blok yang di-fine
• Model ben_graham adalah model yang di-training tuning berbeda.
dengan dataset dengan preprocessing Ben Graham.
• Model nakhon adalah model yang di-training dengan
Pengaruh Preprocessing - Training Classifier
dataset dengan preprocessing Nakhon.

121
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

Hasil training bagian classifier dari lima kondisi dataset Setelah training bagian classifier selesai, fine tuning
dapat dilihat pada Tabel VI. Nilai ini diukur dari dataset dilakukan sebanyak dua blok Inception v3. Hasil fine tuning
validation setelah training sebanyak 50 epoch selesai dan dari setiap model dapat dilihat pada Tabel VIII. Nilai ini
merupakan rata-rata dari 5-fold cross validation. Pada tabel diukur dari dataset validation setelah training sebanyak 50
tersebut dapat dilihat bahwa model enhanced_green epoch selesai dan merupakan rata-rata dari 5-fold cross
memberikan hasil yang paling baik dengan nilai: akurasi validation. Pada tabel tersebut tampak bahwa model
76.10%, precision 81.92%, recall 69.90% dan AUC 95.12%. enhanced_green memberikan hasil yang paling baik dengan
Model kedua terbaik diberikan oleh model ramasubramanian nilai: akurasi 78.79%, precision 82.97%, recall 74.64%, dan
dengan nilai akurasi 74.10%. Model rescale_png menempati AUC 95.81%. Model rescale_png menempati posisi kedua
posisi ketiga, sedangkan model ben_graham dan nakhon dengan nilai akurasi 77.27% yang diikut model
menempati posisi keempat dan kelima. ramasubramanian di posisi ketiga dengan nilai akurasi
76.73%. Sedangkan model ben_graham dan nakhon
TABEL VI
menempati posisi keempat dan kelima.
METRIK HASIL TRAINING CLASSIFIER

Precisi TABEL VIII


Model Loss Acc Recall AUC METRIK HASIL FINE TUNING
on
rescale_ Precisi
1.94 73.78% 80.70% 66.81% 94.53% Model Loss Acc Recall AUC
png on
ben_gra rescale_
2.09 72.73% 79.52% 65.09% 94.16% 1.83 77.27% 80.79% 72.41% 95.32%
ham png
nakhon 2.02 69.10% 78.70% 60.09% 93.05% ben_gra
1.98 75.59% 80.35% 70.04% 94.97%
ramasub ham
ramania 1.91 74.10% 81.26% 67.41% 94.92% nakhon 1.89 72.30% 79.56% 65.72% 94.25%
n ramasub
enhance ramania 1.81 76.73% 81.17% 72.44% 95.62%
1.93 76.10% 81.92% 69.90% 95.12%
d_green n
enhance
1.83 78.79% 82.97% 74.64% 95.81%
F1-score untuk setiap kelas DR dari lima model ini dapat d_green
dilihat pada Tabel VII. Pada tabel tersebut kelas 0
memberikan nilai paling tinggi. Hal ini dikarenakan kelas 0 F1-score untuk setiap kelas DR dari lima model ini dapat
memiliki jumlah citra paling banyak. Sedangkan kelas 3 dilihat pada Tabel IX. Pada tabel tersebut kelas 0
memberikan nilai paling kecil karena kelas 3 memiliki memberikan nilai paling tinggi. Hal ini dikarenakan kelas 0
jumlah citra paling sedikit meskipun pembobotan kelas memiliki jumlah citra paling banyak. Sedangkan kelas 3
selama training sudah diberikan. Dari tabel ini juga dapat memberikan nilai paling kecil karena kelas 3 memiliki
dilihat bahwa F1-score tertinggi dari setiap kelas DR jumlah citra paling sedikit meskipun pembobotan kelas
diberikan oleh model yang berbeda. DR kelas 0 diberikan selama training sudah diberikan. Dari tabel ini juga dapat
oleh model ramasubramanian, DR kelas 1 diberikan oleh dilihat bahwa F1-score tertinggi dari setiap kelas DR
model rescale_png, DR kelas 2 dan 4 diberikan oleh model diberikan oleh model yang berbeda. DR kelas 0, 1, dan 3
enhanced_green. DR kelas 3 diberikan oleh model diberikan oleh model ramasubramanian. DR kelas 2 dan 4
ramasburamanian dan enhanced_green. diberikan oleh model enhanced_green.

TABEL VII TABEL IX


F1-SCORE TRAINING CLASSIFIER F1-SCORE FINE TUNING

ramasu enhanc ramasu enhanc


DR rescale_ DR rescale_
graham nakhon braman ed_gree graham nakhon braman ed_gree
Level png Level png
ian n ian n
0 95.6% 95.2% 95.0% 96.4% 95.8% 0 96.2% 96.6% 96.2% 97.4% 96.4%
1 52.6% 46.2% 46.2% 49.6% 46.2% 1 55.2% 53.0% 51.0% 55.4% 52.2%
2 59.6% 56.2% 48.6% 57.6% 64.6% 2 67.2% 60.6% 55.0% 62.4% 68.8%
3 36.6% 31.4% 34.4% 37.6% 37.6% 3 41.4% 36.6% 35.6% 42.0% 41.4%
4 38.2% 42.2% 30.4% 41.4% 47.4% 4 43.4% 44.8% 33.4% 44.8% 52.0%

Pengaruh Preprocessing - Fine Tuning Fine Tuning n blok inception

122
p-ISSN : 2443-2210 Jurnal Teknik Informatika dan Sistem Informasi
e-ISSN : 2443-2229 Volume 7 Nomor 1 April 2021

Hasil training n blok Inception v3 bisa dilihat pada Tabel enhanced green memberikan performa yang paling baik.
X. Nilai pada tabel tersebut diukur pada dataset validation Model enhanced_green memberikan nilai akurasi 76.10%
setelah training sebanyak 50 epoch selesai. Gambar 17 pada training classifier dan nilai akurasi 78.79% setelah fine
adalah visualisasi Tabel X dalam bentuk grafik batang untuk tuning. Selisih akurasi model antara enhance green dengan
nilai akurasi. Sumbu 𝑥 pada Gambar 17 adalah jumlah blok model tanpa preprocessing adalah 1.52%. Preprocessing
Inception yang di-training dan sumbu 𝑦 adalah nilai akurasi enhanced green mengambil channel hijau dari citra fundus
model. Jika mengacu pada grafik ini, fine tuning memberikan retina lalu dilakukan image enhancement dengan CLAHE
hasil terbaik jika dilakukan sebanyak sembilan blok untuk memperbaiki kontras citra dan diikuti dengan unsharp
Inception. Tampak juga pada grafik bahwa fine tuning dari masking untuk menajamkan citra. Citra hasil preprocessing
lapisan manapun memberikan benefit terhadap performa enhanced green disimpan sebagai citra tiga channel di mana
model dengan rentang kenaikan akurasi antara 1.71% sampai setiap channel-nya adalah channel hijau.
5.14%. Fine tuning n blok Inception yang dilakukan pada
TABEL X
penelitian ini menunjukkan bahwa fine tuning bisa dilakukan
PERFORMA MODEL YANG DI-TRAINING SEBANYAK N BLOK INCEPTION V3 mulai dari blok Inception v3 mana pun dan tetap memberikan
benefit terhadap performa model. Fine tuning memberikan
Precisi rentang kenaikan akurasi antara 1.71% sampai 5.14%. Jika
Blok Loss Acc Recall AUC
on
dilihat dari hasil percobaan, fine tuning sebanyak sembilan
classifier 1.95 73.86% 80.78% 67.86% 94.21% blok Inception v3 memberikan hasil terbaik dengan nilai
1 1.86 75.86% 79.84% 69.57% 94.73% akurasi 79.0%.
2 1.86 75.57% 79.62% 72.00% 94.97% Berdasarkan hasil temuan dari eksplorasi yang telah
dilakukan, terdapat sejumlah eksplorasi lanjutan yang dapat
3 1.84 76.14% 79.68% 71.71% 95.16% dilakukan. Penelitian selanjutnya dapat melakukan
4 1.84 77.14% 81.79% 73.14% 95.24% hyperparameter tuning dan menggunakan beberapa teknik
5 1.82 77.86% 81.79% 74.43% 95.41%
optimasi training model. Hyperparameter yang bisa di-
tuning seperti learning rate, ukuran batch, nilai probabilitas
6 1.82 77.71% 81.36% 73.57% 95.53% dropout, dan nilai weight decay. Teknik optimasi yang bisa
7 1.81 77.71% 81.49% 74.86% 95.64% diimplementasikan saat training model seperti learning rate
decay, reduce learning rate on plateau, ataupun early
8 1.81 78.86% 81.64% 75.57% 95.54%
stopping. Arsitektur CNN yang dipilih bisa menggunakan
9 1.81 79.00% 81.41% 74.43% 95.59% arsitektur yang lebih baru seperti MobileNet, Inception v4,
10 1.82 77.57% 81.40% 75.00% 95.49% ataupun EfficientNet. Arsitektur classifier pun bisa
Semua dieksplorasi dengan menambahkan hidden layer atau pun
1.81 78.86% 81.85% 76.00% 95.74% hidden unit.
lapisan
Penelitian berikutnya bisa menggunakan ukuran citra yang
0.79 0.79 0.79
lebih besar, misalnya 598 × 598 × 3. Memperbesar ukuran
0.80 0.78 0.78 0.78 0.78
0.76 0.76 0.76
0.77 citra training diharapkan dapat memberikan akurasi model
0.74
0.75 yang lebih baik. Preprocessing yang digunakan dalam
0.70
penelitian ini juga bisa digunakan pada dataset lain untuk
melihat robustness pengaruh setiap preprocessing terhadap
0.65 performa model.
0.60 Kesulitan terbesar dalam penelitian ini adalah interpretasi
model. Model dipandang sebagai black box yang menerima
0.55
input dan mengeluarkan output. Output berupa performa
0.50 model yang diukur pada penelitian ini. Jika penelitian
dilakukan bersama dengan seorang ophthalmologist maka
interpretasi model bisa lebih baik untuk melihat pengaruh
preprocessing terhadap fitur pada citra fundus retina.
Gambar 17. Akurasi model dengan fine tuning n blok Inception v3

DAFTAR PUSTAKA
[1] M. Sazzad Hossen, A. A. Reza, dan M. C. Mishu, “An automated
V. SIMPULAN model using deep convolutional neural network for retinal image
Dalam penelitian ini didapati bahwa tidak semua classification to detect diabetic retinopathy,” dalam ACM
International Conference Proceeding Series, 2020, hlm. 1–8, doi:
preprocessing memberikan hasil yang baik. Dari empat 10.1145/3377049.3377067.
preprocessing yang dilakukan, yaitu Graham, Nakhon, [2] N. Asiri, M. Hussain, F. Al Adel, dan N. Alzaidi, “Deep learning
Ramasubramanian dan enhanced green, didapati bahwa based computer-aided diagnosis systems for diabetic retinopathy: A

123
Jurnal Teknik Informatika dan Sistem Informasi p-ISSN : 2443-2210
Volume 7 Nomor 1 April 2021 e-ISSN : 2443-2229

survey,” Artif. Intell. Med., vol. 99, no. July, hlm. 101701, 2019, doi: network/lecture/RN8bN/fitting-batch-norm-into-a-neural-network.
10.1016/j.artmed.2019.07.009. [Diakses: 30-Des-2020]
[3] Y. W. Chen, T. Y. Wu, W. H. Wong, dan C. Y. Lee, “Diabetic [20] Z. Gao, J. Li, J. Guo, Y. Chen, Z. Yi, dan J. Zhong, “Diagnosis of
Retinopathy Detection Based on Deep Convolutional Neural Diabetic Retinopathy Using Deep Neural Networks,” IEEE Access,
Networks,” ICASSP IEEE Int. Conf. Acoust. Speech Signal Process. - vol. 7, hlm. 3360–3370, 2019, doi: 10.1109/ACCESS.2018.2888639.
Proc., vol. 2018-April, hlm. 1030–1034, 2018, doi: [21] Dr. A. Rosebrock, Deep Learning for Computer Vision with Python -
10.1109/ICASSP.2018.8461427. Starter Bundle, First printing., vol. 1, 3 vol. PYIMAGESEARCH,
[4] A. Krizhevsky, I. Sutskever, dan G. E. Hinton, “ImageNet 2017.
classification with deep convolutional neural networks,” Commun. [22] G. García, J. Gallardo, A. Mauricio, J. López, dan C. Del Carpio,
ACM, vol. 60, no. 6, hlm. 84–90, Mei 2017, doi: 10.1145/3065386. “Detection of Diabetic Retinopathy Based on a Convolutional Neural
[5] N. Tajbakhsh dkk., “Convolutional Neural Networks for Medical Network Using Retinal Fundus Images,” dalam Artificial Neural
Image Analysis: Full Training or Fine Tuning?,” IEEE Trans. Med. Networks and Machine Learning – ICANN 2017, vol. 10614, A.
Imaging, vol. 35, no. 5, hlm. 1299–1312, Mei 2016, doi: Lintas, S. Rovetta, P. F. M. J. Verschure, dan A. E. P. Villa, Ed. Cham:
10.1109/TMI.2016.2535302. Springer International Publishing, 2017, hlm. 635–642 [Online].
[6] “ImageNet.” [Online]. Tersedia pada: http://image-net.org/about- Tersedia pada: http://link.springer.com/10.1007/978-3-319-68612-
stats. [Diakses: 13-Okt-2020] 7_72. [Diakses: 05-Des-2020]
[7] J. Yosinski, J. Clune, Y. Bengio, dan H. Lipson, “How transferable [23] M. T. Hagos dan S. Kant, “Transfer Learning based Detection of
are features in deep neural networks?,” Adv. Neural Inf. Process. Syst., Diabetic Retinopathy from Small Dataset,” 2019.
vol. 4, no. January, hlm. 3320–3328, 2014. [24] “Image hashing with OpenCV and Python - PyImageSearch.”
[8] M. A. Bravo dan P. A. Arbelaez, “Automatic Diabetic Retinopathy [Online]. Tersedia pada:
Classification,” hlm. 10. https://www.pyimagesearch.com/2017/11/27/image-hashing-
[9] C. Lian, Y. Liang, R. Kang, dan Y. Xiang, “Deep convolutional neural opencv-python/. [Diakses: 31-Des-2020]
networks for diabetic retinopathy classification,” ACM Int. Conf. [25] B. Graham, “Kaggle Diabetic Retinopathy Detection competition
Proceeding Ser., no. c, hlm. 68–72, Jun 2018, doi: report,” hlm. 9.
10.1145/3239576.3239589. [26] “APTOS : Eye Preprocessing in Diabetic Retinopathy.” [Online].
[10] S. Mohammadian, A. Karsaz, dan Y. M. Roshan, “Comparative Study Tersedia pada: https://kaggle.com/ratthachat/aptos-eye-
of Fine-Tuning of Pre-Trained Convolutional Neural Networks for preprocessing-in-diabetic-retinopathy. [Diakses: 19-Des-2020]
Diabetic Retinopathy Screening,” dalam 2017 24th National and 2nd [27] B. Ramasubramanian dan S. Selvaperumal, “A comprehensive review
International Iranian Conference on Biomedical Engineering on various preprocessing methods in detecting diabetic retinopathy,”
(ICBME), Tehran, 2017, hlm. 1–6, doi: dalam 2016 International Conference on Communication and Signal
10.1109/ICBME.2017.8430269 [Online]. Tersedia pada: Processing (ICCSP), Melmaruvathur, Tamilnadu, India, 2016, hlm.
https://ieeexplore.ieee.org/document/8430269/. [Diakses: 25-Jun- 0642–0646, doi: 10.1109/ICCSP.2016.7754220 [Online]. Tersedia
2020] pada: http://ieeexplore.ieee.org/document/7754220/. [Diakses: 05-
[11] C. Szegedy, V. Vanhoucke, S. Ioffe, J. Shlens, dan Z. Wojna, Des-2020]
“Rethinking the Inception Architecture for Computer Vision,” dalam [28] Aravind Eye Care System, “4th Asia Pacific Tele-Ophthalmology
2016 IEEE Conference on Computer Vision and Pattern Recognition Society (APTOS) Symposium,” APTOS 2019, 2019. .
(CVPR), Las Vegas, NV, USA, 2016, hlm. 2818–2826, doi: [29] H. Pratt, F. Coenen, D. M. Broadbent, S. P. Harding, dan Y. Zheng,
10.1109/CVPR.2016.308 [Online]. Tersedia pada: “Convolutional Neural Networks for Diabetic Retinopathy,”
http://ieeexplore.ieee.org/document/7780677/. [Diakses: 25-Jun- Procedia Comput. Sci., vol. 90, no. July, hlm. 200–205, 2016, doi:
2020] 10.1016/j.procs.2016.07.014.
[12] Asia Pacific Tele-Ophthalmology Society, “APTOS 2019 Blindness [30] “scikit-learn/scikit-learn,” GitHub. [Online]. Tersedia pada:
Detection dataset,” APTOS 2019, 2019. . https://github.com/scikit-learn/scikit-learn. [Diakses: 02-Jan-2021]
[13] I. Goodfellow, Y. Bengio, dan A. Courville, Deep learning. [31] “python - Crop black border of image using NumPy,” Code Review
Cambridge, Massachusetts: The MIT Press, 2016. Stack Exchange. [Online]. Tersedia pada:
[14] G. Currie, K. E. Hawk, E. Rohren, A. Vial, dan R. Klein, “Machine https://codereview.stackexchange.com/questions/132914/crop-black-
Learning and Deep Learning in Medical Imaging: Intelligent Imaging,” border-of-image-using-numpy. [Diakses: 13-Jan-2021]
J. Med. Imaging Radiat. Sci., vol. 50, no. 4, hlm. 477–487, 2019, doi: [32] R. C. Gonzalez dan R. E. Woods, Digital image processing, 3. ed.,
10.1016/j.jmir.2019.09.005. internat. ed. Upper Saddle River, NJ: Pearson, 2010.
[15] C. Szegedy dkk., “Going deeper with convolutions,” dalam [33] “OpenCV: Operations on arrays.” [Online]. Tersedia pada:
Proceedings of the IEEE Computer Society Conference on Computer https://docs.opencv.org/master/d2/de8/group__core__array.html#gaf
Vision and Pattern Recognition, 2015, vol. 07-12-June, no. 8, hlm. 1– afb2513349db3bcff51f54ee5592a19. [Diakses: 12-Jan-2021]
9, doi: 10.1109/CVPR.2015.7298594. [34] J. Sanjaya dan M. Ayub, “Augmentasi Data Pengenalan Citra Mobil
[16] X. Wang, Y. Lu, Y. Wang, dan W. B. Chen, “Diabetic retinopathy Menggunakan Pendekatan Random Crop, Rotate, dan Mixup,” J. Tek.
stage classification using convolutional neural networks,” Proc. - Inform. Dan Sist. Inf., vol. 6, no. 2, Agu 2020, doi:
2018 IEEE 19th Int. Conf. Inf. Reuse Integr. Data Sci. IRI 2018, hlm. 10.28932/jutisi.v6i2.2688. [Online]. Tersedia pada:
465–471, 2018, doi: 10.1109/IRI.2018.00074. https://journal.maranatha.edu/index.php/jutisi/article/view/2688.
[17] S.-H. Tsang, “Review: Inception-v3 — 1st Runner Up (Image [Diakses: 05-Des-2020]
Classification) in ILSVRC 2015,” Medium, 23-Mar-2019. [Online]. [35] F. Chollet, Deep learning with Python. Shelter Island, New York:
Tersedia pada: https://sh-tsang.medium.com/review-inception-v3- Manning Publications Co, 2018.
1st-runner-up-image-classification-in-ilsvrc-2015-17915421f77c. [36] “tf.keras.initializers.GlorotUniform | TensorFlow Core v2.4.0.”
[Diakses: 11-Jan-2021] [Online]. Tersedia pada:
[18] “vision.learner | fastai.” [Online]. Tersedia pada: https://www.tensorflow.org/api_docs/python/tf/keras/initializers/Glo
https://fastai1.fast.ai/vision.learner.html#cnn_learner. [Diakses: 04- rotUniform. [Diakses: 01-Jan-2021]
Jan-2021] [37] “Advanced Guide to Inception v3 on Cloud TPU,” Google Cloud.
[19] “Fitting Batch Norm into a neural network,” Coursera. [Online]. [Online]. Tersedia pada:
Tersedia pada: https://www.coursera.org/learn/deep-neural- https://cloud.google.com/tpu/docs/inception-v3-advanced. [Diakses:
11-Jan-2021]

124

You might also like