Simposium Nasional I RAPI 2002
PENGENALAN VOKAL BAHASA INDONESIA DENGAN JARINGAN SYARAF TIRUAN MELALUI TRANSFORMASI WAVELET DISKRET Ignatius Leo May Jurusan Teknik Elektro Undip Jl. Prof. Sudharto, Tembalang Semarang
Sumardi Jurusan Teknik Elektro Undip Jl. Prof. Sudharto, Tembalang Semarang
[email protected]
Achmad Hidayatno Jurusan Teknik Elektro Undip Jl. Prof. Sudharto, Tembalang Semarang
[email protected]
Abstrak Transformasi dikenakan pada sinyal untuk memperoleh informasi lebih lanjut yang tidak terdapat pada data mentah (data pada kawasan waktu). Transformasi Wavelet adalah salah satu alat dalam pemrosesan/analisa sinyal. Transformasi Wavelet mampu memberikan informasi waktu dan frekuensi secara bersamaan yang artinya memberikan representasi waktu-frekuensi sebuah sinyal. Jaringan Syaraf Tiruan (JST) banyak diaplikasikan di berbagai bidang seperti pemrosesan sinyal, pengenalan pola, kecerdasan buatan dan lain sebagainya. Fitur kunci JST adalah kemampuan untuk generalisasi dari data pelatihan ke data “baru” yang lain. Pada aplikasi pengenalan vokal bahasa Indonesia (a, i, u, e, dan o) rekaman suara manusia yang melafalkan hanya satu jenis suara vokal ( a saja, i saja dst) dalam format wav ditransformasikan ke kawasan waktu-frekuensi menggunakan Transformasi Wavelet Diskret untuk mendapatkan fitur sinyal. Sinyal tertransformasi tersebut dilatihkan ke JST. Algoritma Learning Vector Quantization (LVQ) diaplikasikan ke jaringan untuk memperbaharui bobot. Hasil pelatihan adalah jaringan dengan nilai bobot yang berbeda dengan nilai bobot awal. Jaringan dievaluasi dengan mensimulasikannya jika masukan berupa data latihan dan data baru (blind data). Hasilnya menunjukkan bahwa persentase pengenalan terhadap data baru lebih rendah dibanding terhadap data latihan. Jaringan dengan persentase pengenalan tertinggi terhadap data latihan didapat dengan kombinasi variabel wavelet Sym2, level dekomposisi 10, dan epoch 500 sebesar 75,4%. Sementara itu jaringan dengan kombinasi variabel wavelet db4, level dekomposisi 10, dan epoch 2000 memberikan tingkat pengenalan tertinggi untuk masukan berupa data baru sebesar 51,9%. Kata Kunci : Transformasi Wavelet Diskret, Jaringan Syaraf Tiruan, Algoritma LVQ, Wavelet Induk, Epoch
I. PENDAHULUAN Bidang pengenalan pola (pattern recognition) semakin maju seiring dengan berkembangnya ilmu tentang Jaringan Syaraf Tiruan. Fitur utama yang menjadi alasan digunakannya JST adalah kemampuan untuk belajar dari data pelatihan dan generalisasi ke situasi/kondisi yang baru. Kemampuan belajar bisa dianalogikan dengan proses manusia belajar mengenali sesuatu. JST memang diilhami oleh cara otak manusia bekerja sehingga bisa menggolongkan/ mengklasifikasikan sesuatu. Pengenalan vokal adalah sub topik yang mendasar dalam bidang pengenalan pola. Secara umum ada lima macam bunyi vokal yaitu /a/, /i/, /u/, /e/, dan /o/ dimana pengucapan untuk tiap bahasa berbeda-beda. Agar bisa dikenali tiap vokal terlebih dahulu didapatkan ciri/sifat khasnya dengan menggunakan transformasi, dalam hal ini Transformasi Wavelet Diskret. Hasil transformasi yang merepresentasikan ciri sinyal dilatihkan ke JST. Untuk memperoleh hasil yang diinginkan, JST dilatih dengan algoritma pelatihan tertentu. Learning Vector Quantization (LVQ) adalah salah satu algoritma pelatihan yang banyak digunakan dalam aplikasi pengklasifikasian/pengenalan.
ISSN : 1412-9612
E - 35
Simposium Nasional I RAPI 2002
Dalam makalah ini sistem pengenalan vokal yang dibuat memiliki batasan permasalahan sebagai berikut: 1. Vokal diucapkan dalam bahasa Indonesia 2. Transformasi yang dipakai adalah Transfor- masi Wavelet Diskret dengan wavelet induk haar, db4, dan Sym2 3. Level dekomposisi wavelet adalah 4,6, dan 10 4. Algoritma pelatihan adalah LVQ dengan iterasi sebanyak 500, 1000, dan 2000 kali II. TEORI DASAR 2.1 Vokal Bahasa Indonesia Vokal adalah bunyi bahasa yang arus udaranya tidak mengalami rintangan dan kualitasnya ditentukan oleh tiga faktor: tinggi-rendahnya posisi lidah, bagian lidah yang dinaikkan, dan bentuk bibir pada pembentukan vokal tersebut. Saat vokal diucapkan, lidah dapat dinaikkan atau diturunkan bersama rahang. Bagian lidah yang dinaikkan atau diturunkan itu dapat di bagian depan, tengah, atau belakangnya. Dalam bahasa Indonesia terdapat lima vokal yaitu /a/ , /i/ , /u/ , /e/ , dan /o/. Tabel 1 memperlihatkan vokal bahasa Indonesia. Tabel 1 Vokal bahasa Indonesia
Depan Tinggi Sedang Rendah
Tengah
Belakang
i e
u o a
Kualitas vokal juga dipengaruhi bentuk bibir. Untuk vokal tertentu, seperti /a/, bentuk bibir adalah normal, sedangkan untuk vokal /u/ bibir dimajukan sedikit dan bentuknya agak bundar. Untuk vokal /i/ bibir direntangkan ke kiri dan ke kanan sehingga bentuknya melebar. Dengan tiga faktor itu bunyi vokal dapat berciri tinggi, depan, dan bibir terentang, misalnya bunyi /i/, atau tinggi, belakang, dan bibir bundar, misalnya bunyi /u/. 2.2 Transformasi Wavelet Diskret Transformasi adalah proses merepresentasikan suatu sinyal ke dalam domain/kawasan lain. Tujuan dari transformasi adalah untuk lebih menonjolkan sifat atau karakteristik sinyal tersebut. Definisi wavelet adalah himpunan fungsi dalam ruang vektor L2I yang mempunyai sifat-sifat (i) berenergi terbatas, (ii) merupakan fungsi band-pass pada domain frekuensi, (iii) merupakan hasil translasi dan dilasi dari sebuah fungsi tunggal, yaitu ψ a ,b ( x ) =
1 x −b ψ a a
(1)
Transformasi wavelet dapat dinyatakan sebagai proses merepresentasikan sinyal masukan f(x) kedalam himpunan fungsi-fungsi yang memenuhi syarat-syarat tersebut (wavelet). Wavelet dapat membentuk keluarga wavelet yaitu wavelet induk (Mother Wavelet) bersama versi tergeser dan teregang/termampatnya. Jika Transformasi Fourier memecah sinyal menjadi sekumpulan sinyal sinus berbagai frekuensi, maka analisa wavelet memecah sinyal menjadi versi tergeser dan versi terskala dari wavelet induk. Pada Analisa wavelet dikenal faktor skala a yang secara sederhana berarti pemampatan dan peregangan wavelet.
ISSN : 1412-9612
E - 36
Simposium Nasional I RAPI 2002
Gambar 1 penskalaan pada fungsi wavelet
Dalam analisa wavelet penskalaan berhubungan dengan frekuensi sinyal dengan hubungan 1. Skala rendah a → Wavelet termampat → perubahan secara cepat → frekuensi tinggi ω 2. Skala tinggi a → Wavelet teregang → perubahan secara lambat → frekuensi rendah ω Pada kasus Transformasi Wavelet Diskret nilai skala dan posisi didasarkan pada bilangan pangkat dua (skala dan posisi dyadic). Representasi waktu-skala didapat dengan penapisan digital. Sinyal dilewatkan pada tapis lolos atas (high pass filter) untuk menganalisa frekuensi tinggi dan melewatkan pada tapis lolos bawah (low pass filter) untuk menganalisa frekuensi rendah. Hasil penapisan adalah koefisien aproksimasi (komponen frekuensi rendah dan skala tinggi) dan koefisien detil (komponen frekuensi tinggi dan skala rendah).
Gambar 2 Pemfilteran level dasar pada DWT
Gambar 2 merupakan proses mendapatkan koefisien aproksimasi dan detil yang disebut juga dekomposisi. Proses dekomposisi bisa berulang (multiple level decomposition).
Gambar 3 Pohon dekomposisi wavelet
Untuk Gambar 3 bisa dituliskan S = cA3 + cD3 + cD2 + cD1 atau cA1 = cA2 + cD2 = cA3 + cD3 + cD2 Hubungan skala a dengan level j dinyatakan a = 2j. Jika resolusi didefinisikan sebagai 1/a , maka resolusi akan naik jika faktor skala berkurang. Hubungan skala dan resolusi ditunjukkan pada Tabel 2
ISSN : 1412-9612
E - 37
Simposium Nasional I RAPI 2002
Tabel 2 Hubungan skala dan resolusi j skala resolusi
10
9
1024 10
1/2
….
2
1
0
-1
-2
512
….
4
2
1
½
¼
9
….
¼
½
1
2
4
1/2
2.3 Jaringan Syaraf Tiruan JST didefinisikan sebagai sistem komputasi yang didasarkan pada pemodelan saraf biologis (neuron) melalui pendekatan dari sifat-sifat komputasi biologis (biological computation). JST bisa dibayangkan berupa jaringan dengan elemen pemroses sederhana yang saling terhubung. Elemen pemroses berinteraksi melalui sambungan yang variabel, disebut bobot, dan bila diatur secara tepat dapat menghasilkan sifat yang diinginkan. Model neuron sederhana ditunjukkan gambar berikut:
x1 x2 ... xN
w1 w2 Σ
f(·)
y
wN θ
Gambar 4 Pemodelan neuron
dan pernyataan matematisnya
N y = f ∑wi xi −θ i=1 dengan xi = sinyal masukan, i = 1, 2, 3, ..., N (N = banyaknya simpul masukan) wi = bobot hubungan atau sinapsis θ = threshold atau bias f (·) = fungsi aktivasi y = sinyal keluaran dari neuron Ide dasar JST adalah konsep belajar. Jaringan belajar melakukan generalisasi karakteristik tingkah laku obyek. Jika dilihat dari sudut pandang manusia, hal ini sama seperti bagaimana manusia belajar sesuatu. Manusia mengenal obyek dengan mengatur otak untuk menggolongkan atau melakukan generalisasi terhadap obyek tersebut. Manusia menyimpan ilmu pengetahuannya ke dalam otak yang berisikan synapsis, neuron, dan komponen lainnya. JST menyimpan ilmu pengetahuannya dalam nilai bobot sambungan (seperti synapsis dalam otak manusia) dan elemen-elemen (neuron) yang menghasilkan keluaran Untuk menyelesaikan permasalahan, JST memerlukan algoritma untuk belajar, yaitu bagaimana konfigurasi JST dapat dilatih untuk mempelajari data historis yang ada. Dengan pelatihan ini, pengetahuan yang terdapat pada data bisa diketahui dan direpresentasikan dalam bobot sambungannya. Jenis algoritma belajar yang ada diantaranya: a. Supervised Learning Algoritma ini diberikan target yang akan dicapai. Contoh: Backprogation Algorithm dan Learning Vector Quantization (LVQ)
ISSN : 1412-9612
E - 38
Simposium Nasional I RAPI 2002
b. Unsupervised Learning Pada algoritma ini sama sekali tidak disediakan target. Contoh: Carpenter-Grossberg Adaptive Resonance Theory (ART), dan Competitive Learning Algorithm c. Reinforcement Learning Bentuk khusus supervised learning, Contoh: Genetic Algorithm (GA). Jaringan LVQ merupakan versi supervised dari Algoritma Pembelajaran Kompetitif. Arsitektur jaringan LVQ ditunjukkan gambar berikut:
Gambar 5 Arsitektur jaringan LVQ
Jaringan LVQ terdiri atas dua lapis, lapis kompetitif dan lapis linear. Neuron-neuron pada lapis kompetitif berkompetisi dan menghasilkan neuron pemenang (winning neuron). Dalam memperbaharui bobot neuron pada lapis kompetitif, jaringan LVQ menggunakan Algoritma Pembelajaran LVQ1 atau LVQ2.1. Algoritma Pembelajaran LVQ1 mempunyai urutan berikut: 1. Menghitung jarak Euclidean antara vektor masukan dan semua bobot neuron pada lapis kompetitif. 2. Neuron dengan jarak yang paling kecil/negatif akan memenangkan kompetisi 3. Jika neuron pemenang diklasifikasikan sesuai dengan target yang telah ditentukan maka bobot neuron tersebut diperbaharui dengan 1,1 (2) (q) = i* IW 1,1 (q − 1) + α ( p(q) − i* IW 1,1 (q − 1) i* IW 4. Selain kasus point 3, neuron diperbaharui dengan i*
IW 1,1 (q) = i* IW 1,1 (q − 1) − α ( p(q) − i* IW 1,1 (q − 1)
(3)
Sedangkan Algoritma Pembelajaran LVQ2.1 akan mem- perharui dua vektor bobot lapis kompetitif yang jarak Euclidean-nya paling dekat dengan vektor masukan. Syarat lain agar terjadi pembaharuan adalah: 1. Vektor masukan p dan vektor bobot j*IW1,1 berada pada kelas yang sama, kemudian p dan 1,1 tidak berada pada kelas yang sama i*IW 2. vektor masukan p berada pada “jendela” yang berada di tengah-tengah dari nilai kedua vektor bobot tersebut. Jendela tersebut didefinisikan d dj min i , > s d d j i
dengan
s≡
1− w 1+ w
dengan di dan dj berturut-turut menunjukkan jarak Euclidean p dari i*IW1,1 dan j*IW1,1. 3. Penyesuaian yang terjadi adalah menurut persamaan berikut : i*
IW1,1 (q) = i* IW1,1 (q - 1) - α (p(q) -
i*
IW1,1 (q - 1))
yaitu menggerakkan vektor bobot menjauh dari vektor masukan dan j*
IW1,1 (q) = j* IW1,1 (q - 1) + α (p(q) - j* IW1,1 (q - 1))
menggerakkan vektor bobot mendekat ke vektor masukan.
ISSN : 1412-9612
E - 39
Simposium Nasional I RAPI 2002
III. PERANCANGAN DAN IMPLEMENTASI SISTEM Program pengenalan vokal dibuat dengan alur program berikut Mulai
Perekaman suara vokal /a/, /i/, /u/, /e/, dan /o/ dari 20 responden
Membaca data suara berupa file .wav
Transformasi Wavelet Diskret
Pelatihan jaringan syaraf dengan algoritma LVQ
Pengujian jaringan dengan data latihan dan data baru
Selesai
Gambar 6 Bagan alir pembuatan program
Perekaman suara vokal mengambil 20 responden dan mengucapkan kelima vokal dalam bahasa Indonesia. Tiap vokal diambil 5 suara jadi satu responden memiliki 25 data suara rekaman. Data dari 20 responden dibagi dua macam, data 10 responden digunakan untuk pelatihan jaringan dan sisanya untuk pengujian jaringan. Spesifikasi file perekaman adalah format mono, frekuensi cuplikan 8 KHz, dan dikodekan dalam 8 bit. Data latihan ditransformasiwaveletkan dengan variasi parameter wavelet induk haar, db4, atau Sym2 serta level dekomposisi 4,6, atau 10. Hasil transformasi dimasukkan ke jaringan LVQ. Sistem pengenalan menggunakan skema Pembagian Pasangan Biner (Binary Pair Partitioned scheme) yaitu satu jaringan digunakan untuk mengklasifikasikan dua vokal yang berbeda. Jika ada 5 buah vokal a, i, u, e, dan o maka diperlukan 10 jaringan dengan kombinasi masukan ai, au, ae, ao, iu, ie, io, ue, uo, dan eo. Pelatihan jaringan memerlukan iterasi (epoch) yang bisa dipilih yaitu 500, 1000, dan 2000. Hasil pelatihan jaringan diujikan dengan masukan sistem berupa data latihan dan data baru (data selain data latihan). Hasil pengenalan dinyatakan dalam bentuk persentase keseluruhan dari 10 jaringan. IV. HASIL SIMULASI Program dibuat dengan bahasa MATLAB versi 5.3. Tampilan program diperlihatkan gambar berikut:
ISSN : 1412-9612
E - 40
Simposium Nasional I RAPI 2002
Gambar 7 Tampilan program
Proses pembacaan file wav dilakukan dengan menekan tombol “Read !”. Proses transformasi dilakukan dengan sebelumnya memilih wavelet induk dan level dekomposisi. Setelah memilih jumlah iterasi maka proses pelatihan jaringan akan dilaksanakan dengan total iterasi sebanyak N x 10, dengan N adalah pilihan iterasi dan 10 menunjukkan jumlah jaringan. Hasil pengenalan jaringan diketahui dengan menekan tombol “data baru” atau “data latihan” yang menunjukkan jenis data masukan untuk evaluasi jaringan. Setelah kesemua kombinasi parameter diujikan didapatkan hasil pengenalan sebagai berikut: Tabel 3 Rata-rata pengenalan jaringan terhadap masukan berupa data latihan epoch No Wavelet 500 1000 2000 level Induk 1 haar 4 71.7 69.6 74.0 6 66.7 66.7 67.3 10 57.5 57.4 54.3 2 Symlets 4 73.3 75.4 69.0 2 6 65.5 63.1 64.9 10 57.2 58.7 58.4 3 db 4 4 71.4 71.2 70.1 6 62.0 63.8 61.8 10 59.8 58.1 56.4
Untuk masukan berupa data latihan, jaringan yang didapat dengan kombinasi parameter Sym2, level 4, dan epoch 500 menghasilkan tingkat pengenalan tertinggi sebesar 75,4%. Dari Tabel 3, penambahan level dekomposisi akan menurunkan tingkat pengenalan jaringan. Sedangkan jumlah epoch tidak terlalu berpengaruh terhadap tingkat pengenalan jaringan. Tabel 4 Rata-rata pengenalan jaringan terhadap masukan berupa data baru epoch No Wavelet 500 1000 2000 level Induk 1 haar 4 51.4 50.3 49.6 6 49.9 51.0 49.8 10 48.2 46.9 49.8 2 Symlets 4 49.1 51.3 49.7 2 6 50.0 50.8 49.2 10 50.9 50.3 51.3 3 db 4 4 51.4 50.3 49.6 6 49.9 51.0 49.8 10 48.2 46.9 51.9
ISSN : 1412-9612
E - 41
Simposium Nasional I RAPI 2002
Dari Tabel 4, tingkat pengenalan tertinggi dicapai oleh jaringan dengan kombinasi variabel db4, level dekomposisi 10, dan epoch 2000 sebesar 51,9%. Jika dibandingkan dengan Tabel 3, Pengenalan jaringan terhadap data baru selalu lebih rendah dibandingkan dengan data latihan. V. KESIMPULAN 1. Transformasi Wavelet Diskret dapat digunakan dalam proses pengenalan suara pada bagian pemrosesan awal sinyal untuk mendapatkan informasi/ciri sinyal tersebut. 2. Tingkat dekomposisi pada transformasi wavelet mempengaruhi tingkat pengenalan jaringan yaitu makin tinggi tingkat dekomposisi maka tingkat pengenalan jaringan makin menurun. 3. Jaringan Syaraf LVQ lebih baik jika digunakan untuk klasifikasi dua kelas. 4. Tingkat pengenalan terhadap data latihan lebih tinggi dibanding data baru. 5. Dari hasil pengujian jaringan dengan tingkat pengenalan terbaik untuk data latihan sebesar 75,4% didapatkan dengan kombinasi parameter wavelet Symlets 2, level dekomposisi 4, dan 500 epoch. Sedangkan untuk data baru sebesar 51,9% dengan kombinasi parameter wavelet db4, level dekomposisi 10, dan 2000 epoch. DAFTAR PUSTAKA Bullinaria, John A. , Introduction to Neural Network http://www.cs.bham.ac.uk/~jxb/inn.htm Duance, Hanselman, Mastering Matlab 5, Prentice Hall inc.Upper Saddle River, new jersey Deller, Jhon D,Proakis,John G,dan Hansen,Jhon II.L.,1993, Discreate-Time Processing if Speech Signals. New york,Macmillan publishing Company, Kohonen, T, Self-Organization and Associative Memory, 2nd Edition, Berlin Springer-Verlag,1987 Little N.J dan Shure L, Signals processing Toolbox, for use with MATLAB, the MATH WORKS inc. Openheim, A.V and Schafer, R.W, 1999, Discreate signal processing second edition, Prentice Hall inc.Upper Saddle River, New Jersey, Roman, Kuc, 1989, Introduction to digital signal Processing , Mc Graw Hill, New York Rabiner L dan Juang Hwang B, 1996, Fundamentals of speech recognation, PTR Prentice Hall, Englewood Cliffs, New jersey _________,1992, Tata Bahasa Baku.Bahasa Indonesia, Departemen Pendidikan dan Kebudayaan Perum Balai Pustaka, Jakarta Demuth, Howard., Beale, Mark., Neural Network Toolbox User’s Guide Version 4. http://www.mathworks.com/access/helpdesk/help/pdf_doc/nnet/nnet.pdf Misiti, Michael., Misiti, Yves., Oppenheim, Georges., Poggi, Jean-Michel., Wavelet Toolbox User’s Guide Version 2 for Use with MATLAB® http://www.mathworks.com/access/helpdesk/help/pdf_doc/wavelet/wavelet_ug.pdf
ISSN : 1412-9612
E - 42