RANCANGAN PROGRAM APLIKASI PENGENALAN POLA SUARA PADA ABSENSI KARYAWAN MENGGUNAKAN GAUSSIAN MIXTURE MODEL DAN MABC

  

RANCANGAN PROGRAM APLIKASI

PENGENALAN POLA SUARA PADA ABSENSI KARYAWAN

MENGGUNAKAN GAUSSIAN MIXTURE MODEL DAN MABC

  1

  2

  3 Djunaidy Santoso ; Genbit Yasbil ; Ashadi Salim

ABSTRACT

  The problem that some companies faced was making the employee attendance be unique,

efficient, and suitable, especially from security and cost aspect. Therefore, the speech recognition that

applied to employee attendance was suitable to be implemented. The quality of digital speech in this

case was a conversation recorded in file wav format, will influence digital communication. More

noises existing in the file wav data causes accuracy and time for processing will be more difficult. The

implementation of this program to employee attendance of M.R companies showed that this

application program was successful by giving the accuracy optimation and data resolution from

speech records, with level recognition 58.3%, and accuracy more than 90%.

  Keywords: speach recognition, gaussian mixture model, attendance, digital speach signal

ABSTRAK

  Masalah yang dihadapi beberapa perusahaan saat ini adalah membuat absensi dengan

karakter unik secara efisien dan tepat, terutama ditinjau dari segi keamanan dan biaya. Aplikasi

pengenalan suara yang digunakan untuk absensi merupakan aplikasi yang tepat untuk

diimplementasikan pada suatu perusahaan. Kualitas suara digital dalam menyampaikan pesan, dalam

hal ini berupa rekaman percakapan dalam format file wav akan mempengaruhi kualitas komunikasi

digital. Banyaknya bunyi lain selain suara pembicara, yang ikut terekam menjadi noise bagi suara

utama. Implementasi program pada absensi karyawan perusahaan PT M.R. menunjukkan bahwa

program aplikasi ini berhasil dengan baik, dengan memberikan optimasi ketepatan dan kejelasan data

dari suara yang direkam dengan tingkat pengenalan rata-rata 58.3% dan keakuratan lebih dari 90%.

  Kata kunci: pengenalan suara, gaussian mixture model, absensi, sinyal suara digital

1 Jurusan Teknik Informatika, FASILKOM, Universitas Bina Nusantara, Kampus Syahdan No. 9,

  2, 3 Palmerah, Jakarta Barat 11480 Jurusan Matematika, FMIPA, Universitas Bina Nusantara, Kampus Anggrek, Jln. Kebon Jeruk Raya No. 27, Kebon Jeruk Jakarta Barat 11530, ashadi@binus.edu

  

PENDAHULUAN

  Masalah yang dihadapi beberapa perusahaan saat ini adalah membuat absensi dengan karakter unik secara efisien dan tepat, terutama ditinjau dari segi keamanan dan biaya. Kemajuan teknologi informasi sat ini, baik dari sisi hardware maupun software, telah banyak digunakan dalam analisis digital komunikasi maka aplikasi pengenalan suara yang digunakan untuk absensi merupakan aplikasi yang tepat untuk diimplementasikan pada suatu perusahaan.

  Kualitas suara digital dalam menyampaikan pesan ataupun kejelasan kata pembicara adalah penting dan berpengaruh terhadap kualitas pada komunikasi digital. Suara digital yang dimaksud adalah rekaman percakapan dalam format file wav yang digunakan sebagai absensi karyawan suatu perusahaan. Banyaknya bunyi lain, selain suara pembicara yang ikut terekam menjadi noise bagi suara utamanya. Misalnya, suara angin, bunyi klakson, suara orang lain yang berada dekat pembicara, dan bunyi lainnya yang ikut terekam. Semakin banyak noise yang terdapat pada data wav maka ketepatan dan waktu pemrosesannya semakin terhambat.

  Program aplikasi ini dibuat untuk mengurangi noise yang terekam dalam bentuk file wav. dan mengekstrak klasifikasi data wav yang digunakan sebagai master file wav. untuk pengenalan suara digital dan pada proses perekaman langsung pengenalan suara. Untuk menghilangkan noise pada suara digital, dilakukan dengan dua tahap. Pertama, pemisahan suara utama dengan noise. Kedua, dilakukan

  

