Anda di halaman 1dari 7

1

Pengenalan Jenis Penyakit THT Menggunakan Jaringan Learning Vector Quantization


Oleh : Enny Itje Sela (STMIK AKAKOM) Sri Hartati (UGM) Abstrak Telah dibuat sistem pendiagnosa penyakit THT menggunakan Jaringan Learning Vector Quantizaton (LVQ). Input sistem adalah gejala penyakit yang selanjutnya dikelompokkan menggunakan LVQ dengan 3 buah klaster. Hasil proses pelatihan adalah pusat klaster (vektor bobot) yang disimpan dalam file. Vektor bobot hasil pelatihan tersebut digunakan untuk pengujian. Berdasarkan hasil uji coba, nilai kebenaran terbaik adalah 94%. PENDAHULAN Untuk mengelompokkan suatu jenis penyakit dibutuhkan ketrampilan dan kemampuan memeriksa dan menganalisis organ-organ tertentu. Misalnya untuk mengetahui jenis penyakit yang berhubungan dengan telinga, hidung, dan tenggorokan (THT), maka dibutuhkan pengetahuan khusus untuk mendeteksi dan melakukan diagnosis awal dan pemeriksaan fisik. Kegiatan tersebut merupakan syarat bila terdapat keluhan atau gejala yang berhubungan dengan THT pada pasien. Banyak penyakit sistematis yang bermanifestasi di daerah THT, demikian juga sebaliknya. Analisis ini dikhususkan untuk mendiagnosa jenis penyakit THT pada bagian hidung yaitu rinitas kronis, epitaksis, dan sinusitis. Untuk melakukan pengelompokkan, banyak metode yang telah dikembangkan, salah satunya adalah jaringan saraf tiruan (JST). Metode ini telah terlatih untuk melaksanakan fungsi kompleks dalam berbagai bidang aplikasi yang mencakup pengenalan pola terbaik, penggolongan suara, dan sistem kontrol (Kusumadewi, 2004). Dengan JST, sistem dapat digunakan untuk mengelompokkan apakah pasien didiagnosa rinitis kronis, epitaksis, atau A. sinusitis, berdasarkan gejala-gelala awal yang diderita pasien. Hasil pengelompokkan tersebut dapat digunakan untuk melakukan diagnosa yang cepat, akurat serta meminimalkan false negative, diharapkan dapat memberi penanganan yang tepat. Berdasarkan latar belakang diatas, salah satu permasalahan yang dirumuskan adalah membuat sistem pendiagnosa penyakit THT berdasarkan gejala klinis pada pasien. Metode yang digunakan adalah jaringan Learning Vector Quantification (LVQ). B. TEORI B1. Proses Pernafasan Hidung bekerja sebagai indra pencium dengan adanya mukosa olfaktorius pada atap rongga hidung, konka superior, dan sepertiga bagian ata septum. Partikel bau dapat mencapai daerah ini dengan cara difusi dengan palut lendir atau bila menarik nafas dengan kuat. Nafas manusia dimulai darimlubang hidung. Usaha bernafas menghantarkan udara lewat saluran pernafasan atas dan bawah kepada alveoli paru dalam volume, tekanan kelembaban, suhu, dan kebersihan yang cukup untuk menjamin suatu kondisi

