.W.\'T£.11 PES
JJAIV HIDDEN iYIARKOV MODEL lnm!lu 1\. 1/motius, Dante Kurniawan
SISTEM PENGENALAN WICARA BERDASARKAN CEP.'iTRUM DAN HIDDEN MARKOV MODEL Ivanna K. Timotius, Danie Kurniawan Umversitas Kristen Satya Wacana, Salatiga, Indonesia 1vanna
[email protected],
[email protected]
lntisa•·i Sistem pengenal wicar<1 merupakan sistem van!:! bisa mengerti kata-kata van!! diucapkan manusia. Sistem pengenal wicara dapat dimantaatkan di berbagai bidang kehidupan. Tulisan ini bertujuan untuk merealisasikan sistem pengenal wicara dengan menggunakan metode cepstrum dan Hidden Afar/an· A/odd Sistem ini diterapkan untuk mengenali 23 kata yang diperoleh dengan mencuplik sinyal dari mikrofon yang terhubung ke kartu suara pada komputer Dari hasil pengujian didapatkan tingkat keberhasilan pengenalan
76,52% Kata kunci: pengenal wicara. cepstrum, hidden .Markm· model
1. Pendahuluan Sistem pengenal wtcara (speech recogm;er) merupakan sistem yang bis
smarr home, alat bantu tuna daksa, dan lain sebagainya. Kesulitan
yang
senng
dihadapi
oleh
sistem
pengenal
wJcara
adalah
terpengaruhnya sinyal wicara keadaan pembicara saat berlangsungnya proses pengucapan ( meskipun sinyal wicara diucapkan oleh pembicara yang sama) Misalnya pitch yang berbeda karena perbedaan suasana hati pembicara (sedih. marah, senang), durasi.
,.., -' I
l.,;
'
'
~
i
'
'.
;_;
kecepatan dan intonasi suara, maupun bentuk efek yang ditimbulkan oleh posisi rongga hidung ketika sinval suara diciptakan dan derau lingkungan [I]. Selain itu, orang yang berbeda akan menghasilkan bentuk sinyal wicara yang berbeda juga. Tulisan ini mengembangkan suatu sistem pengenal wicara berdasarkan cepstntm dan
Hidden
Harkor
pt'llllOSt'Si::tll SlliVi:ll
.~fodcl
Wll.. ata
(HMM)
u:JaJJ
Ultellll
Penggunaan cepstrum Udli
UtheJHUdli~J-.alJ
dalam
1-Lih.Uj.l
analisis
lcllllct
t-J·
dan
,\1\:hlltl..
cepstrum yang dapat digunakan sebagai metode dekonvolus1 smyal telah dtketahw
se~.:ara
matematis mampu dipergunakan sebagai titur pengolahan sinyal wicara yang cukup baik
[ J]. Sebagai klasifikator digunakan HI\1M HMM dapat dipandang sebagat pernyataan state machine yang state-nya berpindah- pindah setiap waktu tertentu. Perpindahan antar ,/uh'
dalam :>ebuah !Hvfl'Vl berJasa1 kan probabilitas lertentu
f~l
Sistem yang dikembangkan dapat mengambil sinyal masukan melalui mikrofon melalui katiu suara PC, mengolah sinyal suara tersebut untuk diambil fitur, kemudian mengolahnya untuk proses pengenalan. Blok diagram dari sistem ditunjukkan oleh gambar 1. Automatic Ciain Control (AGC) diterapkan untuk mengkompensasi penguatan sinyal wicara supaya pada data pencuplikan sinyal wicara tidak tetjadi pemotongan bit hasil kuantisasi sistem. Proses di dalam sistem terdiri clari pemrosesan awal, ekstraksi fitur dengan menggunakan metode cepstral dan proses klasifikasi dengan menggunakan
HM1v1
AGC
mic
>..
--·~ / Signal · .• processmg
~~ Sou,ndCard)
', •
i
PC
~ ~.
Code Book .. --·-·-
Output
i
~~I
Gambar 1. Blok diagram sistem
J
2. Pernrosesan Awal Sin)'al Wicara Pemroses nwal sinyal wicara berisi AGC pendeteksi awal dan akhir suatu pengucapan kata. setia bagian segmentasi
Bagian pemroses awal berisi AGC yang
mengkompensasi proses kuantisasi pada saat proses penyuplikan berlangsung. Hal ini
38
S!.\'TEM PE'\'(,'F.Y 1/. t\' WT<: fR-1 BERDASARKAN CEP,\TRUAI DAN HIDDEN MARKOV MODEL hanna 1\.. limo/ius. Danie Kurniawan
be11ujuan supaya pada saat proses kuantisasi pencuplikan tidak terjadi pemotongan bit. Bagian pendeteksi awaJ-akhir (el/(fJ)()IIIf detection) suatu pengucapan kata, yang bertl.mgs1 menentukan waktu mulai dan berakhirnya suatu k:ata Sedangkan segmentasi bertugas membagi sinyal ke dalam bentuk segmen-segmen kecil dengan cara menerapkan fungsi
perhitungan clava sill\al masukan dibandingkan dengan daya <.lerau Jatar. Sinval masuk:an akan dianggap sebagai suatu kata apabila daya sinyal tersebut lebih besar <.laripaJa daya derau Jatar, dengan 2 2 p
~
jJ
kali
I
bila dilakukan analisis sinyal wicara dalam jangka waktu yang singkat (dengan jangka waktu 20-40 mili detik) [ 1]. Karena itu, suara manusia digambarkan dalam analisis bentuk pendek
(slwrt-h'rlll
ul!a~I'Sis).
c!imana sepotong sinyal digunakan untuk
mengekstraksi titur pada suatu saat Hal ini dilakukan dengan menerapkan fungsi jendela (JrindOlt')
biasanyet untuk waktu yang singbt pada sepanjang sinyaL Operasi pembJgian
sinyal ke dalam interval yang pendek disebut penjendelaan dan potongan yang dihasilkan disebut disebut segmen Proses segmentasi dilakukan dengan membagi sinyal w1cara ke dalam blok-blok yang kecil dengan menerapkan fungsi penjendela. Proses segmentasi dilakukan tanpa adanya tumpang tindih (orerlapping) antara segmen yang satu dengan yang lainnya. Setiap segmen akan tercliri dari sejumlah N buah data hasil pencuplikan sinval xrnJ Secara umum. ni lai /'v' berkisar pad a mten al 20-40 ms yang telah terbag1 ke bentuk segmen ini kemudian dikalikan dengan tl.mgsi penjendela. Pada tulisan ini dipilih interval 25,6 ms dengan frekuensi cuplik 10kHz, sehingga N bernilai 2)6 Fungsi penjenclela 11'(11)
yang biasa dipakai adalah jenis jendela Hamming [I][ 4][ )]. Penggunaan jendela Hamming bertujuan untuk menghindari perubahan yang terlalu mendadak pada ujungujung tiap segmen dan untuk lebih memberikan efek stasioner pada sinyal
39
ru. 3. Cepstrum Sinval s(n)
=
e(u)
suara
*
h(n),
manusta
s(n)
clapat
clinyatakan
dalam
hentuk
konvolusi
clengan e(n) adalah sinyal yang berubah cepat terhadap waktu,
sedangkan h(n) adalah sinyal yang berubah lambat terhadap waktu [4]. Jika kedua komponen ini data dipisahkan maka kita dapat mengharapkan pengenalan intormasi suara
hmJJr>JIIor;l/1/c
untuk menemukan sistem \'t)kal dari .filler H(=J [2]. Pemrosesan sima!
dengan cara mi mengacu paJa transformasi ke dl.)main linem dari sinyal yang terkombinasi secara tak linear. ,\i.JIL)l\)iiltd.')i r ,,
f
.,
(
i
t"~
~I
....
sepet1i ditunjukkan o!eh gambar 2, dengan x[n] merupakan sinyal masukan, X[k] merupakan spektrum sinyal, Y[k] merupakan bentuk LogarHmik spektraL dan _f'[n] merupakan cepstrai
* xl n I Gambar 2 Cepstrum kompleks Penjelasan dari metode ini adalah dengan memindahkan analisis ke ranah frekuensi, berarti mengubah konvolusi menjadi perkalian Masalahnya eli sini adalah bahwa perkalll.tll merupakan operas1 yang tidak lntier Selliugga akan dipakai fungsi logaritmik untuk mengubah operast perkalian menjadi penjumlahan. Hal inilah yang diingmkan, yaitu penusahan ke daJam komponen penjumlahan Lalu dilanjutkan dengan operator linier halik OFT yang akan mentranstormasikan kedua komponen ini masingmasing terhadau bagian yang berubah cepat dan bagian ynng berubah lambat (e(n) dan J
hfn)) Sehingga kedua komponen ini akan terpisab ke dalam bentuk ranab yang baru.
yang disebut ranah
l}ul!jl'elh}
pert:1ma (bagian \ :tng
heml"~ah
[I J Pada tullsan ini dipakai 1.::; koeflsien cepstral \ ang lambat r'(n\\ cbn kem1Hi!i•n knefisien-knefisien rersebut
dikuantisasi sebelum diprose.'> oleh klasifikator ...1 (J
.'1/.\TEJ/ PE.\'(,'ES. iLL\ JJ'/( ARA BERIJA.SARKAN Cl:.'PSTRUJll DAN HIDDEN MARKOV 1\JODEL hw111a K. limorius, /)auie Kuruiawan
4. Hidden
~/arkov
JlJollel
Sebuah HMJ\11 adalah sebuah proses at:ak gancla (dou h~r sto<.:lwst i<: prm:t:ss) [3] [6] dengan satu proses acak pokok yang tidal-: dapat diobservasi (Iudden), tetapi hanya dapat diobservasi melalui himpunan proses acak lainnya yang menghasilkan urutan simbol
sering disehut juga rantai !\llarkoY disk ret
(/)i\crere
'!orknr t 'lwiu) [r']
Model 1antai Markov d1skret
tt
''I
untuk berpindah dari satu slate ke stare lainnya didasarkan pada fungsi peluang dan kemiripan karakteristik dari fitur tersebut. Keadaan Q, ini disebut sebagai state. Di dalam sebuah swte, ndai dari suatu sinval dapat cllukur atau dengan kata lam. sinval ualam kondisi tersebut memiliki properti yang berbeda.
Gambar 3 l\tlodel rantai Markov diskrer. Pada tul!san ini dipakai model rantai Markov vang disederhanakan. Semua nilai pduang f>(<.J,.
; <JI') ditentukan sama. Kcmaipan karaktcristik antar
·,tufL'
dihitun""
berdasarkan persamaan berikut I 'I'"'
dengan
11
aclabh nilai kemiripan suatu
acbbh
\hflc
l!!~.iJ
I
Af "'-1
(I)
r
\laic. :\f
adalah orde vektor dalam sebuah
pada model hasi! pengamaun dan
.1
adalall
'lute
\lure. x
p:ttb model dalam l>:tsJ:c
-tl
5itule akan berada di posisi yang sama apabila vektor pengamatan yang muncul
tidak lebih mirip daripada state selanjutnya. Batas kemiripan sebuah state diberikan melalui pemberian nilai batas toleransi pada fungsi pembanding kemiripan state. Bila vektor pengamatan suatu stme lebih mirip dengan state berikutnya maka akan dilakukan transisi pada model tersebut dan memberikan nilai pada model yang melakukan transisi
palmg tepal Pada bagian pembelajaran, model Markov yang dihasilkan untuk tiap sinyal w1cara disimpan ke dalam basis data Pada bagian pengenalan, model Markov yang dihasilkan dari sinyal uji akan dibandingkan dengan setiap model kata yang ada pada basis data Pencarian Ltta ini benbsarkan pada kemiripan karakteristik
>!tl/, '>
ad
pada model kata. Kemiripan karakteristik diuji dengan menghitung jarak tiap state dengan menggunakan persamaan l. Dari hasil pengujian ini, pada '7 diberikan suatu batas toleransi kemiripan Ll minimal yang tertentu. Pada skripsi ini diberikan nilai batas toleransi Ll sebesar 2,5. Pemilihan ni lai bat as toleransi ini didapat dari hasil melakukan percobaan.
5. lmplementasi dan Pengujian Sistem pengenai wicara dirancang untuk mengenali kata-kata berikut: ('omplller, Lamp. Fuu,
()II,
(HJ:
Hello. Slmtduu·11. Next. !'rn'!Olls. Stop. ()lie, Two, Ihree, hmr. Fn·c,
Six. Sel'e/1, Eight. Nine, Zero, /lv1usic, Notepad dan Email. Masukan sinyal wicara
diperoleh secara langsung lewat Sou11dcard dan dicuplik dengan frekuensi cuplik l 0 kL lz Jeda waktu antar kata minimal 10 mili detik. Sistem pengenal yang dibuat telah mampu mengenali kalimat wicara yang terdin lebih dari dua kata. dengan diberikan batasan .reda waktu antar kata maksi mal 2 detik Apabila jarak jeda antara pengucapan kata pertama dengan kata selanjutnya melebihi batas maksimal dari jeda yang telah ditentukan, maka kata tersebut akan dianggap sebagai bagian dari kalimat yang berbeda. Sistem pengenalan akan dapat ber.falan dengan baik bila sinyal lebih besar 10 dB dari noise lingkungan. Gambar 4 menunjukkan pencuplikan sinyal wicara untuk kata '·( J11c.. vang diambil secara langsung melalui mikrofon dengan frekuensi cuplik sebesar iO kHz Setelah dilakukan perbandingan dengan dava derau latar didapatkan sinyal seperti
41
S/,\'TEJ/ PEXGEVA/. L\ JV/( ARA BERD.-·t\:,tRKAN CEP..'tTRViH IJAl\' HIDDEN lt4ARK.OV MODEL ilwuw 1\. 1/motms. lJame K11rmawwt
Gam bar 5. Setelah ditemukan titik awal suatu pengucapan kat a. maku dilakukan segmentast pada sinyul tersebut dan menerapkan fungsi jendela jenis Hamming sehingga didapatkan siny·al seperti Gambar
t>
Setelah sinyal dilev.atkan pada fungsi penjendela
Hamming. proses dilanjutkan dengan ekstraksi fitur sinyal wicara dengan metode cepstraL ' .l.
' -
l
I
'
dapat dilihat pada Gambar 7
Wak!u {de!lk)
Gambar ..f Sinyal cuplik asli sinyal wicara "01/e··
'Naktu IC-etil<)
Gambm 5 s;nyal keluaran pendeteksi awal dan akhir pengw..:apau. Simpangan
A
i
j
--;.'"7'"---·····;~~
.••
j
Waktu(De!ik)
Gambar 6 Keluaran sinyal dari fi.tngsi penjendela jenis Hamming.
43
r ,
I'
( l:nnbar
7
Ccpstrum untuk snn al \\ ic:1ra
·r Jnc'
Setelah titur dari sinyal ini diperoleh dan dikuantisasi. maka tltur ini flk
stat£>
pada
model HMM tergantung dari panjang durasi katanya. Setiap terjadi transisi pada tiap-tiap state, maka akan dilakukan penambahan nilai pada model kat a tersebut. Proses transisi
dilakukan dengan berdasarkan kemiripan karakteristik setiap slate. Pada fase pengujian tiap kata diuji sebanyak 35 kali. Hasil penguJtan sistem dengan metode cepstnun dibandingkan dengan basil pengujian sistem dengan metode spektrum. Hasil pengujian sistem pengenal wicara untuk setiap kata ditunjukkan pada tabel l. Rata-rata hasil keberhasilan yang didapat sistem dengan metode cepstnun adalah 7o,52°o dengan standar devias1 CJ,43%, sedangkan rata-rata basil keberhasilan yang
didapat s1stem dengan metode spektral adalah 61,61 tJ,.() dengan standar Jeviasi 11.,42°o
44
SISTEJl PENfd:..'i'vAJ.AN JHtARA BERDA.\'ARKAN CEPSTRUM DAN HJDOEN A1ARKOV 1110DEL h·m11w K. fimotius. !Janie Kurniawan
Tabel I. Akurasi Sistem Pengenal Wicara ~Aiull~asf de1lgau ~~Aiim=asi (fengau t-------------J-M~e:..:.to_t-'-le--=-C-=-'e._>stru.!_~_
------------+--- X2.~6%, - --~--~5. 71% , 82.86% 1'
I
t. M~~·tle SJlektnm.!._j
_(•5.]_1'Yo____ j
!
------4---- -' ..2.~::!2'?1, --~ i :'L-B% I --r-~
---;;. . ,
'~""--
!
6. KesimJlulan Dari sistem yang telah diram:ang dan direalisasikan dapat disimpulkan balnva sistem pengenai wicara dengan metode cepstral dan pemodelan HMM mampu mengenali kata Jengan ting:kat keberhasiLn1 rat
o dan standar Jeviasi CJ.-f3°u Sic.ktlt
pengenal wicara dengan metode cepstral mempunyai tingkat keberhasilan rata-rata yang lebih tinggi daripada sistem pengenal wteara dengan metode spektral
Daftar Pustaka I
T\V
Parson~
T'o{(eand.\jJ('e,hht!
-\ V Oppenll{'llll R \\ Schatf.r 1999
i\Jc(iraw-Hill iCJi\1
·'fJr\\'l'l'fc-lllne
\'tgllol/'rocn\tJJg" Prent1ce lhll
"''·
•,l.l.dt
'
li.ii
3. L.R Rabiner_ B.H Juang, ''A11 lutroducriou to Hidden Markm· Models", IEEE ASSP Afaga::iue. January 1986 4. E. Karpov, "Real Time
.~jJeaker
ldent[!lcation "., Depatiment of Computer Science,
University of Joensuu, Master Thesis, March 2003. 5.
S Funri. "1 >igilal .\/Jeech Frocessi11g. Svnthesis and H.ecogniliou ", New York. Marcel
•l
L K Rabntel, .·1
1 11tonut 0/i
fhddell ,-\ lurku1 Aiodet,, una
.\jJeeth J
; l
ol trJJ..
,)l'/t'tfea
.1pp11umon'
111
vol 77, no. 2. pp. 257-286, Februan j()8<J