sampling dari suara utama. Dengan menggabungkan gaussian mixture model, teknik sampling

  frekuensi MABC (Moving Average and Band-Limitation IN Cepstrum), diharapkan

  fundamental program aplikasi ini dapat memberikan optimasi ketepatan dan kejelasan data dari suara yang direkam.

  Kelemahan metode pengenalan menggunakan klasifikasi probabilitas dari data suara, seperti menggunakan Gaussian mixture model adalah apabila data yang akan dikenali terdapat noise. Jenis

  

noise yang paling sukar untuk dikenali maupun dihilangkan adalah ‘white noise’, yaitu noise dasar

  yang terdapat pada perekaman karena adanya kontak listrik digital pada hardware dan koneksi alat yang kurang baik. Pengenalan objek dengan memanfaatkan objek suara manusia memiliki kelemahan utama, selain kondisi saat perekaman, juga karena kondisi suara dari objek tersebut yang sering berubah, seperti intonasi, nada suara, dan volume suara seseorang yang tidak konstan. Namun, hal itu dapat diatasi dengan metode MABC yang mengambil frekuensi dasar dengan mendekati persamaan tersebut.

  Perancangan program aplikasi untuk menghilangkan noise suara digital ini dibatasi dalam ruang lingkup seperti berikut: Jenis data file Audio yang diedit adalah dalam format Windows Wave form 16–bit stereo 44.1 Khz, WAV (windows audio format), serta hanya menerapkan Gaussian

  

mixture model dan proses sampling fundamental frequency dengan MABC(Moving Average and

Band-limitation in Cepstrum method ). Pada rancangan ini, file data audio yang dapat diolah dan

  disimpan berupa format file wav. Program dibuat dengan bahasa pemrograman Borland Delphi 6.0, Matlab V.7 R.13, dan sistem database SQL Server 2000.

GAUSSIANN MIXTURE MODEL (GMM)

  Gaussian mixture model adalah suatu himpunan komponen model fungsi kerapatan yang

  dapat menghitung dan melacak ruas suatu model spektrum. Mixture model juga merupakan metode yang efektif untuk perubahan dari model yang bergerak lambat karena merupakan semi parameter alternatif untuk histogram tanpa parameter dan memberikan fleksibilitas lebih serta ketelitian dalam memodelkan statistik dari data, dengan kata lain untuk mevisualkan suatu dynamic scene. S tat

  26 , Vol. 8 No. 1, Januari 2008: 25-34

  Jurnal Mat GMM juga merupakan model statistik dari distibusi probabilitas yang didapatkan dari nilai bobot setiap distribusi Gaussian sehingga GMM merupakan metode yang sangat tepat untuk perhitungan, baik dengan parameter maupun tidak. Bila model telah dihasilkan, syarat peluang dapat dihitung dan GMM juga dapat ditampilkan sebagai bentuk fungsi hubungan dasar network, seperti berikut ini (Paalanen, et. al., 2005). Generative model: Dengan nilai distribusi D dimensi dari variabel acak : Keterangan: x = nilai posisi x ; y = Y fungsi x n exp[n] = e ; D = dimensi matrik

  = vektor rata-rata ∑ = matrik kovarians ; μ T = jumlah komponen Kemungkinan untuk (y ,…,y ) adalah sebagai berikut. 1 n

  Estimasi: Nilai yang diharapkan: Nilai maksimum:

  Sampling Fundamental Frekuensi dengan MABC Fundamental frequency F0 merupakan parameter dasar dalam ilmu akustik, khususnya pada

  teknologi pengolahan sinyal suara (Fryantoni, 2004). Seperti pada speech recognition maupun speech

  

synthesis , fundamental frequency merupakan salah satu parameter penting, di samping parameter

