## Penerapan Convolutional Neural Network Untuk Klasifikasi Tingkat Keparahan Retinopati Diabetik Pada Penderita Diabetes Melitus
Fithra Hayati Syahrul 1) , dan Priyo Sidik Sasongko 2)
Departemen Ilmu Komputer / Informatika, Universitas Diponegoro
1) fithrahayatisyahrul@students.undip.ac.id, 2) priyosidiksasongko@lecturer.undip.ac.id

## Abstrak
Retinopati Diabetik adalah penyakit yang dapat menganggu pembuluh darah retina yang menjadi penyebab kebutaan bagi penderita Diabetes Melitus. Jika penyakit ini terlambat ditangani maka penderita dapat mengalami kebutaan. Perawatan dan pemeriksaan yang tepat  dapat  membantu  mencegah  meningkatnya  keparahan  Retinopati  Diabetik. Pemeriksaan  secara  manual  oleh  dokter  mata  dalam  mendiagnosis  penyakit  ini membutuhkan  waktu  yang  relatif  lama,  sehingga  diperlukan  sistem  untuk mengklasifikasikan  tingkat  keparahan  Retinopati  Diabetik.  Sistem  yang  dirancang  pada penelitian ini menggunakan metode Convolutional Neural Netwok untuk klasifikasi tingkat keparahan Retinopati Diabetik. Tingkat keparahan Retinopati Diabetik dibagi menjadi 5 kelas yaitu NO DR, Mild, Moderate, Severe, dan Proliferative DR. Penelitian Penerapan Convolutional  Neural  Netwok  untuk  Klasifikasi  Tingkat  Keparahan  Retinopati  Diabetik pada  Penderita  Diabetes  Melitus  menggunakan  citra  berukuran  64  x  64  x  3  dengan channel  RGB.  Tahap  pra-pengolahan  citra  yang  dilakukan  adalah  pengubahan  ukuran citra.  Arsitektur  CNN  yang  digunakan  terdiri  dari  5  blok  dimana  masing-masing  blok berisi  batch  normalization  layer,  convolution  layer,  max  pooling  layer  menggunakan parameter learning rate 0.0005. Hasil evaluasi model 652 data uji menunjukkan akurasi terbaik sebesar 91.10%.
Kata kunci

## : Retina, Retinopati diabetik, Convolutional Neural Network

## Abstract
Diabetic retinopathy is a disease that can interfere with retinal blood vessels that cause blindness for people with diabetes mellitus. If the disease is treated too late then the patient can experience blindness. Proper care and examination can help prevent the increasing severity of diabetic retinopathy. Manual examination by an ophthalmologist in diagnosing this disease requires a relatively long time, so we need a system to classify the severity of diabetic  retinopathy.  The  system  designed  in  this  study  uses  the  Convolutional  Neural Netwok  method  to  classify  the  severity  of  diabetic  retinopathy.  The  severity  of  Diabetic Retinopathy  is  divided  into  5  classes  namely  NO  DR,  Mild,  Moderate,  Severe,  and Proliferative DR. Research on the Application of Convolutional Neural Netwok to Classify the Severity of Diabetic Retinopathy in Diabetes Mellitus Patients using 64 x 64 x 3 images with RGB channels. The image pre-processing stage is done by resizing the image. The CNN  architecture  used  consists  of  5  blocks  where  each  block  contains  a  batch normalization  layer,  convolution  layer,  max  pooling  layer  using  the  learning  rate parameter of 0.0005. The results of the evaluation of the 652 model test data showed the best accuracy of 91.10%.

## Keywords  : Retina, Retinopati diabetic, Convolutional Neural Network

