Analisis metode jaringan syaraf tiruan backpropgation untuk pengenalan sel kanker otak
BIODATA
Data Pribadi
Nama
: Novita Handayani
Tempat/Tanggal Lahir
: Karawang,06 November 1991
Jenis Kelamin
: Perempuan
Alamat
: KP Krajan Desa Pangulah Selatan RT 02/02
KotaBaru, Karawang
No. Telp
: 085717649930
Email
: [email protected]
Riwayat Pendidikan
1997 – 2003 Lulus SDN 2 Pangulah Selatan
2003 – 2006 Lulus SMPN 1 Jatisari-Karawang
2006 – 2009 Lulus SMAN 1 Cikampek-Karawang
2009 – 2013 UNIKOM
Demikian riwayat hidup ini saya buat dengan sebenar-benarnya.
ANALISIS METODE JARINGAN SYARAF TIRUAN
BACKPROPAGATION UNTUK PENGENALAN
SEL KANKER OTAK
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
Program Studi Teknik Informatika
Fakultas Teknik dan Ilmu Komputer
NOVITA HANDAYANI
10109092
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2013
KATA PENGANTAR
Puji dan syukur kehadirat Allah SWT, atas berkat rahmat dan hidayah-Nya
sehingga penulis dapat menuangkan ide dan gagasan dalam karya ilmiah Tugas
Akhir ini. Penulis mengangkat judul : “ANALISIS METODE JARINGAN
SYARAF TIRUAN BACKPROPAGATION UNTUK PENGENALAN SEL
KANKER OTAK ”.
Tugas Akhir ini diajukan untuk memenuhi syarat mata kuliah Tugas Akhir
program STRATA I Program Studi Teknik Informatika, Fakultas Teknik dan Ilmu
Komputer, Universitas Komputer Indonesia (UNIKOM), Bandung. Dengan
terselesaikannya Tugas Akhir ini,Penulis ungkapkan rasa syukur yang tiada
terhingga kepada Allah SWT. dan Penulis mengucapkan terimakasih kepada :
1. Kedua Orang Tua yang saya hormati dan saya cintai yang telah
memberikan kepada Penulis dukungan dan motivasi untuk menyelesaikan
laporan Tugas Akhir ini.
2. Ibu Nelly Indriani Widiastuti,S.Si.,M.T. selaku dosen pembimbing dan
Penguji 2 yang telah menyediakan waktunya dan memberikan banyak
masukan kepada penulis.
3. Ibu Tati Harihayati Mardzuki, S.T.,M.T. selaku dosen wali IF-3, reviewer,
dan penguji 1 yang telah memberikan banyak masukan kepada penulis.
4. Bapak Hendri Karisma, S.Kom. selaku penguji 3 yang telah memberikan
banyak masukan kepada penulis.
5. Bapak Irawan Afrianto,S.T.,M.T. selaku Ketua Program Studi Teknik
Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer
Indonesia.
6. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc. selaku Dekan Fakultas
Teknik dan Ilmu Komputer Universitas Komputer Indonesia.
7. Kakak saya, Hernita Susanti dan Yanti Kusmayanti. Adik saya Yogi
Guntara yang saya sayangi yang telah memberikan saya motivasi untuk
menyelesaikan tugas akhir ini.
iii
8. Rekan-rekan seperjuangan IF-3 angkatan 2009 yang selalu memberikan
semangat dan motivasi kepada penulis.
9. Rekan-rekan satu bimbingan ibu nelly, rekan-rekan reviewer ibu tati.
10. Sahabat – sahabatku Desi Trisna, Ratih Paramila, Lina Nuraeni dan Nina
yang selalu memberikan semangat saat penulis butuh motivasi.
11. Pihak-pihak yang telah membantu yang tidak dapat disebutkan satu
persatu.
Akhir kata, Penulis berharap semoga laporan ini dapat bermanfaat bagi para
pembaca.
Bandung 2013
Penulis
iv
DAFTAR ISI
ABSTRAK ................................................................................................... i
ABSTRACT ................................................................................................. ii
KATA PENGANTAR .................................................................................. iii
DAFTAR ISI ................................................................................................ v
DAFTAR GAMBAR .................................................................................... viii
DAFTAR TABEL ........................................................................................ ix
DAFTAR SIMBOL ...................................................................................... xi
DAFTAR LAMPIRAN ................................................................................. xii
BAB 1 PENDAHULUAN ............................................................................ 1
1.1. Latar Belakang ....................................................................................... 1
1.2. Rumusan Masalah .................................................................................. 2
1.3. Maksud dan Tujuan................................................................................ 2
1.4. Batasan Masalah .................................................................................... 3
1.5. Metodologi Penelitian ............................................................................ 3
1.5.1. Metode pengumpulan data .................................................................. 4
1.5.2. Pengembangan Perangkat Lunak ........................................................ 4
1.6. Sistematika Penulisan ............................................................................ 6
BAB 2 LANDASAN TEORI ........................................................................ 5
2.1.Citra Digital ............................................................................................ 7
2.1.1 Penerapan Citra Digital Bidang Biomedis ............................................ 8
2.1.2 Citra MRI ............................................................................................ 8
2.1.3 Pengolahan Citra Digital ..................................................................... 10
2.1.3.1 Scalling ............................................................................................. 10
2.1.3.2 Grayscale ......................................................................................... 10
2.1.3.3 Tresholding ...................................................................................... 11
2.2.Kecerdasan Buatan.................................................................................. 11
2.2.1 Jaringan Syaraf Tiruan ......................................................................... 12
2.2.2 Backpropagation ................................................................................. 14
2.3 Algoritma .............................................................................................. 17
v
2.3.1 Kompleksitas Algoritma....................................................................... 18
BAB 3 ANALISIS ALGORITMA ................................................................ 23
3.1. Analisis Domain Masalah ...................................................................... 23
3.2. Analisis Metode ..................................................................................... 23
3.2.1 Citra Input............................................................................................ 24
3.2.2 Preprocessing ...................................................................................... 24
3.2.2.1 Scaling ............................................................................................. 24
3.2.2.2 Grayscale.......................................................................................... 24
3.2.2.3 Threshold .......................................................................................... 26
3.2.3
Pembelajaran..................................................................................... 27
3.2.4
Pengenalan ........................................................................................ 41
3.3. Analisis Kompleksitas Waktu Asimptotik Metode Backpropagation ...... 46
3.4. Analisis Spesifikasi Kebutuhan Perangkat Lunak ................................... 52
3.4.1 Analisis Kebutuhan Non-Fungsional .................................................... 54
3.4.1.1 Analisis Kebutuhan Perangkat Keras ................................................. 54
3.4.1.2 Analisis Kebutuhan Perangkat Lunak ................................................ 54
3.4.1.3 Analisis Kebutuhan Pengguna ........................................................... 55
3.4.2. Analisis Kebutuhan Fungsional ........................................................... 55
3.4.2.1.Diagam Konteks................................................................................ 55
3.4.2.2. Data Flow Diagram (DFD) ............................................................... 56
3.4.2.3. Spesifikasi Proses ............................................................................. 56
3.4.2.4. Kamus Data ..................................................................................... 56
3.4.2.5. Perancangan Struktur Menu ............................................................. 56
3.4.2.6. Perancangan Antarmuka................................................................... 56
BAB 4 IMPLEMENTASI DAN PENGUJIAN ............................................. 57
4.1 Implementasi Sistem .............................................................................. 57
4.1.1 Implementasi Perangkat Keras ............................................................ 57
4.1.2 Implementasi Perangkat Lunak ............................................................ 57
4.1.3 Implementasi Antarmuka .................................................................... 58
4.2 Pengujian Sistem.................................................................................... 58
4.2.1 Pengujian Black-Box ............................................................................ 58
vi
4.2.1.1 Rencana Pengujian ............................................................................ 58
4.2.1.2 Pengujian .......................................................................................... 58
4.2.2.Pengujian Performansi ......................................................................... 60
4.2.2.1.Rencana Pengujian Akurasi ............................................................... 60
4.2.2.2.Pengujian Akurasi ............................................................................. 61
4.2.2.3 Pengujian Performansi Berdasarkan Waktu Pembelajaran ................. 62
4.2.3 Pengujian White-Box ............................................................................ 63
4.2.3.1 Pengujian Proses Grayscale ............................................................... 63
4.2.3.2 Pengujian Proses Threshold............................................................... 65
4.2.3.3 Pengujian Proses Pembelajaran Backpropagation.............................. 67
4.2.3.4 Pengujian Proses Pengenalan Backpropagation ................................. 69
BAB 5 KESIMPULAN DAN SARAN ......................................................... 73
5.1 Kesimpulan ........................................................................................... 73
5.2 Saran...................................................................................................... 73
DAFTAR PUSTAKA ................................................................................... 75
vii
DAFTAR PUSTAKA
[1] Argisraha Satria C, 2012, Indonesian
Journal Of Tropical and Infectious
Deseas, Digital Detection System Design Of Mycrobacterium Tuberculosis
Trough Axtraction Of Sputum Image Using Neural Network , No.1, Vol 3.
[2] Zamani Mizza A, 2012, Teknik Pomits, Implementasi Algortima Genetika
pada Struktur Backpropagation Neural Network untuk Klasifikasi Kanker
Payudara, No.1, Vol 1.
[3] Arif Riantini S, ITT Telkom, Deteksi Tumor Otak Berdasarkan Citra Magnetic
Resonance Imaging (MRI) Berbasis Jaringan Syaraf Tiuan Radial Basis
Function (RBF).
[4] Sommerville.I, 2011, Software Engineering (9th Edition). USA : Pearson.
[5] Kusumadewi, 2003 , Artificial Intelligence ( Teknik dan Aplikasinya ), Graha
Ilmu : Yogyakarta.
[6] Putra Darma, 2010, Pengolahan Citra Digital, ANDI : Yogyakarta.
[7] Notosiswoyo M, 2004,
Media Litbang Kesehatan, Pemanfaatan Magnetic
Resonance Imaging (MRI) sebagai sarana diagnose pasien, no.3, vol XIV.
[8] Adam Mukharil Bachtiar, Diktat Perkuliahan Analisis Algoritma, Universitas
Komputer Indonesia, Bandung.
[9] Tom M.Mitchell, 1997, Machine Learning, McGraw-Hill Science.
75
BAB 1
PENDAHULUAN
1.1. Latar Belakang
Metode jaringan syaraf tiruan backpropagation merupakan metode yang
banyak digunakan untuk diaplikasikan pada penyelesaian suatu masalah berkaitan
dengan identifikasi, prediksi, dan pengenalan pola. Penelitian yang menggunakan
metode backpropagation, salah satunya untuk mengidentifikasi suatu penyakit
melalui pengenalan pola pada citra medis.
Berdasarkan hasil studi literatur penggunaan metode backpropagation untuk
identifikasi penyakit melalui pengenalan pola citra medis contohnya penelitian
yang dilakukan untuk identifikasi penyakit TBC (Tuberculosis). Langkah-langkah
pengenalan pola penyakit TBC adalah preprocessing yang terdiri dari grayscale
dan threshold, lalu pembelajaran menggunakan metode backpropagation. Tingkat
akurasi yang dihasilkan pada penelitian ini sebesar 77.5% dalam pengenalan pola
penyakit TBC menggunakan metode backpropagation [1]. Penelitian lain yang
menggunakan
metode
backpropagation
adalah
penelitian
untuk
mengklasifikasikan kanker payudara. Penelitian ini bertujuan untuk mencari
optimasi parameter pembelajaran yang paling baik dengan menggunakan
algoritma
genetika,
optimasi
parameter
pembelajaran
bertujuan
untuk
meningkatkan akurasi. Langkah-langkah untuk mengklasifikasikan kanker
payudara
adalah
preprocessing
dataset,
pembangkitan
populasi
awal,
pembelajaran backpropagation, lalu identifikasi, pada penelitian ini didapatkan
akurasi sebesar 97% dalam mendeteksi kanker payudara [2]. Penelitian untuk
mengidentifkasi penyakit tumor otak pernah dilakukan dengan menggunakan
jaringan
syaraf
tiruan
radial
basic
function,
langkah-langkah
proses
pengidentifikasian terdiri dari preprocessing, ekstraksi cirri statistik, lalu
pembelajaran menggunakan metode radial basis function, pada penelitian ini
didapatkan tingkat akurasi sebesar 80% dalam mengidentifikasi tumor otak [3].
Kecerdasan buatan merupakan salah satu bagian ilmu komputer yang
membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik
1
2
manusia. Kelebihan penerapan kecerdasan buatan pada suatu sistem adalah sistem
dapat menarik kesimpulan dari hasil pembelajaran berdasarkan basis pengetahuan
yang dimasukkan. Contoh sistem berbasis kecerdasan buatan adalah sistem
pengenalan gambar menggunakan jaringan syaraf tiruan, yaitu suatu sistem
dimana sistem tersebut dapat mengenali gambar dengan menggunakan data yang
sudah diperoleh dari proses pembelajaran gambar yang telah dilakukan
sebelumnya.
Metode backpropagation merupakan salah satu metode pembelajaran dari
Jaringan Syaraf Tiruan (JST). Algoritma ini akan menghasilkan kinerja yang lebih
baik karena latihan yang berulang–ulang. Metode backpropagation dipilih karena
kemampuannya untuk belajar dan menangani nilai tersembunyi yang berada di
dataset. Dataset adalah keseluruhan data training, dengan kelebihan tersebut dapat
mewujudkan sistem yang konsisten bekerja dengan baik.
Penelitian-penelitian
yang
pernah
dilakukan
sebelumnya
dengan
menggunakan metode jaringan syaraf tiruan untuk identifikasi suatu penyakit
melalui pola citra medis telah berhasil dilakukan, tetapi belum ditemukan
penelitian untuk mengenali pola sel kanker otak menggunkan metode
backpropagation, oleh sebab itu, perlu dilakukan penelitian untuk membuktikan
apakah metode backpropagation cocok untuk mengenali pola kanker otak.
1.2. Rumusan Masalah
Berdasarkan latar belakang yang telah dipaparkan, maka permasalahan yang
ada pada penelitian ini adalah bagaimana menerapkan jaringan syaraf tiruan
backpropagation pada pengenalan citra kanker otak dengan memanfaatkan fitur
bit channel pada pixel hasil threshold.
1.3. Maksud dan Tujuan
Berdasarkan permasalahan yang ada, maka maksud dari penelitian yang akan
dilakukan adalah menganalisis performansi dan akurasi pada pengenalan citra
kanker otak menggunakan metode jaringan syaraf tiruan backpropagation.
3
Tujuan dari penelitian yang dilakukan dalam menganalisis metode jaringan
syaraf tiruan backpropagation dalam pengenalan sel kanker otak untuk
mengetahui performansi dan akurasi pada pengenalan citra kanker otak
menggunakan metode jaringan syaraf tiruan backpropagation.
1.4. Batasan Masalah
Batasan masalah disusun agar sistem yang dibangun dapat terarah dan tidak
menyimpang, batasan masalah dari aplikasi yang akan dibangun adalah sebagai
berikut :
1. Citra yang akan diolah adalah citra MRI hasil pemotretan otak yang sehat dan
otak sakit. Citra diakuisisi menggunakan kamera digital. Citra didapatkan
dari RS. Hasan Sadikin. Data yang diolah berupa file gambar dua dimesi
dengan format .bmp berukuran 45 x 45 pixel.
2. Proses terdiri dari input citra, preprocessing dan backpropagation.
3. Data keluaran berupa hasil klasifikasi kanker atau normal.
4. Metode yang digunakan sebagai metode pembelajaran adalah metode
jaringan syaraf tiruan backpropagation.
5. Sistem yang akan dibangun berbasis desktop.
6. Sistem yang dibangun menggunakan pemodelan terstruktrur.
7. Sistem yang dibangun menggunakan bahasa pemrograman Visual C# dan
menggunakan Microsoft Visual Studio 2010 sebagai editor untuk menulis
kode program. Pengolahan grafik menggunakan Microsoft Visio 2007 dan
Photoshop CS5.
1.5. Metodologi Penelitian
Metodologi penelitian merupakan suatu proses yang digunakan untuk
memecahkan suatu masalah yang logis, dimana memerlukan data-data untuk
mendukung terlaksananya suatu penelitian. Metode penelitian yang digunakan
adalah
metode
deskriptif.
Metode deskriptif
merupakan
metode
yang
menggambarkan fakta-fakta dan informasi dalam situasi atau kejadian sekarang
4
secara sistematis, faktual dan akurat. Metode penelitian ini memiliki dua tahapan,
yaitu tahap pengumpulan data dan tahap pengembangan perangkat lunak.
1.5.1. Metode pengumpulan data
Metode Pengumpulan data yang digunakan untuk pembangunan aplikasi
pendeteksi sel kanker otak menggunakan metode jaringan syaraf tiruan
backpropagation adalah studi pustaka. Studi ini dilakukan dengan cara
mempelajari, literatur-literatur dari perpustakaan yang bersumber dari buku- buku,
teks, jurnal ilmiah, situs - situs di internet, dan bacaan-bacaan yang berkaitan
dengan topik penelitian.
1.5.2. Pengembangan Perangkat Lunak
Tahapan pengembangan sistem yang digunakan dalam penelitian ini
mengacu pada model waterfall, tahapan-tahapan pembangunan perangkat lunak
yang digunakan dalam metode penelitian ini adalah sebagai berikut [4]:
1. Requirement definition
Tahap ini adalah tahapan analisis terhadap kebutuhan simulator dan tahap
untuk mengadakan pengumpulan data citra MRI dengan melakukan
kunjungan ke RS.Hasan Sadikin.
2. System and software design
Tahap ini adalah tahap menerjemahkan syarat kebutuhan ke sebuah
perancangan simulator sebelum diimplementasikan ke tahap coding.
Proses ini berfokus pada rancangan algoritma procedural. Tahapan ini
akan menghasilkan dokumen yang disebut software requirement.
Spesifikasi kebutuhan simulator dilakukan berdasarkan kebutuhan
simulator pengenalan citra kanker otak untuk penerapan analisis
algoritma. Spesifikasi kebutuhan perangkat lunak akan dibagi kedalam
dua bagian yaitu SKPL-F (Spesifikasi Kebutuhan Perangkat Lunak
Fungsional) dan SKPL-NF (Spesifikasi Kebutuhan Perangkat Lunak
Non-Fungsional).
5
3. Implementation and unit testing
Tahap ini mendesain sistem dan program maka pada tahap ini desain
diterjemahkan ke dalam kode-kode dengan menggunakan bahasa
pemrograman C# (C-Sharp). Program yang dibangun langsung diuji secara
unit. Pengujian dilakukan untuk menemukan kesalahan-kesalahan
terhadap simulator untuk kemudian bias diperbaiki.
4. Integration and system testing
Tahap ini adalah tahap penyatuan unit-unit program kemudian diuji secara
keseluruhan untuk memastikan lagi kesalahan-kesalahan yang masih
terjadi pada simulator untuk kemudian diperbaiki.
5. Operation and maintenance
Tahap ini mengoperasikan aplikasi dilingkungannya dan melakukan
pemeliharaan seperti penyesuaian atau perubahan karena adaptasi dengan
situasi yang sebenarnya, pada simulator pengenalan sel kanker otak tahap
ini tidak diperlukan.
Gambar 1.1 Model WaterFall [4]
6
1.6. Sistematika Penulisan
Sistematika penulisan disusun untuk memberikan gambaran secara umum
tentang permasalahan dan pemecahannya. Sistematika penulisan penelitian tugas
akhir ini adalah sebagai berikut :
BAB 1 : PENDAHULUAN
Bab 1 pendahuluan membahas mengenai latar belakang, rumusan masalah,
maksud dan tujuan, batasan masalah, metode penelitian, serta sistematika
penulisan untuk menjelasakan pokok-pokok pembahasannya.
BAB 2 : LANDASAN TEORI
Bab 2 Landasan Teori membahas tentang konsep dasar dan teori – teori yang
berkaitan dengan penelitian yang dilakukan dan hal-hal yang berguna dalam
proses analisis permasalahan.
BAB 3 : ANALISIS ALGORITMA
Bab 3 Analisis algoritma, membahas mengenai analisis domain masalah, analisis
metode, analisis optimasi.
BAB 4 : IMPLEMENTASI DAN PENGUJIAN
Bab 4
implementasi dan pengujian, membahas mengenai implementasi serta
pengujian sistem untuk mengetahui performansi algoritma.
BAB 5 : KESIMPULAN DAN SARAN
Bab 5 kesimpulan dan saran membahas mengenai kesimpulan dari penelitian
yang telah dilakukan dan saran yang diharapkan dapat menjadi masukan untuk
pengembangan dimasa yang akan datang.
BAB 2
LANDASAN TEORI
2.1.Citra Digital
Pengolahan citra digital adalah proses pengolahan gambar dua dimensi
menggunakan komputer, citra digital adalah sebuah larik (array) yang berisi nilainilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu [6].
Suatu citra dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan
N kolom, dengan x dan y adalah koordinat spasial, dan amplitudo f pada titik
koordinat (x,y) dinamakan intensitas atau tigkat keabuan dari citra pada titik
tersebut. Apabila nilai x,y, dan nilai amplitudo f secara keseluruhan berhingga
(finite) dan bernilai diskrit maka dapatdikatakan bahwa citra tersebut adalah citra
digital, gambar 2.1 menunjukan posisi koordinat citra digital [6].
Gambar 2.1 Koordinat Citra Digital [6]
Citra digital dapat ditulis dalam bentuk matriks seperti gambar 2.2
Gambar 2.2 Matriks Citra Digital [6]
Nilai pada suatu irisan pada baris dan kolom (pada posisi x,y) disebut
dengan picture elements, image elements, pels, atau pixels. Istilah pixel paling
7
8
sering digunakan pada citra digital. Gambar 2.3 menunjukan ilustrasi digitalisasi
citra dengan M=16 baris dan N=16 kolom.
Gambar 2.3 Ilustrasi Digitalisasi Citra [6]
2.1.1. Penerapan Citra Digital Bidang Biomedis
Pengolahan citra digital mengalami kemajuan penting dalam bidang
kedokteran ketika ditemukannya tomografi terkomputerisasi (Computerized
Tomography/CT) pada tahun 1970-an dan kini teknologi tomografi tersebut sudah
maju sangat pesat. Pengolahan citra digital dapat digunakan untuk deteksi tumor
atau kanker rahim, identifikasi penyakit paru-paru, identifikasi penyakit hati,
identifikasi penyakit tulang, segmentasi tulang dari otot yang lainnya, klasifikasi
gigi dan analisis citra mikroskopis. Beberapa dari kemajuan pada bidang
kedokteran tersebut karena kemampuan pengolahan citra digital mampu
menginterpretasikan sinar x (x ray). Kemampuan lainnya adalah aplikasi
volumetric 3D Magnetic Resonance Imaging (MRI) yang mampu mendapatkan
pencitraan organ dalam tubuh manusia secara jelas dengan menggunakan scanner
MRI [6].
2.1.2. Citra MRI
Magnetic Resonance Imaging (MRI) adalah suatu alat kedokteran di
bidang pemeriksaan diagnostik radiologi , yang menghasilkan rekaman gambar
potongan penampang tubuh / organ manusia dengan menggunakan medan magnet
9
berkekuatan antara 0,064 – 1,5 tesla (1 tesla = 1000 Gauss) dan resonansi getaran
terhadap inti atom hydrogen [7].
Selanjutnya MRI bila ditinjau dari tipenya terdiri dari [7]:
1. MRI yang memiliki kerangka terbuka (open gantry) dengan ruang yang
luas.
2.
MRI yang memiliki kerangka (gantry) biasa yang berlorong sempit.
Sedangkan bila ditinjau dari kekuatan magnetnya terdiri dari [7] :
a. MRITesla tinggi ( High Field Tesla) memiliki kekuatan di atas 1 – 1,5 T
b. MRI Tesla sedang (Medium Field Tesla) memiliki kekuatan 0,5 – 1T
c. MRI Tesla rendah (Low Field Tesla) memiliki kekuatan di bawah 0,5 T.
Sebaiknya suatu rumah sakit memilih MRI yang memiliki tesla tinggi karena alat
tersebut dapat digunakan untuk tehnik Fast Scan yaitu suatu teknik yang
memungkinkan 1 gambar irisan penampang dibuat dalam hitungan detik, sehingga
kita dapat membuat banyak irisan penampang yang bervariasi dalam waktu yang
sangat singkat, dengan banyaknya variasi gambar membuat suatu lesi menjadi
menjadi lebih spesifik.
Ada beberapa kelebihan MRI dibandingkan dengan pemeriksaan CT Scan yaitu
[7]:
a. MRI lebih unggul untuk mendeteksi beberapa kelainan pada jaringan
lunak seperti otak, sumsum tulang serta muskuloskeletal.
b. Mampu memberi gambaran detail anatomi dengan lebih jelas.
c. Mampu melakukan pemeriksaan fungsional seperti pemeriksaan difusi,
perfusi dan spektroskopi yang tidak dapat dilakukan dengan CT Scan.
d. Mampu membuat gambaran potongan melintang, tegak, dan miring tanpa
merubah posisi pasien.
e. MRI tidak menggunakan radiasi pengion.
Alat MRI terlihat seperti gambar 2.4
10
Gambar 2.4 Alat MRI [7]
2.1.3. Pengolahan Citra Digital
Pengolahan citra adalah kegiatan memperbaiki kualitas citra agar mudah
diinterpretasi
oleh
manusia/mesin(komputer).
Inputannya
adalah
citra
dan
keluarannya juga citra tapi dengan kualitas lebih baik daripada citra masukan.
Proses pengolahan citra yang digunakan pada penelitian ini terdiri dari
proses scaling, grayscale, thresholding.
2.1.3.1.Scaling
Scaling atau Penskalaan citra adalah sebuah operasi geometri yang
memberikan efek memperbesar atau memperkecil ukuran citra input sesuai
dengan variabel penskalaan citranya. Scaling digunakan untuk memperbesar
(zoom-in) atau memperkecil (zoom-out) citra [6]. Rumus yang digunakan untuk
proses scaling terlihat seperti persamaan 2.1.
x = Sh x y = Sv y
(2.1)
Keterangan :
Sh : faktor skala horizontal
Sv : faktor skala vertikal
2.1.3.2.Grayscale
Citra grayscale merupakan citra digital yang hanya memiliki satu nilai
kanal pada setiap pixelnya, dengan kata lain nilai bagian RED = GREEN =
BLUE. Nilai tersebut digunakan untuk menunjukan tingkat intensitas. Warna yang
11
dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkatan kebuan disini
merupakan warna abu dengan berbagai dari hitam hingga mendekati putih. Citra
grayscale memiliki kedalaman warna 8 bit ( 256 kombinasi warna keabuan ) [6].
Rumus yang digunakan untuk grayscale terlihat seperti persamaan 2.2.
Grayscale = ( R + G + B) / 3
(2.2)
Keterangan :
R = Red (menyatakan warna merah)
G = Green (menyatakan warna hijau)
B = Blue (menyatakan warna biru)
2.1.3.3.Tresholding
Tresholding atau pengambangan membuat citra memiliki dua tingkat
keabuan yaitu hitam dan putih, proses pengambangan akan menghasilkan citra
biner [6]. Proses tresholding mengikuti aturan dari persamaan 2.3.
( , ) =
Keterangan :
1 ( , ) ≥
0 ( , ) <
(2.3)
g (x,y) : citra biner dari citra grayscale
T
: nilai ambang
2.2.Kecerdasan Buatan
Kecerdasan buatan ( Artificial Intelligence ) merupakan salah satu ilmu
komputer yang membuat agar mesin ( komputer ) dapat melakukan pekerjaan
seperti dan sebaik yang dilakukan oleh manusia [5]. Kecerdasan buatan
mempunyai dua bagian utama yang sangat dibutuhkan dalam melakukan aplikasi,
seperti terlihat pada gambar 2.5 komponen yang dibutuhkan adalah :
a. Basis Pengetahuan ( Knowledge Base ), berisi fakta-fakta, teori, pemikiran
dan hubungan antara satu dengan lainnya [5].
b. Motor Inferensi ( Inference Engine ), yaitu kemampuan menarik
kesimpulan berdasarkan pengalaman [5].
12
Gambar 2.5 Penerapan Kecerdasan Buatan [5]
Kecerdasan buatan terdiri dari beberapa kajian diantaranya adalah sistem pakar,
jaringan syaraf tiruan, computer vision, simulasi crowd, logika fuzzy, algoritma
genetika, dokumen minning.
2.2.1. Jaringan Syaraf Tiruan
Jaringan Syaraf Tiruan (neural network) adalah salah satu kajian pada
kecerdasan buatan. Jaringan syaraf tiruan adalah salah satu representasi buatan
dari otak manusia yang selalu mencoba untuk menstimulasikan proses
pembelajaran pada otak manusia tersebut [5]. Istilah buatan maksudnya adalah
jaringan syaraf yang diimplementasikan menggunakan program computer untuk
menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.
Komponen JST terdiri dari neuron – neuron dan neuron –neuron tersebut
saling berhubungan. Neuron – neuron tersebut akan mentransformasikan
informasi yang diterima melalui sambungan keluarnya menuju neuron – neuron
yang lain, pada JST hubungan neuron-neuron tersebut dikenal dengan nama bobot
[2]. Komponen JST seperti terlihar pada gambar 2.6 terdiri dari input ( informasi)
bobot ( nilai- nilai tertentu ), fungsi aktivasi berfungsi apabila input yang
dimasukan sesuai dengan nilai ambang ( threshold ) yang ditentukan jika tidak
sesuai maka fungsi aktivasi tidak diaktifkan, dan apabila neuron – neuron tersebut
diaktifkan maka neuron akan mengirimkan output melalui bobot – bobot.
13
Input dari
neuronneuron
yang lain
Output dari
percepton
yang lain
Gambar 2.6 Komponen Jaringan Syaraf Tiruan [5]
Jaringan Syaraf tiruan mempunyai dua macam proses pembelajaran yaitu
pembelajaran terawasi dan pembelajaran tidak terawasi. Pembelajaran terawasi
adalah jika output yang diharapkan telah diketahui sebelumnya, sedangkan
pembelajaran tidak terawasi adalah proses pembelajaran yang tidak memerlukan
target output [5].
1. Pembelajaran Terawasi ( Supervised Learning )
Metode pembelajaran pada jaringan syaraf disebut terawasi jika output yang
diharapkan telah diketahui sebelumnya. Pada proses pembelajaran, 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. Apabila terjadi
perbedaan antara pola output hasil pembelajaran dengan pola target, maka
disini akan muncul error. Apabila nilai error ini masih cukup besar,
mengindikasikan bahwa masih perlu dilakukan lebih banyak pembelajaran
lagi. Metode pembelajaran terawasi diantaranya Hebb Rule, Perceptron, Delta
Rule, Backpropagation, Learning Vektor Quantization, Heteroassociative
Memory.
2. Pembelajaran Tak Terawasi ( Unsupervised Learning )
Pada metode pembelajaran yang tak terawasi ini tidak memerlukan target
output. Pada metode ini, tidak dapat ditentukan hasil yang seperti apakah yang
diharapkan selama proses pembelajaran. Metode pembelajaran tidak terawasi
salah satunya adalah jaringan kohonen
14
2.2.2. Backpropagation
Backpropagation merupakan algoritma pembelajaran yang terawasi dan
biasanya digunakan oleh perceprton dengan banyak lapisan untuk mengubah
bobot-bobot yang terhubung dengan neuron-neuron yang ada pada lapisan
tersembunyinya. Algoritma backpropagation menggunakan error output untuk
mengubah nilai bobot-bobotnya dalam arah mundur ( backward ). Untuk
mendapatkan error ini, tahap perambatan maju ( forward ) harus dikerjakan
terlebih dahulu. Pada saat perambatan maju, neuron-neuron diaktifkan dengan
menggunakan fungsi aktivasi sigmoid, seperti terlihat pada rumus 2.4.
merupakan fungsi aktivasi sigmoid biner, yaitu [5] :
f ( x ) =
(2.4)
Arsitektur backpropagation terlihat seperti gambar 2.7, jaringan terdiri atas 3
unit (neuron) pada lapisan input yaitu x ,x , dan x ; 1 lapisan tersembunyi dengan
2 neuron, yaitu z dan z ; serta 1 unit pada lapisan output, yaitu y. bobot yang
menghubungkan x ,x , dan x dengan neuron pertama pada lapisan tersembunyi
adalah v v v ( v ∶ Bobot yang menghubungkan neuron input ke-i ke neuron
ke-j pada lapisan tersembunyi ). Bobot yang menghubungkan z dan z dengan
neuron pada lapisan output, adalah w dan w . Fungsi aktivasi yang digunakan
antara lapisan input dan lapisan tersembunyi, dan lapisan tersembunyi dengan
lapisan output adalah fungsi aktifasi sigmoid biner [5].
15
Gambar 2.7 Arsitektur jaringan backpropagation [2].
Algoritma backpropagation [5]:
Inisialisasi bobot (ambil bobot awal dengan nilai random).
Kerjakan langkah-langkah berikut selama kondisi berhenti bernilai FALSE:
1. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran,
kerjakan:
Feedforward:
a. Tiap-tiap unit input (Xi, i=1,2,3,...,n) menerima sinyal xi dan
meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di
atasnya (lapisan tersembunyi).
b. Tiap-tiap unit tersembunyi (Zi, j=1,2,3,...,p) menjumlahkan sinyalsinyal input terbobot:
n
z _ in j v 0 j
x ivij
( 2.5)
i 1
gunakan fungsi aktivasi untuk menghitung sinyal outputnya:
zj = f( z_in j )
( 2.6)
kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit
output).
c. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menjumlahkan sinyalsinyal input terbobot.
16
p
y _ in k w 0 k
z iw j k
(2.7)
i 1
gunakan fungsi aktivasi untuk menghitung sinyal outputnya:
yk = f(y_ink)
(2.8)
dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unitunit output).
Backpropagation
d. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menerima target pola yang
berhubungan dengan pola input pembelajaran, hitung informasi
errornya:
k = (tk – yk) f’(y_ink)
(2.9)
kemudian hitung koreksi bobot (yang nantinya akan digunakan
untuk memperbaiki nilai wjk):
wjk = k zj
(2.10)
hitung juga koreksi bias (yang nantinya akan digunakan untuk
memperbaiki nilai w0k):
w0k = k
(2.11)
kirimkan k ini ke unit-unit yang ada di lapisan bawahnya.
e. Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan delta
inputnya (dari unit-unit yang berada pada lapisan di atasnya):
_ in j
m
k w j k
(2.12)
k 1
kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk
menghitung informasi error:
j = _inj f’(z_inj)
(2.13)
kemudian hitung koreksi bobot (yang nantinya akan digunakan
untuk memperbaiki nilai vij):
vjk = j xi
(2.14)
hitung juga koreksi bias (yang nantinya akan digunakan untuk
memperbaiki nilai v0j):
17
v0j = j
(2.15)
f. Tiap-tiap unit output (Yk, k=1,2,3,...,m) memperbaiki bias dan
bobotnya (j=0,1,2,...,p):
wjk(baru) = wjk(lama) + wjk
(2.16)
Tiap-tiap unit tersembunyi (Z j, j=1,2,3,...,p) memperbaiki bias dan
bobotnya (i=0,1,2,...,n):
vij(baru) = vij(lama) + vij
(2.17)
2. Tes kondisi berhenti
Keterangan Rumus :
:
Bobot sinyal unit tersembunyi
:
Keluaran unit tersembunyi
:
Bobot sinyal lapisan keluaran
:
Keluaran unit keluaran
:
Kesalahan
Δ
:
Koreksi bobot unit keluaran
v
:
Bobot yang menghubungkan neuron input ke-i ke
_
_
neuron ke-j pada lapisan tersembunyi
Δ
:
Koreksi bobot unit tersembunyi
xi
:
Unit ( neuron ) pada lapisan input
n
:
Jumlah neuron (unit) pada lapisan input
v
:
Bobot awal masuk ke hidden
v0
:
Bobot bias yang menuju ke hidden
w
:
Bobot awal hidden ke output
w0
:
Bobot bias yang menuju ke output
α
:
Learning rate / rasio pembelajaran
2.3 Algoritma
Algoritma merupakan salah satu cabang ilmu komputer yang membahas
prosedur penyelesaian suatu permasalahan. Algoritma adalah urutan langkah
18
langkah dalam menentukan suatu masalah. Algortima adalah serangkaian urutan
langkah-langkah atau prosedur untuk menyelesaikan suatu masalah dengan
memproses nilai masukan menjadi nilai keluaran.
Dalam mempelajari algortima, kita diperlukan untuk dapat menganalis
algoritma dalam menentukan performansinya. Suatu Algoritma tidak saja harus
benar, tetapi juga harus efisien dengan menghitung nilai dari performansinya.
Setiap algortima memiliki nilai performansi yang berbeda-beda. Performansi
suatu Algoritma dapat diukur dengan menghitung nilai kompleksitas waktunya
dimana setiap langkahnya akan dihitung [8].
2.3.1
Kompleksitas Algoritma
Kompleksitas algoritma terdiri dari waktu dan ruang. Kompleksitas waktu
asimptotik merupakan waktu yang dibutuhkan suatu Algoritma menyelesaikan
tiap langkahnya. Setiap Algoritma memiliki kompleksitas waktu yang berbedabeda. Komplesitas waktu asimptotik diperlukan untuk menghitung performansi
suatu Algoritma. Untuk menghitung kompleksitas waktu asimptotik suatu
Algoritma digunakanlah notasi “O-Besar” (Big-O) yang merupakan notasi
kompleksitas waktu asimptotik. Definisi dari Big-O atau O(g(n)) adalah kumpulan
semua fungsi yang order of growth-nya lebih kecil atau sama dengan g(n),
sedangkan definisi dari order of growth adalah istilah yang dapat digunakan untuk
pola varian jumlah input dalam suatu pengujian algoritma [8]. Contoh :
(
1
2
∉ (
) ; 100 + 5 (
( − 1) (
) ; 0,0001
∉ (
) ;
)
)
+
+ 1 ∉
(
)
Perhitungan kompleksitas waktu asimptotik dengan menghitung nilai O-besar
dari setiap instruksi di dalam Algoritma dengan contoh dibawah ini, kemudian
diterapkan teorema O-Besar.
1. Pengisian nilai (assignment), perbandingan, operasi aritmetik, read, write
membutuhkan waktu O(1).
19
2.
Pengaksesan elemen larik atau memilih field tertentu dari sebuah record
membutuhkan waktu O(1).
O(1)
Read(x);
x:=x+a[k];
O(1)+ O(1)+O(1)= O(1)
Writeln(x);
O(1)
Kompleksitas waktu di atas adalah O(1), didapat dari
= O(1)+ O(1)+ O(1)
= O(max(1,1))+ O(1)
= O(1)+ O(1)
= O(max(1,1))
= O(1)
3. If c then s1 else s2. Membutuhkan waktu Tc + max(Ts1,Ts2).
read(x); O(1)
if x mod 2=0 then O(1)
begin
x:=x+1; O(1)
writeln(x);O(1)
end
else
writeln(x); O(1)
Kompleksitas waktu di atas adalah O(1), didapat dari
= O(1) + O(1) max (O(1)+ O(1), O(1))
= O(1) + max(O(1), O(1))
= O(1)
4. Kalang for. Kompleksitas waktu kalang for adalah jumlah pengulangan dikali
dengan kompleksitas waktu badan kalang.
For i=1 to n do
Jumlah:= jumlah +a[i];
O(n)
O(1)
Kompleksitas waktu di atas adalah O(n), didapat dari
= O(n) . O(1)
= O(n.1)
= O(n)
20
5. While c do s; dan repeat s until c; untuk kedua buah kalang, kompleksitas
waktunya adalah jumlah pengulangan dikali dengan waktu badan c dan s.
i:=2; O(1)
while i
Data Pribadi
Nama
: Novita Handayani
Tempat/Tanggal Lahir
: Karawang,06 November 1991
Jenis Kelamin
: Perempuan
Alamat
: KP Krajan Desa Pangulah Selatan RT 02/02
KotaBaru, Karawang
No. Telp
: 085717649930
: [email protected]
Riwayat Pendidikan
1997 – 2003 Lulus SDN 2 Pangulah Selatan
2003 – 2006 Lulus SMPN 1 Jatisari-Karawang
2006 – 2009 Lulus SMAN 1 Cikampek-Karawang
2009 – 2013 UNIKOM
Demikian riwayat hidup ini saya buat dengan sebenar-benarnya.
ANALISIS METODE JARINGAN SYARAF TIRUAN
BACKPROPAGATION UNTUK PENGENALAN
SEL KANKER OTAK
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
Program Studi Teknik Informatika
Fakultas Teknik dan Ilmu Komputer
NOVITA HANDAYANI
10109092
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2013
KATA PENGANTAR
Puji dan syukur kehadirat Allah SWT, atas berkat rahmat dan hidayah-Nya
sehingga penulis dapat menuangkan ide dan gagasan dalam karya ilmiah Tugas
Akhir ini. Penulis mengangkat judul : “ANALISIS METODE JARINGAN
SYARAF TIRUAN BACKPROPAGATION UNTUK PENGENALAN SEL
KANKER OTAK ”.
Tugas Akhir ini diajukan untuk memenuhi syarat mata kuliah Tugas Akhir
program STRATA I Program Studi Teknik Informatika, Fakultas Teknik dan Ilmu
Komputer, Universitas Komputer Indonesia (UNIKOM), Bandung. Dengan
terselesaikannya Tugas Akhir ini,Penulis ungkapkan rasa syukur yang tiada
terhingga kepada Allah SWT. dan Penulis mengucapkan terimakasih kepada :
1. Kedua Orang Tua yang saya hormati dan saya cintai yang telah
memberikan kepada Penulis dukungan dan motivasi untuk menyelesaikan
laporan Tugas Akhir ini.
2. Ibu Nelly Indriani Widiastuti,S.Si.,M.T. selaku dosen pembimbing dan
Penguji 2 yang telah menyediakan waktunya dan memberikan banyak
masukan kepada penulis.
3. Ibu Tati Harihayati Mardzuki, S.T.,M.T. selaku dosen wali IF-3, reviewer,
dan penguji 1 yang telah memberikan banyak masukan kepada penulis.
4. Bapak Hendri Karisma, S.Kom. selaku penguji 3 yang telah memberikan
banyak masukan kepada penulis.
5. Bapak Irawan Afrianto,S.T.,M.T. selaku Ketua Program Studi Teknik
Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer
Indonesia.
6. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc. selaku Dekan Fakultas
Teknik dan Ilmu Komputer Universitas Komputer Indonesia.
7. Kakak saya, Hernita Susanti dan Yanti Kusmayanti. Adik saya Yogi
Guntara yang saya sayangi yang telah memberikan saya motivasi untuk
menyelesaikan tugas akhir ini.
iii
8. Rekan-rekan seperjuangan IF-3 angkatan 2009 yang selalu memberikan
semangat dan motivasi kepada penulis.
9. Rekan-rekan satu bimbingan ibu nelly, rekan-rekan reviewer ibu tati.
10. Sahabat – sahabatku Desi Trisna, Ratih Paramila, Lina Nuraeni dan Nina
yang selalu memberikan semangat saat penulis butuh motivasi.
11. Pihak-pihak yang telah membantu yang tidak dapat disebutkan satu
persatu.
Akhir kata, Penulis berharap semoga laporan ini dapat bermanfaat bagi para
pembaca.
Bandung 2013
Penulis
iv
DAFTAR ISI
ABSTRAK ................................................................................................... i
ABSTRACT ................................................................................................. ii
KATA PENGANTAR .................................................................................. iii
DAFTAR ISI ................................................................................................ v
DAFTAR GAMBAR .................................................................................... viii
DAFTAR TABEL ........................................................................................ ix
DAFTAR SIMBOL ...................................................................................... xi
DAFTAR LAMPIRAN ................................................................................. xii
BAB 1 PENDAHULUAN ............................................................................ 1
1.1. Latar Belakang ....................................................................................... 1
1.2. Rumusan Masalah .................................................................................. 2
1.3. Maksud dan Tujuan................................................................................ 2
1.4. Batasan Masalah .................................................................................... 3
1.5. Metodologi Penelitian ............................................................................ 3
1.5.1. Metode pengumpulan data .................................................................. 4
1.5.2. Pengembangan Perangkat Lunak ........................................................ 4
1.6. Sistematika Penulisan ............................................................................ 6
BAB 2 LANDASAN TEORI ........................................................................ 5
2.1.Citra Digital ............................................................................................ 7
2.1.1 Penerapan Citra Digital Bidang Biomedis ............................................ 8
2.1.2 Citra MRI ............................................................................................ 8
2.1.3 Pengolahan Citra Digital ..................................................................... 10
2.1.3.1 Scalling ............................................................................................. 10
2.1.3.2 Grayscale ......................................................................................... 10
2.1.3.3 Tresholding ...................................................................................... 11
2.2.Kecerdasan Buatan.................................................................................. 11
2.2.1 Jaringan Syaraf Tiruan ......................................................................... 12
2.2.2 Backpropagation ................................................................................. 14
2.3 Algoritma .............................................................................................. 17
v
2.3.1 Kompleksitas Algoritma....................................................................... 18
BAB 3 ANALISIS ALGORITMA ................................................................ 23
3.1. Analisis Domain Masalah ...................................................................... 23
3.2. Analisis Metode ..................................................................................... 23
3.2.1 Citra Input............................................................................................ 24
3.2.2 Preprocessing ...................................................................................... 24
3.2.2.1 Scaling ............................................................................................. 24
3.2.2.2 Grayscale.......................................................................................... 24
3.2.2.3 Threshold .......................................................................................... 26
3.2.3
Pembelajaran..................................................................................... 27
3.2.4
Pengenalan ........................................................................................ 41
3.3. Analisis Kompleksitas Waktu Asimptotik Metode Backpropagation ...... 46
3.4. Analisis Spesifikasi Kebutuhan Perangkat Lunak ................................... 52
3.4.1 Analisis Kebutuhan Non-Fungsional .................................................... 54
3.4.1.1 Analisis Kebutuhan Perangkat Keras ................................................. 54
3.4.1.2 Analisis Kebutuhan Perangkat Lunak ................................................ 54
3.4.1.3 Analisis Kebutuhan Pengguna ........................................................... 55
3.4.2. Analisis Kebutuhan Fungsional ........................................................... 55
3.4.2.1.Diagam Konteks................................................................................ 55
3.4.2.2. Data Flow Diagram (DFD) ............................................................... 56
3.4.2.3. Spesifikasi Proses ............................................................................. 56
3.4.2.4. Kamus Data ..................................................................................... 56
3.4.2.5. Perancangan Struktur Menu ............................................................. 56
3.4.2.6. Perancangan Antarmuka................................................................... 56
BAB 4 IMPLEMENTASI DAN PENGUJIAN ............................................. 57
4.1 Implementasi Sistem .............................................................................. 57
4.1.1 Implementasi Perangkat Keras ............................................................ 57
4.1.2 Implementasi Perangkat Lunak ............................................................ 57
4.1.3 Implementasi Antarmuka .................................................................... 58
4.2 Pengujian Sistem.................................................................................... 58
4.2.1 Pengujian Black-Box ............................................................................ 58
vi
4.2.1.1 Rencana Pengujian ............................................................................ 58
4.2.1.2 Pengujian .......................................................................................... 58
4.2.2.Pengujian Performansi ......................................................................... 60
4.2.2.1.Rencana Pengujian Akurasi ............................................................... 60
4.2.2.2.Pengujian Akurasi ............................................................................. 61
4.2.2.3 Pengujian Performansi Berdasarkan Waktu Pembelajaran ................. 62
4.2.3 Pengujian White-Box ............................................................................ 63
4.2.3.1 Pengujian Proses Grayscale ............................................................... 63
4.2.3.2 Pengujian Proses Threshold............................................................... 65
4.2.3.3 Pengujian Proses Pembelajaran Backpropagation.............................. 67
4.2.3.4 Pengujian Proses Pengenalan Backpropagation ................................. 69
BAB 5 KESIMPULAN DAN SARAN ......................................................... 73
5.1 Kesimpulan ........................................................................................... 73
5.2 Saran...................................................................................................... 73
DAFTAR PUSTAKA ................................................................................... 75
vii
DAFTAR PUSTAKA
[1] Argisraha Satria C, 2012, Indonesian
Journal Of Tropical and Infectious
Deseas, Digital Detection System Design Of Mycrobacterium Tuberculosis
Trough Axtraction Of Sputum Image Using Neural Network , No.1, Vol 3.
[2] Zamani Mizza A, 2012, Teknik Pomits, Implementasi Algortima Genetika
pada Struktur Backpropagation Neural Network untuk Klasifikasi Kanker
Payudara, No.1, Vol 1.
[3] Arif Riantini S, ITT Telkom, Deteksi Tumor Otak Berdasarkan Citra Magnetic
Resonance Imaging (MRI) Berbasis Jaringan Syaraf Tiuan Radial Basis
Function (RBF).
[4] Sommerville.I, 2011, Software Engineering (9th Edition). USA : Pearson.
[5] Kusumadewi, 2003 , Artificial Intelligence ( Teknik dan Aplikasinya ), Graha
Ilmu : Yogyakarta.
[6] Putra Darma, 2010, Pengolahan Citra Digital, ANDI : Yogyakarta.
[7] Notosiswoyo M, 2004,
Media Litbang Kesehatan, Pemanfaatan Magnetic
Resonance Imaging (MRI) sebagai sarana diagnose pasien, no.3, vol XIV.
[8] Adam Mukharil Bachtiar, Diktat Perkuliahan Analisis Algoritma, Universitas
Komputer Indonesia, Bandung.
[9] Tom M.Mitchell, 1997, Machine Learning, McGraw-Hill Science.
75
BAB 1
PENDAHULUAN
1.1. Latar Belakang
Metode jaringan syaraf tiruan backpropagation merupakan metode yang
banyak digunakan untuk diaplikasikan pada penyelesaian suatu masalah berkaitan
dengan identifikasi, prediksi, dan pengenalan pola. Penelitian yang menggunakan
metode backpropagation, salah satunya untuk mengidentifikasi suatu penyakit
melalui pengenalan pola pada citra medis.
Berdasarkan hasil studi literatur penggunaan metode backpropagation untuk
identifikasi penyakit melalui pengenalan pola citra medis contohnya penelitian
yang dilakukan untuk identifikasi penyakit TBC (Tuberculosis). Langkah-langkah
pengenalan pola penyakit TBC adalah preprocessing yang terdiri dari grayscale
dan threshold, lalu pembelajaran menggunakan metode backpropagation. Tingkat
akurasi yang dihasilkan pada penelitian ini sebesar 77.5% dalam pengenalan pola
penyakit TBC menggunakan metode backpropagation [1]. Penelitian lain yang
menggunakan
metode
backpropagation
adalah
penelitian
untuk
mengklasifikasikan kanker payudara. Penelitian ini bertujuan untuk mencari
optimasi parameter pembelajaran yang paling baik dengan menggunakan
algoritma
genetika,
optimasi
parameter
pembelajaran
bertujuan
untuk
meningkatkan akurasi. Langkah-langkah untuk mengklasifikasikan kanker
payudara
adalah
preprocessing
dataset,
pembangkitan
populasi
awal,
pembelajaran backpropagation, lalu identifikasi, pada penelitian ini didapatkan
akurasi sebesar 97% dalam mendeteksi kanker payudara [2]. Penelitian untuk
mengidentifkasi penyakit tumor otak pernah dilakukan dengan menggunakan
jaringan
syaraf
tiruan
radial
basic
function,
langkah-langkah
proses
pengidentifikasian terdiri dari preprocessing, ekstraksi cirri statistik, lalu
pembelajaran menggunakan metode radial basis function, pada penelitian ini
didapatkan tingkat akurasi sebesar 80% dalam mengidentifikasi tumor otak [3].
Kecerdasan buatan merupakan salah satu bagian ilmu komputer yang
membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik
1
2
manusia. Kelebihan penerapan kecerdasan buatan pada suatu sistem adalah sistem
dapat menarik kesimpulan dari hasil pembelajaran berdasarkan basis pengetahuan
yang dimasukkan. Contoh sistem berbasis kecerdasan buatan adalah sistem
pengenalan gambar menggunakan jaringan syaraf tiruan, yaitu suatu sistem
dimana sistem tersebut dapat mengenali gambar dengan menggunakan data yang
sudah diperoleh dari proses pembelajaran gambar yang telah dilakukan
sebelumnya.
Metode backpropagation merupakan salah satu metode pembelajaran dari
Jaringan Syaraf Tiruan (JST). Algoritma ini akan menghasilkan kinerja yang lebih
baik karena latihan yang berulang–ulang. Metode backpropagation dipilih karena
kemampuannya untuk belajar dan menangani nilai tersembunyi yang berada di
dataset. Dataset adalah keseluruhan data training, dengan kelebihan tersebut dapat
mewujudkan sistem yang konsisten bekerja dengan baik.
Penelitian-penelitian
yang
pernah
dilakukan
sebelumnya
dengan
menggunakan metode jaringan syaraf tiruan untuk identifikasi suatu penyakit
melalui pola citra medis telah berhasil dilakukan, tetapi belum ditemukan
penelitian untuk mengenali pola sel kanker otak menggunkan metode
backpropagation, oleh sebab itu, perlu dilakukan penelitian untuk membuktikan
apakah metode backpropagation cocok untuk mengenali pola kanker otak.
1.2. Rumusan Masalah
Berdasarkan latar belakang yang telah dipaparkan, maka permasalahan yang
ada pada penelitian ini adalah bagaimana menerapkan jaringan syaraf tiruan
backpropagation pada pengenalan citra kanker otak dengan memanfaatkan fitur
bit channel pada pixel hasil threshold.
1.3. Maksud dan Tujuan
Berdasarkan permasalahan yang ada, maka maksud dari penelitian yang akan
dilakukan adalah menganalisis performansi dan akurasi pada pengenalan citra
kanker otak menggunakan metode jaringan syaraf tiruan backpropagation.
3
Tujuan dari penelitian yang dilakukan dalam menganalisis metode jaringan
syaraf tiruan backpropagation dalam pengenalan sel kanker otak untuk
mengetahui performansi dan akurasi pada pengenalan citra kanker otak
menggunakan metode jaringan syaraf tiruan backpropagation.
1.4. Batasan Masalah
Batasan masalah disusun agar sistem yang dibangun dapat terarah dan tidak
menyimpang, batasan masalah dari aplikasi yang akan dibangun adalah sebagai
berikut :
1. Citra yang akan diolah adalah citra MRI hasil pemotretan otak yang sehat dan
otak sakit. Citra diakuisisi menggunakan kamera digital. Citra didapatkan
dari RS. Hasan Sadikin. Data yang diolah berupa file gambar dua dimesi
dengan format .bmp berukuran 45 x 45 pixel.
2. Proses terdiri dari input citra, preprocessing dan backpropagation.
3. Data keluaran berupa hasil klasifikasi kanker atau normal.
4. Metode yang digunakan sebagai metode pembelajaran adalah metode
jaringan syaraf tiruan backpropagation.
5. Sistem yang akan dibangun berbasis desktop.
6. Sistem yang dibangun menggunakan pemodelan terstruktrur.
7. Sistem yang dibangun menggunakan bahasa pemrograman Visual C# dan
menggunakan Microsoft Visual Studio 2010 sebagai editor untuk menulis
kode program. Pengolahan grafik menggunakan Microsoft Visio 2007 dan
Photoshop CS5.
1.5. Metodologi Penelitian
Metodologi penelitian merupakan suatu proses yang digunakan untuk
memecahkan suatu masalah yang logis, dimana memerlukan data-data untuk
mendukung terlaksananya suatu penelitian. Metode penelitian yang digunakan
adalah
metode
deskriptif.
Metode deskriptif
merupakan
metode
yang
menggambarkan fakta-fakta dan informasi dalam situasi atau kejadian sekarang
4
secara sistematis, faktual dan akurat. Metode penelitian ini memiliki dua tahapan,
yaitu tahap pengumpulan data dan tahap pengembangan perangkat lunak.
1.5.1. Metode pengumpulan data
Metode Pengumpulan data yang digunakan untuk pembangunan aplikasi
pendeteksi sel kanker otak menggunakan metode jaringan syaraf tiruan
backpropagation adalah studi pustaka. Studi ini dilakukan dengan cara
mempelajari, literatur-literatur dari perpustakaan yang bersumber dari buku- buku,
teks, jurnal ilmiah, situs - situs di internet, dan bacaan-bacaan yang berkaitan
dengan topik penelitian.
1.5.2. Pengembangan Perangkat Lunak
Tahapan pengembangan sistem yang digunakan dalam penelitian ini
mengacu pada model waterfall, tahapan-tahapan pembangunan perangkat lunak
yang digunakan dalam metode penelitian ini adalah sebagai berikut [4]:
1. Requirement definition
Tahap ini adalah tahapan analisis terhadap kebutuhan simulator dan tahap
untuk mengadakan pengumpulan data citra MRI dengan melakukan
kunjungan ke RS.Hasan Sadikin.
2. System and software design
Tahap ini adalah tahap menerjemahkan syarat kebutuhan ke sebuah
perancangan simulator sebelum diimplementasikan ke tahap coding.
Proses ini berfokus pada rancangan algoritma procedural. Tahapan ini
akan menghasilkan dokumen yang disebut software requirement.
Spesifikasi kebutuhan simulator dilakukan berdasarkan kebutuhan
simulator pengenalan citra kanker otak untuk penerapan analisis
algoritma. Spesifikasi kebutuhan perangkat lunak akan dibagi kedalam
dua bagian yaitu SKPL-F (Spesifikasi Kebutuhan Perangkat Lunak
Fungsional) dan SKPL-NF (Spesifikasi Kebutuhan Perangkat Lunak
Non-Fungsional).
5
3. Implementation and unit testing
Tahap ini mendesain sistem dan program maka pada tahap ini desain
diterjemahkan ke dalam kode-kode dengan menggunakan bahasa
pemrograman C# (C-Sharp). Program yang dibangun langsung diuji secara
unit. Pengujian dilakukan untuk menemukan kesalahan-kesalahan
terhadap simulator untuk kemudian bias diperbaiki.
4. Integration and system testing
Tahap ini adalah tahap penyatuan unit-unit program kemudian diuji secara
keseluruhan untuk memastikan lagi kesalahan-kesalahan yang masih
terjadi pada simulator untuk kemudian diperbaiki.
5. Operation and maintenance
Tahap ini mengoperasikan aplikasi dilingkungannya dan melakukan
pemeliharaan seperti penyesuaian atau perubahan karena adaptasi dengan
situasi yang sebenarnya, pada simulator pengenalan sel kanker otak tahap
ini tidak diperlukan.
Gambar 1.1 Model WaterFall [4]
6
1.6. Sistematika Penulisan
Sistematika penulisan disusun untuk memberikan gambaran secara umum
tentang permasalahan dan pemecahannya. Sistematika penulisan penelitian tugas
akhir ini adalah sebagai berikut :
BAB 1 : PENDAHULUAN
Bab 1 pendahuluan membahas mengenai latar belakang, rumusan masalah,
maksud dan tujuan, batasan masalah, metode penelitian, serta sistematika
penulisan untuk menjelasakan pokok-pokok pembahasannya.
BAB 2 : LANDASAN TEORI
Bab 2 Landasan Teori membahas tentang konsep dasar dan teori – teori yang
berkaitan dengan penelitian yang dilakukan dan hal-hal yang berguna dalam
proses analisis permasalahan.
BAB 3 : ANALISIS ALGORITMA
Bab 3 Analisis algoritma, membahas mengenai analisis domain masalah, analisis
metode, analisis optimasi.
BAB 4 : IMPLEMENTASI DAN PENGUJIAN
Bab 4
implementasi dan pengujian, membahas mengenai implementasi serta
pengujian sistem untuk mengetahui performansi algoritma.
BAB 5 : KESIMPULAN DAN SARAN
Bab 5 kesimpulan dan saran membahas mengenai kesimpulan dari penelitian
yang telah dilakukan dan saran yang diharapkan dapat menjadi masukan untuk
pengembangan dimasa yang akan datang.
BAB 2
LANDASAN TEORI
2.1.Citra Digital
Pengolahan citra digital adalah proses pengolahan gambar dua dimensi
menggunakan komputer, citra digital adalah sebuah larik (array) yang berisi nilainilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu [6].
Suatu citra dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan
N kolom, dengan x dan y adalah koordinat spasial, dan amplitudo f pada titik
koordinat (x,y) dinamakan intensitas atau tigkat keabuan dari citra pada titik
tersebut. Apabila nilai x,y, dan nilai amplitudo f secara keseluruhan berhingga
(finite) dan bernilai diskrit maka dapatdikatakan bahwa citra tersebut adalah citra
digital, gambar 2.1 menunjukan posisi koordinat citra digital [6].
Gambar 2.1 Koordinat Citra Digital [6]
Citra digital dapat ditulis dalam bentuk matriks seperti gambar 2.2
Gambar 2.2 Matriks Citra Digital [6]
Nilai pada suatu irisan pada baris dan kolom (pada posisi x,y) disebut
dengan picture elements, image elements, pels, atau pixels. Istilah pixel paling
7
8
sering digunakan pada citra digital. Gambar 2.3 menunjukan ilustrasi digitalisasi
citra dengan M=16 baris dan N=16 kolom.
Gambar 2.3 Ilustrasi Digitalisasi Citra [6]
2.1.1. Penerapan Citra Digital Bidang Biomedis
Pengolahan citra digital mengalami kemajuan penting dalam bidang
kedokteran ketika ditemukannya tomografi terkomputerisasi (Computerized
Tomography/CT) pada tahun 1970-an dan kini teknologi tomografi tersebut sudah
maju sangat pesat. Pengolahan citra digital dapat digunakan untuk deteksi tumor
atau kanker rahim, identifikasi penyakit paru-paru, identifikasi penyakit hati,
identifikasi penyakit tulang, segmentasi tulang dari otot yang lainnya, klasifikasi
gigi dan analisis citra mikroskopis. Beberapa dari kemajuan pada bidang
kedokteran tersebut karena kemampuan pengolahan citra digital mampu
menginterpretasikan sinar x (x ray). Kemampuan lainnya adalah aplikasi
volumetric 3D Magnetic Resonance Imaging (MRI) yang mampu mendapatkan
pencitraan organ dalam tubuh manusia secara jelas dengan menggunakan scanner
MRI [6].
2.1.2. Citra MRI
Magnetic Resonance Imaging (MRI) adalah suatu alat kedokteran di
bidang pemeriksaan diagnostik radiologi , yang menghasilkan rekaman gambar
potongan penampang tubuh / organ manusia dengan menggunakan medan magnet
9
berkekuatan antara 0,064 – 1,5 tesla (1 tesla = 1000 Gauss) dan resonansi getaran
terhadap inti atom hydrogen [7].
Selanjutnya MRI bila ditinjau dari tipenya terdiri dari [7]:
1. MRI yang memiliki kerangka terbuka (open gantry) dengan ruang yang
luas.
2.
MRI yang memiliki kerangka (gantry) biasa yang berlorong sempit.
Sedangkan bila ditinjau dari kekuatan magnetnya terdiri dari [7] :
a. MRITesla tinggi ( High Field Tesla) memiliki kekuatan di atas 1 – 1,5 T
b. MRI Tesla sedang (Medium Field Tesla) memiliki kekuatan 0,5 – 1T
c. MRI Tesla rendah (Low Field Tesla) memiliki kekuatan di bawah 0,5 T.
Sebaiknya suatu rumah sakit memilih MRI yang memiliki tesla tinggi karena alat
tersebut dapat digunakan untuk tehnik Fast Scan yaitu suatu teknik yang
memungkinkan 1 gambar irisan penampang dibuat dalam hitungan detik, sehingga
kita dapat membuat banyak irisan penampang yang bervariasi dalam waktu yang
sangat singkat, dengan banyaknya variasi gambar membuat suatu lesi menjadi
menjadi lebih spesifik.
Ada beberapa kelebihan MRI dibandingkan dengan pemeriksaan CT Scan yaitu
[7]:
a. MRI lebih unggul untuk mendeteksi beberapa kelainan pada jaringan
lunak seperti otak, sumsum tulang serta muskuloskeletal.
b. Mampu memberi gambaran detail anatomi dengan lebih jelas.
c. Mampu melakukan pemeriksaan fungsional seperti pemeriksaan difusi,
perfusi dan spektroskopi yang tidak dapat dilakukan dengan CT Scan.
d. Mampu membuat gambaran potongan melintang, tegak, dan miring tanpa
merubah posisi pasien.
e. MRI tidak menggunakan radiasi pengion.
Alat MRI terlihat seperti gambar 2.4
10
Gambar 2.4 Alat MRI [7]
2.1.3. Pengolahan Citra Digital
Pengolahan citra adalah kegiatan memperbaiki kualitas citra agar mudah
diinterpretasi
oleh
manusia/mesin(komputer).
Inputannya
adalah
citra
dan
keluarannya juga citra tapi dengan kualitas lebih baik daripada citra masukan.
Proses pengolahan citra yang digunakan pada penelitian ini terdiri dari
proses scaling, grayscale, thresholding.
2.1.3.1.Scaling
Scaling atau Penskalaan citra adalah sebuah operasi geometri yang
memberikan efek memperbesar atau memperkecil ukuran citra input sesuai
dengan variabel penskalaan citranya. Scaling digunakan untuk memperbesar
(zoom-in) atau memperkecil (zoom-out) citra [6]. Rumus yang digunakan untuk
proses scaling terlihat seperti persamaan 2.1.
x = Sh x y = Sv y
(2.1)
Keterangan :
Sh : faktor skala horizontal
Sv : faktor skala vertikal
2.1.3.2.Grayscale
Citra grayscale merupakan citra digital yang hanya memiliki satu nilai
kanal pada setiap pixelnya, dengan kata lain nilai bagian RED = GREEN =
BLUE. Nilai tersebut digunakan untuk menunjukan tingkat intensitas. Warna yang
11
dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkatan kebuan disini
merupakan warna abu dengan berbagai dari hitam hingga mendekati putih. Citra
grayscale memiliki kedalaman warna 8 bit ( 256 kombinasi warna keabuan ) [6].
Rumus yang digunakan untuk grayscale terlihat seperti persamaan 2.2.
Grayscale = ( R + G + B) / 3
(2.2)
Keterangan :
R = Red (menyatakan warna merah)
G = Green (menyatakan warna hijau)
B = Blue (menyatakan warna biru)
2.1.3.3.Tresholding
Tresholding atau pengambangan membuat citra memiliki dua tingkat
keabuan yaitu hitam dan putih, proses pengambangan akan menghasilkan citra
biner [6]. Proses tresholding mengikuti aturan dari persamaan 2.3.
( , ) =
Keterangan :
1 ( , ) ≥
0 ( , ) <
(2.3)
g (x,y) : citra biner dari citra grayscale
T
: nilai ambang
2.2.Kecerdasan Buatan
Kecerdasan buatan ( Artificial Intelligence ) merupakan salah satu ilmu
komputer yang membuat agar mesin ( komputer ) dapat melakukan pekerjaan
seperti dan sebaik yang dilakukan oleh manusia [5]. Kecerdasan buatan
mempunyai dua bagian utama yang sangat dibutuhkan dalam melakukan aplikasi,
seperti terlihat pada gambar 2.5 komponen yang dibutuhkan adalah :
a. Basis Pengetahuan ( Knowledge Base ), berisi fakta-fakta, teori, pemikiran
dan hubungan antara satu dengan lainnya [5].
b. Motor Inferensi ( Inference Engine ), yaitu kemampuan menarik
kesimpulan berdasarkan pengalaman [5].
12
Gambar 2.5 Penerapan Kecerdasan Buatan [5]
Kecerdasan buatan terdiri dari beberapa kajian diantaranya adalah sistem pakar,
jaringan syaraf tiruan, computer vision, simulasi crowd, logika fuzzy, algoritma
genetika, dokumen minning.
2.2.1. Jaringan Syaraf Tiruan
Jaringan Syaraf Tiruan (neural network) adalah salah satu kajian pada
kecerdasan buatan. Jaringan syaraf tiruan adalah salah satu representasi buatan
dari otak manusia yang selalu mencoba untuk menstimulasikan proses
pembelajaran pada otak manusia tersebut [5]. Istilah buatan maksudnya adalah
jaringan syaraf yang diimplementasikan menggunakan program computer untuk
menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.
Komponen JST terdiri dari neuron – neuron dan neuron –neuron tersebut
saling berhubungan. Neuron – neuron tersebut akan mentransformasikan
informasi yang diterima melalui sambungan keluarnya menuju neuron – neuron
yang lain, pada JST hubungan neuron-neuron tersebut dikenal dengan nama bobot
[2]. Komponen JST seperti terlihar pada gambar 2.6 terdiri dari input ( informasi)
bobot ( nilai- nilai tertentu ), fungsi aktivasi berfungsi apabila input yang
dimasukan sesuai dengan nilai ambang ( threshold ) yang ditentukan jika tidak
sesuai maka fungsi aktivasi tidak diaktifkan, dan apabila neuron – neuron tersebut
diaktifkan maka neuron akan mengirimkan output melalui bobot – bobot.
13
Input dari
neuronneuron
yang lain
Output dari
percepton
yang lain
Gambar 2.6 Komponen Jaringan Syaraf Tiruan [5]
Jaringan Syaraf tiruan mempunyai dua macam proses pembelajaran yaitu
pembelajaran terawasi dan pembelajaran tidak terawasi. Pembelajaran terawasi
adalah jika output yang diharapkan telah diketahui sebelumnya, sedangkan
pembelajaran tidak terawasi adalah proses pembelajaran yang tidak memerlukan
target output [5].
1. Pembelajaran Terawasi ( Supervised Learning )
Metode pembelajaran pada jaringan syaraf disebut terawasi jika output yang
diharapkan telah diketahui sebelumnya. Pada proses pembelajaran, 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. Apabila terjadi
perbedaan antara pola output hasil pembelajaran dengan pola target, maka
disini akan muncul error. Apabila nilai error ini masih cukup besar,
mengindikasikan bahwa masih perlu dilakukan lebih banyak pembelajaran
lagi. Metode pembelajaran terawasi diantaranya Hebb Rule, Perceptron, Delta
Rule, Backpropagation, Learning Vektor Quantization, Heteroassociative
Memory.
2. Pembelajaran Tak Terawasi ( Unsupervised Learning )
Pada metode pembelajaran yang tak terawasi ini tidak memerlukan target
output. Pada metode ini, tidak dapat ditentukan hasil yang seperti apakah yang
diharapkan selama proses pembelajaran. Metode pembelajaran tidak terawasi
salah satunya adalah jaringan kohonen
14
2.2.2. Backpropagation
Backpropagation merupakan algoritma pembelajaran yang terawasi dan
biasanya digunakan oleh perceprton dengan banyak lapisan untuk mengubah
bobot-bobot yang terhubung dengan neuron-neuron yang ada pada lapisan
tersembunyinya. Algoritma backpropagation menggunakan error output untuk
mengubah nilai bobot-bobotnya dalam arah mundur ( backward ). Untuk
mendapatkan error ini, tahap perambatan maju ( forward ) harus dikerjakan
terlebih dahulu. Pada saat perambatan maju, neuron-neuron diaktifkan dengan
menggunakan fungsi aktivasi sigmoid, seperti terlihat pada rumus 2.4.
merupakan fungsi aktivasi sigmoid biner, yaitu [5] :
f ( x ) =
(2.4)
Arsitektur backpropagation terlihat seperti gambar 2.7, jaringan terdiri atas 3
unit (neuron) pada lapisan input yaitu x ,x , dan x ; 1 lapisan tersembunyi dengan
2 neuron, yaitu z dan z ; serta 1 unit pada lapisan output, yaitu y. bobot yang
menghubungkan x ,x , dan x dengan neuron pertama pada lapisan tersembunyi
adalah v v v ( v ∶ Bobot yang menghubungkan neuron input ke-i ke neuron
ke-j pada lapisan tersembunyi ). Bobot yang menghubungkan z dan z dengan
neuron pada lapisan output, adalah w dan w . Fungsi aktivasi yang digunakan
antara lapisan input dan lapisan tersembunyi, dan lapisan tersembunyi dengan
lapisan output adalah fungsi aktifasi sigmoid biner [5].
15
Gambar 2.7 Arsitektur jaringan backpropagation [2].
Algoritma backpropagation [5]:
Inisialisasi bobot (ambil bobot awal dengan nilai random).
Kerjakan langkah-langkah berikut selama kondisi berhenti bernilai FALSE:
1. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran,
kerjakan:
Feedforward:
a. Tiap-tiap unit input (Xi, i=1,2,3,...,n) menerima sinyal xi dan
meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di
atasnya (lapisan tersembunyi).
b. Tiap-tiap unit tersembunyi (Zi, j=1,2,3,...,p) menjumlahkan sinyalsinyal input terbobot:
n
z _ in j v 0 j
x ivij
( 2.5)
i 1
gunakan fungsi aktivasi untuk menghitung sinyal outputnya:
zj = f( z_in j )
( 2.6)
kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit
output).
c. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menjumlahkan sinyalsinyal input terbobot.
16
p
y _ in k w 0 k
z iw j k
(2.7)
i 1
gunakan fungsi aktivasi untuk menghitung sinyal outputnya:
yk = f(y_ink)
(2.8)
dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unitunit output).
Backpropagation
d. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menerima target pola yang
berhubungan dengan pola input pembelajaran, hitung informasi
errornya:
k = (tk – yk) f’(y_ink)
(2.9)
kemudian hitung koreksi bobot (yang nantinya akan digunakan
untuk memperbaiki nilai wjk):
wjk = k zj
(2.10)
hitung juga koreksi bias (yang nantinya akan digunakan untuk
memperbaiki nilai w0k):
w0k = k
(2.11)
kirimkan k ini ke unit-unit yang ada di lapisan bawahnya.
e. Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan delta
inputnya (dari unit-unit yang berada pada lapisan di atasnya):
_ in j
m
k w j k
(2.12)
k 1
kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk
menghitung informasi error:
j = _inj f’(z_inj)
(2.13)
kemudian hitung koreksi bobot (yang nantinya akan digunakan
untuk memperbaiki nilai vij):
vjk = j xi
(2.14)
hitung juga koreksi bias (yang nantinya akan digunakan untuk
memperbaiki nilai v0j):
17
v0j = j
(2.15)
f. Tiap-tiap unit output (Yk, k=1,2,3,...,m) memperbaiki bias dan
bobotnya (j=0,1,2,...,p):
wjk(baru) = wjk(lama) + wjk
(2.16)
Tiap-tiap unit tersembunyi (Z j, j=1,2,3,...,p) memperbaiki bias dan
bobotnya (i=0,1,2,...,n):
vij(baru) = vij(lama) + vij
(2.17)
2. Tes kondisi berhenti
Keterangan Rumus :
:
Bobot sinyal unit tersembunyi
:
Keluaran unit tersembunyi
:
Bobot sinyal lapisan keluaran
:
Keluaran unit keluaran
:
Kesalahan
Δ
:
Koreksi bobot unit keluaran
v
:
Bobot yang menghubungkan neuron input ke-i ke
_
_
neuron ke-j pada lapisan tersembunyi
Δ
:
Koreksi bobot unit tersembunyi
xi
:
Unit ( neuron ) pada lapisan input
n
:
Jumlah neuron (unit) pada lapisan input
v
:
Bobot awal masuk ke hidden
v0
:
Bobot bias yang menuju ke hidden
w
:
Bobot awal hidden ke output
w0
:
Bobot bias yang menuju ke output
α
:
Learning rate / rasio pembelajaran
2.3 Algoritma
Algoritma merupakan salah satu cabang ilmu komputer yang membahas
prosedur penyelesaian suatu permasalahan. Algoritma adalah urutan langkah
18
langkah dalam menentukan suatu masalah. Algortima adalah serangkaian urutan
langkah-langkah atau prosedur untuk menyelesaikan suatu masalah dengan
memproses nilai masukan menjadi nilai keluaran.
Dalam mempelajari algortima, kita diperlukan untuk dapat menganalis
algoritma dalam menentukan performansinya. Suatu Algoritma tidak saja harus
benar, tetapi juga harus efisien dengan menghitung nilai dari performansinya.
Setiap algortima memiliki nilai performansi yang berbeda-beda. Performansi
suatu Algoritma dapat diukur dengan menghitung nilai kompleksitas waktunya
dimana setiap langkahnya akan dihitung [8].
2.3.1
Kompleksitas Algoritma
Kompleksitas algoritma terdiri dari waktu dan ruang. Kompleksitas waktu
asimptotik merupakan waktu yang dibutuhkan suatu Algoritma menyelesaikan
tiap langkahnya. Setiap Algoritma memiliki kompleksitas waktu yang berbedabeda. Komplesitas waktu asimptotik diperlukan untuk menghitung performansi
suatu Algoritma. Untuk menghitung kompleksitas waktu asimptotik suatu
Algoritma digunakanlah notasi “O-Besar” (Big-O) yang merupakan notasi
kompleksitas waktu asimptotik. Definisi dari Big-O atau O(g(n)) adalah kumpulan
semua fungsi yang order of growth-nya lebih kecil atau sama dengan g(n),
sedangkan definisi dari order of growth adalah istilah yang dapat digunakan untuk
pola varian jumlah input dalam suatu pengujian algoritma [8]. Contoh :
(
1
2
∉ (
) ; 100 + 5 (
( − 1) (
) ; 0,0001
∉ (
) ;
)
)
+
+ 1 ∉
(
)
Perhitungan kompleksitas waktu asimptotik dengan menghitung nilai O-besar
dari setiap instruksi di dalam Algoritma dengan contoh dibawah ini, kemudian
diterapkan teorema O-Besar.
1. Pengisian nilai (assignment), perbandingan, operasi aritmetik, read, write
membutuhkan waktu O(1).
19
2.
Pengaksesan elemen larik atau memilih field tertentu dari sebuah record
membutuhkan waktu O(1).
O(1)
Read(x);
x:=x+a[k];
O(1)+ O(1)+O(1)= O(1)
Writeln(x);
O(1)
Kompleksitas waktu di atas adalah O(1), didapat dari
= O(1)+ O(1)+ O(1)
= O(max(1,1))+ O(1)
= O(1)+ O(1)
= O(max(1,1))
= O(1)
3. If c then s1 else s2. Membutuhkan waktu Tc + max(Ts1,Ts2).
read(x); O(1)
if x mod 2=0 then O(1)
begin
x:=x+1; O(1)
writeln(x);O(1)
end
else
writeln(x); O(1)
Kompleksitas waktu di atas adalah O(1), didapat dari
= O(1) + O(1) max (O(1)+ O(1), O(1))
= O(1) + max(O(1), O(1))
= O(1)
4. Kalang for. Kompleksitas waktu kalang for adalah jumlah pengulangan dikali
dengan kompleksitas waktu badan kalang.
For i=1 to n do
Jumlah:= jumlah +a[i];
O(n)
O(1)
Kompleksitas waktu di atas adalah O(n), didapat dari
= O(n) . O(1)
= O(n.1)
= O(n)
20
5. While c do s; dan repeat s until c; untuk kedua buah kalang, kompleksitas
waktunya adalah jumlah pengulangan dikali dengan waktu badan c dan s.
i:=2; O(1)
while i