lainnya yang memberikan informasi mengenai suatu domain frekuensi (Dubnov, et. al., 2003).

  Proses sampling dengan cara Moving Average and Band-limitation in Cepstrum method (MABC) ini akan menghilangkan masalah tidak teraturnya nilai pada domain frequency tinggi yang sering terjadi. Selain itu, pada penelitian speech synthesis, fundamental frequency juga berperan sebagai parameter yang dapat meningkatkan kealamian suara, dengan melakukan pengontrolan hubungan penerimaan irama suara ke dalam suatu kalimat.

  Algoritma Proses Sampling Fundamental Frequency MABC

  Algoritma proses sampling fundamental frequency menggunakan MABC, ditunjukkan pada Gambar 1. Dari gambar 1, pertama-tama dilakukan proses time window dan diferensial orde pertama. Lalu, dengan fourier transform dapat ditentukan inverse power spectral.(Fryantoni, 2004). Dengan

  

inverse fourier transform pada diferensial log power spectral, dapat ditentukan cepstrum yang

  merupakan plot atau garis pergerakan tingkat kuasa frekuensi signal, dan dari salah satu bagian high pada cepstrum yang didapat, ditentukan pick-nya, guna menghitung fundamental frequency.

  frequency Analisis Database

  Program Database yang digunakan adalah SQL server 2000, dengan metode client-server yang terintegrasi dengan component ADO pada Delphi. Pada program aplikasi ini, dibutuhkan 3 tabel pada database, yaitu tabel karywan, tabel sound, dan tabel absen, seperti pada Gambar 1 (Alam, 2005).

  Gambar 1 Algoritma Proses Sampling Fundamental Frequncy MABC

  Tabel Karyawan

  Dengan atribut ‘id’ sebagai field nomor induk dari karyawan, ‘nama’ sebagai field nama lengkap karyawan, ‘Alamat, dan ‘Tgl_lahir’ (Tabel 1).

  Tabel 1 Database Karyawan

  

Attribut Tipe Ukuran

  ID Nchar 6 Nama Varchar 16

  Alamat Varchar 50 Tgl_Lahir datetime S tat

  8

  28 , Vol. 8 No. 1, Januari 2008: 25-34

  Jurnal Mat

  Tabel Sound

  Dengan atribut ‘id’ sebagai field nomor induk dari karyawan, ‘rec1’,’rec2’,dan ‘rec’3’ sebagai field bulan rekaman 0=belum 1=sudah (Tabel 2).

  Tabel 2 Database Sound

  

Attribut Tipe Ukuran

  

ID Nchar

  1 Rec1 Bit 1 Rec2 Bit 1 Rec3 bit 1

  Tabel Absen

  Dengan atribut ‘tgl’ sebagai field tanggal absensi, ‘id’ sebagai field nomor induk karyawan, ‘masuk’ field text data jam absensi masuk, dan ‘keluar’ field text data jam absensi keluar (Tabel 3 dan Gambar 2).

  Tabel 3 Database Absen

  

Attribut Tipe Ukuran

Tgl datetime 8

  ID Nchar 6 Masuk Smalldatetime 4 keluar Smalldatetime 4

  Gambar 2 Database Relation Diagram Proses algoritma staddling yang digunakan, seperti yang ditunjukan pada Gambar 3. Start Exit Exit Menu Utama Exit End Exit Database Sound Absen record Tabel Absen View Absen Add Del Play Delete Add Sound Record Add Database Delete Record Karyawan Database Play .wav Delete .wav Add Sound Temp.wav Exit Add Database Record Database Add Database Karyawan Update save (return 0) matlab absensi.m Cancel Analisa Wave (return 0) Suara Cancel Status Pengenalan Save .wav Database save Update Absen Database Memo Status Update Sound Gambar 3 Flowchart Algoritma Staddling

  Pada show_result Gambar 4, bila hasil pengenalan MABC telah mencapai 80% ke atas maka suara dapat diterima. Bila suara setelah dilakukan proses GMM masih tidak mencukupi 30% maka suara ditolak, artinya tidak dikenali. Hal itu dapat ditunjukkan pada Gambar 4 (Kamarainen, et. al., 2003).

  S tat

  30 , Vol. 8 No. 1, Januari 2008: 25-34

  Jurnal Mat Gambar 4 Algoritma Proses Pengenalan Suara