pengambilan oksigen yang optimal. Pada proses sebaliknya, sebaiknya juga menjamin proses eliminasi karbon diaoksida yang optimal, yang diangkut ke alveoli lewat aliran darah. Proses pernafasan manusia akan menjadi terganggu jika siklus bernafas menemukan suatu gangguan sehingga menyebabkan akibat-akibat yang kemudian dikenal sebagai gejala awal. Gejala-gejala inilah yang dijadikan sebagai variabel dalam mendeteksi apakah pasien terdiagnosis penyakit Rinitis Kronis, Epitaksis, atau Sinusitis B2. Jaringan Saraf Tiruan Pembuatan struktur jaringan saraf tiruan diilhami oleh struktur jaringan biologi, khususnya otak manusia. Untuk lebih mengenal asal-usul serta bagaimana suatu struktur jaringan saraf tiruan dibuat dan dapat dipakai sebagai suatu alat penghitung, berikut ini akan diulas sedikit istilah yang secara umum digunakan. Neuron adalah satuan unit terkecil pada otak, bentunya sederhana. Klasifikasi Klasifikasi merupakan proses menemukan sekumpulan model (atau fungsi) yang menggambarkan dan membedakan konsep atau kelas-kelas data, dengan tujuan agar model tersebut dapat digunakan untuk memprediksi kelas dari suatu objek atau data yang label kelasnya tidak diketahui (Han & Kamber 2001). Klasifikasi terdiri atas dua tahap, yaitu pelatihan dan prediksi (klasifikasi). Pada tahap pelatihan dibentuk sebuah model domain permasalahan dari setiap instance yang ada. Penentuan model tersebut berdasarkan analisis pada sekumpulan data pelatihan, yaitu data yang label kelasnya telah diketahui. Pada tahap klasifikasi, dilakukan prediksi kelas dari instance (kasus) baru yang telah dibuat pada tahap pelatihan. Jaringan LVQ

Learning Vektor Quantization (LVQ) adalah metode untuk melakukan pembelajaran pada lapisan kompetitif yang terbimbing. Learning Vector Quantization (LVQ) merupakan suatu metode klasifikasi pola yang masing-masing unit output mewakili kategori atau kelas tertentu. Vektor bobot untuk unit output sering disebut vektor referensi untuk kelas yang dinyatakan oleh unit tersebut. LVQ mengklasifikasikan vektor input dalam kelas yang sama dengan unit output yang memiliki vektor bobot yang paling dekat dengan vektor input (Widodo 2005). Ilustrasi dari jaringan LVQ dapat dilihat pada Gambar 1

Gambar 1.Contoh Arsitektur LVQ Kelebihan dari LVQ adalah: 1. nilai error yang lebih kecil dibandingkan dengan jaringan syaraf tiruan seperti backpropagation. 2. Dapat meringkas data set yang besar menjadi vektor codebook berukuran kecil untuk klasifikasi. 3. Dimensi dalam codebook tidak dibatasi seperti dalam teknik nearest neighbour. 4. Model yang dihasilkan dapat diperbaharui secara bertahap. Kekurangan dari LVQ adalah: 1. Dibutuhkan perhitungan jarak untuk seluruh atribut. 2. Akurasi model dangan bergantung pada inisialisasi model serta parameter yang digunakan (learning rate, iterasi, dan sebagainya). 3. Akurasi juga dipengaruhi distribusi kelas pada data training. 4. Sulit untuk menentukan jumlah codebook vektor untuk masalah yang diberikan.

Algoritma LVQ(Fausett, 1994) : 0 . Inisialisasi vektor referensi. Inisialisasi laju pelatihan () = 0 1. Selama syarat berhenti salah, kerjakan langkah 2-6 2. Untuk setiap vektor masukkan pelatihan x, kerjakan langkah 3-4. 3. Carilah J sehingga minimum ||x-w j || 4. Perbaharui wj sbb jika T=Cj maka w j (baru)= w j (lama) + ||x-w j || jika TCj maka w j (baru)= w j (lama) - ||x-w j || 5. Kurangi laju pelatihan ( = Dec ; = *Dec ) 6. Uji syarat berhenti (cacah iterasi atau laju pelatihan) C. RANCANGAN PENYELESAIAN Secara umum langkah yang dilakukan dalam pembuatan sistem dapat dijabarkan menjadi beberapa langkah seperti dalam gambar berikut.
Menentukan variabel dan transformasinya n Menentukan arsitektur JST normal Melakukan pelatihan

