Analisis Penggunaan Algoritma Kohonen Pada Jaringan Syaraf Tiruan Backpropagation Dalam Pengenalan Pola Penyakit Paru
ANALISIS PENGGUNAAN ALGORITMA KOHONEN PADA
JARINGAN SYARAF TIRUAN
BACKPROPAGATION
DALAM PENGENALAN POLA PENYAKIT PARU
T E S I S
ROSMELDA GINTING
117038032
PROGRAM STUDI S2 TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2013
(2)
ANALISIS PENGGUNAAN ALGORITMA KOHONEN PADA
JARINGAN SYARAF TIRUAN
BACKPROPAGATION
DALAM PENGENALAN POLA PENYAKIT PARU
TESIS
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Magister Teknik Informatika
ROSMELDA GINTING
117038032
PROGRAM STUDI S2 TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2013
(3)
PENGESAHA
NJudul Tesis : ANALISIS PENGGUNAAN ALGORITMA KOHONEN PADA JARINGAN SYARAF TIRUANBACKPROPAGATIONDALAM PENGENALAN POLA PENYAKIT PARU Kategori : TESIS
Nama Mahasiswa : ROSMELDA GINTING Nomor Induk Mahasiswa : 117038032
Program Studi : MAGISTER TEKNIK INFORMATIKA Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Menyetujui Komisi Pembimbing
Dr.Erna Budhiarti Nababan, M.IT Prof.Drs.Tulus,Vordipl.Math., M.Si.,Ph.D
Anggota Ketua
Diketahui/Disetujui oleh
Program Studi S2 Teknik Informatika Ketua,
Prof. Dr. Muhammad Zarlis NIP. 195707011986011003
(4)
PERNYATAAN ORISINALITAS
ANALISIS PENGGUNAAN ALGORITMA KOHONEN PADA
JARINGAN SYARAF TIRUAN
BACKPROPAGATION
DALAM PENGENALAN POLA PENYAKIT PARU
TESIS
Dengan ini saya nyatakan bahwa saya mengakui semua karya tesis ini adalah hasil kerja saya sendiri kecuali kutipan dan ringkasan yang tiap satunya telah dijelaskan sumbernya dengan benar.
Medan, 28 Agustus 2013
Rosmelda Ginting NIM. 117038032
(5)
PERNYATAAN PERSETUJUAN PUBLIKASI
KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di bawah ini :
Nama : Rosmelda Ginting
NIM : 117038032
Program Studi : Teknik Informatika Jenis Karya Ilmiah : Tesis
Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak Bebas Royalti Non-Eksklusif (Non-Exclusive Royalty Free Right)atas Tesis saya yang berjudul :
ANALISIS PENGGUNAAN ALGORITMA KOHONEN PADA
JARINGAN SYARAF TIRUAN BACKPROPAGATION
DALAM PENGENALAN POLA PENYAKIT PARU
Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk data-base, merawat dan mempublikasikan Tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan atau sebagai pemilik hak cipta.
Demikian pernyataan ini dibuat dengan sebenarnya.
Medan, 28 Agustus 2013
Rosmelda Ginting NIM. 117038032
(6)
Telah diuji pada
Tanggal : 28 Agustus 2013
PANITIA PENGUJI TESIS
KETUA
:
Prof. Drs. Tulus, Vordipl.Math.,M.Si., Ph.D
Anggota
:
1. Dr. Erna Budhiarti Nababan, M.IT
2. Prof. Dr. Opim Salim Sitompul
3. Prof. Dr. Muhammad Zarlis
4. Prof. Dr. Herman Mawengkang
(7)
RIWAYAT HIDUP
DATA PRIBADI
Nama lengkap berikut gelar : Rosmelda Ginting, S.Si
Tempat dan Tanggal Lahir : Tiga panah, 21 September 1977 Alamat Rumah : Jl. Pintu Air IV No.65 Kwala Bekala
Medan Johor–Medan
Telepon : +6285270002028
E-mail : rosmeldamunthe@yahoo.com
Instansi Tempat Bekerja : SMK Negeri 1 Lubuk Pakam Alamat Kantor : Jl. Galang Lubuk Pakam
DATA PENDIDIKAN
SD : SD Negeri 040528–Suka dame Tamat : 1990
SMP : SMP Negeri Tiga panah Tamat : 1993
SMA : SMA Negeri 1 Tiga panah Tamat : 1996
S1 : UKRIM–Yogyakarta Tamat : 2001
(8)
UCAPAN TERIMA KASIH
Pertama-tama penulis panjatkan puji syukur kehadirat Tuhan Yang Maha Esa, atas segala rahmat dan karunia-Nya, penulis dapat menyelesaikan tesis ini dengan baik. Tesis penulis yang berjudul : “Analisis Penggunaan Algoritma Kohonen Pada Jaringan Syaraf Tiruan Backpropagation Dalam Pengenalan Pola Penyakit Paru” merupakan salah satu syarat akademik penulis sebagai mahasiswa S2, program studi Teknik Informatika, Fakultas Ilmu Komputer dan Teknologi Informasi (Fasilkom-TI), Universitas Sumatera Utara (USU), Medan dalam menyelesaikan jenjang pendidikan S2.
Dengan selesainya tesis ini, perkenankanlah saya mengucapkan terima kasih yang sebesar-besarnya kepada :
Rektor Universitas Sumatera Utara, Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM), Sp.A(K) atas kesempatan yang diberikan kepada saya untuk mengikuti dan menyelesaikan pendidikan Program Magister.
Dekan Fakultas Ilmu Komputer Universitas Sumatera Utara sekaligus Ketua Program Studi Magister (S2) Teknik Informatika, Prof. Dr. Muhammad Zarlis dan Sekretaris Program Studi Magister (S2) Teknik Informatika, M. Andri Budiman, S.T,M.Com, M.E.M beserta seluruh staf pengajar yang telah banyak memberikan ilmu pengetahuan selama masa perkuliahan serta seluruh staff pegawai pada Program Studi S2 Teknik Informatika Universitas Sumatera Utara.
Prof. Dr. Tulus, selaku pembimbing utama yang telah banyak memberikan bimbingan dan arahan serta motivasi kepada penulis. Dan Dr. Erna Budhiarti Nababan, M.IT, selaku pembimbing kedua yang telah banyak memberikan bimbingan dan arahan serta motivasi kepada penulis.
Prof. Dr. Muhammad Zarlis, Prof. Dr. Opim Sitompul dan Prof. Dr. Herman Mawengkang selaku pembanding yang telah banyak memberikan kritikan serta saran kepada penulis.
(9)
Teristimewa kepada Suamiku Tercinta Harapenta Purba, dan kedua anakku tersayang Ekky dan Gaby yang telah memberikan perhatian, pengertian, kasih sayang dan motivasi kepada penulis dan terimakasih juga kepada kedua Orang Tuaku (Alm) T. Ginting dan L. Br. Sitepu yang telah memberikan pendidikan penulis sampai S1 sehinga dapat dilanjutkan ke S2, dan juga kedua mertuaku N. Purba dan (Alm) R. Br. Ginting serta seluruh keluarga besar Ginting-Purba yang telah memberikan doa dan dukungan. Ucapan terimaksih juga penulis ucapkan kepada sahabat-sahabat seperjuangan angkatan 2011 Program Studi S2 Teknik Informatika, yang telah memberikan semangat kepada penulis. Dan juga KepSek SMK N.1 Lubuk Pakam Drs.Kiniken,M.Pd dan semua Guru dan Staff SMK N.1 Lubuk Pakam khususnya Sulistiani,ST, AtikaAzzakamal,S.Pd, dan Dwi Kartika,S.Psi, yang telah memberikan motivasi dan dukungan kepada penulis.
Akhir kata penulis hanya berdoa kepada Tuhan Yang Maha Esa semoga Tuhan memberikan limpahan karunia kepada semua pihak yang telah memberikan bantuan, perhatian, serta kerjasamanya kepada penulis dalam menyelesaikan tesis ini.
Medan, 28 Agustus 2013
ROSMELDA GINTING NIM. 117038032
(10)
ABSTRAK
Dalam penelitian ini penulis menggunakan algoritma Kohonen pada Jaringan Syaraf Tiruan Backpropagation dalam pengenalan pola penyakit paru dalam mempercepat proses pembelajaran (training) yang signifikan dan klasifikasi yang akurat dalam mengenali pola suatu penyakit. Algoritma Backpropagation merupakan salah satu algoritma pembelajaransupervised learning, yaitu pembelajaran yang membutuhkan pengawasan dalam proses pembelajarannya. Pada supervised learning terdapat pasangan data input dan output yang dipakai untuk melatih Jaringan Syaraf Tiruan hingga diperoleh bobot penimbang (weight) yang diinginkan. Dalam penelitian ini, dalam pengenalan pola penyakit paru yaitu: Pneumonia dan TBC Paru-paru. Penulis menggunakan 2 data input yang sama dan data yang satu dilatih menggunakan algoritma backpropagation dimana pembobotannya secara random dan data yang kedua dilatih menggunakan algoritma backpropagation tapi pembobotannya menggunakan algoritma Kohonen. Dari hasil penelitian yang penulis lakukan, dengan pembobotan menggunakan kohonen dan dilatih dengan algoritma backpropagationternyata dapat mempercepat proses pembelajaran (training) dalam mengenali suatu pola penyakit paru.
Kata Kunci : Penyakit Paru, Jaringan Syaraf Tiruan, Backpropagation, Kohonen (SOM)
(11)
KOHONEN ALGORITHM ANALYSIS ON THE USE OF NEURAL NETWORK BACKPROPAGATION FOR PATTERN RECOGNITION
OF PULMONARYDISEASE
ABSTRACT
In this study, the research eruses the Kohonen algorithm in neural network backpropagation for pattern recognition of pulmonary disease to increase the process of learning (training) for a significantandaccurate classification in recognizing patterns of a disease. Backpropagation algorithm is a supervised learning algorithm, a kind of learning that requires supervision in the learning process. In supervised learning, there are input and output data that are used totrain theartificial neural networkin obtaining the desired weight. In this study, for the pattern recognition of pulmonary disease: Pneumonia and Lung TBC, the researcher uses the same two input data. The first data is train edusing backpropagation algorithm with random weight and the second data is train educing backpropagation algorithm with Kohonen algorithm weight. From the results of research, using Kohonen algorithm weight and training with backpropagation algorithm are able to accelerate the process of learning (training) in recognizing a pattern of pulmonary disease compared to using backpropagation neural network only.
Keywords: Pulmonary Disease, Neural Network, Backpropagation, Kohonen(SOM)
(12)
DAFTAR ISI
COVER i
LEMBAR PENGESAHAN ii
LEMBAR PERNYATAAN ORISINALITAS iii
LEMBAR PERSETUJUAN PUBLIKASI iv
LEMBAR PANITIA PENGUJI TESIS v
LEMBAR RIWAYAT HIDUP vi
LEMBAR UCAPAN TERIMA KASIH vii
LEMBAR ABSTRAK ix
LEMBAR ABSTRACT x
DAFTAR ISI xi
DAFTAR TABEL xiv
DAFTAR GAMBAR xv
BAB I PENDAHULUAAN 1
1.1 Latar Belakang Masalah 1
1.2 Perumusan Masalah 2
1.3 Batasan Masalah 3
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
BAB II LANDASAN TEORI 5
2.1 Jaringan Syarat Tiruan 5
2.2.1 Fungsi Aktivasi 6
2.2.2Multi layer perceptron 7
2.2 AlgoritmaBackpropagation 9
2.2.1 Fase Propagasi Maju 10
2.2.2 Fase Propagasi Mundur 10
2.2.3 Fase Modifikasi Bobot 10
2.2.4 Prosedur Pelatihan 11
2.3 Algoritma Kohonen 15
(13)
2.5 Teori Penunjang Tentang Penyakit Paru 17
2.6 SmoothingGrafik 21
2.7 RisetTerkait 21
2.8 Perbedaan dengan Riset lain 23
2.9 Kontribusi Riset 23
BAB III METODELOGI PENELITIAN 24
3.1 Pendahuluan 24
3.2 Proses Penelitian 24
3.2.1 Data yang Digunakan 24
3.2.2 Data Target/Output 31
3.2.3 Pelatihan Data 31
3.2.4 Pengujian Data 32
3.3 Analisis Data 33
3.3.1 Arsitektur Jaringan Syaraf Tiruan 33 3.3.2 Perancangan Skema Sistem 37
3.3.3 AlgoritmaBackpropagation 37
3.3.4 Algoritma Kohonen 39
BAB IV HASIL DAN PEMBAHASAN 42
4.1 Pendahuluan 42
4.2 HasilAnalisa 42
4.2.1 Pembobotan Awal 42
4.2.2 Pengisian Nilai Bias 45
4.2.3 InputData 45
4.2.4 TrainingData 46
4.2.5 Pengujian Data 47
4.3 Pembahasan dan Hasil 48
4.3.1 Analisis Pengaruh Bobot dan Bias Untuk Pengenalan Pola 48
4.3.1.1 Pengaruh Bobot 48
4.3.1.2 Pengaruh Bias 49
4.3.2 Pengujian Terhadap Program 49
(14)
4.3.2.2 Pengujian dengan algoritma Kohonen pada JST
Backpropagation 51
4.3.2.3 Hasil Pengujian Penggabungan Algoritma
Backpropagationdengan Algoritma Kohonen pada
JSTBackpropagation 53
BAB V KESIMPULAN DAN SARAN 58
5.1 Kesimpulan 58
5.2 Saran 58
(15)
DAFTAR TABEL Nomor Tabel Judul Halaman 2.1 3.1 3.2 3.3 3.4 3.5 3.6 3.7 4.1 4.2 Riset Terkait
Penilaian Kriteria Identitas Pasien Berdasarkan Umur dan Jenis Kelamin
Penilaian Kriteria Identitas Pasien Berdasarkan Kanker TBC
Penilaian Kriteria Identitas Pasien Berdasarkan Pneumonia
Penilaian Kriteria Identitas Pasien Berdasarkan Lingkungan dan Kebiasaan
Persentasi Bobot Data Target
Data untuk Pelatihan dan Data Target
Tabel Perbandingan NilaiErrorPada Algoritma
Backpropagation dan Algoritma Kohonen Dengan Bobot Awal : 0.5
Tabel Perbandingan NilaiErrorPada Algoritma
Backpropagationdan Algoritma Kohonen Dengan Bobot Awal : -0.5
22 26 27 28 29 30 31 31 56 57
(16)
DAFTAR GAMBAR
Nomor Gambar
Judul Halaman
2.1 Node Sederhana 5
2.2 Fungsi Linear 6
2.3 FungsiTheshold 6
2.4 FungsiPiecewise Linear 7
2.5 Fungsi Sigmoid 7
2.6 Multi Layer Perceptron 8
2.7 Paru manusia 17
3.1 3.2 3.3 3.4 3.5 3.6 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 Skema sistem
Langkah-langkah Pelatihan JST Pelatihan Data
PolaOutputPengujian Data
Arsitektur Jaringan Syaraf Tiruan Pengenalan Pola Perancangan Skema Sistem
Program saat dilakukan Pembobotan
Program saat dilakukan Pengisian Nilai Bias Program saat dilakukanInputData
Program saat dilakukan Pelatihan PolaOutputPelatihan
Hasil Pengujian dengan AlgoritmaBackpropagation Hasil Pengujian dengan AlgoritmaBackpropagation dalam bentuk grafik
Hasil Percobaan dengan Algoritma Kohonen Hasil Percobaan dengan Algoritma Kohonen dalam Bentuk Grafik
Hasil Percobaan dengan Penggabungan Algoritma Kohonen dengan AlgoritmaBackpropagation
25 30 32 33 34 37 44 45 46 47 48 50 51 52 52 54
(17)
ABSTRAK
Dalam penelitian ini penulis menggunakan algoritma Kohonen pada Jaringan Syaraf Tiruan Backpropagation dalam pengenalan pola penyakit paru dalam mempercepat proses pembelajaran (training) yang signifikan dan klasifikasi yang akurat dalam mengenali pola suatu penyakit. Algoritma Backpropagation merupakan salah satu algoritma pembelajaransupervised learning, yaitu pembelajaran yang membutuhkan pengawasan dalam proses pembelajarannya. Pada supervised learning terdapat pasangan data input dan output yang dipakai untuk melatih Jaringan Syaraf Tiruan hingga diperoleh bobot penimbang (weight) yang diinginkan. Dalam penelitian ini, dalam pengenalan pola penyakit paru yaitu: Pneumonia dan TBC Paru-paru. Penulis menggunakan 2 data input yang sama dan data yang satu dilatih menggunakan algoritma backpropagation dimana pembobotannya secara random dan data yang kedua dilatih menggunakan algoritma backpropagation tapi pembobotannya menggunakan algoritma Kohonen. Dari hasil penelitian yang penulis lakukan, dengan pembobotan menggunakan kohonen dan dilatih dengan algoritma backpropagationternyata dapat mempercepat proses pembelajaran (training) dalam mengenali suatu pola penyakit paru.
Kata Kunci : Penyakit Paru, Jaringan Syaraf Tiruan, Backpropagation, Kohonen (SOM)
(18)
KOHONEN ALGORITHM ANALYSIS ON THE USE OF NEURAL NETWORK BACKPROPAGATION FOR PATTERN RECOGNITION
OF PULMONARYDISEASE
ABSTRACT
In this study, the research eruses the Kohonen algorithm in neural network backpropagation for pattern recognition of pulmonary disease to increase the process of learning (training) for a significantandaccurate classification in recognizing patterns of a disease. Backpropagation algorithm is a supervised learning algorithm, a kind of learning that requires supervision in the learning process. In supervised learning, there are input and output data that are used totrain theartificial neural networkin obtaining the desired weight. In this study, for the pattern recognition of pulmonary disease: Pneumonia and Lung TBC, the researcher uses the same two input data. The first data is train edusing backpropagation algorithm with random weight and the second data is train educing backpropagation algorithm with Kohonen algorithm weight. From the results of research, using Kohonen algorithm weight and training with backpropagation algorithm are able to accelerate the process of learning (training) in recognizing a pattern of pulmonary disease compared to using backpropagation neural network only.
Keywords: Pulmonary Disease, Neural Network, Backpropagation, Kohonen(SOM)
(19)
BAB 1
PENDAHULUAN
1.1 Latar Belakang Masalah
Seiring dengan perkembangan zaman banyak perubahan teknologi dan informasi yang mengalami kemajuan yang pesat. Peranan komputer sangat penting untuk membantu pekerjaan manusia sehari-hari dalam segala aspek bidang. Pemakai mulanya menggunakan komputer sebagai mesin ketik yang dapat bekerja lebih cepat, tepat maupun otomatis. Sejalan dengan perkembangan saat ini, para ahli mencoba menggantikan komputer menjadi suatu alat bantu yang dapat meniru cara kerja otak manusia, sehingga diharapkan suatu saat akan tercipta komputer yang dapat menimbang dan mengambil keputusan sendiri. Hal inilah yang mendorong lahirnya teknologiAI (Artificial Intelligence).
Salah satu teknik komputasi yang dikelompokkan dalam AI adalah jaringan syaraf tiruan (Artificial Neural Network). Jaringan syaraf tiruan merupakan salah satu sistem pemrosesan yang dirancang dan dilatih untuk memiliki kemampuan seperti yang dimiliki oleh manusia dalam menyelesaikan persoalan yang rumit dengan melakukan proses belajar melalui perubahan bobot sinapsisnya. Jaringan syaraf mensimulasi struktur proses-proses otak (fungsi syaraf biologis) dan kemudian membawanya kepada perangkat lunak kelas baru yang dapat mengenali pola-pola yang kompleks serta belajar dari pengalaman-pengalaman masa lalu.
Jaringan saraf tiruan Self Organizing Maps (SOM) atau disebut juga dengan jaringan Kohonen telah banyak dimanfaatkan untuk pengenalan pola baik berupa pola penyakit, citra, suara, dan lain-lain. Jaringan SOM sering pula digunakan untuk ekstraksi ciri (feature) pada proses awal pengenalan pola. Ia mampu mereduksi dimensi input pola ke jumlah yang lebih sedikit sehingga pemrosesan komputer menjadi lebih hemat.
(20)
Beberapa penelitian telah melakukan penelitian tentang pengenalan pola, diantaranya, penelitian yang dilakukan oleh beberapa peneliti berikut ini; Wahyono (2009), melakukan penelitian tentang pelatihan dan pengujian data pola dan didapatkan bahwa ternyata algoritma perceptron pun bisa digunakan dalam pengenalan huruf yang masuk dalam ruang lingkup pengklasifikasian pola ; Setyo Nugroho (2005), melakukan penelitian tentang Algoritma Quickprop dan metode active learning dapat meningkatkan kecepatan training ; Ang Wie Siong dan Resmana (1999), melakukan penelitian tentang Jaringan saraf tiruan ini mampu mengenali citra bernoise, namun kurang dapat menangani pergeseran citra. Pada input citra dengan pengecilan sekaligus pergeseran, justru jaringan dapat lebih mengenali ; Sri Kusumadewi (2008), melakukan penelitian tentang Metode Backpropagation dapat digunakan untuk melakukan pendeteksian suatu jenis penyakit, gangguan, maupun kasus yang memiliki data masa lalu, dan dengan menggunakan metode Backpropagation , target output yang diinginkan lebih mendekati ketepatan dalam malakukan pengujian, karena terjadi penyesuaian nilai bobot dan bias yang semakin baik pada proses pelatihan(training).
Berdasarkan penelitian yang ada tersebut, penulis mencoba untuk melakukan penelitian menggunakan algoritma Kohonen yang meneliti tentang apakah algoritma Kohonen pada jaringan syaraf tiruan backpropagation dapat mempercepat mengenali pola suatu penyakit.
Penggunaan algoritma Kohonen pada jaringan syaraf tiruan backpropagation diharapkan dapat menghasilkan hasil yang jauh lebih baik pada proses pelatihan (traning) yang dapat mempercepat dalam pengenalan pola suatu penyakit.
1.2 Perumusan Masalah
Perumusan masalah yang dapat ditarik dari penjelasan latar belakang dibuatnya pengenalan pola, yaitu :
• Bagaimana algoritma Kohonen pada jaringan syaraf tiruanbackpropagation dapat mempercepat mengenali pola suatu penyakit.
• Sejauh mana penggunaan algoritma kohonen pada Jaringan Syaraf Tiruan backpropagation mampu mengenali suatu pola penyakit.
(21)
1.3 Batasan Masalah
Rumusan masalah diatas, dibatasi dengan beberapa hal sebagai berikut :
1. Mempercepat proses pembelajaran (training) dalam mengenali pola suatu jenis penyakit Paru yaitu pada Pneumonia dan TBC Paru;
2. Algoritma yang digunakan dalam pengenalan pola adalah algoritma Backpropagationdan algoritma Kohonen;
3. Aplikasi yang akan digunakan: bahasa pemrograman Visual Basic 2010.
1.4 Tujuan Penelitian
Adapun tujuan penelitian ini adalah menganalisa algoritma kohonen pada Jaringan syaraf tiruan backpropagation untuk mempercepat proses pembelajaran (training) yang signifikan dan klasifikasi yang akurat dalam mengenali pola suatu penyakit.
1.5 Manfaat Penelitian
Manfaat yang diharapkan dari hasil penelitian ini adalah sebagai berikut :
1. Dapat mengetahui sejauh mana penggunaan algoritma kohonen pada Jaringan Syaraf Tiruan Backpropagationmampu mengenali suatu pola penyakit. 2. Dapat mengaplikasikan algoritma Kohonen pada algoritma backpropagation
dalam pengenalan pola.
3. Dapat mengetahui lebih dalam tentang JST backpropagation dan algoritma Kohonen.
(22)
BAB 2
LANDASAN TEORI
2.1 Jaringan Syaraf Tiruan
Jaringan saraf tiruan merupakan salah satu representasi buatan dari otak manusia yang mencoba untuk mensimulasikan proses pembelajaran pada otak manusia dengan menggunakan program komputer yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.
Adapun beberapa aplikasi Jaringan Syaraf Tiruan ( ANN ) adalah sebagai berikut :
1. Pengenalan pola
Jaringan syaraf tiruan sangat cocok digunakan untuk mengenali pola, misalnya mengenali pola huruf, angka, sidik jari atau bahkan penyakit. Hal ini mirip dengan cara kerja otak manusia ketika membedakan dan mengenali perubahan wajah setiap orang yang pernah dilihatnya.
2.Signal Processing
Mengenali pola suatu signal atau noise dalam suatu perubahan nada suara misalnya. Secara sederhana Jaringan syaraf tiruan terdiri dari module yang saling keterkaitan secara sederhana yang disebut juga dengan Neuron dimana analogi dari syaraf biologi pada otak.
(23)
Gambar 2.1 memperlihatkan bahwa Neural Network terdiri dari satuan-satuan pemroses berupa neuron. Y sebagai output menerima input dari x1, x2, x3,…….xn
dengan bobot W1, W2, W3,……..Wn. Hasil penjumlahan seluruh impuls neuron
dibandingkan dengan nilai ambang tertentu melalui fungsi aktivasi f setiap neuron.
2.1.1 Fungsi Aktivasi
Fungsi aktivasi adalah salah satu parameter yang terpenting dalam jaringan syaraf tiruan. fungsi ini tidak hanya menentukan keputusan garis, disamping nilai fungsi aktivasi juga menunjukkan total signal dari node. Oleh karena pemilihan fungsi aktivasi tidak dapat secara sembarangan dipilih sebab sangat besar berdampak pada performan jaringan syaraf tiruan.
Ada beberapa fungsi aktivasi yang sering digunakan dalam syaraf tiruan, antara lain :
a. Fungsi Linear
Fungsi linear (ditunjukkan oleh gambar 2.2) menyiapkan output tang seimbang untuk total bobotoutput.
y = f(x) = x (2.1)
Gambar 2.2 Fungsi Linear b. FungsiThreshold
Fungsi threshold memetakan bobot input dengan nilai biner [0,1] seperti yang ditunjukkan dengan gambar 2.3 dimana :
Y
1
X 0
-1
-1
(24)
y=f(x)= 1 0
0 < 0 (2.2)
Gambar 2.3 FungsiTheshold
c. FungsiPiecewise Linear
Fungsi piecewise linear dapat juga ruang lingkup biner atau bipolar untuk batas saturasioutput.fungsioutputdapat ditulis sebagai berikut :
= ( ) =
0.5 < 0.5
0.5 0.5
0.5 > 0.5
(2.3)
Gambar 2.4 FungsiPiecewise Linear
d. FungsiSigmoid
Ini type fungsi aktivasi yang mempunyai Garis S-shaped dan bentuk distribusi perubahansigmois inputdimana mempunyai nilai interval [-∞, ∞]
= ( ) = (2.4)
Y 1
X 0
(25)
Gambar 2.5 Fungsi sigmoid
2.1.2 Multi Layer Perceptron
MLP juga dikenal setaraMultilayer Feedforward Neural Network (MLFNN) adalah salah satu yang paling terkenal dan banyak digunakan sebagai type model ANN oleh karena arsitektur dan perbandingan algoritma yang sederhana (Popescu et al., 2009). Dapat juga digunakan sebagai fungsi pembangkit secara menyeluruh, bahkan cocok digunakan untuk jenis aplikasi yang besar.
Gambar 2.6Multi layer Perceptron (Popescu et al., 2009)
Multi layer perceptron tersusun oleh seperangkat sensor moder yang dikelompokkan dalam tiga tingkatan lapisan yang terdiri dari lapisan modul masukan, satu atau lebih perantara atau lapisan tersembunyi dari modul perhitungan dan lapisan keluaran modul yang mengkalkulasikan keluaran dari jaringan. semua
(26)
lapisan berurutan terhubung secara lengkap. hubungan antara modul berbatasan lapisan relay sinyal keluaran dari satu lapisan ke berikutnya. Sebagai contoh, gambar diatas mempunyai 4 vektor dimensi, diikuti oleh 3 lapisan tersembunyi dan yang terakhir lapisan keluaran dimana terdiri dari 1 modul. jaringan ANN disebut dengan sebagai jaringan 4-3-1.
Jaringan saraf tiruan juga memiliki sejumlah besar kelebihan dibandingkan dengan metoda perhitungan lainnya (sistem pakar, statistik, dll), yaitu :
1. kemampuan mengakuisisi pengetahuan walaupun dalam kondisi adanya gangguan dan ketidakpastian. Hal ini dikarenakan JST mampu melakukan generalisasi, abstraksi, dan ekstrasi terhadap properti statistik dari data. 2. Kemampuan merepresentasikan pengetahuan secara fleksibel. JST dapat
menciptakan sendiri representasi melalui pengaturan diri sendiri atau kemampuan belajar(self organizing).
3. Kemampuan mentolerir suatu distorsi (error/fault ). Dimana gangguan kecil pada data dapat dianggap hanyanoise(guncangan) belaka.
4. Kemampuan memproses pengetahuan secara efisien karena memakai sistem paralel, maka waktu yang diperlukan untuk mengoperasikannya menjadi lebih singkat.
5. Kemampuan untuk memperoleh pengetahuan melalui pembelajaran dari pengalaman.
Walaupun dengan segudang kelebihan yang dimiliki, jaringan saraf tiruan tetap mempunyai sejumlah keterbatasan. Misal : Kekurangmampuannya dalam melakukan operasi-operasi numerik dengan presisi tinggi, operasi algoritma aritmatik, operasi logika, dan operasi simbolis serta lamanya proses pelatihan yang kadang-kadang membutuhkan waktu berhari-hari untuk jumlah data yang besar. Hal itu terjadi karena sulitnya mengukur performansi sebenarnya dari jaringan saraf tiruan itu sendiri.
Saat ini implementasi jaringan saraf tiruan sudah cukup luas digunakan mulai dari teknologi militer, satelit ruang angkasa, bisnis dan kesehatan.
(27)
2.2 AlgoritmaBackpropagation
Algoritma pelatihan Backpropagation Neural Network (BPNN) pertama kali dirumuskan oleh Werbos dan dipopulerkan oleh Rumelhart & Mc.Clelland. Pada supervised learning terdapat pasangan data input dan output yang dipakai untuk melatih JST hingga diperoleh bobot penimbang(weight)yang diinginkan.
Pelatihan Backpropagation meliputi 3 fase:
i) fase propagsi maju (feedforward) pola pelatihan masukan. Pola masukan dihitung maju mulai dari layer masukan hingga layer keluaran dengan fungsi aktivasi yang ditentukan;
ii) fase propasi mundur(backpropagation)darierroryang terkait. Selisih antara keluaran dan target merupakan kesalahn yang terjadi. Kesalahan tersebut dipropagasi mundur, dimulai dari garis yang berhubungan langsung dengan unit-unit dilayar keluaran;
iii) fase modifikasi bobot.
Ketiga tahapan tersebut diulangi terus-menerus sampai mendapatkan nilai erroryang diinginkan. Setelahtrainingselesai dilakukan, hanya tahap pertama yang diperlukan untuk memanfaatkan jaringan syaraf tiruan tersebut. Kemudian, dilakukan pengujian terhadap jaringan yang telah dilatih. Pembelajaran algoritma jaringan syaraf membutuhkan perambatan maju dan diikuti dengan perambatan mundur.
2.2.1 Fase Propagasi Maju
Selama propagasi maju, sinyal masukan (x1) dipropagasikan ke layer tersembunyi
menggunakan fungsi aktivasi yang ditentukan. Keluaran dari unit tersembuyi (Z1)
tersebut selanjutnya dipropagasi maju lagi ke layer tersembunyi berikutnya dengan fungsi aktivasi yang telah ditentukan. Dan seterusnya hingga menghasilkan keluaran jaringan (yk).
Berikutnya, keluaran jaringan (yk) dibandingkan dengan target yang harus dicapai
(tk). Selisih (tk-yk)adalah kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari
(28)
besar dari batas toleransi, maka bobot setiap garis dari jaringan akan dimodifikasi untuk mengurangi kesalahan.
2.2.2 Fase Propagasi Mundur Berdasarkan kesalahan t
k – yk dihitung faktor δk (k= 1, ..., m) yang dipakai untuk
mendistribusikan kesalahan di unit Y
k ke semua unit tersembunyi yang terhubung
langsung dengan Y
k. δkjuga dipakai untuk mengubah bobot garis yang berhubungan
langsung dengan unit keluaran.
Dengan cara yang sama, dihitung faktor δ
jdi setiap layer tersembunyi sebagai dasar
perubahan bobot semua garis yang berasal dari unit tersembunyi di layer di bawahnya. Dan seterusnya hingga semua faktor δ di unit tersembunyi yang terhubung langsung dengan unit masukan dihitung.
2.2.3 Fase Modifikasi Bobot
Setelah semua faktor δ dihitung, bobot semua garis dimodifikasi bersamaan. Perubahan bobot suatu garis didasarkan atas faktor δ neuron di layer atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke layer keluaran didasarkan atas yang ada di unit keluaran
Ketiga fase tersebut diulang-ulang hingga kondisi penghentian dipenuhi. Umumnya kondisi penghentian yang sering dipakai adalah jumlah interasi atau kesalahan. Iterasi akan dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan yang terjadi sudah lebih kecil dari batas toleransi yang ditetapkan.
2.2.4 Prosedur Pelatihan
Seperti halnya jaringan syaraf yang lain, pada jaringan feedfoward (umpan maju) pelatihan dilakukan dalam rangka perhitungan bobot sehingga pada akhir pelatihan akan diperoleh bobot-bobot yang baik. Selama proses pelatihan, bobot-bobot diatur secara iteratif untuk meminimumkan error (kesalahan) yang terjadi. Error (kesalahan) dihitung berdasarkan rata-rata kuadrat kesalahan (MSE). Rata-rata kuadrat kesalahan juga dijadikan dasar perhitungan unjuk kerja fungsi aktivasi.
(29)
Sebagian besar pelatihan untuk jaringan feedfoward (umpan maju) menggunakan gradien dari fungsi aktivasi untuk menentukan bagaimana mengatur bobot-bobot dalam rangka meminimumkan kinerja. Gradien ini ditentukan dengan menggunakan suatu teknik yang disebut backpropagation.
Pada dasarnya, algoritma pelatihan standar backpropagation akan menggerakkan bobot dengan arah gradien negatif. Prinsip dasar dari algoritma backpropagation adalah memperbaiki bobot-bobot jaringan dengan arah yang membuat fungsi aktivasi menjadi turun dengan cepat.
Langkah-langkah yang dilakukan pada prosedur pelatihan adalah:
Langkah 0 : Inisialisasi bobot keterhubungan antara neuron dengan menggunakan bilangan acak kecil (-0.5 sampai +0.5).
Langkah 1 : Kerjakan langkah 2 sampai langkah 9 selama kondisi berhenti yang ditentukan tidak dipenuhi.
Langkah 2 : Kerjakan langkah 3 sampai langkah 8 untuk setiap pasangan pelatihan.
Propagasi maju
Langkah 3 : Setiap unit masukan (xi, i = 1,…., n) menerima sinyal masukan xi,
dan menyebarkannya ke seluruh unit pada lapisan tersembunyi Langkah 4 : Setiap unit tersembunyi (xi, I = 1,…….,p) jumlahkan bobot sinyal
masukannya :
(2.5)
voj = bias pada unit tersembunyi j aplikasikan fungsi aktivasinya
untuk menghilangkan sinyal keluarannya, zj = f (z_inj), dan
kirimkan sinyal ini keseluruh unit pada lapisan diatasnya (unit keluaran)
Langkah 5 : tiap unit keluaran (yk, k = 1,…….m) jumlahkan bobot sinyal masukannya : (2.6)
∑
= + = n i ij i jj vo xv
in z 1 _
∑
= + = p j jk j kk wo z w
in y
1
(30)
wok= bias pada unit keluaran k dan aplikasikan fungsi aktivasinya
untuk menghitung sinyal keluarannya,yk= f(y_ink) Propagasi balik
Langkah 6 : tiap unit keluaran (yk, k = 1,…..,m) menerima pola target yang saling berhubungan pada masukan pola pelatihan, hitung kesalahan informasinya,
(2.7) hitung koreksi bobotnya (digunakan untuk mempengaruhi wjk nantinya),
(2.8)
hitung koreksi biasnya (digunakan untuk mempengaruhi wok nantinya)
(2.9) dan kirimkan δkke unit-unit pada lapisan dibawahnya,
Langkah 7 : Setiap unit lapisan tersembunyi (zj, j = 1,…..p) jumlah hasil perubahan masukannya (dari unit-unit lapisan diatasnya),
(2.10)
kalikan dengan turunan fungsi aktivasinya untuk menghitung informasi kesalahannya,
(2.11)
(2.12)
hitung koreksi bias
(2.13) Langkah 8 : Update bobot dan bias pada hubungan antar lapisan
(2.14) (2.15)
Langkah 9 : Tes kondisi terhenti ) _ ( ' )
( k k k
k = t −y f y in
δ
j k
jk z
w =αδ
∆
k k
wo =αδ
∆
∑
==
m k jk k jw
in
1_
δ
δ
) _ ( '_ j j
j δ in f z in
δ =
i j
ij x
v =αδ
∆
j j
vo = αδ
∆
jk jk
jk baru w lama w
w ( )= ( )+∆ ij ij
ij baru v lama v
(31)
Backpropagation secara garis besar terdiri dari dua fase, fase maju dan fase mundur. Selama fase maju algoritma ini memetakan nilai masukan untuk mendapatkan keluaran yang diharapkan. untuk menghasilkan keluaran pola maka didapatkan dari rekapitulasi bobot masukan dan dipetakan untuk fungsi aktivasi jaringan. keluaran dapat dihitung sebagai berikut :
= (2.16)
di mana,
. = ( ) + (2.17)
dimana,
oj :inputdari j unit
wij : bobot yang dihubungkan dari unit i ke unit j
anet,j : jaringan keluaran untuk j unit θj : bias untuk j unit
Di dalam fase mundur, pola keluaran (aktualoutput) kemudian dibandingkan dengan keluaran yang dikehendaki dan sinyal error dihitung untuk masing–masingoutput. Sinyal-sinyal kemudian merambat mundur dari lapisanoutputke masing-masing unit dalam lapisan lapisan transisi memberikan kontribusi langsung ke output, dan bobot disesuaikan iterasi selama proses pembelajaran, kemudian error diperkecil selama descent direction. fungsierrorpadaoutputneuron digambarkan sebagai berikut :
= ( ) (2.18)
dimana,
n : angka pada modul keluaran didalam lapisanoutput tk : keluaran yang dikendaki dari keluaran unit k
ok : keluaran jaringan dari keluaran unit k
Parameter α merupakan laju pemahaman yang menentukan kecepatan iterasi. Nilai
α terletak antara 0 dan 1 (0≤a≤ 1). Semakin besar harga α , semakin sedikit iterasi yang dipakai. Akan tetapi jika hargaα terlalu besar, maka akan merusak pola yang sudah benar sehingga pemahaman menjadi lambat. Satu siklus pelatihan yang melibatkan semua pola disebut epoch.
(32)
mencapai minimum global (atau mungkin lokal saja) terhadap nilai error (kesalahan) dan cepat tidaknya proses pelatihan menuju kekonvergenan. Apabila bobot awal terlalu besar maka input (masukan) ke setiap lapisan tersembunyi atau lapisan output (keluaran) akan jatuh pada daerah dimana turunan fungsi sigmoidnya akan sangat kecil. Apabila bobot awal terlalu kecil, maka input (masukan) ke setiap lapisan tersembunyi atau lapisan output (keluaran) akan sangat kecil. Hal ini akan menyebabkan proses pelatihan berjalan sangat lambat. Biasanya bobot awal diinisialisasi secara random dengan nilai antara -0.5 sampai 0.5. Setelah pelatihan selesai dilakukan, jaringan dapat dipakai untuk pengenalan pola.
Keuntungan dari metodebackpropagationyaitu :
1. Back-Propagation sangat luas digunakan dalam paradigma jaringan saraf, dan berhasil diaplikasikan dalam berbagai bidang. Misalnya : pengenalan pola militer, diagnosa kedokteran, klasifikasi gambar, menerjemahkan kode, dan dalam deteksi jenis penyakit paru.
2. Back-Propagation dapat digunakan untuk dua atau lebih lapisan dengan bobot dan menggunakan aturan pengalaman belajar.
3. Pembelajaran dan penyesuaian prosedur didasari konsep yang relatif sederhana. 4. Dapat memisahkan pola yang terpisah secara linear maupun pola yang terpisah
tidak linear. Terpisah linear adalah dipisahkan 1 garis linear 2 pola tersebut. Adapun kelemahannya yaitu : Waktunya Konvergen, karena pelatihan memerlukan ratusan atau ribuan contoh dalam kumpulan pelatihan, dan mungkin membutuhkan waktu komputasi sepanjang hari (atau lebih) untuk menyelesaikan pelatihan.
2.3 Algoritma Kohonen
Kohonen Map atau dapat disebut Self Organizing Maps (SOM) diperkenalkan pertama kali oleh Prof. Teuvo Kohonen dari Finlandia pada tahun 1982 (Kohonen, 1982). Jaringan Kohonen telah banyak dimanfaatkan untuk pengenalan pola baik berupa pola/citra, suara, dan lain-lain. Jaringan SOM sering pula digunakan untuk ekstraksi ciri (feature) pada proses awal pengenalan pola. Ia mampu mereduksi dimensi input pola ke jumlah yang lebih sedikit sehingga pemrosesan komputer menjadi lebih hemat.
(33)
Prinsip kerja dari algoritma SOM adalah pengurangan node-node tetangganya (neighbor), sehingga pada akhirnya hanya ada satu node output yang terpilih (winner node). Pertama kali yang dilakukan adalah melakukan inisialisasi bobot untuk tiap-tiap node dengan nilai random. Setelah diberikan bobot random, maka jaringan diberi input sejumlah dimensi node/neuron input. Setelah input diterima jaringan, maka jaringan mulai melakukan perhitungan jarak vektor yang didapatkan dengan menjumlah selisih/jarak antara vektorinputdengan vektor bobot.
Secara matematis dirumuskan :
dj=
∑
− =
1
0
n
i
(xI(t) -wij(t))2 (2.19)
Langkah-langkah Algoritma Kohonen
Berikut merupakan langkah-langkah algoritma Kohonen :
Langkah 0 : Inisialisasi bobot : Wij
Set parameter-parameter tetangga
Set parameterlearning rate
Langkah 1 : Kerjakan jika kondisi berhenti bernilaiFALSE
a. Untuk setiap vektorinputx, kerjakan :
• Untuk setiap j, hitung :
boboti=∑i(Wij–Xi)2 (2.20)
• Bandingkan boboti untuk mencari bobot terkecil
• Untuk boboti terkecil, ambil Wij (lama) untuk
mendapatkan :
Wij(baru) = Wij(lama) + α (xi–Wij(lama)) (2.21)
b. Perbaikilearning rate
(baru) = 0,5 * α (2.22)
c. Kurangi radius ketetanggaan pada waktu-waktu tertentu, dengan cara meng-update nilai boboti
(34)
2.4 Normalisasi Data
Dalam proses pembelajaran (training), jaringan membutuhkan data training yaitu data yang di-input-kan. Pada proses yang menggunakan derajat keanggotaan yang berada pada interval yang lebih kecil yaitu [0.1 , 0.9], untuk itu perlu dilakukan normalisasi data agar terbentuk data yang berada diantara 0 dan 1. Salah satu rumus yang dapat digunakan dalam proses normalisasi data tersebut adalah persamaan berikut :
(xmax-xmin)(x-a)
Xbaru= + xmin (2.23)
(b-a) Dimana :
xbaru : dataactualyang telah dinormalisasi
xmax : nilai maksimum dataactual
xmin : nilai minimum dataactual
a : data terkecil
b : data terbesar
2.5. Teori Penunjang Tentang Penyakit Paru
(Sumber : http://paru-paru.com/jenis-jenis-penyakit-paru-paru/)
Jenis-jenis penyakit paru-paru sangatlah beragam. Namun, hampir semuanya berbahaya, sebab penyakit ini menyerang organ terpenting dalam tubuh manusia. Anda sebaiknya menjaga kesehatan paru-paru karena sebanyak 12 jenis penyakit siap menderanya.
(35)
Paru-paru adalah salah satu organ pada sistem pernapasan yang berfungsi sebagai tempat bertukarnya oksigen dari udara yang menggantikan karbondioksida di dalam darah. Proses ini dinamakan sebagai respirasi dengan menggunakan batuan haemoglobin sebagai pengikat oksigen. Setelah O2 di dalam darah diikat oleh hemoglobin, selanjutnya dialirkan ke seluruh tubuh.
Berikut ini jenis-jenis penyakit paru-paru yang perlu diketahui berdasarkan pada buku karangan Steve Parker yang berjudul “Ensiklopedia Tubuh Manusia”.
1. Pneumonia (radang paru-paru)
Salah satu jenis-jenis penyakit paru-paru yang berbahaya adalah pneumonia atau disebut juga dengan radang paru-paru. Pneumonia dapat timbul di berbagai daerah di paru-paru. Pneumonia lobar menyerang sebuah lobus atau potongan besar paru-paru. Pneumonia lobar adalah bentuk pneumonia yang mempengaruhi area yang luas dan terus-menerus dari lobus paru-paru.
Selain itu, ada juga yang disebut bronkopneumonia yang menyerang seberkas jaringan di salah satu paru-paru atau keduanya.
2. Penyakit Legionnaries
Jenis-jenis penyakit paru-paru lainnya adalah legionnaries. Penyakit paru-paru yang satu ini disebabkan bakteri legionella pneumophilia. Bentuk infeksinya mirip dengan pneumonia.
Penyebab penyakit legionnaries adalah bakteri legionella, sebuah bakteri berbentuk batang yang ditemukan di sebagian besar sumber air. Mereka dapat berlipat ganda sangat cepat. Mereka terdapat di sistem pipa ledeng atau di mana pun yang air bisa menggenang.
Penyakit Legionnaire pertama kali dijelaskan pada 1976 setelah terjadi wabah penyakit yang mirip penumonia berat pada veteran perang di sebuah konvensi American legion. Penyakit ini lebih banyak menyerang laki-laki.
(36)
3. Efusi pleura
Cairan berlebih di dalam membran berlapis ganda yang mengelilingi paru-paru disebut efusi pleura. Dua lapis membran yang melapisi paru-paru atau pleura dilumasi oleh sedikit cairan yang memungkinkan paru-paru mengembang dan berkontraksi dengan halus dalam dinding dada. Infeksi seperti pneumonia dan tuberkulosis, gagal jantung, dan beberapa kanker dapat menimbulkan pengumpulan cairan di antara pleura. Jumlahnya bisa mencapai tiga liter yang menekan paru-paru.
4. Tuberkulosis (TB)
Jenis-jenis penyakit paru-paru lainnya adalah Tuberkulosis atau disingkat TB merupakan penyakit yang disebabkan oleh infeksi yang menyerang jaringan paru-paru. Penyebab seseorang mengidap TB adalah bakteri mycobacterium tuberculosis. Sebagian besar orang memiliki mikroba TB di dalam tubuhnya, tapi mikroba ini hanya menyebabkan penyakit di beberapa orang saja, biasanya jika imunitas atau kekebalan tubuh orang itu menurun.
5. Pneumotoraks
Pneumotoraks adalah penyakit yang terdapat di selaput paru atau yang disebut pleura. Pneumotoraks terjadi jika satu atau kedua membran pleura tertembus dan udara masuk ke dalam rongga pleura menyebabkan paru-paru mengempis. Membran pleura dipisahkan oleh lapisan cairan pleura sangat tipis yang melumasi gerakan mereka. Keseimbangan tekanan antara dinding dada, lapisan pleura, dan jaringan paru-paru memungkinkan paru-paru “terisap” ke dalam dinding dada.
Pada pneumotoraks, udara masuk ke dalam rongga pleura. Keseimbangan tekanan pun berubah dan paru-paru mengempis. Jika lebih banyak udara yang masuk ke dalam rongga tapi tidak dapat keluar, tekanan di sekitar paru-paru semakin tinggi yang dapat mengancam jiwa.
Pneumotoraks spontan dapat terjadi akibat pecahnya alveolus yang membesar secara abnormal di permukaan paru-paru atau akibat kondisi paru-paru, seperti asma. Penyebab lain adalah patah tulang rusuk dan luka dada.
(37)
6. Asma
Jenis-jenis penyakit paru-paru lainnya adalah Asma. Asma merupakan penyakit radang paru-paru yang menimbulkan serangan sesak napas dan mengi yang berulang. Asma merupakan salah satu kelainan paru-paru paling banyak dan bervariasi, menyerang satu dari empat anak di beberapa daerah.
Otot dinding saluran udara berkontraksi seperti kejang, menyebabkan saluran udara menyempit, sehingga terjadi serangan sesak napas. Penyempitan diperburuk oleh sekresi lendir yang berlebihan. Sebagian besar kasus terjadi di masa kanak-kanak dan biasanya berkaitan dengan penyakit yang didasari oleh alergi seperti eksema dan keduanya mempunyai faktor penyakit turunan.
7. Penyakit Paru-Paru Obstruktif Kronis
Penyakit paru obstruktif kronik (PPOK) mempunyai karakteristik keterbatasan jalan napas yang tidak sepenuhnya reversibel. PPOK adalah kelainan jangka panjang di mana terjadi kerusakan jaringan paru-paru secara progresif dengan sesak napas yang semakin berat. PPOK terutama meliputi bronkitis kronis dan emfisema, dua kelainan yang biasanya terjadi bersamaan.
8. Bronkitis Kronis
Peradangan kronis saluran udara paru-paru biasanya disebabkan oleh rokok. Jarang sekali, infeksi akut yang berulang menimbulkan bronkitis kronis. Pada bronkitis kronis, bronkus, saluran udara utama menuju paru-paru, meradang, membengkak, dan menyempit akibat iritasi oleh asap tembakau, infeksi berulang, atau paparan lama terhadap zat polutan. Saluran udara yang meradang mulai menghasilkan dahak berlebihan, awalnya menyebabkan batuk mengganggu di waktu lembap dan dingin, lalu berlanjut sepanjang tahun.
9. Emfisema
Emfisema adalah jenis penyakit paru obstruktif kronik yang melibatkan kerusakan pada kantung udara (alveoli) di paru-paru. Akibatnya, tubuh tidak mendapatkan oksigen yang diperlukan. Emfisema membuat penderita sulit bernafas. Penderita mengalami batuk kronis dan sesak napas. Penyebab paling umum adalah merokok.
(38)
10. Penyakit Paru Akibat Kerja
Asbestosis, silikosis, dan pneumokoniosis disebabkan oleh menghirup partikel yang mengiritasi dan membuat peradangan jaringan paru-paru, mengarah ke timbulnya fibrosis. Orang yang berisiko tinggi menderita penyakit paru-paru akibat pekerjaan, adalah para pekerja yang terpapar partikel beracun selama bertahun-tahun, misalnya para pekerja tambang.
Pada penyakit paru-paru akibat kerja, terdapat penebalan perlahan (fibrosis) jaringan paru-paru, yang akhirnya menimbulkan pembentukan jaringan parut ireversibel.
11. Silikosis
Silikosis adalah salah satu penyakit paru akibat lingkungan kerja. Penyakit ini merupakan suatu pneumokoniosis yang disebabkan oleh inhalasi partikel-partikel kristal silika bebas.
Silika adalah sejenis bahan yang banyak digunakan dalam bangunan dan perusahaan konstruksi. Silika dalam bentuk padat tidak berbahaya, tetapi bentuk butiran debu sangat tidak baik untuk paru-paru. Yang termasuk silika bebas adalah kuarsa, tridimit, dan kristobalit.
12. Asbestosis
Asbestosis adalah penyakit paru yang disebabkan banyaknya zat asbes yang terhirup paru-paru, sehingga menyebabkan kerusakan berat. Pada beberapa kasus asbestosis, bisa menjadi penyebab timbulnya penyakit kanker paru-paru. Kanker paru-paru sendiri adalah keberadaan tumor ganas di paru-paru. Kanker paru-paru adalah kanker paling umum di dunia dan lebih dari satu juta kasus baru ditemukan setiap tahun. Namun pada penelitian ini hanya menggunakan 3 jenis penyakit paru saja, yaitu: Tuberkulosis (TB) paru atau TBC Paru-paru,danPneumonia (radang paru-paru).
2.6 Smoothing Grafik
Proses smoothing grafik dilakukan untuk mendapatkan hasil grafik yang lebih baik. Proses ini dilakukan dengan mengambil titik puncak dari grafik hasil training yang
(39)
telah terbentuk dari titik puncak grafik tersebut, kemudian akan ditarik garis linear dari titik awal dan titik akhir sehingga dapat menghasilkan grafik yang lebih baik.
2.7 Riset Terkait
Dalam melakukan penelitian, penulis menggunakan beberapa riset terkait yang dijadikan acuan yang membuat penelitian berjalan lancer. Adapun riset-riset terkait tersebut adalah:
Tabel 2.1 Riset terkait
No Judul Riset Nama Peneliti Dan Tahun Algoritma/ Metode Yang Digunakan Hasil Penelitian 1 Pengenalan huruf berbasis jaringan syaraf tiruan menggunakan algoritma perceptron
Wahyono, 2009 Algoritma Perceptron/meto de Binerisasi
Dalam pelatihan dan pengujian data pola didapatkan bahwa ternyata algoritma perceptron pun bisa digunakan dalam pengenalan huruf yang masuk dalam ruang lingkup pengklasifikas ian pola. 2 Penerapan Algoritma Quickprop pada Jaringan Syaraf Tiruan untuk Mendeteksi Wajah Manusia
Setyo Nugroho, 2005
Algoritma
Quickprop/metod e active learning
Algoritma Quickprop dan metode active
learning dapat meningkatkan kecepatantraining. 3 Pengenalan Citra Objek Sederhana Dengan Menggunaka n Metode Jaringan Saraf Tiruan Som Ang Wie Siong1,
Resmana2,1999
Metode Jaringan Saraf Tiruan SOM
Jaringan saraf tiruan ini mampu mengenali citra ber-noise, namun
kurang dapat
menangani pergeseran citra. Pada input citra dengan pengecilan sekaligus pergeseran, justru jaringan dapat lebih mengenali. 4 Analisis Jaringan Saraf Sri Kusumadewi,20 Metode Backpropagation Metode Backpropagation dapat digunakan untuk
(40)
Tiruan dengan Metode Backpropagat ion Untuk Mendeteksi Gangguan Psikologi
08 melakukan pendeteksian
suatu jenis penyakit, gangguan, maupun kasus yang memiliki data masa lalu, dan dengan
menggunakan metode
Backpropagation, target output yang diinginkan lebih mendekati ketepatan dalam malakukan pengujian, karena terjadi
penyesuaian nilai bobot dan bias yang semakin baik pada proses pelatihan(traning).
5 Penerapan Jaringan Syaraf Tiruan untuk
Mendeteksi Posisi Wajah Manusia pada Citra Digital
Setyo Nugroho1, Agus Harjoko2, 2009
Algoritma
Quickprop Dan Metode Active Learning
Jaringan syaraf tiruan dengan jenis multi layerperceptron dapat digunakan untuk melakukan deteksi wajah pada citra digital. Untuk training dengan jumlah data yang besar, algoritma
Quickprop memberikan
peningkatan kecepatan
training yang signifikan. 2.8 Perbedaan Dengan Riset Yang Lain
Dalam Penelitian ini, untuk mempercepat proses pembelajaran (training) yang signifikan dan klasifikasi yang akurat dalam mengenali pola suatu penyakit paru menggunakan Algoritma Kohonen pada Jaringan syaraf Tiruan dimana bobot yang digunakan dihitung menggunakan algoritma Kohonen dan hasilnya dimasukkan ke JSTbackpropagation.
9 Kontribusi Riset
Dalam penelitian ini, algoritma yang akan digunakan dalam mempercepat proses pembelajaran dan klasifikasi yang akurat adalah algoritma Kohonen, diharapkan dari penelitian ini akan didapatkan metode yang lebih efektif dalam meningkatkan kecepatan training di dalam pengenalan pola penyakit secara otomatis pada jaringan syaraf tiruanbackpropagation.
(41)
BAB 3
METODOLOGI PENELITIAN
3.1 Pendahuluan
Salah satu syarat suatu penelitian adalah mempunyai metode atau algoritma yang dipakai dalam penelitiannya. Sebelum menguraikan algoritma yang dipakai dalam penelitian ini, lebih baiknya dijelaskan apa arti penelitian itu sendiri. Penelitian merupakan upaya pemecahan suatu masalah dengan menggunakan metode ilmiah tertentu, teori dan rancangan, serta dilakukan secara sistematis.
Dan di dalam penelitian ini akan membahas tentang algoritma Jaringan Saraf Tiruan Self Organizing Maps (SOM) atau Kohonen pada Jaringan Syaraf Tiruan Backpropagation dan hal ini digunakan untuk pengenalan pola penyakit paru.
3.2 Proses penelitian
Untuk mendapatkan hasil yang diinginkan maka ada beberapa hal yang perlu dilakukan sehingga target yang diharapkan dapat tercapai.
3.2.1 Data yang Digunakan
Data yang digunakan adalah data sekunder dari gejala umum Pneumonia atau radang paru-paru dan TBC Paru-paru atau Tuberkulosis paru-paru yang diambil dari Sumber: R. Kurniawan dan S. Hartati, Jurnal:"Sistem Pendukung Keputusan Klinis ", internet dan buku-buku yang mendukung tanpa menggunakan proses uji mikroskopis, foto thoraks atau rontgen.
Dalam penelitian ini, penulis juga membutuhkan data input dalam proses JST backpropagation.Data tersebut akan digunakan sebagai data pelatihan dan juga data pengujian. Data yang digunakan dalam proses ini adalah sebagai berikut:
(42)
1. Banyaknya data yang digunakan 30 sampel data; 2. Data yang digunakan menggunakan aturan:
Terdiri dari 3dataset (data kriteria Umur dan jenis kelamin, data kriteria gejala penyakit dan data kriteria lingkungan dan kebiasaan);
Setiap dataset terdiri dari jumlah data yang berbeda;
Pelatihan menggunakan 2 algoritma, yaitu: algoritma JST Backpropagationdan algoritma Kohonen.
Pelatihan Algoritma JST Backpropagation melakukan pemrosesan data secara random dan dilakukan dengan batas awal dan batas akhir sesuai dengan dataset yang digunakan, sedangkan algoritma Kohonen digunakan untuk pembobotan awal dan hasil pembobotan tersebut dimasukkan ke algoritma Backpropagation untuk mendapatkan hasil pelatihan;
Gambar 3.1. Skema Sistem
PEMBOBOTAN
METODE ALGORITMA KOHONEN METODE SECARA RANDOM
DATABASE
(43)
Data input yang digunakan :
I. Berdasarkan Umur dan Jenis Kelamin II. Berdasarkan gejala penyakit
III. Berdasarkan lingkungan dan kebiasaan
I. Dataset berdasarkan Umur dan Jenis Kelamin
Dalam penilaian ini yang menjadi tolak ukur adalah dari segi umur dan jenis kelamin pasien, keduanya berpengaruh langsung pada jenis penyakit pasien. Untuk penilaian pasien dengan umur yang lebih tua memiliki tingkat rentan lebih tinggi dibandingkan dengan umur pasien yang relative lebih muda. Berdasarkan jenis kelamin pasien, dimana kasus laki-laki lebih sering terjangkit kanker paru lebih besar dari pada pasien berjenis kelamin wanita. Umur dan jenis kelamin pasien dijadikan bagian dari inputan jaringan syaraf buatan yang akan menentukan pola penyakit kanker paru, bentuk penilaian secara spesifik dapat disajikan pada Tabel 3.1.
Tabel 3.1. Penilaian Kriteria identitas pasien berdasarkan Umur dan Jenis Kelamin
Identitas pasien Skala/Ket Penilaian
Umur/Usia < 20 Thn 0,06
20–35 thn 0.07
36–50 thn 0.08
51–65 thn 0.09
> 65 thn 1
Jenis Kelamin Pria 0.1
Wanita 0.05
Sumber: R. Kurniawan dan S. Hartati, Jurnal:"Sistem Pendukung Keputusan Klinis "
II. Penilaian kriteria gejala penyakit
Dalam penilaian kriteria gejala penyakit yang menjadi perhatian utama dalam menentukan pola penyakit paru yaitu gejala utama dari penyakit paru, penilaian secara spesifik dapat disajikan pada Tabel 3.2.
(44)
Tabel 3.2. Penilaian Kriteria identitas pasien berdasarkan Pneumonia (radang paru-paru)
Gejala Penyakit Skala/Net Penilaian
Batuk Tidak Batuk 0
Ringan (< 25 ml / 24 Jam) 0.007 Sedang (25 -250 ml / 24 Jam) 0.008 Berat (250-600 ml / 24 Jam) 0.009 Masif ( >600 ml / 24 Jam 0.01
Batuk yang di sertai sulit bernafas Tidak Batuk 0
Ringan (< 25 ml / 24 Jam) 0.008 Sedang (25 -250 ml / 24 Jam) 0.009 Berat (250-600 ml / 24 Jam) 0.01 Masif ( >600 ml / 24 Jam) 0.02 Hasil Rontgen dada menunjukkan
ada bagian yang berwarna putih-putih di bagian kiri atau kanan paru
Ya 0.08
Tidak 0
Terdeteksi ada bakteri atau jamur pada pengujian sampel dahak (sputum)
Ya 0.07
Tidak 0
Hasil tes darah menunjukkan peningkatan sel darah putih dengan dominasi netrofil untuk pneumonia yang disebabkan infeksi bakteri
Ya 0.06
Tidak 0
Kesulitan bernapas disertai gejala sianosis sentral
Ya 0.02
Tidak 0
Sulit Minum Ya 0.01
Tidak 0
Terdengar napas yang kasar, dan jika diperiksa dengan stetoskop akan terdengar suara yang lemah.
Ya 0.01
Tidak 0
(45)
Tabel 3.3. Penilaian Kriteria identitas pasien berdasarkan TBC Paru
Gejala Penyakit Skala/Net Penilaian
Batuk Darah Tidak batuk 0
Ringan 0.05
Sedang 0.06
Berat 0.07
Masif 0.08
Demam Ya 0.2
Tidak 0
Sesaknafas Ya 0.05
Tidak 0
Sakit dada persisten Ya 0.02
Tidak 0
Suara serak/Perau Ya 0.01
Tidak 0
Ujung jari membesar dan terasa sakit Ya 0.01
Tidak 0
Berat badan menurun dan kehilangan nafsu makan
Ya 0.02
Tidak 0
Sumber: R.Kurniawan dan S. Hartati, Jurnal:"Sistem Pendukung Keputusan Klinis "
III. Penilaian Kriteria Lingkungan dan Kebiasaan
Penilaian kriteria lingkungan dan kebiasaan pasien diperoleh dari faktor resiko tinggi dengan penilaian secara spesifik disajikan pada Tabel 3.4.
(46)
Tabel 3.4. Penilaian Kriteria identitas pasien berdasarkan Lingkungan dan Kebiasaan Lingkungan dan
Kebiasaan
Skala Nilai
Perokok Ya 0.1
Tidak 0
Lokasi T T dekat Pabrik, atau daerah polusi tinggi
Ya 0.1
0 Riwayat anggota keluarga
penderita penyakit paru
Ya 0.1
Tidak 0
Sumber: R. Kurniawan dan S. Hartati, Jurnal:"Sistem Pendukung Keputusan Klinis "
Secara ringkas data input perancangan data dengan jaringan syaraf tiruan untuk data pelatihan dan pengujian, digunakan 20 variabel input yaitu:
X1:Jenis kelamin
X2:Umur
X3:Batuk darah
X4: Demam X5: Sesak Nafas
X6: Sakit dada persisten X7: Suara serak/Parau
X8: Ujung jari membesar dan terasa sakit
X9: Berat badan menurun dan kehilangan nafsu makan X10: Perokok
X11: Tinggal daerah polusi tinggi X12: Faktor Keturunan
X13: Batuk
X14: Batuk yang disertai sulit bernafas
X15:Hasil Rontgen dada menunjukkan ada bagian yang berwarna putih-putih di bagian kiri atau kanan paru
X16 : Terdeteksi ada bakteri atau jamur pada pengujian sampel dahak (sputum)
(47)
X17 : Hasil tes darah menunjukkan peningkatan sel darah putih dengan dominasi netrofil untuk pneumonia yang disebabkan infeksi bakteri X18:Kesulitan bernapas disertai gejala sianosis sentral
X19:Sulit Minum
X20:Terdengar napas yang kasar, dan jika diperiksa dengan stetoskop akan terdengar suara yang lemah.
Data dikonversi menjadi angka nominal untuk memudahkan perhitungan algoritma. Pada setiap gejala penyakit mempunyai selang nilai berbeda-beda, dan ada sebagian gejala lainnya hanya diberi nilai 1 untuk nilai ya (ada gejala), dan 0 untuk nilai tidak (tidak ada gejala). Percobaan dilakukan 2 kali, yaitu dengan algoritma Backpropagationdan algoritma Kohonen pada JSTBackpropagation.
Gambar 3.2. Langkah-langkah pelatihan JST
Untuk setiap penilaian kriteria akan di berikan bobot sesuai dengan keinginan sipembuat. Di sini untuk kriteria penilaian identitas pasien karena tidak terlalu signifikan mempengaruhi diagnosa maka diberikan bobot 20%, penilaian gejala penyakit diberikan bobot 50% penilaian diberikan bobot lebih tinggi karena dianggap sangat mempengaruhi diagnosa secara signifikan, penilaian lingkungan dan kebiasaan pasien diberikan bobot 30% ,dan bentuk represenasi bobot sistem ini disajikan pada tabel 3.5.
Datainput JST
Backpropagation
(48)
Tabel 3.5. Persentasi Bobot
Data set Bobot
Umur dan jenis kelamin 20 %
Gejala penyakit 50 %
Lingkungan dan kebiasaan 30 %
3.2.2 Data Target/Output
Adapun data target/output adalah 1 menunjukkan Pola penyakit dikenali, sedangkan 0 menunjukkan Pola penyakit tidak dikenali. Data target/output dapat dilihat pada tabel 3.7
Tabel 3.6. Data Target
No Keterangan Bobot
1 Pola penyakit dikenali 1
2 Pola penyakit tidak dikenali 0
3.2.3 Pelatihan Data
Tahap pelatihan merupakan tahap dimana sistem akan mempelajari pola mencapai target. Pola yang ditemukan akan digunakan untuk prediksi. Agar sistem dapat menemukan pola untuk mencapai target yang diinginkan maka sistem harus dilatih dengan bobot dan bias yang berbeda. Dalam tahap pelatihan harus dicari nilaierror yang sekecil mungkin agar hasil prediksi yang diperoleh menjadi akurat. Kesalahan pada tahap pelatihan data akan menyebabkan hasil diperoleh jauh dari yang
(49)
Tabel 3.7. Data untuk Pelatihan dan Data Target
NO DATA PELATIHAN TARGET
1 Kriteria berdasarkan Umur dan Jenis Kelamin
Pola Penyakit dikenali 2 Kriteria Identitas berdasarkan Gejala Pneumonia
(radang paru-paru)
3 Kriteria Identitas berdasarkan TBC Paru-paru
atau Tuberkulosis paru-paru Pola Penyakit tidak
dikenali 4 Kriteria Identitas berdasarkan Gejala
Lingkungan dan Kebiasaan
Gambar 3.3. Pelatihan Data
3.2.4. Pengujian Data
Setelah sistem dilatih maka langkah selanjutnya akan dilakukan pengujian terhadap sistem. Jika tahap pelatihan telah dilakukan dengan baik maka sistem akan cepat menemukan target pada saat proses pengujian dilakukan. Pengujian terhadap sistem bertujuan untuk menguji sistem apakah sudah mampu menghasilkan data sesuai dengan data yang digunakan menjadi target.
(50)
Gambar 3.4 PolaOutputPengujian Data
3.3 Analisis Data
Variabel yang digunakan dalam pengenalan pola penyakit paru pada penelitian ini terdiri dari 20 variabelinput dan 1 variabel target/output. Variabel-variabel tersebut diambil dari data sekunder dari gejala umum penyakit Pneumonia atau radang paru-paru dan TBC Paru-paru-paru atau Tuberkulosis paru-paru-paru-paru yang diambil dari Sumber: R. Kurniawan dan S. Hartati, Jurnal: "Sistem Pendukung Keputusan Klinis ", internet dan buku-buku yang mendukung tanpa menggunakan proses uji mikroskopis, foto thoraksataurontgen.
3.3.1 Arsitektur Jaringan Syaraf Tiruan
Pada permasalahan ini arsitektur Jaringan Syaraf Tiruan yang digunakan adalah Jaringan Syaraf Tiruan dengan banyak lapisan (multilayer) dengan algoritma Backpropagation, yang terdiri dari:
a. Lapisan masukan (input) dengan 20 simpul (x1,x2, …., x20).
b. Lapisan tersembunyi (Hidden) dengan jumlah simpul ditentukan oleh pengguna (Z1, Zn).
(51)
v12
v32
v22
v42
W11
w21
INPUT HIDDEN LAYER OUTPUT
.
.
.
.
.
Gambar 3.5. Arsitektur Jaringan Syaraf Tiruan Pengenalan Pola
Keterangan :
1. X = 20
Jumlah neuroninput: X1, X2, …, X20
2. Z = 2
Jumlah hidden layer : jumlah hidden layer (Z) bergantung pada jumlah input neuron. Akan tetapi umumnya jumlah hidden layer yang dipakai adalah 1 (satu) atau 2 (dua) saja, menambah jumlah hidden layer dapat menyebabkan meningkatnyaoverfittingdan waktu eksekusi.
3. Y = 1
Jumlah neuron output : umumnya aplikasi jaringan syaraf tiruan untuk memperediksi memakai 1 (satu)outputneuron saja, yaitu : Y.
4. Fungsi aktivasi : fungsi aktivasi yang digunakan untuk menentukan output dari neuron yang diproses. Teknik yang dipakai untuk menentukan fungsi
X1
X2
X3
X4
X20
Y
Z2
(52)
aktivasi yang baik adalah percobaan. Kriteria penentu yang dipakai untuk menentukan fungsi aktivasi adalah kemampuannya untuk mempercepat fase pembelajaran dan meningkatkan keakuratan dari jaringan syaraf. Fungsi aktivasi yang umumnya digunakan adalah sigmoid.
5. Learning rate(α) = 0,01
Laju Pembelajaran/learning rate(α) : belum ada aturan yang pasti mengenai laju pembelajaran. Tetapi nilai α yang terlalu besar menyebabkan meningkatnya kecepatan dalam menemukan nilai performansi error yang diinginkan, namun memungkinkan untuk terjadi overshoot. Sebaliknya nilai α yang terlalu kecil menyebabkan pelatihan yang lambat. Secara umum, nilai optimal dari α tergantung dari masalah yang sedang diselesaikan. Seperti yang telah diketahui bahwa backpropagation berdasarkan pada penurunan error. Penurunan error ini merupakan metode yang cukup efisien untuk mendapatkan nilai bobot yang menghasilkanerror minimum.
6. Error maximum = 0,001
Perhitunganerror : untuk membandingkan hasiloutput dengan target output untuk setiap inputan diperlukan perhitungan nilaierror. Perhitunganerrorini selain dapat menentukan bahwa hasil benar atau salah, juga dapat menentukan derajat kebenaran atau kesalahan. Fungsi error yang umumnya digunakan adalah Mean Square Error (MSE). MSE merupakan rata-rata kuadrat dari selisih antara output jaringan dengan output target. Mean Absolute Error (MAE) merupakan perhitungan error yang biasa digunakan karena merupakan hasil absolute dari selisih antara nilai hasil sistem dengan nilai aktual, tujuan utamanya adalah untuk memperoleh nilai error yang sekecil-kecilnya dengan secara iterative mengganti nilai bobot yang terhubung pada semua neuron. Untuk mengatahui seberapa banyak bobot harus diganti, setiap iterasi memerlukan perhitungan error yang berasosiasi dengan tiap neuron padaoutputdanhidden layer.
(53)
Rumus dari MSE dan MAE adalah sebagai berikut :
∑
− = m n nMAE | c d |
m n n MSE =
∑
c − d2
) (
7. Jumlah DataTraining = 30
8. Epoch Maximum = 1500
9. Momentum = 1
Tujuan menggunakan momentum pada JST dalam perubahan perhitungan perubahan bobot adalah untuk melancarkan pelatihan dan mencegah agar bobot tidak berhenti disebuah nilai yang belum optimal.
Jaringan saraf yang akan dibangun adalah algoritma propagasi balik (Backpropagation) dengan fungsi aktivasi Sigmoid. Fungsi aktivasi dalam jaringan syaraf tiruan dipakai untuk proses perhitungan terhadap nilai aktual output pada hidden layerdan menghitung nilai aktual output padaoutput layer.
Dalam pelatihan ataupun pembentukan jaringan syaraf tiruan yang perlu dilakukan pertama kali adalah inisialisasi bobot awal. Di mana bobot awal ini akan menghubungkan simpul-simpul pada lapisan input dan juga lapisan tersembunyi (hidden layer). Bobot awal pada algoritma di atas adalahv= (v11, v12, v21, v22, v31, v32, v41, v42, …. , v201 dan v202), sedangkan bobot biasnya dipilih secara acak pada simpul-simpul lapisan tersembunyi (hidden layer) dan lapisan output dipilih secara acak.
Berikut tahapan-tahapan yang akan dilakukan dalam pengguna algoritma propagasi balik dengan fungsi aktivasi sigmoid. Tahapan yang harus dilakukan adalah sebagai berikut:
1. Inisialisasi (initialization), merupakan tahap di mana variabel-variabel nilai akan diset atau didefinisikan terlebih dahulu, misalnya seperti : nilai data input,weight, nilaioutput yang diharapkan, learning ratedan nilai-nilai data lainnya.
2. Aktivasi (activation), merupakan proses perhitungan terhadap nilai aktual output pada hidden layer dan menghitung nilai actual output pada output layer.
(54)
3. Weight Training, merupakan proses perhitungan nilai error gradient pada outputlayer dan menghitung nilaierror gradientpadahidden layer.
Iteration, merupakan tahap akhir dalam penggujian, dimana jika masih terjadi error yang diharapkan belum ditemukan maka kembali pada tahap aktivasi (activation).
3.3.2 Perancangan Skema Sistem
Adapun perancangan skema yang dilakukan dalam tesis ini dapat dilihat pada gambar 3.6 Pembobotan dapat dilakukan dengan 2 cara yaitu cara random dan metode algoritma kohonen. Setelah dilakukan pembobotan bobot disimpan dalam database.
Pada tahap selanjutnya dilakukan proses pelatihan dan pengujian pada data dalam database, sehingga diperoleh hasil pengenalan pola dengan bobot awal menggunakan random dan pembobotan awal menggunakan algoritma kohonen.
Gambar 3.6. Skema Sistem
3.3.3. Algoritma Backpropagation
Metode backpropagation ini merupakan metode pembelajaran lanjut yang dikembangkan dari aturan perceptron. Algoritma pelatihan backpropagation pada dasarnya terdiri dari tahapan-tahapan, yaitu:
1. Inisialisasi bobot (ditentukan oleh bilangan acak yang kecil, antara 0 sampai1)
2. Selama kondisi berhenti tidak terpenuhi, lakukan langkah 4 sampai 10
PEMBOBOTAN
METODE SECARA ACAK METODE KOHONEN
DATABASE
(55)
3. untuk setiap pasangan vektor pelatihan, lakukan langkah 4 sampai langkah 8.
Feedforward:
Pembelajaran pada layer 1
Langkah 3 : Setiap neuron masukan (Xi i= 1…n) menerima sinyal masukan xi dan menyebarkannya ke semua neuron pada lapis tersembunyi.
Langkah 4 : Setiap neuron pada lapis tersembunyi (Zj, j=1…p) menjumlahkan bobot-bobot sinyal masukan,
∑
= = n i ij ij xv
in z
1
_
dan menerapkannya pada fungsi aktivasi untuk menghitung sinyal keluarannya, )
_
( j
j f z in
z =
dan mengirim sinyal ini ke semua neuron pada lapis keluaran
Langkah 5: Setiap neuron keluaran (Yk, k=1…m) menjumlahkan bobot sinyal yang masuk,
∑
= = p j jk jk z w
in y
1
_
dan mengaplikasikan fungsi aktivasinya untuk menghitung sinyal yang akan dikeluarkannya
) _
( k
k f y in
y =
Backpropagasi error
Langkah 6 : Setiap neuron keluaran (Yk, k=1…m) menerima sebuah pola target yang berhubungan dengan pola masukan pelatihan dan menghitung kesalahan informasi dengan mengalikan dengan turunan fungsi aktivasinya
) _ ( ' )
( k k k
k = t −y f y in
δ
menghitung koreksi bobot (yang akan digunakan untuk memperbaiki wjk nanti), )
j k
jk z
w =αδ
∆
dan mengirim k ke neuron lapis tersembunyi.
Langkah 7 : Setiap neuron tersembunyi (Zj, j=1…p) menjumlahkan bobot setiap neuron yang yang telah dikali dengan kesalahan informasinya,
(56)
∑
= = m k jk k j w in 1 _ δ δLangkah 7 (lanjutan) : mengalikan dengan turunan fungsi aktivasinya untuk menghitung kesalahan informasinya,
) _ ( '
_ j j
j δ in f z in
δ =
menghitung koreksi bobotnya (yang akan digunakan untuk memperbaiki Vij nanti) )
i j
ij x
v =αδ
∆
Perbaiki bobot untuk proses selanjutnya.
Langkah 8 : Setiap neuron keluaran (Yk, k=1…m) memperbaiki bobotnya (j=0…p)
jk jk
jk new w old w
w ( )= ( )+∆
Setiap neuron tersembunyi (Zj, j=1…p) memperbaiki bobotnya
ij ij
ij new v old v
v ( )= ( )+∆ Langkah 9 : Lakukan pengujian kondisi henti.
Dimana :
nc : nilaioutputdari neuron jaringan syaraf
nd : nilai target/ hasil yang dicapai
m : jumlahoutputdari neuron
3.3.4 Algoritma Kohonen
Prinsip kerja dari algoritma SOM adalah pengurangan node-node tetangganya (neighbor),sehingga pada akhirnya hanya ada satunode outputyang terpilih(winner node). Pertama kali yang dilakukan adalah melakukan inisialisasi bobot untuk tiap-tiap node dengan nilai random. Setelah diberikan bobot random, maka jaringan diberi input sejumlah dimensi node/neuron input. Setelah input diterima jaringan, maka jaringan mulai melakukan perhitungan jarak vektor yang didapatkan dengan menjumlah selisih/jarak antara vektor input dengan vektor bobot.
Secara matematis dirumuskan :
(57)
Langkah-langkah Algoritma Kohonen
Berikut merupakan langkah-langkah algoritma Kohonen : Langkah 0 : Inisialisasi bobot : Wij
Set parameter-parameter tetangga Set parameterlearning rate
Langkah 1 : Kerjakan jika kondisi berhenti bernilaiFALSE a. Untuk setiap vektor input x, kerjakan :
• Untuk setiap j, hitung : boboti=∑i(Wij–Xi)2
• Bandingkan boboti untuk mencari bobot terkecil
• Untuk boboti terkecil, ambil Wij (lama) untuk mendapatkan : Wij(baru) = Wij(lama) + α (xi –Wij(lama)) b. Perbaiki learning rate
α (baru) = 0,5 * α
c. Kurangi radius ketetanggaan pada waktu-waktu tertentu, dengan cara meng-update nilai boboti
d. Tes kondisi berhenti (min error ataumaxepochterpenuhi).
Dalam bentuk program :
RUMUS KOHONENuntukpembobotan
Dim MaxEpoch AsInteger = epoch Dim n AsInteger
Bobot(1) = 0.1 : Bobot(3) = 0.1 Bobot(2) = 0.1 : Bobot(4) = 0.1 n = 0
Do
n = n + 1
For i AsInteger = 1 To 20
' MsgBox("Data ke='" & i & "'")
Jb1 = ((Bobot(1) - X(i, 1)) ^ 2) Jb2 = ((Bobot(2) - X(i, 1)) ^ 2) Jb3 = ((Bobot(3) - X(i, 1)) ^ 2) Jb4 = ((Bobot(4) - X(i, 1)) ^ 2) ' MsgBox(Jb1)
Jb1 = Round(Jb1, 5) Jb2 = Round(Jb2, 5) Jb3 = Round(Jb3, 5) Jb4 = Round(Jb4, 5)
If (Jb1 < Jb2) Or (Jb1 = Jb2) Then If (Jb1 < Jb3) Or (Jb1 = Jb3) Then
(58)
Bobot(1) = Round(Bobot(1), 5) Else
Bobot(3) = Bobot(3) + Alpha * (X(i, 1) - Bobot(3)) Bobot(3) = Round(Bobot(3), 5)
EndIf
ElseIf (Jb2 < Jb3) Or (Jb2 = Jb3) Then If (Jb2 < Jb4) Or (Jb2 = Jb4) Then
Bobot(2) = Bobot(2) + Alpha * (X(i, 1) - Bobot(2)) Bobot(2) = Round(Bobot(2), 5)
Else
Bobot(4) = Bobot(4) + Alpha * (X(i, 1) - Bobot(4)) Bobot(4) = Round(Bobot(4), 5)
EndIf
ElseIf (Jb3 < Jb4) Or (Jb3 = Jb4) Then If (Jb3 < Jb1) Or (Jb3 = Jb1) Then
Bobot(3) = Bobot(3) + Alpha * (X(i, 1) - Bobot(3)) Bobot(3) = Round(Bobot(3), 5)
EndIf EndIf
Next i
LoopUntil n = MaxEpoch
Bobot(1) = Round(Bobot(1), 5) Bobot(2) = Round(Bobot(2), 5) Bobot(3) = Round(Bobot(3), 5) Bobot(4) = Round(Bobot(4), 5)
W1 = Bobot(1) W2 = Bobot(2) W3 = Bobot(3) W4 = Bobot(4) End if
Bobot yang telah dihasilkan dari pencarian menggunakan algoritma Kohonen, maka akan di lanjutkan dengan dimasukkan ke algoritma Backpropagation. Dan pada tahap pengujian bobot yang diperoleh akan digunakan untuk menguji sistem, apakah sistem sudah dapat menemukan target. Pengujian dilakukan sampai diperoleh error paling rendah atau yang mendekati target. Bobot dan semua variabel yang digunakan pada saat pengujian akan digunakan. Jika persentase keakuratan pada tahap pengujian tinggi maka keakuratan hasil juga akan tinggi.
(1)
Tabel 4.1 Tabel Perbandingan Nilai Error Pada Algoritma Backpropagation dan Algoritma Kohonen Dengan Bobot Awal : 0.5
NO
LEARNING TARGET MAXIMUM
Zin_1 Zin_2
ERROR(Y)
RATE ERROR EPOCH Backpropagation
Kohonen pada Backpropagation
1 0.1 0.001 1500 0.0794 0.2364 0.6378 0.5636
2 0.1 0.001 1500 0.0434 0.1824 0.6755 0.6235
3 0.1 0.001 1500 0.0841 0.2138 0.6763 0.6237
4 0.1 0.001 1500 0.1056 0.1918 0.6758 0.6236
5 0.1 0.001 1500 0.0731 0.2001 0.6191 0.5634
6 0.1 0.001 1500 0.0624 0.1698 0.6751 0.6235
7 0.1 0.001 1500 0.0737 0.2005 0.7353 0.6236
8 0.1 0.001 1500 0.0727 0.2101 0.6193 0.5635
9 0.1 0.001 1500 0.0975 0.2266 0.6767 0.6238
10 0.1 0.001 1500 0.0799 0.1996 0.6759 0.6236
11 0.1 0.001 1500 0.0902 0.2203 0.6196 0.5635
12 0.1 0.001 1500 0.1088 0.2175 0.6195 0.5634
13 0.1 0.001 1500 0.0688 0.1814 0.6184 0.5628
14 0.1 0.001 1500 0.0691 0.1834 0.6185 0.5633
15 0.1 0.001 1500 0.0898 0.2097 0.6762 0.6237
16 0.1 0.001 1500 0.0819 0.2085 0.6425 0.5879
17 0.1 0.001 1500 0.0799 0.1871 0.7511 0.7057
18 0.1 0.001 1500 0.0801 0.1926 0.6431 0.6121
19 0.1 0.001 1500 0.1014 0.1911 0.6527 0.6014
20 0.1 0.001 1500 0.0721 0.2212 0.6091 0.5418
Hasil dari tabel diatas, bahwa hasil nilai error pada fase propagasi maju (feedforward) antara data yang menggunakan metode Backpropagation dan data yang menggunakan Kohonen pada JST Backpropagation berbeda, dimana tingkat error lebih besar jika menggunakan metode algoritma Backpropagation. Hal ini dipengaruhi oleh perhitungan bobot awal. Semakin besar nilai perhitungan bobot dari lapisan input menuju hidden layer, maka sinyal output yang dihasilkan hidden layerakan meningkat. Hal ini akan membuat informasierrorsemakin kecil.
(2)
Tabel 4.2 Tabel Perbandingan Nilai Error Pada Algoritma Backpropagation dan Algoritma Kohonen Dengan Bobot Awal : -0.5
NO
LEARNING TARGET MAXIMUM
Zin_1 Zin_2
ERROR(Y)
RATE ERROR EPOCH Backpropagation
Kohonen Pada Backpropagation
1 0.1 0.001 1500 0.0754 0.2195 0.6961 0.5891
2 0.1 0.001 1500 0.0374 0.1744 0.7506 0.6849
3 0.1 0.001 1500 0.0831 0.2127 0.7516 0.6824
4 0.1 0.001 1500 0.0996 0.1838 0.7509 0.6825
5 0.1 0.001 1500 0.0671 0.1921 0.6942 0.6224
6 0.1 0.001 1500 0.0590 0.1646 0.7151 0.6632
7 0.1 0.001 1500 0.0692 0.1975 0.7653 0.6334
8 0.1 0.001 1500 0.0727 0.2101 0.6193 0.5635
9 0.1 0.001 1500 0.0962 0.2221 0.7714 0.6832
10 0.1 0.001 1500 0.0799 0.1996 0.6759 0.6236
11 0.1 0.001 1500 0.0892 0.2282 0.6794 0.5933
12 0.1 0.001 1500 0.1047 0.2125 0.6592 0.5437
13 0.1 0.001 1500 0.0648 0.1789 0.6788 0.5323
14 0.1 0.001 1500 0.0649 0.1817 0.6884 0.5939
15 0.1 0.001 1500 0.0874 0.2048 0.6969 0.6632
16 0.1 0.001 1500 0.0843 0.2126 0.6829 0.5974
17 0.1 0.001 1500 0.0763 0.1839 0.7819 0.7092
18 0.1 0.001 1500 0.0789 0.1958 0.6924 0.6142
19 0.1 0.001 1500 0.1058 0.1967 0.6823 0.6517
20 0.1 0.001 1500 0.0696 0.2265 0.6397 0.5624
Hasil dari tabel diatas bahwa jika bobot awalnya -0.5, maka hasil nilai error pada fase propagasi maju (feedforward) antara data yang menggunakan metode Backpropagationdan data yang menggunakan Kohonen pada JST Backpropagation juga berbeda. Nilai Zin_1 dan Zin_2 nilainya semakin kecil tetapi tingkat error semakin besar dibandingkan dengan bobot awal 0.5 . Tetapi kalau dilihat dari segi tingkat error, Kohonen pada Jaringan Syaraf Tiruan Backpropagation lebih kecil dari pada hanya menggunakan metode algoritmaBackpropagation.
(3)
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari hasil penelitian penulis mendapatkan kesimpulan sebagai berikut :
1. Jaringan syaraf tiruan Backpropagation dengan Algoritma Kohonen pada Jaringan syaraf tiruan Backpropagation pada penelitian ini dapat mengenali pola dengan baik sesuai dengan target.
2. Algoritma Kohonen pada Jaringan Syaraf Tiruam Backpropagation dapat melakukan pembelajaran dan pengenalan terhadap suatu pola dengan tingkat kecepatan yang jauh lebih tinggi dari pada yang hanya menggunakan Jaringan Syaraf TiruanBackpropagation.
3. Pembobotan awal dengan algoritma Kohonen mampu mengurangi error dalambackpropagationsehingga hasil pengenalan pola menjadi lebih akurat dibandingkan dengan pembobotan awal menggunakanrandom.
4. Jaringan syaraf tiruan Backpropagation pada prinsipnya dapat digunakan untuk mengenali pola suatu penyakit tertentu berdasarkan gejala-gejala penyakit yang diinputterlebih dahulu.
5.2 Saran
Pada penelitian ini masih banyak kekurangan dan kelemahan sehingga perlu disempurnakan, oleh karena itu ada beberapa saran untuk penelitian selanjutnya :
(4)
2. Disarankan untuk mencari perbandingan hasil yang lebih optimal dengan bentuk arsitektur yang lebih kompleks.
3. Disarankan untuk mencari algoritma yang lain yang akan digabungkan dengan JST Backpropagation untuk mencari hasil percepatan training yang lebih baik.
(5)
DAFTAR PUSTAKA
Aleksander, I. & Morton, H. 2007.An introduction to neural computing..2ndedition Alsmadi, M.K.S, Omar, K., & Noah, S. A. 2009.Back Propagation Algorithm: The
Best Algorithm Among the Multi-layer Perceptron Algoritma. International Journal of Computer Science and Network Security.
AL-Allaf & Omaima. 2010. Improving the Performance of Backpropagation Neural Network Algorithm for Image Compression/Decompression System. Journal of Computer Science.
Ang Wie Siong & Resmana. 1999. Pengenalan Citra Objek Sederhana Dengan Menggunakan Metode Jaringan Saraf Tiruan Som, Universitas Kristen Petra, Surabaya
Anita Desiani & Arhami Muhammad. 2006. Konsep Kecerdasan Buatan, Andi Offset, Yogyakarta
Dayhoff, Judith R. 1990.Neural Network Architectures.Van Nostrand Reinhold Co. New York, NY, USA
Fausset, Laurence. 1994. Fundamental of Neural Network: Architecture, Algorithm, and Ap[lication.New Jersey : Prentice-Hall.
Gregorius S. Budhi, Ibnu Gunawan & Steven Jaowry, “Metode Jaringan Saraf Tiruan Backpropagation untuk Pengenalan Huruf Cetak pada Citra Digital“,
Prosiding National Conference’04,30 Agustus 2004.
Hagan, M.T. Demuth, H & Beale, M. 1996, Neural Network Design, PWS Publishing Co., USA
Haza Nuzly Abdul Hamed, SitiMariyam Shamsuddin & Naomie Salim (2008).
“Particle Swarm Optimization For Neural Network Learning Enhancement”
49(D) Dis. 2008:13-26
Haryanto, L. 2004. Membangun Perangkat Lunak Untuk Data Clustering Menggunakan Jaringan Syaraf Algoritma Kohonen Self Organizing, Jurusan Teknik Informatika FT UII : Yogyakarta
(6)
Kohonen, T. 1982.Self-Organized Formation of Topologically Correct Feature Maps. Biological Cybernetics, 43, pp. 59-69.
Kohonen, T. 1989. Self-organizing and associative memory. (3rd ed.), Berlin. Springer -Verlag.
Russel, S. J. & P. Norvig. 2002. Artificial intelligence: A Modern Approach, 2nd ed. New York NY: Prentice Hall.
S.E. Fahlman, “An Empirical Study of Learning Speed in Back-Propagation
Networks”, Technical Report CMU-CS-88-162, Carnegie Mellon University, USA, 1988.
Setyo Nugroho. 2000. Penerapan Algoritma Quickprop pada Jaringan Syaraf Tiruan untuk Mendeteksi Wajah Manusia, Institut Teknologi Sepuluh Nopember, Surabaya
Setyo Nugroho & Agus Harjoko, 2009. Penerapan Jaringan Syaraf Tiruan untuk Mendeteksi Posisi Wajah Manusia pada Citra Digital, Universitas Gadjah Mada, Yogyakarta
Sutojo, Edy Mulyanto & Vincet Suhartono, 2011. Kecerdasan Buatan, Andi Offset, Yogyakarta
Vesanto. J & Alhoniemi, E. 2000. Clustering of self-organizing map. IEEE Tran-sactions on Neural Networks, 11(3):586-600
Wahyono. 2009. Pengenalan Huruf Berbasis Jaringan Syaraf Tiruan Menggunakan Algoritma Perceptron, Ilmu Komputer, Universitas Gadjah Mada, Yogyakarta.