Wednesday 30 December 2015

Pengenalan vokal bahasa indonesia dengan jaringan syaraf tiruan melalui transformasi fourier

PENGENALAN VOKAL BAHASA INDONESIA DENGAN JARINGAN SYARAF TIRUAN MELALUI TRANSFORMASI FOURIER. Pengenalan Vokal Bahasa Indonesia dengan jaringan Syaraf tiruan dapat dipahami dan dimengerti melalui beberapa transformasi. Transformasi Fourier adalah salah satu alat (tool) dalam pemrosesan atau analisa sinyal.Transformasi Fourier digunakan karena dapat memberikan informasi-informasi yang disajikan dalam ranah frekuensi baik yang bersifat diskret maupun kontinu.JST (Jaringan Syaraf Tiruan) banyak digunakan untuk aplikasi pengenalan pola (pattern recognition). Kemampuan untuk pembelajaran dari data pelatihan dan generalisasi ke situasi/kondisi yang baru adalah alasan mendasar mengapa JST banyak digunakan.Dalam aplikasi pengenalan vokal bahasa Indonesia (a, i, u, e, o), rekaman suara manusia untuk satu macam vokal (a saja, i saja dst) dalam bentuk file .wav yang kemudian dapat dibaca melalui program Matlab, selanjutnya masuk ke transformasi Fourier sehingga didapatkan representasi frekuensi dari sinyal tersebut dalam bentuk numeris. Data-data numeris tersebut dilatih dengan Jaringan Syaraf Tiruan untuk dikenali. Metoda pembelajaran yang digunakan adalah LVQ (Learning Vector Quantization). Dari hasil pembelajaran akan didapatkan bobot jaringan yang telah berubah.Jaringan diuji dengan memberikan masukkan berupa data latihan dan data baru. Hasil pengujian menunjukkan bahwa penegnalan jaringan terhadap data baru lebih rendah terhadap data latihan. Untuk persentase pengenalan masing-masing vokal untuk masukkan data latihan, tingkat pengenalan tertinggi didapatkan dari jaringan yang dihasilkan dari kombinasi 512 titik uji dan 2000 epoch sebesar 95%. Sedangkan untuk data pengujian diperoleh 82,7% dengan titik uji dan epoch yang sama dengan data latihan.
Kata Kunci : Transformasi Fourier, Jaringan Syaraf Tiruan, Algoritma LVQ, Epoch, titik uji

I. PENDAHULUAN
1.1 Latar Belakang
Suara manusia merupakan salah satu alat komunikasi yang sangat berguna. Dalam berkomunikasi hal yang terpenting adalah bagaimana seseorang dapat mengolah suara, agar dapat didengar jelas oleh rekan bicaranya. Organ-organ tubuh yang mendukung proses besuara adalah mulut, lidah, bibir, rahang dan tenggorokkan yang kesemuanya itu Saling berhubungan. Ada 2 jenis bunyi suara yang kita kenal yaitu bunyi vokal maupun bunyi konsonan. Huruf-huruf yang termasuk bunyi vokal ada 5 yaitu a, i, u, e, o, sedangkan untuk bunyi konsonan terdiri dari 21 huruf yaitu b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, y, z.
Pengenalan bunyi vokal dapat dianalisa lebih lanjut dan akhirnya
dapat berupa aplikasi dari ciri vokal tersebut Transformasi Fourier merupakan salah satu dari beberapa tranformasi yang dapat digunakan dalam pengenalan bunyi vokal. Parameter-parameter yang dihasilkan tranformasi Fourier kemudian dimasukkan kedalam JST (jaringan syaraf tiruan) dengan menggunakan metode pembelajaran LVQ (Learning Vector Quatization). Metode pembelajaran ini dilakukan secara berulang-ulang hingga dapat mengenali ciri-ciri vokal yang ada.