darah(x10), lemas(x11), nyeri tekan pada dahi, pipi, hidung(x12), tidak enak badan (x13) Agar dapat diolah menggunakan JST, variabel-variabel tersebut harus ditransformasikan menjadi bentuk yang sesuai dengan keperluan. Berikut adalah transformasi masing-masing variabel (Tabel 1). Sedangkan rancangan penetapan keluaran(output) adalah Penyakit EP =1 Penyakit RK=2 Penyakit SI=3 Jumlah data yang digunakan dalam proses pelatihan sebanyak 64 data (file latih3.txt). Data pelatihan terbagi dalam uji multi data dan single data. Pada multi data , pengujian menggunakan file latih3.txt(60 data) dan ujitht2.txt (29 data). sedang pengujian single data menggunakan file ujisingle1.txt, ujisingle2.txt, ujisingle3.txt, ujisinge4.txt. Arsitektur Jaringan Arsitektur JST ini menggunakan jumlah neuron pada lapisan input = 13; jumlah node pada lapisan output = 3, dan jumlah lapisan tersembunyi = 3. Pada lapisan input tidak terjadi proses perhitungan apapun. Proses perhitungan terjadi di lapisan tersembunyi/kompetitif.

Melakukan pengujian

Proses validasi

Gambar 2. Langkah Penyelesaian Variabel dan transformasinya Berdasarkan gejala klinisnya, penyakit RK, EP, SI mempunyai 13 gejala yang selanjutnya menjadi variabel input pada JST (Hermawan, 2000). Kesebelas gejala tersebut adalah hidung tersumbat (x1), pilek (x2), bersin(x3), keluar sekret /ingus(x4), hidung gatal(x5), batuk(x6), alergi(x7), nyeri kepala /pusing(x8), demam(x9), keluar

Tabel 1. Gejala dan Nilainya

Gejala hidung tersumbat (x1) Pilek (x2)

Keterangan nilai 0 jika tidak , nilai 1 jika ya nilai 0 jika tidak nilai 0,25 jika ya kurang dari 3 minggu nilai 0,50 jika ya antara 3-6 minggu nilai 1 jika ya lebih dari 6 minggu nilai 0 jika tidak nilai 0,25 jika ya kurang dari 3 minggu nilai 0,50 jika ya antara 3-6 minggu nilai 1 jika ya lebih dari 6 minggu nilai 0 jika tidak; nilai 1 jika ya

Bersin(x3)

Keluar /ingus(x4)

sekret nilai 0 jika tidak; nilai 1 jika ya nilai 0 jika tidak; nilai 0,50 jika ya tapi batuk ringan; nilai 1 jika sedang/berat; nilai 0 jika tidak;nilai 1 jika ya nilai 0 jika tidak ; nilai 0,25 jika serangan pusing ringan (tidak terus menerus); nilai 0,5 jika pusing sedang (<3 hari); nilai 1 jika pusing lebih dari 3 hari nilai 0 jika tidak; nilai 0,25 jika demam ringan; nilai 0,5 jika demam sedang; nilai 1 jika demam lebih dari 3 hari nilai 0 jika tidak; nilai 0,50 jika tetapi kuran dari 50ml nilai 1 jika ya nilai 0 jika tidak; nilai 0,50 jika lemas sedang; nilai 1 jika sangat lemas nilai 0 jika tidak ; nilai 1 jika ya nilai 0 jika tidak ; nilai 1 jika ya

banyaknya penyakit yang didiagnosa. Langkah yang dikerjakan adalah: 1. Panggil data pelatihan (latih3.txt) 2. Tetapkan nilai parameter minimum alfa dan penurunan alfa 3. Tetapkan nilai parameter penurunan alfa 4. Inisialisasi klaster awal 5. Mencari jarak vektor 6. Tentukan klaster data dengan memilih jarak vektor yang minimum 7. Selama (alfa>=MinAlfa), hitung nilai bobot dan perubahan nilai alfa 8. Simpan bobot akhir dalam file bobot11.txt Pengujian

Hidung gatal(x5) Batuk(x6)

Setelah dihasilkan bobot akhir, tahap selanjutnya adalah pengujian. Langkahnya adalah sebagai berikut : 1. Panggil file bobot akhir (bobot11.txt) 2. Panggil data yang akan diuji (latih3.txt; ujitht2.txt, ujisingle1.txt) 3. Mencari jarak vektor 4. Tentukan klaster data dengan memilih jarak vektor yang minimum 5. Tampilkan hasil diagnosa D.IMPLEMENTASI DAN HASIL Untuk melakukan pelatihan dan pengujian data menggunkan JST LVQ, diimplementasikan dengan Matlab. Secara umum, program mempunyai 2 buah modul dan sebuah program utama. Modul pertama digunakan untuk proses pelatihan, disimpan dengan nama LatihLVQ.m.
Pilih Pelatihan * input file data : latih3.txt * input nilai target alfa * input penurunan nilai alfa * simpan file bobot : bobot11.dat ---------------------------------> Masukkan nama file pelatihan ='latih3.txt' --> Nilai target alfa = 0.00001

