## KLASIFIKASI PENYAKIT PNEUMONIA MENGGUNAKAN METODE CONVOLUTIONAL NEURAL NETWORK DENGAN OPTIMASI ADAPTIVE MOMENTUM *
Lingga Aji Andika 1 , Hasih Pratiwi 2 , and Sri Sulistijowati Handajani 3
1 Department of Statistics, Universitas Sebelas Maret (UNS), Indonesia, linggaajiandika@gmail.com
2 Department of Statistics, Universitas Sebelas Maret (UNS), Indonesia, hasihpratiwi@gmail.com 3 Department of Statistics, Universitas Sebelas Maret (UNS), Indonesia, rr_ssh@staff.uns.ac.id
Indonesian Journal of Statistics and Its Applications (eISSN:2599-0802) Vol 3 No 3 (2019), 331 - 340
Copyright © 2019 Lingga Aji Andika, Hasih Pratiwi, and Sri Sulistijowati Handajani.  This is an open- access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

## Abstract
Pneumonia  is  an  infection  of  the  bacterium  Streptococcus  pneumoniae  which causes inflammation in the air bag in one or  both lungs. Pneumonia is a disease that can spread through the patient's air splashes. Pneumonia can be dangerous because it can cause death, therefore it is necessary to have early detection using chest radiograph images to determine the symptoms of pneumonia. Diagnosis using a chest radiograph image manually by medical personnel or a doctor requires a long time, even difficult to detect  pneumonia  disase.  Convolutional  neural  network  (CNN)  is  a  deep  learning method that adopts the performance of human brain neurons called neural network and convolution functions to classify images. CNN can also help classify pneumonia based on  chest  radiograph  images.  This  study  used  data  from  Labeled  Optical  Coherence Tomography (OCT) and Chest X-Ray Images for Classification as many as 5860 images entered into two classes, namely normal and pneumonia, then 2400 data samples were taken using simple random sampling. This study uses adaptive momentum optimization (Adam)  which  serves  to  improve  the  accuracy  of  the  model.  Adam  optimization  is  a development  of  existing  optimizations  such  as  Stochastic  gradient  descent  (SGD), AdaGard, and RMSProp. The classification results of the models built were 99.98% for training data with 100 epochs, and accuracy in the test data was 78% which means that the model was able to qualify 78% of the test data into normal classes and pneumonia appropriately.
Keywords :  adaptive  momentum,  classification,  convolutional  neural  network, pneumonia.
* Received Aug 2019; Accepted Oct 2019; Published online on Oct 2019