1.2 Batasan Masalah
Dalam Tugas Akhir ini sistem pengenalan vokal yang dibuat memiliki batasan permasalahan sebagai berikut:
1. Vokal diucapkan dalam bahasa Indonesia.
2. Transformasi yang dipakai adalah Transfor- masi Fourier.
3. Metode pelatihan JST adalah LVQ dengan iterasi sebanyak 500, 1000, 2000 kali dan 512, 1024, 2048 titik pengujian

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 kelima vokal bahasa Indonesia berdasarkan parameter tinggi-rendah dan depan-belakang lidah.
Tabel 1 Vokal bahasa Indonesia
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 Analisa frekuensi sinyal dengan transformasi Fourier
Bentuk gelombang sinyal pada dasarnya merupakan fungsi waktu dimana analisa yang digunakan adalah analisa Fourier, yang dikembangkan menjadi deret Fourier. Bentuk-bentuk sinyalnya pun bermacam-macam, ada yang berupa gelombang sinus atau kosinus maupun bentuk gelombang yang lainnya. Setiap bentuk gelombang yang bukan berupa gelombang sinus atau kosinus, yang berulang pada setiap selang waktu yang teratur (regular interval), dinamakan satu gelombang periodik kompleks dengan periode T, dimana gelombang berulang setiap selang waktu tersebut dinamakan waktu periodik untuk sinyal x(t) yang periodik dengan panjang periode T, mempunyai beberapa sifat dibawah ini:

2.2.1 Transformasi Fourier Diskret
Hasil dari proses pengubahan ini adalah data yang berbentuk diskrit dan mungkin bukan merupakan data yang periodik. Ada keterbatasan dalam menggunakan metode transformasi Fourier karena pada prinsipnya metode transformasi Fourier hanya dapat digunakan pada data-data kontinu. Untuk mengatasi keterbatasan tertentu dapat digunakan analoginya pada data diskret yang dikenal dengan nama Transformasi Fourier diskret (Discrete Fourier Transform).
Anggap gelombang telah dicuplik pada interval waktu yang tetap T, untuk menghasilkan rangkaian {x(nT)} = x(0),x(T),……..,x[(N-1)T] dari nilai sample N, dengan n adalah bilangan sample dari n = 0 hingga n = N-1. Nilai data x(nT) hanya akan nyata jika merepresentasikan nilai deret waktu seperti bentuk gelombang tegangan. Bentuk Transformasi Fourier diskret (Discrete Fourier Transform) x(nT) kemudian didefinisikan sebagai rangkaian nilai kompleks {x(kΩ)} x(0),x(Ω),……,x[(N-1) Ω] dalam domain ferkuensi, dengan Ω adalah ferkuensi harmonik pertama yang diberikan oleh Ω = 2π / NT, maka x(kΩ) secara umum memiliki komponen nyata dan komponen imajiner, dan untuk harmonik ke –k


2.2.2 Algoritma transformasi Fourier cepat (Fast Fourier Transform)
Untuk lebih memudahkan dalam perhitungan, transformasi Fourier diskret selanjutnya dapat dikembangkan dengan cara mengefisienkan perulangan perhitungan juga sifat simetri dari faktor fasa WN yang menjadi sifat transformasi Fourier diskret dengan tujuan mengurangi jumlah perhitungan yang dibutuhkan dan selanjutnya akan mempercepat perhitungan.
Algoritma FFT( Fast Fourier Transform) yang banyak digunakan secara luas adalah algoritma dengan bilangan dasar 2, artinya masukkan yang dibutuhkan sebanyak N = 2V. hal yang pertama dilakukan dalam pengembangan algoritma FFT ( Fast Fourier Transform) dengan bilangan dasar 2 ialah dengan menyederhanakan penulisan persamaan DFT (Discreat Fourier Transform) dan juga membuat beberapa hubungan matematis, menjadi :


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:
Gambar 1 Pemodelan 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)
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 2 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).