## 1 P ENDAHULUAN
Diabetes  Melitus  (DM)  adalah  penyakit  kronik  yang  banyak  diderita  di  dunia.  Jumlah populasi yang mengalami penyakit ini mencapai 2.8% atau sebanyak 171 juta penderita di dunia pada tahun 2000. Indonesia menempati urutan ke-4 di dunia setelah India, Cina, dan Amerika Serikat sebagai negara dengan penderita DM sebesar 8.4 juta pada tahun 2000 serta diprediksi akan meningkat menjadi 21.3 juta penderita paada tahun 2030 [1].
Retinopati  diabetik  (RD)  merupakan  komplikasi  DM  pada  mata  yang  menyebabkan kebutaan  terbanyak  setelah  katarak,  hal  ini  meningkat  seiring  dengan  meningkatnya  jumlah penderita  DM  [2].  Menurut  WHO  kebutaan  paling  banyak  terjadi  karena  katarak  (47.8%), glaucoma (12.3%), uveitis (10.2%), age macular degeration (AMD) (8.7%), trachoma (3.6%), corneal opacity (5.1%), dan diabetic retinopathy (4.8%) [3]. Kebutaan yang diakibatkan oleh RD dapat menurunkan kualitas hidup dan produktivitas penderita yang menimbulkan masalah sosial,  sehingga  penyakit  ini  menjadi  masalah  kesehatan  yang  diwaspadai  di  dunia,  hal  ini disebabkan keterlambatan diagnosis oleh dokter spesialis mata karena pada tahap awal tidak mengalami gangguan penglihatan. Diagnosis RD secara dini dapat membantu perawatan medis dan  prognosis.  Diagnosis  otomatis  berdasarkan  pencitraan  medis  merupakan  bagian  penting dari  perawatan  menggunakan  teknologi,  beberapa  sistem  diagnosis  dibantu  komputer  telah diusulkan untuk membantu dokter mata dalam mengenali RD.

## 2 T INJAUAN P USTAKA
Penelitian terkait klasifikasi penyakit RD telah dilakukan menggunakan berbagai metode seperti  pada  penelitian  tentang Wavelet  Haar dan Backpropagation  Neural  Network untuk klasifikasi  Retinopati  Diabetik.  Proses  yang  dilakukan  adalah prepocessing ,  ekstraksi  ciri menggunakan wavelet haar pada level 1 dan 4, normalisasi dan klasifikasi. Hasilnya tingkat akurasi terendah pada level 1 mencapai 45.16% dan data uji 20%, sedangkan tingkat akurasi tertinggi sebesar 55% pada ukuran citra 2240 x 1488 piksel dan 1440 x 960 piksel dengan data uji 10% lalu tingkat akurasi terendah pada level 4 adalah 40.63% dengan ukuran citra 2304 x 1536 piksel dan 1440 x 960 piksel dan data uji 5% sedangkan tingkat akurasi tertinggi sebesar 56.25% pada ukuran citra 2240 x 1488 piksel dengan data uji 5% [4]. Kemudian penelitian lain tentang sistem klasifikasi tingkat keparahan Retinopati Diabetik menggunakan Support Vector Machine . Proses yang dilakukan adalah akuisisi citra, pra-pengolahan citra, deteksi, ekstraksi ciri,  dan  klasifikasi.  Evaluasi  dari  klasifikasi  menggunakan  parameter  akurasi  ( accuracy ), kekhususan ( specificity ), dan sensitivitas ( sensitivity ). Hasil penelitian klasifikasi pada 240 data latih dan 60 data uji menghasilkan nilai rata-rata akurasi sebesar 95.93%, specificity 97.29% dan sensitivity 91.07%  [5].
Selanjutnya  penelitian  untuk  deteksi  dan  klasifikasi  Retinopati  Diabetik  menggunakan CNN  untuk  klasifikasi  menjadi  4  kelas  yaitu  normal,  edema  makula,  diabetes  proliferatif retinopati, dan retinopati diabetes non-proliferatif. Model CNN penelitian ini memiliki delapan lapisan  yaitu  lapisan  input  gambar,  lapisan  konvolusi,  lapisan  ReLU,  lapisan  normalisasi, lapisan max pooling , lapisan fully connected, lapisan softmax , dan klasifikasi.  Hasil evaluasi kinerja yang diperoleh akurasi 97%, sensitivitas 94%, spesifisitas 98%, precision 94% [6]. Lalu, penelitian  klasifikasi  Retinopati  Diabetik  menggunakan  arsitektur deep  learning untuk
klasifikasi  menjadi  5  kelas  yaitu  normal, mild,  moderate,  severe  non-proliferative ,  dan proliferative  diabetic  retinopathy .  Penelitian  ini  menggunakan  citra  berukuran  1x256x256, kemudian  melakukan  proses  augmentasi  yaitu contrast  adjustment,  flipping  images ,  dan brightness adjusments . Setelah itu, pegubahan ukuran citra, konversi  citra ke grayscale , dan konversi ke model L. Arsitektur CNN yang digunakan terdiri dari lapisan konvolusi, lapisan pooling, lapisan ReLU, lapisan dropout , lapisan fully connected , dan lapisan klasifikasi. Hasil performa yang diperoleh sebesar 94% [7].
Pendekatan  deep  learning  telah  meningkatkan  kinerja  prediksi  dalam  klasifikasi  dan diagnosis  penyakit  berdasarkan  pencitraan  medis.  Pendekatan  diterapkan  tidak  hanya  untuk memprediksi keberadaan penyakit tetapi juga untuk membedakan kelas penyakit [8]. Penelitian yang dilakukan oleh Jude Hemanth D., Omer Deperlioglu, dan Utku Kose dalam mendeteksi dan klasifikasi Retinopati Diabetik menggunakan CNN untuk 4 kelas, menghasilkan evaluasi kinerja  yang  sangat  baik  dibuktikan  dengan  nilai  akurasi  yang  diperoleh  sebesar    97%,  lalu sensitivitas 94%, spesifisitas 98%, dan precision 94%.
Penelitian  ini  menerapkan  metode  CNN  untuk  mengklasifikasi  tingkat  keparahan Retinopati Diabetik pada penderita Diabetes Melitus. Penelitian ini menggunakan citra fundus yang diklasifikasikan menjadi 5 kelas yaitu NO DR, Mild, Moderate, Severe, dan Prolifetaive DR . Harapannya penelitian ini dapat  membantu  dokter mata dalam mendiagnosis  Retinopati Diabetik.