## 1.  Pendahuluan
Paru-paru merupakan organ pada sistem pernapasan manusia yang berfungsi sebagai pertukaran oksigen dengan karbondioksida di dalam darah. Penurunan kualitas udara di  dunia  termasuk  di  Indonesia,  berdampak  pada  meningkatnya  resiko  terkena penyakit paru-paru. Penyakit paru-paru yang sering dijumpai adalah paru-paru basah.
Paru-paru  basah  atau pneumonia adalah  bentuk  infeksi  pernapasan  akut  yang menyerang  paru-paru.  Paru-paru  terdiri  dari  kantung-kantung  kecil  yang  disebut alveoli, yang terisi air ketika orang sehat bernafas. Ketika seseorang menderita radang paru-paru,  alveoli  dipenuhi  dengan  nanah  dan  cairan,  yang  membuat  pernafasan terasa  menyakitkan  dan  membatasi  asupan  oksigen. Pneumonia adalah  penyebab kematian  menular  tunggal  terbesar  pada  anak-anak  di  seluruh  dunia. Pneumonia menyebabkan    920.136  anak  kasus  kematian  di  bawah  usia  5  tahun  pada  2015, terhitung  16%  dari  semua  anak  di  bawah  lima  tahun. Pneumonia paling  umum dijumpai di Asia Selatan dan Afrika sub-Sahara. Pneumonia disebabkan oleh sejumlah infeksi, termasuk virus, bakteri, dan jamur, yang  paling umum  adalah streptococcus pneumoniae (WHO, 2016).
Diagnosa dini pneumonia berdampak besar bagi nyawa seorang pasien. Diagnosa pneumonia pada umumnya dilakukan secara klinis (gejala fisik oleh dokter). Selain itu, penyakit pneumonia juga  dapat  didiagnosa  melalui  foto chest  radiograph ,  CT  scan, dan  MRI.  Pemeriksaan chest  radiograph adalah  salah  satu  pemeriksaan  pencitraan medis yang paling sering digunakan karena lebih terjangkau. Pembacaan foto chest radiograph memiliki  kekurangan,  yaitu  sulit  terdeteksinya  penyakit,  sehingga memerlukan  waku  lama  sebelum  tenaga  medis  atau  dokter  mendiagnosis  penyakit yang  diderita  oleh  pasien.  Salah  satu  metode  untuk  mengatasi  masalah  tersebut adalah  dengan  mengklasifikasikan  citra chest  radiograph ke  dalam  kelas  tertentu dengan  menggunakan machine  learning .  Metode  yang  digunakan  memproses  data adalah multilayer  perceptron (MLP)  (Rizal et  al .,  2017).  MLP  memiliki  kekurangan untuk beberapa jenis data, terutama untuk gambar, akan tetapi MLP tidak diadaptasi dengan baik sehingga kehilangan  informasi spasial yang terkandung dalam gambar. Deep  learning adalah  salah  satu  cabang  ilmu  dari  pembelajaran  mesin  atau  yang kerap  disebut  sebagai machine  learning . Deep  learning merupakan  teknik  disruptif yang  mengubah  paradigma  lama  dalam machine  learning . Deep  learning memiliki tingkat  akurasi  yang  jauh  lebih  tinggi  dibandingkan  dengan shallow  learning ,  yaitu metode machine learning yang ada sebelumnya seperti MLP (Cireşan et al ., 2012). Data  yang  berupa  citra chest  radiograph ,  merupakan  data  gambar  dua  dimensi yang  dapat  diproses  menggunakan deep  learning dengan  metode Convolutional Neural Network (CNN) (Santos et al ., 2007). CNN adalah jaringan saraf atau neural network yang  menggunakan  konvolusi  sebagai  pengganti  perkalian  matriks  umum, dimana  paling  tidak  terdapat  satu  konvolusi  di  setiap layer .  CNN  mampu mengklasifikasikan  citra  dengan  tingkat  akurasi  tinggi  karena  dapat  mengurangi sejumlah  parameter  bebas  serta  dapat  menangani  deformasi  gambar  input  seperti translasi,  rotasi  dan  skala.  Optimasi  pada  CNN  dapat  membantu  meningkatkan akurasi, salah satunya adalah adaptive moments atau adam (Kingma & Ba, 2014). Saraiva et al . (2019) membahas tentang klasifikasi penyakit pneumonia pada anak- anak  dengan  menggunakan convolutional  neural  network .  Penelitian  tersebut menggunakan validasi silang k-fold untuk mengevaluasi kapasitas generalisasi model dan  bertujuan  untuk  meningkatkan  akurasi  dengan  validasi  silang k-fold dengan akurasi rata-rata sebesar 95,30%. Akan tetapi penelitian tersebut belum ada pemilihan model terbaik dengan membandingkan jumlah epochs untuk model training sehingga didapatkan klasifikasi CNN dengan akurasi tertinggi, selain itu pembangunan arsitektur
model menggunakan base model yang sudah ada. Penelitian ini akan dibandingkan jumlah epochs untuk  mengklasifikasikan  penyakit  paru-paru  dengan  citra chest radiograph dengan melihat tingkat akurasi tertinggi dari optimasi model yang dibangun serta arsitektur model dari awal.

## 2.  Metodologi

