HALAMAN JUDUL
Oleh :
RAIS AMIN
NIM : 20.10.031.802.119
i
HALAMAN TANDA LULUS UJIAN SKRIPSI
ii
PENGAKUAN KEASLIAN KARYA
iii
ABSTRAK
Malaria adalah penyakit dalam darah yang disebabkan oleh parasit Plasmodium
yang ditularkan oleh gigitan nyamuk Anopheles betina. Ahli mikroskopis biasanya
memeriksa sel darah untuk mendiagnosis penyakit malaria ini. Namun, akurasi
mereka tergantung pada kualitas alat dan keahlian dalam mengklasifikasikan dan
menghitung sel parasit dan yang tidak terinfeksi. Pemeriksaan semacam itu akan
sangat sulit dalam proses diagnosis skala besar dan menghasilkan kualitas yang
buruk. Beberapa dataset malaria telah dikembangkan, diantaranya adalah dataset yang
dikembangkan oleh LHNVBC yang berisikan 27.558 data gambar sel. Proses
pengolahan data science adalah salah satu proses yang dapat menggambarkan
protokol analitik prediktif yang umum untuk diinterogasikan pada dataset biomedis
dan kesehatan yang besar dan kompleks. Dalam penelitian ini dataset malaria akan di
proses melalui pengolahan data science dengan pembelajaran Deep Learning
menggunakan model Convolutional Neural Network – Long Short-Term Memory
dimana sistem akan melalui pelatihan dan kemudian dapat mengklasifikasi parasit
malaria dalam sel darah manusia. Hasil akurasi menjadi tolak ukur seberapa akurat
pembelajaran yang diterima untuk mengenali data gambar sel yang menjadi input
pada sistem sebanyak 95,6 % dan 96% setelah diuji coba pada data testing.
iv
KATA PENGANTAR
Puji syukur senantiasa penulis panjatkan atas kehadirat Allah SWT yang telah
menyelesaikan penelitian sampai akhir proses penulisan skripsi ini dengan judul
Learning”. Tak lupa shalawat serta salam senantiasa dihaturkan kepada junjungan
kita baginda Nabi Muhammad SAW beserta keluarga dan para sahabatnya.
Dalam proses penulisan skripsi ini, tidak terlepas dari bimbingan, bantuan,
dukungan, saran, dan motivasi yang penulis terima dari berbagai pihak. Oleh karena
2. Ibu Dr. Lusiana, M.Kom., Ketua STMIK Amik Riau, sekaligus sebagai
4. Bapak Unang Rio, M.kom., Wakil Ketua II bidang SDM Keuangan dan
Administrasi Umum.
v
vi
DAFTAR ISI
Halaman
vii
2.1.13 Long Short-Term Memory .......................................................... 32
2.1.14 Precision dan Recall .................................................................... 37
2.1.15 Epoch........................................................................................... 37
2.1.16 Confusion Matrix ........................................................................ 38
2.1.17 Python ......................................................................................... 39
2.1.18 OSEMN Framework ................................................................... 40
2.2 Tinjuan Pustaka ........................................................................... 41
viii
DAFTAR TABEL
ix
DAFTAR GAMBAR
x
4.11 Hasil uji akurasi pada data testing 63
4.12 Source code visualisasi klasifikasi parasit malaria 67
4.13 Halaman utama visualisasi klasifikasi 67
4.14 Hasil klasifikasi dari upload gambar uninfected 68
4.15 Hasil klasifikasi dari upload gambar infected 69
xi
BAB I
PENDAHULUAN
menyebabkan kematian terutama pada kelompok resiko tinggi yaitu bayi, anak balita,
ibu hamil, selain itu malaria secara langsung menyebabkan anemia dan dapat
menurunkan produktivitas kerja. Pada tahun 2021, diperkirakan 247 juta kasus
malaria terjadi di seluruh dunia dengan jumlah total kematian 619 ribu jiwa. Sebagian
besar kasus malaria pada tahun 2021 berada di Wilayah Afrika ( 234 juta kasus atau
sekitar 94,7%), diikuti oleh Wilayah Asia Tenggara dengan 2% dari kasus dan
pemeriksaan sediaan darah sangat tergantung kepada keahlian manusia dan dapat
dipengaruhi oleh variabilitas antar pengamat dan terbatasnya sumber daya daerah
dalam pemeriksaan skala besar pada wilayah dimana malaria endemik. Teknik
alternatif seperti Polymerase Chain Reaction (PCR) dan Rapid Diagnostic Test
(RDT) telah digunakan, namun analisis PCR terbatas dalam kinerjanya dan RDT
kurang efektif dalam hal biaya pada pemeriksaan skala besar di wilayah dimana
1
2
penelitian Malaria Screener. Dataset ini dikembangkan oleh para peneliti di Lister
smartphone Android yang terpasang pada mikroskop cahaya konvensional. Sel darah
yang diwarnai cairan Giemsa dari 150 pasien yang terinfeksi parasit dan sel darah dai
50 pasien sehat dikumpulkan dan difoto di Rumah Sakit Chittagong Medical College,
secara manual oleh pembaca slide yang ahli di Mahidol-Oxford Tropical Medicine
level-set untuk mendeteksi dan mensegmentasi sel darah merah. Dataset ini dibuat
untuk mengurangi beban para mikroskopis di daerah yang sumber dayanya terbatas
dan juga untuk meningkatkan akurasi diagnostik malaria. Dataset berisi total 27.558
gambar sel dengan jumlah data yang sama pada sel yang terkena parasit (Parasitized)
(Https://Lhncbc.Nlm.Nih.Gov/Publication/Pub9932, n.d. ).
Kemungkinan akan berlipat ganda setiap 1-2 tahun. Ini didorong oleh langkah besar
dalam teknologi digital dan komunikasi, perangkat IoT, dan layanan Cloud, serta
kemajuan algoritmik, komputasi, dan perangkat keras yang cepat. Permintaan publik
yang semakin meningkat untuk deteksi waktu-nyata, interpretasi yang tepat, dan
sistem diagnosis yang dapat diandalkan manusia dalam hal kesehatan dan penyakit
juga mempercepat tren itu. Proses pengolahan data science adalah salah satu proses
diinterogasikan pada dataset biomedis dan kesehatan yang besar dan kompleks.
preprocessing data, inferensi ilmiah berbasis model, dan diakhiri dengan prediksi,
validasi dan penyebaran data, perangkat lunak, protokol dan temuan penelitian
(Dinov, 2018). Dari uraian tersebut, proses pengolahan data science dapat menjadi
jawaban untuk dapat membuat sistem diagnosis otomatis dari dataset biomedis dan
sediaan darah ini tanpa campur tangan manusia dan untuk menyediakan alat yang
pengenalan pola khusus yang disesuaikan. Sistem diagnosis otomatis ini dapat
representasi fitur yang akurat merupakan inti dari kesuksesan untuk mencapai hasil
keputusan (Poostchi et al., 2018). Namun proses ini menuntut keahlian khusus dalam
menganalisis variabilitas ukuran, latar belakang, sudut, dan Region Of Interest (ROI)
features yang menangkap variasi dalam data dasar, digunakanlah model Deep
Learning (DL) yang dikenal sebagai hierarchical learning yang dapat digunakan
reprentasi fitur hirarki pada data mentah. Fitur dengan tingkat yang lebih tinggi
diabstraksikan dari tingkat yang lebih rendah untuk membantu dalam proses
seperti algoritma berbasil kernel seperti Support Vector Machine (SVM) pada model
dan sumber daya komputasi, dan membuatnya memiliki skala yang lebih tinggi
menggabungkan dua metode Convolutional Neural Network dan Long Short Term
cells untuk membantu dalam peningkatan sistem diagnosis penyakit malaria. Dalam
5
penggabungannya, CNN digunakan untuk ekstraksi fitur pada gambar dan LSTM
dihasilkan. Jaringan LSTM memiliki memori internal yang mampu belajar dari
networks, lapisan terhubung sepenuhnya dan node antar lapisan tidak terhubung dan
hanya memproses satu masukan. Dalam kasus LSTM, node dihubungkan dari graf
berarah sepanjang urutan temporal yang dianggap sebagai input dengan urutan
tertentu.
6
Memory.
dataset 27.558 gambar sel yang terbagi kedalam dua kategori yaitu
parasitized dan uninfected. Setiap kategori terdiri dari 13.779 gambar sel.
pelatihan model.
Bagi pengguna
1. Dapat mengetahui bentuk parasit penyebab malaria dalam sel darah manusia.
Bagi penulis
bab. Setiap bab-nya terdiri dari beberapa sub bab tersendiri. Bab tersebut secara
keseluruhan saling berkaitan satu sama lain, dimana diawali dengan bab pendahuluan
dan diakhiri bab penutup yang berisi kesimpulan dan saran. Secara singkat akan
BAB I PENDAHULUAN
Dalam bab ini akan dibahas mengenai latar belakang, batasan masalah,
Dalam bab ini akan dibahas mengenai berbagai teori yang mendasari
BAB VI PENUTUP
Bab ini berisi tentang kesimpulan dari penelitian yang telah dilakukan
Landasan teori berisikan tentang dasar-dasar teori dan konsep yang berkaitan dengan
masalah dalam penelitian yang akan dijadikan sebagai referensi yang diambil dari
2.1.1 Klasifikasi
Klasifikasi adalah tipe analisis data yang dapat membantu orang menentukan kelas
label dari sampel yang ingin di klasifikasi. Klasifikasi merupakan Metode supervised
learning, metode yang mencoba menemukan hubungan antara atribut masukan dan
atribut target. Tujuan klasifikasi untuk meningkatkan kehandalan hasil yang diperoleh
kategori yang telah ditetapkan sebelumnya. Klasifikasi telah banyak ditemui dalam
bab ini akan dibahas mengenai konsep klasifikasi, beberapa isi penting dalam
Pada dasarnya, data yang diperoleh dari pengukuran atau suatu pengamatan
merupakan data mentah (raw data) yang mana berisikan deretan-deretan angka yang
9
10
acak dan sulit dimengerti. Agar data mentah ini menghasilkan informasi yang mudah
untuk didaptkan, maka perlu dilakukan klasifikasi data. Klasifikasi data adalah
berikut:
1. Mengelempokkan sifat-sifat yang sama ke dalam kelompok atau kelas yang sama.
2. Memudahkan perbandingan.
2.1.2 Malaria
Malaria adalah suatu penyakit yang disebabkan oleh parasit yang termasuk dalam
Plasmodium ovale dan Plasmodium malariae hampir disemua kasus terjadi pada
hidup bersel satu yang termasuk ke dalam kelompok protozoa. Malaria ditularkan
dalamnya. Plasmodium yang terbawa melalui gigitan nyamuk akan hidup dan
berkembang biak dalam sel darah merah manusia. Penyakit ini menyerang semua
kelompok umur baik laki-laki maupun perempuan. Orang yang terkena malaria akan
memiliki gejala: demam, menggigil, berkeringat, sakit kepala, mual atau muntah
(PUSDATINKemenkesRI, 2016).
Menurut (Center for Disease Control and Prevention, 2018) dikenal lima jenis
tropis dan subtropis di dunia. Diperkirakan setiap tahunnya ada 1 juta orang
berat, karena memiliki kemampuan melipat ganda secara cepat dalam darah
fatal (kematian).
malaria pada manusia yang memiliki siklus quartan (siklus tiga hari),
sedangkan tiga spesies lainnya memiliki siklus tertiana (siklus dua hari).
Infeksi Plasmodium malariae mampu bertahan dalam waktu yang lama jika
tidak diobati. Dalam beberapa kasus, infeksi kronis dapat berlangsung seumur
yang negatif untuk golongan darah duffy (salah satu penggolongan darah
selain ABO dan Rh) sedangkan Plasmodium vivax tidak. Golongan darah
besar Afrika.
pathogen alami dari kera ekor panjang dan babi. Baru-baru ini Plasmodium
13
berwarna merah. Karena sifat darah yang berbeda dengan jaringan lain,
mengakibatkan darah dapat bergerak dari satu tempat ketempat lain sehingga dapat
tetap berada pada satu ruangan agar darah benar-benar dapat menjangkau seluruh
jaringan didalam tubuh melalui sistem yang disebut sistem kardiovaskular, yang
meliputi jantung dan pembuluh darah. Dengan sistem tersebut darah dapat
diakomodasikan secara teratur dan diedarkan menuju organ dan jaringan yang
tersebar diseluruh tubuh. Darah didistribusikan melalui pembuluh darah dari jantung
keseluruh tubuh dan akan kembali lagi menuju jantung. Sistem ini berfungsi untuk
sisa metabolisme sel atau jaringan keluar dari tubuh (Saadah, 2018).
Darah adalah jaringan ikat atau konektif berbentuk cair; terdiri dari 4 unsur
seluler, yaitu: sel-sel darah merah (eritrosit), sel-sel darah putih (leukosit), sel-sel
darah pembeku atau keping darah (trombosit) dan cairandarah (plasma darah)
(D’Hiru, 2013).
14
Data science adalah sebuah bidang baru yang muncul dan menjadi ilmu yang sangat
dan biososial. Data science juga berurusan dengan sejumlah besar data yang
kompleks, tidak selaras, dan dinamis yang berasal dari berbagai sumber. Data
Science bertujuan untuk mengembangkan algoritma, metode, alat, dan layanan yang
Data Science adalah interdisipliner ilmu yang inheren dengan pendekatan sains.
Teknik eksperimental baru telah merevolusi biologi selama bertahun - tahun dari
sekuensing DNA dan mikroarray di masa lalu ke CRISPR dan cryo-EM baru-baru
ini. Data Science berbeda karena itu bukan merupakan teknik tunggal, melainkan
kerangka kerja untuk menyelesaikan seluruh jajaran masalah. Potensi Data Science
untuk menjawab pertanyaan dalam berbagai disiplin ilmu yang berbeda sangat
2.1.5 Dataset
Dataset adalah suatu database didalam memori (in-memory). Dataset memiliki semua
karateristik, fitur dan fungsi dari database biasa. Dataset dapat memiliki banyak tabel,
dataset dapat memiliki foreign key dan integritas referensial. Dataset adalah objek
yang merepresentasikan data dan relasinya di memory. Strukturnya mirip dengan data
15
yang ada di database. Dataset berisi koleksi dari data tabel dan data. Jenis dataset ada
1. Private Dataset
Private dataset yaitu dataset yang dapat diambil dari organisasi yang kita jadikan
tempat atau objek penelitian. Adapun contoh-contohnya seperti instansi, rumah sakit,
2. Public Dataset
Public dataset yaitu dataset yang dapat diambil dari repository public yang telah
Klasifikasi gambar atau citra adalah sebuah pekerjaan untuk memasukkan citra dan
menempatkan ke dalam suatu kategori. Ini merupakan salah satu dari permasalahan
yang ada pada Computer Vision yang dapat disederhanakan dan memiliki berbagai
Setiap citra yang di input pada training set data diberikan label atau penamaan.
Saat klasifikasi, label atau penamaan tersebut akan menjadi perbandingan dengan
hasil hipotesis yang diberikan oleh model pembelajaran dan akan menghasilkan nilai
error. Klasifikasi yang terawasi ini bisa sangat efektif dan akurat dalam
mengklasifikasikan citra tempat maupun objek lainnya. Banyak metode dan algoritma
16
yang dapat mendukung proses klasifikasi yang terawasi terutama dengan teknik Deep
Kecerdasan Buatan atau Artificial Intelligence (AI) adalah teknik yang digunakan
untuk meniru kecerdasan yang dimiliki oleh makhluk hidup maupun benda mati
untuk menyelesaikan sebuah persoalan. Untuk melakukan hal ini, setidaknya ada tiga
a. Fuzzy Logic(FL).
hidup menyesuaikan kondisi dengan memberikan keputusan yang tidak kaku 0 atau 1.
Sehingga dimunculkan sistem logika fuzzy yang tidak kaku. Penerapan logika fuzzy
ini salah satunya adalah untuk sistem pengereman kereta api di Jepang.
b. Evolutionary Computing(EC).
individu yang banyak dan memberikan sebuah ujian untuk menyeleksi individu
mencari solusi dari suatu permasalahan. Contoh dari pendekatan ini adalah Algoritma
Genetika yang menggunakan ide mutasi dan kawin silang, Particle Swarm
Optimization (PSO) yang meniru kumpulan binatang seperti burung dan ikan dalam
bagaimana proses manusia atau makhluk cerdas belajar dan mengeneralisasi (Ahmad,
2017).
Evolutionary Computation, dan lain-lain. Fuzzy Logic adalah suatu cabang ilmu
meniru kecerdasan manusia sehingga diharapkan komputer dapat melakukan hal- hal
adalah algoritma untuk optimisasi global yang terinspirasi oleh evolusi biologis, dan
18
subbidang kecerdasan buatan dan komputasi lunak mempelajari algoritma ini. Dalam
istilah teknis, mereka adalah keluarga pemecah masalah trial and error berbasis
Didalam ANN terdapat Deep Learning yang mana mesin dilatih lebih
mendalam. Deep Learning adalah salah satu cabang Machine Learning (ML) yang
domain ML.
Machine Learning adalah serangkaian teknik yang dapat membantu dalam menangani
dan memprediksi data yang sangat besar dengan cara merepresentasikan data-data
secara tradisional.
Dari Gambar 2.2 dapat dilihat bahwa pemrograman secara tradisional data dan
Machine Learning data dan output dijalankan di komputer untuk membuat sebuah
program.
Setiap algoritma pembelajaran mesin memiliki tiga komponen penting antara lain:
Gradient Descent.
tindakanyang dilakukan.
Deep Learning merupakan salah satu bidang dari Machine Learning yang
dataset yang besar. Teknik Deep Learning memberikan arsitektur yang sangat kuat
untuk Supervised Learning. Dengan menambahkan lebih banyak lapisan maka model
pembelajaran tersebut bisa mewakili data citra berlabel dengan lebih baik.
Pada Machine Learning terdapat teknik untuk menggunakan ekstrak fitur dari
untuk mengenali suara. Namun, metode ini masih memiliki beberapa kekurangan
baik dalam hal kecepatan dan akurasi. Aplikasi konsep jaringan syaraf tiruan yang
dalam (banyak lapisan) dapat ditangguhkan pada algoritma Machine Learning yang
sudah ada sehingga komputer sekarng bisa belajar dengan kecepatan, akurasi, dan
skala yang besar. Prinsip ini terus berkembangkan hingga Deep Learning semakin
sering digunakan pada komunitas riset dan industri untuk membantu memecahkan
banyak masalah data besar seperti Computer vision, Speech recognition, dan Natural
Language Processing.
Feature Engineering adalah salah satu fitur dari Deep Learning untuk
mengekstrak pola yang berguna dari data akan memudahkan model untuk
21
membedakan kelas. Feature Engineering juga merupakan teknik yang paling penting
untuk mencapai hasil yang baik pada tugas prekdiksi. Namun, sulit untuk dipelajari
dan dikuasai karena kumpulan data dan jenis data yang berbeda memerlukan
pedekatan teknik yang berbeda juga. Algoritma yang digunakan pada Feature
Engineering dapat menemukan pola umum yang penting untuk membedakan antara
kelas.
bertahun-tahun, bahkan puluhan tahun dalam pembuatan set fitur lengkap untuk
klasifikasi data secara manual. Deep learning merupakan algoritma paling akurat
Jaringan Syaraf Tiruan / Artificial Neural Network (ANN) merupakan metode yang
jaringan syaraf tiruan biasa digunakan sebagai peramalan nilai tukar mata uang asing,
peramalan harga saham, peramalan cuaca dan lain sebagainya, sedangkan untuk
pengenalan pola biasanya jaringan syaraf tiruan digunakan untuk pengenalan pola
huruf, pola tanda tangan hingga pola suara serta wajah (Kartika et al., 2016).
22
internal maupun eksternal. Menurut Pham dalam jurnal Hermantoro (Pham, 1994)
mengatakan bahwa ANN bersifat fleksibel terhadap inputan data dan menghasilkan
output respon konsisten. ANN telah banyak digunakan dalam area yang luas.
Menurut Kumar & Haynes (Kumar, 2003) dalam jurnal Ulil Hamida (Hamida, 2014)
komputer akan mendeteksi bahwa gambar yang diubah adalah gambar yang berbeda,
namun manusia masih dapat mengetahui bahwa gambar yang diubah tersebut adalah
gambar yang sama (Perez & Wang, 2017). Augmentasi dapat meningkatkan akurasi
dari model CNN yang dilatih karena dengan augmentasi model mendapatkan data-
data tambahan yang dapat berguna untuk membuat model yang dapat melakukan
generalisasi dengan lebih baik. Salah satu jenis augmentasi yang umum dilakukan
adalah dengan melakukan perputaran gambar dengan besar tertentu, contoh dari
Convolutional Neural Network (CNN) adalah arsitektur deep learning yang terkenal
yang terinspirasi oleh mekanisme persepsi visual makhluk hidup di alam. Pada tahun
1959, Hubel & Wiesel menemukan bahwa sel-sel pada hewan visual cortex
bertanggung jawab untuk mendeteksi cahaya pada bidang reseptif. Terinspirasi oleh
penemuan ini, Kunihiko Fukushima menguslkan teori neocognitron pada tahun 1980,
yang dainggap sebagai pendahulu CNN. Pada tahun 1990, LeCun dkk. menerbitkan
jurnal yang membentuk kerangka kerja modern dari CNN, dan kemudian
memperbaikinya lagi pada tahun 1998. Mereka mengembangkan jaringan saraf tiruan
multi-layer yang disebut LeNet-5 yang dapat mengklasifikasikan digit tulisan tangan.
Dimulai pada tahun 1990 sebuah studi paralel oleh Zhang dkk. menggunakan Shift-
Invariant Artificial Neural Network (SIANN) untuk mengenali karakter dari sebuah
gambar. Namun, karena kurangnya data training yang besar dan daya komputasi
pada waktu itu, jaringan mereka tidak dapat bekerja dengan baik pada masalah yang
yang dihadapi dalam pelatihan mendalam pada CNN. Paling menonjol pada tahun
Keseluruhan arsitektur dari metode mereka dikenal dengan sebutan AlexNet, mirip
dengan LeNet-5 tetapi dengan struktur yang lebih dalam. Dengan keberhasilan
AlexNet, banyak karya telah diusulkan untuk meningkatkan kinerja CNN (J Gu et al,
2015).
CNN temasuk kedalam kategori metode neural network. CNN tidak hanya
dapat mempelajari representasi fitur gambar secara otomatis, tetapi CNN juga
Model neural network memiliki representasi data hirarkis dan bergantung pada
akan menjadi input layer berikutnya. Setiap layer memberikan satu level representasi.
Dan, ada satu set bobot yang mengukur parameter layer. Dan juga, unit input
terhubung ke unit output melalui bobot di samping sekelompok bias. Bobot dalam
CNN, dibagikan secara lokal, yang berarti bahwa setiap lokasi input memiliki bobot
yang sama. Bentuk filter berdasarkan bobot yang dikaitkan dengan output yang sama
volume yang berbeda dan mewakili dengan kedalaman, tinggi dan lebar. Setiap
besaran yang didapatkan tergantung dari hasil filtrasi dari lapisan sebelumnya dan
juga banyak filter yang digunakan. Model jaringan seperti ini sudah terbukti sangat
denan lapisan neuron (neuron layers). Neuron-neuron pada satu lapisan dihubungkan
dengan lapisan sebelumnya dan sesudahnya, kecuali pada lapisan input dan output.
Lapisan diantara lapisan biasa disebut dengan lapisan tersembunyi atau hidden layer.
Perambatan juga bisa dilakukan pada arah sebaliknya tergantungg pada algoritma
Faktor terpenting dalam menentukan sifat suatu neuron adalah pola bobot
(weights) dan fungsi aktivitas dari neuron tersebut. Pada setiap lapisan yang sama,
tersembunyi.
terdiri dari alternating layer yang secara local terhubung pada convolutional layer
dimana setiap layer memiliki jumlah filter yang sama. Downsampling layer dan fully
Arsitektur CNN memiliki tiga konsep yang membuatnya efektif: local receptive
berisikan setiap neuron yang menerima input berupa porsi kecil dari layer
sebelumnya dan juga memiliki ukuran yang sama dari convolution filter. Local
pada downsampling layer berfungsi untuk mengurangi ukuran spasial gambar serta
mengurangi jumlah parameter bebas dari model. Konsep-konsep ini membantu CNN
menjadi kuat dan efektif dalam tugas-tugas pengenalan gambar (Al-Waisy et al.,
2017).
1. Convolutional layer
Bobot pada layer ini terbuat dari satu set learnable filters yang
jumlah yang sama dari filter yang diterapkan pada layer tersebut.
f = fungsi aktivasi
𝑘𝑖𝑗 = filter
2. Pooling layer
ukuran pooling mask dan jenis operasi pooling harus ditentukan dan
B. Fungsi Aktivasi
Fungsi aktivasi adalah fungsi non linear yang memungkinkan sebuah neural network
untuk dapat mentransformasikan data input menjadi dimensi yang lebih tinggi
matematika. Pada arsitektur CNN, fungsi aktivasi terletak pada perhitungan akhir
output feature map atau sesudah proses operasi convolution atau pooling untuk
Beberapa macam fungsi aktivasi yang sering digunakan dalam penelitian CNN
antara lain fungsi sigmoid, tanh, Rectified Liniear Unit (ReLU), Leaky ReLU
C. Learning Rate
Learning rate adalah salah satu hyper parameter yang sangat mempengaruhi
performa suatu model CNN. Dalam melakukan pencarian learning rate yang tepat,
digunakan suatu metode yang bernama cyclical learning rates (Smith, 2017), dalam
30
metode ini, akan dilakukan beberapa epochs training, dengan learning rate yang
dimulai dari nilai yang kecil, dan setiap iterasi akan diperbesar learning rate-nya,
setiap iterasi akan dilihat loss yang didapat, dan jika loss yang didapat meningkat
cukup drastis maka proses pencarian akan diberhentikan. Berdasarkan data loss yang
didapat, maka dipilih learning rate sesaat sebelum loss memiliki nilai terendah.
Dapat dilihat pada Gambar 2.7 bahwa pada saat learning rate−berada pada titik
1e-02 titik ini memiliki nilai loss terkecil kedua, maka titik ini cocok untuk dipilih
Recurrent neural network (RNN) yang pertama kali dikenalkan oleh Sepp Hochreiter
and Jürgen Schmidhuber pada tahun 1997. LSTM dikenalkan untuk menyelesaikan
masalah vanishing gradient yang terjadi dalam arsitektur vanilla RNN pada saat
menyimpan memori dalam jangka panjang. Hal ini karena LSTM memiliki unit yang
unik yang dapat mempelajari kapan waktu untuk membuka dan menutup gerbang
dalam jaringan untuk mengatur pergerakan error yang konstan dalam jaringan
LSTM memiliki tiga gates atau gerbang yang masing-masing memiliki peran
untuk melindungi dan mengontrol cell state. Cell state merupakan garis horizontal
(jika dilihat dalam penggambaran pada Gambar 2.8) yang melewati bagian atas
diagram sel LSTM yang memiliki kemampuan untuk menghapus atau menambahkan
informasi baru yang masuk dalam waktu t dengan memanfaatkan struktur cermat
yang disebut gerbang. Gates atau gerbang sendiri adalah sebuah cara yang digunakan
oleh LSTM untuk melakukan seleksi terhadap informasi yang masuk ke dalam sel.
Gerbang tersebut tersusun atas layer yang menggunakan operasi sigmoid dan
Forget gate merupakan gerbang pertama yang dioperasikan dalam sel LSTM.
Forget gate ini menentukan informasi mana yang harus dipertahankan dan yang harus
dibuang dari cell state. Gerbang ini menerima dua input, masing-masing dari ht-1 dan xt
yang dimana ht-1 merupakan keluaran dari proses LSTM pada time step t-1 dan xt
merupakan input pada time step t. Output dari gerbang ini adalah angka dengan
rentang 0 hingga 1. Diagram kerja forget gate ditunjukkan pada gambar 2.9.
Keterangan:
ft = forget gate
σ = sigmoid function
Setelah didapatkan nilai dengan rentang 0 hingga 1 pada forget gate, maka
operasi selanjutnya adalah pada input gate. Input gate terdiri dari dua bagian, bagian
pertama menggunakan fungsi sigmoid yang menentukan informasi mana yang ingin
di-update. Sedangkan bagian kedua menggunakan fungsi tanh yang berfungsi untuk
menentukan vektor yang akan ditambahkan pada nilai cell state (C’t). Kedua bagian
tersebut berfungsi untuk menentukan informasi baru apa saja yang ingin disimpan
pada cell state. Layer input gate ini dapat dilihat pada gambar 2.10.
Keterangan:
it = input gate
C’t = kandidat nilai cell state baru yang akan ditambahkan ke Ct-1
Hasil yang didapatkan dari operasi pada forget gate dan input gate selanjutnya
dioperasikan agar hasil dari operasi tersebut dapat digunakan untuk meng-update cell
state Ct-1 .Pada operasi ini dilakukan perkalian pada state sel Ct-1 dengan hasil dari
layer forget gate (ft). Lalu tambahkan hasil perkalian tersebut dengan it * Ct seperti
pada gambar 2.11. Setelah dua operasi tersebut (operasi perkalian Ct-1 dan ft lalu
output gate. Pada output gate, layer sigmoid akan dioperasikan terlebih dahulu untuk
menentukan bagian dari cell state apa saja yang akan digunkan sebagai hasil keluaran.
Setelah operasi sigmoid dilakukan, selanjutnya operasi tanh dijalankan pada cell state
36
lalu dikalikan dengan keluaran dari layer sigmoid yang telah dihitung sebelumnya
Gambar 2.11 Operasi pada hasil input gate dan perkalian C’t dan it pada sel
LSTM
ℎ𝑡 = 𝑜𝑡 ∗ tanh(𝐶𝑡) (2.8)
Keterangan:
ft = forget gate
37
C’t = Nilai cell state baru pada hasil perhitungan gerbang input
σ = sigmoid function
Precision adalah tingkat ketepatan antara informasi yang diminta oleh pengguna
dengan jawaban yang diberikan oleh sistem. Sedangkan recall adalah tingkat
keberhasilan sistem dalam menemukan kembali sebuah informasi. Gunanya fungsi ini
agar akurasi model tidak serta merta dipercaya namun cukup dapat dipertanggung
2.1.15 Epoch
Epoch adalah ketika seluruh dataset sudah melalui proses training pada Neural
Netwok sampai dikembalikan ke awal untuk sekali putaran, karena satu Epoch terlalu
besar untuk dimasukkan (feeding) kedalam komputer maka dari itu kita perlu
membaginya kedalam satuan kecil (batches). Didalam epoch inilah tiap bobot/ weight
ditambahkan.
38
keakuratannya. Confusion matrix juga merupakan salah satu cara dalam melakukan
dua kategori atau lebih (Rahman, dkk., 2017). Tabel 2.2 di bawah merupakan contoh
Kelas Sebenarnya
1 2
Kelas Prediksi 1 True Positive False Negative
2 False Positive True Negative
Keterangan:
a. True Positive (TP): merupakan jumlah data dengan kelas positif yang
diklasifikasikan positif.
b. True Negative (TN): merupakan jumlah data dengan kelas negative yang
diklasifikasikan negatif.
c. False Positive (FP): merupakan jumlah data dengan kelas positif yang
diklasifikasikan negatif.
d. False Negative (FN): merupakan jumlah data dengan kelas negatif yang
diklasifikasikan positif.
39
𝑇𝑃+𝑇𝑁
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 𝑇𝑃+𝐹𝑁+𝐹𝑃+𝑇𝑁 × 100% (2.9)
𝑇𝑁
𝑆𝑝𝑒𝑐𝑖𝑓𝑖𝑐𝑖𝑡𝑦 = 𝑇𝑁+𝐹𝑃 (2.10)
𝑇𝑃
𝑆𝑒𝑛𝑠𝑖𝑡𝑖𝑣𝑖𝑡𝑦 = (2.11)
𝑇𝑃+𝐹𝑁
2.1.17 Python
Python merupakan salah satu contoh bahasa tingkat tinggi. Contoh lain bahasa tingkat
tinggi adalah Pascal, C++, Pert, Java, dan sebagainya. Sedangkan bahasa tingkat
rendah merupakan bahasa mesin atau bahasa assembly. Secara sederhana, sebuah
komputer hanya dapat mengeksekusi program yang ditulis dalam bentuk bahasa
mesin. Oleh karena itu, jika suatu program ditulis dalam bentuk bahasa tingkat tinggi,
maka program tersebut harus diproses dulu sebelum bisa dijalankan dalam komputer.
Hal ini merupakan salah satu kekurangan bahasa tingkat tinggi yang memerlukan
waktu untuk memproses suatu program sebelum program tersebut dijalankan. Akan
tetapi, bahasa tingkat tinggi mempunyai banyak sekali keuntungan. Bahasa tingkat
tinggi mudah dipelajari, mudah ditulis, mudah dibaca, dan tentu saja mudah dicari
kesalahannya. Bahasa tingkat tinggi juga mudah diubah portabel untuk disesuaikan
dengan mesin yang menjalankannya. Hal ini berbeda dengan bahasa mesin yang
hanya dapat digunakan untuk mesin tersebut. Dengan berbagai kelebihan ini, maka
banyak aplikasi ditulis menggunakan bahasa tingkat tinggi. Proses mengubah dad
40
bentuk bahasa tingkat tinggi ke tingkat rendah datam bahasa pemrograman ada dua
luas dalam bidang data science. OSEMN dapat memecahkan masalah data science
logis dari alur kerja pemrosesan data, diperkaya dengan instruksi tambahan, catatan
dan dokumen sampel, memastikan kinerja kegiatan dan pencapaian hasil yang sama
dari aktifitas dan pengguna yang berbeda (Dineva & Atanasova, 2018).
Menurut (Kumari et al., 2020) terdapat 5 tahapan pada OSEMN yang juga
Mengumpulkan data dari sumber yang relevan. Pada tahap ini kita harus
Pada tahap ini, data yang sudah dikumpulkan akan di bersihkan dan di filter
menjadi format yang dapat dimengerti mesin. Biasanya tahap ini meliputi:
- Removing duplicates
- Feature engineering
Pada tahap ini, data akan di eksplorasi dan menentukan karateristik dari
data tersebut. Kemudian data akan di ekstrak atribut dan variabel ujinya
4. M(Model)/Tahap Pemodelan
Pada tahap ini, data yang sudah di ekstrak akan masuk ke tahap pemodelan.
Pemodelan dibuat untuk menghasilkan parameter dan fitur data yang akan
5. N(iNterpreting)/Menginterpretasikan hasil
Tinjauan Pustaka di ambil dari beberapa skripsi dan jurnal yang berhubungan dengan
penelitian. Setiap literatur akan dibahas satu persatu secara singkat tentang judul,
flame optimization” tahun 2022, yang ditulis oleh Ameer Hamza dkk
42
tersebut adalah:
dan optimasi usulan penelitian ini memiliki tingkat akurasi yang sangat
cnn deep neural network” tahun 2019, yang ditulis oleh Aditi, Mayank
2017, yang ditulis oleh Dhanya Bibin, Madhu S. Nair dan P. Punitha
yang ditulis oleh Lusiana Efrizoni, Rais Amin dan Ahmad rizali
Pada proses perancangan sistem, dibuatlah kerangka kerja dalam bentuk skema.
Pengumpulan data dan informasi yang penulis lakukan yaitu dengan menggunakan
studi pustaka dan mendapatkan hasil berupa dataset yang diambil dari National
46
47
Library of Medicine yang dikembangkan oleh Stefan Jaeger pada tahun 2018
nantinya akan digunakan sebagai data input sistem prediksi parasit malaria.
Dataset terdiri dari 27.558 gambar sel yang terbagi kedalam dua kategori yaitu
parasitized dan uninfected. Setiap kategori terdiri dari 13.779 gambar sel.
Setelah seluruh data gambar berhasil dikumpulkan, data gambar tersebut nantinya
akan dibagi menjadi data training, data testing dan data validation. Selanjutnya
membuat konfigurasi untuk membaca path folder dataset dengan ratio data training
80%, validation data 20%. Pada penentuan rasio pembagian dataset ini, untuk rasio
pembagian data training dan data testing menggunakan metode Simple Hold-Out
Validation (Chollet, 2018), metode ini menjadi acuan standar dalam pembagian data
training dan validation dengan ratio 80:20 dan untuk ratio pembagian data training
membandingkan antara nilai split 6:4, 7:3, 8:2 dan 9:1. Dari penelitian tersebut
disimpulkan bahwa ratio 9:1 menghasilkan nilai akurasi yang lebih besar dari ratio
yang lainnya.
Kemudian data dibagi menjadi 3 folder training, testing dan validation dan
semua gambar diberikan label sesuai dengan folder yang telah dibuat.
48
Pada tahap ini, semua data yang telah dikumpulkan dan dibagi menjadi folder
training, testing dan validation di samakan seluruh ukuran yaitu 64x64 piksel dan
kategori “categorial” yang dikarenakan setiap folder berisikan dua kelas kategori
yaitu “Parasitized” dan “Uninfected”. Kemudian untuk data pada folder training
training di augmentasi dengan mengubah skala gambar dengan skala 1/255, dan
gambar di rotasi dengan range=20, dan zoom range=0.05, width shift range=0.05,
height shift range=0.05, shear range=0.05 dan data gambar di flip secara horizontal.
Data pada validation ini tidak dirotasi dan di flip dikarenakan nantinya akan
digunakan sebagai uji validasi model data training yang sudah diubah dengan data
validation yang skala gambarnya sama. Data pada folder testing tidak di
augmentasikan dikarenakan nantinya akan digunakan sebagai data uji tahap prediksi
Pada tahap ini penulis melakukan pembuatan model dari dataset yang ada untuk
Convolutional Neural Network - Long Short Term Memory agar sistem dapat
2015) dan nilai momentum Nesterov (Botev et al., 2017). Model yang disesuaikan
Pada proses pelatihan model ini akan digunakan arsitektur model yang telah
dibuat yang diberi nilai input_shape= 64x64 pixel, 3 channel gambar RGB
epoch untuk pelatihan model adalah 50 yang dimana suatu perulangan dari proses
pelatihan pada satu kali sesi lewatan sebanyak 50 kali guna mendapatkan error
terkecil dan menghasilkan kinerja yang baik untuk model yang dibuat. Sedangkan
optimizer menggunakan 'SGD' dengan nilai learning rate = 1e-1 dan nilai
momentum= 0.9.
Pada tahap ini akan meninterpretasikan hasil pemodelan yang telah dilakukan yaitu
hasil akurasi pengujian model dan visualisasi hasil prediksi pendeteksi parasit
malaria.
Hasil akurasi ditentukan melalu hasil Precision, Recall, dan F1-score. Model
prediksi kategori data yang Uninfected dan Parasitized. Nantinya semakin tinggi nilai
menggunakan studi pustaka dan mendapatkan hasil berupa dataset public yang
diambil dari National Library of Medicine yang telah dibuat dan dikembangkan oleh
Stefan Jaeger dan Feng Yang pada tahun 2018 yang didapat pada Gambar 4.1 dan
Dataset ini nantinya akan digunakan sebagai data input sistem klasifikasi parasit
malaria.
51
52
Dataset pada Gambar 4.2 terdiri dari 27.558 gambar sel yang terbagi kedalam
dua kategori yaitu parasitized dan uninfected. Setiap kategori terdiri dari 13.779
gambar sel.
dibagi menjadi 3 folder training, testing dan validation. Yang nantinya akan
digunakan dalam proses modeling, pengujian dan prediksi. Kemudian data tersebut
disamakan ukurannya dan diberikan label “1” untuk kategori parasitized dan label
“0” untuk kategori uninfected dengan source code pada Gambar 4.3 .
imagePaths = list(paths.list_images(DATASET))
random.seed(42)
random.shuffle(imagePaths)
i = int(len(imagePaths) * TRAIN_SPLIT)
trainPaths = imagePaths[:i]
testPaths = imagePaths[i:]
i = int(len(trainPaths) * VAL_SPLIT)
valPaths = trainPaths[:i]
trainPaths = trainPaths[i:]
53
datasets = [
("training", trainPaths, TRAIN_PATH),
("validation", valPaths, VAL_PATH),
("testing", testPaths, TEST_PATH)]
if not os.path.exists(baseOutput):
print("[INFO] 'creating {}' directory".format(baseOutput))
os.makedirs(baseOutput)
for inputPath in imagePaths:
filename = inputPath.split(os.path.sep)[-1]
label = inputPath.split(os.path.sep)[-2]
labelPath = os.path.sep.join([baseOutput, label])
if not os.path.exists(labelPath):
print("[INFO] 'creating {}' directory".format(labelPath))
os.makedirs(labelPath)
p = os.path.sep.join([labelPath, filename])
shutil.copy2(inputPath, p)
Gambar 4.3 Source code Split Dataset.
Tabel 4.1 menunjukkan sebaran data yang terdapat pada folder training,
validation dan testing:
validation dan telah disamakan seluruh ukurannya yaitu 64x64 piksel kemudian
diberikan label kategori “categorial” yang dikarenakan setiap folder berisikan dua
54
kelas kategori yaitu “Parasitized” dan “Uninfected”. Kemudian untuk data pada
dengan skala 1/255, dan gambar di rotasi dengan range=20, dan zoom range=0.05,
width shift range=0.05, height shift range=0.05, shear range=0.05 dan data gambar
Data pada validation ini tidak dirotasi dan di flip dikarenakan nantinya akan
digunakan sebagai uji validasi model data training yang sudah diubah dengan data
validation yang skala gambarnya sama. Data pada folder testing tidak di
augmentasikan dikarenakan nantinya akan digunakan sebagai data uji tahap prediksi
model terhadap data yang asli. Gambar 4.4 adalah source code pada tahap eksplorasi
data ini:
NUM_EPOCHS = 25
BS = 32
trainAug = ImageDataGenerator(
rescale=1 / 255.0,
rotation_range=20,
zoom_range=0.05,
width_shift_range=0.05,
height_shift_range=0.05,
shear_range=0.05,
horizontal_flip=True,
fill_mode="nearest")
valAug = ImageDataGenerator(rescale=1 / 255.0)
trainGen = trainAug.flow_from_directory(
TRAIN_PATH,
class_mode="categorical",
target_size=(130, 130),
color_mode="rgb",
shuffle=True,
batch_size=32)
55
valGen = valAug.flow_from_directory(
VAL_PATH,
class_mode="categorical",
target_size=(130, 130),
color_mode="rgb",
shuffle=False,
batch_size=BS)
testGen = valAug.flow_from_directory(
TEST_PATH,
class_mode="categorical",
target_size=(130, 130),
color_mode="rgb",
shuffle=False,
batch_size=BS)
Gambar 4.4 Source Code Augmentasi data
algoritma atau metode Convolutional Neural Network - Long Short Term Memory.
Gambar 4.5 adalah source code arsitektur jaringan model yang dibentuk:
model = Sequential()
model.add(Conv2D(32, (3,3), activation = 'relu', input_shape = inputShape))
model.add(MaxPooling2D(2,2))
model.add(BatchNormalization(axis = -1))
model.add(Dropout(0.2))
model.add(Conv2D(32, (3,3), activation = 'relu'))
model.add(MaxPooling2D(2,2))
model.add(BatchNormalization(axis = -1))
model.add(Dropout(0.2))
model.add(Conv2D(32, (3,3), activation = 'relu'))
model.add(MaxPooling2D(2,2))
model.add(BatchNormalization(axis = -1))
model.add(Dropout(0.2))
model.add(TimeDistributed(Flatten()))
model.add(LSTM(512,return_sequences=False))
model.add(Dense(512, activation = 'relu'))
model.add(BatchNormalization(axis = -1))
model.add(Dropout(0.5))
model.add(Dense(2, activation = 'softmax'))
model.compile(loss = 'categorical_crossentropy', optimizer = 'adam', metrics = ['accuracy'])
model.build(inputShape)
model.summary()
Gambar 4.5 Source Code arsitektur jaringan CNN-LSTM
Arsitektur jaringan pada penelitian ini dijelaskan seperti penjelasan dibawah ini :
56
antara dua buah matriks yang berbeda untuk menghasilkan suatu nilai
aktivasi fungsi yaitu RELU (Retrified Linear Unit). Fungsi aktivasi ini
dari input hasil konvolusi pertama yang berukuran 64x64. Proses ini
jumlah filter yaitu 32, 32 dan 128 filter dan dengan ukuran kernel 3x3.
kedua yakni dengan input matriks gambar sebesar 32x32 pada 3 jumlah
57
filter yaitu 64, 64 dan 256 filter dan dengan ukuran kernel 4x4. Proses
ketiga yakni dengan input matriks gambar sebesar 16x16 pada 3 jumlah
filter yaitu 128, 128 dan 512 filter dan dengan ukuran kernel 6x6. Proses
hampir sama dengan proses pooling yang pertama, namun pada proses
ini menggunakan average pooling dengan ukuran kernel 8x8. Proses ini
1x1.
7. Selanjutnya Flatten. Pada tahap ini digunakan hanya satu hidden layer
8. Layer LSTM. Pada tahap ini menggunakan 512 neuron hidden layer
training didapatkan model dari arsitektur tersebut. Gambar 4.6 adalah model yang
terbentuk :
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d (Conv2D) (None, 48, 48, 32) 896
_________________________________________________________________
max_pooling2d (MaxPooling2D) (None, 24, 24, 32) 0
_________________________________________________________________
batch_normalization (BatchNo (None, 24, 24, 32) 128
_________________________________________________________________
dropout (Dropout) (None, 24, 24, 32) 0
_________________________________________________________________
conv2d_1 (Conv2D) (None, 22, 22, 32) 9248
_________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 11, 11, 32) 0
_________________________________________________________________
batch_normalization_1 (Batch (None, 11, 11, 32) 128
_________________________________________________________________
dropout_1 (Dropout) (None, 11, 11, 32) 0
_________________________________________________________________
conv2d_2 (Conv2D) (None, 9, 9, 32) 9248
_________________________________________________________________
max_pooling2d_2 (MaxPooling2 (None, 4, 4, 32) 0
_________________________________________________________________
batch_normalization_2 (Batch (None, 4, 4, 32) 128
_________________________________________________________________
dropout_2 (Dropout) (None, 4, 4, 32) 0
_________________________________________________________________
flatten (Flatten) (None, 4, 128) 0
_________________________________________________________________
LSTM (LSTM) (None, 512) 1312768
_________________________________________________________________
dense (Dense) (None, 512) 262656
_________________________________________________________________
batch_normalization_3 (Batch (None, 512) 2048
_________________________________________________________________
dropout_3 (Dropout) (None, 512) 0
_________________________________________________________________
dense_1 (Dense) (None, 2) 1026
=================================================================
Total params: 1,598,274
Trainable params: 1,597,058
Non-trainable params: 1,216
parameter yang terbentuk dari model sebanyak 1.598.274 neuron, dan parameter yang
59
akan di training sebanyak 1.597.058 neuron dan parameter yang tidak di training
sehingga menghasilkan deret angka yang baru, dengan kata lain gambar tersebut
citra yang baru, angka konvolusi pada citra tersebut berbentuk matriks array. Pada
pemodelan ini digunakan input gambar dengan ukuran pixel 64x64x3, yang
menjelaskan ukuran tinggi dan lebar pixel gambar sebesar 64 pixel dan gambar input
tersebut memiliki 3 channel yaitu red, green, dan blue atau yang biasa disebut dengan
RGB.
Setiap channel piksel memiliki nilai matriks yang berbeda-beda. Input akan di
konvolusi dengan nilai filter yang sudah ditentukan. Filter merupakan blok lain atau
kubus dengan tinggi dan lebar yang lebih kecil namun kedalaman yang sama yang
tersapu di atas gambar dasar atau gambar asli. Filter digunakan untuk menentukan
pola apa yang akan dideteksi yang selanjutnya dikonvolusi atau dikalikan dengan nilai
pada matriks input, nilai pada masingmasing kolom dan baris pada matriks sangat
bergantung pada jenis pola yang akan dideteksi. Jumlah filter pada konvo ini
sebanyak 64 dengan ukuran kernel (3x3), ini artinya gambar yang dihasilkan dari
Linear Unit) setelah proses konvolusi. Fungsi dari aktivasi ini adalah melakukan
60
“treshold” dari 0 hingga infinity. Nilai yang ada pada hasil konvolusi yang bernilai
negatif akan diubah dengan aktivasi ini menjadi nol dan yang lainnya sampai infinity.
disederhanakan menjadi matriks yang baru. Pada penelitian ini digunakan metode
max pooling dan average pooling pada proses poolingnya dimana diambil nilai
terbesar dari matriks input dan menghasilkan matriks baru sebagai outputnya.
umum terdiri dari cell, input gate, output gate, dan forget gate. LSTM neural network
data time series karena mungkin ada kelangkaan durasi yang tidak diketahui di antara
Secara intuitif, input gate mengontrol sejauh mana nilai baru akan berjalan ke dalam
cell, forget gate mengontrol sejauh mana nilai tetap di dalam cell, dan output gate
mengontrol sejauh mana nilai dalam cell digunakan untuk menghitung aktivasi
keluaran dari unit LSTM. Pada penelitian ini menggunakan 512 hidden unit pada
yang ada pada feature extraction layer masih berbentuk multidimensional array,
61
sehingga harus dilakukan reshape feature map menjadi sebuah vector agar bisa
digunakan sebagai input dari fully-connected layer. Setelah itu diberi fungsi dense.
unit. Unit tersebut artinya jumlah node yang harus ada di hidden layer, nilainya antara
jumlah input node dan output node. Fungsi dari fully connected layer ini adalah untuk
melakukan transformasi pada dimensi data agar data dapat diklasifikasikan secara
linear. Kemudian di inialisasi layer outputnya, yang berupa 2 node, karena dalam
4.5 iNterpreting
Interpretasi hasil pemodelan yang telah dilakukan yaitu hasil akurasi pengujian
model dan visualisasi hasil prediksi pendeteksi parasit malaria. Pada pengujian
akurasi prediksi ini model yang telah tersimpan dalam malaria_model.h5 akan di
evaluasi dengan cara pembuatan prediksi pada data yang terdapat pada folder testing
dan selanjutnya dapat menentukan label dengan probabilitas yang terbesar untuk
setiap gambar yang ada. Dan hasil prediksi model ini akan disimpan ke dalam
prediction_model.h5. Gambar 4.7 adalah source code yang dibuat untuk menguji
akurasi:
Epoch 1/5
515/515 [==============================] - 166s 206ms/step - loss: 0.5092 - accuracy: 0.7889
Epoch 2/5
515/515 [==============================] - 106s 206ms/step - loss: 0.1996 - accuracy: 0.9348
Epoch 3/5
515/515 [==============================] - 107s 209ms/step - loss: 0.1570 - accuracy: 0.9521
Epoch 4/5
515/515 [==============================] - 105s 203ms/step - loss: 0.1477 - accuracy: 0.9553
Epoch 5/5
515/515 [==============================] - 106s 205ms/step - loss: 0.1410 - accuracy: 0.9565
Gambar 4.8 Hasil akurasi training model
Uji validasi juga dibutuhkan untuk menentukan nilai loss dan tingkat akurasi
model terhadap data validation. Gambar 4.9 adalah source code untuk menentukan
Dari uji validasi pada Gambar 4.9 didapatkan hasil sebagai berikut:
diketahui besar loss 14,1% dengan akurasi yang tinggi sebesar 95,6%. Sedangkan
untuk data validasi, nilai loss yaitu sebesar 12,3% dan akurasi sebesar 96,25%. Yang
berarti menunjukkan akurasi model sebesar 96,25%. Dengan hasil tersebut dapat
dibuktikan bahwa pemodelan berhasil dan sistem dapat dengan sangat baik
Setelah pemodelan telah selesai dan tahap finalisasi, kemudian model tersebut
dihubungkan pada program prediksi agar dapat dijalankan, digunakan, dan diuji
dengan data pada folder testing yang berisikan 5.512 data gambar yang terbagi
kedalam 2 folder parasitized dan uninfected yang berisikan 2.726 data gambar dan
uninfected yang berisikan 2.786 data gambar . Dalam tahap pengujian model terhadap
data pada gambar yang terdapat pada folder testing menghasilkan nilai akurasi yang
sangat bagus yaitu 96% yang dapat dilihat pada Gambar , dimana hasil ini sangat
bagus yang membuktikan bahwa sistem dapat megenali dan membedakan gambar
Dari data pada Gambar 4.11 didapatkan hasil bahwa dalam pengenalan dalam
kelas Parasitized tingkat akurasi pegenalan adalah 96 % dari data gambar sebanyak
2.726, dan tingkat akurasi yang sama 96 % pada pengenalan kelas Uninfected. Dan
rata-rata hasil dari kedua kelas tersebut adalah 96%. Data ini membuktikan bahwa
dalam pengenalan kelas Parasitized data yang berhasil di prediksi dengan benar
adalah sebanyak 2.644 data gambar, dan yang gagal adalah 82 data gambar.
Sedangkan pada kelas Uninfected data yang berhasil diprediksi dengan benar adalah
sebanyak 2.702 data gambar dan yang gagal adalah sebanyak 84 data gambar.
64
Dari hasil tingkat akurasi pada penelitian ini, dapat dibandingkan dengan
beberapa literatur sejenis yang penelitiannya akan dijabarkan satu persatu berikut ini:
tahun 2017 yang ditulis oleh Dhanya Bibin, Madhu S. Nair dan P.
4.100 gambar sel darah manusia ke dalam kelas parasit dan non-parasit.
layer dan memiliki 2 kelas output layer dengan 4 lapisan hidden layer
sel darah yang mengandung parasit malaria dan yang tidak dan memiliki
images” pada tahun 2013 yang ditulis oleh Dev Kumar Das,
hasil akurasi tertinggi yaitu 84% sementara SVM memiliki hasil akurasi
83,5% dengan selisih lebih rendah 12,5% dari hasil akurasi penelitian
ini.
dengan selisih 13,65% lebih rendah dari hasil akurasi penelitian ini.
penelitian ini.
akan digunakan dalam visualisasi hasil prediksi sistem terhadap gambar sel yang ada
pada data testing. Gambar 4.12 adalah source code untuk menampilkan hasil
app = Flask(__name__)
MODEL_PATH = 'model/malariaModel.h5'
model = load_model(MODEL_PATH)
@app.route('/', methods=['GET'])
def home():
return render_template('home.html')
basepath = os.path.dirname(__file__)
file_path = os.path.join(
basepath, 'uploads', secure_filename(f.filename))
f.save(file_path)
if __name__ == '__main__':
app.run(debug=True)
Gambar 4.12 Source code visualisasi klasifikasi parasit malaria
Pada proses menampilkan visualisasi hasil prediksi ini, data input berupa data
gambar dari folder testing yang berisikan 5.512 gambar yang tergolong kedalam 2
kelas dengan masing-masing kelas terdapat 2.786 gambar Uninfected dan 2.726
gambar Parasitized. Data input dibaca menggunakan modul OpenCV dan di resize
menjadi 64x64 piksel. Kemudian data diubah kedalam bentuk array guna
memudahkan proses prediksi kedalam bentuk matriks. Data yang telah diubah
tersebut akan diberi label “Parasitized” jika nilai prediksi = 1 dan label “Uninfected”
jika nilai prediksi = 0. Berikut adalah hasil dari visualisasi klasifikasi parasit malaria:
5.1 Kesimpulan
Berdasarkan pembahasan yang sudah diuraikan, maka dapat ditarik kesimpulan
sebagai berikut:
LSTM pada penelitian ini menggunakan input shape berukuran 64x64x3, ukuran
filter 3x3, Jumlah Epoch sebanyak 50. Data yang digunakan untuk proses training
model sebanyak 19.842 pada folder training dan 2.204 data pada folder
melakukan deteksi parasit malaria sebesar 96,25% untuk training accuracy dan
95,6% untuk validation accuracy. Dengan hasil tersebut dapat dibuktikan bahwa
pemodelan berhasil dan sistem dapat dengan sangat baik membedakan data
2. Penelitian ini menggunakan data testing sebanyak 5.512 gambar dimana per
kategori terdapat 2.726 gambar pada kelas Parasitized dan 2.786 gambar pada
kelas Uninfected untuk diujikan kedalam model yang telah dibuat. Hasil testing
sebesar 96%. Dengan hasil tersebut dapat dibuktikan bahwa pemodelan berhasil
dan sistem menghasilkan tingkat akurasi yang sangat baik dalam pengkategorian
dan dapat dengan sangat baik membedakan dan memberikan label yang benar
70
71
pada data gambar yang Parasitized dan Uninfected, serta kombinasi fitur tata
5.2 Saran
training model.
4. Penelitian ini dapat dikembangkan kedalam sebuah aplikasi berbasis web maupun
smartphone.
DAFTAR PUSTAKA
Aditi, Nagda, M. K., & Poovammal, E. (2019). Image classification using a hybrid
lstm-cnn deep neural network. International Journal of Engineering and
Advanced Technology, 8(6), 1342–1348.
https://doi.org/10.35940/ijeat.F8602.088619
Ahmad, A. (2017). Mengenal Artificial Intelligence, Machine Learning, Neural
Network, dan Deep Learning. June.
Akromunnisa, K., Hidayat, R., Informatika, J. T., & Adisucipto, J. L. (2019).
KLASIFIKASI DOKUMEN TUGAS AKHIR (SKRIPSI) MENGGUNAKAN K-
NEAREST NEIGHBOR. 4(1), 69–75.
Al-Waisy, A. S., Qahwaji, R., Ipson, S., & Al-Fahdawi, S. (2017). A multimodal
biometrie system for personal identification based on deep learning approaches.
Proceedings - 2017 7th International Conference on Emerging Security
Technologies, EST 2017, September, 163–168.
https://doi.org/10.1109/EST.2017.8090417
Alarcón-Soto, Y., Espasandín-Domínguez, J., Guler, I., Conde-Amboage, M., Gude-
Sampedro, F., Langohr, K., Cadarso-Suárez, C., & Gómez-Melis, G. (2019).
Data Science in Biomedicine. September. http://arxiv.org/abs/1909.04486
Bergstra, J., & Bengio, Y. (2012). Random search for hyper-parameter optimization.
Journal of Machine Learning Research, 13, 281–305.
Bibin, D., Nair, M. S., & Punitha, P. (2017). Malaria Parasite Detection from
Peripheral Blood Smear Images Using Deep Belief Networks. IEEE Access, 5,
9099–9108. https://doi.org/10.1109/ACCESS.2017.2705642
Botev, A., Lever, G., & Barber, D. (2017). Nesterov’s accelerated gradient and
momentum as approximations to regularised update descent. Proceedings of the
International Joint Conference on Neural Networks, 2017-May(2), 1899–1903.
https://doi.org/10.1109/IJCNN.2017.7966082
Byrne, C., Farnham, B., Tokyo, S., Boston, B., Sebastopol, F., & Beijing, T. (2017).
Development Workflows for Data Scientists. O’Reilly. http://oreilly.com/safari
Center for Disease Control and Prevention. (2018). CDC Parasites.
https://www.cdc.gov/parasites/malaria/index.html
Chollet, F. (2018). Deep Learning with Python. In 2018 21st International
Conference on Information Fusion, FUSION 2018.
https://doi.org/10.23919/ICIF.2018.8455530
Das, D. K., Ghosh, M., Pal, M., Maiti, A. K., & Chakraborty, C. (2013). Machine
72
73
Nugroho, A., & Subanar, S. (2013). Klasifikasi Naïve Bayes untuk Prediksi
Kelahiran pada Data Ibu Hamil. Bimipa, 23(3), 297–308.
Nurhikmat, T. (2018). Implementasi Deep Learning Untuk Image Classification
Menggunakan Algoritma Convolutional Neural Network (CNN) Pada Citra
Wayang Golek. In Mathematics Education Journal (Vol. 1, Issue 1).
https://doi.org/10.29333/aje.2019.423a
Patterson, J., & Gibson, A. (2017). Deep learning A: PRACTITIONER’S
APPROACH. In O’Reilly (Vol. 29, Issue 7553).
Perez, L., & Wang, J. (2017). The Effectiveness of Data Augmentation in Image
Classification using Deep Learning. http://arxiv.org/abs/1712.04621
Permata, E., Purnama, I. K. E., & Purnomo, M. H. (2012). Klasifikasi Jenis Dan Fase
Parasit Malaria Plasmodium Falciparum Dan Plasmodium Vivax Dalam Sel
Darah Merah Menggunakan Support Vector Machine One Against One. Setrum,
1(2), 1–8.
Poostchi, M., Silamut, K., Maude, R. J., Jaeger, S., & Thoma, G. (2018). Image
analysis and machine learning for detecting malaria. Translational Research,
194(2018), 36–55. https://doi.org/10.1016/j.trsl.2017.12.004
PUSDATINKemenkesRI. (2016). InfoDatin-Malaria-2016.pdf.
Putri, R. K. S. C. (2018). Implementasi Deep Learning Menggunakan Metode
Convolutional Neural Network Untuk Klasifikasi Gambar. Mathematics
Education Journal, 1(1), 75. https://doi.org/10.29333/aje.2019.423a
Rajaraman, S., Antani, S. K., Poostchi, M., Silamut, K., Hossain, M. A., Maude, R.
J., Jaeger, S., & Thoma, G. R. (2018). Pre-trained convolutional neural networks
as feature extractors toward improved malaria parasite detection in thin blood
smear images. PeerJ, 2018(4), 1–17. https://doi.org/10.7717/peerj.4568
Ross, N. E., Pritchard, C. J., Rubin, D. M., & Dusé, A. G. (2006). Automated image
processing method for the diagnosis and classification of malaria on thin blood
smears. Medical and Biological Engineering and Computing, 44(5), 427–436.
https://doi.org/10.1007/s11517-006-0044-2
Saadah, S. (2018). Sistem Peredaran Darah Manusia. 8 Februari, 1–58.
https://idschool.net/smp/sistem-peredaran-darah-manusia/
Sang, D. V., Van Dat, N., & Thuan, D. P. (2017). Facial expression recognition using
deep convolutional neural networks. Proceedings - 2017 9th International
Conference on Knowledge and Systems Engineering, KSE 2017, 2017-
Janua(June), 130–135. https://doi.org/10.1109/KSE.2017.8119447
Schmidhuber, J. (2015). Deep Learning in neural networks: An overview. Neural
Networks, 61, 85–117. https://doi.org/10.1016/j.neunet.2014.09.003
75
Smith, L. N. (2017). Cyclical learning rates for training neural networks. Proceedings
- 2017 IEEE Winter Conference on Applications of Computer Vision, WACV
2017, April, 464–472. https://doi.org/10.1109/WACV.2017.58
Srivasta, N., Hinton, G., Krizhevsky, A., Sutskever, I., & Salakhutdinov, R. (2014).
Dropout: A simple Way to Prevent Neural Networks from Overfitting. Physics
Letters B, 299(3–4), 345–350. https://doi.org/10.1016/0370-2693(93)90272-J
WHO. (2022). World malaria report 2022. In World Health Organization.
https://www.who.int/teams/global-malaria-programme/reports/world-malaria-
report-2021
Zufar, M., & Setiyono, B. (2016). Convolutional Neural Networks Untuk Pengenalan
Wajah Secara Real-time. Jurnal Sains Dan Seni ITS, 5(2), 128862.