## 3 M ETODE P ENELITIAN
Penelitian klasifikasi tingkat keparahan Retinopati Diabetik ini diperlukan suatu langkah penyelesaian  masalah  yang  sistematis  untuk  mendapatkan  hasil  yang  tepat.  Langkah penyelesaian masalah ditunjukkan pada Gambar 1.
Gambar 1  Garis Besar Penyelesaian Masalah

## 3.1 P ENGAMBILAN D ATA
Pengambilan  data  pada  penelitian  ini  dari  APTOS  2019 Blindness  Detection  kaggle , secara  keseluruhan  terdapat  3662  citra  menggunakan  channel  RGB  yang  terbagi  menjadi  5
Pengambilan Data Pra-pengolahan Citra Augmentasi Data Pembagian Data Pelatihan Evaluasi
kelas yaitu 0 ( NO DR / Normal), 1 ( Mild / Retinopati Nonproliferatif Ringan), 2 ( Moderate / Retinopati  Nonproliferatif  Sedang),  3  ( Severe /  Retinopati  Nonproliferatif  Berat),  dan  4 ( Proliferative DR / Retinopati Diabetik Proliferatif).

## 3.2 P RA - PENGOLAHAN C ITRA
Pra-pengolahan  citra  berguna  untuk  mempersiapkan  data  dari  bentuk  data  mentah menjadi data yang siap digunakan pada tahapan selanjutnya, pada penelitian ini input berupa gambar .jpg atau .png berbagai ukuran misalnya 2416x1736x3 kemudian ukuran setiap gambar diubah  menjadi  64x64x3.  Kemudian  gambar-gambar  tersebut  diubah  menjadi  .csv.  Channel warna yang digunakan adalah Red, Green , Blue (RGB).

## 3.3 A UGMENTASI D ATA
Augmentasi  data sangat penting untuk dilakukan untuk menyeimbangkan jumlah data citra  agar  mencapai  kinerja  yang  memuaskan.  Penelitian  ini  menggunakan  augmentasi  data yaitu rotation image , dan flipping image .

## 3.4 P EMBAGIAN D ATA
Proses pembagian data yaitu memisahkan data latih untuk pelatihan dan data uji untuk pengujian. Perbandingan data latih dan data uji adalah 9:1 dimana 5860 data yang masuk ke proses  pelatihan  dan  652  data  yang  digunakan  untuk  proses  pengujian.  Pembagian  data menggunakan parameter seed  untuk  memastikan angka random  yang dihasilkan benar-benar acak.