## 2.1 Bahan dan Data
Data yang digunakan dalam penelitian ini merupakan data sekunder yang berasal dari Labeled  Optical  Coherence  Tomography  (OCT)  and  Chest  X-Ray  Images  for Classification (Kermany et al ., 2018). Data berupa gambar dengan berbagai ukuran. Data terdiri dari dua kelas yaitu kondisi pneumonia dan kondisi normal dengan jumlah 5860 data.

## 2.2 Metode Penelitian
Langkah-langkah  yang  dilakukan  untuk  mengklasifikasikan  penyakit pneumonia dengan  citra chest  radiograph menggunakan convolution  neural  network adalah sebagai berikut:
1)  Melakukan prepocessing data Sebelum data dianalisis perlu dilakukan preprocesing data, yang bertujuan untuk melihat  karakteristik  data.  Karakteristik  data  merupakan  gambaran  umum bagaimana  komputer  membaca  sebuah  gambar  menjadi array yang  bermakna untuk  proses  selanjutnya  seperti  adanya  efek  spasial  dalam  data  gambar. Preprocessing juga  membagi  data  ke  dalam  tiga  set  data  yaitu training  data, validasi  data , serta test  data yang  bertujuan  untuk  pemodelan  di  langkah selanjutnya.
2)  Melakukan pemodelan CNN pada data training .
Jaringan  konvolusional  yang  juga  dikenal  sebagai  jaringan  saraf  konvolusional, atau Convolutional Neural Network (CNN), adalah jenis jaringan saraf khusus untuk memproses data yang memiliki kemiripan grid topology . Nama CNN menunjukkan bahwa  jaringan  tersebut  menggunakan  operasi  matematika  yang  disebut konvolusi. CNN merupakan jaringan saraf yang menggunakan konvolusi sebagai ganti dari penerapan matriks umum dimana paling tidak terdapat satu konvolusi di setiap layer (Goodfellow et al ., 2016). Dalam matematika, konvolusi adalah operasi matematika  pada  dua  fungsi  untuk  menghasilkan  fungsi  ketiga  yang mengekspresikan  bagaimana  bentuk  satu  dimodifikasi  oleh  yang  lain.  Istilah konvolusi mengacu pada fungsi hasil dan proses penghitungannya (Romero et al ., 2016).
Sebagai  contoh  seseorang  menembakkan  sensor  laser  untuk  melacak  sebuah pesawat luar angkasa yang memberikan output tunggal x ( t ) dimana t adalah waktu ke- t dimana x dan t bernilai rill. Untuk memperoleh perkiraan posisi pesawat ruang angkasa  yang  tidak  terlalu  berisik,  digunakan  rata-rata  beberapa  pengukuran. Karena,  pengukuran  yang  terbaru  lebih  relevan,  maka  rata-rata  tertimbang digunakan  untuk  pembobot  pengukuran  baru.  Fungsi  ini  disebut  fungsi pembobotan w ( a )  dengan a usia  pengukuran.  Jika  digunakan  secara  terus menerus,  maka  didapatkan  fungsi  baru s yang  memeberikan  estimasi smooth tentang  posisi  pesawat,  sehingga  persamaan  kontinu  dapat  dituliskan  sebagai berikut (Goodfellow et al., 2016):
( ) ( ) ( ) s t x a w t a da   
Dalam terminologi jaringan konvolusional, fungi x ke jaringan sering disebut input, fungsi w disebut kernel, dan output dihasilkan terkadang berupa feature map atau peta  aktivasi  ( activation  map )  yaitu  pemetaan  dimana  fitur  tertentu  ditemukan dalam gambar. Karena diasumsikan t dihitung per detik sehingga t adalah bilagan bulat, maka persamaan konvolusi diskrit:
( ) ( ( ( ) ) ) )( a s t x w t x a w t a      

## 
Pemodelan  data training dibangun  menggunakan  beberapa  pengulanggan convolution layer dan pooling layer yang kemudian diakhiri dengan fully connected layer untuk  membangun  arsitektur  pemodelan  dengan  akurasi  tinggi.  Secara terpisah fungsi masing-masing lapisan dijelaskan sebagai berikut:
a.  Lapisan konvolusi ( convolution layer ) adalah bagian inti dari CNN dimana sebagian komputasi dilakukan di lapisan ini.
Gambar 1: Convolution Layer (Li et al., 2019).
Gambar 1 menunjukkan cara kerja dari konvolusi layer. Output didapat dari konvolusi  kernel  terhadap  bagian  dari  gambar.  Kemudian,  kernel  bergerak dengan  jumlah S piksel, S yang  disebut stride .  Ketika  langkahnya  kecil, didapat informasi redundant . Terkadang input ditambahkan zero padding (P), yang  merupakan margin berisi nilai nol di sekitar gambar untuk mengontrol ukuran output. Diasumsikan bahwa diterapkan K kernel (juga disebut filter), masing-masing berukuran k × k pada gambar, dimana k = F adalah tingkat spasial. Jika ukuran gambar input adalah W i × H i × C i ( W i menunjukkan lebar, H i tinggi, dan C i jumlah channels atau kedalaman ( depth ), biasanya C i = 3 (Red, Green, Blue)), volume output adalah W 0 × H 0 × C 0 , dimana C 0 sesuai dengan banyaknya kernel K, sehingga didapat ringkasan konvolusi layer:
0 2 1 i W F P W S     0 2 1 i H F P H S     0 C K 
b.  Lapisan pooling berfungsi  secara  progresif  mengurangi  ukuran  representasi spasial sehingga mereduksi jumlah parameter dan perhitungan dalam jaringan yang disebut juga subsampling , dan juga mengontrol overfitting (Scherer et al ., 2010). Pooling layer digunakan secara berkala diantara convolution layer . Max pooling adalah pooling  layer yang  mengambil  nilai  maksimum  dari  setiap operasi kernel dengan input. Max pooling lebih banyak digunakan dibandingan pooling yang lain seperti average pooling . Gambar 2 menjelaskan penerapan max pooling .
Gambar 2: Max Pooling (Li et al., 2019).
c.  Layer terakhir pada proses convolotution neural network adalah fully connected layer yang  berfungsi  mengubah  multidimensional  array  ke  dalam  sebuah vektor. Setiap neuron pada lapisan konvolusi perlu ditransformasi menjadi data satu dimensi terlebih dahulu sebelum dapat dimasukkan ke dalam sebuah fully- connected layer. Karena hal tersebut menyebabkan data kehilangan informasi spasialnya dan tidak reversibel, sedangkan fully-connected layer hanya dapat diimplementasikan  di  akhir  jaringan  (Oyedotun  &  Khashman,  2017).  Aktivasi dari layer ini dapat dihitung dengan perkalian matriks yang diikuti bias (Gambar 3).
Gambar 3: Fully Connected Layer (Al-Waisy et al., 2018).

## 3)  Membandingkan model
Setelah  pemodelan  data training dibangun,  langkah  selanjutnya  adalah menentukan  jumlah epochs .  Optimasi adam digunakan  untuk  meningkatkan akurasi  dari  model  yang  telah  dibuat. Adam adalah  algoritma  optimisasi  tingkat pembelajaran  adaptif  lain.  Nama  “ Adam ”  berasal  dari  frasa  “ adaptive  moments ” (Kingma  &  Ba,  2014). Adam merupakan  kombinasi  RMSProp  dan  momentum dengan  beberapa  perbedaan  penting.  Pertama  momentum  digabungkan  secara langsung  sebagai  perkiraan  momen  orde  pertama  (dengan  bobot  eksponensial) dari gradien.  Kedua, Adam memasukkan koreksi-koreksi bias ke estimasi momen- momen  orde  pertama  ( momentum  term )  dan  momen-momen  orde  kedua  (tidak terpusat) untuk menjelaskan inisialisasi origin . Output dari pemilihan jumlah epochs optimasi adalah meningkatnya akurasi serta menurunnya loss function pada data training walapun menggunakan pemodelan CNN yang sama.
4)  Klasifikasi data test
Dari  hasil  pemodelan  dengan  optimasi  terbaik,  kemudian  dilakukan  pengujian untuk  mengklasifikasikan  data test yang  juga  merupakan  citra chest  radiograph . Hasil dari klasifikasi dapat dilihat melalui confusion matix dan akurasi yang didapat
dari  hasil  klasifikasi  data test . Confusion  matrix adalah  matrix  yang merepresentasikan hasil klasifikasi pada suatu dataset (Pedregosa et al ., 2011).
Tabel 1: Confusion Matrix binner.
Kelas Positif Negatif Positif Positif Benar (PB) Negatif Salah (NS) Negatif Positif Salah (PS) Negatif Benar (NB)
Terdapat  beberapa  rumus  umum  yang  dapat  digunakan  untuk  menghitung performa klasifikasi. Hasil dari nilai accuracy, presision dan recall bisa ditampilkan dalam presentase ( Tabel 1 ).
a. Accuracy adalah  jumlah  proporsi  prediksi  yang  benar.  Adapun  rumus perhitungan akurasi dapat dilihat dari persamaan dibawah ini.
PB NB Accuracy PB PS NB NS     
b.  Presisi adalah rasio PB / (PB + PS). Presisi secara intuitif adalah kemampuan classifier untuk tidak memberi label positif sebagai sampel yang negatif.
c. Recall atau penarikan kembali adalah rasio PB / (PB + NS). Penarikan secara intuitif  adalah kemampuan classifier untuk menemukan semua sampel positif.

