64
i Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR PENELITIAN DOSEN PEMULA PENERAPAN DEEP LEARNING PADA APLIKASI PREDIKSI PENYAKIT PNEUMONIA BERBASIS CONVOLUTIONAL NEURAL NETWORKS Tahun ke 1 dari rencana 1 tahun TIM PENGUSUL Agung Pedananto, S.Kom., M.Kom. 0428088701 (Ketua) Achmad Udin Zailani, S.Kom., M.Kom 0429058303 (Anggota) Dibiyai oleh : Direktorat Riset Dan Pengabdian Masyarakat Direktorat Jendral Penguatan Riset Dan Pengembangan Kementrian Riset, Teknologi, dan Pendidikan Tinggi Sesuai Dengan Kontrak Penelitian Nomer : 189/A5/SPKP/LPPM/UNPAM/III/2019 UNIVERSITAS PAMULANG TANGERANG SELATAN November, 2019

Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

i

Kode/Nama Rumpun Ilmu : 458/Teknik

LAPORAN AKHIR

PENELITIAN DOSEN PEMULA

PENERAPAN DEEP LEARNING PADA APLIKASI PREDIKSI

PENYAKIT PNEUMONIA BERBASIS CONVOLUTIONAL NEURAL

NETWORKS

Tahun ke 1 dari rencana 1 tahun

TIM PENGUSUL

Agung Pedananto, S.Kom., M.Kom. 0428088701 (Ketua)

Achmad Udin Zailani, S.Kom., M.Kom 0429058303 (Anggota)

Dibiyai oleh :

Direktorat Riset Dan Pengabdian Masyarakat

Direktorat Jendral Penguatan Riset Dan Pengembangan

Kementrian Riset, Teknologi, dan Pendidikan Tinggi

Sesuai Dengan Kontrak Penelitian

Nomer : 189/A5/SPKP/LPPM/UNPAM/III/2019

UNIVERSITAS PAMULANG

TANGERANG SELATAN

November, 2019

Page 2: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

ii

Page 3: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

iii

RINGKASAN

Pneumonia merupakan salah satu penyebab kematian anak-anak tertinggi di

dunia. Badan Kesehatan Dunia (WHO) memperkirakan bahwa penyakit ini memicu

15% dari seluruh kematian anak-anak di bawah usia 5 tahun (WHO, 2015). Dalam

mengenali foto rontgen terdapat banyak metode yang bisa diimplementasikan.

Salah satu dari implementasinya adalah dengan menggunakan Convolutional

Neural Network (CNN). Convolutional Neural Network atau yang biasa disebut

CNN merupakan bagian dari Deep Learning yang melakukan proses pembelajaran

untuk mencari representasi terbaik. Dengan Menggunakan model tersebut yang

diimplementasikan dengan aplikasi web didapatkan hasil akurasi sebesar 75% dari

uji acak yang dilakukan dengan menggunakan data yang berbeda dari data training.

Kata kunci: Pneumonia, Deep Learning, Convolutional Neural Networks, Pooling

Page 4: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

iv

KATA PENGANTAR

Puji dan syukur penulis panjat kepada Allah SWT yang telah memberikan rahmat

dan hidayah-Nya sehingga penulis dapat menyelesaikan Penelitian Dosen Pemula

berjudul “PENERAPAN DEEP LEARNING PADA APLIKASI PREDIKSI

PENYAKIT PNEUMONIA BERBASIS CONVOLUTIONAL NEURAL

NETWORKS”. Penulis menyadari bahwa penulisan Penelitian Dosen Pemula

dengan Hibah Ristekdikti ini tidak lepas dari bimbingan, dorongan dan bantuan dari

berbagai pihak. Pada kesempatan ini penulis menyampaikan banyak terima kasih

dan penghargaan yang setinggi-tingginya kepada:

1. Dr. HC. Drs. H. Darsono, selaku Ketua Yayasan Sasmita Jaya.

2. Dr. H. Dayat Hidayat, M.M. selaku Rektor Universitas Pmulang.

3. Dr. Ali Maddinsyah, S.E., M.M. Selaku ketua LPPM

4. Semua pihak yang telah membantu penulis yang tidak bisa penulis sebutkan

satu persatu, terima kasih atas bantuan, dorongan dan semangatnya.

Penulis menyadari sepenuhnya bahwa dalam melakukan penulisan laporam

penelitian ini masih banyak terdapat kekurangan dan ketidaksempurnaan, untuk itu

penulis mengharapkan kritik dan saran yang membangun demi kesempurnaan

penulisan ini. Semoga tulisan ini bermanfaat bagi penulis khususnya dan para

pembaca pada umumnya.

Tangerang Selatan, Oktober 2019

Penulis

Page 5: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

v

DAFTAR ISI

RINGKASAN ........................................................................................................ iii

KATA PENGANTAR ........................................................................................... iv

DAFTAR ISI ........................................................................................................... v

DAFTAR TABEL ................................................................................................ viii

DAFTAR GAMBAR ............................................................................................. ix

BAB I PENDAHULUAN ....................................................................................... 1

1.1 Latar Belakang ......................................................................................... 1

1.2 Rumusan Masalah .................................................................................... 2

1.3 Batasan Masalah ....................................................................................... 2

1.4 Tujuan Penelitian ...................................................................................... 2

1.5 Metode Penelitian ..................................................................................... 2

BAB II LANDASAN TEORI ................................................................................. 4

2.1 Kecerdasan Buatan ................................................................................... 4

2.1.1 Machine Learning ............................................................................. 6

2.1.2 Deep Learning ................................................................................... 9

2.1.3 Neural Network ............................................................................... 10

2.2 Python ..................................................................................................... 18

2.3 TensorFlow ............................................................................................. 18

2.4 Prediksi ................................................................................................... 19

2.5 Pneumonia .............................................................................................. 19

2.6 Informatika Kedokteran ......................................................................... 23

2.7 Citra Digital ............................................................................................ 25

2.7.1 Tipe Citra Digital ............................................................................ 27

2.7.2 Teori Dasar Pengolahan Citra Digital ............................................. 30

Page 6: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

vi

BAB III TUJUAN DAN MANFAAT PENELITIAN .......................................... 32

3.1 Tujuan Penelitian .................................................................................... 32

3.2 Manfaat Penelitian ................................................................................. 32

BAB IV METODE PENELITIAN ....................................................................... 33

4.1 Analisa Kebutuhan ..................................................................................... 33

4.1.1 Perangkat ............................................................................................. 33

4.1.2 Kebutuhan Data................................................................................... 33

4.2 Langkah Penelitian ..................................................................................... 35

4.2.1 Studi Literatur ...................................................................................... 35

4.2.2 Model Convolutional Neural Networks ............................................... 35

4.3 Model Yang Digunakan ......................................................................... 40

4.3.1 Model 1 ........................................................................................... 40

4.3.2 Model 2 ................................................................................................ 42

BAB V HASIL YANG DICAPAI ........................................................................ 43

5.1 Proses Pengolahan Citra ......................................................................... 43

5.2 Hasil Penelitian ....................................................................................... 43

5.2.1 Hasil Image Processing (Preprocessing) ........................................... 43

5.3 Pembahasan ............................................................................................... 44

5.3.1 Train / Test Split ................................................................................ 44

5.3.2 Training Model .................................................................................... 44

5.3.3 Testing Model ...................................................................................... 45

5.3.4 Random Simple Testing ....................................................................... 46

5.3.5 Analisa Dan Kesimpulan ..................................................................... 48

BAB VI RENCANA TAHAP BERIKUTNYA .................................................... 49

BAB VII KESIMPULAN DAN SARAN ............................................................. 50

7.1 Kesimpulan ............................................................................................. 50

Page 7: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

vii

7.2 Saran ....................................................................................................... 50

DAFTAR PUSTAKA ........................................................................................... 51

LAMPIRAN .......................................................................................................... 53

Page 8: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

viii

DAFTAR TABEL

Tabel 2.1 Perbedaan Jenis-Jenis Learning .............................................................. 8

Tabel 2.2 Frekuensi Gejala ................................................................................... 20

Tabel 4.1 Hardware ............................................................................................... 33

Tabel 4.2 Software ................................................................................................ 33

Page 9: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

ix

DAFTAR GAMBAR

Page 10: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR
Page 11: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Pneumonia merupakan pembunuh utama anak dibawah usia lima tahun

(Balita) di dunia, lebih banyak dibandingkan dengan penyakit lain seperti AIDS,

Malaria dan Campak. Namun, belum banyak perhatian terhadap penyakit ini. Di

dunia, dari 9 juta kematian Balita lebih dari 2 juta Balita meninggal setiap tahun

akibat pneumonia atau sama dengan 4 Balita meninggal setiap menitnya. Dari lima

kematian Balita, satu diantaranya disebabkan pneumonia. Di Indonesia

menunjukkan; prevalensi nasional ISPA: 25,5% (16 provinsi di atas angka

nasional), angka kesakitan (morbiditas) pneumonia pada Bayi: 2.2 %, Balita: 3%,

angka kematian (mortalitas) pada bayi 23,8%, dan Balita 15,5% (Riset Kesehatan

Dasar, 2007) . Pneumonia merupakan salah satu penyebab kematian anak-anak

tertinggi di dunia. Badan Kesehatan Dunia (WHO) memperkirakan bahwa penyakit

ini memicu 15% dari seluruh kematian anak-anak di bawah usia 5 tahun (WHO,

2015). Pada tahun 2015, terdapat lebih dari 900.000 anak-anak yang meninggal

akibat pneumonia. Di Indonesia sendiri, pneumonia diperkirakan telah merenggut

sekitar 25.000 jiwa balita pada tahun 2013. Pneumonia sendiri bisa jadi infeksi

paru-paru biasa tapi kadang kala bisa mematikan. Pneumonia bisa terjadi karena

berbagai organisme, pneumonia karena bakteri atau virus. Upaya pemerintah dalam

menekan angka kematian akibat pneumonia diantaranya melalui penemuan kasus

pneumonia Balita sedini mungkin di pelayanan kesehatan dasar, penatalaksanaan

kasus dan rujukan. Adanya keterpaduan dengan lintas program melalui pendekatan

MTBS di Puskesmas serta penyediaan obat dan peralatan untuk Puskesmas

Perawatan dan di daerah terpencil.

Menurut Menkes, pengendalian penyakit ISPA memiliki kendala

diantaranya cakupan penemuan masih sangat rendah akibat tingginya mutasi tenaga

kesehatan. Selain itu pengendalian pneumonia bukan program prioritas karena di

beberapa daerah anggaran untuk pneumonia jumlahnya tidak memadai bahkan

tidak ada sama sekali. Untuk pneumonia karena bakteri kita punya pilihan

Page 12: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

2

pengobatan yang lebih banyak. Jadi dapat dikatakan bahwa lebih baik terkena

