PEMODELAN
FUZZY LEARNING VECTOR QUANTIZATION
PADA PENGENALAN SUARA PARU-PARU
FADHILAH SYAFRIA
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
PERNYATAAN MENGENAI TESIS DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa tesis berjudul Pemodelan
Fuzzy
Learning Vector Quantization
pada Pengenalan Suara Paru-Paru adalah benar
karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam
bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang
berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari
penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di
bagian akhir tesis ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.
Bogor, Agustus 2014
Fadhilah Syafria
RINGKASAN
FADHILAH SYAFRIA. Pemodelan
Fuzzy Learning Vector Quantization
pada
Pengenalan Suara Paru-Paru. Dibimbing oleh AGUS BUONO dan BIB
PARUHUM SILALAHI.
Paru-paru merupakan salah satu organ vital manusia. Organ ini memiliki
peranan pada sistem pernapasan, karena dapat memenuhi kebutuhan tubuh akan
oksigen. Jika paru-paru mengalami gangguan, maka sistem pernapasan manusia
juga akan mengalami gangguan, bahkan dapat menyebabkan kematian. Salah satu
cara yang digunakan dokter untuk mendiagnosa kelainan pada paru-paru adalah
dengan mendengarkan suara pernapasan menggunakan
stetoskop.
Teknik ini
dikenal dengan teknik auskultasi. Teknik tersebut sangat umum digunakan,
namun memiliki beberapa kelemahan dalam melakukan diagnosa apabila
dipengaruhi oleh faktor seperti suara paru-paru berada pada frekuensi rendah,
masalah kebisingan lingkungan, kepekaan telinga, hasil analisa yang subjektif,
dan pola suara yang hampir mirip. Faktor-faktor di atas dapat menyebabkan
kesalahan diagnosa jika proses auskultasi tidak dilakukan dengan benar.
Studi ini melakukan pengenalan suara paru-paru normal dan suara paru-paru
yang terdeteksi gangguan (abnormal). Suara paru-paru yang dihasilkan pada
beberapa kasus penyakit menunjukkan adanya pola tertentu yang bisa dikenali.
Pola suara ini dapat diambil sebagai bahan untuk diagnosa.
Pengenalan suara secara umum memiliki dua bagian utama, yaitu ekstrasi
ciri dan pengukuran kemiripan (klasifikasi). Pada penelitian ini, metode ekstraksi
ciri yang digunakan adalah
Mel Frequency Cepstrum Coeffisient
(MFCC). MFCC
memberikan hasil sangat baik dalam mengklasifikasi suara nafas normal dan suara
wheeze
. Metode klasifikasi yang digunakan adalah metode
Fuzzy Learning Vector
Quantization
(FLVQ)
.
Algoritme FLVQ
adalah suatu algoritme yang
mengkombinasikan konsep
fuzzy
dengan konsep
neural network
LVQ. Konsep ini
dikenal dengan nama konsep
hybrid.
Penggunaan kedua metode ini diharapkan
dapat memberikan akurasi yang tinggi dalam kasus pengenalan suara paru-paru.
Hasil percobaan menunjukan bahwa Metode FLVQ memiliki akurasi yang
lebih baik dibandingkan LVQ yaitu dengan akurasi rata-rata pada data latih
sebesar 99.27% dan data uji sebesar 93.88%, sedangkan LVQ sebesar 87.83%
untuk data latih dan sebesar 86.88% untuk data uji. Penerapan konsep
hybrid
pada
metode FLVQ dapat memberikan pengaruh yang sangat baik dalam meningkatkan
akurasi, terbukti dengan meningkatnya akurasi hingga 11.44% untuk data latih
dan 7% untuk data uji.
SUMMARY
FADHILAH SYAFRIA. Modelling of Fuzzy Learning Vector Quantization on
Lung Sound Recognition . Supervised by AGUS BUONO and BIB PARUHUM
SILALAHI.
The lung is one of the vital human organs. This organ has a role in the
respiratory system, because it can fulfill oxygen to the body’s need. I
f the lung has
disorder, the human respiratory system also will be impaired, it can even lead to
death. One of the ways that can be used to diagnose the abnormalities of the lung
is by listening sound of breathing using a stethoscope. This technique is known as
auscultation. This technique is very commonly used, but has some weakness to
make diagnosis if influenced by factors such as lung sound are low frequency,
enviromental noise problems, sensitivity of the ear, subjecting of diagnosis, and
sound patterns of lung sound that are quite similar. The above factors can lead to
fault diagnosis if the auscultation process is not done properly.
This research did normal lung sound recognition and abnormal lung
sound. Lung sound generated in some cases of the diseases showed a specific
pattern that can be recognized. This sound pattern can be taken as material for
diagnosis.
The sound recognition in general has two main parts, i.e. extraction feature
and similarity measurement (classification). In this research, extraction feature
method is used Mel Frequency Cepstrum Coefficient (MFCC). MFCC feature
gives the very good results in classifying normal breath sound and wheeze sounds.
The classification method used is Fuzzy Learning Vector Quantization (FLVQ).
FLVQ algorithm is an algorithm that combines a fuzzy concept with the concept
of neural network LVQ. This concept is known as a hybrid concept. The uses of
the two methods are expected to provide high accuracy in case of the lung sound
recognition.
The experimental results showed that the FLVQ method has better
accuracy compared to LVQ method with average at 99.27% for training data and
93.88% for the test data, while for LVQ 87.83% for training data and 86.88% for
test data. Application of the hybrid concept in FLVQ method can provide an
excellent effect to improving accuracy, as evidenced by increased accuracy of up
to 11.44% for training data and 7% for the test data.
© Hak Cipta Milik IPB, Tahun 2014
Hak Cipta Dilindungi Undang-Undang
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan
atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan,
penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau
tinjauan suatu masalah; dan pengutipan tersebut tidak merugikan kepentingan
IPB
Tesis
sebagai salah satu syarat untuk memperoleh gelar
Magister Komputer
pada
Program Studi Ilmu Komputer
PEMODELAN FUZZY LEARNING VECTOR
QUANTIZATION PADA PENGENALAN SUARA PARU-PARU
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2014
Judul Tesis : Pemodelan
Fuzzy Learning Vector Quantization
pada Pengenalan
Suara Paru-Paru
Nama
: Fadhilah Syafria
NIM
: G651120411
Disetujui oleh
Komisi Pembimbing
Dr Ir Agus Buono, MSi, MKom
Ketua
Dr Ir Bib Paruhum Silalahi, MKom
Anggota
Diketahui oleh
Ketua Program Studi
Ilmu Komputer
Dr Eng Wisnu Ananta Kusuma, ST, MT
Dekan Sekolah Pascasarjana
Dr Ir Dahrul Syah, MScAgr
PRAKATA
Puji dan syukur penulis ucapkan kepada Allah SWT atas segala karuniaNya
sehingga karya ilmiah ini berhasil diselesaikan. Tema yang dipilih dalam
penelitian yang dilaksanakan sejak bulan Agustus 2013 adalah Pemodelan
Fuzzy
Learning Vector Quantization
pada Pengenalan Suara Paru-Paru.
Terima kasih penulis ucapkan kepada Bapak Dr Ir Agus Buono, MSi
MKom dan Bapak Dr Ir Bib Paruhum Silalahi, MKom selaku pembimbing, serta
Bapak Irman Hermadi, SKom MSi Phd selaku penguji dalam ujian tesis saya.
Terima kasih juga diucapkan kepada Bapak Toto Haryanto, Skom MSi selaku
dosen mata kuliah kolokium yang telah banyak memberi saran untuk penelitian
ini. Ungkapan terima kasih juga disampaikan kepada suami penulis Ahmad Hafiz
yang selalu memberi semangat dan dukungan, serta mendoakan kelancaran dan
keberhasilan tesis ini. Tak lupa pula ungkapan terima kasih untuk Papa, Mama,
Kak Iyel, Imul, Fursan dan seluruh keluarga atas segala doa dan kasih sayangnya.
Terima kasih kepada pengelola pasca sarjana, seluruh dosen dan staf
akademik Departemen Ilmu Komputer Institut Pertanian Bogor, dan teman-teman
angkatan 14. Terima kasih kepada Sdr. Inggih Permana sebagai teman diskusi
penulis dalam menyelesaikan tesis ini.
Semoga karya ini dapat bermanfaat. Kritik dan saran sangat penulis
harapkan demi kesempurnaan karya ini di kemudian hari.
Bogor, Agustus 2014
DAFTAR ISI
DAFTAR TABEL
vii
DAFTAR GAMBAR
vii
DAFTAR LAMPIRAN
viii
1
PENDAHULUAN
1
Latar Belakang
1
Perumusan Masalah
3
Tujuan Penelitian
3
Manfaat Penelitian
4
Ruang Lingkup Penelitian
4
2
TINJAUAN PUSTAKA
4
Pengenalan Suara Digital
4
Suara dan Sinyal
5
Digitasi Gelombang Suara
6
Teori Suara Paru-Paru
6
Suara
Tracheal
7
Suara
Vesicular
8
Suara
Crackle
8
Suara
Wheeze
9
Ekstraksi Ciri
9
Mel Frequency Cepstral Coefficient
(MFCC)
9
Fuzzy Neural Network
(FNN)
11
Learning Vector Quantization
(LVQ)
12
Aritmatika
Fuzzy
14
Representasi Bilangan
Fuzzy
Segitiga
14
Nilai Similaritas
15
Fuzzy Learning Vector Quantization
(FLVQ)
16
Pembentukan Vektor Pewakil
17
Penentuan Kelas Pemenang
17
Algoritme FLVQ
18
3
METODE PENELITIAN
20
Kajian Pustaka
21
Pengumpulan Data Suara
21
Segmentasi Suara
22
Data Latih dan Data Uji
22
Ekstraksi Ciri
22
Klasifikasi Suara Paru-Paru
23
Pengujian
24
Bahan dan Alat
25
4
HASIL DAN PEMBAHASAN
25
Persiapan Percobaan
25
Hasil Praproses
27
Hasil Ekstraksi Ciri
28
Hasil Pengujian Metode LVQ (Tanpa
Fuzzy
)
30
Hasil Pengujian Metode FLVQ
32
Koefisien MFCC 13
32
Koefisien MFCC 15
34
Koefisien MFCC 20
36
Koefisien MFCC 30
37
Rangkuman Hasil Pengujian LVQ
39
Analisa Hasil Pengujian
39
Pengaruh Jumlah Koefisien MFCC terhadap Akurasi
39
Pengaruh
Learning Rate
terhadap Akurasi
40
Pengaruh Koefisien
Fuzzyness
terhadap Akurasi
41
Tingkat Pengenalan Setiap Jenis Suara Paru-Paru
42
Perbandingan Tingkat Akurasi Metode LVQ dan FLVQ
43
5
SIMPULAN DAN SARAN
44
Simpulan
44
Saran
45
DAFTAR PUSTAKA
46
LAMPIRAN
49
DAFTAR TABEL
1
Parameter-parameter yang akan dilihat pengaruhnya terhadap
hasil identifikasi
24
2 Jumlah suara hasil segmentasi
26
3 Hasil segmentasi sinyal suara paru-paru
26
4 Kelompok data latih dan data uji
28
5 Struktur JST LVQ
30
6 Akurasi pengujian pada LVQ (data latih)
30
7 Akurasi pengujian pada LVQ (data uji)
30
8 Struktur JST FLVQ
32
DAFTAR GAMBAR
1
Blok diagram pembelajaran pola
5
2
Blok diagram pengenalan pola
5
3
Grafik sinyal analog
5
4
Grafik sinyal diskret
5
5
Tahapan digitasi
6
6
Sistem pernapasan manusia
7
7a Sinyal suara
tracheal
8
7b Diagram suara
tracheal
8
8a Sinyal suara
vesicular
8
8b Diagram suara
vesicular
8
9a Sinyal suara
crackle
8
9b Diagram suara
crackle
8
10a Sinyal suara
wheeze
9
10b Diagram suara
wheeze
9
11 Blok diagram tahapan MFCC
10
12 Arsitektur jaringan LVQ
13
13 Bilangan
crisp
14
14 Representasi bilangan
fuzzy segitiga
15
15 Nilai similaritas (1)
15
16 Nilai similaritas (2)
16
17 Ilustrasi pembentukan vektor pewakil
17
18 Contoh vektor pewakil untuk 4 kelas dan 4 dimensi masukan
17
19 Ilustrasi penentuan kelas pemenang
18
20 Diagram alir penelitian
21
21 Ilustrasi segmentasi data suara
22
22 Proses
frame blocking
dan
windowing
23
23 Ilustrasi perubahan data asli menjadi data hasil MFCC (data suara
tracheal
untuk koefisien MFCC 13 )
28
24 Plot sinyal hasil MFCC
29
26 Hasil pengujian data uji dengan MFCC 13, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
33
27 Hasil pengujian data latih dengan MFCC 15, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
34
28 Hasil pengujian data uji dengan MFCC 15, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
35
29 Hasil pengujian data latih dengan MFCC 20, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
36
30 Hasil pengujian data uji dengan MFCC 20, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
36
31 Hasil pengujian data latih dengan MFCC 30, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
38
32 Hasil pengujian data uji dengan MFCC 30, b1=1.01, b2=0.6; 0.5;
0.4; 0.3; 0.2 dan LR=0.5
38
33 Perbandingan akurasi berdasarkan koefisien MFCC
40
34 Perbandingan akurasi berdasarkan
learning rate
41
35 Perbandingan akurasi berdasarkan koefisien pelebaran
42
36 Perbandingan akurasi berdasarkan koefisien penyempitan 42
37 Tingkat pengenalan setiap jenis suara paru-paru
43
38 Perbandingan akurasi LVQ dan FLVQ
44
DAFTAR LAMPIRAN
1
Hasil pengujian metode LVQ
49
2
Hasil pengujian metode FLVQ
51
1 PENDAHULUAN
Latar Belakang
Paru-paru merupakan salah satu organ vital manusia. Organ ini
memiliki peranan pada sistem pernapasan, karena dapat memenuhi
kebutuhan tubuh akan oksigen. Jika paru-paru mengalami gangguan, maka
sistem pernapasan manusia juga akan mengalami gangguan, bahkan dapat
menyebabkan kematian. Diperkirakan ratusan ribu sampai jutaan penduduk dunia
terkena penyakit paru-paru setiap tahun dan hal tersebut menyebabkan 19%
penyebab kematian diseluruh dunia dan 15% penyebab kecacatan sepanjang hidup
(FIRS 2010). Menurut proyeksi WHO, pada tahun 2020 penyakit paru-paru
termasuk 10 penyebab masalah kesehatan masyarakat di dunia (WHO 2008).
Adapun di Indonesia penyakit paru-paru menduduki 10 besar peringkat utama
untuk penyebab masalah kesehatan masyarakat (PDPI 2010). Perlunya
meningkatkan kepedulian mengenai penyakit paru-paru adalah hal yang vital
karena penyakit paru-paru membunuh lebih banyak orang setiap tahunnya dan
sesuatu harus dilakukan untuk hal tersebut.
Salah satu cara yang digunakan dokter untuk mendiagnosa kelainan pada
paru-paru adalah dengan mendengarkan suara pernapasan menggunakan
stetoskop
.
Perangkat ini ditemukan pada tahun 1821 oleh seorang dokter prancis bernama
Laennec (Sovijarvi
et al.
2000). Suara pernapasan memiliki informasi penting
untuk mengetahui kelainan yang ada pada paru-paru (Emmanouilidou
et al
. 2012).
Teknik mendengarkan suara nafas menggunakan
stetoskop
dikenal
dengan teknik auskultasi. Teknik auskultasi merupakan teknik dasar yang
digunakan oleh dokter untuk mengevaluasi suara paru-paru. Teknik ini cukup
sederhana dan murah, namun teknik ini memiliki kelemahan yaitu hasil
analisisnya yang subjektif (Kiyokawa
et al
. 2001). Hasil analisis suara nafas
menggunakan teknik auskultasi bergantung pada kemampuan, pengalaman dan
pendengaran dokter yang melakukan analisis. Selain itu, pendengaran manusia
yang kurang sensitif terhadap suara dengan frekuensi yang rendah juga menjadi
permasalahan dalam teknik ini, dikarenakan suara pernapasan menempati
frekuensi yang cukup rendah. Masalah selanjutnya dalam teknik auskultasi adalah
masalah kebisingan lingkungan dan pola suara yang hampir mirip antara jenis
suara nafas satu dengan yang lain. Karena faktor-faktor tersebut di atas, kesalahan
diagnosis bisa terjadi apabila prosedur auskultasi tidak dilakukan dengan benar.
Berdasarkan permasalahan di atas, peneliti tertarik untuk melakukan
penelitian dalam melakukan pengenalan suara paru normal dan suara
paru-paru yang terdeteksi gangguan (abnormal). Suara paru-paru-paru-paru yang dihasilkan pada
beberapa kasus penyakit menunjukkan adanya pola tertentu yang bisa dikenali.
Pola suara ini dapat diambil sebagai bahan untuk diagnosa (Rizal
et al.
2010).
Beberapa penelitian mengenai pengenalan suara paru-paru ini telah
banyak dilakukan sebelumnya, beberapa diantaranya adalah Pengenalan Suara
Paru-Paru
Normal
Menggunakan
LPC
dan
Jaringan
Syaraf
Tiruan
Backpropagation oleh Achmad Rizal, L. Anggraini dan Vera Suryani (Rizal
et al.
(Emmanoulidou
et al.
2012), Discrimination of Lung Sounds using a Statistics of
Waveform Intervals oleh Taketoshi Orihashi, Hayaru Shouno dan Shoji Kido
(Orihashi
et al.
2006), Classification of Wheeze Sounds using Wavelets and
Neural Networks oleh Amjad Hashemi, Hossein Arabalibiek dan Khosrow Agin
(Hashemi
et al.
2011), Method for Automatic Detection of Wheezing in Lung
Sounds oleh R.J.Riella, P.Nohama dan J.M.Maia (Riella
et al.
2009), Rancang
Bangun Deteksi Suara Paru-Paru dengan Metode Jaringan Syaraf Tiruan
Backpropagation untuk Mendeteksi Penyakit Asma oleh Artiarini Kusuma N,
Kemala Sari dan Ardik Wijayanto (Kusuma
et al.
2010), A Computer-based
Sound Recognition System for the Diagnosis of Pulmonary Disorder oleh
A.E.El-Alfi, A.F.Elgamal dan R.M.Ghoniem (El-Alfi
et al.
2010)
Rizal
et. al
(2006) melakukan pengenalan suara paru-paru normal
menggunakan metode LPC dan jaringan syaraf tiruan
backpropagation
(JST BP).
Suara paru-paru dianggap sebagai
speech
dan dihitung koefisie LPC-nya. Dari
koefisien LPC didapat parameter
cepstral-
nya, untuk selanjutnya dikenali dengan
jaringan syaraf tiruan
backpropagation.
Dari penelitiannya ini, peneliti
mendapatkan tingkat akurasi baik yaitu 98.33%.
Emmanoulidou
et. al
(2012) melakukan pengembangan perangkat
pemrosesan sinyal untuk analisis rekaman auskultasi suara nafas. Pada penelitian
ini dilakukan analisis untuk mendeteksi suara paru-paru abnormal dengan
menggunakan pengklasifikasi Support Vector Machine (SVM).
Orihashi
et. al
(2006) membangun Computer Aided Diagnosis (CAD)
untuk mengklasifikasi suara paru-paru ke dalam tiga kelas yaitu
coarse crackle,
fine crackle
dan suara normal. Untuk melakukan klasifikasi, ekstraksi ciri yang
digunakan adalah
waveform interval
dan mekanisme pengenalan pola statistik
naive. Pada penelitian ini, peneliti memperoleh kinerja yang baik untuk data suara
paru-paru yang berasal dari rumah sakit Universitas Yamaguchi. Akurasi yang
diperoleh dari klasifikasi adalah 88.67%.
Hashemi
et. al
(2011) menganalisis jenis suara abnormal yaitu
wheeze
dan mengklasifikasikan suara
wheeze
menjadi dua kelas yaitu kelas monophonic
wheeze dan kelas polyphonic wheeze. Data suara nafas diperoleh dari rumah sakit
Loghman Hakim di Tehran, Iran. Suara nafas yang telah diperoleh akan
diklasifikasikan menggunakan Multilayer Perceptron (MLP). Akurasi yang
diperoleh dari penelitian ini adalah 89.28%.
Riella
et. al
(2009) menganalisis dan mengklasifikasi suara nafas
wheeze.
Clasifier
yang digunakan adalah Multilayer Perceptron. Akurasi yang diperoleh
adalah 84.82% untuk data suara dari orang yang berbeda dan 92.86% untuk data
suara dari orang yang sama.
Kusuma
et. al
(2010) membangun suatu sistem untuk mendeteksi
penyakit asma. Alat yang digunakan untuk mengumpulkan data suara adalah
stetoskop yang disambungkan dengan menggunakan pre amplifier dan amplifier
yang nantinya akan masuk ke PC melalui mono jack audio. Metode yang
digunakan untuk klasifikasi adalah metode Hamming Window, Fast Fourier
Transform (FFT) dan Backpropagation. Hasil pengujian menunjukkan bahwa
sistem dapat mendeteksi seseorang memiliki penyakit asma atau tidak. Akurasi
yang diperoleh adalah 80%.
suara paru (LSS). Metode ekstraksi ciri yang yang digunakan adalah
Mel
Frequency Ceptral Coefficients
(MFCC), sedangkan metode klasifikasi yang
digunakan adalah Linde Buzo Gray (LBG). Sistem akan mengklasifikan suara
paru-paru menjadi enam kelas yaitu normal, wheeze, crackle, squawk, stridor dan
rhoncus. Hasil eksperimen menunjukkan efektifitas dari sistem yang diusulkan
dalam mendeteksi gangguan paru-paru.
Pada penelitian tesis ini, penulis akan melakukan pengenalan pola suara
paru-paru menggunakan metode
Mel Frequency Ceptral Coefficients
(MFCC)
sebagai ekstraksi ciri dan
Fuzzy Learning Vector Quantization
(FLVQ) sebagai
classifier
. Suara paru-paru akan diklasifikasi menjadi empat kelas yaitu suara
vesicular
, suara
tracheal,
suara
wheeze
dan suara
crackle
. Suara
vesicular
dan
suara
tracheal
adalah suara nafas yang mengindikasikan paru-paru normal,
sedangkan
suara
wheeze
dan suara
crackle
mengindikasikan kelainan pada
paru-paru. Pemilihan suara
wheeze
dan suara
crackle
disebabkan karena kedua suara ini
adalah suara yang paling banyak mengindikasikan kelainan pada paru-paru
(Abaza
et al.
2009 ; Gurung
et al.
2011).
Metode ekstraksi ciri yang digunakan adalah Metode MFCC. MFCC
adalah metode ektraksi ciri yang memberikan hasil sangat baik dalam
mengklasifikasi suara nafas normal dan suara
wheeze
(Bahoura 2009). Adapun
untuk metode klasifikasi yang digunakan adalah Metode
Fuzzy Learning Vector
Quantization
. Metode ini merupakan metode
hybrid
yang mengintegrasikan
sistem
neural network
dengan logika
fuzzy
, sistem ini dikenal dengan sistem
Fuzzy Neural Network
(FNN). Sistem
neural network
telah banyak diaplikasikan
untuk proses pengenalan suara khususnya pengenalan suara paru-paru. Tetapi
dalam beberapa kasus,
neural network
belum memberikan hasil yang baik
(Yohanes 2003). Oleh karena itu, pada penelitian ini akan dikembangkan sistem
pengenalan suara paru-paru dengan
classifier
yang menggunakan konsep FNN.
Dengan konsep
hybrid
ini, diharapkan dapat memberikan hasil/
output
sebaik
mungkin dengan mengoptimalkan komponen-komponen yang ada di dalamnya.
Sebagai pembanding dalam pengujian, akan digunakan
classifier Learning Vector
Quantization
(LVQ) untuk melihat pengaruh konsep
hybrid
terhadap akurasi
pengenalan suara paru-paru.
Perumusan Masalah
Dari latar belakang yang telah dipaparkan, maka masalah yang diteliti
dapat dirumuskan yaitu bagaimana mengembangkan suatu model FLVQ pada
pengenalan suara paru-paru normal dan abnormal.
Tujuan Penelitian
Tujuan penelitian yang ingin dicapai adalah :
2
Membandingkan apakah model pengenalan suara paru-paru yang
menggunakan konsep
hybrid
(FLVQ) lebih baik daripada model
pengenalan suara paru-paru tanpa konsep
hybrid
(LVQ).
Manfaat Penelitian
Manfaat yang diinginkan dari penelitian ini adalah:
1
Penelitian ini diharapkan dapat memberikan model pengenalan suara
paru-paru normal dan abnormal yang bisa diterapkan di dunia nyata.
2
Penelitian ini diharapkan dapat memberikan informasi mengenai
pengaruh konsep
hybrid
terhadap akurasi pengenalan suara paru-paru.
Ruang Lingkup Penelitian
Ruang lingkup penelitian ini sebagai berikut:
1
Data masukan berupa rekaman suara paru-paru yang terdiri dari empat
jenis suara paru yaitu
Tracheal, Vesicular, Crackels
dan
Wheeze.
2
Data masukan diperoleh dari
repository
suara paru-paru yang ada di
Internet yaitu Littmann
Repository
3
Model pengenalan suara paru-paru yang dibuat belum memperhatikan
aspek-aspek lain yang bisa mempengaruhi suara paru-paru, seperti usia,
jenis kelamin, anatomi paru-paru, aktifitas sehari-hari dan lain
sebagainya.
4
Ekstraksi ciri menggunakan Metode MFCC
5
Metode klasifikasi yang digunakan adalah metode FLVQ dan metode
LVQ tanpa
fuzzy
sebagai pembanding.
6
Representasi bilangan
fuzzy
yang digunakan adalah bilangan
fuzzy
segitiga (
Triangular Fuzzy Sets
).
2 TINJAUAN PUSTAKA
Pengenalan Suara Digital
Pengenalan suara merupakan salah satu upaya agar suara dapat
dikenali atau diidentifikasi sehingga dapat dimanfaatkan. Pengenalan suara
dapat dibedakan ke dalam tiga bentuk pendekatan, yaitu pendekatan
akustik-fonetik (
acoustic-phonetic approach
), pendekatan kecerdasan buatan (
artificial
intelligence approach)
dan pendekatan pengenalan pola (
pattern recognition
approach
) (Anusuya dan Katti 2009).
dibandingkan polanya dengan setiap kemungkinan pola yang telah dipelajari
dalam fase pembelajaran, untuk kemudian diklasifikasi dengan pola terbaik
yang cocok. Blok diagram pembelajaran pola dan pengenalan pola suara
ditunjukkan pada Gambar 1 dan Gambar 2 (Ayunisa 2012) :
Ekstraksi Ciri Pembelajaran Pola
Suara
Latih Model
Gambar 1 Blok diagram pembelajaran pola
Ekstraksi Ciri Perbandingan
dengan Pola Model Suara
Uji
Suara Terkenali Pembuatan
Keputusan
Gambar 2 Blok diagram pengenalan pola
Suara dan Sinyal
Suara adalah gelombang longitudinal yang merambat melalui suatu
medium dan sampai ke telinga manusia sehingga dapat didengarkan. Medium
atau zat perantara ini bisa zat cair, padat, atau gas. Kebanyakan suara adalah
gabungan berbagai sinyal, tetapi suara murni secara teoritis dapat dijelaskan
dengan kecepatan osilasi atau frekuensi yang diukur dalam Hertz (Hz) dan
amplitudo (Indrayana 2012).
Sinyal adalah kuantitas fisik yang bervariasi dengan waktu, ruang,
maupun sembarang satu atau lebih peubah bebas lainya. Secara matematis
suatu sinyal dirumuskan sebagai fungsi dari satu atau lebih peubah bebas
(Indrayana 2012). Berdasarkan pada peubah bebas waktu (t) sinyal dibedakan
menjadi dua jenis yaitu sinyal analog dan sinyal diskret.
1
Sinyal Analog
Sinyal analog adalah adalah sinyal data dalam bentuk gelombang yang
kontinyu, yang membawa informasi dengan mengubah karakteristik
gelombang. Dua parameter/ karakteristik terpenting yang dimiliki oleh sinyal
analog adalah amplitude dan frekuensi. Sinyal analog biasanya dinyatakan
dengan gelombang sinus, mengingat gelombang sinus merupakan dasar untuk
semua bentuk sinyal analog. Grafik sinyal analog dapat dilihat pada Gambar 3.
Gambar 3 Grafik sinyal analog
2
Sinyal Diskret
Sinyal Diskret merupakan suatu besaran yang berubah dalam waktu dan
atau dalam ruang dan yang memiliki nilai pada suatu titik-titik waktu
tertentu. Jarak setiap titik waktu bisa saja berbeda-beda namun untuk
kemudahan penurunan sifat matematikanya biasanya jarak antar titik waktu
adalah sama. Contoh grafik sinyal diskret dapat dilihat pada Gambar 4.
Digitasi Gelombang Suara
Sebagian besar sinyal-sinyal untuk maksud praktis, seperti suara, sinyal
biologis, sinyal
seismic,
sinyal radar, sinyal sonar dan berbagai sinyal komunikasi
seperti sinyal audio dan video, adalah sinyal analog (Proakis dan Manolakis 1997).
Untuk memproses sinyal analog dengan alat digital, pertama-tama perlu
mengkonversinya menjadi bentuk digital yaitu mengkonversi menjadi suatu deret
angka yang mempunyai presisi nilai terbatas.
Proses konversi tersebut dikenal dengan digitasi. Digitasi merupakan
proses mengubah sinyal analog menjadi sinyal digital. Proses digitasi terdiri atas
tiga tahap yaitu (Proakis dan Manolakis 1997):
1
Proses
sampling
, merupakan pengambilan nilai pada setiap jangka
waktu tertentu yang akan menghasilkan suatu nilai vektor. Panjang
nilai vektor yang dihasilkan tergantung dari panjangnya sinyal suara
yang didigitasi dan
sampling rate
yang digunakan.
Sampling rate
adalah
banyaknya nilai yang diambil tiap detik. Hubungan panjang vektor yang
dihasilkan,
sampling rate
, dan panjang data suara yang didigitasikan
dinyatakan dengan persamaan berikut :
dimana :
S
= panjang vektor
F
s=
sampling rate
yang digunakan (
Hertz
)
T
= panjang suara (detik)
2
Kuantisasi, proses ini menyimpan nilai amplitudo dalam representasi nilai
8 bit atau 16 bit.
3
Pengkodean, dalam proses pengkodean, setelah dikuantisasi maka tiap-tiap
diskret yang ada telah memiliki tetapan tertentu. Tetapan tersebut dapat
dijadikan kombinasi bilangan biner, maka terbentuklah bilangan-bilangan
biner yang merupakan informasi dari sinyal. Setelah menjadi sinyal digital
maka proses-proses perekayasaan dapat dilakukan.
Secara skematis, proses digitasi dapat dilihat pada Gambar 5 berikut
(Proakis dan Manolakis 1997) :
Sampling Pengkuantisasi Sinyal Analog Sinyal Digital Pengkodean Sinyal Waktu-diskret Sinyal terkuantisasi 01110111...
Gambar 5 Tahapan digitasi
Teori Suara Paru-Paru
saluran udara yang lebih lebar ke saluran udara yang lebih sempit atau
sebaliknya.
Pada proses pernafasan dibagi dua bagian proses yaitu proses inspirasi
dan proses ekspirasi. Proses inspirasi yaitu proses pada saat kita menghirup udara
ke dalam paru-paru dan proses ekspirasi yaitu proses pada saat kita mengeluarkan
udara dari paru-paru. Pada proses inspirasi, suara paru-paru yang akan terdengar
akan lebih kuat dari pada proses ekspirasi. Tetapi durasi waktu untuk ekspirasi
lebih panjang dari proses inspirasi. Gambar 6 berikut adalah sistem pernapasan
manusia.
Gambar 6 Sistem pernafasan manusia
Pada saat inspirasi, udara mengalir dari saluran udara yang lebih
luas ke saluran udara yang lebih sempit sehingga turbulensi yang terjadi lebih
kuat sedangkan pada saat ekspirasi terjadi sebaliknya. Hal ini menyebabkan
pada saat inspirasi suara yang terdengar lebih keras. Secara umum suara
paru-paru dibagi menjadi 2, suara normal dan suara abnormal (Cohen dan
Landsberg 1984). Suara normal adalah suara paru-paru yang tidak terdeteksi
kelainan pernapasan, sedangkan suara paru-paru abnormal adalah suara paru-paru
yang mengalami gangguan. Suara-suara tersebut dibagi dalam beberapa kategori
berdasarkan
pitch
, intensitas, lokasi dan rasio inspirasi dan ekspirasi (Rizal
et al
.
2010). Berikut akan dijelaskan beberapa jenis suara paru-paru yang akan dijadikan
objek dalam penelitian ini :
Suara
Tracheal
a. Sinyal suara
tracheal
b. Diagram suara
tracheal
Gambar 7 Suara
tracheal
Suara
Vesicular
Suara
vesicular
merupakan suara pernafasan normal yang didengar pada
dada samping dan dada dekat perut, paling umum dan terdengar hampir di semua
permukaan paru-paru. Suaranya lembut dengan
pitch
rendah (Kuan 2010). Suara
inspirasi jauh lebih kuat dibanding suara ekspirasi, sering kali proses ekspirasi
hampir tidak terdengar. Suara
vesicular
bisa terdengar lebih kasar dan sebagian
terdengar lebih panjang apabila ada ventilasi yang cepat dan dalam (misal setelah
berolah raga) atau pada anak-anak yang memiliki dinding dada yang lebih tipis.
Suara
vesikular
juga bisa lebih lembut jika pasien lemah, tua, gemuk, atau sangat
berotot. Untuk lebih jelasnya, gambar sinyal suara
vesicular
dan diagram suara
vesicular
dapat dilihat pada Gambar 8a dan Gambar 8b.
a. Sinyal suara
vesicular
b. Diagram suara
vesicular
Gambar 8 Suara
vesicular
Suara
Crackles
Suara
crackles
merupakan suara ledakan pendek yang bersifat
discontinuous
, suara ini umumnya lebih terdengar pada proses inspirasi (Katila
et
al
. 1991). Suara
crackles
sering dikenal dengan nama
rales
atau
crepitation.
Kondisi penyebab terjadinya
crackles
yaitu ARDS,
asthma, bronchiectasis,
chronic bronchitis, consolidation, early CHF, interstitial lung disease
dan
pulmonary edema.
Untuk lebih jelasnya, gambar sinyal suara
crackle
dan
diagram suara
crackle
dapat dilihat pada Gambar 9a dan Gambar 9b.
Suara
Wheeze
Suara
wheezes
merupakan jenis suara yang bersifat kontinyu, memiliki
pitch
tinggi, lebih sering terdengar pada proses ekspirasi. Suara ini terjadi saat
aliran udara melalui saluran udara yang menyempit karena sekresi, benda asing
atau luka yang menghalangi (Riella
et. al
2009). Durasi proses inspirasi lebih
lama dibandingkan dengan proses ekspirasi. Selain itu intensitas suara inspirasi
lebih besar dibandingkan dengan ekspirasi. Pada suara ini terdengar suara bunyi
yang terdengar menciut-ciut selama proses inspirasi dan ekspirasi. Kondisi yang
menyebabkan suara
wheeze
yaitu
asthma, CHF, chronic bronchitis, COPD
dan
pulmonary edema.
Untuk lebih jelasnya, gambar sinyal suara
wheeze
dan diagram
suara
wheeze
dapat dilihat pada Gambar 10a dan Gambar 10b.
a. Sinyal suara
wheeze
b. Diagram suara
wheeze
Gambar 10 Suara
wheeze
Ekstraksi Ciri
Ekstraksi ciri merupakan proses menentukan suatu nilai atau vektor yang
dapat digunakan sebagai penciri objek atau individu (Anusuya dan Katti 2009).
Tujuan utama dari ekstraksi ciri adalah untuk mereduksi ukuran data tanpa
mengubah karakteristik dari sinyal suara dalam setiap framenya. Cara kerjanya
adalah dengan mengkonversi bentuk sinyal suara ke dalam bentuk representasi
secara parameter. Banyak metode yang ada untuk ekstraksi ciri diantaranya
Linier Predictive Coding
(LPC),
Linear Predictive Cepstral Coefficient
(LPCC),
Perceptual Linear Perdictive
(PLP),
Neural Predictive Coding
(NPC),
Mel
Frequency Cepstrum Coefficients
(MFCC),
wavelet
dan
filter bank
. Namun, pada
penelitian ini peneliti menggunakan metode ekstrasi ciri MFCC.
Mel Frequency Ceptrums Coeffisient
(MFCC)
Gambar 11 Blok diagram tahapan MFCC (Patel dan Prasad 2013)
Tahap-tahap dalam teknik MFCC lebih jelasnya yaitu sebagai berikut
(Slaney 1998) :
1
Frame Blocking
Frame blocking
merupakan proses pembagian sinyal menjadi beberapa
frame
yang lebih kecil agar sinyal lebih mudah untuk diproses selanjutnya.
2
Windowing
Proses selanjutnya adalah menghaluskan masing-masing
frame
untuk
meminimalkan sinyal yang tidak kontinu pada awal dan akhir
masing-masing
frame
yang dikenal dengan proses
filtering
. Salah satu teknik
filtering
adalah
windowing
. Proses
windowing
dilakukan pada setiap
frame
. Dalam hal ini, sinyal digital dikalikan dengan fungsi window
tertentu yang berukuran sama dengan ukuran
frame
. Jika sinyal digital
frame
ke-
i
adalah
x
idan fungsi window yang digunakan adalah
w
i,
maka
output
windowing
frame
ke-
i
adalah perkalian skalar antara
vektor
x
idengan
w
i. Fungsi window yang digunakan pada penelitian
ini adalah
Hamming Window
karena memiliki ekspresi matematika
yang cukup sederhana (Buono 2009). Ekspresi matematika untuk
pembentukan
window
Hamming dapat dilihat pada persamaan berikut
(Patel dan Prasad 2013) :
1
0
,
1
2
cos
46
.
0
54
.
0
)
(
n
N
N
n
n
w
1
0
),
(
)
(
)
(
n
x
n
w
n
n
N
y
l ldimana :
w(n)
=
hamming window
)
(
n
y
l= sinyal keluaran
)
(
n
x
l= sinyal masukan
N
= jumlah
sample
pada masing-masing
frame
3
Fast Fourier Transform
FFT merupakan suatu algoritme untuk mengimplementasi
Discrete
Fourier Transform
(DFT), berikut rumusnya (Patel dan Prasad 2013).
∑
dimana :
X
k= Sinyal keluaran
Yn
= sinyal keluaran dari proses
windowing
N
= jumlah
sample
pada masing-masing
frame
.
K
= 0,1,2, ...,
N
-1
4
Mel Frequency Wrapping
Untuk menggunakan metode MFCC, frekuensi dijadikan dalam skala Mel.
Persepsi manusia terhadap frekuensi sinyal suara tidak berupa skala
linear. Oleh karena itu, untuk setiap nada dengan frekuensi aktual f
(dalam Hertz), tinggi subjektifnya diukur dengan skala mel. Skala
mel
frequency
adalah selang linear untuk frekuensi di bawah 1000Hz dan
selang logaritmik untuk frekuensi di atas 1000Hz. Berikut adalah
rumusnya :
∑
dimana :
= sinyal keluaran
Mel-Frequency Wrapping
X
(
k)
=
sinyal keluaran FFT
Hi
(k)
= filter bank
N
= jumlah
sampel
pada masing-masing
frame
K
=
0.1,2,...,
N
-1
5
Cepstrum
Langkah terakhir yaitu mengonversi log
mel spectrum
ke domain
waktu. Hasilnya disebut
mel frequency cepsterum coefficients
. Cara untuk
mengonversi log
mel spectrum
ke bentuk domain waktu yaitu dengan
menggunakan
Discrete Cosine Transform
(DCT). Berikut adalah
rumusnya :
∑ [ (
)
]
dimana :
C
(j)
= nilai koefisien C ke j
j
= jumlah koefisien yang diharapkan
M
= jumlah filter bank
Fuzzy Neural Network
(FNN)
FNN, parameter-parameter yang dimiiki oleh
neuron
dan bobot-bobot
penghubung yang biasanya disajikan secara numeris (
crisp
), dapat diganti dengan
parameter-parameter
fuzzy
(Lin 1996). Adakalanya
input
dan
output
bernilai
fuzzy
,
sedangkan bobotnya bernilai
crisp
; atau input dan output bernilai
crisp
, sedangkan
bobot
fuzzy
; atau baik
input
,
output
maupun bobot bernilai
fuzzy
(Fuller 1995).
Fuzzy neural network
adalah gabungan dari prinsip belajar
neural
network
dan adaptasi dari fungsi keanggotaan
fuzzy
. Pada penelitian ini, prinsip
belajar yang digunakan adalah menggunakan Metode
Learning Vector
Quantization
(LVQ). Bobot jaringan direpresentasikan sebagai fungsi
keanggotaan
fuzzy
(
fuzzy set
).
Penggabungan konsep
neural network
dengan konsep
fuzzy
pada
prinsipnya yaitu, usaha dalam mengeliminasi kekurangan dan kelebihan dari
setiap metode. Dalam hal ini, akan diambil kelebihan dari masing-masing
konsep.
Neural network
yang terstruktur dan memiliki kemampuan belajar yang
tinggi, tidak memiliki kemampuan dalam mengkalkulasikan data
uncertainty
(hanya mampu mengkalkulasikan data yang eksak). Sistem
fuzzy
tidak memiliki
kemampuan belajar, namun mampu merepresentasikan pengetahuan seperti
manusia yang sebagian besar bersifat
uncertainty
. Melalui integrasi dari kedua
metode ini, akan diperoleh metode yang terstruktur, mampu melakukan
pembelajaran dan memiliki kemampuan dalam mengkalkulasikan data
uncertainty
.
Learning Vector Quatization
(LVQ)
Algoritme LVQ diperkenalkan oleh Teuvo Kohonen (Kohonen 1990)
sebagai algoritma yang simpel, efisien, namun sangat
powerful
dan telah banyak
digunakan dalam berbagai aplikasi dan bidang ilmu. LVQ adalah algoritme
pembelajaran yang melakukan klasifikasi pola ke dalam beberapa kelas/kategori
berdasarkan mekanisme kompetisi. Struktur jaringan LVQ adalah jaringan
neural
dua lapis yang terdiri dari lapisan masukan dan lapisan keluaran
(Gambar 12). Lapisan masukan mengandung
neuron
sebanyak dimensi
masukan, lapisan keluaran mengandung
neuron
sebanyak jumlah kelas
(Rahadianti 2009).
Kedua lapisan dihubungkan oleh penghubung antar setiap
neuron
yang
memiliki suatu bobot tertentu. Bobot-bobot dari semua
neuron
pada lapisan
masukan ke suatu
neuron
di lapisan keluaran mewakili dimensi-dimensi yang
mewakili kelas tersebut. Misalkan saja terdapat 6
neuron
masukan dan 3
neuron
keluaran. Bobot dari keenam
neuron
masukan menuju
neuron
keluaran pertama
merupakan vektor pewakil kelas pertama.
Pada jaringan LVQ, pembelajaran yang dilakukan bersifat
salah, algoritme ini akan mengetahui kesalahan pada keluaran tersebut dan
mengarahkan kembali jaringan untuk bisa mengeluarkan keluaran yang sesuai.
LVQ adalah suatu jaringan yang dapat memproses masukan sesuai suatu
fungsi, dan mengeluarkan keluaran berupa klasifikasinya. Dalam hal
pengenalan suara, LVQ mampu mengklasifikasikan
input
sinyal suara ke
dalam kelas yang sesuai. Dalam contoh pada Gambar 12, masukan berupa
vektor 6-dimensi yang akan diterima ke dalam jaringan melalui lapisan masukan
dengan 6 neuron. Keluaran dari jaringan ini diwakilkan oleh 2 neuron pada
lapisan keluaran yang mewakili kedua kelas klasifikasi. Vektor-vektor
berdimensi-6 akan dikelompokkan ke dalam 2 kelas. Vektor dengan elemen (w
11,
w
21, w
31, w
41, w
51, w
61) adalah vektor pewakil berukuran 6-dimensi yang
mewakili kelas ke-1.
X1 X2 X3 X4 X5 X6
|| X - W1 ||
|| X – W2 ||
Y1 Y2 w11 w12 w21 w22 w31 w32 w41 w42 w51 w52 w61 w62 Input
Layer Bobot Jarak
Output Layer
Gambar 12 Arsitektur jaringan LVQ
dimana :
X = Data masukan
w = bobot penghubung / vektor pewakil
Y = Data keluaran
Adapun langkah-langkah algoritme LVQ adalah sebagai berikut :
Langkah 0 : Inisialisai Bobot
Langkah 1 : Jika kondisi henti gagal, lakukan langkah 2-8
Langkah 2 : Untuk setiap vektor masukan Xi, lakukan langkah 3 sampai 6
Langkah 3 : Untuk setiap j, hitung :
Langkah 4 : Temukan indeks j sehingga D(j) minimum
Langkah 5 : Periksa indeks j dan bandingkan dengan informasi kelas
Langkah 6 : Untuk setiap j
• Meng
-
update
bobotnya jika indeks = informasi kelas
• Meng
-
update
bobotnya jika indeks ≠ informasi kelas
Dengan
adalah laju pemahaman/
learning rate
Langkah 7 : Memodifikasi laju pemahaman
Langkah 8 : Periksa kondisi henti.
Selanjutnya untuk algoritme pengujian, saat terdapat sebuah vetor
masukan yang hendak diuji maka cukup diuji dengan melakukan langkah 3 dan
langkah 4 saja. Dengan vektor pewakil menggunakan vektor pewakil terakhir
yang diperoleh pada proses pelatihan.
Aritmatika Fuzzy
Bilangan atau angka yang biasa digunakan untuk berbagai keperluan
dalam kehidupan sehari-hari adalah bilangan
crisp
. Bilangan ini adalah bilangan
yang hanya memiliki 1 nilai pasti, dan berupa 1 garis pada garis bilangan (Gambar
13). Bilangan
crisp
ini adalah angka biasa yang sudah dikenal semua orang,
contohnya bilangan 10, 20, 110, atau 1270.
10 20 30 40 50 60
Gambar 13 Bilangan
crisp
Bilangan
fuzzy
adalah konsep bilangan yang mengadaptasi konsep
himpunan. Suatu himpunan adalah kumpulan dari objek-objek tertentu. Suatu
bilangan
fuzzy
adalah suatu himpunan (bilangan
fuzzy
bisa disebut juga sebagai
himpunan
fuzzy / fuzzy set
) tetapi bilangan-bilangan anggotanya tidak memiliki
nilai keanggotaan (µ) yang sama (Iancu
et al.
2010).
Representasi Bilangan Fuzzy Segitiga
sama, yaitu 1. Pada bilangan
fuzzy
, bilangan anggotanya memiliki µ yang
bervariasi antara nilai 0 hingga 1.
Representasi bilangan
fuzzy
segitiga pada garis bilangan akan
menyerupai bentuk segitiga yang alasnya mewakili bilangan-bilangan
anggotanya serta tingginya mewakili nilai µ yang bersesuaian dengan anggotanya.
Nilai
crisp
pada Gambar 13 akan menjadi nilai-nilai
fuzzy
seperti pada Gambar
14. Nilai keanggotaan bilangan anggota suatu himpunan
fuzzy
sesuai konvensinya
berada diantara nilai 0 hingga 1.
[image:31.595.102.511.76.820.2]10 20 30 40 50 60
Gambar 14 Rpresentasi bilangan
fuzzy
segitiga
Bilangan
fuzzy
segitiga
merupakan
sebuah
bilangan
yang
merepresentasikan distribusi satu set data yang dinyatakan dengan tiga angka
berikut :
̃
Dimana :
̃
= nilai
fuzzy x
= nilai minimum
= nilai rata-rata
= nilai masimum
Nilai Similaritas
Misalkan x dan y adalah 2 buah bilangan
fuzzy,
maka dapat dihitung
nilai similaritas (µ) antar keduanya sesuai dengan nilai komponen
fuzzy
yang
mereka miliki. Nilai similaritas dari 2 buah bilangan
fuzzy
dapat dihitung
sebagai nilai maksimum dari irisan kedua bilangan tersebut. Nilai maksimum dari
irisan kedua bilangan bisa didapat dari perpotongan tertinggi kedua bilangan
fuzzy
segitiga (Gambar 15).
̃ ̃ ̃ ̃
Gambar 15 Nilai similaritas (1)
vektor
input
data uji tetap bernilai
crisp
. Hal ini disebabkan karena pembentukan
bilangan
fuzzy
memiliki nilai komponen minimal dan maksimal yang sama
dengan komponen tengahnya, sehingga bentuk bilangan
fuzzy
berupa garis lurus
seperti bilangan
crisp.
Dalam kasus ini, nilai similaritas dapat digambarkan juga
sebagai perpotongan garis lurus dengan segitiga seperti yang terlihat pada Gambar
16. Nilai similaritas dapat dihitung sesuai dengan persamaan berikut (Denceux
dan Masson 2004).
dimana :
= Nilai similaritas bilangan x dan y
y
= nilai masukan
= nilai maksimum
= nilai rata-rata
X(2) y
X(1) X(3)
Gambar 16 Nilai similaritas (2)
Fuzzy Learning Vector Quantization
(FLVQ)
Fuzzy Learning Vector Quantization
adalah pengembangan lebih lanjut
dari algoritme
Learning Vector Quantization
(Rochmatullah 2009). Algoritme
ini memanfaatkan teori
fuzzy
pada vektor masukan, proses pembelajaran,
dan penentuan kategori vektor masukan. Algoritme ini memiliki waktu
komputasi yang cepat dan tingkat pengenalan yang lebih tinggi dibandingkan
LVQ.
Struktur jaringan FLVQ kurang lebih sama dengan struktur jaringan
LVQ biasa (Gambar 12), namun memiliki perbedaan hanya pada jenis
bilangan yang digunakan pada bobot (w) atau representasi vektor pewakil.
Pada penggunaan bilangan
fuzzy
pada vektor pewakil, masing-masing dimensi
akan berupa bilangan
fuzzy
, sehingga vektor pewakil akan berupa sebuah
vektor
fuzzy,
yaitu vektor dengan elemen-elemen vektor yang berupa bilangan
fuzzy.
Jumlah
neuron
pada lapisan masukan adalah sebanyak dimensi data yang
diproses (n) serta jumlah
neuron
pada lapisan keluaran adalah sebanyak kelas
yang akan digunakan untuk klasifikasi data (k). Bobot (w) yang
menghubungkan kedua lapisan adalah representasi dari vektor pewakil dari
masing-masing kelas pada lapisan keluaran.
dicari nilai similaritas terkecilnya untuk dijadikan input pada lapisan keluaran.
Penentuan vektor pewakil pemenang dilakukan dengan cara mencari nilai
similaritas terbesar yang ada pada setiap elemen lapisan keluaran.
Pembentukan Vektor Pewakil
Pembentukan vektor pewakil bilangan
fuzzy
dilakukan dengan cara
mencari nilai minimal, rata-rata, dan maksimal yang akan membentuk bilangan
fuzzy
segitiga (Gambar 17) (Rahadianti 2009).
9 3 6 12 6 7 7 2 6 7 6 7
max min
Rata-rata = 6.5
FUZZYFIKASI
[image:33.595.107.501.122.808.2]2 6.5 12
Gambar 17 Ilustrasi pembentukan vektor pewakil
Banyaknya segitiga pada masing-masing kelas tergantung pada jumlah
dimensi masukan. Gambar 18 berikut adalah ilustrasi vektor pewakil yang telah
terbentuk yang terdiri dari 4 kelas dengan 4 dimensi masukan.
Kelas 1
Kelas 2
Kelas 3
Kelas 4
Gambar 18 Contoh vektor pewakil untuk 4 kelas dan 4 dimensi masukan
Penentuan Kelas Pemenang
dapat dilihat pada proses penentuan kelas pemenang sebagai acuan dalam
peng-update
-an bobot vektor pewakil. Penentuan kelas pemenang pada algoritme
FLVQ agak sedikit berbeda dengan algoritme LVQ karena algoritme FLVQ
menggunakan konsep bilangan
fuzzy
pada bobot vektor pewakilnya. Penentuan
kelas pemenang dilakukan dengan cara menghitung nilai similaritas (µ) vektor
masukan terhadap keempat vektor pewakil. Pada tiap kelas akan dihasilkan n buah
µ untuk kelas tersebut. Perlu dicatat nilai similaritas terkecil dari masing-masing
kelas.
Setelah dilakukan penghitungan nilai similaritas untuk tiap kelas, akan
didapat nilai similaritas minimal untuk tiap kelas. Langkah selanjutnya adalah
menghitung nilai similaritas tertinggi dari kumpulan nilai minimal perkelas
Kelas dengan similaritas tertinggi adalah kelas pemenang. Jika nilai
similaritas tertinggi adalah 0, maka data latih dianggap sebagai data tidak
teregistrasi. Untuk lebih jelasnya perhatikan ilustrasi yang pada Gambar 19.
Kelas 1
Kelas 2
Kelas 3
Kelas 4 Data masukan
Gambar 19 Ilustrasi penentuan kelas pemenang
Algoritme FLVQ
[image:34.595.60.510.84.826.2]Langkah 0 : Inisialisai Bobot
Pada langkah ini dilakukan perubahan dari bobot
crisp
menjadi bobot
fuzzy
, yaitu proses fuzzifikasi seperti yang telah dijelaskan
sebelumnya pada tahap pembentukan vektor pewakil.
Langkah 1 : Jika kondisi henti gagal, lakukan langkah 2-8
Langkah 2 : Untuk setiap vektor
fuzzy
masukan , lakukan langkah 3
sampai 6
Langkah 3 : Untuk setiap j, hitung jarak antara vektor
fuzzy
masukan
dengan vektor pewakil
Langkah ini dilakukan dengan cara mengitung nilai similaritas
vektor masukan dengan vektor pewakil tiap kelas. Kelas
dengan nilai similaritas terbesar adalah kelas pemenang
(Gambar 19). Prosesnya seperti yang telah dijelaskan
sebelumnya pada tahap proses penentuan kelas pemenang.
Langkah 4 : Temukan indeks j kelas pemenang.
Langkah 5 : Periksa indeks j dan bandingkan dengan informasi kelas
Langkah 6 : Untuk setiap
neuron
j
• Meng
-
update
bobot jika nilai similaritas terbesar adalah 0
Jika hal ini terjadi, maka data dianggap tidak masuk ke dalam kelas
manapun. Nilai minimal (
dan nilai maksimal
pada
vektor pewakil untuk semua kelas dilebarkan dengan menggunakan
sebuah konstanta beta (β) yang bernilai lebih dari 1
dan nilai tengah
bernilai tetap. Berikut adalah rumusnya :
Dimana :
β > 1
1 < i < n , n = jumlah dimensi
1 < j < k , k = jumlah kelas
•
Meng-
update
bobot jika hasil klasifikasi benar, cotohnya ketika data
masukan adalah data dari kelas 1, kemudian nilai similaritas terbesar ada
pada kelas 1 sehingga hasil kategorisasi jaringan juga kelas 1. Nilai
minimal (
dan nilai maksimal
pada vektor pewakil untuk
kelas pemenang
dilebarkan dengan menggunakan sebuah konstanta beta (β)
yang bernilai lebih dari 1 (gunakan rumus nilai minimal dan nilai
maksimal di atas) dan nilai tengah
akan bergerak mendekati
vektor
input
. Berikut adalahnya rumusnya :
1 < i < n , n = jumlah dimensi
j = kelas pemenang
= laju pemahaman/
learning rate
• Meng
-
update
bobot jika hasil klasifikasi salah, contohnya ketika data
masukan adalah data dari kelas 1, tetapi nilai similaritas terbesar ada pada
kelas 2 sehingga hasil kategorisasi jaringan kelas 2. Nilai minimal (
dan nilai maksimal
pada vektor pewakil untuk kelas pemenang
disempitkan dengan menggunakan s
ebuah konstanta beta (β) yang bernilai
kurang dari 1 (gunakan rumus nilai minimal dan nilai maksimal di atas)
dan nilai tengah
akan bergerak menjauhi vektor
input.
Berikut
adalah rumusnya :
Dimana :
β < 1
1 < i < n , n = jumlah dimensi
j = indeks kelas pemenang
= laju pemahaman/
learning rate
Langkah 7 : Memodifikasi laju pemahaman
Langkah 8 : Periksa kondisi henti.
Ketika semua data pada
training set
sudah dimasukkan ke dalam jaringan
dan dilakukan pembelajaran, maka dikatakan telah dilakukan pembelajaran 1
epoch.
Pembelajaran dilakukan secara berulang dengan laju pembelajaran (α)
yang semakin diperkecil. Ketika nilai α sudah memenuhi syarat henti (ditentukan
nilai α minimal sebagai
batas pembelajaran), maka fase pembelajaran sudah
selesai.
Selanjutnya untuk algoritme pengujian, data yang membentuk
testing set
dimasukkan ke dalam jaringan dengan cara yang sama seperti pada tahap
training
.
Setiap data
testing
yang dimasukkan ke dalam jaringan harus diproses dengan cara
yang sama dengan masukan pada tahap
training.
Perbedaannya adalah pada tahap
testing
tidak dilakukan perubahan pada vektor pewakil. Data masukan hanya
dikategorikan ke dalam kelas sesuai dengan nilai similaritas terhadap vektor
pewakil
3 METODE PENELITIAN
Mulai
Kajian Pustaka
· Teori suara paru-paru
· Metode ekstraksi ciri dengan MFCC
· Metode Klasifikasi dengan LVQ dan FLVQ
· Pemrograman MATLAB
Pengumpulan Data Suara Paru-Paru
Data Latih Data Uji
Ekstraksi Ciri (MFCC) Ekstraksi Ciri
(MFCC)
Pembandingan, Analisis dan Pembahasan
Selesai Segmentasi
Membentuk Model (LVQ dan FLVQ)
[image:37.595.119.466.78.622.2]Dokumentasi dan Laporan Pengujian Model
Gambar 20 Diagram alir penelitian
Kajian Pustaka
Kajian pustaka merupakan tahap paling awal yang dilakukan dalam
memulai suatu penelitian. Tahap ini diperlukan agar peneliti memiliki
pengetahuan dasar yang kuat dan memadai yang nantinya bermanfaat di dalam
melakukan penelitian.
Pengumpulan Data Suara
pernapasan yaitu
Tracheal, Vesicular, Crackles,
dan
Wheeze.
Data suara
paru-paru terdiri dari 32 data suara, yang terbagi menjadi 8 suara
vesicular
, 8 suara
tracheal,
8 suara
crackle
dan 8 suara
wheeze.
Data suara yang diperoleh berupa
data stereo yang kemudian dikonversi menjadi data mono dan disimpan dalam file
berformat *.wav agar bisa diolah menggunakan
software
Matlab, dan
sampling
rate
sebesar 44100 Hz.
Segmentasi Suara
Data sampel suara paru-paru yang telah diperoleh, selanjutnya akan
disegmentasi melalui proses segmentasi suara. Sinyal suara paru-paru akan
dipotong berdasarkan satu siklus pernapasan yaitu satu fase inspirasi dan satu fase
ekspirasi. Proses segmentasi sinyal suara dilakukan secara manual dengan
menggunakan software Audacity. Ilustrasi dari proses segmentasi sinyal secara
manual, terlihat pada Gambar 21.
Gambar 21 Ilustrasi segmentasi data suara
Data Latih dan Data Uji
Data suara paru-paru yang telah disegmentasi dibagi menjadi dua bagian,
yaitu data latih dan data uji. Jumlah data suara paru-paru hasil proses segmentasi
yaitu 96 data suara. Data suara paru-paru tersebut kemudian ditetapkan 20 suara
sebagai data latih dan 4 suara sebagai data uji untuk masing-masing jenis suara,
sehingga total 80 suara untuk data latih dan 16 suara untuk data uji.
Ekstraksi Ciri
Setiap data suara paru yang telah disegmentasi kemudian diekstraksi ciri
menggunakan
Mel Frequency Ceptral Coeffisient
(MFCC). Ekstraksi ciri adalah
proses untuk menentukan suatu nilai atau vektor yang digunakan sebagai penciri
suatu objek. Ekstraksi ciri dengan menggunakan MFCC tidak akan
menghilangkan ciri atau informasi setiap data suara paru-paru. Selain itu, ukuran
data suara paru-paru menjadi tidak terlalu besar. Secara garis besar terdapat lima
tahap MFCC, yaitu
frame blocking, windowing, fast fourier transform
,
mel
frequency wrapping
dan
cepstrum.
Data suara paru-paru yang telah disegmentasi selanjutnya dilakukan
proses
frame blocking,
karena suara telah disegmentasi secara manual, proses
rumusnya yang sederhana. Ilustrasi dari
frame blocking
dan
windowing
dapat
dilihat pada Gambar 22.
X(1) X(2) X(3) ... X(n) Frame ke-i Contoh
7 3 6 2 9 3 10 4
Hasil frame 7 3 6 2 6 2 9 3 9 3 10 4
Frame yang dapat dikalikan dengan Hamming Window
Windowing Yi(n) = Xi(n)d(n)
W(u) = 0.54 – 0.46 cos(2πn/N-1)
X(1) X(2) X(3) ... X(n) X(1) X(2) X(3) ... X(n) Frame ke-i Contoh
7 3 6 2 9 3 10 4
Hasil frame 7 3 6 2 6 2 9 3 9 3 10 4
Frame yang dapat dikalikan dengan Hamming Window
Windowing Yi(n) = Xi(n)d(n)
W(u) = 0.54 – 0.46 cos(2πn/N-1)
[image:39.595.125.419.116.350.2]X(1) X(2) X(3) ... X(n)
Gambar 22 Proses
frame blocking
dan
windowing
Proses selanjutnya adalah
Fast Fourier Transform
(FFT). Proses FFT
digunakan untuk mengubah setiap
frame
yang telah dihasilkan dari proses
sebelumnya dari domain waktu menjadi domain frekuensi, sehingga dapat diamati
lebih mudah.
Setelah sinyal diubah dari domain waktu menjadi domain frekuensi,
langkah selanjutnya adalah proses
wrapping,
dalam proses ini diperlukan
filter
,
dengan demikian akan dibentuk M
filter
terlebih dahulu sebelum proses
wrapping
dilakukan. Selanjutnya adalah proses
Discrete Cosine Transform
(DCT) untuk
mendapatkan
coeffisient cepstrum. Coeffisient cepstrum
ini yang merupakan
output
dari proses MFCC. Hasil ekstraksi ciri berupa matriks
n
x
k
,
n
adalah jumlah
frame
dan
k
adalah koefisien.
Klasifikasi Suara Paru-Paru
Data suara paru-paru yang telah diperoleh vektor pencirinya melalui
proses ekstraksi ciri akan diklasifikasikan menggunakan sistem
Fuzzy Neural
Network
(FNN). Sistem FNN adalah penggabungan antara
neural network
dan
fuzzy logic
.
dengan
fuzzy logic
lebih dikenal dengan Metode
Fuzzy Learning Vector
Quantization
(FLVQ).
Secara garis besar pengenalan suara paru-paru dengan menggunakan
LVQ maupun FLVQ memiliki dua bagian utama, yaitu tahapan pembelajaran pola
(
training
) dan tahapan pengenalan pola / pengukuran kemiripan (
testing
). Data
hasil pembelajaran akan dikumpulkan dan disimpan sebagai model pembelajaran
yang nantinya dapat digunakan untuk mengukur kemiripan dari sinyal suara
paru-paru yang masuk selanjutnya sehingga sinyal suara paru-paru-paru-paru tersebut dapat
dikenali. Setelah tahap pembelajaran selesai, tahap selanjutnya adalah tahap
pengenalan pola (pengukuran kemiripan).
Pengujian
Tahap pengujian dilakukan setelah pelatihan dilakukan pada data latih.
Data uji akan disamakan polanya dengan data latih yg telah dilakukan pelatihan.
Setiap data uji akan dilihat apakah data tersebut teridentifikasi pada suara
paru-paru yang seharusnya
Perhitungan Akurasi
Setelah tahap pengujian, dilakukan perhitungan nilai akurasi dari
penelitian untuk mengetahui tingkat akurasi dari pengenalan suara paru-paru serta
untuk mengukur pengaruh beberapa parameter terhadap akurasi pengenalan suara
paru-paru. Pengujian model pengenalan suara paru-paru akan dilakukan dengan
menggunakan MATLAB. Parameter yang digunakan dapat dilihat pada Tabel 1.
Tingkat akurasi pengenalan suara paru-paru dihitung dengan persamaan berikut :
[image:40.595.79.477.359.810.2]Tabel 1 Parameter-parameter yang akan dilihat pengaruhnya terhadap hasil
identifikasi
No Parameter
Keterangan
1
Koefisien Cepstral
Koefisien cepstral menjelaskan berapa jumlah
cepstrum yang dihasilkan untuk setiap bingkai.
Koefisien
cepstral
yang
digunakan
dalam
penelitian ini adalah 13, 15, 20 dan 30.
2
Learning Rate
(α)
/
LR
Learning rate
(LR) adalah penurunan fungsi
waktu. LR dapat mempengaruhi kecepatan di mana
jaringan syaraf tiruan tiba di solusi minimum, jika
LR terlalu kecil algoritme akan memakan waktu