## 3.  Hasil dan Pembahasan
Berikut adalah hasil dan pembahasan dari masing-masing tahap:
1)  Preprocessing Data
a.  Pembagian  data.  Data  mentah  yang  di  dapat  kemudian  di  ambil  sampling dengan  menggunakan  probability  samping  yaitu  simple  random  sampling. Tahap  preprocessing  data  sendiri  meliputi  pemisahan  data  menjadi  data training , data validasi, dan data test disajikan pada Tabel 2.
Tabel 2: Partisi data. Bagian Jumlah Data Kondisi Jumlah Data training 2000 Normal 1000 Pneumonia 1000 Data validasi 200 Normal 100 Pneumonia 100 Data test 200 Normal 100 Pneumonia 100 Total 2400 b.  Konversi ke array. Data yang telah dipisahkan ke dalam tiga set data kemudian dikonversi ke dalam array terlebih dahulu, hal ini dikarenakan komputer hanya bisa  membaca sebuah citra gambar  sebagai susunan angka yang kemudian disebut  sebagai array .  Konversi  gambar  juga  akan  membagi  setiap  gambar menjadi tiga bagian warna atau depth yaitu red, green, blue (RGB). Gambar 4 adalah  sampel  dari  konversi  sebuah  citra  menjadi array ,  dimana array yang ditampilkan  adalah  5x5  susunan  angka  pertama  setiap  bagian  warna.  Data dalam  bentuk array inilah  yang  akan  diproses  dalam  CNN. Array diplotkan kembali  menjadi  sebuah  gambar  terpisah  berdasarkan  bagian  warna  untuk melihat setiap bagiannya.
Gambar 4: Sampel konversi ke array.