## 3.5 A RSITEKTUR CNN
CNN  adalah  algoritma  untuk  identifikasi  citra  berdasarkan  kelas-kelas.  Pelatihan  pada CNN  dilakukan  pada  data-data  yang  telah  diberi  label  sebagai  data  latih  dengan  melakukan konvolusi citra untuk mendapatkan fitur yang dapat digunakan pada fully connected layer untuk diarahkan kepada kelas tertentu.
Penelitian ini merancang arsitektur yang terdiri dari 1 batch normalization layer dengan ukuran  kernel  5x5  pada  1  layer  konvolusi  menggunakan  aktivasi  ReLU,  dan  1  layer  Max pooling. Blok layer ini diulang sebanyak 5 kali untuk setiap citra input. Setiap blok dilengkapi 1 batch normalization layer untuk menormalkan nilai citra masukan, sedangkan pada akhir blok terdapat  layer Max  pooling untuk  mencari  nilai  maksimum  pada  setiap  dimensi  vektor  yang berguna  sebagai  output  untuk  tahap  selanjutnya.  Input  masukan  citra  ukuran  64  x  64  x  3 (panjang x lebar x channel), dapat dilihat pada Gambar 2.

## 3.6 P ELATIHAN M ODEL
Data latih  yang digunakan untuk  pelatihan  sebanyak 5.860  citra. Data latih memiliki variabel label terpisah dengan  representasi categorical . Optimizer pelatihan untuk tiap CNN yang digunakan adalah Adam.  Pelatihan pada tiap CNN menggunakan epoch sebanyak 100. Pengukuran  pengujian sementara (validasi) pada proses pelatihan di tiap epoch berupa error ( loss )  dan  akurasi.  Pengukuran loss yang  digunakan  adalah categorical  cross  entropy yaitu pengukuran error untuk kasus multiclass . Paramater EarlyStopping dengan patience  sebanyak 100,  artinya  pelatihan  akan  berhenti  saat  terjadi  peningkatan  sebanyak  100  kali  pada  loss
dengan tujuan menghindari overfitting lebih dini, sehingga pelatihan  tiap CNN akan berhenti saat  patience mencapai 100.
Gambar 2  Arsitektur CNN Penelitian
Citra 64x64x3 Conv2D 5x5, ReLU, 64 Batch Normalization Layer MaxPooling 2x2 Batch Normalization Layer Conv2D 5x5, ReLU, 128 MaxPooling 2x2 Batch Normalization Layer
Conv2D 5x5, ReLU, 256
MaxPooling 2x2 Batch Normalization Layer
Conv2D 5x5, ReLU, 512 MaxPooling 2x2 Batch Normalization Layer Conv2D 5x5, ReLU, 1024
MaxPooling 2x2 64 x 64 x 3 32 x 32 x 64 64 x 64 x 64 32 x 32 x 64 16 x 16 x 128 32 x 32 x 128 16 x 16 x 128 8 x 8 x 256 16 x 16 x 256 8 x 8 x 256 4 x 4 x 512 8 x 8 x 512 4 x 4 x 512 2 x 2 x 1024 4 x 4 x 1024
output shape
output shape
output shape
output
shape
output shape Flatten Fully Connected, 200, ReLU Fully Connected, 5, Softmax 4096 5 200 Kelas prediksi A A
Pelatihan dilakukan secara berulang sebanyak lima blok dimana setiap blok terdiri dari proses batch normalization, convolution  layer , dan max pooling layer hingga menghasilkan nilai akurasi yang optimal dan  mencegah terjadinya underfit (keadaan di mana model data latih yang digunakan tidak mewakili seluruh data yang digunakan) dan overfit pada data. Overfitting dihindari  dengan  penggunaan  paramater early  stopping .  Proses  pelatihan  CNN  dapat  dilihat pada Gambar 3.