pneumoia karena bakteri. Sedangkan pneumonia karena virus, kita semua pernah

mendengar mengenai flu. Flu adalah proses infeksi sangat umum yang

menyebabkan pneumonia. Dan kita tidak punya banyak pilihan untuk

mengobatinya (Dr. Matthew Schreiber, spesialis penyakit paru-paru di RS Medstar

Washington). Dengan melihat permasalahan yang ditemukan di atas, penulis

tertarik untuk melaksanakan penelitian yang berjudul “Penerapan deep learning

pada Aplikasi prediksi penyakit Pneumonia berbasis Convolutional Neural

networks”. Dengan harapan penelitian ini memberikan solusi pemecahan masalah

dan juga membantu mempercepat diagnosis.

1.2 Rumusan Masalah

Atas dasar latar belakang dan identifikasi masalah diatas, maka dapat

dirumuskan “bagaimana kita bisa menerapkan deep learning pada prediksi

penyakit pneumonia menggunakan convolutional neural networks sehingga mampu

mengatasi permasalahan yang ada?

1.3 Batasan Masalah

Untuk mencapai tujuan agar penelitian yang dilakukan sesuai dengan

ketersediaan data, dana dan lebih terarah, maka penelitian hanya menekankan pada:

a. Alat diagnostic yang berdasarkan kerangka kerja

b. Kerangka hanya memanfaatkan pembelajaran transfer

c. Pendekatan ke dataset

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah untuk mengaplikasikan rancangan prediksi

pneumonia dengan menggunakan algoritma convolutional neural networks . Sistem

ini pada akhirnya dapat membantu mempercepat diagnosis dan rujukan kondisi

yang dapat diobati ini, dengan demikian memfasilitasi pengobatan lebih dini,

menghasilkan hasil klinis yang lebih baik

1.5 Metode Penelitian

Metode penelitian terdiri dari dua macam, yaitu metode pengumpulan data

dan metode pengembangan sistem:

Page 13: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

3

1. Metode Pengumpulan Data

a. Studi Pustaka

Pengumpulan data yang bersumber dari berbagai buku-buku

yang menjadi referensi, serta pencarian informasi lainnya yang dapat

mendukung proses penelitian yang bersumber dari media internet

guna memperoleh data-data tambahan.

b. Observasi

Observasi adalah metode pengumpulan informasi dengan

cara melakukan pengamatan atau peninjauan langsung terhadap

obyek penelitian.

c. Evaluasi

Evaluasi adalah sebuah proses dimana keberhasilan yang

dicapai dibandingkan dengan seperangkat keberhasilan yang

diharapkan. Perbandingan ini kemudian dilanjutkan dengan

pengidentifikasian faktor-faktor yang berpengaruh pada kegagalan

dan keberhasilan.

2. Metode Analisis

Metode pengembangan sistem yang digunakan dalam penulisan skripsi ini

adalah metode Algoritma Convolutional Neural Networks, yang memiliki

tahaptahap sebagai berikut:

a. Algoritma Convolutional Neural Networks

b. Validasi

c. Evaluasi

Page 14: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

4

BAB II

LANDASAN TEORI

2.1 Kecerdasan Buatan

Kecerdasan Buatan atau kecerdasan yang ditambahkan kepada suatu

sistem yang bisa diatur dalam konteks ilmiah atau Intelegensi Artifisial

(bahasa Inggris: Artificial Intelligence atau hanya disingkat AI) didefinisikan

sebagai kecerdasan entitas ilmiah. Sistem seperti ini umumnya dianggap

komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin

(komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan

manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan

antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan

saraf tiruan dan robotika.

Secara garis besar, AI terbagi ke dalam dua paham pemikiran yaitu AI

Konvensional dan Kecerdasan Komputasional (CI, Computational

Intelligence). AI konvensional kebanyakan melibatkan metode-metode yang

sekarang diklasifiksikan sebagai pembelajaran mesin, yang ditandai dengan

formalisme dan analisis statistik. Dikenal juga sebagai AI simbolis, AI logis,

AI murni dan AI cara lama (GOFAI, Good Old Fashioned Artificial

Intelligence). Metodemetodenya meliputi:

1. Sistem pakar: menerapkan kapabilitas pertimbangan untuk mencapai

kesimpulan. Sebuah sistem pakar dapat memproses sejumlah besar informasi

yang diketahui dan menyediakan kesimpulan-kesimpulan berdasarkan pada

informasi-informasi tersebut.

2. Petimbangan berdasar kasus

3. Jaringan Bayesian

4. AI berdasar tingkah laku: metode modular pada pembentukan sistem AI secara

manual

Kecerdasan komputasional melibatkan pengembangan atau

pembelajaran iteratif (misalnya penalaan parameter seperti dalam sistem

koneksionis. Pembelajaran ini berdasarkan pada data empiris dan

Page 15: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

5

diasosiasikan dengan AI nonsimbolis, AI yang tak teratur dan perhitungan

lunak. Metode-metode pokoknya meliputi:

1. Jaringan Saraf: sistem dengan kemampuan pengenalan pola yang sangat

kuat

2. Sistem Fuzzy: teknik-teknik untuk pertimbangan di bawah ketidakpastian,

telah digunakan secara meluas dalam industri modern dan sistem kendali

produk konsumen.

3. Komputasi Evolusioner: menerapkan konsep-konsep yang terinspirasi

secara biologis seperti populasi, mutasi dan “survival of the fittest” untuk

menghasilkan pemecahan masalah yang lebih baik.

Metode-metode ini terutama dibagi menjadi algoritme evolusioner

(misalnya algoritme genetik) dan kecerdasan berkelompok (misalnya

algoritme semut)

Dengan sistem cerdas hibrid, percobaan-percobaan dibuat untuk

menggabungkan kedua kelompok ini. Aturan inferensi pakar dapat

dibangkitkan melalui jaringan saraf atau aturan produksi dari pembelajaran

statistik seperti dalam ACT-R. Sebuah pendekatan baru yang menjanjikan

disebutkan bahwa penguatan kecerdasan mencoba untuk mencapai kecerdasan

buatan dalam proses pengembangan evolusioner sebagai efek samping dari

penguatan kecerdasan manusia melalui teknologi.

Gambar 2.1 Contoh A.I.

Page 16: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

6

2.1.1 Machine Learning

Pembelajaran mesin, cabang dari kecerdasan buatan, adalah disiplin

ilmu yang mencakup perancangan dan pengembangan algoritme yang

memungkinkan komputer untuk mengembangkan perilaku yang didasarkan

pada data empiris, seperti dari sensor data basis data. Sistem pembelajar dapat

memanfaatkan contoh (data) untuk menangkap ciri yang diperlukan dari

probabilitas yang mendasarinya (yang tidak diketahui). Data dapat dilihat

sebagai contoh yang menggambarkan hubungan antara variabel yang diamati.

Fokus besar penelitian pembelajaran mesin adalah bagaimana mengenali

secara otomatis pola kompleks dan membuat keputusan cerdas berdasarkan

data. Kesukarannya terjadi karena himpunan semua peri laku yang mungkin,

dari semua masukan yang dimungkinkan, terlalu besar untuk diliput oleh

himpunan contoh pengamatan (data pelatihan). Karena itu pembelajar harus

merampatkan (generalisasi) perilaku dari contoh yang ada untuk

menghasilkan keluaran yang berguna dalam kasus-kasus baru.

Mesin disini adalah mesin dalam pengertian lebih mendekati ‘sistem’

bukan mesin mekanik. Istilah pembelajaran pertama kali muncul dalam

disiplin ilmu kecerdasan buatan. Pembelajaran berarti menambah

pengetahuan, memahami dengan belajar, mengikuti perintah. Pembelajaran

mesin merupakan salah satu cabang dari kecerdasan buatan yang membahas

mengenai pembangunan sistem yang didapat berdasarkan pada pembelajaran

data, atau sebuah studi yang mempelajari cara untuk memprogram sebuah

komputer untuk belajar. Inti dari pembelajaran mesin adalah representasi dan

generalisasi. Pada tahun 1959, Arthur Samuel mendefinisikan bahwa

pembelajaran mesin adalah bidang studi yang memberikan kemampuan untuk

belajar tanpa diprogram secara eksplisit. Kemampuan belajar yang menjadi

dominan ditentukan oleh kemampuan perangkat lunak atau alogaritmanya.

Implementasi kemampuan belajar dapat dicapai dengan berbagai teknik, ada

yang menggunakan kaidah (rule), ada yang menggunakan statistika, ada yang

menggunakan pendekatan fisiologi yaitu sistem saraf manusia atau disebut

dengan ANN (Artificial Neural Network) atau jaringan saraf tiruan.

Page 17: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

7

Pembelajaran mesin dapat berfungsi untuk beradaptasi dengan suatu keadaan

yang baru, serta untuk mendeteksi dan memperkirakan suatu pola.

1. Supervised Learning

Supervised learning merupakan suatu pembelajaran yang terawasi

dimana jika output yang diharapkan telah diketahui sebelumnya. Biasanya

pembelajaran ini dilakukan dengan menggunakan data yang telah ada. Pada

metode ini, setiap pola yang diberikan kedalam jaringan saraf tiruan telah

diketahui outputnya. Satu pola input akan diberikan ke satu neuron pada

lapisan input. Pola ini akan dirambatkan di sepanjang jaringan syaraf hingga

sampai ke neuron pada lapisan output. Lapisan output ini akan

membangkitkan pola output yang nantinya akan dicocokkan dengan pola

output targetnya. Nah, apabila terjadi perbedaan antara pola output hasil

pembelajaran dengan pola output target, maka akan muncul error. Dan apabila

nilai error ini masih cukup besar, itu berarti masih perlu dilakukan

pembelajaran yang lebih lanjut. Contoh algoritma jaringan saraf tiruan yang

mernggunakan metode supervised learning adalah hebbian (hebb rule),

perceptron, adaline, boltzman, hapfield, dan backpropagation.

2. Unsupervised Learning

Unsupervised learning merupakan pembelajan yang tidak terawasi

dimana tidak memerlukan target output. Pada metode ini tidak dapat

ditentukan hasil seperti apa yang diharapkan selama proses pembelajaran, nilai

bobot yang disusun dalam proses range tertentu tergantung pada nilai output

yang diberikan. Tujuan metode uinsupervised learning ini agar kita dapat

mengelompokkan unit-unit yang hampir sama dalam satu area tertentu.

Pembelajaran ini biasanya sangat cocok untuk klasifikasi pola. Contoh

algoritma jaringan saraf tiruan yang menggunakan metode unsupervised ini

Page 18: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

8

adalah competitive, hebbian, kohonen, LVQ (Learning Vector Quantization),

neocognitron.

3. Reinforcement Learning

Reinforcement learning adalah sebuah model pembelajaran terhadap

apa yang dilakukan, dan sebagai umpan balik bagaimana memetakan

perubahan situasi lingkungan terhadap aksi yang dilakukan untuk

memaksimalkan keuntungan. Model proses pembelajar ini tidak harus

mendikte aksi yang mana yang harus dilakukan dulu seperti umumnya pada

model mesin learning. Tetapi sistem harus menjelajahi dulu seluruh aksi yang

mana yang menghasilkan reward terbesar dengan cara mencobanya dan

mengerjakannya, seperti yang dituliskan oleh Humphrys (1997).

Prinsip yang digunakan dalam metode ini didasarkan pada teori

reinforcement yang pada intinya adalah ‘konsekuensi mempengaruhi

tindakan’. Ada 3 prinsip dasar pada teori reinforcement yakni (Tadepalli et al,

1998;).

1. Konsekuensi yang berakibat baik mendorong terjadinya tindakan.

2. Konsekuensi yang berakibat buruk mendorong berkurangnya tindakan.

3. Konsekuensi yang tidak ada dampaknya tidak memperngaruhi tindakan.

Dengan kata lain, setiap tindakan mengarah pada konsekuensi baik,

buruk, atau tidak ada konsekuensi sama sekali. Dan konsekuensi tersebut akan

menjadi penyebab terjadi atau tidaknya sebuah tindakan atau kondisi.

Tindakan dan konsekuensi yang diterapkan berbeda-beda dan harus

disesuaikan dengan kasus yang bersangkutan agar dapat berfungsi secara

efektif.

Jadi, dapat disimpulkan perbedaan dari Supervised learning, Unsupervised

learning dan Reinforcement learning sebagai berikut:

Tabel 2.1 Perbedaan Jenis-Jenis Learning

Perbedaan Supervised

learning

Unsupervised

learning

Reinforcement

learning

Pembelajaran terawasi tidak terawasi penguatan

Page 19: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

9

Output telah diketahui

sebelumnya

tidak memerlukan

target

sebagai penguat

Metode setiap pola yang

diberikan

kedalam jaringan

saraf tiruan telah

diketahui

outputnya

mengelompokkan

unit-unit yang

hampir sama

dalam satu area

tertentu

sistem harus

menjelajahi dulu

seluruh aksi yang

mana yang

menghasilkan reward

terbesar dengan cara

mencobanya dan

mengerjakannya

2.1.2 Deep Learning

Deep Learning merupakan cabang ilmu dari Machine Learning berbasis

jaringan saraf tiruan yang mengajarkan komputer untuk melakukan suatu

tindakan yang dianggap alami oleh manusia, misalnya belajar dari contoh.

Dalam Deep Learning, sebuah komputer belajar mengklasifikasi secara

langsung dari gambar, teks atau suara.

Deep Learning adalah teknik dalam neural network yang menggunakan

teknik tertentu seperti Restricted Boltzmann Machine (RBM) untuk

mempercepat proses pembelajaran dalam Neural Network yang

menggunakan lapis yang banyak. Lapisan pada Deep Learning terdiri atas

tiga bagian yaitu input layer, hidden layer dan output layer. Input layer berisi

node-node yang masing-masing menyimpan sebuah nilai masukan yang tidak

berubah pada fase latih dan hanya bisa berubah jika diberikan nilai masukan

baru. Pada hidden layer dapat dibuat berlapis-lapis untuk menemukan

komposisi algoritma yang tepat agar meminimalisir error pada output.

Kemudian output layer berfungsi untuk menampilkan hasil perhitungan

sistem oleh fungsi aktivasi pada lapisan hidden layer berdasarkan input yang

diterima. Penambahan lebih banyak lapisan menjadikan model pembelajaran

yang bisa mewakili citra berlabel dengan lebih baik. Aplikasi konsep Jaringan

Saraf Tiruan yang lebih dalam atau yang memiliki banyak lapisan dapat

ditangguhkan pada algoritma Machine Learning yang sudah ada sehingga

komputer bisa belajar dengan skala yang besar, kecepatan, dan akurasi.

Page 20: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

10

Prinsip tersebut semakin berkembang hingga Deep Learning semakin sering

digunakan pada komunitas industri dan riset dalam menyelesaikan masalah

data besar seperti pada Computer Vision, Speech Recognition, dan Neural

Languange Processing.

Arsitektur di bawah ini biasa disebut sebagai Multi Layer Perceptron

(MLP). Arsitektur pertama mempunyai 3 buah neuron pada input layer dan 2

buah node output layer. Diantara input dan output, terdapat 1 hidden layer

dengan 4 buah neuron. Neuron-neuron tersebut akan terhubung langsung

dengan neuron lain pada layer selanjutnya.

Gambar 2.2 Layer-layer pada Deep Learning

Deep Learning memungkinkan model komputasi yang terdiri

dari beberapa processing layer untuk mempelajari representasi data dengan

berbagai tingkat abstraksi. Metode ini telah memperbaiki state-of-the-art

dalam pengenalan suara (speech recognition), pengenalan objek visual (visual

object recognition), deteksi objek (objek detection) dan banyak lainnya.

Beberapa algoritma yang menerapkan konsep Deep Learning anata lain

Convolutional Neural Networks (CNN) untuk klasifikasi gambar, Deep Belief

Network – Deep Neural Network (DBN-DNN) untuk pengenalan suara,

Recurrent Neural Network (RNN) untuk penerjemahan bahasa, Query-

Oriented Deep Extraction (QODE) yang berbasis Restricted Boltzmann

Machine (RBM) untuk mendeteksi Drug-Target Interaction (DTI), dan Deep

Belief Network (DBN) untuk prediksi data sesuai waktu.

2.1.3 Neural Network

Neural Network merupakan kategori ilmu Soft Computing. Neural

Network sebenarnya mengadopsi dari kemampuan otak manusia yang mampu

memberikan stimulasi/rangsangan, melakukan proses, dan memberikan

Page 21: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

11

output. Output diperoleh dari variasi stimulasi dan proses yang terjadi di dalam

otak manusia. Kemampuan manusia dalam memproses informasi merupakan

hasil kompleksitas proses di dalam otak. Misalnya, yang terjadi pada anak-

anak, mereka mampu belajar untuk melakukan pengenalan meskipun mereka

tidak mengetahui algoritma apa yang digunakan. Kekuatan komputasi yang

luar biasa dari otak manusia ini merupakan sebuah keunggulan di dalam kajian

ilmu pengetahuan.

Fungsi dari Neural Network diantaranya adalah :

1. Pengklasifikasian pola

2. Memetakan pola yang didapat dari input ke dalam pola baru pada output

3. Penyimpan pola yang akan dipanggil kembali

4. Memetakan pola-pola yang sejenis

5. Pengoptimasi permasalahan

6. Prediksi

Pada dasarnya untuk melakukan training pada neural network, kita

melakukan proses pada diagram dibawah ini secara terus menerus hingga loss

atau error yang didapatkan memiliki nilai yang relatif kecil.

Gambar 2.3 Neural Network Training

Page 22: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

12

Mengimplementasikan algoritma tersebut dan membuat sebuah neural

network dengan menggunakan semua bahasa pemrograman yang kita bisa.

Masalah yang akan kita selesaikan itu adalah permasalahan yang sangat

kompleks atau mungkin kita membutuhkan arsitektur yang unik dan kompleks

atau kita ingin menggunakan GPU untuk mempercepat training. Semua itu

dapat diatasi dengan menggunakan sebuah framework. Sama halnya seperti

semua framework, deep learning framework ada untuk memudahkan kita

untuk menyelesaikan masalah menggunakan deep learning.

Sebenarnya ada banyak sekali framework untuk deep learning. Bisa

dikatakan setiap tech company besar yang ada sekarang memiliki framework

masing-masing. Google mempunyai TensorFlow, Facebook dengan Caffe2,

Microsoft dengan CNTK dan masih banyak lagi framework lain seperti

Theano dan PyTorch. Kali ini yang akan kita pakai TensorFlow (TF). Ada lagi

satu package yang akan kita gunakan yaitu Keras. Sebenarnya TensorFlow

sudah cukup jelas cara penggunaannya, tapi kadang dalam riset kita sering

sekali untuk mencoba arsitektur lain, mencari optimizer yang paling cepat dan

bagus, tweaking hyperparameter, dll.

Dengan menggunakan Keras kita bisa melakukan semua itu dengan relatif

lebih cepat dari pada ‘pure’ TensorFlow. Karena jika dibandingkan dengan

Keras, TensorFlow serasa lebih “low level” meskipun sudah ada tf.layer yang

baru.

Gambar 2.4 Neural Network

Page 23: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

13

1. Perceptron

Pada ilmu pembelajaran mesin, perceptron merupakan algoritme pada

pembelajaran terarah untuk melakukan klasifikasi secara biner, membedakan suatu

titik atau data masukan ke dalam dua jenis kelas yang berbeda.

Perceptron termasuk salah satu bentuk jaringan yang cukup sederhana.

Algoritma ini sering digunakan untuk mengklasifikasikan input yang bersifat

linearly separable. Jaringan syaraf perceptron mempunyai satu layer dan

bobot¬bobot sinaptik dan threshold yang bisa diatur. Selama proses pembelajaran,

perceptron akan mengatur parameter secara continue selama iterasi, dan akan

menghasilkan garis pemisah (Decision Boundar y) yang berfungsi untuk

mengklasifikasikan himpunan stimulus yang diaplikasikan secara eksternal x 1, x

2, ... , x nke dalam salah satu dari dua kelas C1 dan C2. Kelas C1 adalah daerah

positif dimana nilai = threshold (Φ), sedangkan kelas C2 adalah daerah negatif

dimana nilai < threshold (Φ).

Secara teori, persamaan ini berfungsi untuk menciptakan decision boundar y

yang membedakan kedua kelas secara akurat. Pengaturan threshold dapat mengatur

pergeseran garis batasan keputusan.

Gambar 2.5 Klasifikasi Perceptron

Page 24: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

14

Gb. Perceptron dengan decision boundaries untuk mengklasifikasikan dua

kelas positif dan negatif.

Algoritma perceptron adalah proses pembelajaran yang melakukan perbaikan

bobot-bobotnya pada setiap epoch (proses perulangan 1 kali untuk setiap data set

input-output). Pada setiap epoch, jaringan akan mengkalkulasi error yang terjadi,

kemudian nilai errorakan dijadikan parameter untuk proses perbaikan bobot

sehingga tercipta nilai bobot yang baru. Proses ini akan berhenti jika errorsudah

mencapai nilai minimum atau perulangan sudah mencapaimaximum epoch yang

sudah ditentukan sebelumnya. Selain itu, proses pelatihan juga dipengaruhi oleh

nilai laju pembelajaran(learning rate).

2. Multi-Layer Perceptron

Multi-Layer Perceptron adalah jaringan syaraf tiruan feed-forward yang

terdiri dari sejumlah neuron yang dihubungkan oleh bobot-bobot penghubung.

Neuron-neuron tersebut disusun dalam lapisan-lapisan yang terdiri dari satu lapisan

input (input layer), satu atau lebih lapisan tersembunyi (hidden layer), dan satu

lapisan output (output layer). Lapisan input menerima sinyal dari luar, kemudian

melewatkannya ke lapisan tersembunyi pertama, yang akan diteruskan sehingga

akhirnya mencapai lapisan output.

Gambar 2.6 Multi-Layer Perceptron

Tidak ada batasan banyaknya hidden layer dan jumlah neuron pada setiap

layernya. Setiap neuron pada input layer terhubung dengan setiap neuron pada

hidden layer. Demikian juga, setiap neuron pada hidden layer terhubung ke setiap

Page 25: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

15

neuron pada output layer. Setiapneuron, kecuali pada layer input, memiliki input

tambahan yang disebut bias. Bilangan yang diperlihatkan pada gambar di atas

digunakan untuk mengidentifikasi setiap node pada masing-masing layer.

Kemudian, jaringan dilatih agar keluaran jaringan sesuai dengan pola

pasangan masukan-target yang telah ditentukan. Proses pelatihan adalah proses

iteratif untuk mementukan bobot-bobot koneksi antara neuron yang paling optimal.

Kata back propagation yang sering dikaitkan pada MLP merujuk pada cara

bagaimana gradien perubahan bobot dihitung. Jaringan MLP yang sudah dilatih

dengan baik akan memberikan keluaran yang masuk akal jika diberi masukan yang

serupa (tidak harus sama) dengan pola yang dipakai dalam pelatihan.

Berikut ini adalah tahap-tahapan dalam penyelesaian masalah menggunakan

metode Jaringan Syarat Tiruan menggunakan Multilayer Percepteron.

1. Identifikasi masalah

Tahap ini merupakan identifikasi masalah yang hendak diselesaikan dengan

jaringan syaraf tiruan, meliputi identifikasi jenis dan jumlah masukan serta

keluaran pada jaringan.

2. Menyiapkan training data set

Training data set merupakan kumpulan pasangan data masukan-keluaran

berdasarkan pengetahuan yang telah dikumpulkan sebelumnya. Banyaknya

data set harus mencukupi dan dapat mewakili setiap kondisi yang hendak

diselesaikan. Terbatasnya data set akan menyebabkan akurasi jaringan menjadi

rendah.

3. Inisialisasi dan pembentukan jaringan

Tahap inisialisasi meliputi penentuan topologi, pemilihan fungsi aktivasi, dan

pemilihan fungsi pelatihan jaringan. Penentuan topologi adalah penentuan

banyaknya hidden layer dan penentuan jumlah neuron pada input layer, hidden

layer dan output layer.

4. Simulasi jaringan

Simulasi jaringan dilakukan untuk melihat keluaran jaringan berdasarkan

masukan, bobot neuron dan fungsi aktivasinya.

5. Pelatihan / training jaringan

Sebelum melakukan pelatihan, dilakukan penentuan parameter training terlebih

dahulu, seperti penentuan jumlah iterasi, learning rate, error yang diijinkan.

Setelah itu dilakukan pelatihan yang merupakan proses iteratif untuk

menentukan bobot koneksi antar neuron.

Page 26: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

16

6. Menggunakan jaringan untuk pengenalan pola

Setelah pelatihan dilakukan, jaringan siap untuk digunakan untuk pengenalan

pola. Kemampuan jaringan dalam mengenal pola sangat bergantung dari

bagaimana jaringan tersebut dilatih.

Jaringan syaraf tiruan cocok digunakan untuk menyelesaikan masalah

yang tidak linier, yang tidak dapat dimodelkan secara matematis. Jaringan

cukup belajar dari pasangan data masukan dan target yang diinginkan, setelah

itu jaringan dapat mengenali pola yang mirip dengan masukan ketika

dilakukan pelatihan. Karena itu, kinerja jaringan pun ditentukan oleh

banyaknya pasangan data set selama training.

Bila data training cukup banyak dan konsisten, akurasi jaringan akan

tinggi, sebaliknya bila data training tidak memadai, akurasi jaringan rendah.

Selain data training, akurasi jaringan juga ditentukan oleh pemilihan topologi

yang tepat.

Proses pembentukan jaringan sangat melelahkan, dilakukan secara terus

menerus hingga diperoleh jaringan yang paling baik. Tetapi setelah jaringan

yang optimal ditemukan, proses pengenalan pola dapat dilakukan secara cepat,

lebih cepat bila dibandingkan metoda lainnya.

Seperti yang telah disampaikan sebelumnya, bahwa metode MLP

merupakan salah satu metode dari Jaringan Syaraf Tirual (JST) sangat cocok

untuk menyelesaikan masalah yang tidak linear dan non deterministik. Contoh

aplikasinya antara lain adalah:

1. Untuk speech recognition

2. Untuk image recognition

3. Untuk software mesin tranlasi

3. Convolutional Neural Network

Convolutional Neural Network (CNN) adalah salah satu jenis neural network

yang biasa digunakan pada data image. CNN bisa digunakan untuk mendeteksi dan

mengenali object pada sebuah image.

Secara garis besar CNN tidak jauh beda dengan neural network biasanya.

CNN terdiri dari neuron yang memiliki weight, bias dan activation function.

Page 27: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

17

Gambar 2.7 Convolutional Layer

4. Recurrent Neural Networks (RNNs)

Pada umumnya, manusia tidak membuat keputusan secara tunggal setiap

saat. Kita akan selalu memperhitungkan masa lalu dalam membuat sebuah

keputusan. Cara berpikir seperti ini adalah dasar dari pengembangan Recurrent

Neural

Network. Sama seperti analogi tersebut, RNN tidak membuang begitu saja

informasi dari masa lalu dalam proses pembelajarannya. Hal inilah yang

membedakan RNN dari Artificial Neural Networkbiasa.

Gambar 2.8 Recurrent Neural Network

Secara singkat, RNN adalah salah satu bagian dari keluarga Neural Network

untuk memproses data yang bersambung (sequential data). Cara yang dilakukan

RNN untuk dapat menyimpan informasi dari masa lalu adalah dengan melakukan

looping di dalam arsitekturnya, yang secara otomatis membuat informasi dari masa

lalu tetap tersimpan.

Page 28: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

18

2.2 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 bentuk bahasa tingkat tinggi ke tingkat rendah

datam bahasa pemrograman ada dua tipe, yakni interpreter dan compiler. (Utami,

2004)

2.3 TensorFlow

TensorFlow adalah perpustakaan perangkat lunak, yang dikembangkan oleh

Tim Google Brain dalam organisasi penelitian Mesin Cerdas Google, untuk tujuan

melakukan pembelajaran mesin dan penelitian jaringan syaraf dalam. TensorFlow

kemudian menggabungkan aljabar komputasi teknik pengoptimalan kompilasi,

mempermudah penghitungan banyak ekspresi matematis dimana masalahnya

adalah waktu yang dibutuhkan untuk melakukan perhitungan. Fitur utamanya

meliputi (TensorFlow):

1. Mendefinisikan, mengoptimalkan, dan menghitung secara efisien ekspresi

matematisyang melibatkan array multi dimensi (tensors).

Page 29: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

19

2. Pemrograman pendukung jaringan syaraf dalam dan teknik pembelajaran

mesin

3. Penggunaan GPU yang transparan, mengotomatisasi manajemen dan

optimalisasi memori yang sama dan data yang digunakan. Tensorflow bisa

menulis kode yang sama dan menjalankannya baik di CPU atau GPU. Lebih

khusus lagi, TensorFlow akan mengetahui bagian perhitungan mana yang

harus dipindahkan ke GPU.

4. Skalabilitas komputasi yang tinggi di seluruh mesin dan kumpulan data

yang besar

2.4 Prediksi

Prediksi adalah proses pengestimasian nilai prediksi berdasarkan pola-pola

di dalam sekumpulan data. Prediksi menggunakan beberapa variabel atatu field-

field basis data untuk memprediksi nilai-nilai variabel masa mendatang yang

diperlukan, yang belum diketahui saat ini.

2.5 Pneumonia

Radang paru-paru atau pneumonia adalah kondisi inflamasi pada paru-paru

utamanya memengaruhi kantung-kantung udara mikroskopik yang dikenal sebagai

alveolus. Kondisi ini biasanya disebabkan oleh infeksi virus atau bakteri dan lebih

jarang mikroorganisme lainnya, obat-obatan tertentu, dan kondisi lain seperti

penyakit autoimun.

Gejala khasnya meliputi batuk, nyeri dada, demam, dan kesulitan bernapas.

Alat diagnostik mencakup rontgen dan pengambilan kultur dari sputum. Vaksin

untuk mencegah jenis pneumonia tertentu kini sudah tersedia. Pengobatan yang

dilakukan bergantung pada penyebab dasarnya. Dugaan pneumonia bakterial

diobati dengan antibiotik. Jika pneumonianya parah, penderita biasanya dirujuk ke

rumah sakit.

Setiap tahunnya, pneumonia menjangkiti sekitar 450 juta orang, tujuh persen

dari total populasi dunia, dan menyebabkan sekitar 4 juta kematian. Walaupun

pneumonia dijuluki oleh William Osler pada abad ke-19 sebagai "the captain of the

Page 30: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

20

men of death" (pemimpin kematian), penemuan terapi antibiotik dan vaksin pada

abad ke-20 telah meningkatkan daya tahan hidup. Meskipun demikian, di negara

berkembang, dan di antara orang-orang berusia sangat lanjut, sangat muda, dan

penderita sakit kronis, pneumonia tetap menjadi penyebab kematian yang utama

(Wikipedia).

Gambar 2.9 Pneumonia

1. Tanda-Tanda Dan Gejala

Pasien pneumonia yang menular biasanya menderita batuk produktif, demam

yang disertai menggigil bergetar, sulit bernapas, nyeri dada yang tajam atau

menghunjam selama menarik napas dalam-dalam, dan peningkatan laju respirasi.

Pada manula, adanya kebingungan menjadi tanda yang paling utama. Tanda-tanda

dan gejala khusus pada anak-anak balita yaitu demam, batuk, dan napas yang cepat

atau sulit.

Tabel 2.2 Frekuensi Gejala

Frekuensi Gejala

Gejala Frekuensi

Batuk

79–91%

Kelelahan

90%

Demam

71–75%

Sulit

Bernapas

67–75%

Sputum 60-65%

Page 31: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

21

Nyeri

Dada

39-49%

Demam tidak sangat spesifik, karena ini gejala yang umum timbul pada

berbagai penyakit, dan mungkin tidak tampak pada penderita penyakit parah atau

malagizi. Selain itu, gejala batuk sering tidak muncul pada anak-anak berusia

kurang dari 2 bulan. Tanda-tanda dan gejala yang lebih parah meliputi: kulit biru,

rasa haus berkurang, konvulsi, muntah-muntah yang menetap, suhu ekstrem, atau

penurunan tingkat kesadaran.

Kasus pneumonia bakterial dan viral biasanya muncul dengan gejala yang

serupa. Beberapa penyebabnya dikaitkan dengan karakteristik klinis yang klasik

tetapi tidak spesifik. Pneumonia yang disebabkan oleh Legionella dapat muncul

disertai nyeri perut, diare, atau kebingungan, sedangkan pneumonia yang

disebabkan oleh Streptococcus pneumoniae dikaitkan dengan sputum berwarna

karat, dan pneumonia yang disebabkan oleh Klebsiella dapat disertai sputum

berdarah yang sering digambarkan sebagai "currant jelly" (lendir merah). Sputum

berdarah (dikenal sebagaihemoptisis) juga dapat muncul pada tuberkulosis,

pneumonia gram-negatif, dan abses paru serta umum dijumpai pada bronkitis akut.

Pneumonia mikoplasma dapat timbul bersama pembengkakan nodus limfa di leher,

nyeri sendi, atau infeksi telinga tengah. Pneumonia viral lebih umum muncul

disertai mengi dibandingkan dengan pneumonia bakterial.

Page 32: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

22

Gambar 2.10 Gejala utama pneumonia yang menular

2. Penyebab

Pneumonia terutama disebabkan oleh infeksi dari bakteri atau virus dan

jarang dijumpai disebabkan oleh fungi dan parasit. Walaupun terdapat lebih dari

100 galur agen infeksi yang telah diidentifikasi, namun hanya beberapa yang

bertanggungjawab atas mayoritas kasus yang ada. Infeksi bersama dengan virus

beserta bakteri dapat muncul hingga sebanyak 45% infeksi pada anak-anak dan

15% infeksi pada orang dewasa. Agen penyebabnya tidak dapat diisolasi pada

sekitar setengah kasus yang ada walaupun pengujian yang cermat telah dilakukan.

Istilah pneumonia terkadang digunakan secara lebih luas terhadap berbagai

kondisi yang menyebabkan inflamasi paru-paru (misalnya yang disebabkan oleh

penyakit autoimun, luka bakar kimia atau reaksi obat); namun demikian, inflamasi

ini lebih tepat disebut sebagai pneumonitis. Menurut sejarahnya agen penginfeksi

dibagi menjadi "khas" dan "tidak khas" didasarkan pada aspek yang diduga, tetapi

bukti-bukti yang ada tidak mendukung pembedaan ini, sehingga kini tidak lagi

ditekankan.

Page 33: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

23

Gambar 2.11 Bakteri Streptococcus Pneumonia

Faktor risiko dan kondisi yang memengaruhi pneumonia mencakup:

merokok, imunodefisiensi, alkoholisme, penyakit obstruktif paru kronis, penyakit

ginjal kronis, dan penyakit hati. Penggunaan obat-obatan yang bersifat menekan

asam seperti penghambat pompa proton atau antagonis H2 dikaitkan dengan

peningkatan risiko pneumonia . Usia lanjut juga berpengaruh pada pneumonia.

2.6 Informatika Kedokteran

Informatika kedokteran adalah disiplin yang berkaitan erat dengan

pemanfaatan komputer dan teknologi komunikasi di bidang kedokteran. Edward H.

Shortliffe mendefinisikan informatika kedokteran sebagai berikut: "Disiplin ilmu

yang berkembang dengan cepat yang berurusan dengan penyimpanan, penarikan

dan penggunaan data, informasi, serta pengetahuan biomedik secara optimal untuk

tujuan pemecahan masalah dan pengambilan keputusan”. Pakar informatika

kedokteran lainnya, Haux mengatakan dengan istilah "systematic processing of

information in medicine".

Informatika kedokteran berhubungan dengan semua ilmu dasar dan terapan

dalam kedokteran dan terkait sangat erat dengan teknologi informasi modern, yaitu

komputer dan komunikasi. Posisinya di kedokteran berada di persilangan antara

berbagai disiplin ilmu dasar dan terapan di kedokteran serta disiplin di luar

kedokteran, seperti ilmu informasi, komputer, statistika, dan psikologi. Secara

terapan, aplikasi informatika kedokteran meliputi rekam medis elektronik, sistem

pendukung keputusan medis, sistem penarikan informasi kedokteran, hingga

pemanfaatan internet dan intranet untuk sektor kesehatan, termasuk pengembangan

sistem informasi klinis. Informatika kedokteran sebagai disiplin baru berkembang

Page 34: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

24

terutama karena kesadaran bahwa pengetahuan kedokteran tidak akan mampu

terkelola (unmanageable) oleh metode berbasis kertas (paper-based methods).

Menurut Shortliffe, subdomain dalam informatika kedokteran (atau

kesehatan) adalah sebagai berikut:

Bioinformatika bekerja pada proses molekuler dan seluler. Riset dan aplikasi

bioinformatika memfasilitasi upaya-upaya rekayasa genetik, penemuan vaksin,

hingga ke riset besar tentang human genome project.

Medical imaging (informatika pencitraan) mengkaji aspek pengolahan data

dan informasi digital pada level jaringan dan organ. Kemajuan pada sistem

informasi radiologis, PACS (picture archiving communication systems), sistem

pendeteksi biosignal adalah beberapa contoh terapannya.

Informatika klinis, yang menerapkan pada level individu (pasien), mengkaji

mengenai berbagai inovasi teknologi informasi untuk mendukung pelayanan

pasien, komunikasi dokter pasien, serta mempermudah dokter dalam

mengumpulkan hingga mengolah data individu.

Informatika kesehatan masyarakat yang berfokus kepada populasi untuk

mendukung pelayanan, pendidikan dan pembelajaran kesehatan masyarakat.

Para ahli informatika kedokteran memiliki organisasi yang menghimpun

tokoh, peneliti, organisasi (baik akademik, pendidikan, penelitian maupun

pelayanan) serta industri yang memiliki aktivitas dalam informatika kedokteran

yaitu International Medical Informatics Association (IMIA). Organisasi ini

memiliki beberapa workgroup maupun special interest group yang masing-masing

memiliki bidang kajian informatika kedokteran yang berbeda-beda seperti aspek

pendidikan, standar, informatika kedokteran untuk negara berkembang dan lain

sebagainya. Organisasi ini juga memiliki organisasi berdasarkan region, misalnya

untuk Asia Pasifik terdapat Asia Pacific Medical Informatics Association

(APAMI). Setiap tiga tahun sekali, IMIA mengadakan pertemuan kongres yang

dikenal dengan tajuk MEDINFO. Pada tahun 2007 MEDINFO akan dilaksanakan

di Brisbane.

Page 35: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

25

Informatika Kesehatan merupakan ilmu yang mengkaji penggunaan

Teknologi Informatika dalam menyelesaikan masalah kesehatan. pendekatan

Kesehatan merupakan pendekatan yang sangat berbeda dengan kedokteran. Kita

kenal dalam kesehatan beberapa pendekatan, antara lain :

1. Promotif

2. Preventif,

3. Kuratif dan

4. Rehabilitatif.

Kesehatan merupakan pendekatan preventif dan promotif. Oleh karenanya

dalam kajian ilmu terjadi pemisahan dari kedokteran. Berkembang kemudian

Kesehatan masyarakat. Pada Informatika Kesehatan terdapat hal yang prinsip yang

sangat berbeda dengan Informatika Kedokteran. Pada Informatika Kesehatan

beberapa penelusuran masalah akan berawal dari eviden base. Karena itu cakupan

informatika kesehatan merupakan cakupan massal bukan individu.

Indikatorindikator kesehatan tidak terbentuk secara individu tetapi merupakan

komulatif dari massa/public. pada informatika kesehatan tidak dilakukan intervensi

secara personal tetapi secara public. Pada informatika Kesehatan tidak berbasis

kuratif dan rehabilitatif tetapi menekankan pendekatan promotif dan preventif.

Teknologi pada Informatika Kesehatan digunakan untuk melakukan intervensi

secara publik dengan cakupan yang luas. Tahun 1995 Fakultas Kesehatan

Masyarakat Universitas Indonesia melalui Departemen Biostatistik memulai

mengkaji Informatika Kesehatan dengan membuka peminatan Informatika

Kesehatan, hingga sekarang (2007) telah ada alumni yang berkiprah dalam berbagai

bidang.

2.7 Citra Digital

Citra (image) adalah kombinasi antara titik, garis, bidang dan warna untuk

menciptakan suatu imitasi dari suatu objek, biasanya objek fisik atau manusia. Citra

bisa berwujud gambar (picture) dua dimensi, seperti lukisan, foto dan berwujud tiga

dimensi, seperti patung. Citra terbagi 2 yaitu ada citra yang bersifat analog dan ada

citra yang bersifat digital. Citra analog tidak dapat direpresentasikan dalam

komputer, sehingga tidak bisa diproses oleh komputer secara langsung. Citra

Page 36: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

26

analog harus dikonversi menjadi citra digital terlebih dahulu agar dapat diproses

di komputer (Sutojo, 2017).

Sebuah citra dapat didefinisikan sebagai fungsi f (x, y) berukuran M baris dan

N kolom, dengan x dan y adalah koordinat spasial, dan amplitudo f di titik

koordinat (x, y) dinamakan intensitas atau tingkat keabuan dari citra pada titik

tersebut. Apabila nilai x, y dan nilai amplitudo f secara keseluruhan berhingga

(finite) dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut adalah citra

digital (Putra, 2010). Gambar di bawah ini menunjukan posisi koordinat citra

digital.

Gambar 2.12 Koordinat Citra Digital

Sebuah citra sama seperti sebuah grid dengan masing-masing kotak

persegi di dalam grid berisi satu warna atau piksel. Sebuah citra 8 dengan resolusi

1024 × 768 merupakan sebuah grid yang berisi 1024 kolom dan 768 baris, yang

mana berarti berisi 1024 × 768 = 786432 piksel.

Page 37: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

27

Gambar 2.13 Ilustrasi Digitalisasi Citra

2.7.1 Tipe Citra Digital

Dalam melakukan pengolahan citra terdapat empat tipe dasar citra digital

yang paling sering digunakan saat melakukan penelitian. Keempat citra tersebut

yaitu sebagai berikut:

1. Citra Biner

Pada citra digital dengan tipe biner, setiap piksel pada citra hanya memiliki

dua nilai saja yaitu 0 dan 1. Nilai 0 mewakili warna hitam dan nilai 1 mewakili

warna putih. Karena hanya memiliki 2 nilai yang mungkin untuk setiap piksel, maka

setiap piksel hanya memiliki ukuran 1 bit saja. Citra dengan tipe biner seperti ini

akan sangat efisien dalam proses penyimpanannya. Berikut adalah contoh tipe

citra biner, dimana warna putih mewakili piksel tepi dan warna hitam mewakili latar

belakang.

Gambar 2.14 Citra Biner

Page 38: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

28

2. Citra Grayscale

Pada citra dengan tipe grayscale, setiap piksel mewakili derajat keabuan

dengan nilai antara 0 (hitam) sampai 255 (putih). Pada jangkauan nilai 0 sampai

255, ini berarti bahwa setiap piksel memiliki ukuran 8 bit atau 1 byte. Berikut adalah

contoh citra bertipe grayscale.

Gambar 2.15 Citra Grayscale

3. Citra Warna RGB

Citra warna RGB biasanya juga disebut sebagai Citra True Color. Pada citra

dengan tipe RGB, setiap piksel memiliki 3 komponen warna, yaitu merah (R), hijau

(G) dan biru (B). Setiap komponen warna memiliki jangkauan nilai antara 0 sampai

255 (8 bit). Warna pada piksel ditentukan dari kombinasi merah, hijau dan biru.

Hal ini akan memberikan kemungkinan total warna sebanyak 2553 =

16.581.375. Jadi total ukuran bit untuk setiap piksel adalah 24 bit (8 bit R,

8 bit G dan 8 bit B). Citra seperti ini biasanya juga disebut dengan citra warna 24

bit.

Berikut adalah contoh dari citra RGB.

Page 39: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

29

Gambar 2.16 Citra Warna RGB

4. Citra Warna Berindeks

Kebanyakan citra warna hanya memiliki sebagian kecil dari 16 juta warna yang

mungkin. Untuk kenyamanan dalam menyimpan dan penanganan berkas file, citra

warna bertipe indeks mempunyai sebuah peta warna yang terkait indeks warna,

yang hanya menyimpan daftar semua warna yang digunakan pada citra tersebut.

Setiap piksel pada citra warna berindeks mempunyai nilai yang tidak mewakili

warna yang diberikan (seperti pada citra warna RGB), tetapi nilai tersebut

hanya mewakili sebuah indeks warna, yang mana representasi warna tersebut

tersimpan pada peta warna. Berikut contoh sebuah citra warna berindeks.

Gambar 2.17 Citra Warna Berindeks

Page 40: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

30

2.7.2 Teori Dasar Pengolahan Citra Digital

Citra digital dapat didefinisikan sebagai fungsi dua variabel, f(x,y), dimana

x dan y adalah koordinat spasial dan nilai f(x,y) adalah intensitas citra pada

koordinat tersebut, hal tersebut diilustrasikan pada gambar 2.2 Teknologi dasar

untuk menciptakan dan menampilkan warna pada citra digital berdasarkan pada

penelitian bahwa sebuah warna merupakan kombinasi dari tiga warna dasar, yaitu

merah, hijau, dan biru (Red, Green, Blue – RGB).

Gambar 2.18 Citra Digital

Sebuah citra diubah ke bentuk digital agar dapat disimpan dalam memori

komputer atau media lain. Proses mengubah citra ke bentuk digital bisa dilakukan

dengan beberapa perangkat, misalnya scanner, kamera digital, dan handycam.

Ketika sebuah citra sudah diubah ke dalam bentuk digital (selanjutnya disebut citra

digital), bermacam-macam proses pengolahan citra dapat diperlakukan terhadap

citra tersebut.

Pengolahan citra digital dapat dilakukan dengan cara-cara sebagai berikut:

1. Representasi dan permodelan citra

2. Peningkatan kualitas citra

3. Restorasi citra

4. Analisis citra

5. Rekonstruksi citra

6. Kompresi citra

Page 41: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

31

Dalam tugas akhir ini, pengolahan citra digital difokuskan pada teknik

kompresi citra.

1. Kompresi Citra

Kompresi citra bertujuan untuk meminimalkan jumlah bit yang diperlukan

untuk merepresentasikan citra. Apabila sebuah foto berwarna berukuran 3 inci x 4

inci diubah ke bentuk digital dengan tingkat resolusi sebesar 500 dot per inch (dpi),

maka diperlukan 3 x 4 x 500 x 500 = 3.000.000 dot ( piksel). Setiap piksel terdiri

dari 3 byte dimana masing-masing byte merepresentasikan warna merah, hijau, dan

biru. sehingga citra digital tersebut memerlukan volume penyimpanan sebesar

3.000.000 x 3 byte +1080 = 9.001.080 byte setelah ditambahkan jumlah byte yang

diperlukan untuk menyimpan format (header) citra. Citra tersebut tidak bisa

disimpan ke dalam disket yang berukuran 1.4 MB. Selain itu, pengiriman citra

berukuran 9 MB memerlukan waktu lebih lama. Untuk koneksi internet dial-up (56

kbps), pengiriman citra berukuran 9 MB memerlukan waktu 21 menit. Untuk itulah

diperlukan kompresi citra sehingga ukuran citra tersebut menjadi lebih kecil dan

waktu pengiriman citra menjadi lebih cepat. Citra yang belum dikompres disebut

citra mentah (raw image). Sementara citra hasil kompresi disebut citra

terkompresi(compressed image).

.

Page 42: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

32

BAB III

TUJUAN DAN MANFAAT PENELITIAN

3.1 Tujuan Penelitian

Tujuan dari penelitian ini adalah untuk mengaplikasikan rancangan prediksi

pneumonia dengan menggunakan algoritma convolutional neural networks . Sistem

ini pada akhirnya dapat membantu mempercepat diagnosis dan rujukan kondisi

yang dapat diobati ini, dengan demikian memfasilitasi pengobatan lebih dini,

menghasilkan hasil klinis yang lebih baik

3.2 Manfaat Penelitian

Adapun manfaat yang diperoleh dari penulisan ini, yaitu:

1. Menyediakan informasi yang cepat, tepat dan akurat sehingga dapat

dilakukan pertolongan bagi pengidap penyakit pneumonia.

2. Dapat memahami dan menganalisa faktor-faktor yang mempengaruhi

keberhasilan suatu sistem informasi

3. Dapat mengaplikasikan teori deep learning dan neural networks lebih

aplikatif

Page 43: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

33

BAB IV

METODE PENELITIAN

4.1 Analisa Kebutuhan

4.1.1 Perangkat

Perangkat sangat dibutuhkan sekali dalam proses program yang akan kita

buat. Oleh itu yang digunakan dalam penelitian ini adalah:

a. Perangkat Hardware

Tabel 4.1 Hardware

No Hardware

1. Processor : Intel Core i3 – 3217U (1.8GHz)

2. Memori : 2 Gb

3. Sistem Model : Aspire E1 - 470

b. Perangkat Software

Tabel 4.2 Software

No Software

1. Sistem Operasi : Microsoft Windows 8 Pro 64-bit

2. Bahasa Program : Python 3.6.5

- Tensor flow

- Open cv

- Numpy

- Matplotlab

- Pandas

- Keras

4.1.2 Kebutuhan Data

Data yang digunakan pada penelitian ini adalah data-data yang didapatkan

dari data training dan data test. Data training terdapat 5216 file gambar yang terdiri

dari 1341 file gambar untuk normal dan 3875 file gambar untuk pneumonia

sedangkan data test terdapat 624 file gambar yang terdiri dari 234 file gambar untuk

Page 44: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

34

normal dan 390 file gambar untuk pneumonia. Jadi total seluruh gambar untuk

training dan testing adalah 5840 file. Semua data tersebut dalam format jpg dan

jpeg data diambil dari penelitian Kermany, Daniel; Zhang, Kang; Goldbaum,

Michael (2018), “Labeled Optical Coherence Tomography (OCT) and

Chest X-Ray Images for Classification”, Mendeley Data, v2. Dibawah ini adalah

flowchart untuk preprocessing:

Gambar 4.1 Flowchart Preprocessing

Mulai Menentukan data path

Memberikan data awal

Mencari dan mendeteksi tiap folder

Membaca data gambar dan

mengubah ke biner

Mengubah tiap gambar menjadi

format warna grayscale

Resize ukuran gambar sesuai

baris dan kolom

Mengubah ukuran matriks menjadi satu

baris

Menambahkan baris ke dalam

data list

Mengubah img _ data _ list

yang berbentuk list menjadi array

Mengubah tiap elemen data

img _ data menjadi float 32

Img data dalam bentuk

dataframe

Menentukan label pada data sesuai dengan jumlah

data pada masing folder

Menambahkan label yang sudah dibuat ke dalam

data

Menampilkan dalam bentuk

dataframe data yang sudah diberi

label

Menambahkan header pada tiap -

tiap kolom Konvert ke dalam

format csv

Membuka file csv yang sudah

disimpan ke dalam dataframe

Selesai

Page 45: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

35

4.2 Langkah Penelitian

Langkah penelitian disusun sebagai sebuah acuan yang telah dirancang

sebelumnya. Apabila pelaksanaan penelitian menghadapi suatu kendala, maka

langkah penelitian perlu diperiksa untuk mengetahui proses mana kira-kira yang

bisa diperbaiki atau dikembangkan guna mendapatkan hasil penelitian yang

obyektif. Tahap pertama pada langkah penelitian adalah membuat 2 model

convolutional neural networks. Jadi pada setiap model ada layer-layer. Layer-layer

yang digunakan digambarkan dalam bentuk bagan dan rangkuman. Lalu tahap

kedua kita melakukan training dengan menggunakan data dan jumlah epochs yang

sama, untuk didapatkan bobot yang tepat. Kemudian pada tahap ketiga kita

melakukan testing dengan menggunakan data testing untuk dilihat akurasi dan loss

pada masing-masing model. Dan tahap terakhir kita bandingkan dengan akurasi dan

loss pada proses training.

4.2.1 Studi Literatur

Mempelajari retak jalan, pengolahan citra digital, pemrograman

menggunakan matlab. Referensi yang digunakan bersumber dari buku, paper,

jurnal dan penelitian-penelitian yang sesuai dengan topik bahasan. Setelah

mempelajari topik beberapa referensi didapatkan pengetahuan tentang penelitian

yang pernah dilakukan berupa analisis kelebihan dan kekurangan. Setelah

mendapatkan informasi tersebut, dilakukan analisis untuk mendapatkan solusi dari

permasalahan yang diangkat.

4.2.2 Model Convolutional Neural Networks

Berikut macam-macam model convolutional neural networks:

1. Convolutional Layer

Gambar dibawah ini adalah RGB (Red, Green, Blue) image berukuran 32 x

32 pixels yang sebenarnya adalah multidimensional array dengan ukuran 32 x 32 x

3 (3 adalah jumlah channel).

Page 46: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

36

Convolutional layer terdiri dari neuron yang tersusun sedemikian rupa

sehingga membentuk sebuah filter dengan panjang dan tinggi (pixels). Sebagai

contoh, layer pertama pada feature extraction layer biasanya adalah conv. Layer

dengan ukuran 5x5x3. Panjang 5 pixels, tinggi 5 pixels dan tebal/jumlah 3 buah

sesuai dengan channel dari image tersebut.

Ketiga filter ini akan digeser keseluruh bagian dari gambar. Setiap pergeseran

akan dilakukan operasi “dot” antara input dan nilai dari filter tersebut sehingga

menghasilkan sebuah output atau biasa disebut sebagai activation map atau feature

map.

Gambar 4.2 RGB

Convolution layer melakukan operasi konvolusi pada output dari lapisan

sebelumnya. Layer tersebut adalah proses utama yang mendasari sebuah CNN.

Convolution layer merupakan lapisan utama yang paling penting untuk

digunakan. Konvolusi merupakan suatu istilah matematis yang dalam pengolahan

citra berarti mengaplikasikan sebuah kernel (kotak kuning) pada citra disemua

offset yang memungkinkan seperti yang ditunjukan pada Gambar 3.14, sedangkan

Page 47: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

37

kotak berwarna hijau secara keseluruhan merupakan citra yang akan dikonvolusi

Kernel (kotak kuning) bergerak dari sudut kiri atas ke kanan bawah. Sehingga

hasil konvolusi dari citra tersebut dapat dilihat pada gambar disebelah kanannya

Gambar 4.3 Proses Convolution Layer

2. Pooling Layer

Pooling layer biasanya berada setelah conv. layer. Pada prinsipnya pooling

layer terdiri dari sebuah filter dengan ukuran dan stride tertentu yang akan bergeser

pada seluruh area feature map.

Pooling yang biasa digunakan adalah Max Pooling dan Average Pooling.

Sebagai contoh jika kita menggunakan Max Pooling 2x2 dengan stride 2, maka

pada setiap pergeseran filter, nilai maximum pada area 2x2 pixel tersebut yang akan

dipilih, sedangkan Average Pooling akan memilih nilai rata-ratanya.

Gambar 4.4 Pooling Layer

Dimensi output dari Pooling layer juga menggunakan rumus yang sama

seperti pada conv. Layer Tujuan dari penggunaan pooling layer adalah mengurangi

dimensi dari feature map (downsampling), sehingga mempercepat komputasi

karena parameter yang harus diupdate semakin sedikit dan mengatasi overfitting.

Berikut adalah pooling yang biasa digunakan, yaitu:

1. Max Pooling

Page 48: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

38

Konsep penting lainnya dari CNN adalah penggabungan max, yang

merupakan bentuk down-sampling non-linear. Max-pooling mempartisi gambar

input ke dalam satu set persegi panjang yang tidak tumpang tindih dan, untuk setiap

sub-wilayah tersebut, menghasilkan nilai maksimum.

Max-pooling berguna dalam penglihatan karena dua alasan:

1) Dengan menghilangkan nilai-nilai non-maksimal, itu mengurangi

perhitungan untuk lapisan atas.

2) Ini menyediakan bentuk invarians terjemahan. Bayangkan cascading

