K THUT NHN DNG TING NÓI NG DNG TRONG ĐIU KHIN
TS. Nguyn Văn Giáp
KS. Trn Vit Hng
B môn Cơ đin t - Khoa Cơ khí – Đại hc Bách Khoa TPHCM
nvgiap@dme.hcmut.edu.vn; tvhong@dme.hcmut.edu.vn
TÓM TT
Vn đề nghiên cu các phương pháp nhn dng
tiếng nói đã và đang thu hút rt nhiu s đầu tư
nghiên cu ca các nhà khoa hc trên khp thế
gii. Tuy nhiên cho đến nay kết qu mang li vn
chưa hoàn toàn làm hài lòng nhng người nghiên
cu do tính cht quá phc tp và không c định ca
đối tượng nhn dng là tiếng nói con người. Đặc
bit, đối vi tiếng Vit thì kết qu càng còn nhiu
hn chế. Bài báo trình bày mt hướng nhn dng
tiếng nói tiếng Vit, da trên vic trích đặc trưng
tiếng nói bng phương pháp MFCC và b nhn
dng dùng mng HMM. Kết qu đưc kim nghim
thc tế bnghình xe điu khin t xa.
ABSTRACT
Researching and inventing speech recognition
methods have been paid much considerations by
many scientists over the world. However, the
achievements don’t satisfy researchers’ demands
because of the complexity and unstability of speech
until now. Especially with Vietnamese speech, the
results are more unsatisfied. The paper suggests a
synthetic method for recogniting Vietnamese
speech: extract speech’s particularities by MFCC
method and recognize by HMM network. The
results are experimented through a model of RF
controlled car.
1 ĐẶT VN ĐỀ
1.1 Gii thiu
Ngày nay, cùng vi s phát trin ca ngành đin t
tin hc,c h thng máy t động đã dn thay
thế con người trong nhiu công đon ca công vic.
Máy có kh năng làm vic hiu qu năng sut
cao hơn con người rt nhiu. Song cho đến nay, vn
đề giao tiếp người – máy tuy đã đưc ci thin
nhiu nhưng vn còn rt th công: thông qua bàn
phím và các thiết b nhp d liu khác. Giao tiếp
vi thiết b máy bng tiếng nói s phương thc
giao tiếp văn minh và t nhiên nht, du n giao
tiếp người – máy s mt đi mà thay o đó là cm
nhn ca s giao tiếp gia người vi người, nếu
hoàn thin thì đây smt phương thc giao tiếp
tin li và hiu qu nht.
Do có s khác bit v mt ng âm gia các ngôn
ng nên ta không th áp dng các chương trình
nhn dng khác để nhn dng tiếng Vit. Mt h
thng nhn dng tiếng nói nước ta phi đưc xây
dng trên nn tng ca tiếng nói tiếng Vit.
1.2 Tình hình nghiên cu trong và ngoài nước
Vn đề nhn dng tiếng nói tiếng Vit ch mi được
quan tâm nghiên cu trong nhng năm gn đây
chưa có mt chương trình nhn dng hn chnh
nào được công b.
Trên thế gii đã có rt nhiu h thng nhn dng
tiếng nói (tiếng Anh) đã và đang được ng dng rt
hiu qu như: Via Voice ca IBM, Spoken Toolkit
ca CSLU (Central of Spoken Laguage Under-
standing)… nhưng trong tiếng Vit thì còn rt nhiu
hn chế.
1.3 Mc tiêu ca đề tài
Đề tài này nghiên cu th nghim mt hướng nhn
dng tiếng nói - tiếng Vit da trên vic trích đặc
trưng ca tiếng nói bng phương pháp MFCC (Mel-
Frequency Ceptrums Coefficients), và nhn dng
bng mô hình HMM (Hidden Markov Models).
Đồng thi, mt mô hình điu khin bng tiếng nói
tiếng Vit đưc xây dng vi b t vng nh, thiết
lp h thng điu khin bng tiếng nói vi mt tp
lnh c định. Tp lnh này dùng để điu khin
Robot, vành điu khin xe bng tiếng nói
hoàn chnh là mt ng dng thc tế mang tính th
nghim ca đềi.
2 Y DNG H THNG NHN DNG
TING NÓI
Mt h thng nhn dng nói chung thường bao gm
hai phn: phn hun luyn (training phase) và phn
nhn dng (recognition phase). Hun luyn”quá
trình h thng “hc” nhng mu chun được cung
cp bi nhng tiếng khác nhau (t hoc âm), để t
đó hình thành b t vng ca h thng. “Nhn
dng” là quá trình quyết định xem t nào đưc đọc
căn co b t vng đã được hun luyn. Sơ đồ
tng quát ca h thng nhn dng tiếng nói được
th hin trên hình 1.
Để thun tin cho vic kim tra đánh giá kết qu,
t sơ đồ trên chúng tôi chia chương trình nhn dng
thành ba mô-đun rng bit:
! Mô-đun 1: Thc hin vic ghi âm tín hiu tiếng
nói, tách tiếng nói khi nn nhiu và lưuo
cơ s d liu.
! Mô-đun 2: Trích đặc trưng tín hiu tiếng nói đã
thu -đun 1 bng phương pháp MFCC,
đồng thi thc hin ước lượng vector các
vector đặc trưng này.
! Mô-đun 3: Xây dng mô hình Markov n vi 6
trng thái, ti ưu hóa các h s ca HMM
tương ng vi tng t trong b t vng, tiến
nh nhn dng mt t được đọc vào micro.
2.1 Thc hin mô-đun 1
Nhim v ca mô-đun này là thu tín hiu t micro,
dùng k thut xđầu cui để phát hin phn tín
hiu tiếng nói và phn tín hiu nhiu. T đó ta
th tách tiếng nói ra khi nn nhiu (ch thu tín hiu
tiếng nói mà không thu tín hiu nhiu nn).
Tuy có nhiu phương pháp tách tiếng nói khác
nhau, nhưng qua quá trình nghiên cu và th
nghim các tác gi nhn thy s kết hp gia
phương pháp hàm năng lượng thi gian ngn và t
l qua đim zero cho kết qu tt hơn.
Phương pháp này da vào tính cht năng lượng ca
tín hiu tiếng nói thường ln hơn năng lượng ca
tín hiu nhiu và t l qua đim zero ca nhiu s
ln hơn tín hiu tiếng nói.nh 2 cho thy mi
quan h gia tín hiu thu được, giá tr ca hàm
năng lượng thi gian ngn và t l qua đim zero.
nh 2 S tương quan gia tín hiu tiếng nói và
nn nhiu.
Vi mt ca s kết thúc ti mu th m, hàm năng
lượng thi gian ngn E(m) được xác định bi:
() ()( )
[]
−∞=
= nnmwnsmE 2 (2.1) [4-6]
Đồ th ca hàm năng lượng thi gian ngn ca mt
đon tín hiu đưc th hin trên hình 3.
00.1 0.2 0.3 0.4 0.5 0.6 0.7
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
Signal
Time (s)
Am
p
(a)
010 20 30 40 50 60 70 80 90
0
0.5
1
1.5
2
2.5
3
3.5
4Short-Time Energy
Time (frame)
(b)
Hình 3 Tín hiu (a)
năng lượng thi gian ngn (b)
T l qua đim zero (zero crossing rate) là mt
thông s cho biết s ln mà biên độ tín hiu đi qua
đim zero trong mt khong thi gian cho trước
được xác định bi:
() (){} ( ){}
()
nmw
nsns
N
mZ m
Nmn
s
=+= 121sgnsgn
1
trong đó, N là chiu dài ca ca s w(m-n).
Nhiu thut toán phát hin đầu cui đưc da trên
độ ln ca tín hiu năng lượng thi gian ngn và t
l qua đim zero để c gng phát hin chínhc
đến mc có th. Quá trình cơ bn ca thut tn
như sau: mt mu tín hiu nh ca nn nhiu được
ly trong sut khong “lng” (silence) cho đến
trước đim bt đầu ca tín hiu tiếng nói. T đây
ngưỡng tiếng nói đưc xác định da trên năng
lượng khong lng năng lượng đỉnh. Ban đầu,
nhng đim kết thúc được xác định nhng nơi
năng lượng tín hiu vượt qua ngưỡngy, sau đó ta
tính khong cách gia hai đim xem có tho mãn
độ dài ca mt t hay không. Tương t ta áp dng
cho t l qua đim zero.
Ví d: tín hiu thu vào t micro bao gm nhiu nn
tiếng nói có đồ th như sau:
Hình 4 Tín hiu ca t “ti”.
Qua quá trình x lý theo chu trình trên ta có được
đồ th dng xung như sau:
nh 1 Sơ đ
t
ng quát h th
ng nhn dng ti
ế
ng nói.
đun 1 đun 2 đun 3
Tiếngi Nhiu (2.2)
T l qua đim zero
Hàm năng lượng
thi gian ngn
Hình 5 Dng xung sau x lý kết hp hàm năng
lượng thi gian ngn và t l qua đim zero
T hình 5 ta thy ch cn xác định độ dài ti thiu
ca mt t là ta có th tách t ra khi nn nhiu.
Đến đây mô-đun 1 đã hoàn thành nhim v. Đây là
mt phn rt quan trng trong mt h thng nhn
dng tiếng nói, nó nh hưởng rt ln đến kết qu
nhn dng.
2.2 Thc hin mô-đun 2
Đến đây chúng ta đã có đưc các mu tiếng nói đã
đưc kh nhiu. Mô-đun 2 thc hin vic trích đặc
trưng các mu tiếng nói đã thu mô-đun 1. Có
nhiu phương pháp tch đặc trưng khác nhau như:
wavelets, LPC, MFCC… đây chn phương pháp
MFCC (trích đặc trưng theo thang tn s Mel) do
tc độ tính toán cao, độ tin cy ln và đã được s
dng rt hiu qu trong các chương trình nhn dng
tiếng nói trên thế gii.
Sơ đồ gii thut phương pháp MFCC như sau:
nh 6 Quá trình tínhc h s MFCC.
! Ca s hoá tín hiu (Windowing)
Nhng phương pháp đánh giá ph c đin ch đáng
tin cy trong trường hp tín hiu dng (stationary
signal), ví d mt tín hiu mà nhng đặc trưng
bt biến đối vi thi gian. Đối vi tín hiu tiếngi
thì điu này ch được trong mt khong thi gian
ngn, vic này có th thc hin đưc bng cách
“ca s hoá” mt tín hiu x’(n) thành mt chui
liên tc nhng ca s tun t x
t(n), t=1,2,……,T,
gi là nhng frame.
Trong h thng nhn dng t động thì dng ca s
thường dùng nht là Hamming window, đáp ng
xung ca nó là mt hàm cosin tăng:
()
=
=
khaùcn
Nn
N
n
nw 0
1,...,0
1
2
cos46.054.0
π
! Phân tích ph
Nếu nhng g tr khong cách đều nhau, tc là
xem N
k
w
π
2
=, thì biến đổi Fourier ri rc (DFT)
ca tt c các frame ca tín hiu là:
()
.1,...,0)( /2 == NkeXkX Nkj
tt
π
Bên cnh đó nếu s mu N là bi s ca 2 (N=2p, p
là s nguyên) thì độ phc tp tính toán s gim
đáng k khi dùng phương pháp FFT (Fast Fourier
Transform).
! Lc x
Nhng nghiên cu v sinh lý hc chng t rng
mc độ cm nhn đối vi tn sn hiu tiếng nói
ca con người không theo mt t l tuyến tính. ng
vi mi tone là có mt tn s f, được đo bng đơn
v Hz. Để t chính xác s tiếp nhn tn s ca
h thng thính giác, người ta đã xây dng mt
thang khác – thang Mel. Thang tn s mel tuyến
tính tn s dưới 1000 Hz và logarit tn s trên
1000 Hz. Mt quan h ánh x tương ng gia thang
tn s thc (vt lý, Hz) và thang tn s sinh lý Mel
được cho bi công thc sau:
+= 1000
1
2log
1000
10
Hz
mel F
F
hay
+= 1000
1log.2595 10 Hz
mel F
F (2.3)
Vic phân tích ph s th hin nhng đặc trưng tín
hiu tiếng nói mà do chính hình dng ca vùng phát
âm to ra. Nhng đặc trưng ph ca tín hiu tiếng
nói sđưc sau khi cho qua nhng b lc. Đối
vi thang tn s Mel thì mt lc cho mi thành
phn tn s mong mun (hình 7). B lc này có đáp
ng tn s dng tam giác, và khong ch hay băng
thông được xác định bi mt hng s Mel.
Hình 7 Mt ví d v b lc thang Mel
! Tính năng lượng logarit (LOG)
Các bước trước đóng vai trò làm phng ph, thc
hin mt x lý ging như tai ca con người. Đến
bước này tính toán logarit ca bình phương độ ln
nhng h s ti ngõ ra b lc. Chú ý rng tai người
thc hin rt tt vic xđộ ln logarit. Hơn
thế na, xđộ ln thì loi b nhng thông tin
không cn thiết trong khi x lý logarit thc hin
mt nén động, trích đặc trưng ít nhy đối vi nhng
biến đổi động.
! Tính ph tn s mel
Bước cui cùng trong vic tính ph tn s mel
(MFCC) bao gm thc hin biến đổi ngược DFT
trên độ ln logarit ca ngõ ra ca b lc.
Chú ý rng do năng lượng ph log thc và đối
xng nên biến đổi DFT ngược được nói gn là
chuyn đổi cosine ri rc (Discrete Cosine
Transform – DCT). Tính cht ca DCT là to ra
nhng đặc trưng rt khác nhau. DCT cũng có c
dng làm phng ph nếu ch nhng h s đầu
tiên được gi li. Trong nhn dng tiếngi thì s
h s MFCC thường nh hơn 15. [6]
Sau khi tín hiu tiếng nói được trích đặc trưng thì
mi t đưc được đặc trưng bi mt ma trn h s
thc. Do mô hình HMM ri rc được ng dng để
nhn dng nên nhng vector đặc trưngy phi
đưc ước lượng vector (VQ) thành mt ch s
codebook ri rc. Thut toán ph biến dùng để thiết
kế codebook là LBG (Linde, Buzo và Gray).
Hình 8 Ước lượng vector VQ trong nhn dng.
Phương pháp được s dng để ước lượng vector là
phương pp K-means.
2.3 Thc hin mô-đun 3
Sau khi đã thc hin xong 2 mô-đun trên thì chúng
ta đã có mt cơ s d liu các vector đặc trưng ng
vi tng t. Trong mô đun này chúng ta sy
dng mt hình Markov n vi d liu hun
luyn là các vector đặc trưng có được t-đun 2.
Sơ đồ hun luyn và nhn dng bng mô hình
HMM đưc th hin trênnh 9 vi b t vng
gm 3 t: ti, lui, trái.
Hun luyn:
Nhn dng:
,
,
,
,
,
,
= O
nh 9 Sơ đồ mô hình HMM
ng vi mi t cn nhn dng thì cng ta có mt
cơ s d liuc đặc trưng tc ln đọc kc
nhau (như trên sơ đồ là 3 ln ly mu). Sau đó ta s
ước lượng các thông s ca mô hình
()
πλ
,,
B
A
=
để xác sut P(O|λ) đạt cc đại, tương ng vi mi
t là mt λ xác định. Để nhn dng mt t thì ta ch
vic tính xác sut chui quan sát ca t đó ng vi
các λ đã được hun luyn, và chn mu nào có xác
sut ln nht.
Da vào c tài liu tham kho và nhng thông tin
vc h thng nhn dng đã xây dng thành công
cng tôi thy rng: đối vi nhn dng tín hiu
tiếng nói t mônh HMM thường được chn là
mô hình trái phi (left-right) có t 5 đến 6 trng
thái. Qua quá trình th nghim, hình 6 trng
thái cho kết qu tt hơn nên trong chương trình ca
mình,c tác gi đã xây dng mt HMM vi s
trng thái là 6, xem hình 10.
Hình 10 Mô hình HMM trái phi vi 6 trng thái.
3 MÔ HÌNH H THNG XE ĐIU KHIN
Sơ đồ hình xe tuyến điu khin bng tiếng
nói ty tính đưc trình bày trên hình 11.
λti λlui λtrái
Ti Lui Trái
Nhng mu
hun luyn
Ước lượng
thông s
(O/λ
t
i
)
P(O/λlui) P(O/λ
t
rái
)
Xe vô tuyến có th được điu khin t xa bng
tiếng nói ty tính. Tiếng nói là t lnh s được
thu vào và nhn dng trên b nhn dng tiếng nói,
và cp chui t nhn dng được cho b quyết định
để xut lnh điu khin thông qua cng COM. Mt
mch giao tiếp máy tính thông qua cng ni tiếp
(RS232) được thiết kế để điu khin. Mch giao
tiếp nhn tín hiu và đóng m các khoá để chuyn
thành tín hiu ca b điu khin t xa. Mi khi
mt kh được đóng hoc mt t hp phím đưc
nhn, b điu khin t xa s hóa thích hp và
đưa ra anten phát. Tín hiu điu khin đưc điu
chế và truyn đến xe bng sóng vô tuyến vi tn s
ng mang FC = 27MHz. B điu khin trên xe s
tiến hành điu khin vn hành xe. Mô hình hot
động tt vi b t vng gm 4 t: phi, trái, ti, lui
vi kết qu tt (99%).
4 KT LUN
Mô hình th nghim nhn dng tiếng nói tiếng Vit
theo hướng kết hp MFCC và HMM tuy còn nhiu
hn chế nhưng đã đáp ng đưc mc tu ca đề tài.
Chương trình được s dng để điu khin robot vi
b t vng nh (dưới 16 t) cho độ chính xác có
th chp nhn đưc (trên 90%). Trong thi gian ti
nhóm tác gi s ti ưu hóa chương trình nhn dng
để đạt đưc kết qu cao hơn và tăng tc độ x lý.
TÀI LIU THAM KHO
1. GS. Phm Văn t , K thut lp trình C, N
xut bn Khoa Hc và K Thut, 1999.
2. Nguyn Hoàng Hi – Nguyn Khc Kim, Lp
trình Matlab, N xut bn Khoa Hc và K
Thut, 2003.
3. PGS.TS. Nguyn Hu Phương, X lý tín hiu
s, N xut bn Giao thông vn ti, 2000.
4. Lê Tiến Thường, X tín hiu s và wavelets,
Nhà xut bn Đại Hc Quc Gia TP. H Chí
Minh, 2002.
5. Claudio Becchetti and Lucio Prina Ricotti,
Speech Recognition Theory and C++
Implementation, JOHN WILEY & SONS,
LTD, 2000.
6. Gordon E.Pelton, Voice Processing, McGraw
Hill, 1992.
7. John R.Deller & John G.Proakis & John H. L.
Hansen, Discrete – Time Processing of Speech
Signals, Macmillan Publishing Company,
1993.
8. F.J. Owens, Signal Processing of Speech,
Macmillan, 1993.
B điu khin
trên xe
phi ti
ti
lui
anten
thu
phi trái ti lui
B điu khin t xa
SW1 SW2 SW3 SW4
anten
phát
Hình 11 Sơ đồ tng quan h thng th nghim