Speech Recognition - Pengertian, Jenis, Aspek dan Cara Kerja
Speech recognition atau voice recognition adalah suatu sistem yang digunakan untuk mengenali dan mengidentifikasi suara, kata atau frasa dalam bahasa lisan manusia kemudian mengkonversikan dan menerjemahkan ke format yang dapat dibaca oleh mesin atau komputer untuk berbagai tujuan, seperti penerjemahan, penyandian, dan hiburan lain-lain. Speech recognition merupakan perkembangan teknologi di bidang kecerdasan mesin, hal itu ditandai oleh banyaknya device teknologi berbasis komputer yang dilengkapi oleh voice command atau perintah suara.
Speech recognition merupakan proses identifikasi suara berdasarkan kata yang diucapkan. Teknologi ini memungkinkan suatu perangkat untuk mengenali dan memahami huruf-huruf yang diucapkan dengan cara digitalisasi huruf dan mencocokkan sinyal digital tersebut dengan suatu pola tertentu yang tersimpan dalam suatu perangkat. Identifikasi huruf dibaca oleh perangkat teknologi sebagai sebuah perintah untuk melakukan suatu pekerjaan.
Speech recognition juga diartikan sebagai konversi sebuah sinyal akustik yang ditangkap oleh microphone yang selanjutnya diolah menjadi sinyal digital. Speech recognition tidak hanya melibatkan proses mengkonversi sinyal akustik menjadi digital tetapi juga proses mengidentifikasi apa yang dikatakan pembicara atau pengguna. Speech recognition merupakan kegiatan memetakan sinyal suara dari sumber yang tidak dikenal ke dalam database yang berisi suara-suara yang sudah dikenali.
Pengertian Speech Recognition
Berikut definisi dan pengertian speech recognition atau voice recognition yaitu pengenalan suara dari beberapa sumber buku dan referensi:
- Menurut Melissa (2008), speech recognition adalah sistem yang digunakan untuk mengenali perintah kata dari suara manusia dan kemudian diterjemahkan menjadi suatu data yang dimengerti oleh komputer.
- Menurut Adi, dkk (2019), speech recognition adalah kemampuan mesin atau program untuk mengidentifikasi kata dan frasa dalam bahasa lisan dan mengkonversikannya ke format yang dapat dibaca oleh mesin.
- Menurut Novita, dkk (2013), speech recognition adalah salah satu jenis biometric recognition, yaitu proses komputer mengenali apa yang diucapkan seseorang melalui microphone berdasarkan intonasi suara yang dikonversi ke dalam bentuk digital print. Proses awalnya adalah mengkonversi data spektrum suara ke dalam bentuk digital dan mengubah dalam bentuk diskrit.
- Menurut Amrizal dan Aini (2013), speech recognition adalah proses identifikasi suara berdasarkan kata yang diucapkan dengan melakukan konversi sebuah sinyal akuistik, yang ditangkap oleh audio device (perangkat input suara). Speech Recognition juga merupakan sistem yang digunakan untuk mengenali perintah kata dari suara manusia dan kemudian diterjemahkan menjadi suatu data yang dimengerti oleh komputer.
Jenis-jenis Speech Recognition
Sistem pengenalan suara (speech recognition) adalah sistem yang berfungsi untuk mengubah bahasa lisan menjadi bahasa tulisan. Masukan sistem adalah ucapan manusia, selanjutnya sistem akan mengidentifikasi-kan kata atau kalimat yang diucapkan dan menghasilkan teks yang sesuai dengan apa yang diucapkan. Berdasarkan sumber suara atau pembicara, terdapat dua jenis speech recognition, yaitu:
a. Independent Speech Recognition
Independent speech recognition adalah sistem pengenal ucapan tanpa terpengaruh dengan siapa yang berbicara, tetapi mempunyai keterbatasan dalam jumlah kosakata. Model ini akan mencocokan setiap ucapan dengan kata yang dikenali dan memilih yang lebih cocok. Untuk mendapatkan kecocokan kata yang diucapkan maka digunakan model statistik yang dikenal dengan nama Hidden Markov Model (HMM).
b. Dependent Speech Recognition
Dependent speech recognition adalah sistem pengenal ucapan yang memerlukan pelatihan khusus dari pembicara, dimana hasil pelatihan dari masing-masing pembicara akan disimpan dalam sebuah profil. Profil inilah yang nantinya digunakan untuk berinteraksi dengan sistem pengenal ucapan dan sistem akan bergantung siapa yang berbicara. Sistem ini biasanya lebih mudah untuk dikembangkan, dimana contoh suara sudah dibuat sebelumnya dan disimpan dalam database (basis data) dan jumlah kosakata-nya lebih besar dibandingkan dengan independent speech recognition. Proses pengenalan ucapan dengan cara membandingkan ucapan pembicara dengan contoh suara yang sudah ada.
Aspek-aspek Speech Recognition
Sistem Speech Recognition akan melakukan pengenalan untuk setiap unit bunyi pembentuk ucapan (fonem), selanjutnya mencoba mencari kemungkinan kombinasi hasil ucapan yang paling dapat diterima. Sinyal ucapan pertama kali akan dilewatkan pada bagian penganalisis ucapan untuk mendapatkan besaran-besaran atau ciri-ciri yang mudah diolah pada tahap berikutnya. Untuk setiap ucapan yang berbeda akan dihasilkan pola ciri yang berbeda.
Pada sistem speech recognition terdapat beberapa aspek yang dibutuhkan, yaitu sebagai berikut:
a. Pemrosesan Suara
Tahap awal dalam sistem speech recognition adalah produksi sumber suara itu sendiri. Organ tubuh yang berpengaruh dalam proses produksi suara adalah paru-paru, tenggorokan (trachea), larinks, farinks, rongga hidung (nasal cavity), dan rongga mulut (oral cavity). Untuk menghasilkan sebuah voiced sounds (suara ucapan), paru-paru menekan udara melalui epiglottis, vocal cords bergetar, meng-interrupt udara melalui aliran udara dan menghasilkan sebuah gelombang tekanan quasi-periodic. Impuls tekanan pada umumnya disebut sebagai pitch impulses dan frekuensi sinyal tekanan adalah pitch frequency atau fundamental frequency.
Impuls pitch merangsang udara di dalam mulut dan untuk suara tertentu (nasals) juga merangsang nasal cavity (rongga hidung). Ketika rongga beresonansi, akan menimbulkan radiasi sebuah gelombang suara yang mana merupakan sinyal wicara. Kedua rongga beraksi sebagai resonator dengan karakteristik frekuensi resonansi masing-masing, yang disebut formant frequencies.
Pembangkitan sinyal suara terletak pada bentuk lintasan vokalnya (vocal tract). Lintasan vocal tersebut terdiri atas: dibawah katub tenggorokan (laryngeal pharynx), antara langit-langit lunak katub tenggorokan (oral pharynk), di atas velum dan diujung depan rongga hidung (nasal pharynx), dan rongga hidung (nasal cavity).
b. Sistem Pengenalan Suara
Cara kerja sistem pengenalan suara ini dimulai dari sinyal suara manusia yang diterima dengan menggunakan microphone (sinyal analog), yang kemudian dicuplik sehingga menjadi sinyal digital dengan bantuan sound card pada Personal Computer. Sinyal digital hasil cuplikan ini terlebih dulu dinormalisasi (disamakan panjang sinyal yang satu dengan yang lain) kemudian diproses dengan Fast Fourier Transform (FFT) untuk mendapatkan sinyal pada domain frekuensi. Hal ini bertujuan agar perbedaan antar pola kata yang satu dengan yang lain terlihat lebih jelas sehingga ekstraksi parameter sinyal memberikan hasil yang lebih baik. Hasil keluaran FFT ini merupakan masukan bagi jaringan saraf tiruan Back Propagation dimana jaringan saraf tiruan ini sebagai fungsi utama dari sistem untuk proses pengenalan suara.
c. Pencuplikan Suara
Pencuplikan suara merupakan penentuan jumlah sampel dalam satu detik. Jika pencuplikan dilakukan dengan frekuensi cuplik 8.000 Hz, maka dalam satu detik terdapat 8.000 sampel. Perlu diperhatikan komponen utama frekuensi sinyal suara berada pada kisaran 300 - 3.400 Hz. frekuensi sampling dalam pencuplikan harus lebih besar 2 kali dari frekuensi sinyal aslinya. Semakin tinggi frekuensi sampling maka sinyal digital yang dihasilkan semakin bagus. Kemudian proses selanjutnya adalah kuantisasi, yaitu membatasi amplitude atau nilai aksis sinyal. Jika sinyal dicuplik dengan menggunakan resolusi 8 bit, maka terdapat 28 atau 256 nilai batas sinyal. Langkah terakhir adalah konversi analog ke digital adalah tahap coding. Karena memori komputer menyimpan data berupa tipe data biner, maka nilai amplitude tiap sampel sinyal akan dikonversi ke dalam bentuk biner. Jika sinyal dicuplik dalam resolusi 8 bit, maka nilai amplitude akan disimpan pada ukuran 8 bit kode biner atau 1 byte data.
d. Normalisasi
Satu masalah yang cukup rumit dalam speech recognition (pengenalan suara) adalah proses perekaman yang terjadi sering kali berbeda durasinya, biarpun kata atau kalimat yang diucapkan sama. Bahkan untuk satu suku kata atau vocal yang sama seringkali proses perekaman terjadi dalam durasi yang berbeda. Sebagai akibatnya proses matching antara sinyal uji dengan sinyal referansi (template) seringkali tidak menghasilkan nilai yang optimal. Sebuah teknik yang cukup popular di awal perkembangan teknologi pengolahan sinyal suara adalah dengan cara memanfaatkan sebuah teknik dynamic-programing yang juga lebih dikenal sebagai dynamic time warping (DTW). Teknik ini ditujukan untuk mengakomodasi perbedaan waktu antara proses perekaman saat pengujian dengan yang tersedia pada template sinyal referensi.
Tahapan dan Cara Kerja Speech Recognition
Speech recognition memproses sinyal suara yang masuk dan menyimpannya dalam bentuk digital. Hasil proses digitalisasi tersebut kemudian di-konversi dalam bentuk spektrum suara yang akan di-analisa dengan membandingkan dengan template suara pada database sistem. Teknologi ini memungkinkan suatu perangkat untuk mengenali dan memahami huruf-huruf yang diucapkan dengan cara digitalisasi huruf dan mencocokkan sinyal digital tersebut dengan suatu pola tertentu yang tersimpan dalam suatu perangkat. Huruf-huruf yang diucapkan diubah bentuknya menjadi sinyal digital dengan cara mengubah gelombang suara menjadi sekumpulan angka atau huruf yang kemudian disesuaikan dengan kode-kode tertentu untuk mengidentifikasi huruf-huruf tersebut. Hasil dari identifikasi huruf yang diucapkan dapat ditampilkan dalam bentuk tulisan atau dapat dibaca oleh peragkat teknologi sebagai sebuah perintah untuk melakukan suatu pekerjaan.
Metode yang paling sering digunakan untuk mengkarakterisasi sinyal suara dalam Speech Recognition yaitu Mel Frequency Cepstral Coefficients (MFCC). Mel-Frequency Cepstral Coefficients (MFCC) adalah metode ekstraksi fitur yang mendekati sistem pendengaran manusia. MFCC sering digunakan untuk ekstraksi fitur dalam pengolahan ucapan yang bertujuan untuk mengekstrak karakteristik penting dari sinyal ucapan yang unik dan untuk membedakan antara serangkaian kata yang berbeda. MFCC dianggap sebagai metode standar untuk ekstraksi fitur dalam pengenalan suara dan sering digunakan untuk pemrosesan suara.
Adapun tahapan dan langkah kerja speech recognition menggunakan metode Mel Frequency Cepstral Coefficients (MFCC) dapat digambarkan dan dijelaskan sebagai berikut:
a. Pre-Emphasis
Proses ini bertujuan untuk memfilter sinyal ucapan untuk mengurangi nilai frekuensi sinyal suara masukkan dan dapat mengurangi noise pada masukan, sehingga hanya sinyal bicara saja yang dapat ditangkap oleh sistem.
b. Framing
Pada proses ini input suara dipotong menjadi frame-frame dengan durasi yang lebih pendek sebanyak matriks (M) yang disimpan di matriks Y dengan ukuran M x W. Sinyal suara dilakukan segmentasi menjadi beberapa frame dengan cara tumpang tindih (overlap) agar tidak ada sinyal yang hilang. Proses ini terus berlanjut sampai seluruh sinyal masuk ke dalam satu frame atau bahkan lebih dari satu frame.
c. Windowing
Proses ini bertujuan untuk memperoleh sampel sinyal yang tepat dalam waktu interval yang sangat singkat. Proses ini menghasilkan window X(t) dimana t = 1,2,3,….T yang disebut frame. Teknik windowing yang digunakan adalah teknik Hamming Windowing.
d. Fast Fourier Transform (FFT)
Fast Fourier Transform (FFT) adalah salah satu metode pengkonversian dari sinyal suara menjadi sinyal frekuensi. Proses ini dilakukan terhadap semua frame dari sinyal yang sudah di windowing. FFT adalah salah satu algoritma yang cepat untuk menerapkan Discrete Fourier Transform (DCT) yang beroperasi pada sinyal diskrit.
e. Mel Filterbank
Proses ini sama dengan triangular dari filterbank, yang membedakan adalah dari range frekuensi linier hasil FFT kemudian dikonversi ke skala mel frequency untuk mendapatkan batas-batas filterbank. Tahapan ini bertujuan untuk menentukan batas atas dan batas bawah dari filter. Tahapan pertama yang dilakukan adalah menentukan batas atas dan batas bawah dari filter, jadi nilai yang berada diluar batas tidak dimasukkan kedalam filter. Kemudian bagi range batas atas dan bawah sesuai dengan jumlah filter yang dibuat untuk setiap filterbank dalam skala mel, selanjutnya batas tersebut dikonversi ke skala frekuensi linier. Langkah terakhir adalah membuat filter triangular berdasarkan batas-batas yang sudah ditentukan. Hasil dari FFT pada tahap sebelumnya kemudian dikalikan dengan mel-filterbank.
f. Discrete Consine Transform
Proses ini adalah proses perubahan konversi dari domain frekuensi ke domain waktu yang dilakukan untuk mendapatkan nilai koefisien dari hasil perkalian mel-filterbank yang sudah dikonversikan. Proses ini akan menghasilkan log dari perkalian DCT yang sudah diubah ke domain waktu yang menghasilkan Mel-Frequency Cepstrum Coefficient (MFCC).