lapisan max-pooling dengan lapisan konvolusional. Ada 8 arah di mana

orang dapat menerjemahkan gambar input dengan satu piksel. Jika

penggabungan maksimum dilakukan di wilayah 2x2, 3 dari 8 konfigurasi

yang memungkinkan ini akan menghasilkan keluaran yang sama persis pada

lapisan konvolusional. Untuk penggabungan maksimal melalui jendela 3x3,

ini melompat ke 5/8.

Karena memberikan ketangguhan tambahan untuk posisi, penggabungan

maksimal adalah cara "pintar" untuk mengurangi dimensi representasi menengah.

Max-pooling dilakukan di Theano dengan cara

theano.tensor.signal.pool.pool_2d. Fungsi ini mengambil masukan sebuah tensor

dimensi N (di mana N> = 2) dan faktor downscaling dan melakukan pembungkusan

maksimum atas 2 trailing dimensi tensor.

2. Average Pooling

Average pooling kadang-kadang tidak dapat mengekstrak fitur yang baik

karena dibutuhkan semua untuk menghitung dan menghasilkan nilai rata-rata yang

mungkin atau tidak penting untuk deteksi objek. Average pooling membawa semua

ke dalam hitungan dan mengalirkannya ke lapisan berikutnya yang berarti semua