## 2)  Pemodelan CNN
Pembangunan  model  CNN  terdiri  dari  beberapa  tahap  penggulangan  antara lapisan konvolusi dan lapisan pooling yang diakhiri dengan lapisan fully connected . Tabel  3  menjelaskan bahwa  model dibangun  dari empat kali perulangan lapisan konvolusi  dan pooling sebelum  diakhiri  dengan  lapisan fully  connected . Berdasarkan output diatas didapatkan parameter total 88.699.969, parameter yang dilatih 88.699.969 serta tidak ada parameter yang tidak dilatih .
Tabel 3: Pembangunan model CNN. Layer Output Shape Param Layer konvolusi (222,222,32) 896 Max pooling (111,111,32) 0 Layer konvolusi (109,109,64) 18.496 Max pooling (54,54,64) 0 Layer konvolusi (52,52,128) 73.856 Max pooling (26,26,128) 0 Flatten (86528) 0 Dropout (86528) 0 Dense (1024) 88.605.696 Dense (1) 1025 Total params 88.699.969 Trainable params 88.699.969 Non-trainable params 0

## 3)  Membandingkan model
Tahapan selanjutnya adalah pengaplikasian model  yang dibentuk ke dalam data training serta  data  validasi  dengan  beberapa  pemilihan  banyaknya epochs pada saat mulai konvergen. Setiap epochs berjalan melalui 16 langkah.
Tabel 4: Perbandingan epochs. Keterangan Maksimum epochs 50 75 100 Akurasi data training 98,26% 99,12% 98,98% Loss function data training 0.0913 0.0714 0.0646 Akurasi data validsai 96,00% 96.50% 97.00% Loss function data validasi 0.2019 0.1506 0.1484
Pengaplikasian model ke dalam data training dan data validasi dioptimasi dengan menggunakan adaptive  momentum atau adam . Adam dipilih  karena  hasil  dari penyempurnaan  optimasi  dalam deep  learning yang  sudah  ada  sebelumnya.
Optimasi  dilakukan  untuk  meningkatkan learning  rate yang  berdampak  pada peningkatan akurasi.
Tabel  4  menampilkan  output  masing-masing  pemilihan epochs .  Akurasi  tertinggi sebesar 99.12% pada epochs 75, Sedangkan loss function terendah 0.0646 pada data training pada epochs 100 . Akurasi tertinggi sebesar 97,00% dan loss function terendah 0,1484 pada data validasi dengan 100 epochs , maka model yang dipilih menggunakan  100 epochs .  Gambar  5  menunjukan  tingkat  akurasi  dan loss function data training dan validasi dari perjalanan epochs pertama hingga epochs terakhir.
Gambar 5: Plot akurasi dan loss function
Gambar  5  menjelaskan  bahwa  akurasi  dari  model  cenderung  naik  dan loss function cenderung menurun untuk data training , sedangkan untuk data validasi, akurasi  dari  model  cenderung  turun  dan loss  function cenderung naik.Berdasarkan plot akurasi menuju arah konvergen setelah epochs ke-lima .

