KLASIFIKASI CITRA PARU MENGGUNAKAN MODEL SELF-ORGANIZING MAPS RADIAL BASIS FUNCTION NEURAL NETWORKS (SOM-RBFNN) SKRIPSI Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta untuk Memenuhi sebagian Persyaratan Guna Memperoleh Gelar Sarjana Sains Oleh Alvin Farhan NIM 13305141001 PROGRAM STUDI MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA 2017 i
ii
iii
iv
MOTTO Allah tidak membebani seseorang melainkan sesuai kesanggupannya. Dia mendapat (pahala) dari (kebajikan) yang dikerjakannya dan dia mendapat (siksa) dari (kejahatan) yang diperbuatnya. (Mereka berdoa), Ya Tuhan kami, janganlah Engkau hukum kami jika kami lupa atau kami melakukan kesalahan. Ya Tuhan kami, janganlah Engkau bebani kami dengan beban yang berat sebagaimana Engkau bebankan kepada orang-orang sebelum kami. Ya Tuhan kami, janganlah Engkau pikulkan kepada kami apa yang tidak sanggup kami memikulnya. Maafkanlah kami, ampunilah kami dan rahmatilah kami. Engkaulah pelindung kami, maka tolonglah kami menghadapi orang-orang kafir. (terjemahan Q.S. Al-Baqarah 2: 286) v
HALAMAN PERSEMBAHAN Karya sederhana ini saya persembahkan untuk: Mamah Rina Hidayati dan Bapak Ali Ahmadi serta Ibu Siti Mahmudah. Kakak Tercinta Dian Rahmania. Teman-teman Usaha, Organisasi, KKN dan Matematika B 2013. Calon Istri dari Anak-anakku Nanti. vi
KLASIFIKASI CITRA PARU MENGGUNAKAN MODEL SELF-ORGANIZING MAPS RADIAL BASIS FUNCTION NEURAL NETWORKS (SOM-RBFNN) Oleh: Alvin Farhan 13305141001 ABSTRAK Kanker paru merupakan salah satu jenis kanker yang dalam beberapa dekade ini menjadi salah satu penyebab utama kematian pada semua kasus kanker di seluruh dunia. Oleh karena itu, deteksi kanker paru sejak dini perlu dilakukan untuk menekan kasus kematian pada kanker paru. Self-Organizing Maps Radial Basis Function Neural Networks (SOM-RBFNN) merupakan gabungan model jaringan saraf tiruan dan Self-Organizing Maps clustering yang dapat digunakan untuk mengklasifikasi citra paru. Penelitian ini bertujuan untuk menjelaskan langkahlangkah pembentukan model RBFNN dan ketepatan hasil klasifikasi citra paru menggunakan model RBFNN. Prosedur awal pembentukan model RBFNN untuk mengklasifikasi citra paru adalah preprocessing citra dengan perubahan format citra, penghilangan background citra, perubahan citra ke dalam bentuk grayscale dan perubahan ukuran pixel. Setelah itu dilakukan ekstraksi citra menggunakan metode Gray Level Cooccurrence Matrix (GLCM) untuk mendapatkan parameter statistik, yaitu contrast, correlation, energy, homogeneity, sum entropy, sum of square variance, invers difference moment, sum average, sum variance, entropy, difference entropy, maximum probability, dan dissimiliraity entropy. Selanjutnya, membagi 125 data menjadi 2 bagian yaitu 80% data training sebanyak 100 data dan 20% data testing sebanyak 25 data. Variabel input yang digunakan adalah 13 fitur hasil ekstraksi metode GLCM dan variabel output adalah klasifikasi dari citra paru. Pada pembelajaran RBFNN terbagi menjadi 3 tahap, yaitu melakukan normalisasi data input dari 13 fitur, menentukan nilai pusat dan jarak dari fungsi aktivasi gaussian dengan menggunakan SOM Kohonen clustering, menentukan jumlah neuron pada lapisan tersembunyi, dan menentukan bobot-bobot jaringan dengan menggunakan pendekatan yaitu metode Global Ridge Regression. Berdasarkan langkah-langkah pembentukan model RBFNN untuk mengklasifikasi citra paru, diperoleh hasil model RBFNN terbaik dengan 13 neuron pada lapisan input fitur, 5 neuron serta 1 neuron bias pada lapisan tersembunyi, dan 1 neuron pada lapisan output. Tingkat persentase sensitivitas, spesifisitas, dan akurasi model RBFNN secara berurutan adalah 95%, 91%, 93% untuk data training dan 85%, 92%, 88% untuk data testing. Kata Kunci : Kanker Paru, Klasifikasi, Radial Basis Function Neural Network (RBFNN), Self-Organizing Maps clustering, Global Ridge Regression. vii
KATA PENGANTAR Puji syukur dan terima kasih ke hadirat Tuhan Yang Maha Esa, yang telah melimpahkan rahmat dan karunia kepada penulis sehingga dapat menyelesaikan skripsi ini. Penulisan skripsi ini bertujuan memenuhi salah satu syarat untuk memperoleh gelar Sarjana Sains Program Studi Matematika di Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Negeri Yogyakarta. Penyusunan skripsi ini tidak lepas dari dukungan, motivasi, kerjasama maupun bimbingan dari berbagai pihak secara langsung maupun tidak langsung. Oleh karena itu, penulis menyampaikan terima kasih kepada: 1. Bapak Dr. Hartono, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam yang telah memberikan kesempatan penulis untuk menyelesaikan studi dan memberikan kelancaran dalam pelayanan akademik serta fasilitas studi di tingkat fakultas. 2. Bapak Dr. Ali Mahmudi, selaku Ketua Jurusan Pendidikan Matematika yang telah memberikan kelancaran dalam pelayanan akademik serta fasilitas studi di tingkat jurusan. 3. Bapak Dr. Agus Maman Abadi, selaku Ketua Program Studi Matematika atas bimbingan, pengarahan, dan semangat dalam penyusunan skripsi ini serta dukungan akademik kepada penulis. 4. Ibu Dr. Dhoriva U.W., selaku Dosen Pembimbing yang telah sangat sabar memberikan bimbingan, pengarahan, dan semangat dalam penyusunan skripsi ini. viii
ix
DAFTAR ISI HALAMAN JUDUL... i HALAMAN PERSETUJUAN... ii HALAMAN PENGESAHAN... iii HALAMAN PERNYATAAN... iv MOTTO... v HALAMAN PERSEMBAHAN... vi ABSTRAK... vii KATA PENGANTAR... viii DAFTAR ISI... x DAFTAR TABEL... xiii DAFTAR GAMBAR... xiv DAFTAR LAMPIRAN... xv DAFTAR SIMBOL... xvi BAB I PENDAHULUAN... 1 A. Latar Belakang... 1 B. Rumusan Masalah... 6 C. Tujuan Tugas Akhir... 6 D. Manfaat Tugas Akhir... 7 BAB II KAJIAN TEORI... 8 A. Kanker Paru... 8 1. Pengertian Kanker Paru... 8 2. Jenis Kanker Paru... 9 3. Faktor Risiko Kanker Paru... 10 4. Gejala Kanker Paru... 11 5. Deteksi Dini Kanker Paru... 11 B. Pengolahan Citra Digital... 13 1. Citra biner... 14 2. Citra grayscale... 14 x
3. Citra warna... 15 C. Ekstraksi Fitur Citra... 15 D. Artificial Neural Network (ANN)... 20 1. Arsitektur Jaringan... 24 2. Prosedur Pemodelan ANN... 26 3. Fungsi Aktivasi... 26 4. Algoritma Pembelajaran (Learning Algorithm)... 29 E. SOM Kohonen Clustering... 30 1. Arsitektur Jaringan Kohonen... 31 2. Algoritma Jaringan SOM Kohonen... 31 3. Contoh Kasus Cluster Menggunakan Metode SOM Kohonen... 34 F. Ketepatan Hasil Klasifikasi... 37 BAB III PEMBAHASAN... 39 A. Arsitektur dan Model SOM-RBFNN untuk Klasifikasi Citra Paru... 39 1. Arsitektur SOM-RBFNN... 39 2. Model SOM-RBFNN... 41 B. Prosedur Pemodelan RBFNN untuk Klasifikasi Citra Paru... 43 1. Preprocessing Citra... 43 2. Ekstraksi Fitur Citra... 44 3. Normalisasi Input Fitur Citra... 45 4. Pembagian Input Fitur Citra... 46 5. Menentukan Variabel Input dan Variabel Output... 46 6. Pembelajaran SOM-RBFNN... 47 7. Menentukan Jaringan Optimum... 57 C. Hasil Model SOM-RBFNN untuk Klasifikasi Citra Paru... 60 1. Preprocessing Citra... 60 2. Ekstraksi Fitur Citra... 60 3. Normalisasi Input Fitur Citra... 61 4. Pembagian Input Fitur Citra... 62 xi
5. Menentukan Variabel Input dan Variabel Output... 62 6. Pembelajaran SOM-RBFNN... 63 7. Menentukan Jaringan Optimum... 65 D. Ketepatan Hasil Klasifikasi... 72 BAB IV PENUTUP... 75 DAFTAR PUSTAKA... 78 LAMPIRAN... 82 xii
DAFTAR TABEL Tabel 2.1 Hasil Uji Klasifikasi... 37 Tabel 3.1 Hasil Ekstraksi Citra JPCLN001.jpg... 61 Tabel 3.2 Hasil Normalisasi Citra JPCLN001.jpg... 62 Tabel 3.3 Nilai Pusat Dan Jarak Maksimum SOM Kohonen 5 cluster... 64 Tabel 3.4 Persentase Akurasi Data Training dan Data Testing... 66 Tabel 3.5 Hasil Bobot Jaringan Model SOM-RBFNN... 69 Tabel 3.6 Hasil Bobot Bias Model SOM-RBFNN... 69 Tabel 3.7 Performance Measure Model SOM-RBFNN... 73 xiii
DAFTAR GAMBAR Gambar 2.1 Citra Biner... 14 Gambar 2.2 Citra Grayscale... 14 Gambar 2.3 Citra Warna... 15 Gambar 2.4 Jaringan Saraf Biologi... 21 Gambar 2.5 Artificial Neural Network Sederhana... 22 Gambar 2.6 Jaringan Lapisan Tunggal... 24 Gambar 2.7 Jaringan Lapisan Jamak... 25 Gambar 2.8 Fungsi Aktivasi Identitas... 27 Gambar 2.9 Fungsi Aktivasi Undak Biner (Hard Limit)... 27 Gambar 2.10 Fungsi Aktivasi Bipolar (Symetric Hard Limit)... 28 Gambar 2.11 Arsitektur Jaringan SOM Kohonen... 31 Gambar 3.1 Arsitektur model SOM-RBFNN... 40 Gambar 3.2 Diagram Alir Pemodelan RBFNN... 59 Gambar 3.3 Pemotongan citra foto paru JPCLN001.jpg; (a) JPCLN001.jpg sebelum dipotong, (b) JPCLN001.jpg setelah dipotong... 60 Gambar 3.4 Arsitektur RBFNN untuk Klasifikasi Citra Paru dengan 5 Cluster... 67 xiv
DAFTAR LAMPIRAN Lampiran 1. Citra Paru pada Data Training... 72 Lampiran 2. Citra Paru pada Data Testing... 83 Lampiran 3. Script m-file Ekstraksi Fitur Citra dengan Preprocessing... 102 Lampiran 4. Hasil Ekstraksi Data Training Citra Paru... 103 Lampiran 5. Hasil Ekstraksi Data Testing Citra Paru... 109 Lampiran 6. Hasil Normalisasi Data Training... 111 Lampiran 7. Hasil Normalisasi Data Testing... 117 Lampiran 8. Hasil SOM Kohonen clustering... 119 Lampiran 9. Script m-file Model SOM-RBFNN... 122 Lampiran 10. Hasil Fungsi Aktivasi Gaussian untuk Data Training... 125 Lampiran 11. Hasil Fungsi Aktivasi Gaussian untuk Data Testing... 128 Lampiran 12. Hasil Output Model SOM-RBFNN... 129 Lampiran 13. Script m-file rbfdesign... 133 Lampiran 14. Script m-file globalridge... 136 Lampiran 15. Script m-file GLCM_Features4 untuk Ekstraksi Fitur Pada Citra 142 xv
DAFTAR SIMBOL f(a, b) : Fungsi diskrit citra digital. a : baris pixel citra. b : kolom pixel citra. h(e, g): menunjukkan pixel pada baris ke-e dan kolom ke-g. e : 1,2,3,, Ng. g : 1,2,3,, Ng. N g : banyak derajat keabuan (grayscale) yang diperoleh dari citra. Ng Ng e=1 g=1. μ a : Rata-rata dari {(g)h(e, g)} Ng Ng e=1 g=1. μ b : Rata-rata dari {(e)h(e, g)} Ng Ng e=1 g=1. σ a : Simpangan baku dari {(g μ a ) 2 h(e, g)} Ng Ng e=1 g=1. σ b : Simpangan baku dari {(e μ b ) 2 h(e, g)} h a+b (s) N g N g e=1 g=1. : Hasil dari h(e, g); e + g = s s : 2,3,, 2N g. Ng Ng e=1 g=1. μ : Rata-rata h(e, g) h a b (q) N g N g e=1 g=1. : Hasil dari h(e, g); e g = q q : 0,1,, (N g 1). x i i n y j j m φ k w k k : Variabel input fitur ke-i. : 1, 2, 3,..., n. : Jumlah neuron pada lapisan input fitur. : Neuron output kej. : 1,2,3,, m. : Jumlah neuron pada lapisan output fitur. : Fungsi aktivasi ke-k. : Bobot dari neuron ke-k pada lapisan tersembunyi menuju neuron pada lapisan output. : 1, 2, 3,..., p. p : Jumlah neuron pada lapisan tersembunyi. xvi
w 0 P α R Con ρ D k z z u : Bobot bias pada neuron lapisan tersembunyi menuju neuron pada lapisan output. : Matriks proyeksi. : Laju pemahaman (learning rate). : Parameter tetangga (radius neighbourhood). : Konstanta. : Bobot pada neuron lapisan input menuju neuron lapisan tersembunyi. : Jarak input fitur citra ke-k. : Nilai input fitur citra. : Data ke-u; u = 1, 2,, l. z : Rata-rata data; z = 1 l z l u=1 u. σ : Standar deviasi data; σ = 1 l 1 (z u z ) 2 l u=1. x C k c t r k y u y u λ k u l f(x) y_in : vektor nilai input fitur : vektor nilai pusat cluster ke-k. : nilai pusat. : banyak input fitur citra pada setiap cluster. : Jarak maksimum pada cluster ke-k. : Hasil variabel output dari data ke-u. : Target variabel output dari data ke-u. : Parameter regulasi. : 1, 2, 3,..., l. : banyaknya input fitur citra. : Fungsi output jaringan. : Output jaringan 1 neuron. y_in j : Output jaringan sebanyak j neuron. xvii