nilai benar-benar digunakan untuk pemetaan fitur dan pembuatan keluaran yang

merupakan perhitungan yang sangat umum. Jika tidak diperlukan semua masukan

dari lapisan konvolusi maka akan mendapatkan akurasi yang buruk untuk average

pooling. Pada klasifikasi objek pooling layer yang banyak digunakan adalah

Page 49: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

39

average pooling. Pemilihan pooling layer tergantung pada jenis dataset yang

digunakan. (Rahman, 2017)

3. Dropout Layer

Secara sederhana, dropout mengacu pada mengabaikan unit (yaitu neuron)

selama fase pelatihan set neuron tertentu yang dipilih secara acak. Dengan

"mengabaikan", maksud saya unit-unit ini tidak dipertimbangkan selama pass

depan atau mundur tertentu (Amar Budhiraja, 2016).

Lebih teknis, Pada setiap tahap pelatihan, node-node individu dikeluarkan

dari internet dengan probabilitas 1-p atau disimpan dengan probabilitas p , sehingga

jaringan yang berkurang dibiarkan; tepi masuk dan keluar ke node drop-out juga

dihapus.

Kita membutuhkan Dropout untuk mencegah over-fitting. Lapisan yang

terhubung sepenuhnya menempati sebagian besar parameter, dan karenanya,

