Abstract: This paper describes a method of creating neural network based isolated Vietnamese speech recognizer. The formant extraction process uses the current popular model LPC (Linear Predictive Coding) in which LPC parameters are converted to cepstral coefficients. The neural network is used to estimate the word probabilities and we will choose the maximum for the target words. We also combine LPC method with AMDF (Average Magnitude Difference Function) method to increase the accuracy. The experiments are stimulated by Matlab 6.5. The high accuracy of results leads the conclusion that the studied way is suitable. Keyword: Vietnamese speech recognition, Neural Network, LPC, AMDF. I. GI I THI U Nh n d ng ti ng nói là m t k thu t có th ng d ng trong r t nhi u l nh v c c a cu c s ng: trong vi c i u khi n ( i u khi n robot, ng c , i u khi n xe l n cho ng i tàn t t ), an ninh qu c phòng Vi t Nam, trong nh ng n m g n ây ã có m t s k t qu nghiên c u ban u v nh n d ng ti ng Vi t, tuy nhiên còn có gi i h n v chính xác, s t , v n thanh i u c thù ti ng vi t h u nh ch a c c p Bài báo trình bày m t h ng ng d ng thanh i u vào vi c nh n d ng ti ng Vi t c r i r c nh m nâng cao chính xác: ph ng pháp k t h p trích c tr ng b ng LPC v i trích chu k c b n dùngAMDF cho k t qu nh n d ng chính xác cao qua th nghi m. II. C S LÝ THUY T 1. Mã hóa d báo tuy n tính (LPC - Linear Predictive Coding) [4] G i r(k) là giá tr t t ng quan c a tín hi u d i i k m u: n knxnxkr )()()( (1) Khi ó các h s LPC s là nghi m c a h ph ng trình: )( . . . )3( )2( )1( . . . )0(.)3()2()1( )3( )0()1()2( )2( )1()0()1( )1( )2()1()0( 3 2 1 Pr r r r a a a a rPrPrPr Prrrr Prrrr Prrrr P (2) H ph ng trình trên c gi i b ng thu t toán Levinson-Durbin. T t c các h s LPC s là c tr ng c a tín hi u ti ng nói. a) Thu t toán Levinson-Durbin: [4] Kh i t o: p=1 Tính sai s bình ph ng trung bình b c nh t: ))1(1)(0( 2 11 arE (3) Nh n d ng ti ng Vi t dùng m ng neuron k t h p trích c tr ng dùngLPCvàAMDF Vietnamese Speech Recognition Using Neural Networks Combined with LPC Formant Extraction and AMDF Pitch-Detection Hoàng ình Chi n trong ó )0( )1( )1( 1 r r a (4) qui: V i p=2,3,,P 1. Tính h s K p : 1 11 )( p p bT p p E arpr K (5) 2. Tính các h s d báo b c p: pp Kpa )( (6) )()()( 11 kpaKkapa pppp (7) v i k=1,2,,p-1 3. Tính sai s bình ph ng trung bình b c p: )1( 2 1 ppp KEE (8) 4. Quay l i b c 1, thay p b ng p+1 n u p P K t thúc, thay: [a p (1) a p (2) a p (P)]= -[a p (1) a p (2) a p (P)] b) Hàm hi u biên trung bình (AMDF - Average Magnitude Difference Function) [3] Hàm hi u biên trung bình là hi u biên c a tín hi u v i chính nó d i i p m u. pN n pnxnxpd 1 0 )()()( (9) N u x(n) là tín hi u tu n hoàn v i chu k T (m u) thì AMDF s t c c ti u n u tín hi u b d i i m t o n úng b ng T m u. Nh n d ng gi ng c a ng i có t n s c b n t 80Hz (t ng ng v i s m u là n 1 =Fs / 80) n 200Hz (t ng ng n 2 =Fs/200, Fs là t n s l y m u). S tính AMDF c a tín hi u v i d i thay i t n 2 n n 1 . Gi s AMDF t c c ti u ng v i d i P0 (m u). ó chính là chu k c a tín hi u (ho c g n v i chu k c a tín hi u nh t), và t n s c b n c a tín hi u là F0=Fs/P0. Giá tr này chính là c tr ng c a tín hi u v m t thanh i u. Do ti ng nói là tín hi u không d ng nên c m i 30ms ph i tính l i các giá tr m i. T t c các giá tr tính c s là c tr ng c a m t t và c dùng hu n luy n m ng neuron. III. M NG NEURON M i neuronnhân t o g m m t s các ngõ vào (t d li u g c, hay t ngõ ra các neuron khác trong m ng). M i k t n i n ngõ vào có m t tr ng s và m t giá tr ng ng. Tín hi u c truy n qua hàm kích ho t (hay còn g i là hàm truy n) t o giá tr ngõ ra neuron. Nguyên t c c a m ng neuron là h c theo m u và ánh x d li u vào qua m t hàm truy n cho ra k t qu . Ki u m ng c s d ng ph bi n nh t là m ng lan truy n ng c (back propagation) v i k thu t c b n là c p nh t tr ng s theo h ng gi m gradient tìm v trí t t nh t trên m t l i. Hình 1: C u trúc Neural Networks IV. TRÍCH C TR NG 1. Trích c tr ng b ng LPC [4] B c 1: L c nhi u, s d ng b l c thông cao có hàm truy n: c ws s sH )( (10) v i t n s c t d i là 300 Hz l c nhi u t n s th p do microphone gây ra. B c 2: Pre-emphasis, s d ng b l c thông cao có áp ng xung: y(n) = x(n) a*x(n-1) v i 0.9 a 1 (11) B c 3: Tách i m u và cu i c a m t t dùng hàm n ng l ng th i gian ng n: 2 1 )](*)([ Nm mn m mnwnxE (12) B c 4: Phân o n thành các frame (frame này khác v i các frame trong giai o n tìm i m u i m cu i), m i frame có N m u, ch ng l p M m u, th ng NM 3 1 . B c 5: C a s hóa. Hàm c a s thông d ng nh t là c a s Hamming c nh ngh a nh sau: ],0[0 0)/2cos(46.054.0 )( Mn MnMn nw (13) B c 6: Xác nh các h s d báo tuy n tính dùng thu t toán Levinson-Durbin. B c 7: Chuy n các h s d báo tuy n tính thành các h s cepstral. 1 1 1 m k kmkmm akc m ac v i 1 m P (14) Và 1 1 1 m k kmkm akc k c v i m >P (15) Các h s cepstral này có t p trung cao h n và áng tin c y so v i các h s d báo tuy n tính. Thông th ng ch n Q =3/2P. B c 8: Chuy n sang cepstral có tr ng s : c m = w m c m v i 1 m Q (16) Hàm tr ng s thích h p là b l c thông d i (trong mi n cepstral) Qm Q mQ w m 1sin 2 1 (17) B c 9: Tính o hàm cepstral. K Kk mm m ktkctc dt tdc )()( )( (18) v i là h ng s chu n và (2K+1) là s l ng frame c n tính. K= 3 là giá tr thích h p tính o hàm c p m t. Vect c tr ng c a tín hi u g m Q h s cepstral và Q h s o hàm cepstral. 2. Trích chu k c b n b ng AMDF [3] B c 1, b c 2 và b c 3 gi ng nh ph ng pháp LPC. i v i b l c nhi u, s d ng b l c thông cao có t n s c t là 60Hz do t n s c b n c a ng i t 80Hz n 200Hz. B c 4: Tín hi u s c xén b t nh m làm n i rõ chu k c b n: (19) Trong ó giá tr C kho ng 1/3 biên c c i c a tín hi u. B c 5: Tín hi u sau khi xén c a n hàm l y hi u biên trung bình : pN n pnxnxpd 1 0 )()()( (20) trong ó N là dài khung và p c l y trong kho ng pitch t ng ng v i t n s c b n 80-200Hz. Ch n P0 có d c c ti u, ó chính là chu k pitch và t n s c b n là Fs/P0. i v i các khung có d(P0) > 0.7 d max (p) c phân lo i là khung vô thanh và gán F0 = 0. B c 6: Sau khi ã xác nh F0 c a toàn b âm ti t, c n ph i x lý các khung có F0 = 0. N u các khung là vô thanh u hay cu i âm ti t, thay các khung ó b ng F0 c a khung h u thanh k c n. N u các khung vô thanh gi a âm ti t thì thay F0 c a khung ó b ng trung bình c a hai khung h u thanh hai bên. B c 7: ng nét F0 c làm tr n b ng b l c trung bình có tr ng s v i áp ng xung h=[0.1 0.2 0.4 0.2 0.1] B c 8: Do s ngõ vào c a m ng neuron là c nh nên c n chu n hóa kích th c F0, nên c ng ph i chu n hóa l n c a F0 và chuy n qua thang log: F0 n [i] = -20log(F0 a [i] min + )/(max-min) v i i=0,1, , L-1 max và min là giá tr c c i và c c ti u c a F0 l y trên toàn b d li u, là s d ng tránh log0. B c 9: L y L giá tr o hàm c a logF0, ghép L giá tr logF0 v i L giá tr o hàm thành vect c tr ng c a t . V. HU N LUY N M NG VÀ K T QU THU C 1. Hu n luy n m ng dùngLPC Tín hi u ti ng nói s c trích c tr ng b ng ph ng pháp LPC-cepstrum. Vect c tr ng c a m i t có 144 h s . Nh v y m ng neuron s có 144 ngõ vào, s nút xu t: 10 (t ng ng v i 10 s ), s nút n: 220. Tr c d c là ch s c nh n d ng, s k t qu nh n d ng úng th hi n ng chéo, tr c ngang th hi n s l n s nh n d ng sai. B ng 1: K t qu nh n d ng hu n luy n m ng dùngLPC Ví d c nh n d ng 100 l n s 1 , nh n d ng úng là 84 l n. Nh n d ng sai thành s 4 là 13 l n, s 6 là 1 l n, s 8 là 2 l n . Trong cách nh n d ng dùng ph ng pháp LPC, ta th y có m t s t có phát âm g n gi ng nhau b nh m l n nhi u. Ví d , t m t và b n , hai, và b y, n m, và tám. kh c ph c hi n t ng này, kh o sát gi i pháp AMDF k t h p LPC. 2. Hu n luy n dùngLPC k t h p v i AMDF V i ý t ng c n ph i phân chia t p m u nh n d ng kh c ph c nh ng h n ch c a ph ng pháp LPC, ph ng pháp trích c tr ng dùngAMDF t ra có hi u qu khi tách c t b y và t m t ra m t nhóm riêng. Nh trên ã c p, ph ng pháp AMDF ch trích c tr ng v m t thanh i u c a tín hi u nên ít b nh h ng v m t phát âm nh ph ng pháp LPC. M t khác, n u xét v m t thanh i u thì thanh ngang s g n gi ng v i thanh s c, và hai thanh này khác xa so v i thanh n ng và thanh h i, nên vi c tách t m t và t b y ra là có th . Ph ng pháp nh n d ng: T p m u c chia làm hai nhóm: nhóm 1 g m nh ng t thanh h i và thanh n ng, t ng ng v i m t và b y, nhóm 2 g m nh ng t thanh ngang và thanh s c, t ng ng v i các t không, hai, ba, b n, n m, sáu, tám, chín. u tiên, dùng ph ng pháp AMDF nh n d ng xem t thu c nhóm nào, sau ó s a qua m ng neuron th hai xác nh t c th . Nh v y s c n ba m ng neuron, hai m ng nh n d ng theo ph ng pháp AMDFvà m ng th ba nh n d ng theo ph ng pháp LPC. Hình 2: S kh i ph ng pháp nh n d ng B ng 2: K t qu nh n d ng hu n luy n m ng dùngLPC k t h p AMDF 0 1 2 3 4 5 6 7 8 9 0 97 1 2 1 99 1 2 96 1 1 2 3 99 1 4 4 1 1 90 1 2 1 5 1 94 5 6 1 95 4 7 1 2 97 8 1 3 1 95 9 100 chính xác trung bình: 96,2% Ví d nh n d ng úng s 1 là 99 l n , sai s nh n d ng là 1 l n . chíng xác nh n d ng cao nh s k t h p x lý h p lý. Nh n xét v ph ng pháp AMDF: Nh v y vi c k t h p hai ph ng pháp LPCvàAMDF ã nâng cao xác su t nh n d ng úng, th i gian hu n luy n có t ng lên không áng k . u i m c a AMDF là s ngõ vào ít, kích th c m ng hu n 0 1 2 3 4 5 6 7 8 9 0 98 2 1 84 13 1 2 2 88 12 3 100 4 6 91 3 5 2 84 1 13 6 1 98 1 7 4 1 94 1 8 1 99 9 100 chính xác trung bình: 93,6% Không Hai Ba B n N m Sáu Tám Chín M t B y Không, m t, hai, ba, b n, n m, sáu, Ph ng pháp AMDF: M ng 10 nút nh p, 40 nút n, 2 nút xu t M t, b y Không, hai, ba, b n, n m sáu, tám, chín Ph ng pháp AMDF M ng 10 nút nh p, 40 nút n, 2 nút xu t Ph ng pháp LPC: M ng 144 nút nh p, 220 nút n, 8 nút xu t luy n nh . M t khác, ph ng pháp AMDF là ít ph thu c vào cách phát âm nên t l c sai s th p h n so v i ph ng pháp LPC. Tuy nhiên, khuy t i m c a ph ng pháp AMDF là ch phân bi t ti ng nói v m t thanh i u, do ó kh n ng ng d ng trong th c ti n là h n ch . M t khuy t i m khác là ph ng pháp này r t khó s d ng trong tr ng h p t c liên t c. So v i AMDF, ph ng pháp LPC cho ra k t qu c th h n, nh ng có khuy t i m là s c tr ng khá l n và d b tác ng b i cách phát âm c a ng i nói. T nh ng u và khuy t i m c a ph ng pháp LPCvà ph ng pháp AMDF, cho th y h ng k t h p hai ph ng pháp này là h p lý. Tuy nhiên, c n ph i có nh ng nghiên c u y h n n a có th m r ng lên b t v ng l n h n c ng nh ng d ng ph ng pháp AMDF r ng rãi h n trong th c ti n. L u ý là s c r i r c, m i ng i c hu n luy n c x lý c l p. u i m c a m ng neuron trong nh n d ng ti ng nói. Th nh t là v m t t c hu n luy n c ng nh t c nh n d ng, m ng neuron t ra v t tr i. Th hai là u th trong vi c m r ng b t v ng , c phát tri n thêm cho nh n d ng t i u khi n d i ây. B ng 3: K t qu v i b t v ng i u khi n Lên X u ng Trái Ph i T i Lui Xoay D ng Lên 200 Xu ng 200 Trái 196 4 Ph i 200 T i 200 Lui 198 2 Xoay 1 197 2 D ng 200 chính xác trung bình: 99,4% 3. Nh n d ng t i u khi n Bài báo này c ng xây d ng b t v ng nh g m m t s t nh m m c ích i u khi n t ng. B t v ng: lên, xu ng, trái, ph i, t i, lui, xoay, d ng. Vi c hu n luy n b t i u khi n không khác gì so v i hu n luy n b t v ng s c trình bày ph n trên. M ng neuron c ng c th nghi m v i m t s t ghép nh : xoay trái, xoay ph i, xoay lên, xoay xu ng, i t i, i lui, d ng l i, ti p t c. M i t c c ng t qu ng, ví d t xoay trái c c có s ng t quãng gi a t xoay và t trái. Các k t qu kh o sát trên cho th y vi c nh n d ng có chính xác r t cao. B ng 4: K t qu v i b t v ng i u khi n dùng m ng neuron Xoay lên Xoay xu ng Xoay trái Xoay ph i i t i i Lui Ti p t c D ng l i Xoay lên 199 1 Xoay xu ng 3 194 3 Xoay trái 199 1 Xoay ph i 200 i t i 200 i Lui 200 Ti p t c 200 D ng l i 200 chính xác trung bình: 99,5% VI. H NG PHÁT TRI N Vi c k t h p LPC v i AMDF cho k t qu nh n d ng ti ng nói ti ng vi t r t cao nh k t h p h p lý ph ng pháp nh n d ng. B c ti p theo là phát tri n b t v ng l n h n, nâng c p gi i thu t. Ph ng pháp AMDF làm vi c r t t t v i t c r i r c. Tuy nhiên, hi n nay ph ng pháp này ch a c khai thác t t, có th là vì nó ch phân bi t c ti ng nói v m t thanh i u. C n có nh ng ý t ng k t h p ph ng pháp này v i nh ng ph ng pháp khác nh m nâng cao chính xác và nh n d ng trên n n nhi u Nghiên c u kh n ng k t h p m ng neuron v i nh ng công c khác trong nh n d ng ti ng Vi t, ví d v i logic m , v i wavelet Xây d ng b nh n d ng t c liên t c dùng mô hình âm v , nhi u ng i nói. TÀI LI U THAM KH O: [1] Lê Ti n Th ng, Hoàng ình Chi n. Vietnamese Speech Recognition Applied to Robot Communications . Au Journal of Technology, Volume 7 No. 3 January 2004. Published by Assumption University (ABAC) Hua Mak, Bangkok, Thailand. [2] Lê Ti n Th ng (ch nhi m), Hoàng ình Chi n, Tr n Ti n c ng d ng Wavelets nh n d ng ti ng nói ti ng vi t trong i u khi n và thông tin . Báo cáo nghi m thu tài NCKH tr ng i m HQG TP HCM ngày 28-01- 2004. [3] Lê Ti n Th ng, Tr n Ti n c, Nh n d ng thanh i u ti ng nói ti ng Vi t b ng m ng neuron phân t ng, T p chí Tin h c và i u khi n h c, 2004. [4] L.Rabiner and B.H.Juang, Fundamental of speech recognition, Prentice-hall. Englewood Cliffs. New Jersey 07632, 1993. [5] Hoàng ình Chi n, Lê Ti n Th ng. An Efficient Approach Combining Wavelets And Neural Networks For Signal Procesing In Digital Communications . Proceedings of IASTED-International Conference on Communication and Computer Networks in MIT Cambidge, USA. November 08 to November 10, 2004. [6] Cao Xuân H o, Ti ng Vi t m y v n ng âm ng pháp ng ngh a, Nhà xu t b n Giáo D c, 1998. [7] Claudio Becchetti and Lucio Prina Ricotti, Speech recognition. Theory & C++ Implementation , Fondazione Ugo Bordoni, Rome, Italy. John Wiley and Sons, LTD. [8] Patrick M.Mills, Fuzzy Speech Recognition, University of South Carolina-1996. [9] Quách Tu n Ng c, X lý tín hi u s , Nhà Xu t b n Giáo d c, 1995. [10] Lê Ti n Th ng, Tr n Ti n c, Nh n d ng ti ng nói ti ng Vi t liên t c b ng m ng neuron, T p chí Phát tri n Khoa h c và Công ngh , i h c Qu c gia TP. HCM, s 10, T p 5, 2002. Ngày nh n bài: 05/08/2005 S L C TÁC GI HOÀNG ÌNH CHI N Sinh ngày: 17-4-1955 t i Qu ng Ngãi. T t nghi p i h c MTYCI-Moscow 1979. Nh n b ng Th c s i n t Vi n thông, H Bách khoa TP. HCM n m 1998, nh n b ng Ti n s n m 2003. Hi n ang gi ng d y t i Khoa i n- i n t , H Bách khoa TP. HCM, L nh v c nghiên c u: Truy n thông v tinh, x lý tín hi u s , h th ng truy n thông, wavelets, neuron networks. Email: hdchien@hcmut.edu.vn . t và c dùng hu n luy n m ng neuron. III. M NG NEURON M i neuron nhân t o g m m t s các ngõ vào (t d li u g c, hay t ngõ ra các neuron khác trong m ng). M i k t n i n ngõ vào có m t tr ng s và m. n nhi u. Ví d , t m t và b n , hai, và b y, n m, và tám. kh c ph c hi n t ng này, kh o sát gi i pháp AMDF k t h p LPC. 2. Hu n luy n dùng LPC k t h p v i AMDF V i ý t ng c n ph i. ng Vi t dùng m ng neuron k t h p trích c tr ng dùng LPC và AMDF Vietnamese Speech Recognition Using Neural Networks Combined with LPC Formant Extraction and AMDF Pitch-Detection Hoàng ình Chi