## 3.7 P ROSES F ORWARD P ROPAGATION
Gambar 3  Flowchart Pelatihan CNN
Proses  pelatihan  terjadi  dari  blok  awal  sampai  blok  akhir  yang  berisi  layer batch normalization ,  konvolusi,  dan max  pooling dengan  memisalkan  input  sebuah  channel.
start max_epoch patience j=0, i=0 input .csv i>= patience or j >= max_epoch save weights, model end batch normalization convolution layer max pooling layer flatten fully connected ReLU fully connected softmax Adam
batch normalization convolution layer max pooling layer
flatten fully connected ReLU batch normalization convolution layer max pooling layer flatten fully connected ReLU batch normalization convolution layer max pooling layer flatten fully connected ReLU batch normalization convolution layer max pooling layer flatten fully connected ReLU batch normalization convolution layer max pooling layer flatten fully connected ReLU Adam Adam Adam Adam print loss, accuracy loss (j) < loss (j-1) i = i +1, j = j + 1 i = i +1
Langkah-langkah perhitungan dibagi menjadi 3 bagian yaitu bagian forward propagation, back propagation, dan update parameter.
Menurut [9], proses feed-forward pada CNN adalah sebagai berikut :
1) Inisialisasi bias dengan nilai 0, serta nilai awal  bobot pada lapisan fully connected dan lapisan konvolusi secara acak.
2) Proses konvolusi.
𝐶 𝑝 𝑞 =  𝑓(𝐼 ∗ 𝑘 1,𝑝 𝑞 +   𝑏 𝑝 𝑞 ) (1)
3) Proses subsampling oleh lapisan pooling.
𝑆 𝑝 𝑞 (𝑖, 𝑗) = 𝑚𝑎𝑥 (∑ ∑ 𝐶 𝑝 𝑞 (𝑖, 𝑗)) 1 𝑣=0 1 𝑢=0 (2)
4) Proses vectorization dan concatenation.
𝑓𝑐 = 𝐹𝑐({𝑆 𝑝 𝑞 }) (3)
5) Menghitung prediksi target fitur yang masuk ke dalam lapisan fully connected.
𝑦̂(𝑖) =  𝑓(∑ 𝑊(𝑖, 𝑗) ∙ 𝑛 𝑗=1 𝑓𝑐(𝑗) +  𝑏(𝑖)) (4)

## 6) Menghitung nilai loss.
𝐿(𝑦 𝐿+1 , 𝑦) = − ∑ 𝑦 𝑗 𝑙𝑜𝑔(𝑦 𝑗 𝐿+1 ) 𝑛 𝑗=1 (5)

## 3.8 P ROSES B ACKPROPAGATION
Proses backpropagation pada CNN menurut [9] adalah sebagai berikut :
1) Perhitungan perubahan bobot W yang terhubung dengan neuron penghasil fitur dari lapisan hidden.
∆𝑊(𝑖, 𝑗) = (𝑦̂(𝑖) −  𝑦(𝑖)) ∙ 𝑦̂(𝑖)(1 − 𝑦̂(𝑖)) ∙ 𝑓𝑐(𝑗) (6)
2) Update bias.
∆𝑏(𝑖) = (𝑦̂(𝑖) −  𝑦(𝑖))   ∙   𝑦̂(𝑖) (1 − 𝑦̂(𝑖)) (7)

## 3) Menghitung perubahan feature maps.
∆𝑓𝑐(𝑗) = ∑ ∆𝑦̂(𝑖) ∙ 𝑛 𝑖=1 W(i,j) (8)

## 4) Mengubah vektor panjang ke bentuk matriks 2 dimensi.
{∆𝑆 𝑝 𝑞 }𝑝 = 1,2, … 𝑛 = 𝐹 −1 (∆𝑓𝑐) (9)

## 5) Proses upsampling.
∆𝐶 𝑝 𝑞 (𝑖, 𝑗) =   (∆𝑆 𝑝 𝑞 (⌈ 𝑖 2 ⌉ , ⌈ 𝑗 2 ⌉)) , 𝑝 = 1,2, … 𝑛 (10)
7) Menghitung perubahan nilai filter.
∆𝑘 1,𝑝 𝑞 =   𝐼 𝑟𝑜𝑡180 ∗    ∆𝐶′ 𝑝,𝑓 𝑞 (11)