neuron mengembangkan ko-dependensi di antara satu sama lain selama pelatihan

yang mengekang daya individu masing-masing neuron yang menyebabkan overpas

dari data pelatihan.

Dalam pembelajaran mesin, regularisasi adalah cara mencegah over-fitting.

Regularisasi mengurangi over-fitting dengan menambahkan penalti ke fungsi

kerugian. Dengan menambahkan penalti ini, model dilatih sedemikian rupa

sehingga tidak belajar serangkaian fitur bobot yang saling bergantung. Bagi Anda

yang tahu Logistic Regression mungkin akrab dengan hukuman L1 (Laplacian) dan

L2 (Gaussian).

Page 50: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

40

Gambar 4.5 Dropout / Without Dropout

4. Fully Connected Layer

Fully connected layer merupakan lapisan dimana semua neuron aktivasi dari

lapisan sebelumnya terhubung semua dengan neuron di lapisan selanjutnya. Fully

connected layer biasanya digunakan dalam penerapan Multi Layer Perceptron

(MLP) dan bertujuan untuk melakukan transformasi pada dimensi data agar dapat

diklasifikasikan secara linear.

Perbedaan antara fully connected layer dan convolution layer biasanya adalah

neuron di convolution layer terhubung hanya ke daerah tertentu pada input,

