ISSN : 2302-3805
Seminar Nasional Teknologi Informasi dan Multimedia 2014 STMIK AMIKOM Yogyakarta, 19 Februari 2014
PENGENALAN SUARA DENGAN KETERGANTUNGAN TEKS MENGGUNAKAN METODE PRINCIPAL COMPONENT ANALYSIS PADA TERAPAN KOMPUTASI AWAN Endyk Noviyantono1), Joko Lianto Buliali2) Teknik Informatika Institut Teknologi Sepuluh Nopember Surabaya Jl. Keputih Sukolilo, Surabaya Email :
[email protected]),
[email protected])
ini lebih banyak memahami tentang apa yang disampaikan, dibandingkan siapa yang menyampaikan [1].
Abstrak Pengenalan suara (Voice Recognition) merupakan sebuah objek pengenalan yang cukup tua dan telah banyak dilakukan penelitian. Banyak manfaat yang diperoleh dari fungsi biometric berdasarkan suara ini, mulai dari pengamanan untuk mengaktifkan sesuatu, sampai dengan menggunakan perintah suara dari orang yang telah diberikan wewenang. Metode PCA (Principal Component Analysis) merupakan sebuah metode yang banyak dipergunakan untuk pengenalan wajah (Voice Recognition), namun pada penelitian ini dipergunakan untuk menyelesaikan penelitian tentang pengenalan suara dengan ketergantungan teks atau biasa dikenal dengan Text Dependent Voice Recognition. Kesederhanaan metode PCA menjadi sebuah daya tarik penggunaannya pada terapan komputasi awan (cloud computing) agar tidak membutuhkan resource besar untuk menanggulangi rendahnya kecepatan jaringan komunikasi. Layanan Database as a Service (DBaaS) dipilih untuk mendukung rekognisi suara berbasiskan komputasi awan pada penelitian ini.
Topik penelitian voice recognition, lebih luas area penelitiannya, bahasan tentang speech recognition, merupakan sebuah bagian penting yang juga perlu menjadi perhatian. [1] Penelitian ini bertujuan untuk membahas tentang Text Dependent Voice Recognition, jika diterjemahkan dalam bahasa Indonesia, adalah pengenalan suara berketergantungan teks. Beberapa teks dipilih untuk nantinya menjadi acuan pengenalan suara. Ketentuan tentang jenis teks baik itu berupa kata atau kalimat yang dipergunakan pada saat proses pengenalan terjadi dapat diperlakukan secara khusus atau bebas untuk memperoleh informasi yang lengkap dan detail pada suara yang ingin dikenali, sehingga dapat menjadi pembeda dari masing-masing user. Pada penelitian ini beberapa kata yang dipergunakan untuk pengenalan suara dipilih secara bebas, tidak menggunakan metode khusus untuk pemilihan katanya.
Kata kunci: Text Dependent Voice Recognition, Principal Component Analysis, PCA, Cloud Computing, Database as a Service, DBaaS. 1. Pendahuluan Penelitian tentang suara mengacu pada dua hal, yaitu voice recognition dan speech recognition. Voice Recognition atau biasa dikenal dengan Speaker Recognition merupakan sebuah proses yang dapat mengenali suara pembicara, berdasarkan karakteristik suara pembicara yang memiliki suara tersebut [1]. Terdapat dua metode pendekatan untuk Voice Recognition, yaitu Text Dependent Voice Recognition, yaitu pengenalan pembicara dengan melalui teks khusus yang diucapkan untuk dapat dikenali, sedangkan bentuk metode kedua yaitu Text Independent Voice Recognition adalah pengenalan pembicara tanpa ketergantungan teks khusus untuk proses rekognisi [1].
Gambar 1. Penyelesaian Kasus pada Speaker Recognition (Douglas Reynolds, MIT Lincoln Labs) Principal Component Analysis (PCA) merupakan metode dengan teknik statistik dengan berbagai penggabungan yang dipergunakan untuk pengenalan wajah dengan membutuhkan beberapa keputusan pada sisi desain [3]. Pekerjaan PCA adalah prediksi, penghilangan redundansi, ekstraksi fitur serta kompresi data [4]. Beberapa terapan metode PCA yang populer adalah pada kompresi gambar dan beberapa teknik lain untuk mencari sebuah pattern (bentuk) dari data dengan dimensi tinggi. [3] Terdapat beberapa istilah dalam PCA, yaitu Eigenvalue dan Eigenfaces. Kata “eigen” berarti berbeda, artinya dalam beberapa objek yang akan dikenali pasti memiliki pembeda antara yang satu dengan yang lain. Eigenvalue,
Bentuk penelitian seperti yang telah dijelaskan sebelumnya, selain Voice Recognition yaitu Speech Recognition, yang merupakan sebuah proses mengenali suara, dari kalimat atau kata yang disampaikan. Penelitian 1
ISSN : 2302-3805
Seminar Nasional Teknologi Informasi dan Multimedia 2014 STMIK AMIKOM Yogyakarta, 19 Februari 2014
sesuai namanya, dapat diartikan sebagai nilai pembeda dari masing-masing objek gambar dan Eigenfaces merupakan bentuk gabungan struktur wajah yang disimulasikan menjadi sebuah titik pembeda antara gambar satu kelompok dengan identifikasi sama dan gambar identifikasi dengan kelompok yang lain.
16.384 KBytes. Jumlah data sebesar tersebut, nantinya akan ditambahkan lagi header file untuk dikenali sebagai file audio dengan format WAV. Oleh karena itu secara otomatis ukuran file akan lebih besar dari 16.384 Kbytes. Pilihan channel Mono pada format digital yang dipilih, akan menghasilkan matriks array satu dimensi pada data yang ada. Apabila dilakukan pemilihan channel Stereo, maka akan tercipta jumlah data sebesar 16.000 sebanyak dua kali, atau sebesar 32.000 data. Untuk proses rekognisi suara ini dipilih channel Mono, selain untuk memperkecil ukuran file dan data yang ada, juga dilihat dari sisi kepentingan saat rekognisi dibutuhkan. Channel Stereo lebih penting dibutuhkan untuk kualitas suara yang didengarkan, dibandingkan dengan kualitas suara yang diambil sebagai data untuk proses rekognisi.
Meski pada penelitian ini tidak untuk melakukan identifikasi wajah, namun objek wajah dan objek suara yang ingin dikenali (recognition) memiliki bentuk yang sama. Keduanya berasal dari bentuk analog yang kemudian di digitalkan, sedangkan kesamaan yang kedua isi yang adalah data gambar dan data suara memilki ketentuan yang hampit sama (mirip) dalam proses digitalisasi. Kedua bentuk data tersebut memilki identifikasi format penyimpanan yang beraneka ragam. Untuk gambar memilki format penyimpanan BMP, JPG, GIF atau PNG. Jenis data suara, juga memiliki bentuk format yang beranekaragam dalam proses digitalisasi, mulai dari WAV, MP3, OGG, AAC atau format digital suara yang lain. Ketentuan format digital yang dipergunakan untuk penyimpanan data, penting untuk ditentukan terlebih dahulu, agar tetap menjaga informasi penting saat proses digitalisasi dilakukan, dikarenakan masing-masing format gambar atau suara memiliki karakteristik penyimpanan yang berbeda.
Gambar 2. Pilihan Format Konversi Audio Terdapat banyak software untuk melakukan proses konversi audio dengan pengaturan yang detail, mulai dari software berbayar terkenal seperti Adobe Audition, hingga software gratis yang cukup populer yaitu Audacity.
Untuk lebih menjaga originalitas data, disarankan untuk menggunakan format data digital tidak terkompresi, agar tidak terjadi proses distorsi pada kualitas informasi yang disimpan. Untuk gambar menggunakan format BMP, sedangkan untuk suara menggunakan format WAV.
Terapan komputasi awan (cloud computing) pada aplikasi pengenalan suara ini merupakan salah satu bentuk penyelarasan penggunaan teknologi terkini yang sangat menghemat sumberdaya yang ada, selain pelayanan itu pelayanan juga makin prima, dikarenakan tidak lagi pengguna terkendala atas komputer tertentu atau versi perangkat lunak tertentu. Pengguna hanya mengakses layanan yang dibutuhkan, tanpa harus mengetahui jenis perangkat lunak apa maupun versi berapa yang terdapat pada server penyaji layanan [6].
Sebagai pengenal yang baik, aplikasi yang dibuat ini nantinya harus mendapatkan data yang cukup terhadap objek, dalam artian pemilik suara yang ingin dikenali. Pada penelitian ini dipergunakan satu (1) sample suara untuk satu kata yang dipergunakan bagi kepentingan identifikasi pemilik suara yaitu kata “hallo”. Dengan pertimbangan untuk menjaga intonasi (penekanan kata) dan kejelasan kata yang tersampaikan karena karakteristik lidah, mulut dan tenggorokan sebagai penghasil suara
Jenis layanan data yang digunakan pada penelitian ini, dikenal sebagai layanan Database as a Service (DBaaS) pada teknologi komputasi awan (cloud computing).
Kriteria berikutnya untuk pengumpulan data berupa sample suara adalah dengan menyimpan lamanya masingmasing kata yang disampaikan oleh orang yang bersangkutan selama dua (2) detik, menggunakan software sound recorder, dan tersimpan dengan format WAV dengan bitrate 8 Kbps, channel tipe Mono dan bit depth 8 bit. Ukuran file yang diciptakan dalam kisaran 18 KB hingga 21 KB.
2. Pembahasan Langkah pertama adalah mengumpulkan sample suara yang diinginkan untuk masing-masing individu yang ingin dikenali saat proses rekognisi dilakukan. Format dan ketentuan dari file digital yang dipergunakan untuk penyimpanan adalah WAV dengan ketentuan bitrate 8 Kbps (8.000 Hz), dengan kanal Mono dan bit depth 8 bit. Dipilihnya format dan ketentuan tersebut adalah masalah generalitas format (penggunaan secara umum) dan proses penghapusan kualitas informasi yang tidak terlalu
Dengan terapan format WAV bitrate 8 Kbps dan bit depth 8 bit, maka akan menciptakan kumpulan data suara yang telah terdigitalisasi sebesar 16.000 data, atau sekitar
2
Seminar Nasional Teknologi Informasi dan Multimedia 2014
ISSN : 2302-3805
STMIK AMIKOM Yogyakarta, 19 Februari 2014
mempengaruhi kinerja sistem (loosless). Sebagai contoh penggunaan kanal “Mono”, yang tidak mempengaruhi proses rekognisi yang ada, serta penggunaan bit depth 8 bit dalam penyimpanan data, karena tidak diperlukan pengenalan mendetail pada kualitas suara yang di digitalisasi, seperti penyimpanan pada suara Orkestra, karena banyaknya peralatan musik, atau penyimpanan suara dengan efek suara tertentu yang membutuhkan kedalaman bit (bit depth) tinggi.
untuk kemudian dijumlahkan. Hasil terakhir dapat diamati pada gambar 3. Dapat dibayangkan apabila sistem harus mengenali sepuluh (10) orang, dan satu (1) orang memiliki tiga (3) sample suara, maka akan tersimpan sebanyak data 300 data. Untuk komputasi awan, kondisi ini akan menjadi sebuah kendala yang cukup berarti. Tabel yang berukuran besar pada database akan membutuhkan resource yang cukup besar, selain itu juga efisiensi dalam tingkat lebar data (bandwidth) saat pengiriman data juga menjadi pertimbangan berarti saat proses rekognisi dilakukan.
Untuk satu (1) individu yang ingin dikenali (direkognisi), terdapat tiga (3) sample suara yang dimasukkan sebagai sumber data untuk satu text dependent (ketergantungan teks) yaitu kata “hallo” yang nantinya akan dianalisa dengan metode Principal Component Analysis (PCA). Satu individu atau satu orang yang akan dikenali diambil tiga (3) sample suara saat mengucapkan “hallo”, yang nantinya data akan diambil dan dimasukkan dalam database. Dengan kondisi tersebut akan tersita ruang untuk 16.000 data sebanyak 3 sample suara, atau sekitar 48.000 data.
Gambar 3. Hasil Modifikasi Data Menjadi Positif
Satu kata “hallo” dan tiga sample penyampaian suara dimaksudkan untuk mendapatkan karakteristik suara yang kemungkinan akan diperoleh sistem untuk mengenali orang/individu yang menyampaikan suara tersebut. Individu yang ingin dikenali dapat menyampaikan kata “hallo” tersebut dengan berbagai bentuk cara penyampaian, untuk memberikan akurasi yang baik, kondisi penambahan sample bagi satu orang/individu yang ingin dikenali dapat dimasukkan lebih dari tiga (3) data.
Oleh karena itu data untuk satu orang yang akan dikenali (direkognisi) tersimpan satu data saja pada database utama untuk proses rekognisi berlangsung. Sebagai contoh data pada gambar 3, untuk suara salah satu orang yang ingin dikenali, diambil rerata-nya terlebih dahulu, untuk kemudian disimpan dalam database utama. Sample untuk ketiga suara yang ada tidak dibuang begitu saja, namun tersimpan dalam tabel lain yang terpisah, yang diakses saat user menginginkan perubahan data sample terjadi. Terapan kondisi ini akan memperkecil tabel utama yang akan diakses untuk proses rekognisi yang terjadi. Apabila seratus (100) orang ingin dikenali, berarti terdapat 100 rekord data yang tersimpan untuk proses rekognisi.
Gambar 2. Tiga Sample Penyampaian kata “Hallo” untuk satu orang yang akan dikenali Langkah pertama penerapan metode PCA adalah meletakkan data yang akan dianalisa menjadi satu vektor, dikenal dengan nama eigenvector. Vektor yang terbentuk dengan pilihan format digitalisasi WAV dengan bitrate 8 Kbps dan bit depth 8 bit adalah sebesar 16.000 data untuk satu sample suara selama 2 detik. Kesemua vektor data dari masing-masing sample, selanjutnya disusun dalam database untuk selanjutnya dilakukan analisa dengan metode Principal Component Analysis.
Gambar 3. Mean value pada Tiga Sample Data Principal component (komponen prinsip) seperti yang dimaksudkan dalam nama metode ini, dapat diartikan seperti komponen dengan kecenderungan yang mendominasi pada kumpulan data yang dimilikinya. Dengan kondisi tersebut, maka pencarian atas komponen yang dominan atau yang prinsip menjadi sebuah keutamaan.
Dalam gambar 2 dapat diamati bahwa terdapat data yang terletak dibawah 0, yang berarti data negatif. Data dalam PCA disarankan data positif, artinya data yang bernilai negatif harus dipositifkan terlebih dahulu, untuk kemudian diolah. Penambahan data agar menjadi positif dapat mengambil nilai terendah dari masing-masing data,
Masing-masing suara manusia memiliki karakteristik tersendiri, khusus, bagai DNA manusia yang tidak bisa disamakan dengan orang lain. Dikarenakan suara yang tercipta dari pita suara, terpengaruh oleh tenggorokan, bentuk mulut, lidah dan gigi yang berbeda bagi setiap individu. 3
Seminar Nasional Teknologi Informasi dan Multimedia 2014
ISSN : 2302-3805
STMIK AMIKOM Yogyakarta, 19 Februari 2014
Data rerata atau mean (1) yang telah diperoleh dari proses perhitungan ke-tiga sample, selanjutnya dilakukan perhitungan lanjutan dengan mencari rerata dari keseluruhan individu yang akan diambil datanya. Selanjutnya akan diperoleh Eigenvalue, yang menjadi bobot dari masing-masing data untuk direkognisi (2).
1 M M i 1 xi
m=
layanan akses jarak jauh untuk data pengguna, perangkat lunak dan layanan komputasi. [5] Banyak hal yang dapat dilakukan dengan adanya teknologi komputasi awan ini, mulai dari penyimpanan data, dikenal dengan bentuk Storage as a Service (STaaS). Dua layanan terkenal untuk media penyimpanan data berbentuk layanan komputasi awan adalah Box.net dan DropBox.com.
......(1)
Pemberian layanan menggunakan aplikasi perkantoran berbasis web yang menyerupai Microsoft Office adalah GoogleDocs. Jenis layanan komputasi awan ini berbentuk Software as a Service (SaaS). Sedangkan apa yang akan dimanfaatkan pada penelitian ini, adalah layanan Database as a Service (DBaaS), yaitu sebuah layanan yang menyajikan penyimpanan data pada bentuk komputasi awan.
Nilai M yang dimaksud dalam formula (1) adalah vector data yang tercipta dari masing-masing data suara. Formula untuk pencarian bobot adalah sebagai berikut.
w x m i
i
......(2)
Setelah pencarian bobot dilakukan, kondisi berikutnya adalah penerapan Eucledian Distance, yaitu mencari jarak antara data yang dicari dengan nilai eigenvector yang telah dihitung sebelumnya.
Perbedaan antara layanan DBaaS dan StaaS adalah, layanan DBaaS lebih mengarah pada data yang terstruktur berbentuk database yang terdiri dari gabungan tabel-tabel, sedangkan layanan StaaS lebih mengarah pada pemberian layanan penyimpanan storage untuk layanan akses file [6].
𝑑(𝑥, 𝑦) = ‖𝑥 − 𝑦‖2 = ∑𝑘𝑖=1(𝑥𝑖 − 𝑦𝑖 )2 ......(3) Keseluruhan persamaan ini diambil dari sumber referensi prosiding[2].
Layanan DBaaS yang tersaji di Internet mulai dari yang berbayar, seperti layanan yang Google Cloud SQL, Database.com, Amazon, Oracle EnterpriseDB, GoGrid, Rackspace dan Microsoft Azure merupakan layanan DBaaS yang terkenal. Namun biaya yang dibebankan kepada penggunanya juga perlu dipikirkan dengan baik. Pembiayaan yang dibebankan pada pengguna buka terletak pada besarnya ukuran database yang ada atau yang tersimpan saja, namun kapasitas sirkulasi data saat akses yang terjadi. Dapat diartikan pula, pembiayaan yang dibebankan ini seperti penggunaan bandwidth web hosting dalam penggunaan kapasitas lebar sirkulasi data pada web.
Dari proses rekognisi yang terjadi nilai perbedaan statistik yang muncul dari rekognisi suara yang ada, semakin besar nilai yang dihasilkan, maka semakin menjauh mendekati persamaan suara yang ada pada database. Perhitungan secara statistik yang mendekati nilai perbedaan sebesar 16.000 data menunjukkan bahwa data mengalami perbedaan yang sangat signifikan. Semakin mendekati 0 berarti data yang direkognisi mendekati kesempurnaan (Gambar 4). Namun pada kenyataannya tidak pernah hal ini terjadi, meski salah satu data sample suara yang dipergunakan untuk proses rekognisi, karena data sample suara yang digunakan sebagai sumber proses rekognisi adalah data yang telah diambil nilai tengah (mean) dari ketiga sample suara yang ada.
Pada penelitian ini dipergunakan layanan AppHarbor, yang memiliki fasilitas gratis untuk layanan database yang berukuran kecil, yang tidak lebih dari 20 MB. Setelah ter-registrasi dan masuk ke dalamnya, pengguna diwajibkan untuk membuat aplikasi (application). Aplikasi yang dimaksud disini adalah aplikasi terapan database yang akan dibuat berbasiskan komputasi awan. Gambar 5, merupakan gambar interface dari appharbor setelah proses pembuatan aplikasi berakhir. Aplikasi yang diberi nama “vr_on_cloud” tersebut selanjutnya ditambahkan layanan MySQL.
Gambar 4. Layout Aplikasi Rekognisi Suara Komputasi awan (Cloud Computing) merupakan sebuah bentuk baru penggunaan sumberdaya Internet yang berupa hardware dan software yang tersaji sebagai layanan melalui jaringan internet.[5] Nama yang digunakan berasal dari penggunaan gambar awan (cloud) sebagai simbol kompleksitas infrastruktur tersedianya layanan internet. Cloud computing mempercayakan
Gambar 5. Layout setelah application dibuat
4
Seminar Nasional Teknologi Informasi dan Multimedia 2014
ISSN : 2302-3805
STMIK AMIKOM Yogyakarta, 19 Februari 2014
Selanjutnya dilakukan penambahan add-on MySQL, dikarenakan layanan database yang akan dipergunakan dalam aplikasi menggunakan MySQL (gambar 6). Dengan pilihan paket Yocto dan ukuran database tidak melebihi 20 MB, maka layanan cloud database bertype MySQL dapat dibuat dengan mudah.
pada suara agar tercipta suara yang benar-benar jernih, sesuai dengan karakteristik suara orang yang ingin dikenali. Menggunakan filterisasi signal digital sangat memungkinkan untuk diterapkan dalam penelitian ini, seperti High Pass Filtering, Low Pass Filtering atau filterisasi lain yang mampu memberikan hasil lebih untuk tujuan yang sama. Daftar Pustaka [1] Parul, R.B. Dubey, “Automatic Speaker Recognition System”, International Journal of Advanced Computer Research, vol. 2, no. 4, issue 7, pp.119-124, Desember 2012. [2] M.A. Turk, A.P. Pentland, “Face Recognition Using Eigenfaces”, IEEE Conf. on Computer Vision and Pattern Recognition, pp. 586591, 1991. [3] H. Moon, P.J. Philips, “Computational and Performance Aspects of PCA-based Face Recognition Algorithms”, Perception, vol. 30, pp.303-321, 2001. [4] Kyungnam Kim, Face Recognition using Principle Component Analysis, Maryland: Department of Computer Science University of Maryland, 2003. [5] Larry Bernard, Cloud Computing Unabrigde Guide, Sydney: Emereo Publishing, 2008. [6] Mather, T., Kumaraswamy, S., Latif, S, Cloud Security and Privacy, New York: O’Reilly, 2009.
Gambar 6. Paket Layanan Gratis MySQL pada AppHarbor Selanjutnya dapat dengan mudah dilakukan proses akses database yang telah diaktifkan, dengan melihat konfigurasi koneksi string MySQL dan URI yang diberikan oleh AppHarbor (gambar 7)
Biodata Penulis Endyk Noviyantono, memperoleh gelar Sarjana Komputer (S.Kom), Jurusan Teknik Informatika di Sekolah Tinggi Ilmu Komputer Indonesia (STIKI) Malang. Memperoleh gelar Magister Komputer (M.Kom) Program Pasca Sarjana Magister Teknik Informatika pada Sekolah Tinggi Teknik Surabaya (STTS), lulus tahun 2008. Saat ini menjadi Dosen di Sekolah Tinggi Manajemen Informatika dan Komputer (STMIK) PPKIA Tarakanita Rahmawati.
Gambar 7. Konfigurasi Variabel untuk Akses Database tipe MySQL pada AppHarbor Tujuan dari diterapkannya cloud database pada aplikasi pengenalan suara ini adalah apabila terdapat fasilitas yang menggunakan suara tersebut berkeinginan untuk dilakukan perubahan dari mana saja, maupun dari perangkat apa saja, asalkan terhubung dengan Internet, dapat dilakukan dengan baik.
Joko Lianto Buliali, Profesor, Dr., Ir., MSc, pengajar pada Institut Teknologi Sepuluh Nopember (ITS) Surabaya, sebagai promotor dan pembimbing penelitian untuk jenjang doktoral.
3. Kesimpulan Hingga penelitian ini dibuat, penelitian terkonsentrasi tentang Voice Recognition atau dikenal juga dengan Speaker Recognition yang berupa proses dengan tujuan untuk mengenali pemilik suara cukup banyak, namun masih belum terimplementasi pada operasional komputer maupun perangkat telepon selular. Terapan yang populer seperti pada GoogleNow milik Google, atau layanan SIRI pada produk Apple (iPad, iPhone) merupakan bentuk terapan Speech Recognition. Tingkat kerumitan dari penelitian ini adalah bagaimana dapat mempercepat proses rekognisi yang terjadi, di satu sisi perlu dipikirkan pula apabila terdapat banyak pemilik suara yang ingin dikenali sebagai bentuk berbagai macam akses pada sebuah objek, maka akan membutuhkan penyimpanan data yang besar, metode PCA yang telah termodifikasi ini mampu menyelesaikannya dengan baik. Pengembangan berikutnya yang penting adalah melakukan pengurangan noise yang tercipta saat proses memasukkan data maupun saat proses rekognisi. Banyaknya noise akan mempengaruhi keakuratan proses. Penting kiranya untuk ditambahkan pengurangan noise
5