## 8) Menghitung perubahan nilai bias.
∆𝑏 𝑝 𝑞 = ∑ ∑ ∆𝐶 𝑝,𝑓 𝑞 (𝑖, 𝑗) 𝑛 𝑗=1 𝑛 𝑖=1 (12)
9) Update parameter.

## 4 HASIL DAN PEMBAHASAN
Penelitian ini terdapat enam skenario pelatihan model, yaitu pertama untuk mengetahui pengaruh perubahan parameter learning rate yaitu 0.00001, 0.00003, 0.00005, 0.00007, 0.0001, 0.0003,  0.0005,  0.0007,  dan  0.001  pada  saat  pelatihan,  kedua  pengaruh  penggunaan  jenis pooling layer pada model saat pelatihan yaitu Max Pooling Layer dan Average Pooling Layer , ketiga pengaruh penggunaan dropout dan tanpa menggunakan dropout pada model pelatihan, keempat  pengaruh  ukuran  kernel  sebesar  3x3,  5x5,  dan  7x7  pada  model  pelatihan,  kelima pengaruh jumlah blok pada model saat pelatihan yaitu 3 blok, 4 blok, dan 5 blok, lalu keenam pengaruh penggunaan batch normalization dan tidak menggunakan batch normalization pada model pelatihan.

## 4.1.1 H ASIL SKENARIO 1
Hasil skenario 1 menampilkan grafik pengaruh nilai learning rate terhadap akurasi yang dapat dilihat pada Gambar 4 dan grafik pengaruh nilai learning rate terhadap loss dapat dilihat pada Gambar 5.
Gambar 4 Grafik Pengaruh Nilai Learning Rate  terhadap Akurasi
0 0,5 1 Ak ura si Learning Rate Pengaruh Nilai Learning Rate terhadap Akurasi 0 0,5 1 L o ss Learning Rate Pengaruh Learning Rate terhadap Loss
Hasil  percobaan  dengan  perubahan  nilai  parameter  learning  rate  menunjukkan  bahwa learning rate yang bernilai 0.0005 menghasilkan performa akurasi dan loss paling baik. Akurasi yang diperoleh sebesar 0.9110 dan nilai loss  0.3944.

## 4.1.2 H ASIL SKENARIO 2
Hasil  skenario  2  menampilkan  penggunaan  jenis pooling  layer terhadap  akurasi  dapat dilihat pada Gambar 6 dan grafik penggunaan jenis pooling layer terhadap loss dapat dilihat pada Gambar 7.
Gambar 6 Grafik Penggunaan Jenis Pooling Layer terhadap Akurasi
Gambar 7 Grafik Penggunaan Jenis Pooling Layer  terhadap Loss
Hasil percobaan penggunaan jenis pooling layer terhadap akurasi dan loss menunjukkan bahwa penggunaan Max Pooling Layer menghasilkan performa akurasi dan loss paling baik, dibuktikan dengaan nilai akurasi yang lebih baik yaitu sebesar 0.9110 dan nilai loss yang lebih kecil  sebesar  0.3944  dibandingkan  dengan  penggunan Average  Pooling  Layer yang menghasilkan nilai akurasi sebesar 0.8580 dan nilai loss 0.4650.

## 4.1.3 H ASIL S KENARIO 3
Hasil skenario  3 menampilkan  pengaruh penggunaan dropout dan tanpa  menggunakan dropout terhadap akurasi dapat dilihat pada Gambar 8 dan grafik pengaruh dropout dan tanpa menggunakan dropout terhadap loss dapat dilihat pada Gambar 9.
0 0,5 1 Max Pooling Average Pooling Ak ura si Jenis Pooling Penggunaan Jenis Pooling Layer terhadap Akurasi 0 0,5 Max Pooling Average Pooling L o ss Jenis Pooling Penggunaan Jenis Pooling Layer terhadap Loss
Gambar 8 Grafik Pengaruh  Dropout  terhadap Akurasi
Gambar 9  Grafik Pengaruh  Dropout  terhadap Loss