Alergi(x7) Nyeri /pusing(x8)

kepala

Demam(x9)

Keluar darah(x10)

Lemas(x11)

Nyeri tekan(x12)

Tidak enak badan (x13)

Pelatihan Pelatihan dilakukan menggunakan jaringan saraf LVQ . Jumlah klaster yang dipakai pada sistem ini sebanyak 3, sesuai dengan

Epoh Epoh Epoh ------Epoh Epoh Epoh

ke-1; alfa =0.1 ke-2; alfa =0.09 ke-3; alfa =0.081 ke-86; alfa =1.2901e-005 ke-87; alfa =1.1611e-005 ke-88; alfa =1.045e-005

BobotAkhir =
Columns 1 through 12 -1.8086 0.3827 -2.5883 -1.5054 0.6516 -1.6073 1.1052 -0.1349 0.8358 1.2757 -1.3840 0.6706 -1.5070 -0.8884 -2.1594 -0.7259 1.1335 -1.4205 -0.1895 2.1383 0.6281 2.6408 1.8459 -0.6248 -0.1171 -0.4800 -2.0685 1.0700 1.0608 -1.0513 4.4309 1.0814 0.0668 1.9211 -1.2793 1.3412 Column 13 0.9331 -1.6795 0.6198 -

simpan hasil ? (y/t) :y Simpan bobot akhir bobot11.dat

di

file

Modul yang kedua bernama UjiLVQ1.m, digunakan untuk melakukan proses pengujian. Sedangkan program utama berisi scrip untuk menampilkan menu serta pemanggilan modul LatihLVQ dan UjiLVQ1.
Testing pada Multi Data Data ke- Klaster1 Klaster2 Klaster3 Target Hasil ---------------------------------------------------------Hasil = 1 5.5360 2 6.3739 3 6.4152 4 6.1963 5 6.1347 6 6.3473 5.1900 1 5.4698 1 5.9332 1 5.5590 1 5.3079 1 5.4657 1 5.7949 1 5.9373 1 6.1352 1 5.8486 1 6.1612 1 5.9059 1

7 5.8314 8 6.5257 9 5.4992 10 5.6130 11 5.8138 12 5.6269 13 5.0954 14 6.0121 15 5.6988 16 6.3460 17 5.5227 18 5.2452 19 6.5287 20 5.9176 21 5.5477 22 6.0421 23 5.7409 24 5.2067 25 5.6294 26 6.0083 27 5.4335 28 5.7769 29 6.4152 30 5.4992 31 6.1727 32 6.0071 33 5.7769 34 6.0854 35 6.1101 36 6.3066

5.6589 1 6.2755 1 5.1030 1 5.7764 3 6.0131 3 5.8804 3 5.4145 3 5.9707 1 5.3396 2 6.1393 1 5.2362 1 5.5830 1 5.7635 1 5.7879 1 5.7525 3 5.7075 1 5.8069 3 5.4809 3 5.4830 1 4.9794 2 4.7946 1 4.5433 1 5.5506 1 4.8708 1 4.9935 2 5.0093 2 4.5433 1 4.9451 1 5.0345 1 5.0952 1

6.6355 1 6.5797 1 6.0505 1 6.8987 3 6.6729 3 7.0654 3 6.4833 3 6.8521 1 5.2706 2 7.1858 1 5.7297 1 6.5831 3 6.0107 1 6.4527 1 6.7621 3 6.3369 1 6.6570 3 6.5433 3 6.1718 1 4.6137 2 5.4587 1 5.0859 1 5.8830 1 5.1424 1 5.0066 1 4.5581 2 5.0859 1 5.2475 1 5.9337 1 5.2399 1