## 4)  Klasifikasi
Model yang telah diperoleh kemudian di uji ke dalam data test sehingga didapat output sebagai berikut. Gambar 6 menjelaskan bahwa model yang telah dibangun dapat mengklasifikasi paru-paru normal secara benar sebanyak 98 data dan dua datasalah  han,  sedangkan  untuk  paru-paru  dengan  kondisi pneumonia ,  model mampu  menglasifikasi 58 data secara benar dan 42 data salah. Klasifikasi dari data test lebih jelas dapat dilihat dari laporan hasil klasifikasi yang ditunjukan pada Tabel 5 berikut.
Gambar 6: Confusion Matrix
Tabel 5: Laporan klasifikasi.
Precision Recall Pneumonia 0.97 0.58 Normal 0.70 0.98 Akurasi 0.78 Tabel 5 menjelaskan presisi dari paru-paru pneumonia sebesar 97% yang berarti bahwa  kemampuan classifier untuk  tidak  memberi  label pneumonia sebagai sampel normal sebesar 97% , sedangkan untuk normal sebesar 70%. Recall pada paru-paru pneumonia sebesar  58%  yang  berarti  bahwa kemampuan classifier untuk menemukan semua sampel pneumonia sebesar 58% . dan untuk paru-paru normal sebesar  98%,  Tingkat  akurasi  secara  keseluruhan  sebesar  78%.  Hasil akurasi  lebih  kecil  dibanding  dengan  penelitian  Saravia,  et  al.  (2019)  sebesar 95,30% dikarenakan arsitektur model yang dibangun menggunakan base model yang sudah ada.