## 4.1.4 H ASIL S KENARIO 4
Hasil skenario 4 menampilkan pengaruh ukuran kernel terhadap akurasi  dapat dilihat pada Gambar 10 dan grafik pengaruh ukuran kernel terhadap loss dapat dilihat pada Gambar 11.  Hasil  percobaan  pengaruh  ukuran  kernel  terhadap  akurasi  dan  loss  menunjukkan  bahwa menggunakan  ukuran  kernel  5x5  menghasilkan  performa  akurasi  dan  loss  paling  baik,  nilai akurasi sebesar 0.9110 dan nilai loss sebesar 0.3944 dibandingkan dengan ukuran kernel 3x3 yang menghasilkan nilai akurasi sebesar 0.9043 dan nilai loss 0.3827 serta ukuran kernel 7x7 menghasilkan nilai akurasi sebesar 0.7191 dan nilai loss 0.7155.
0 0,5 1 Tanpa Dropout Menggunakan Dropout Ak ura si Penggunaan Dropout Penggunaan Dropout terhadap Akurasi 0 0,5 1 Tanpa Dropout Menggunakan Dropout L o ss Penggunaan Dropout Penggunaan Dropout terhadap Loss 0 0,5 1 3x3 5x5 7x7 Ak ura si Ukuran kernel Pengaruh Ukuran kernel terhadap Akurasi

## Gambar 11  Grafik Pengaruh  Ukuran kernel terhadap Loss

## 4.1.5 H ASIL S KENARIO 5
Hasil skenario 5 menampilkan pengaruh jumlah blok terhadap akurasi dapat dilihat pada Gambar 12 dan grafik pengaruh jumlah blok  terhadap loss dapat dilihat pada Gambar 13.
Gambar 12  Grafik Pengaruh Jumlah Blok terhadap Akurasi

## Gambar 13 Grafik Pengaruh  Jumlah Blok terhadap Loss
Hasil percobaan pengaruh ukuran kernel terhadap akurasi dan loss menunjukkan bahwa menggunakan jumlah blok 5 menghasilkan performa akurasi dan loss paling baik, dengan nilai akurasi sebesar 0.9110 dan nilai loss sebesar 0.3944 dibandingkan dengan jumlah blok 3 yang menghasilkan  nilai  akurasi  sebesar  0.9043  dan  nilai  loss  0.3827  serta  jumlah  blok  4  yang menghasilkan nilai akurasi sebesar 0.8573 dan nilai loss 0.4337.
0 0,5 1 3x3 5x5 7x7 L o ss Ukuran kernel Pengaruh Ukuran kernel terhadap Loss 0 0,5 1 3 4 5 Ak ura si Jumlah Blok Pengaruh Jumlah Blok terhadap Akurasi 0 0,5 1 3 4 5 L o ss Jumlah Blok Pengaruh Jumlah Blok terhadap Loss

## 4.1.6 H ASIL S KENARIO 6
Hasil  skenario  6  menampilkan  pengaruh  penggunaan batch  normalization terhadap akurasi dapat dilihat pada Gambar 14  dan grafik pengaruh penggunaan batch normalization terhadap loss dapat dilihat pada Gambar 15.
Gambar 14 Grafik Pengaruh Penggunaan Batch Normalization  terhadap Akurasi

## Gambar 15  Grafik Pengaruh Penggunaan Batch Normalization  terhadap Loss
Hasil  percobaan  pengaruh  penggunaan batch  normalization terhadap  akurasi  dan loss menunjukkan bahwa menggunakan batch normalization menghasilkan performa akurasi  dan loss lebih baik, dibuktikan dengaan nilai akurasi sebesar 0.9110 dan nilai loss sebesar 0.3944 dibandingkan dengan tanpa menggunakan batch normalization yang menghasilkan nilai akurasi sebesar 0.8457 dan nilai loss 0.5132.