sedangkan fully connected layer mempunyai neuron yang secara keseluruhan

terhubung. Namun, kedua lapisan tersebut masih mengoprasikan produk dot,

sehingga fungsinya tidak begitu berbeda.

4.3 Model Yang Digunakan

Model yang digunakan dalam model CNN ada 2 macam, yaitu:

4.3.1 Model 1

Model 1 ini kita akan menguji memakai pooling menggunakan max pooling,

max pooling mempartisi gambar input ke dalam satu set persegi panjang yang tidak

Page 51: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

41

tumpang tindih dan, untuk setiap sub-wilayah tersebut, menghasilkan nilai

maksimum.

1. Summary

Pada summary di model 1 terdapat 8 tahap layer yaitu Conv2D-1

MaxPool1 Conv2D-2 MaxPool-2 Flatten Dense_1 Dense_2

Output . dari hasil summary ini kita akan mendapatkan total params, trainable

params dan non-trainable params, seperti gambar dibawah:

Gambar 4.6 Summary Model 1

2. Gambar Diagram

Dibawah ini adalah alur atau diagram bentuk model 1 dengan beberapa

tahap layer yaitu Conv2D-1 MaxPool-1 Conv2D-2 MaxPool-2 Flatten

Dense_1 Dense_2 Output .

Gambar 4.7 Skema Model 1

Page 52: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

42

4.3.2 Model 2

Model 2 ini kita akan menguji memakai pooling menggunakan average

pooling dimana average hanya akan memilih nilai rata-ratanya.

1. Summary

Pada summary di model 1 terdapat 8 tahap layer yaitu Conv2D-1

AvgPool-1 Conv2D-2 AvgPool-2 Flatten Dense_1 Dense_2

Output . dari hasil summary ini kita akan mendapatkan total params, trainable

params dan nontrainable params, seperti gambar dibawah:

Gambar 4.8 Summary Model 2

2. Gambar Diagram

Dibawah ini adalah alur atau diagram bentuk model 2 dengan beberapa

tahap layer yaitu Conv2D-1 AvgPool-1 Conv2D-2 AvgPool-2 Flatten

Dense_1

Dense_2 Output .

Gambar 4.9 Skema Model 2

Page 53: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

43

BAB V

HASIL YANG DICAPAI

5.1 Proses Pengolahan Citra

Proses pengolahan citra yang akan dibahas yaitu mulai dengan mengimport

os, numpy, matplotlib dan pandas. Kemudian kita mendefinisikan data path, lalu

kita berikan data awal agar kita bisa mencari dan mendeteksi tiap folder setelah itu

kita membaca data gambar dan mengubah ke biner. Kita juga mengubah tiap

gambar menjadi format warna grayscale dan mengubah ukuran gambar sesuai baris

dan kolom. Setelah itu kita ubah juga ukuran matriks menjadi satu baris dan

kemudian menambahkan baris ke dalam data list. Disini kita juga mengubah

img_data_list yang berbentuk list menjadi array lalu kitaubah juga tiap elemen data

img_data menjadi float32. Img data ini kita bentuk dalam dataframe. Setelah itu

semua, kita menentukan tabel pada data sesuai dengan jumlah data pada masing

folder. Kemudian kita menambahkan label yang sudah dibuat ke dalam data dan

menampilkan dalam bentuk dataframe data yang sudah diberi label, serta kita

menambahkan header pada tiap-tiap kolom, dan jangan lupa convert ke dalam

format csv. Akhirnya kita dapat membuka file csv yang sudah disimpan ke dalam

dataframe.

5.2 Hasil Penelitian

Hasil penelitian yang akan dibahas merupakan hasil dari dua perlakuan,