37 6.0377 38 6.0574 39 5.8828 40 6.0581 41 6.0395 42 5.8056 43 5.6678 44 5.2866 45 5.4209 46 6.0083 47 6.1031 48 6.1357 49 6.1157 50 6.1157 51 5.5477 52 6.4436 53 6.5375 54 6.4046 55 5.5477 56 6.4424 57 5.3575 58 6.2655 59 5.5477 60 6.4939 61 5.8138 62 5.8138 63 5.3346 64 5.5963

4.9537 2 4.8521 1 5.0258 1 5.0338 2 4.9856 1 4.7732 1 5.1708 1 5.0500 1 4.7553 1 4.9794 2 4.8809 1 5.0380 1 5.1625 2 5.1625 2 5.7525 3 6.2327 1 6.0964 1 6.1801 3 5.7525 3 5.7052 1 5.8263 3 6.2122 1 5.7525 3 6.1369 1 6.0131 3 6.0131 3 5.6841 3 5.6735 3

4.7083 2 5.2473 1 5.4663 1 5.1135 1 5.4505 1 4.9614 1 5.3148 1 5.2745 1 5.0430 1 4.6137 2 4.9044 1 5.6212 1 4.7913 2 4.7913 2 6.7621 3 6.6138 1 6.5973 1 6.5842 1 6.7621 3 6.2857 1 6.3188 3 7.0253 1 6.7621 3 6.7443 1 6.6729 3 6.6729 3 6.4966 3 6.8989 3

Data ke-31 Data ke-40 Data ke-54 TOTAL INCORRECT =4 PROSENTASE KEBENARAN =94%

Dibawah ini disajikan tabel hasil uji coba. Tabel 2. Perbandingan Hasil Uji Coba
Pelatihan (file latih3.txt) Alfa () Dec Epoch () 0.001 0.1 44 0.01 459 0.001 4603 0.0001 0.1 66 0.01 665 0.001 6905 0.00001 0.1 88 0.01 917 0.001 9206 0.000001 0.1 110 0.01 1146 0.001 11508 Pengujian File File latih3.txt ujitht2.txt 94% 79% 64% 48% 64% 48% 94% 79% 64% 48% 64% 48% 94% 93% 64% 48% 64% 48% 94% 79% 64% 48% 64% 48%

Berdasarkan tabel diatas hasil pengujian terbaik 93%-94%, berada pada nilai alfa 0,00001, penurunan nilai alfa 0,1, epoh tercapai pada nilai 88. Dari nilai kebenaran yang dicapai, sistem masih perlu dipertimbangkan untuk digunakan secara diagnosis pasien. E.KESIMPULAN Sistem yang dibuat mampu untuk mendiagnosa penyakit secara optimal pada alfa = 0.00001 dan penurunan alfa = 0.1, dengan tingkat kebenaran pengujian pelatihan 94%. Perlu pelatihan dengan nilai parameter yang lebih bervariasi agar nilai kebenaran mendekati 100%.

F. DAFTAR PUSTAKA

~ INCORRECT UJI Data ke-18

Fausett, L., 1994, Fundamentals of Neural Network: Architectures, Algorithms,

and Applications, Hall,Inc.,New Jersey.

Prentice-

Han J, Kamber M, 2001. Data Minning Concepts & Techniques. USA: Academic Press Hermawan, Arif, 2000, Jaringan Syaraf Tiruan dan Aplikasinya , Penerbit Andi, Yogyakarta. Kusumadewi, Sri, 2004, Membangun Jaringan Syaraf Tiruan menggunakan Matlab dan Excel link, Graha Ilmu, Yogyakarta. Ridwan Fansuri, Muhammad, 2011, Klasifikasi Genre Musik Menggunakan Learning Vector Quantization(LVQ) [Skripsi], Bogor: Departemen Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor. Siang, Jong Jek, 2005, Jaringan Syaraf Tiruan & Pemrogramannya Menggunakan Matlab, Penerbit Andi, Yogyakarta.

Wahab, Iis Hamsir Ayub, 2008, Identifikasi parasit malaria dalam darah menggunakan metode segmentasi citra digital dan jaringan syaraf tiruan [Thesis], Yogyakarta, Universitas Gadjah Mada

Widodo TN, 2005, Sistem Neuro Fuzzy, Graha Ilmu, Yogyakarta. ---- &&& ----