## 4.2 A NALISA H ASIL S EMUA S KENARIO
Hasil  skenario  terbaik  dari  hasil  skenario  penelitian  yang  sudah  dilakukan  untuk klasifikasi tingkat keparahan Retinopati Diabetik pada penderita Diabetes Melitus adalah pada nilai parameter learning rate 0.0005, menggunakan Max Pooling Layer , tanpa menggunakan dropout ,  menggunakan  kernel  5x5,  jumlah  blok  yang  digunakan  sebanyak  5  blok,  serta menggunakan batch normalization yang dibuktikan dengan hasil akurasi yang paling baik dan nilai loss paling kecil dibandingkan lainnya. Grafik pengaruh epoch terhadap akurasi pada hasil skenario terbaik dapat dilihat pada Gambar 16 serta grafik pengaruh epoch terhadap loss dapat dilihat pada Gambar 17.
0 0,5 1 Tanpa Batch Normalization Menggunakan Batch Normalization A k ura si Penggunaan Batch Normalization Pengaruh Penggunaan Batch Normalization  terhadap Akurasi 0 0,5 1 Tanpa Batch Normalization Menggunakan Batch Normalization L o ss Penggunaan Batch Normalization Pengaruh Penggunaan Batch Normalization terhadap Loss
Gambar 16  Grafik Pengaruh Epoch terhadap Akurasi Hasil Skenario Terbaik
Gambar 17  Grafik Pengaruh Epoch terhadap  Loss Hasil Skenario Terbaik

## 5 K ESIMPULAN
Kesimpulan  dari  hasil  penelitian  yang  dilakukan  mengenai  penerapan Convolutional Neural Network untuk klasifikasi tingkat keparahan retinopati diabetik pada penderita diabetes melitus adalah sebagai berikut:
1. Parameter pada arsitektur CNN yang diujicobakan dengan nilai learning rate sebesar 0.0005 menghasilkan nilai akurasi terbaik sebesar 91.10%.
2. Jenis  pooling  layer  terbaik  pada  learning  rate  0.0005    adalah Max  Pooling  Layer yang menghasilkan  performa  akurasi  dan  loss  paling  baik,  dibuktikan  dengan  nilai  akurasi sebesar 91.10%.
3. Arsitektur CNN yang diujicobakan tanpa penggunaan dropout, menggunakan ukuran kernel 5x5 dengan jumlah blok 5 serta menggunakan batch normalization menghasilkan akurasi terbaik sebesar 91.10%.
4. Nilai precision, recall , dan f1-score terbaik adalah kelas NO DR yang menunjukkan bahwa klasifikasi tingkat keparahan retinopati diabetik pada kelas normal sudah sangat baik. Nilai precision yang diperoleh sebesar 0.95 lalu recall 0.99, dan f1-score 0.97 atau 97% .

## D AFTAR P USTAKA
[1]  S. Wild, G. Roglic, A. Green, R. Sicree dan H. King, “Global Prevalence of Diabetes Estimates for the year 2000 and projections for 2030,” Diabetes Care, pp. 27(5): 1047-1053, 2004.
[2]  Sitompul, “RetinopatiDiabetik,” J Indon Med Assoc, pp. 61(8) p.337-341., 2011.
[3]  WHO, “Global Data on Visual Impairment,” 2002. [Online]. Available:
goliath.ecnext.com/com2/gi  0199-35322637/Global-data-on-visual-impairment.html.  [Diakses Agustus 2019].
[4]  S.  Sanjaya,  A.  M.  Priyatno,  F.  Yanto  dan  I.  Afrianty,  “Klasifikasi  Diabetik  Retinopati Menggunakan Wavelet Haar dan Backpropagation Neural Network,” ResearchGate, pp. 77-84, 2018.
[5]  T. G. A. Putranto dan I. Candradewi, “Sistem Klasifikasi Tingkat Keparahan Retinopati Diabetik Menggunakan Support Vector Machine,” Indonesia Journal of Electronics and Instrumentation Systems (IJEIS), pp. 37-48, 2018.
[6]  J.  Hemanth,  O.  Deperlioglu  dan  U.  Kose,  “An  enhanced  diabetic  retinopathy  detection  and classification approach using deep convolutional neural network,” Springer, 2018.
[7]  T.  Chandrakumar  dan  R.  Kathirvel,  “Classifying  Diabetic  Retinopathy  using  Deep  Learning Architecture,” International Journal of Engineering Research & Technology (IJERT), p. Vol. 5 , 2016.
[8]  S. J. Pan dan Q. Y. Fellow, “A Survey on Transfer Learning,” IEEE Transactions on knowledge and data engineering 22 (10), pp. 1345-1359, 2010.
[9]  Z.  Zhang,  “Derivation  of  Backpropagation  in  Convolutional  Neural  Network,”  University  of Tennessee, Knoxvill, 2016.