HASIL RANCANGAN PROGRAM

  Sarana yang dibutuhkan untuk mengoperasikan program aplikasi absensi suara ini dapat dibagi menjadi dua kelompok. Pertama, spesifikasi kebutuhan perangkat keras. Spesifikasi minimum perangkat keras untuk client SQL dan absensi adalah sebagai berikut: Processor minimum pentium III, AMD Athlon; Memory dengan kapasitas 256 MB, Monitor SVGA, Mouse dan Keyboard; Harddisk dengan free space 400 MB, Video Card 1 MB, Sound Card, Lan Card Ti & Microphone.

  Kedua, spesifikasi kebutuhan perangkat lunak. Untuk mengoperasikan aplikasi pengenal suara dan pemisah noise yang telah dibuat, diperlukan perangkat lunak yang mendukung agar aplikasi ini berjalan dengan optimal. Spesifikasi minimum perangkat lunak yang dibutuhkan untuk aplikasi ini adalah sebagai berikut: Sistem operasi Microsoft Windows 9x, XP atau NT Server; SQL Server 2000; Perangkat lunak program aplikasi ‘pemisah noise dan absensi’ dengan ukuran 60 MB diutamakan modul database; Matlab Runtime v.7 r.13.

  Evaluasi Program Apikasi

  Evaluasi program aplikasi ini dilakukan dengan dua cara, yaitu run and trial proses kalkulasi probabilitas pengenalan suara setelah pemisahan noise dengan Matlab, dan percobaan penggunaan program aplikasi secara keseluruhan pada karyawan perusahaan PT M.R.

  Evaluasi Proses Kalkulasi

  Pada evaluasi proses kalkulasi, dilakukan eksperimen dengan file m pada matlab yang telah dibuat, untuk mengetahui berapa besar persentase dari hasil pengenalan suara yang tepat, dan berapa besar tingkat intensitas pengenalannya. Untuk itu, dilakukan pengumpulan sampel suara pada file wav. dengan format 16–bit stereo 44.1 KBps. Dengan 4 sumber objek yang masing-masing direkam sebanyak tiga kali sehingga didapatkan file wav. sejumlah 12 file dengan rata-rata durasi sampling yang diambil berkisar antara 2.75 detik sampai 3 detik.

  Data sampling tersebut diklasifikasikan menurut sumber sampel sebanyak 4 klasifikasi yang diberi nama A ,B ,C, dan D sehingga didapatkan 12 sampel, yaitu {A1, A2, A3, B1, B2, B3, C1, C2, C3, D1, D2, D3}. Setelah data sampel tersedia, dilakukan sampling dengan metode MABC. Setelah proses MABC, setiap data menjadi 50 array yang berisi tingkat intensitas frekuensi dan nilai yang dibutuhkan untuk per satu gelombang yang disebut power frekuensi. Dipilih setiap class dengan nomor 1 sebagai master file wave, dengan GMM matlab unit ‘gmmbcreate.m’ untuk mencari komponen bobot dari array dan fungsi GMM-nya (Gambar 5).

  Gambar 5 Algoritma GMM Nilai gmmclass digunakan untuk menentukan tingkat ketepatan probabilitas per layer dari sampel suara yang ada dengan nomor 2 dan 3 dengan ‘gmmb_classify.m’. Algoritma GMM ini mampu menentukan derajat dan posisi dari data yang tidak sesuai dengan data master wave. Data yang tidak sesuai dihapus dengan cara mengembalikan array pada nilai awal yang berarti nol. Pada tahap inilah, jika ingin dilakukan pengembalian data wave ke file suara maka posisi yang kosong harus digantikan dengan posisi dari file master sehingga tidak ada jedah suara senyap pada file suara (Gambar 6).

  S tat

  32 , Vol. 8 No. 1, Januari 2008: 25-34

  Jurnal Mat Gambar 6 Plot Penyebaran Data (yang Dilingkar adalah yang Tidak Sesuai) Data Array yang telah dipisahkan noise-nya, dicocokkan dengan file master untuk mengetahui besarnya tingkat pengenalan suara, hasilnya dapat dilihat pada Tabel 4.

  Tabel 4 Hasil Evaluasi Pengenalan Suara

  A2 A3 B2 B3 C2 C3 D2 D3 A1 0.5149 0.5576 0.3314 0.4384 0.2901 0.2295 0.3517 0.2951

  

