45 BAB IV PEMBAHASAN
A. Hasil Model Radial Basis Function Neural Network (RBFNN)
Langkah-langkah untuk menentukan model terbaik Radial Basis Function Neural Network (RBFNN) untuk diagnosis penyakit jantung adalah sebagai berikut:
1. Preprocessing Sinyal
Detakan jantung yang telah direkam oleh alat phonocardiogram (PCG) kemudian akan disimpan dengan format suara (WAV file). Data yang digunakan dalam penulisan tugas akhir ini adalah sebanyak 25 data rekaman detak jantung pasien pengidap penyakit jantung yang diambil dari RS PKU Muhammadiyah Yogyakarta dan 25 data rekaman detak jantung manusia normal. Dari setiap data tersebut hanya diperlukan satu detakan jantung guna proses analisis. Sehingga perlu dilakukan proses pemotongan sinyal suara detak jantung. Selain itu, diperlukan pula proses normalisasi terlebih dahulu dengan membawa data ke bentuk normal baku (mean = 0, standar deviasi = 1). Normalisasi diperlukan supaya data berada pada rentang yang sama, besar kecilnya amplitudo ketika proses perekaman tidak berpengaruh. Berikut adalah langkah-langkah preprocessing sinyal detak jantung.
a. Proses Pemotongan Sinyal Detak Jantung
Data rekaman sinyal detak jantung berupa file dengan format WAV, sehingga diperlukan software khusus untuk memotong sinyal tersebut. Salah satu software yang dapat digunakan adalah Sony Sound Forge versi 10. Pada proses pemotongan cukup diambil satu sinyal detakan dengan metode pemotongan rectangle.
46
Berikut ini adalah gambar proses pemotongan sinyal detak jantung.
(a)
(b)
(c)
Gambar 18. Proses pemotongan sinyal PCG (a) sebelum dipotong, (b) proses pemotongan, (c) hasil pemotongan.
b. Proses Normalisasi Sinyal
Sinyal yang telah dipotong kemudian dieksport dalam format yang sama.
Kemudian sinyal akan dinormalisasi dengan bantuan software MATLAB R2013a.
Proses normalisasi bertujuan agar data tidak berpengaruh pada besar kecilnya amplitudo sinyal hasil perekaman, proses normalisasi juga tidak mengubah informasi yang terdapat pada sinyal. Contoh sinyal yang telah dinormalisasikan untuk data 60-58-94.wav ditunjukkan pada Gambar 19.
S1 S2
S1 S2
S1 S2 S1
S2
S1
S2 S2
S1
S1 S2
S1 S2
S1 S2
S1 S2
S1 S2
S1 S2
S1 S2
47
Gambar 19. Sinyal detak yang telah dinormalisasi
c. Dekomposisi dan Ekstraksi Sinyal
Data yang telah dinormalisasi selanjutnya akan diekstraksi. Proses ekstraksi sangat diperlukan dalam memperoleh informasi penting yang tersimpan dalam data. Proses dekomposisi sinyal menggunakan Discrete Wavelet Transform (DWT) mother Haar dengan level maksimum dekomposisi diperoleh dari Persamaan (2.7). Proses DWT digunakan untuk menunjukkan ciri sinyal, menapis data dan meningkatkan kualitas data. Proses ini dilakukan dengan bantuan software MATLAB R2013a menggunakan toolbox wavelet design &
analisis-one dimensional.
48
Berikut adalah proses dekomposisi DWT Haar level 12 untuk 60-58-94.wav
Gambar 20. Hasil dekomposisi DWT Haar level 12
Hasil dekomposisi dan detail kemudian diekspor ke dalam workspace.
Kemudian sinyal diekstraksi dengan script dari MATLAB:
[Ea,Ed]=wenergy(dec.coefs,dec.longs)
49
Tabel 1. Tabel koefisien hasil dekomposisi DWT haar Koefisien Nilai Koefisien
D1 0.0547
D2 0.2161
D3 0.8228
D4 2.9687
D5 6.8019
D6 7.1118
D7 67.3959
D8 7.3832
D9 6.5613
D10 0.6314
D11 0.0335
A12 0.0032
Selanjutnya diambil dua koefisien terbesar dari Ed. Untuk data ke-21 koefisien D7 dan D8 memiliki nilai yang lebih besar sehingga DWs dibentuk dari D7 dan D8. Kemudian didapatkan fitur energy, minimum, maksimum, dan standar deviasi. Fitur energy didapatkan dari nilai terbesar koefisien Ed. Standar deviasi didapat dari perhitungan nilai standar deviasi. Minimum didapatkan dari nilai terkecil DWs sedangkan maksimum didapatkan dari nilai terbesar.
Ekstraksi dari sinyal 60-58-94.wav dituliskan dalam Tabel 2. Hasil ekstraksi secara lengkap dituliskan dalam lampiran.
50
Tabel 2. Hasil ekstraksi sinyal Nama File 60-58-94.wav
Energi 67.3959
Minimum -0.6602
Maksimum 0.5850
Standar Deviasi 0.1077
2. Pendefinisian Variabel Input dan Target
Pendefinisian variable input dan target digunakan sebagai data input dan data target jaringan. Sebanyak 4 parameter input berasal dari ekstraksi sinyal menggunakan transformasi wavelet haar. Sehingga terdapat 4 neuron pada lapisan input. Variabel input secara lengkap dapat dilihat pada lampiran.
Variabel target berasal dari diagnosis yang terdapat pada rekam medis pasien penderita penyakit jantung di RS PKU Muhammadiyah Yogyakarta. target dan output berupa vektor yang mewakili masing-masing stadium. Pola target yang digunakan yaitu 0 untuk jantung normal dan 1 untuk jantung tidak normal. Hasil klasifikasi yang didapatkan merupakan bilangan desimal. Pengklasifikasian dilakukan dengan membulatkan bilangan desimal tersebut dengan kriteria, jika
maka dibulatkan menjadi 0, sedangkan apabila maka hasil perhitungan dibulatkan menjadi 1.
3. Pembagian Data Input
Langkah selanjutnya adalah pembagian data input yang berupa data training dan testing. Dalam tugas akhir ini data training yang digunakan adalah 40 sampel data yaitu 80% dari 50 total sampel data dan data testing yang digunakan adalah 10
51
sampel data yaitu 20% dari 50 total sampel data. Hasil pembagian data input terlampir pada Lampiran 1 untuk data training dan Lampiran 2 untuk data testing.
4. Pembelajaran Radial Basis Function Neural Network
Data training kemudian digunakan dalam proses clustering. Proses clustering yang digunakan adalah metode K-Means clustering. Proses K-Means clustering dilakukan dengan aplikasi MINITAB 16.0 sehingga didapatkan pusat masing- masing cluster dan jarak yang digunakan dalam proses RBFNN. Tabel 3 merupakan hasil jarak dan pusat clustering.
Tabel 3. Perhitungan jarak dan pusat cluster dengan K-Means Pusat Cluster
Jarak
X1 X2 X3 X4
Cluster 1 43.3495 -0.3348 0.3319 0.0794 1.201 Cluster 2 60.1438 -0.2019 0.2272 0.0197 0.982 Cluster 3 54.3719 -0.278 0.3639 0.0249 1.093 Cluster 4 66.403 -0.4588 0.4389 0.0556 1.58 Cluster 5 26.2762 -0.1589 0.1578 0.0295 2.091 Cluster 6 48.753 -0.3023 0.2857 0.049 1.464 Cluster 7 40.8332 -0.4525 0.4693 0.1096 0.705 Cluster 8 31.8604 -0.2168 0.1976 0.0561 0.713 Cluster 9 37.3449 -0.34 0.368 0.0694 1.81
Setelah masing-masing pusat cluster dan jaraknya didapatkan, selanjutnya dilakukan proses RBFNN dengan menggunakan program rbfDesign dan globalRidge. Proses RBFNN ini dilakukan dengan MATLAB R2013a.
52 5. Menentukan Jaringan Optimum
Proses RBFNN selanjutnya adalah pengoptimalan jaringan dan pengoptimalan bobot menggunakan Persamaan (2.18). Jaringan optimum didapatkan dengan menentukan neuron tersembunyi terlebih dahulu banyak neuron tersembunyi yang dapat menghasilkan jaringan optimum adalah neuron yang dapat menghasilkan akurasi terbaik. Dengan menggunakan metode trial and error, beberapa cluster dicoba pada program MATLAB R2013a. Hasil akurasi dari beberapa cluster dengan metode K-Means clustering.
Tabel 4. Hasil akurasi beberapa cluster
Banyak Cluster Akurasi Training (%) Akurasi Testing (%)
2 67.5 50
3 70 50
4 82.5 60
5 82.5 70
6 82.5 70
7 80 80
8 90 80
9 92.5 90
10 0 0
Dari cluster yang digunakan pada Tabel 4 dapat dilihat bahwa nilai akurasi data training dan testing berpola tidak beraturan, namun nilainya cenderung naik apabila cluster semakin banyak meskipun pada 10 cluster tidak ditemukan nilainya. Pada K-Means cluster nilai akurasi data training dan testing terbaik didapatkan dengan cluster sebanyak 9, sehingga jaringan dengan banyak cluster 9 merupakan jaringan yang menghasilkan akurasi optimum untuk metode K-Means clustering.
53
Dengan demikian model RBFNN terbaik untuk diagnosis penyakit jantung mempunyai arsitektur 4 neuron pada lapisan input, 9 neuron pada lapisan tersembunyi, dan 1 neuron pada lapisan output. Fungsi aktivasi yang digunakan pada lapisan tersembunyi adalah fungsi aktivasi gaussian dan fungsi yang digunakan pada lapisan output adalah fungsi linear atau identitas. Arsitektur RBFNN jaringan terbaik yang digunakan untuk diagnosis penyakit jantung dengan 4 neuron pada lapisan input yaitu sampai , sampai untuk 9 neuron pada lapisan tersembunyi, dan untuk 1 neuron output-nya dapat dilihat pada gambar berikut ini.
Gambar 21. Arsitektur RBFNN jaringan terbaik
B. Hasil Diagnosis
Berdasarkan uraian diatas, didapatkan arsitektur RBFNN jaringan terbaik terdiri dari 4 neuron pada lapisan input, 9 neuron pada lapisan tersembunyi, dan 1 neuron pada lapisan output. Selanjutnya, menentukan bobot yang dihasilkan dari metode
54
global ridge-regression pada fungsi aktivasi Gaussian serta model RBFNN yang didapatkan.
Bobot antara neuron tersembunyi dan neuron output dicari dengan Persamaan (2.18) yaitu,
= vektor bobot klasifikasi = vektor target klasifikasi
= fungsi aktivasi neuron tersembunyi = parameter regulasi
= matriks identitas ukuran
Berdasarkan nilai pusat, jarak, dan bobot yang dihasilkan, maka model Radial Basis Function Neural Network (RBFNN) adalah:
Dengan fungsi aktivasi Gaussian,
= banyak neuron tersembunyi
= bobot dari neuron lapisan tersembunyi ke- menuju neuron output ke- = bobot bias menuju neuron output ke-
= fungsi aktivasi neuron tersembunyi ke-
55 = merupakan vektor input
=
=
=
Dengan jarak cluster:
; ; ; ; ;
; ; ;
Dengan
Pusat cluster 1:
; ; ;
Hasil cluster secara lengkap terlampir pada Lampiran.
Bobot y:
; ; ; ; ;
; ; ;
Dengan bobot bias
Contoh perhitungan fungsi Gaussian untuk data ke-21 (60-58-94.wav):
56
57
Hasil perhitungan fungsi aktivasi Gaussian pada model RBFNN selengkapnya terlampir pada Lampiran.
Berdasarkan nilai hasil perhitungan fungsi aktivasi Gaussian, dilakukan perhitungan untuk menentukan hasil klasifikasi dengan Persamaan (2.16) sebagai berikut.
Tabel 5. Hasil diagnosis
Nama File Output RBFNN Output Pembulatan Diagnosis
60-58-94.wav 0.68 1 Sakit Jantung
58
Pembulatan klasifikasi terlampir pada Lampiran. Berdasarkan pembulatan hasil klasifikasi pada Lampiran dapat dihitung ketepatan hasil diagnosis penyakit jantung dengan model RBFNN.
C. Analisis Ketepatan Hasil
Ketepatan hasil klasifikasi dapat dihitung berdasarkan sensitivitas, spesifisitas, dan akurasi. Nilai akurasi telah diketahui melalui program MATLAB yang telah dilakukan sebelumnya, sedangkan untuk mengetahui nilai sensitivitas dan spesifisitas, ditentukan terlebih dahulu nilai performance measure yaitu True Positive (TP), True Negative (TN), False Positive (FP), dan False Negative (FN).
Berikut adalah performance measure model RBFNN untuk data training dan testing untuk arsitektur RBFNN.
Tabel 6. Performance measure dari diagnosis Target Hasil Klasifikasi
Jumlah Normal Jantung
Data Training
Normal 17 (TN) 3 (FP) 20
Jantung 20 (TP) 20
Jumlah 40
Data Testing
Normal 4 (TN) 1 (FP) 5
Jantung 5 (TP) 5
Jumlah 10
Jumlah Data Seluruhnya 50
a. Data Training 1.) Sensitivitas:
2.) Spesifisitas:
59 3.) Akurasi:
b. Data Testing 1.) Sensitivitas:
2.) Spesifisitas:
3.) Akurasi:
Pada data training, tingkat sensitivitas 100% artinya untuk pasien yang memiliki penyakit jantung kemungkinan model RBFNN mengklasifikasi dengan tepat adalah sebesar 100%. Spesifisitas data training 85% artinya untuk pasien yang tidak memiliki penyakit jantung kemungkinan model RBFNN mengklasifikasi dengan tepat adalah sebesar 85%. Nilai akurasi pada data training 92.5% artinya hasil klasifikasi dengan model RBFNN akurat sebesar 92.5%, baik untuk pasien yang tidak memiliki penyakit jantung (normal), maupun yang memiliki penyakit jantung.
Pada data testing, tingkat sensitivitas 100% artinya untuk pasien yang memiliki penyakit jantung kemungkinan model RBFNN mengklasifikasi dengan tepat adalah sebesar 100%. Spesifisitas data testing 80% artinya untuk pasien yang tidak memiliki penyakit jantung kemungkinan model RBFNN mengklasifikasi dengan tepat adalah sebesar 80%. Akurasi pada data testing 90% artinya hasil klasifikasi dengan model RBFNN akurat sebesar 90%, baik untuk pasien yang tidak memiliki penyakit jantung (normal), maupun yang memiliki penyakit jantung.
60
D. Tampilan Diagnosis dengan Graphical User Interface (GUI)
Perancangan layar GUI bertujuan untuk memudahkan pengguna dalam mendiagnosiskan kondisi jantung berdasarkan sinyal PCG. GUI tersebut dibangun berdasar hasil model terbaik Radial Basis Function Neural Network (RBFNN) pada proses sebelumnya. Gambar berikut ini adalah rancangan akhir GUI untuk mendiagnosiskan file rekaman 60-58-94.wav.
Gambar 22. Tampilan layar diagnosis dengan GUI
Pada tampilan layar GUI diatas menggunakan file rekaman 60-58-94.wav
muncul kotak dialog file selector. Setelah memilih file rekaman 60-58-94.wav, maka akan muncul grafik sinyal PCG dari file tersebut beserta namanya dan nilai variabel input dari hasil ekstraksi menggunakan wavelet mother haar. Setelah t