III. PERANCANGAN DAN IMPLEMENTASI SISTEM
Program pengenalan vokal dibuat dengan alur program berikut.
Gambar 3 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.
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. Sedangkan untuk titik uji dapat dipilih yaitu 512, 1024 dan 2048 titik.
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 latihan berguna untuk mencari ‘net’ yang terbaik dapat ditunjukkan pada gambar berikut:
Gambar 4 Tampilan latihan untuk mencari ’net’ terbaik
Data latihan jika ditekan maka akan muncul tabel seperti yang diperlihatkan pada gambar berikut :
Gambar 5 Tampilan latihan untuk mencari ’net’ terbaik
Gambar 5 merupakan tampilan data latihan untuk 512 titik uji dan 500 epoch. Setelah diperoleh ‘net’ yang terbaik maka proses pengujian dapat berlangsung dengan memasukkan data baru. Untuk data pengujian saat ditekan maka akan tabel seperti yang diperlihatkan pada gambar berikut:
Gambar 6 Tampilan hasil data pengujian
Dari ke-3 gambar diatas (gambar 4, 5 dan 6 ) dihasilkan persentase pengenalan vokal untuk 20 responden, dimana untuk 10 responden digunakan sebagai data latihan dan 10 responden lagi digunakan sebagai data baru (data pengujian).
Dari gambar 5 diatas dapat dihitung rata-rata pengenalan vokal sebagai berikut :
dengan cara yang sama dengan contoh perhitungan diatas maka dapat ditabelkan sebagai berikut:
Tabel 2 Rata-rata pengenalan data pelatihan untuk masing-masing titik dan epoch
Dari tabel diatas terlihat bahwa ‘net’ atau jaringan yang terbaik berada pada titik uji 512 dan 2000 epoch, hal ini disebabkan karena semakin sedikit titik uji yang diproses maka semakin cepat jaringan memahami data tersebut. Diimbangi juga dengan batas maksimum jumlah iterasi yang dimiliki jaringan ini sebesar 2000 epoch, berarti proses yang dijalankan membutuhkan 2000 iterasi.
Dengan menggunakan ‘net’ yang diperoleh dari jaringan diatas, maka pengujian data baru dapat dilakukan dengan mangambil salah satu responden. Tampilan yang digunakan dalam menguji data baru dapat diperlihatkan pada gambar berikut:
Gambar 7 Tampilan pengujian untuk data baru
Proses pengujian data baru dapat dilakukan dengan memasukkan 10 responden, dimana data dimasukkan satu persatu kedalam jaringan diatas. Sehingga perbandingan persentase penegenalan untuk masing-masing vokal baik menggunakan data lama dan data baru dapat diperlihatkan pada tabel berikut:
Tabel 3 Perbandingan persentase pengenalan vokal
Persentase pengenalan tiap vokal diatas terlihat tidak ada yang mencapai 100 %, bahkan jika dirata-ratakan untuk data lama dapat mengenal tiap vokal sebesar 67,6 % sedangkan untuk data baru adalah 55,2 %. Beberapa faktor yang dapat mempengaruhi pengenalan vokal adalah sebagai berikut:
a. Derau lingkungan sekitar
karena system yang dibuat berhubungan dengan sinyal suara, maka faktor sinyal derau yang masuk akan sangat mempengaruhi keberhasilan pencocokkan.
b. Karakteristik sinyal
Akibat karakteristik sinyal suara manusia yang berbeda-beda. Hal ini akan mempengaruhi gaya bicara dan durasi pengucapan. Sehingga disini dibutuhkan pola bicara yang teratur dan tidak dibuat-buat.
c. Kehandalan perangkat lunak itu sendiri
   Kehandalan perangkat lunak maksud penulis adalah jika ditinjau dari segi pemilihan titik uji,             jumlah iterasi bahkan data yang dipilih sebagai data latihan dalam mencari ‘net’ yang terbaik             haruslah yang presisi karena dapat mempengaruhi dalam pengenalan vokal.


V. KESIMPULAN
Dari tahapan proses perancangan hingga pengujian system pengenalan dan analisa sinyal ucapan manusia, maka dapat diambil beberapa kesimpulan sebagai berikut.
1. Sinyal ucapan manusia dapat diwujudkan berupa parameter-parameter sinyal ucapan yang dapat mewakili informasi spektral sinyal.
2. Transformasi Fourier merupakan salah satu jenis transformasi yang dapat digunakan dalam proses pengenalan vokal, serta hasilnya sedikit lebih baik dibanding transformasi wavelet.
3. Rata-rata pengenalan vokal untuk masing titik dan epoch, terbaik pada titik 512 dan epoch 2000 dengan nilai pengenalan sebesar 95 % untuk data latihan dan 82,7 % untuk data pengujian.
4. Persentase pengenalan masing-masing vokal adalah vokal /a/ dikenal sebagai /a/ yaitu 98 % untuk data lama (data pelatihan) dan 92 % untuk data baru, vokal /i/ dikenal sebagai /i/ yaitu 74 % untuk data lama (data pelatihan) dan 74 % untuk data baru, vokal /u/ dikenal sebagai /u/ yaitu 80 % untuk data lama (data pelatihan) dan 38 % untuk data baru, vokal /e/ dikenal sebagai /e/ yaitu 66 % untuk data lama (data pelatihan) dan 52 % untuk data baru, vokal /o/ dikenal sebagai /o/ yaitu 20 % untuk data lama (data pelatihan) dan 20 % untuk data baru.


No comments:

Post a Comment