## 4.  Simpulan
Simpulan dari penelitian ini adalah model yang dibangun dengan menggunakan 100 epochs menghasilkan akurasi pada data training sebesar 98,98% dan 97,00% pada data validasi. Model yang dibentuk kemudian di uji ke dalam data test dengan tingkat akurasi 78% dengan rincian paru-paru normal secara benar diklasifikasikan sebanyak 98  data  dan  terdapat  dua  data  salah,  sedangkan  untuk  paru-paru  dengan  kondisi pneumonia , model mampu menglasifikasi 58 data secara benar dan 42 data salah.

## Daftar Pustaka
Al-Waisy, A. S., Qahwaji, R., Ipson, S., Al-Fahdawi, S., & Nagem, T. A. (2018). A multi- biometric  iris  recognition  system  based  on  a  deep  learning  approach. Pattern Analysis and Applications , 21 (3): 783 –802.
Cireşan, D., Meier, U., & Schmidhuber, J. (2012). Multi-column deep neural networks for  image  classification .  Retrieved  from  IEEE  Computer  Society  Conference  on Computer Vision and Pattern Recognition website: https://arxiv.org/abs/1202.2745
Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning . Massachusetts (US): MIT press.
Kermany,  D.,  Zhang,  K.,  &  Goldbaum,  M.  (2018). Labeled  optical  coherence tomography (OCT) and chest X-Ray images for classification, Mendeley Data, vol. 2 (2018) . Mendeley Data.
Kingma,  D.  P.,  &  Ba,  J.  (2014).  Adam:  A  method  for  stochastic  optimization. 3rd International  Conference  for  Learning  Representations .  Presented  at  the  3rd International Conference for Learning Representations, San Diego (US). Retrieved from https://arxiv.org/abs/1412.6980
Li,  F.  F.,  Johnson,  J.,  &  Yeung,  S.  (2019). Convolutional  neural  networks  (Lecture notes) . California (US): Computer Science, Stanford University.
Oyedotun,  O.,  &  Khashman,  A.  (2017).  Iris  nevus  diagnosis:  convolutional  neural network  and  deep  belief  network. Turkish  Journal  of  Electrical  Engineering  & Computer Sciences , 25 (2): 1106 –1115.
Pedregosa ,  F.,  Varoquaux,  G.,  Gramfort,  A.,  Michel,  V.,  Thirion,  B.,  Grisel,  O.,  … Dubourg, V. (2011). Scikit-learn: Machine learning in Python. Journal of Machine Learning Research , 12 (Oct): 2825 –2830.
Rizal,  A.,  Hidayat,  R.,  &  Nugroho,  H.  A.  (2017).  Entropy  measurement  as  features extraction in automatic lung sound classification. 2017 International Conference on Control, Electronics, Renewable Energy and  Communications (ICCREC) , 93 –97. Yogyakarta (ID): IEEE.
Romero,  A.,  Gatta,  C.,  &  Camps-Valls,  G.  (2016).  Unsupervised  deep  feature extraction  for  remote  sensing  image  classification. IEEE  Transactions  on Geoscience and Remote Sensing , 54 (3): 1349 –1362.
Santos, A. dos, Pereira, B. de B., Seixas, J. de, Mello, F. C. Q., & Kritski, A. L. (2007). Neural  networks:  an  application  for  predicting  smear  negative  pulmonary tuberculosis. In Advances in statistical methods for the health sciences (pp. 275 – 287). Springer.
Saraiva, A., Ferreira, N., Sousa, L., Carvalho da Costa, N., Sousa, J., Santos, D., … Soares,  S.  (2019).  Classiﬁcation  of  Images  of  Childhood  Pneumonia  using Convolutional Neural Networks. 6th International Conference on Bioimaging , 112 – 119. https://doi.org/10.5220/0007404301120119
Scherer,  D.,  Müller,  A.,  &  Behnke,  S.  (2010).  Evaluation  of  pooling  operations  in convolutional  architectures  for  object  recognition. International  Conference  on Artificial Neural Networks , 92 –101. Berlin (DE): Springer.
[WHO]  World Health Organization. (2016). Pneumonia . Retrieved from http://www.who.int/en/