Perumusan Masalah Batasan Masalah Tujuan Penelitian Manfaat Penelitian Algoritma Kohonen

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 tiruan backpropagation dapat mempercepat mengenali pola suatu penyakit. • Sejauh mana penggunaan algoritma kohonen pada Jaringan Syaraf Tiruan backpropagation mampu mengenali suatu pola penyakit. Universita Sumatera Utara

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 Backpropagation dan 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 Backpropagation mampu 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. Universita Sumatera Utara 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. Gambar 2.1 Node sederhana Universita Sumatera Utara Gambar 2.1 memperlihatkan bahwa Neural Network terdiri dari satuan-satuan pemroses berupa neuron. Y sebagai output menerima input dari x 1 , x 2 , x 3 ,…….x n dengan bobot W 1 , W 2 , W 3 ,……..W n . 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 bobot output. y = fx = x 2.1 Gambar 2.2 Fungsi Linear b. Fungsi Threshold Fungsi threshold memetakan bobot input dengan nilai biner [0,1] seperti yang ditunjukkan dengan gambar 2.3 dimana : Y 1 X - 1 - 1 1 Universita Sumatera Utara y=fx= 1 2.2 Gambar 2.3 Fungsi Theshold c. Fungsi Piecewise Linear Fungsi piecewise linear dapat juga ruang lingkup biner atau bipolar untuk batas saturasi output. fungsi output dapat ditulis sebagai berikut : = = 0.5 0.5 0.5 0.5 0.5 0.5 2.3 Gambar 2.4 Fungsi Piecewise Linear d. Fungsi Sigmoid Ini type fungsi aktivasi yang mempunyai Garis S-shaped dan bentuk distribusi perubahan sigmois input dimana mempunyai nilai interval [-∞, ∞] = = 2.4 Y 1 X Universita Sumatera Utara Gambar 2.5 Fungsi sigmoid

2.1.2 Multi Layer Perceptron

MLP juga dikenal setara Multilayer 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.6 Multi 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 Universita Sumatera Utara 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 errorfault . Dimana gangguan kecil pada data dapat dianggap hanya noise 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. Universita Sumatera Utara

2.2 Algoritma Backpropagation

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 dari error yang 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 error yang diinginkan. Setelah training selesai 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 x 1 dipropagasikan ke layer tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari unit tersembuyi Z 1 tersebut selanjutnya dipropagasi maju lagi ke layer tersembunyi berikutnya dengan fungsi aktivasi yang telah ditentukan. Dan seterusnya hingga menghasilkan keluaran jaringan y k . Berikutnya, keluaran jaringan y k dibandingkan dengan target yang harus dicapai t k . Selisih t k -y k adalah kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari batas toleransi yang ditentukan, maka iterasi dihentikan. Jika kesalahan masih lebih Universita Sumatera Utara 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 – y k 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 . δ k juga dipakai untuk mengubah bobot garis yang berhubungan langsung dengan unit keluaran. Dengan cara yang sama, dihitung faktor δ j di 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. Universita Sumatera Utara 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 x i, i = 1,…., n menerima sinyal masukan x i , dan menyebarkannya ke seluruh unit pada lapisan tersembunyi Langkah 4 : Setiap unit tersembunyi xi, I = 1,…….,p jumlahkan bobot sinyal masukannya : 2.5 v oj = bias pada unit tersembunyi j aplikasikan fungsi aktivasinya untuk menghilangkan sinyal keluarannya, z j = f z_in j , 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 j j v x vo in z 1 _ ∑ = + = p j jk j k k w z wo in y 1 _ Universita Sumatera Utara w ok = bias pada unit keluaran k dan aplikasikan fungsi aktivasinya untuk menghitung sinyal keluarannya, y k = fy_in k 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 w jk nantinya, 2.8 hitung koreksi biasnya digunakan untuk mempengaruhi w ok nantinya 2.9 dan kirimkan δ k ke 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 in y f y t − = δ j k jk z w αδ = ∆ k k wo αδ = ∆ ∑ = = m k jk k j w in 1 _ δ δ _ _ j j j in z f in δ δ = i j ij x v αδ = ∆ j j vo αδ = ∆ jk jk jk w lama w baru w ∆ + = ij ij ij v lama v baru v ∆ + = Universita Sumatera Utara 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, o j : input dari j unit w ij : bobot yang dihubungkan dari unit i ke unit j a net,j : jaringan keluaran untuk j unit θ j : bias untuk j unit Di dalam fase mundur, pola keluaran aktual output kemudian dibandingkan dengan keluaran yang dikehendaki dan sinyal error dihitung untuk masing – masing output. Sinyal-sinyal kemudian merambat mundur dari lapisan output ke 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. fungsi error pada output neuron digambarkan sebagai berikut : = 2.18 dimana, n : angka pada modul keluaran didalam lapisan output t k : keluaran yang dikendaki dari keluaran unit k o k : 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. Pemilihan bobot awal sangat mempengaruhi jaringan syaraf tiruan dalam Universita Sumatera Utara 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 metode backpropagation yaitu : 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 polacitra, 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. Universita Sumatera Utara 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 nodeneuron input. Setelah input diterima jaringan, maka jaringan mulai melakukan perhitungan jarak vektor yang didapatkan dengan menjumlah selisihjarak antara vektor input dengan vektor bobot. Secara matematis dirumuskan : d j = ∑ − = 1 n i x I t -w ij t 2 2.19 Langkah-langkah Algoritma Kohonen Berikut merupakan langkah-langkah algoritma Kohonen : Langkah 0 : Inisialisasi bobot : W ij Set parameter-parameter tetangga Set parameter learning rate Langkah 1 : Kerjakan jika kondisi berhenti bernilai FALSE a. Untuk setiap vektor input x, kerjakan : • Untuk setiap j, hitung : bobot i =∑ i W ij –Xi 2 2.20 • Bandingkan bobot i untuk mencari bobot terkecil • Untuk bobot i terkecil, ambil W ij lama untuk mendapatkan : W ij baru = W ij lama + α x i – W ij lama 2.21 b. Perbaiki learning rate baru = 0,5 α 2.22 c. Kurangi radius ketetanggaan pada waktu-waktu tertentu, dengan cara meng-update nilai boboti d. Tes kondisi berhenti min error atau maxepoch terpenuhi Universita Sumatera Utara

2.4 Normalisasi Data