B1 0.3845 0.3167 0.4602 0.5133 0.3115 0.2861 0.3820 0.3945

C1 0.2901 0.2261 0.2107 0.2189 0.4885 0.6133 0.3122 0.3512

D1 0.3360 0.3127 0.4401 0.4868 0.3819 0.3946 0.7354 0.7819

  Dari Tabel 4, terlihat hasil proses pengenalan suara yang dilakukan dengan 4 jenis objek dan 3 sampel per objek. Setelah dilakukan 16 kali proses pengenalan, dapat dilihat untuk pengenalan suara dengan objek yang sama (A2 dan A3 dengan A1; B2 dan B3 dengan B1; C2 dan C3 dengan C1; D2 dan D3 dengan D1) rata-rata sebesar 58.3% dan akurasi pengenalan suara lebih dari 90%.

  

PENUTUP

  Dari analisis terhadap hasil program aplikasi, dapat diambil beberapa simpulan sebagai berikut. Adanya noise pada file wav. yang direkam mempengaruhi besarnya persentase pengenalan suara sehinga semakin banyak noise yang ada maka semakin berkurang tingkat pengenalannya. Di sisi lain, setiap perekaman maupun pengubahan dari data yang terkontaminasi noise, membutuhkan data dasar yang dijadikan sebagai pedoman untuk mengklasifikasikan data dan memprosesnya. Pemisahan maupun penghilangan noise dari data dapat berpeluang besar untuk menciptakan noise baru yang berpotensi lebih kecil maupun lebih besar terdapat dalam data.

  Adapun dengan pemisahan noise, nilai data yang terdapat pada record tempat noise berada dapat dinormalisasikan. Namun, pada pengenalan suara tetap akan berkurang tingkat akurasinya karena hilangnya nilai node kontinu pada record. Pada percobaan dan analisis pada evaluasi proses kalkulasi, rata-rata didapatkan pengenalan suara pada tingkat persentase 58.3% yang mungkin disebabkan oleh hal tersebut, walaupun tidak sampai 80% namun pengenalan suara dapat dikatakan berhasil dengan akurasi lebih dari 90%.

  Jurnal Mat S tat , Vol. 8 No. 1, Januari 2008: 25-34

  Alam, Agus J. 2005. Pemrograman Database Borland Delphi dalam SQL Server 7.0 & 2005. Jakarta: PT Elex Media Komputindo. Dubnov, Sholomo and Adiel Ben-Shalom. 2003. Review of ICA and HOS Methods for Retrieval of

  Natural Sounds and Sound Effects . Nara, Japan. April 2003. 4th International Symposium on Independent Component Analysis and Blind Signal Separation (ICA2003).

  http://music.ucsd.edu/~sdubnov/Papers/ReviewICA03.pdf Fryantoni, Driszal. 2004. “Proses Sampling Fundamental Frequency dengan MABC.” Diakses dari http://www.informatika.lipi.go.id/jurnal/proses-sampling-fundamental-frequency-dengan-mabc/ Kämäräinen, Joni dan Pekka Paalanen. 2003. “GMMBAYES - Bayesian Classifier and Gaussian

  Mixture Model ToolBox.” Lappeenranta University of Technology. Diakses dari http://www.it.lut.fi/project/gmmbayes/ Paalanen, P., J.K. Kamarainen, J. Ilonen, and H. Kälviäinen, 2005. “Feature Representation and

  Discrimination Based on Gaussian Mixture Model Probability Densities - Practices and Algorithms.” Research Report 95, Lappeenranta University of Technology, Department of Information Technology, Diakses dari http://www.it.lut.fi/project/gmmbayes/downloads/doc/laitosrap95.pdf