yang pertama adalah hasil dari image processing (preprocessing) dan yang kedua

adalah hasil dari training dan testing data menggunakan jaringan syaraf tiruan.

5.2.1 Hasil Image Processing (Preprocessing)

Hasil image processing ini kita dapatkan dari 2 tabel yaitu tabel test

dan tabel train. Tabel test berasal dari csv yang terdiri dari 625 baris dan 784

kolom. Sedangkan tabel train berasal dari csv juga yang terdiri dari 5218

baris dan 784 kolom.

Page 54: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

44

5.3 Pembahasan

5.3.1 Train / Test Split

Data yang di gunakan biasanya dibagi menjadi data pelatihan dan data

uji. Set pelatihan berisi output yang diketahui dan model belajar pada data

ini untuk digeneralisasikan ke data lain di kemudian hari. Kami memiliki

dataset uji (atau subset) untuk menguji prediksi model kami pada subset ini.

Gambar 5.1 Train / Test Split

5.3.2 Training Model

Training dilakukan menggunakan 2 model yang berbeda yaitu model 1 yang

dapat dilihat di gambar 3.6 dan model 2 yang dapat dilihat pada gambar 3.8, kedua

model tersebut memiliki jumlah layer dan filter yang sama namun perbedaan

mendasar adalah pada metode pooling yang digunakan masing masing model

tersebut. Pada model 1 menggunakan max-pooling dan pada model 2 menggunakan

average pooling, training dilakukan pada 5216 gambar dengan label pneumonia dan

normal. Dari proses training tersebut diharapkan dapat menghasilkan bobot yang

tepat untuk dapat memprediksi penyakit pneumonia.

Pada training model akan menghasilkan grafik validasi akurasi dan validasi

loss dengan cara epochs seperti gambar dibawah:

Page 55: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

45

Gambar 5.2 Training Model

5.3.3 Testing Model

Pada testing model kita mendapatkan test loss dan test akurasi, data yang

digunakan pada proses testing merupakan data yang berbeda dengan data yang

digunakan pada proses training proses testing tidak menggunakan data sebanyak

proses training, selain itu testing digunakan untuk mengevaluasi bobot yang

dihasilkan pada proses training sehingga proses testing tidak kan mengganti nilai

bobot seperti pada proses training. Hasil dari proses testing dapat dilihat pada

gambar 5.3.

Page 56: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

46

Gambar 5.3 Testing Model

Dari gambar 4.3 dapat dilihat hasil dari testing dengan menggunakan data

test, didapatkan nilai akurasi untuk model 1 sebesar 0.7756 atau 77.56% dan untuk

model 2 sebesar 0.7676 atau 76.76 % dari hasil tersebut dapat dilihat bahwa model

1 memiliki akurasi yang lebih baik ketimbang model 2 namun perbedaannya tidak

signifikan. Sedangkan untuk perbandingan nilai loss untuk kedua model tersebut

adalah 0.7369 atau 73.69 % untuk model 1 dan 0.7859 atau 78.59% untuk model 2,

lagi-lagi dapat dilihat perbandingan kedua model tersebut yaitu nilai loss dari model

2 lebih besar namun sama seperti akurasi perbedaannya tidak signifikan.

5.3.4 Random Simple Testing

Dibawah ini adalah data first images dari test-set. Dimana data ini belum

ada prediksi dan data ini terdiri dari 8 data pneumonia dan 8 data normal:

Page 57: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

47

Gambar 5.4 First Images

A. Model 1

Pada model 1 dilakukan random sample sebanyak 16 foto dari data test

dengan label masing-masing, yang menghasilkan 12 file foto dengan tepat dapat

diprediksi dengan benar sesuai dengan label datanya dan 4 diprediksi tidak tepat

atau salah, bisa dilihat di gambar bawah berikut ini:

Gambar 5.5 Model 1

Sehingga dapat diperoleh nilai akurasi dari eksperimen tersebut sebesar

75%.

Page 58: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

48

B. Model 2

Pada model 1 kita melakukan random sample yang menghasilkan 12 file

foto kesamaan pada true dan prediksi dan 4 yang tidak tepat antara true dan prediksi,

bisa dilihat di gambar bawah berikut ini:

Gambar 5.6 Model 2

5.3.5 Analisa Dan Kesimpulan

Dari semua rangkaian yang kita lakukan mulai dari training data yang akan

menghasilkan grafik validasi akurasi dan validasi loss dengan cara epochs lalu kita

melakukan testing data sehingga kita mendapatkan test loss dan test akurasi. Setelah

itu semua kita melakukan random simple testing dari data first images dari test-set.

Dimana data ini belum ada prediksi dan data ini terdiri dari 8 data pneumonia dan

8 data normal. Sehingga kita memperoleh data untuk model 1 yakni 12 file foto

kesamaan pada true dan prediksi dan 4 yang tidak tepat antara true dan prediksi

sedangkan untuk model 2 sama hasilnya dengan model 1 yakni 12 file foto

kesamaan pada true dan prediksi dan 4 yang tidak tepat antara true dan prediksi.

Jadi, dapat disimpulkan dari semua rangkaian itu kita dapat memperoleh

hasil prediksi yang benar sekitar 75% dari data yang sesuai dengan hasil prediksi

pada sampel acak

Page 59: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

49

BAB VI

RENCANA TAHAP BERIKUTNYA

Penelitian selanjutnya diharapkan menambahkan lebih banyak gambar yang

digunakan sebagai data train dan data test dengan metode optimasi yang lain.

Karena hal tersebut mungkin mampu menambah tingkat akurasi dalam

memprediksi gambar.

Untuk keperluan publikasi, maka hasil penelitian yang ada sejauh ini akan

dipublikasikan di Jurnal Ilmiah Nasional berISSN tidak terakreditasi dan seminar

nasional dalam temu ilmiah

Page 60: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

50

BAB VII

KESIMPULAN DAN SARAN

7.1 Kesimpulan

Berdasarkan penulisan dan penelitian yang telah penulis uraikan, mengenai

prediksi pneumonia dengan menggunakan algoritma convolutional neural

networks, maka didapat dibuat kesimpulan yaitu :

a. Metode CNN dapat melakukan proses prediksi gambar khususnya

klasifikasi dengan tinggat akurasi yang cukup tinggi.

b. Setelah dilakukan perbandingan dengan kedua model yang dirancang pada

bab sebelumnya didapatkan hasil diatas 75% baik dengan evaluasi

menggunakan data testing dan random sample, namun kendala yang

ditemukan karena nilai akurasi masih dibawah angka 85% sehingga masih

harus dilakukan penelitian kembali untuk meningkatkan nilai akurasi dari

model tersebut..

7.2 Saran

Berdasarkan kesimpulan yang telah dipaparkan sebelumnya, maka

disarankan untuk pengembangan selanjutnya yaitu :

a. Sistem ini memungkinkan untuk dikembangkan dengan menggunakan

software lain selain software Python. Karena masih banyak software lain

yang dapat digunakan untuk melakukan klasifikasi gambar.

b. Penelitian selanjutnya diharapkan menambahkan lebih banyak gambar yang

digunakan sebagai data train dan data test karena hal tersebut mungkin

mampu menambah tingkat akurasi dalam memprediksi gambar.

Page 61: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

51

DAFTAR PUSTAKA

Ahmad, A. (2017). Mengenal Artificial Intelligence, Machine Learning, Neural

Network, dan Deep Learning. Jurnal Teknologi Indonesia.

Alodokter. (2018, Juli 20). Retrieved from Alodokter.

Ashby, B., & Turkington, C. (2007). The encyclopedia of infectious diseases (edisi

ke-3rd). New York: Facts on File.

Danukusumo, K. P. (2017). Implementasi Deep Learning Menggunakan

Convolutional Neural Network Untuk Klasifikasi Citra Candi Berbasis

GPU. Yogyakarta : Universitas Atma Jaya.

E. P, I. W. (2016). Klasifikasi Citra Menggunakan Convolutional Neural Network

(CNN). Surabaya : Institut Teknologi Sepuluh Maret.

Indonesia, U. (2013). UNICEF/WHO: New plan to address pneumonia and

diarrhoea could save 2 million children a year.

J. Han, M. K. (2006). Data Mining: Concepts and Techniques. Morgan Kaufmann.

Kusumaningrum, T. F. (2018). IMPLEMENTASI CONVOLUTION NEURAL

NETWORK (CNN) UNTUK KLASIFIKASI JAMUR KONSUMSI DI

INDONESIA MENGGUNAKAN KERAS.

Kusumaningrum, T. F. (2018). IMPLEMENTASI CONVOLUTION NEURAL

NETWORK (CNN) UNTUK KLASIFIKASI JAMUR KONSUMSI DI

INDONESIA MENGGUNAKAN KERAS. YOGYAKARTA:

UNIVERSITAS ISLAM INDONESIA YOGYAKARTA.

Leach, R. E. (2009). Acute and Critical Care Medicine at a Glance.

WileyBlackwell.

Leach, R. E. (2009). Acute and Critical Care Medicine at a Glance. pp.

WileyBlackwell. ISBN 1-4051-6139-6.

M. J. Zaki, W. M. (2014). Data Mining and Analysis: Fundamental Concepts and

Algorithms. Cambridge: University Press.

McLuckie, A. (2009). Respiratory disease and its management. New Yor: Springer.

Nasichuddin, M. A. (2017). Implementasi CNN Untuk Klasifikasi Teks

Menggunakan Tensorflow.

Pommerville, J. C. (2010). Alcamo's Fundamentals of Microbiology. Sudbury MA:

Jones & Bartlett.

Page 62: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

52

Pommerville, J. C. (2010). Alcamo's Fundamentals of Microbiology. Sudbury MA:

Jones & Bartlett.

Putra, D. (2010). Pengolahan Citra Digital. Yogyakarta: Andi.

Rismiyati. (2016). Implementasi Convolutional Neural Network untuk Sortasi

Salak Ekspor Berbasis Citra Digital. Yogyakarta: Universitas Gadjah

Mada.

Sena, S. (2017). Pengenalan Deep Learning.

Suhartono, D. (2012). Dasar Pemahaman Neural Network.

Sutojo, T. E. (2017). Teori Pengolahan Citra Digital. Semarang : Universitas Dian

Nuswantoro.

Tintinalli, J. E. (2010). Emergency Medicine: A Comprehensive Study Guide

(Emergency Medicine (Tintinalli)). New York: McGraw-Hill Companies.

Utami, E. d. (2004). Logika, Algoritma dan Impelementasinya dalam Bahasa

Python di GNU/Linux. Yogyakarta : Andi Offset.

Z, H. (2006). "Pneumonia: update on diagnosis and management"

Page 63: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

53

LAMPIRAN

Page 64: Kode/Nama Rumpun Ilmu : 458/Teknik LAPORAN AKHIR

54