You are on page 1of 53
LOT NOI DAU Ngay khi phat minh ra may tinh, con ngudi da mo ude may tinh c6 thé ndi chuyén véi minh. Yéu cdu don gian nhdt a may cé thé xde dinh duge tir ngit ma ching ta n6i véi may. Dé la myc tiéu cia nginh nan dang tiéng néi, Déi véi con ngudi, viée nghe, nhit 1a nghe tiéng me dé 1 mot van 48 kha don gin. Con déi véi may tinh, xéc dinh mot chudi tin higu ém than la sy phat 4am eiia m@t tir ndo hoan todn khéng dom gin, khé khin cling nhur vige hoc nghe ngoai ngit cia ching ta. Linh vue nhgn dang tiéng néi da durge nghién citu hon 4 thp ki va hign nay méi chi cé mét sé thanh céng. Co <é dén hé théng nhan dang tiéng Anh (vi dy: phin mém Via Voice cua IBM, hé théng nhan dang tiéng ndi tich hgp cia OfficeXP...). Cae hg thing nay hoat dng kha tt (cho d9 chinh xéc khoang 90 - 95%) nhung cdn xa méi dat dén mite mo ude cla ching ta: cO mét hé théng cd thé nghe chin xéc va hiéu hodn ton nhimg digu ta néi Riéng vi tiéng Viét, linh vue nhan dang tiéng néi con khé méi mé. Chua hé thay xuat hign m6t phan mém nhén dang tiéng Viét hoan chinh trén thj trang. 6 cng trinh nghién ciru vé nhdn dang tiéng néi tiéng Viet due céng bé rat hiém hoi, va két qua con han ché vé b6 tir vung, d6 chinh xéc.... Tiéng Vigt c6 ahidu dic tinh khée véi cic ngén ngit d& durge nghién ettu nhan dang nhiéu nhu tiéng Anh, tiéng Phép. Do dé viée nghién ciru nhan dang tiéng Viét 1a rit cin thidt, Vi nhimng li do trén, tdi chon dé tai “Tim hiéu mét sé phicong phap nhgn dang tiéng néi va xy dung h¢ nhgn dang tiéng néi céc chit sé tiéng Vigt bing ‘mang novon trén moi trwéng Matlab”, nhiim nghién ciru cic phuong phip nhain dang tiéng noi 46i voi tiéng Vigt va thir nghi¢m xy dyng mét hé théng nhan dang cdr nh. Khod lun gom cé 5 chong: 1. Chuong 1 trinh bay téng quan vé nhan dang tiéng ndi, nhan dang tiéng. néi tiéng Vigt va mét sé phurong phap nhén dang phé bién. 2. Chuong 2 trinh bay vé moi truong Matlab. 3. Chuong 3 tinh bay vé trfch chon die trung cho nh§n dang. 4. Chuong 4 trinh bay so luge vé mang noron va toolbox NetLab cho ‘mang noron trén méi truémg Matlab, 5. Chuong 5 trinh bay qué trinh tién hanh va mét sé két qua nghién ctu xdiy dung hé nhin dang tiéng ndi céc chit sé tiéng Vigt trén mai trudng, Matlab Mic dai hét site cé ging nhung do kha ning cén han ché cong véi nhing théi gian, phuong tign, cOng cu... nén két qui nghién citu cdm khé khiém tin. Hy vong ring trong tuong lai tdi sé cé diéu kign hon dé tiép tuc nghién ciru dé tai nay. Em xin chan thinh cam on thdy Dang Vin Chuyét (khoa CNTT DHBK Ha. N@i), ¢6 Hé Cam Ha, thay Nguyén Tan An, thay Lé Minh Hoang, thay Dao Viét Cuimg, thy Trin Ding Hung cing e4e thy e6 giéo khoa CNTT DHSP Ha Noi 43 tin tinh chi bao, g6p ¥ va gidp 49, tao diéu kign cho em trong qué trinh nghién ‘Cam on anh Nguyén Tién Ding (Vign CNTT), em Dinh Ngoe Thing va cdc ban 6 trung tim FYT, cde ban cing Ip, cing khoa da ding vién va gidp 43 tai ligu, phwrong tign 48 t0i hoan thinh nghién eiru nay. LOT NOT DAU nee MYCLYC.. CHONG 1. NHAN DANG TIENG NO 1.1, NHAN DANG TIENG NOI VA MOT SO PHUONG PHAP NHAN DANG LLL Nh dang tng 26, aa 1.1.2, Mgtsé prong php nbn dng téng ni ph én, 1.12.1 Phong pip gto - An v ge (Acoutie-phoetic approach), 1.1.2.2 Phuong phi mhin dang miu (patter ecogiton approach). 7 1.12.3. Phawng pip uu aa go (rua ineligence approse). a 1.2, NHAN DANG TIENG VIET. 1.2.1, Mt be di ng ining Vie 1.2.2. Nhing than lo vi ho kin Bi vi nhin doe én nine Viet 1221, Thun Ii 1222. Khi kin CHONG 2. MOLTRUONG MATLAB... 2.1, GIAO DIEN VA CAC THANH PHAN CO BAN CUA MATLAB... 2.1, LENH TRONG MATLAB. 22, BIEN TRONG MATLAB 221, Sir dng bin trong Mat 222 Nhip Umport) vault Export). a 23. MA TRAN TRONG MATLAB... 2.31, Mate marin, vet vst vv ug Cela. 23.2, Motsé ma tn, vector de ig 23.3. Che phép tain wi vO bing... 234, Che php ton wi vector, 23.5. Che phep toin wi ma uta... 2.4. CAC HAM THONG DUNG TRONG MATLAB... 2.4.1. Mots him adn hoe tg dang. 2.42 Mots ham veer 243. Motsé him xr tanh 2.44, Che phip tatn ol pte 25. LAP TRINH MATLAB... te 2.5.1, Choon inh ago (se am vs. 252 Che elute du Mile. ms 252.1. Linh gn 252.2 Léahreahanh 2523. Linh ip. 253 Big thie logic 25.3.1 Che php tain quan bd, aa 2532. Cée php in logic 25.3.3. Mies hi quan hiv Logie CHUONG 3. TRICH CHON DAC TRUNG TIN HIEU TIENG NObseonnnnnnnen 29 3.1, TRICH CHON DAC TRUNG MECC. cee 3.11, Sa 8 Kh ea gui ah inh MFC. 3:12, Chin Kung va ci 6h, sense’ » 30 20 3.13. Bid i Fourier ie 30 3.14, Loe qua cc bloc mel sale 31 315. Logarit vi bin bi Fourier gue. 31 3.16, Tinh oda ng hae 2 3.17, Tinh oka de mg dea a "2 32, TOOLBOX VOICEROX TRONG MATLAB, 3 CHUONG 4. MANG NORON NHAN TO vnunet 4.1, MO HINH MANG NO RON ... sania 34 441.1. Méhinh mot noon perceptron. M 4412. M6 hinh mang noon MLP. 35 413. Hanya mang noroa MP... - 36 415. Vadim va ahuge dtm cia mang nero a 38 42. SU DUNG MANG NORON TRONG NHAN DANG MAU. 38 442.1 Mot phuong pip pcm da vo xde su phn ip. 4422, Nhave diém cia mang MLP rng a dang én ni 442.3. Mocsépuong php peda Kh... 43. MANG NORON TREN MOI TRUONG MATLAB. 43.1. Khoi to mgug MLP. 443.2. Han hyn nang MLP 433. Sirdyngmang ML? CHUONG 5. XAY DUNG HE NHAN DANG CHO'SO TIENG VIET. 5.1. XAY DUNG HE THONG NHAN DANG. nsssnsnnsnnnnnninnninnsnnnnnin dd $5.11. M6 t chung wh thing Z wl 5.12, Sud8 ki cia be tng. 5.1.3. Tha thw tn iin i ng ns S.A. Phin chia ia va pha ip. 44 515. Trich ehgn dc trmg MFCC rn 5.1.6, Tih di vo cho mang vl 46 46 S17. Xiy dang vi hud ay hi hin me 5.18, Sidyng mang trong nnn dng, 5119, Gia dia phn mim demo. 52. KET QUA THU NGHIEM .. 5.3. HUNG MG RONG CUA DE TAL 50 531, Xi dima bo iguana 30 4332. Xfy dng pln nn a dng di rn tg gic, 0 533, Nghien icf pong pe in etme Ke x0 534 Nehin cee phon php nin dang Ke st PHY LUC 1, DANH MYC TAL LIEU THAM KHAO verrmnnnrnncnn 82 PHY LUC 2. BANG CAC THUAT NGU VA TU VIET TAT, 33 1.1. NHAN DANG TIENG NOI VA MOT SO PHUONG PHAP NHAN DANG PHO BIEN 1.1.1, Nhan dang tiéng néi Hiéu mét cich don gin, nhfn dang tiéng néi (speech recognition by machine) la ding may tinh chuyén ddi tin higu ng6n ngi tir dang 4m thanh thanh dang van bin, Néi m6t céch chinh xac hon: nh@n dang tiéng néi la phan chia (segmentation) va dinh nhin ngén ngit (labeling) cho tin hiéu tiéng néi. Nhan dang tiéng néi c6 nhigu img dung: © Doe chinh ti. La tng dung duge sir dung nhiéu nhdt trong cic hé nhgn dang. Thay vi nhap ligu bing tay thong qua bin phim, ngudi sit dung néi véi may qua micro va may xae dinh cée tir duage néi trong 6, * Diéu khién - giao tiép khong diiy. Ching han hé théng cho phép may tinh nhan Ignh diéu khién bing giong néi cia con ngudi nhu: “chay chuong trinh", “tit may”... M§t sé wu diém ciia vige sit dung tiéng noi thay cho eéc thiét bi vio chudn nhu ban phim, con chudt li: thuin tign, tée 46 cao, Khdng bj anh huémg ca cp, khong céch, khong doi hoi hud luyén sir dung... thogi-lién Igc. Mét s6 hé thong (chang han 6 may dign thogi di d9ng) cho phép ngudi sir dung doc tén nguéi trong danh sich thay vi bam sé. Mot sé hé théng khdc (6 ngdn hang, trung tam chimg Khodn...) thye hién vige tra lai ty déng di vei cdc cde cude goi hoi vé tai khoan, Tuy nhién van dé nhén dang tiéng néi gp rit nhiéu kh6 khin. Mot sé khé- hain chit yéu la © Tiéng ndi la tin higu thay ddi theo thdi gian. Mai ngudi cd mot gigng ni, céch phat Am khée nhau... Tham chi mot ngudi phét ém cing mot tit mami lan khée nhau cing khéng giéng nhau (ching han vé toc 49, Am hugng...) * Céc phuong phap nbn dang hign tai cha méy tinh kha “may méc”, cdn xa méi dat dén mire d6 tu duy cla con ngudi. * Nhiéu la thanh phan luén gap trong méi trigng hoat d6ng ciia cdc hé thdng nhan dang va anh hudng rit nhiéu dén két qua nhén dang. Do nhiing khé khiin dé, nhan dang tiéng néi cn tri thie tir rdt nhidu tir gin khoa hoe lién quan: hiéu céc phuong phap tich cdc théng tin dac trung, i tiéng néi, giam anh hug cua nhiéu va sy thay 441 theo théi gian cia tiéng ndi, ¢ Am hge: tim hiéu méi quan hé giita tin higu tiéng ndi vat li voi cde co ché sinh Ii hge eta vige phat am va vige nghe cia con ngudi. * Nhan dang miu: nghién ctru cdc thuat todn dé phan lép, hudn luyén va so sfnh cfc miu dit ligu, © Li thuyét thong tin: nghién ctru cde mé hinh théng ké, xc sudt; cde ‘thuat toan tim kiém, ma hod, gidi ma, wée Iugng cae tham s6 cia mo hinh © Ng6n ngit hge: tim hiéu méi quan hé gitta ngi am va ngit nghia, ng phap, ngit canh cia tiéng néi, © Tam-sinh li hge: tim hiéu cac co ché bac cao cia hé théng noron cia 6 no nguisi trong cae hoat dong nghe va néi ‘© Khoa hge miy tinh: nghién citu ede thudt ton, ede phuong php cai dat va sir dung higu qua cae hé théng nhin dang trong thu t8. 1.1.2. M6t sé phuong phap nhan dang tiéng néi pho bién 1.1.2.1, Phuong php ngir 4m - Am vj hge (acoustic-phonetic approach) Phuong phap ngit am - 4m vi hoc dya trén ly thuyét 4m vi: li thuyét nay khing djnh sy tn tai hitu han va duy nhat cic don vj ngi 4m co ban trong ng6n ngt di goi li am vi, duge phan chia thinh: nguyén 4m - phy 4m, v6 thanh-hitu thanh, am vvang -Am bet... Céc dim vj c6 thé xéc dinh bai tip cfc de trmg trong phd ciia tin higu tiéng néi theo théi gian (dc gia co thé tham khao thém 6 [10]). ‘Dic trang quan trong nhat ciia 4m vj la formant. Dé 1a cdc ving tin sé cé Ong hudng cao nbdt cia tin higu. Ngoai ra con mét sé dc tung khdc nhu am vue (cao dé - pitch), am lyon; H@ théng nin dang dya trén phuong phip ndy s® tich e4e de trumg tir tin higu tiéng néi va xéc dinh ching twong tmg voi 4m vj nao. Sau 46, dya vio mét tir dién phién am, may sé xéc dinh chudi cdc dm vj 46 ¢6 kha nang 1a phat am ciia tir nao nbat, Xét khia canh nguyén li, phuong phap cé vé rat don gian. Tuy nhién céc thir nghigm trong thyc té cho thay phuong php cho két qua nhan dang khéng cao. ‘Neuyén nbén ti nhiing vin 48 sau: © Phuong phép can rat nhiéu tri thite vé ngit dm hoe, nhat 1a ede tri thite lign quan dén de tinh 4m hgc cia cdc Am vj. Ma nhiing tri thire nay hin chung con chua duge nghién ciru d& ‘© formant chi én dinh déi vai céc nguyén Am, voi phy Am formant rat ‘khé xae dinh va khéng 6n djnh. Hon nita vige xic dinh cic formant cho 49 chinh xéc khOng cao, Bae biét khi chu anh hudng cia nhigu (la van dé thurémg xay trong thuc té). © Rat khé phan bigt cde 4m vj dya trén phd, nhat 1 cde phy 4m vo ‘thanh. C6 mét s6 phy 4m rit giéng nhigu (vi du: /s/, /W/). 1.1.2.2. Phuong phép nhjn dang miu (pattern recognition approach) Phuong php nhan dang miu dua vao ly thuyét xc suit - théng ké dé nhan dang dya trén y tuéng: so sdinh déi teong can nhdn dang voi cée méu diege thu thap truéc dé dé tim mau "giéng" déi tugng nhat. ‘Nhu vay hg théng nhén dang sé tréi qua 2 giai doan: 1) Giai doan hudn Iuyén thye hign cde nhigm vu: thu thap mau, phan lop a luyén hé théng ghi nhé céc mau 46. —) -—> 3| Th is : Minh hog: So dB giai dogn hun luygn cia phwong phap déi sénh mau 2) Giai doan nbn dang: vao déi tugng cin nhfn dang, so sinh véi cde mau va dua ra két qua 1a mau gidng déi tugng nhat. 3 a 5 8 | : H ZI : Thu thap, tién xt z an (2 u thap, tién xi 5 Nguén \2\0 P. 37 y eee] Minh hoa: So a giai doan nhan dang cia phurong php aéi sanh mau Phan lén cdc hé nhan dang thanh céng trén thé giéi 1a sir dung phuong phap nay. Phuong phap c6 nhimg wu diém sau: 1. Sit dung don gin, d& hiéu, mang tinh toan hoe cao (ly thuyét xde suat théng ké, ly thuyét may hoe, ...) 2. ft bj anh huémg cia nhimg bién thé vé b6 tir vung, tap dc trung, don vj hn dang, mOi treéng xung quanh. 3. Cho két qua cao. Didu nay da duge kiém chimg trong thye té. Trich chon ac 1.1.23, Phurong phép er tug nha tpo(artifactial intelligence approseh) oq Phuong phép tri tug nhan tgo nghién etru cach hoe néi va hoc nghe cia con ngudi, tim hiéu cde quy lut ngit am, ngit php, ngtt nghia, ng can... va tich hop chiing bé sung cho céc phurong phap khée dé nang cao két qua nhan dang. Ching han c6 thé thém cdc hé chuyén gia (expert system), cdc ludt logic mo (fuzzy logic) vé ngit am, am vj... vao céc hé nhin dang tiéng néi dya trén phuong phép ngit 4m-dm vj hgc dé ting d@ chinh xée cho vige xc dinh ed &m vi (van dé da duge dé cap 1a rit khé néu chi sir dung céc théng tin vé am phé ). Hay tugng cin nhan dang, hé théng sé chon ra mot sé miu “ sau d6 sé kiém chimg tiép cdc két qua dé bang céc lat ngit phap, ngit nghia, ngir canh,.. dé xc dinh mau pha hgp nhat. Hign nay dang c6 mét phuong phép tri tug nhan tao trong nhfin dang tiéng néi duge nghién ciru rong rai ld mang noron. Tuy vao cach sit dyng, mang noron 6 thé coi 1a mé rng cia phwong phép nhn dang miu ho’c phuong phép ng im-Am vj hoc. Do nhimg dic tinh cia minh (duge trinh bay ki 6 phan 2), mang noon duge hi vong sé ting cuting higu qué cia céc hé nn dang tiéng noi. Mang noton la phurong phép durge chiing t6i nghién ciru xay dyng hé nhén dang trinh bay trong khod lun nay. 1.2. NHAN DANG TIENG VIET 1.2.1. MOt s6 dic diém ngir Am tiéng Viét 14 ng6n ngtt don am (monosyltable - mi tir don chi e6 mt 4m tit), khong bién hinh (cdch doc, eich ghi 4m khong thay déi trong bit ctr tinh hudng ngit phap nao). Tiéng Viét hoan ton khéc véi cde ngén ngit An-Au nhw tiéng Anb, tiéng Phap 1a cdc ng6n ngit da am, bién hinh, Theo théng ké trong tiéng Vigt ¢6 khodng 6000 am tiét, Nhin vé mat ghi Am: dm tit tiéng Vigt c6 edu tao chung la: phy m-van, Vi dum rin e6 phy am t, van in. Phy am la m6t am vi va am vj nay lién két rat long 1éo voi phin cén Iai cila Am tiét (hign tugng néi lai), ‘Van trong tiéng Viét lai durge cau tao tir cdc dm vj nhé hon, trong d6 cd mot am vi chin la nguyén am. Hinh sau 1a phé tin higu cia am tiét “ba”. Ching ta c6 thé quan sat va phan. bigt r mién nhiéu nén, phé cia phy am b va nguyén 4m a (mién dim hon 1a 06 mat 46 nang hong lin hon). ving ling (silence) 66 mién nhiéu nén (silence), min tin higu bl va nguyén &m Jal (mién dm hon la ¢6 mat a nang lreng lin hor rit ra két Iudin: cdc phy ‘véi nhau rit r qua sy phan bé nang luong tai Quan sat phé cae am tiét tuong ty ching ta cé tI Am va nguyén am déu phan bigt ce min tin s6, vi du: phy am 6 tin s6 thép, nding lung nho, nguyén dm c6 ning long lon 6 cd ving tin s6 eno, Ving khong ¢6 tin higutiéng noi (nhiéu nén va khoding ling) cé ning lugng thip va chi t§p trung 6 céc tn s6 rat thép. "fe nguyén am cé tin phd (spectrum) khiée nhau khé 1. Hinh sau minh hoa sy khdc nhau vé phé cia 5 nguyén 4m co ban. Mién dim 1a mién c6 mat 46 ning Iugng cao. Theo tac gid Doan Thign Thuat ([3)), xét tiéng Viét c6 luge dé nhu sau: Thanh digu m dau Vin ‘Am dm ‘Am chink Am eudi Luge dé cho thay am tiét tiéng Vigt c6 cau trac 16 ring, én dinh. Luge 43 cOn cho thay tiéng Vigt 14 ngén ngir c6 thanh digu. Hé théng thanh digu gdm 6 thanh; bing, huyén, sac, héi, nga, nfing, ‘Thanh digu trong am tiét la am vj siéu dogn tinh (thé hién trén toan b6 am tiét), Do dé dic trang vé thanh digu thé hign trong tin higu tiéng noi khong rd nét hu cdc thinh phan khdc cia am tiét. Su khéc bigt vé céch phat am tiéng Viét rit 13 rét theo gi bigt la theo vj tri dia li (giong mién Bac, mién Trung va mién Nam khéc nhau rit ). i, Mra tudi va di 0 1.2.2, Nhimg thudn Igi va khé khan d6i v6i nhan dang tiéng noi tiéng Vigt 1.2.2.1. Thugn loi Nhimg dac diém ngit am tiéng Vigt cho thay nhén dang tiéng noi tiéng Viét 6 mot s6 thudin loi sau: © Tiéng Viét 1a ngén ngit don Am, sé lugng am tiét khong qua lon. Didu nay s@ gitip hg nhin dang xéc dinh ranh gidi cdc am tiét d8 ding hon nhiéu. Déi voi hé nhjin dang cic ngén ngit An-Au (tiéng Anh, tiéng Php...) xéc dinh ranh giéi 4m tiét (endpoint detection) 1a van dé rat khé va anh huéng lén dén két qua nhan dang. © Tiéng Viét 1a ngén ngit khéng bién hinh tir. Am tiét tigng Vigt én dink, c6 cdu tric 18 ring. ie bigt KhOng c6 2 Am tiét ndo doe giéng nhau ma viét khéc nhau. Diéu nay sé dé ding cho vigc xay dung céc ‘mé hinh am tiét trong nhan dang; ding thai viée chuyén tir phién am sang tir vung (lexical decoding) sé dom giin hon so véi cée ngon ngit An-Au. Theo [10], viée chuyén tir phién 4m sang tir vung cing 1a mot ‘yan dé khé khan trong nhén dang céc ng6n ngit An-Au. 1.2.2.2. Khé khin Ngoai nhiing thudn Igi trén, nhdn dang tiéng néi tiéng Viét cing gap rit nhidu khé khan nher sau: * Tiéng Vigt 18 ngon ngt c6 thanh digu (6 thanh). Thanh digu 18 Am vi siéu doan tinh, dic trang vé thanh digu thé hién trong tin higu tiéng ‘noi khéng rd nét nhu céc thinh phan khac cita am tiét. © Céch phat am tiéng Viét thay ddi nhiéu theo vi tri dia li. Giong dia phuong trong tiéng Viét rat da dang (mdi mién cé mét giong dic trum). © Hé théng ngit php, ngit nghia tiéng Viét rit phite tap, rit kho dé ap dung vao hé nhan dang visi muc dich tang higu nang nhan dang. Hé théng phién am cing chua théng nhit. © Cac nghién ciu vé nhan dang tiéng Viét cing chua nhiéu va it phd bién, D§e bigt khé khin ln nhdt Ia hign nay chua cé mOt b dir ligu chudn cho vige hudn luyén va kiém tra ce h¢ théng ohdn dang tiéng Viét. " MA TLAB. Matlab (Matrix Laboratory) la mét mdi trudmg tro giip tinh todn va hién thi rit manh duge hing MathWorks phat trién. Mite phat trién cia Matlab ngay nay. 43 ching t6 Matlab 1a mdt phan mém cé giao dign cue manh cling nhiéu Igi thé trong ki thuat lap trinh dé giai quyét nhimg van dé da dang trong nghién ciru KHKT tir tinh todn co bin cia Matlab 1a cde ma tn. Giao dign co sé cia Matlab 1a cdc dong Ignh, Ngoai thr vign céc ham tinh toan, vao-ra, dé hoa... eo ban, Matlab cn cé cdc toolbox 1a cac thu vign cho timg linh vue cy thé. Vi dy co toolbox cho xir Ii tin higu (Signal Processing), m6 phong mo hinh (SimulLink), logic mo (Fuzzy Logic), mang noron (NNet), ... thm chi cho ca thiét ké may bay (Aerospace) hay gidi phucmg trinh vi phén (PDE). Matlab ciing hé trg Igp trinh va cho phép tich hgp thr vign do nguti ding, xdy dymg. Cau lénh cia Matlab duge viét rit sat cde mé ta ki thudt nén Lp tink trén Matlab nhanh va don gidn hon so voi cde ngén ngit thong dung nhu Pascal, Fortran... Cit phap Ip trinh cia Matlab giéng C nén khOng qua khé hc. De bigt Matlab cén 6 céc giao thire dé lign két véi cde méi trudmg 1p trinh khée, 4 VC++, ching han cho phép dich cdc him trong Matlab thinh cae chong trinh nguén C/C++ hoae hé trg cae thir vin DLL tir bén ngoai. Do nhimg diém manh nhw vay ciia Matlab, ching toi quyét dinh s¢ ding Matlab dé phat trién hé nbn dang eiia minh. 2 2.1, GIAO DIEN VA CAC THANH PHAN CO BAN CUA MATLAB Giao dign lam vige thuémg gp cia Matlab nur saw: Ls fle Eat Yew Web Window Help De] 6 oo | me 2 lourenDredoy:fewanaBicsmek da) a = [| | | see w] fp> viet 21 b> pasts als >> vespe-pls >> denorm(ve) [denorm (vt) Z| Asx] Gidng nhu céc méi traéng khdc nhur AutoCAD, dé thao tac véi Matlab, ta g6 lénh trén cita sé Iénh hode sir dung menu, Phin tiép theo cia chuong sé tinh bay vé céch sir dung lénh trong Matlab. 2.1. LENH TRONG MATLAB Lénh trong Matlab cé thé phan loai theo chite nang nhu sau: ‘© Lénh thye hign chite nang co ban cua Matlab. Vi dy: lénh help dé goi trg gitip, mee dé goi trinh bién dich ctia Matlab... ‘© Lénh goi ham va goi seript. ‘© Lénh thao tac bién (hién thi, gan tri...). Sau day la vi dy mét sé Iénh trong Matlab. Doan Iénh sau thie tinh toan khong cach 2 diém: Spl = 1 217 pp2 = [3 4]; pov = p2 - pli ood = norm(vt) B Sau khi Matlab thye hign xong dogn Iénh (xem hinh minh hoa), ta rit ra mot s6 nha xét: © Cfu Ignh Matlab 6 déu nic 1 >>. Dau nhic ndy do Matlab sinh ra, ta khong edn phai g6 vio. Sau niy dé don gin trong ede phin sau cfu Iénh Matlab ching ti sé thém khéng phan déu nl * Céu Ignh Matlab c6 thé két thie bing dau ; ho’c khéng c6. Sau dé Khi g6 Ignh xong, go phim Enter thi Ignh sé durge thye hign. Néu khéng cé dau ; thi Matlab hién thi két qua tinh toan (d6i khi rit dai va Jam chm hé théng), con néu c6 dau ; thi Matlab khéng hién thi, © Ki php ma trn trong Matlab Ia ep [ ]. Ma trin durge mé ta timg dong mdt, gita cdc ding cach nhau béi déu ; gitta cdc phn tir trén cing mét dong cach nhau boi déu phan tich niu du céich, tab... Vi dy mé ta ma tran [1 2; 3 4]. (Cha ¥ mdi dong phai c6 s6 phan tir bang nhau), Trong doan trinh nay pl, p2 ki 2 ma tran 1x2 m6 ta tog 46 2 diém, v=p2-p1 1A vector tao bai 2 pl, p2. © Cau lgnha = norm(vt) la cau Kénh gan tri, ding thai la cau lénh goi ‘him: norm 1a ham lay chudn cia vector. nia. Bang sau ligt ké m6t s6 Iénh co ban ciia Matlab: Lénh Y¥ ngl ele Xod cita s6 len, cle Xo cia 56 8 hoa. exit, quit ‘Thoat khéi Matlab. help ‘Trg gidp vé tén Ken, hm. pause Tam dimg, in phim bat ki dé tigp tue disp Hign thi bién hose xau cerl+c Thoat khoi Iénh dang thuc thi (trong truéng hop chay qué liu hoe lp trinh sai nén khéng thost duge), a: Goi lai cde Iénh & phia trén. 2.2. BIEN TRONG MATLAB 2.2.1, Sit dung bién trong Matlab tir khdng thé trong Matlab, cing nhur trong céc ngén ngi lap trinh la bién, Bién thuong ding dé cung cp dau vo, nhn csc gid tri trung gian va ghi nhé két qua. “ Bién trong Matlab duge dat ten nhw quy tic cia ngén ngir C: chi gom. chit cai, chit s6, ddu gach dudi, dai khong qua 19 ki ty, phn biét chit hoa, chit thuring. Dé khai béo va khéi tao bién, ta ding lénh gan. Khi gan bién cho mét ma tran, néu bién chya tén tai, Matlab sé tao ra bién méi cé kich thude bing ma tran. 6 va gan gid trj cia ma trin cho bién. Thuong ta hay ding céc Ignh x=) ; hay x=zeros (m,n) dé khdi tgo bién (Xem thém phn 2.3.2.vé céc ma trin dic bigt é hiéu téc dung cia mi Iénh). Ta cé thé nhap gid tri true tiép cho bién théng qua Iénh gn va ham input. ‘Dé hign thj gia tr] ciia bién ta gd Kgnh chi cé tén bién, khéng c6 dau ; 6 cudi. 2.2.2 Nhap (Import) va xudt (Export) Toan b§ cac bién dang sir dung duge goi la khéng gian lam vige (workspace) ctia Matlab, Sau khi thodt khoi Matlab thi ching bi xod. Bé lam vige ‘v6i dit ligu duge nhiéu lan ta phai ghi (save) va nap (load) cdc bién 46. Ngoai ra ta cn cé nhu cau chia xé dit ligu gidta Matlab va cic méi trréng khic. Matlab ‘cung cp chite nang Save va Load dé thyc hign cdc yéu cdu nay. Matlab ghi cdc bién (khéng nhit thiét la ton bé khdng gian lam vigc) ra cde file c6 céu tric khiie nhau: file text ASCII va file nhj phn MAT. Thuong ching ta ghi duéi dang file nhj phan, trong trudng hgp can trao ddi dit ligu chung ta sé ahi durdi dang text. Matlab e6 kha ning ngp dir ligu tir nhiéu khudn dang, ngodi kiéu file text va file MAT, Matlab con c6 thé doc céc file anh, file am thanh, file CSDL, file Excel dé ldy ra cdc thong tin can thiét. Ghi va doc dit ligu qua file trong Matlab cé thé thyc hign qua 2 Ignh save va load, ciing cé thé thye thi biing chon menu, Trong trudng hgp ta chic chin duge cdi trée cia file dit ligu thi nén ding lénh cho nhanh, trong truéng hop khéng 15 (thumg xay ra khi nhdp tir file ciia cfc mdi trummg khéc) ta nén ding menu vi may can chung ta cung cp va xéc dinh cau trac file. Ci phap cia Ignh save, load: [Save | Ghi ton b6 khing gian lim vige vio file| -MAT cé tén la Save x Ghi bign x vao file MAT cé tén la Save x y z Ghi cdc bién x,y,z vao file MAT cé tén Load vio khéng gian lim vige- oad x Doe gid tri ciia bién x ti file MAT e6 tén I Load x y z Doc gid tri cic bién x,y,z tir file MAT cé tén 1a Néu Iénh Load, Save 6 tham s6 ASCII thi Matlab doc/ghi file theo cdu tric text. 2.3. MA TRAN TRONG MATLAB 2.3.1. Ma trfin (matrix), veeto (vector) vA vO huéng (scalar) Trong Matlab m@t bing m dong, n ct goi li mt ma trin mxn, Vector la ‘ma tr mot dong hoe mot e6t. V6 hurémg ki ma trin 1x1 (tuong dong v6i mot gid trj). Matlab hé tre cdc kiéu v6 huéng: thye, phite, ki ty. Xu (chudi - string) trong Matlab 1 mét vector cé cde phan tir kiéu ki ty. ‘Ngoai ma trin 2 chiéu nhu trén, Matlab cdn hé trg ma tn nbiéu chiéu (méi phan tir cia ma trin khi d6 khong phai la mOt v6 hung ma la mot vector hay mt ma trin). Tuy mhién tit ca cde phan tir cia ma trgn phai cé cing mot kiéu. Do cé thé coi vector va v6 huéng 1a cac ma tran die biét nén tir day néu chi néi “ma tran”, ta ngim hiéu 6 cé thé 1a vector, v6 hung. Dé cho dé thdy hon, trong khod luan nay, tén bién v6 huéng thedng dugc viét turing, tén vector, ma tran thuedmg duege viét hoa. Ki phap dinh nghia ma tran trong Matlab 1a cap [ ]. Ma tran duge mé ta timg dong mét, gitta céc ding cich nhau béi dau ; gitta cdc phan tir trén cing mbt dong cdch nhau béi dau phan tich nhu déu cach, tab... 125 Vidymatrin 4 5 6) durge m6 ti trong Matlab la [1 2.3; 45 6; 789]. 788 Phin tir dong i, ct j cia ma tran A viét 1a A(ij). Néu chi viét A(i) thi Matlab hiéu 46 1a A(L.i). Con dé xac dinh vector dong i eiia ma tran A thi phai vidt 1 A(i,:); tuong ty dé xde dinh vector ct j ca A thi vidt 1a A(.,j). Ki higu : day hiéu 1a “tit 0a”. 2.3.2. Mot sb ma tr§n, vector diie bigt 6 ‘Viét trong Matlab | Y nghia a Ma tran rong eye(n) Ma tran don vi cdp n zeros (m,n) ‘Ma tran toan phan ti 0c mxn ones (m,n) ‘Ma tran toan phan ti 1 cd mxn arb Vector céc phan ti tit a dén b, d6 léch 1a 1 hay -1 tuy thudc aon hom hay nh hom b. Vi dy 1:5 sinh ra vector (1 2 3 4 5]; 3.6:2 sinh ra vector [3.6 2.6] a:d:b Vector cde phan tir thye tir a dén b, véi khoang chia d. Vi dy1:0.5:3.1 sinh ra vector [1.0 1.5 2 2.5 3.0] 2.3.3. Cac phép toan véi vo huéng Bing sau mo ta céc phép tofn thyc hign véi 2 gid tri v6 hudng. C6t két qui :m6t td cho truémg hop a=3; b=1.2 ‘Viét trong Matlab | Y nghia Két qua ath Cong 2 gid tri | 4.2 ab Trt 2 gid) | 2.8 atb Nhan 2 gid tri | 3.6 a/b Chia 2 git) [2.5 a‘b Luythira a’. | 3.7372 ‘Thir tr wu tién todn tir trong Matlab gidng nhur cic ng6n ngit ip trinh: ww tién cao nhdt la déu ngode, tiép dén la phép lug thita réi nhén chia trude, céng trie sau tie tréi sang phi. Cée phép todn trén (ngoai trir phép luy thira) con thye hign duge déi v6i mot ma tran va m9t vo huéng (vector 1a trubng hop die bigt cia ma trdn), Khi d6 két qua sé 1a mt ma tran cing cd ma mdi phin tir cia ma trfn nay I két qua cia phép toan giira vo huéng va phan tir tong img cia ma tran ban dau. Vi du: néu gin Bea*3; A 1 mOt ma tran eG mxn thi B cing Li mot ma trin c& mxn vB (4, 9) =A (4, 4) 93. 2.3.4. Céc phép toan véi vector "7 Céc phép ton véi vector thyc hign véi 2 vector cing ed, két qui li mot ‘vector cing 3, trong dé mdi phan tir cia vector két qua la két qua cia phép toan gitta 2 phan tir tuong img ciia 2 vector ban dau. Tite la néu C=a. “B thi (4) =a (4) “B(4) Trong bang sau c6t két qua img véi A=[4 3]; B=[2 1] Viét trong Matlab | Y nghi Két qua AB Céng vector | [64] AB Tritveetor | [22] ASB Nhén vector | [8 3] aL/B Chia vector | [2.03.0] a8 Luj thi — | [163] ‘Ngoai ra ta cdn thyc hign duge cdc phép toan 46 gitta Gt vector vi mgt vo huéng (nhu da trinh bay & phan vé cdc phép toan vGi v6 huéng). 2.3.5. Cac phép toan voi ma tran ‘Voi 2 ma tran cing c@, ta c6 thé thyre hign cde phép todn nhur cée phép toan ‘vai vector & trén (két qua cing 1a mét ma trin cing c3, mdi phan tir la két qua ca phép todn véi 2 phan ti trong img). ‘Viét trong Matlab | ¥ nghia AB Cong, tri, nhin, chia, lay luy thira 2 AB ma ten cling kich meee thuée nh phép A./B todn vector. AB ‘Ngoai ra ta con thye hign duge cde phép todn dé gitta mot ma trdn va mot ‘v6 hung (nhu da trinh bay & phan vé céc phép todn voi v6 hudng).. Matlab cdn e6 eéc phép toan sau déi voi cée ma tran: ‘Viét trong Matlab Y nghia ANB Nhan 2 ma trin A(m,n) va B(n,p), durge ma trin C(m,p) ma cde phan tir xc dinh bai: 8 C6.) =YAGH)* BE.) eH ASB’ Tich v6 huéng 2 vector dong A,B cé cing sé phan tir. a Ma trin chuyda vi ein A. Néu gin Baa’ vi A o@ mx thi Bcé cd nxm va B(4, 5) =A(5,4). Vector dong i. AG 3) Vector ebtj. A(x,y) Trich ma trfn con: x,y la 2 vector mé ta chi sO dong va Ot. A(xy) la ma tran con trong dé cae phan tir 1a cde phan tr ciia A e6 chi sé ding va e6t mé ti trong x va y. Tite la néu gin Bea (x,y) thi B(4, 5) =A (x(4) -¥G)). C6 thé ding thém ki higu : dé lay toan b6 dong hode c6t. eshape(A,m,n) ‘Djnh dang Iai ma tran A thinh ma tran m dong, n c6t rot90(A,k) Quay ma trin A 90°, nguge chiéu kim déng ho k Ian. ak Luy thita ma tran: tinh ma tran A* (nhan A k lin), chi ap ‘dyng véi ma tran vuéng. inv (A) ‘Cho ma triin nghich dio cia A. Chi 4p dung véi ma trin vudng triu(a), tril (a) Cho ma tran tam gide trén/dudi cia A. 2.4. CAC HAM THONG DUNG TRONG MATLAB 2.4.1. Mét sé ham toan hgc théng dung Matlab c6 céic ham todin hoc thong dung nhu lugng gidc, logarit... 18 tinh ton, Déi sé cila him 1a vd hung hoc ma trin (vector la trudng hop de biét ciia ma tri). Néu d6i s6 la ma tran thi két qua 1 mét ma tran cing c& ma méi phan tir cla ma tran nay cé gid tri twong (mg véi cdc phan tir ma tran da cho. Viét trong Matlab Y nghia abs (x) Cho gid tri tuyét déi ciia x. x la 86 phite thi cho médun ca x. sart (x) Cain bac 2. Néu mudn ldy edn bac n thi viét x.*(1/a) 9 round(x), £4x(x), Cho két qua la s6 nguyén tuong img: gin floor (x), ceil (x) x, gin 0, gin 0 va gin +20 nb rem(x,y) Cho phan dur cia phép chia x/y, tite 1A x mod y.x div y chinh la floor (x/y) exp (x) e log (x), 1ogi0 (x) Inx, Igx (tong img). sin(x), cos(x), tan(x) Cac ham Iugng gide sin, cos, tg. x lay don vi radian, asin (x), acos (x) | Céc him hong gide aresin, arccos, arctang atan (x) atan2 (x,y) Cho aretg cia y/x trong khoang -x dén 7, tuy thude vao dau cia x,y 2.4.2. M6t s6 ham vector Cac ham sau thye hign cho vector, néu d6i s6 la ma trin thi két qua la ‘vector ma mdi phan tir tinh toan tuong img véi cc cSt cia ma tran. Viét trong Matlab Y nghia sum (X) ‘Tinh ting cde phan tir tia vector X. mean (X) ‘Tinh trung binh eng ede phan tir cita vector X. Gan ia] =max(X); | Tim phan tir Ion nhdvnho nhét cia X. xm 1a gi [xm ia] =min(x); | id la chi so. norm(X, p) ‘Tinh chudn bac p cla ma tran hay vector X, mic inh 1a bae 2. length (x) ‘Cho 86 phan tir cia X. im al= size(Aa) Cho kich thuge ma trin A. 2.4.3. Mot s6 ham xir li am thanh Matlab c6 mt s6 ham xir Ii am thanh sau: Viét trong Matlab Y nghia y oe tin higu Am thanh tir file wav cho bai xéu fel-wavread(wavfile) | wavfile, y la vector mé ti tin higu am thanh | (€é gid tri thye tir 0 dén 1), fs 1a tin sé ay mau | (eid tri nguyen) wavwrite(y,£s,wavfile ) Ghi tin higu 4m thanh tir file wav cho boi x4u_ wavfile, y la vector m6 ta tin higu am thanh, f la tan s6 lay mau, sound (y) Phat ém thanh ra loa, y la vector m6 ta tin higu 4m thanh. yewavrecord(n, fs) Ghi am (tir micro) v6i tan s6 lay mau fs van miu. Két qua la vector y. Doan Iénh sau ghi am trong 2 gidy véi tin sé lay miu 8kHz, phat Iai ri ghi vao file: yewavrecord(16000, 8000); sound (y) + wavwrite (y, 8000, ‘temp.wav’) 7 2.4.4. Cac phép toan sd phite Khac véi cdc ngén ngit lap trinh théng dung, Matlab cho phép tinh todn truc tigp vai s6 phite. Ngoai cdc phép todn thong thudng gidng s6 thye nhu cng, trir, nhan, chia, véi s6 phite cdn cé mt sé phép toan va him sau, Cot két qua viét vi dy déi véi x=a+bi. ‘Viét trong Matlab Y¥ nghia ‘Két qua TG) Phin thye a imag (x) Phan ao b conj (x) S6 phite lién hop | a-bi ‘abs (x) ‘médun Vea? angle (x) argument arctg(b/a) ad Ki higu don bi do. ‘Cach viét phép ton va goi him véi sé thue va sé phitc hoan toan giéng hau, Cac phép tofn hay him nao thyc hign duge véi sé phite cho két qua la sé phire tuong ting 2 2.5. LAP TRINH MATLAB. 2.5.1. Churong trinh ngudn (m-file), ham vA script Matlab hd trg 2 ché 4 hogt déng: hogt dng theo giao dign ding Iénh hoe theo chuong trinh. Giao dign ding Ignh cho phép ngudi ding gd Iénh va may hién thj két qua trong cira s6 lénh (cé thé tham khao mot s6 lénh 6 phan 1.3). Tuy hin dé nding cao higu qia sir dung Matlab thi phai lap trinh. Chuong trinh trong Matlab e6 2 dang: script (kich bin) hoi function (him). Chuong trinh nguén Matlab duge luu vao céc file text 6 phn mé réng la 1m ( goi ld ede m-file) va tén chuong trinh durge xe dinh qua tén file. Script va function du li day céc Iénh Matlab. Cé mét khic bigt cor bin: ham cé thé nh§n déi sé va tra lai két qua, cdn script thi khong. Khi g6 lénh chita tén ham hay kich bin, may s® thu thi day cde Iénh trong img trong chwong trinh nguén nhu IA chang duge gé trong cita sé Iénh (néu 1a Iénh goi ham thi con them cae thao tac truyén tham sé vao-ra, tgo va huy bién dja phuong...) Sau day la vi du v la dtev.m, thye hign tinh ton dign tich va chu vi hinh chit nhat v6i tham s6 vio la 2 canh ab. function (2, pl = dtev(a,b) % Ham tinh dien tich va chu vi hinh chu nhat vim dtev, duge liu trong chuong trinh ngudn dat tén seatb; p= 2*(a4b): Cée quy tie viét ham: 1. Ham phai duge bit dau bing tir khod function, sau dé lan luot 1 tham 86 dau ra, dau =, tén ham, dau (, céc 46i s6 (tham s6 dau vaio) va diu ). ‘Néu cé nhiéu tham sé dau vao thi ching phai viét céich nhau bing dau , ‘Néu cé nhiéu tham sé dau ra thi chang cing phai viét cach nhau bing dau , ‘ya 06 cp dau [ ] bao ngoai. 2. Chi thich trong Matlab 1a chu thich trén dong. Bat dau bing ki ty %, sau dé cho dén hét dong 1a ni dung chai thich. ‘Néu chi thich viét ngay sau khai béo ham thi khi ding Iénh help , ndi dung phan chi thich dé sé durge Matlab hién thi. 3. Céc két qua cia him duge xée dinh qua céc tham s6 dau ra. Vi vay trong thin him phai c6 cdc déng lénh gin gid tri cho ching, 4, Ngoai trir cc tham sé vao/ra, tit ca cdc bién bén trong him déu La bién dia phuong. Ching duge tao khi c6 Iénh gan dau tién va bi xéa sau khi két thic ham. Nguge lai, bién trong script thi ludn 1a bién toan cuc. 5. Loi goi him: Lénh goi ham cé dang nhu khai béo him, chi khéc la khéng duge ¢6 dau ; gitta cac tham 6 dau ra. Teede than 06 diu ra>]= (cdc tham #6 diu vao) Tuy nhién Matlab cho phép sé tham sé dau vao, dau ra it hon sé tham hinh thir, Ngudi lap trinh cn ding 2 ham nargin va nargout dé xc dinh s6 dau vao, dau ra thyc sy trong lai goi ham (chi y: Ching han ta cé thé ding Idi goi him sau dé tinh dign tich va chu vi hinh_ chit nhat kich thude 4x3: Tae ev] = dtve(4,3) ‘Néu chi quan tam dén dién tich ta c6 thé goi: at = atve 3) Tuy nhién wink te ruyén tham s6 ctia ham wong Matlab la ti tat sang, vi vay néu chi can két qua li chu vi, khong quan tim én dign tich ta van phai goi ham nhu edu Iénh dau tién, khdng thé diing cdu Iénh sau. ev = deve (4,3) Vi néu goi nhu vay, ev sé bj gan gia trj 12 cua dign tich. So sinh véi céc ngén ngit khéc chiing ta cé mot s6 nbn xét © Matlab cho phép ham tra lai nhiéu két qua. ‘© Matlab cho phép sé tham sé thyc sy it hon sé tham sé hinh thite. © Matlab khong xée dinh kiéu ciia tham s6 hinh thire va kiém tra kiéu cia tham sé thye sy. Ngudi lip trinh phai ty xac dinh lay. 2.5.2. Cae cau tric digu khién chung giéng Pascal, ngoai trir dc tric khéi begin end nén thudng cdc céu tric digu khién trong Matlab cho phép c6 nhiéu céu Ignh con va két thic bing end. 2.5.21. Lénh gan Lénh gin trong Matlab la =cbigu thée> Khi thye hign lénh gan, néu chua tn tai thi Matlab sé tao ra bién cd kidu va kich thude tring ve bién. O day: c6 thé 1a: ki phap dinh nghia ma tran, 10i goi ham, bién, phép todn véi cdc biéu thite khac... ‘sau dé gan gia tri cia cho. 2.5.2.2, Lénh ré nhénh Matlab 6 mét s6 Ignh r8 nhénh sau: 1/ Lénh if don Ca php: if end; Thue thi: Lénh nay kiém tra gid tri cla , néu két qua ld ding (khée 0) thi thye hign , 2/ Lénh if else Cli php: Tf else ends Thye thi: Lénh nay kiém tra gid tri cla , nguye Iai thi thyc hign . 3/Lénh if elseif’ Ca phip, Tf elseif cbidu thie logic 2> 28 end; Thy thi: Ding elseif thi tong ty nhur ding else sau 46 6 mét cfu Iénh iff Tf else 1€ cbidu thge logic 2> Tuy nhién ding elseif thi chuong trinh sing sta hon, khong phai thém cde tir hod end & cud 2.5.2.3. Len lip Matlab 6 2 loai lénh ip: Iénh for va lénh while, 1/ Lanh for Cai phap: for = ends Trong dé la m@t bién, li vector, ma tran hofc gid trj vo huéng. Quy tic sir dung: ‘ la ma trin rong thi vong for khng thyc hign. © Néu la gid tr vo hudng (ma tran 1x1) thi duge gn bing gid trj vo huéng 6 va thye hign ding mét lan. © Néu la mét vector (ma tran nx1 hogc xn) thi thye hign n lan, mdi lan nh§n mét phan tir cua vector (ir trai sang phi). 25 © Néu 1 mét ma tran (ma tran mxn) thi thye hign m Lin, mdi lin nhan mot vector cOt cla ma tran (tir trdi sang pha). 2/ Lénh while Ca phap: while end: Thy thi: © Néu ding thi thye hién . © Thye hign xong Iai quay Igi kiém tra va thye hign cho dén khi nhém lénh sai. * Trong vong lip for, while c6 thé sir dung Iénh break dé ngat. Khi gp Ignh break Matlab sé két thie vong lip ngay Ip tite. 2.5.3 Biéu thie logic ‘Nhu & myc trén ta thy trong cde cdu trie diéu khién, ta ludn cin cdc bidu thite logic. Trong Matlab gid tr} 0 durge coi la sai (false) cin moi gid trj khéc 0 durge coi la ding (true) (giéng nhu trong C). G cée ngén ngit lap trinh thong thuring ta chi gip cae biéu thire logic co gid trj la mot v6 hurég (chi 1 diimg/sai), nhung trong Matlab thi biéu thite logic c6 aia tri JA mot ma tran (ma gid tr] vo huéng Li mot trudmg hop dc bigt: ma tran 1x1). 2.5.3.1 Cée phép toan quan hé Matlab c6 cae phép toan quan hé sau v6i 2 ma trén cing 08: ‘Todn tir | ¥ nghia ‘Vi du cach vide < Nhé hon ACB Nhé hon hodc bing A(1,2) Lén hon A>3 ‘Lén hon hode bang Bang nhau (cha ¥: khae voi dau = 1a todn tir = Khac nhau Phép so sinh ma tin véi v6 hudng c6 két qua li mdt ma trin cing &@, trong dé mdi phan tir ciia ma trén nay la két qiia so sanh tuong img phan tir ca. ma tran véi v6 huéng: 1a 1 néu ding, 1a 0 néu sai. Vi dy: néu viét Ifnh C=A>3; trong d6 A,C 1a cde ma trén mxn thi ¢ eiing ki mot ma tran mxn, C(i,j)=1 néu A(ij)>3 va bing 0 trong trudng hgp nguge lai. Phép so sinh 2 ma trn cing c& (2 gif trj v6 huréng la 2 ma tran 1x1) c6 két qua 1A m6t ma tran cing 6, trong dé mdi phn tr ld két qa so sénh tuong tmg 2 phan tir cua 2 ma tran: la 1 néu ding, 1a 0 néu si ‘Vi du: néu viét Ignh C=A>B; trong dé A,B 1a cdc ma train mxn thi C cfing A mét ma tran mxn, C(ij)=I néu AGij)>B(ij) va bing 0 trong trudng hop nguge Iai. 2.5.3.2. Cae phép todn logic Phép todn logic trong Matlab hgp 1¢ néu két hgp 2 tran cling kich thuée chi toan céc phan tir 0 va 1. Két qua cia phép toan logic 14 mét ma tran cing kich thude ma méi phan tir li két qua phép toan logic tuong tig cita timg phan tir 2 ma trén ban dau. Todn tir | Y nghia ‘Vi dy cach viét & Phép and logic | a>=0 & ace3 | Phép or logic | a>b | ace 7 Phép not logic | ~(a>=0 & ac=3) Bang két qua phép toan logic ( fi vO huéng) a > -ajalb. [asb false |false [true |falee | false false |true [true [true | false true |false |false [true | talee true |true | false |true | true 2.53.3. Mot sé ham quan hg va logic a Matlab hé try nhiéu ham cho gid trj logic. Sau day 1a mt s6 ham: Loi goiham =| ¥ nghia any (x) Chi cho gid tri true (1) néu tn tai m6t phan tir cla x khdc 0 all (x) Chi cho gid trj true (1) néu tat a cdc phan ti cita x khdc 0. isempty (x) | Tra lai true (1) néu x la ma tran rong. isstr(x) ‘Tra lai true (1) néu x Li mot xdu (ma tran ki ty). find (x) Két qua la m6t vector o6t chira chi s6 cac phan tir khéc 0 ctia x. ‘Néu x 1a mOt ma tran thi Qué trinh nhan dang mu (ca 6 pha hudin luyén hay pha nhan dang) déu trai qua bude giai dogn 1a trich chon dje trumg (feature extraction). Bude nay thye hign cdc phan tich phd (spectral analysis) nhiim xdc dinh cdc thong tin quan trong, trung, dn djnh cita tin 1g ndi, ti thigu hod anh hudng ciia nhigu; xite cam, trang thai, eich phat am cia ngudi ndi; gidm khéi Ingng dit ligu edn xir Mie di khong mang tinh quyét dinh nhung giai doan trich chon de trmg, nh huréng rét lon dén higu ning nbn dang. Vi vay vige Iya chon dic trmg cho tin hiéu tiéng néi rit quan trong. Cé nhigu phuong phép trich chon dec trumg da va dang duge sir dung (FBA, MFCC, LPC, PLP...). Méi phuong php cé nhiing uu diém va nhuge diém riéng. Hign nay MFCC (Mel-scale Frequency Cepstral Coefficient) duge sit dung pho bién nhat. Vi vay ching t6i sir dyng MFCC lim dic trumg cia hé nh§n dang duge trinh bay trong khod tuan nay. ‘N6i dung tigp theo cia chuomg nay trinh bay vé phuong phap tinh dc trung MECC va toolbox VoiceBox cita Matlab ding trong xt It tiéng néi 3.1. TRICH CHON DAC TRUNG MFCC Cac hé nhgn dang tiéng néi thutng téch dic trung tir tin higu bing c: chia tin higu thinh céc doan d6 dai 5-15 ms, mdi dogn goi la mot Khung (frame), Trong khoang thi gian ngin nhw vay, phé cua tin higu dit én dinh 4é tién hanh_ tach dic trung. MGi frame sé cho dje trung la m6t vector va dic trmg cita toan, 6 tin higu sé Li m6t dy vector. MFCC Ia phuong phap trich dic trung dya trén dic diém cam thy tin sé cia tai nguvvi: seyén tinh adi voi tin sé nho hon [kHz va phi tuyén adi voi tin sO trén Ik (theo thang tin sé mel, khéng phéi theo Hz). MECC Ii phuong php tich die trung dya trén sy cim thy cia con nguvi nén thwong cho két qua nhn dang cao nhiit (theo [12]). Vi 18 dé rit nhiéu hé théng nhan dang tiéng néi str dyng MFCC lam dic trumg. 3.1.1. So dé khdi cita qua trinh tinh MFCC ‘Déi véi phuong phap MFCC, viée tinh dc trang c6 so dé nhw sau: [ni ea ei Nang ware ‘a MCE Bi ab Fourier ravoc} Minh hoa: So 4 khéi cia qua trinh trich chon dc trung MFCG (Qua trinh tinh todn nhur sau: du tién tin higu tiéng néi duoe chia thanh cée frame €6 d6 dai 10ms. MBi frame s® durge nhin véi mot ham cita s6, thudng 1a etta s6 Hamming sau 46 dirge chuyén sang mién tan s6 nhé bién déi Fourier. Tin higu & mién tin sé duge nhan véi cdc bd Ige mel-scale, ly logarit rdi bién adi Fourier nguge (dé chuyén sang mién cepstral) sé due cdc hé sh MFCC. ‘Mot sé hé théng c6 tinh thém ning long (cing ly logarit) va de tung delta (dao ham réi rac theo théi gian cia MFCC) nhim thém théng tin cho cdc ppha sau ciia qua trinh nhén dang. ‘Cée mye sau trinh bay timg bude qué trinh tinh todn dic trang MFC. 3.1.2. Chia khung va cira sé hoa Tin higu tiéng n6i x[n] gdm L mau durge sau khi duge chia thanh cde khung. 46 rng 10ms (ing véi f3*0.01 miu) sé duge cita s6 hoa bang cach nhan tin higu voi mét him cita s6 46 rong N. x(n) =x, (n)*w(n)n = 0.N=1 ‘Ham cita sd thudng duge ding li ham cita sé Hamming: .N-L w(n) = 054-046 e087") 3.1.3. Bién ddi Fourier rdi rac Tin higu (cia mét frame) sau khi nhan véi him cia s6, durge chuyén sang é 6 bing bién déi Fourier réi rac: XW=Y xe % 3.1.4, Loc qua céc b@ Ige mel-scale Cac b6 Igc mel-scale li cae b6 Igc tam gide, dit céch déu nhau trong mién tin sé nho hon 1kHz va khodng cdch ting theo ham mai trong mién tir 1kHz dén 48/2 (mot nita ci iy miu). 10 — A frequency 19) Minh hog: Cac bé loc mel-scale tam giac (triangle mel-scale filters) Vi M bé loc dé, ta hoan toan xdc dinh dugc hé sé nhan hi(k) cia mdi bé loc. Két qua Ipc déi véi tin higu 6 mién tan s6 qua cée b6 loc duge tinh nhu sau: Fe) = Sh, 06.1 Xk) |si= 1M X(k) la s6 phite nhung théng tin vé pha cua X(k) khéng quan trong nén ta chi tinh két qua loc véi modun ciia X(k). ‘Vige nbn tin higu & mign tin s6véi céc bé loc mel-scale dé chuyén biéu dién mién tan sé tir thang Hz sang thang mel. Mye dich 1a phan giai tan sé (frequency resolution) theo dic diém cim thy 4m cia con ngwi: tuyén tinh trong mién duéi 1kHz va phi tuyén trong mién trén 1kHz. 3.1.5. Logarit va bién déi Fourier nguge Lay logarit cia tin higu @ mién tan s6 (spectrum) r6i bién doi Fourier nguge sé dura tin higu vé mt mién goi ld cepstrum cé don vi théi gian (thuat ngit la cepstrum dao nguge cla am dau tién trong tir spectrum: spectrum + cepstrum). Bién di tir spectrum sang cepstrum la mét 3 (homomorphic). Theo [9] bién déi déng hinh chuyén biéu dién tin higu tie dang tich vé dang tng, nu vay cho phép sit dung cdc hé tuyén tinh dé xi li cae tin igu Khong tuyén tinh, (Céing thie tinh eta bu6e nay la Tog FCs) os? =D e(n} ys Cha ¥: mac di bién déi tir spectrum sang cepstrum 1a bién déi Fourier nguge, tuy nhién do ta ding spectrum va cepstrum thy nén chi sir dung bién déi cosine rai rae (DCT) dé tang higu nang tinh toan, Sau bude nay ta duge vector cepstral (6 46 do mel) p thinh phin, Thong ‘thuimg ngudi ta thudng nhan thém vao két qua mOt ham cita s6 sng sin (ggi la tha tyc liftering) dé giam bét anh hudng ciia cdc bién déi dén két qua. L im 214 sin win) =145 sine e(n) = e(n):w(n) 3.1.6. Tinh toan ning lugng Kem thém thong tin vé ning Iuong cia tin higu s® ting thém thong tin cho nha dang (vi dy: phan bigt ede khodng chita tin higu am va khoang King, phan bigt ving tin higu chita nguyén 4m va phy Am...) Nang lurgng cia ed frame duige tinh qua cdng thie: E= Yim)? 3.1.7. Tinh toan dic trung delta Die trimg delta 1a dao ham bée nhit (roi rac) ela dc trung theo thdi gian, Cé cée dae tramg delta sé ting thém thong tin cho nhan dang (ching han: xée dinh cdc ving ma phé tin higu én dinh...). Dac trang delta duge tinh theo céng thire: a x CW=— Ct)= Yuctt+u) a er Trong dé C(t) 1a ca vector cepstral tai théi diém t. T 1a mét hing sé chon. trudc, thutng thi ngudi ta lay T=3. 3.2. TOOLBOX VOICEBOX TRONG MATLAB VoiceBox li mét toolbox cia Matlab chuyén vé xit li tiéng ndi do Mike Brookes phat trién. VoiceBox yéu cdu Matlab phién ban 5 tré lén. VoiceBox gém cae ham cé thé chia thanh mét sé nhém chife ning sau: © Xir li file 4m thanh (dgc, ghi file wav va mét sé dinh dang file am ‘thanh kid) © Phan tich phé tin higu + Phin tich LPC * Tinh ton MFCC, chuyén déi spectral - cepstral © Chuyén déi tin sé (mel-scale, midi,...) © Bién déi Fourier, Fourier ngugc, Fourier thyc. Tinh khoding eich (sai Iéch) gitta cdc vector va day vector. Logi trir nhigu trong tin higu tiéng néi Tuy nhign chite ning quan trong nat 1a ma 6 day la 2 logi pho bién nhat LPC va MFCC. Ham tinh MFCC eta tin higu trong VoiceBox la ham meleepst: ich dic trung tin higu tiéng ni, cemelcepst (s, f6,w/nc/pyn, inc, #1, ER) Ham c6 rat tham sé, m6t sé tham sé quan trong la: © 5 la vector tin higu tiéng néi (6 duge sau khi ding him wavrecord hoc wavread), fs la tan s6 lay mau (mjc dinh 1a 11050). © nc la s6 hé sé MFCC can tinh (tite 1a s6 phan tir cua vector dic trung. Mie dinh la 12, trong nghién ettu chiing ti chon la 8). © plasé bé loc mel-scale. © w la mot xu mé ta cae Iya chon khie: néu c ning lugng, ¢6 ‘A thi tinh thém de trung delta. Mie di vay ham 6 thé goi mt cdch don gidn la cemelcepst (5,6) 1 Léi goi him sinh ra ma tr c, méi dong cia ma tran la 12 hg so MFCC cia mt frame, Bé kém thém log nding long va dit ligu delta nhur trong eéc hé nan dang khic, ta ding Kenk: camelcepst (5, f8,/ed’)i hi d6 mai dang oda c vector 26 hé s6 MFCC cia frame tuong img. Ham meleepst durge chiing ti sir dung dé hé théng nhn dang duge trinh bay trong chuong 5. chon de trung MFCC trong CH JONG 4. MANG NORON NHAN TAO BO no con ngudi, dusi géc d6 tinh ton cé thé coi La mét hé théng xtr li song song dn va mit 49 két néi cao: phin tir xir Ii 1A cdc no ron la mt va két ndi 1A cde day than kinh, Kha ning tuyét vai cia bé nfo da goi nén nhimng y tuéng vé vige m6 phong. ching trong Tinh vwe tinh tofn, Va mang no ron nhan tao (artificial neural network -ANN) la két qua ciia nhimg y tuéng do. 4.1. MO HINH MANG NO RON C6 nhiéu mé hinh mang noron khdc nhau. Mé hinh mang don gidn va phd bién nhat 1a m6 hinh mang perceptron truyén thing nhiéu lép (multi layer perceptron - MLP). Dé la mé hinh mang ching tdi sir dyng trong h§ nhan dang duge trinh bay trong khoa lugn nay. Ban doc quan tim cé thé tham khao thém vé mang noron trong [4, 8,11]. 4.1.1. M6 hinh mOt noron perceptron ‘M6t noron perceptron 1a mét phin tir xit li gom: © n dau vio x,, méi du vao img véi mét gid tri thy w; goi la trong sé. © Mét gid ti thye b goi li nguing (bias). © Mét him kich host f © Giétriray. ‘Minh hoa: Mé hinh mt noron perceptron Gia tri ra cua perceptron dugc tinh theo quy tic sau: u=Sox,w, +b a y= Him kich hoat duge sir dung phd bién la ham sigmoid (edn goi a ham logistic) do tinh phi tuyén va kha 1 f(u)= w=7, Ngoai ra con c6 mét s6 ham kich hogt khée: ham tang hyperbolic (tanh), ham softmax. Kha nng tinh todn cia mét noron perceptron khé han ché. Dé cdi thign ‘ngudi ta néi ching thanh mang. M6 hinh mang don gin nhit 1a mang perceptron. truyén thiing da lop MLP. 4.1.2. M6 hinh mang noron MLP Mang noron MLP n dau vao, m dau ra cé mé hinh nhu sau’ © Céc noron duge chia thanh cdc Iép: lép sau duge néi véi lop truée. Lép dau tién 1a lép vao (input - nhan dau vao), lép cudi cling 1a lép ra (output - cho dau ra). Gitta lop vio va lép ra la cdc lap an (hidden), Théng thing chi cd mét lép An. © Tit ca cée noron cing mét lop sit dung chung mét vector dau vio. ‘Mi lép khi nh§n mt vector dau vao sé tinh dau ra cia méi noron, két hp thinh mot vector va léy d6 lim diu vio cho lép sau. Mang MLP nhan diu vao la m6t vector n thanh phan, lay 6 lam dau ‘vao ciia lép input va tinh toan cho dén khi lép output cé dau ra, lay 45. 1i dau ra ciia mang: mét vector m thinh pha * Toiin b6 cac noton ciia ton mang sir dung chung mét ham kich hoat, thurdmg 1a ham logistic. ‘Ngoai lép vio va lép ra, mang MLP thug cé mt hay nhiéu lép an. Thong thuromg ngudi ta chi str dung mét l6p dn. Vi vay d6i khi nguéi ta hay déng nhdt MLP véi MLP 3 lép. input layer ‘Minh hog: Mé hinh mang perceptron 3 lop (MLP) Nhu vay xét dui géc d6 toan hoc mang MLP biéu dién m6t ham phi tuyén ti R" vao R™, Ngudi ta cling chimg minh duge ring: “mt ham phi tuyén lien tue bat ki cé thé xdp xi voi d6 chinh xéc tuy ¥ bing mang MLP” (dinb li Kolmogorov-duge nhac dén trong [8]). Mang MLP nxpxm (n dau vao, m dau ra, p noron an) duge biéu dién bing 2 ma tran trong sé w; c& nxp, w2 cO pxm va 2 vector ngudng b, p phan tir, by m phan tir, (Lop input cia MLP chi cé tic dung nhjn dau vao, hoan toan khéng ‘hye hign tinh todn). Khi dé tinh toan dau ra y ciia mang theo dau vao x nhwr sau: O day, u, v, zi cdc vector. Viét z=f(u) c6 nghia 1 z=f(u;) voi moi i. Dé biéu dién dirge mét ham nao 46, mang MLP can durge hudn luyén. 4.1.3. Hudn Iuyén mang noron MLP DE mang noron biéu dién duge ham f, ta can mt b6 dit ligu gom N c&p vector (x, )) trong dé x; thude tp xée dinh cba fv t, 1 gid tr eta f tai x; Ha fx) Mang MLP sé biéu dién duge ham fnéu cho dau vao cla mang 1a x; thi dau. 1a cia mang 18 t,. Thuong thi MLP chi biéu din durge xp xi him f, do dé ta mong muén néu mang cho dau ra thye té la y; thi y; cdng gan t, cng tot. Nhu vay bai ton huan luyén mang la cho b@ dif ligu hun Iuygn gom N cp vector (x, t}), cm digu chinh cdc trong sb cia mang sao cho tong sai sé cia mang trén b6 dir ligu 1 nhé nat: E=}jt,-y,| min Trong dé yj la dau ra thy t8 cia mang img voi da 0 Xi. ‘Thuét toan hudn luyén MLP phé bién nbat la thugt toan lan truyén nguge Ii (back-propagation training). Thuat toan c6 dau vao 1a tap miu {(x,, t)}, diu ra 1a b@ trong sé cua mang. ‘Cée bude tién hanh hudin luyén nhu sau: 1/ Khoi tgo trong s6 cla mang: wy duge gin ede gid tri ngdu nhign, nho (nam trong mién [-c1, o¢]). 2/ Voi mdi cap (x,t) trong bé dir ligu hun Iuyénz xq). Ta thye hign: 1. Lan truyén x qua mang dé cé y (theo céng thite myc 4.1.3). 2. Tinh sai s6 e ciia mang: e=t-y. 3. Higu chinh cdc trong sé lién két noron dan t6i Iép ra w3 tir noron j tai 6p an ti noron i tai lop Wy = Wy + Awy Gia sir (x) ww, la trong s6 gitta noron i & 1ép trude vi noron j & lép sau. Awy duge tinh theo cng thire sau: Hi Hn a res ee © plahiing s6 tc d hoe (learning rate), thudng lay bing . © y; la dau ra ciia noron i (néu i [a noron Iép input thi thay y; bang x). © 8, 1a sai s6 tai noron j. Néu j la noron Iép ra (output layer) thi 8, durge tinh theo e6ng thie: 5 = yyw) ‘Néu j [a noron Iép An thi dirge tinh theo cng thite: -WLAWa F trong 6 k la céc cdc noron cia Ip sau lip cia j. 4 ‘Vigc dua miu hudn luyén qua mang, tinh todn va c§p nhit trong sé duge tién hanh véi tt cd phdn tir trong bd miu (cé thé chon ngdu nhién hode tudn ty). Qua trinh sé dimng lai khi sai s6 trung binh (hoac tng sai s6) nho hon mét gid tri cho tnéc hoc thay ddi khéng dang ké (tite 1a qua trinh hun luyén hdi ty). a7 4.1.5. Uu diém va nhuge diém cia mang noron Cac nghién ciru cd vé mat li thuyét va thyc té cho thay mang noron cé nhiing wu diém sau: © C6 thé xp xi mot hé phi tuyn dong (nonlinear dynamical system) véi 0 chinh xc bat ki. * C6 kha nang mién nhigu (robustness) va chju sai hong (fault tolerance) cao. Ching han mang ¢é thé nhgn eéc dit ligu Ich hodc khéng day di ma van hoat dong dug. * C6 kha ning thich img: mang noron cé. “hgc” (learn) va “digu chinh” (adapt) trong qué trinh hoat dong. Day li diém dang cha ¥ nbdt cia mang noron trong nh§n dang tiéng néi. Dac diém nay cua mang cho phép ta hi vong xay dymg durge mét hé nhin dang c6 thé “hoe tip” dé ning cao kha ning nhin dang trong khi hoat dong, © Cé kha ning tong quét hod (generalize) tét va phin lép (classify) mang ‘Nhung mang noron cing khéng phai 1a céng cy van nang cho moi van 48, vi ching cting cé nhiéu nhuge diém: © Chi xir li duge cae dit ligu sé. Can tich hop thém nhiéu thanh phan hic (vi du: efe hé md, cic 69 s6 hod...) 48 c6 thé xir If nhitng dit ligu phi sé. © Higu nang cia mang phy thudc b6 dif ligu huan luyén. Dé dim bao higu nang, mang cAn duge hudn luyén véi lwgng dit ligu lon. Qué trinh ‘hudn luyén do 46 rat dai. Mat khéc néu b6 dé ligu duge chudn bj ‘hong tét thi mang c6 kha nang téng quat hod thap. Mang noron gan nhu 1a mét “hdp den” d4i vai cdc phan tich. Rat kho xée dinh duge sy phan bé théng tin va xi li trén cdc phin tir cia. ‘mang. © Khéng cé mét phuong php chung nao dé xéc dinh cau tric mang phi hgp timg bai ton, Nha nghién citu phdi tién hanh thir nghigm hode dya vao kinh nghiém dé xéc djnh. © Céc thuat toan hudn luyén hign chua dim bao trinh qué trinh hudn luyén roi vao mét eye trj dia phuong. Hon nia sai sé huan luyén giam khéng dang nghia véi ting higu ning hoat dong cia mang. * Mang cau tric én cai dat bing phan mém trén may tinh hogt d6ng rat cham. Vige xy dymg mang noron bing phan cig van cén dang duge nghién cit. 4.2. SU DUNG MANG NORON TRONG NHAN DANG MAU 4.2.1. Mét phuong phap tiép cn dia vio xac suat phan lép Bai toan nhan dang sé duge giai quyét néu ching ta xay dyng duge mét co cdu nhan dang 06: iu vao li dic trung cia * Diu ra la xdc suat phan lép hodc 6 gidng (likelihood), 49 twong ty (similarity) cua déi tugng véi nhiing lép mau da hudn luyén. ‘Minh hoa: Mé hinh nh§n dang bing co edu nhan dang dya theo xée sudt phan lop Chung ta thay ring cé thé ding MLP dé 1a m6t co cdu nhan dang nhu vay: Néu die trung cita déi twgng li n 56 thye va c6 m Iép mau thi ta sé xay dyng mt MLP n dau vao, m dau ra. Dau vao la cic djc trung cita doi tuyng, dau ra la d6 twong ty cata d6i tugng véi mdi Iép mau. MLP sé duge hudn luyén dya trén bO di ligu hudn luyén duge chudn bi tude dé tim méi lién hé gitta diu ‘vio va dau ra (hge va tong quét hoa). Nhiing vin dé nay sé duge trinh bay ki ‘rong chuong 5. Dac tru 4.2.2. Nhuge diém cia mang MLP trong nhan dang tiéng néi MLP c6 mot s6 nhuge diém sau khi sir dung trong nhiin dang tiéng ndi: = C6 dau vao 6 dinh (trong khi tin higu tiéng ni la yey thay di theo thoi gian: mdi Ln phét €m cho cfc tir e6 dd dai thudng khOngibapg nau). Chi phi hun luyen FUME! Bn, kinong gian hngae. Bac tru: Do dé MLP thuring chi cho két qua cao trong nhiin datBWBOHS tir vung nho va phan bigt (49 tong ty ciia cdc lop mau thap). 4.2.3. Mot s6 phuong phap tiép cin khac Dac tru 39 Ngoai cach tiép cn nhu & phan 4.2.1, cdn c6 nhiéu cach tiép cin khéc déi ‘véi nhfn dang tiéng néi bing mang noron: = Ding mé hinh meng TDNN (mang noron thoi gian tré): 1a m6 hinh cai tién cia MLP, c6 co ché dé tich hyp théng tin vé thdi gian (cdc noron tré) khi dua cic 1g noi qua mang. Mé hinh nay nhim giai quyét van dé vé sw phy thuge thi gian cia tin higu tigng noi. - Két hyp MLP va HMM: sit dung MLP 1a b6 do xac suat phat xq vector t. Cach tiép cain nay két hop wu diém cia ca 2 mé hi quan 4.3. MANG NORON TREN MOI TRUONG MATLAB Mang noron trén Matlab dugc hé tro béi nhiéu toolbox, ching han NNet sin c6 cia Matlab hoge NetLab do lan T. Nabney phat trién, Ching ti sit dung. toolbox NetLab dé xay dyng, hudn luyén va thir nghiém mang noron MLP cho hé théng nhgn dang trong khod lun nay. 4.3.1. Khéi tao mang MLP Lénh khéi tgo MLP trong NetLab c6 efi php nhu sau: mip(inode, inode, onode, func, anpha); Trong dé: © inode, hnode, onode lin ligt li s6 noron cita lip vao, lép an va lép ra. © func la kiéu ham kich hoat, func c6 thé c6 cae gid tri ‘logistic’, seoftmax’... © anpha la ngudng cita gia tri trong s6, thong lay bing 0.01. net Ii mang MLP do him tgo ra. 4.3.2. Hudn luyén mang MLP Mang MLP sau Khi diéu kign khdi tao 06 thé hudn luyén v6i mot bo dit ligu hudn Iuyn cho trade. Lénh huan luygn MLP trong NetLab e6 et phap nhur sau: [net, error] = mlptrain(net, x, €, ite) Trong 46 © x,t li bé dit ligu hudn luyén. x 1a cée vector dau vao, t i cdc vector dau ra can dat dén (target). 1 s6 vong hudn luyén (s6 Hin thye hign thuat toan lan truyén nguge Wi), * net la mang norton. © error la tng sai sé cia Lin hudn luyén cudi cing. 4.3.3. Sir dung mang MLP Sau khi hudn luyén ta c6 thé ding mang MLP dé tinh dau ra img véi cae dau vao bat ki. Lénh tinh dau ra y cua MLP img véi dau vao x nhu sau: Trong dé: © x lamot hay nhit # yl cée vector du ra tong img. vector dau vio Ban doc c6 thé tham khao vi dy vé script va function 6 myc 1.2.2. dé tim hiéu vige sir dyng cdc ham nay. a 5.1. XAY DUNG HE THONG NI 5.1.1. Mé ta chung vé hé thong Hg théng nhgn dang duge xay dyng trong khod Ingn da trén phurong phap nhfn dang mau, sir dung mang noron Lam co c4u nhdn dang. Phuong php: nhn dang tir don (isolate word recognition). Input: file wav, méi file chi chira m@t tir. Hoge ghi am tryc tiép. Output: chit s6 duge nhgn dang trong file dau vio. B6 tir vung: 11 tir don am cae chit sé tiéng Viet (“khéng”, “mgt”, “hai... mudi”), 5.1.2. So dd khdi cita hé thong ‘earchonate |__| ray ayn oso ‘naire oe chat — \ tn [ coms wana, Sanaa Vv 1 a A Se ls NE sty chon ae ane vit / met pes MIN Frama aoc] [ope ma yee eo arcrae wa a gear [amen | carers a ‘Minh hoa: So 8 khdi hg théng nhan dang tiéng néi cae cha sé tiéng Vigt bang mang oron MLP trén méi truéng Matlab Cac phan tiép theo mé ta cy thé timg chite nang cia hé théng. 5.1.3. Thu thap va tién xir li tin ar igu tiéng ne Thu thép va tién xir li tin higu tiéng néi giai doan huan luyén duge thye hign bing phuong phap thi c6ng: sit dung phin mém ghi dm, loc nhiéu va cat thinh cfc tir rigng 18, mdi tir ghi vio m@t file (tn file ghi tir tuomg tg). Bé dit ligu do ching tdi tyr xy dung gd ‘© 536 file wav 16 bit SkHz, méi file la phat Am cia mot ti. © 11 tir la céc chit sé tiéng Vigt tir “khéng” dén “mudi”. (Mac di. “mudi” khong phai la chit 6 nhung vin can trong hé nhan dang chit 6 vi e6 ede s6 phat Am 1A “mudi mot”, “mudi hai”... © 5 ngudi ndi giai doan nhn dang, vigc thu thip va tién xir I igu tiéng n6i) duoc thye hign béi ec 1énh sau: cde viing khéng chita tin % = wavrecord(10000,8000); tin sd ldy miu 6kHz x =x!) $ ghi am ching hon is y= endout (x, 64, 1-5B-3); Ham endcut ding edt cdc khodng King khéng chtta tin higu dm: function y = endeut(e, a, © cat khoang lang ra khoi x. %n 1a 46 dai frame, es 14 nguong ning lugng. x= x - mean(x); if margin < 3 es = 25- end; if nargin < 2 n= 128) end; ye? tex (Lim) 7 eemean(t.*2); ien¢l;In = length(x) - nel; while dcein tex(isien-1); et=mean(t.*2); if -( (elces) | (abs(el-e) nhgn deng ding end gt = [ats 4 4a numid(i) mi ac keli ends ac = ac / length(yte); $0 chinh xéces6 ti ding/téng 5.1.8, Sir dung mang trong nhan dang Ham ANNrecognize thy hign nhgn dang v6i dau vao cho truéc: function (id, xs, out] = ANNrecognize (wav net)? mfc = wave2mfcc (wav); ¥ trich MFCC vec = vecavr(mfc,5); tinh dau vao out = mipfwa(net,vec); tinh déu ra cha mang [xe ia] = max(out); ¢ dua ra 1ép cao nhdt 5.1.9. Giao dign phan mém demo Phan mém demo cé thé nhjn dang ca tryc tuyén (vira ghi am vira nhén dang) va ngoai tuyén (nhan dang file dugc ghi 4m sin). Mdi Lin chi nhan dang duge mot tit. Nhin chung nhén dang ngoai tuyén cho két qua cao hon vi ham cat khong. ling cua phan mém demo cé 46 chinh xc chua cao, a7 5.2. KET QUA THU NGHIEM Két qua qua trinh thir nghiém duge téng hop trong bang sau: node 5 10 16 20 25 30 35 40 45 50 55 60 65 70 5 80 85 90 95 100 105 110 118 120 125 130 138 140 145 150 TB. sigo1-50 27.61% 53.36% 2.48% 66.42% 92.16% 94.78% 94.40% 94.40% 94.03% 96.27% 94.78% 97.02% 98.51% 97.02% 98.1596 95.90% or76% 98.13% 98.51% 97.76% 97.39% 98.51% 97.39% 98.13% 98.51% 97.76% 98.88% 97.39% 99.25% 97.76% 91.68% Bang két qua thi? nghiém: 8 00 gu Sngudi nds 8 tr ding hud luyén: 268, ‘86 tr ding kibm tra: 268 {89 chin xac=86 tr nhan dang Gingyting s6 tr trong 6 dt lu KiBm tra. ‘sig01-100 | ig05-50 22.02% 81.34% 89.18% 76.87% 96.64% 92.91% 94.78% 97.02% 97.39% 97.02% 96.64% 97.76% 97.39% 97.02% 97.39% 98.5156 97.02% 98.5156 20.52% 37.31% 20.18% 86.57% 88.08% 93.28% 93.28% 95.52% 95.90% 97.39% 97.39% 97.02% 96.64% 97.76% 97.39% 96.64% 98.51% 98.19% 96.27% 98.51% 97.39% 98.13% 97.39% 98.13% 98.13% 97.76% 98.13% 97.76% 98.51% 98.19% 91.69% ‘smx01-50 35.08% 88.81% 94.03% 95.15% 95.52% 97.39% 95.15% 98.13% 95.52% 97.39% 98.13% 98.51% 97.76% 97.76% 98.51% 98.88% 98.13% 98.51% 97.39% 98.13% 98.51% 98.51% 97.39% 98.13% 98.51% 97.76% 98.13% 98.88% 97.02% 97.76% 95.15% ‘emx01-100 60.45% 90.30% 96.64% 92.91% 97.76% 97.76% 97.76% 98.88% 98.51% 97.39% 98.88% 98.88% 90.51% 98.88% 98.13% 98.51% 98.13% 98.13% 97.39% 98.13% 98.51% 98.51% 98.51% 98.88% 98.19% 96.11% ‘srmx05-50 42.54% 87.60% 39.93% 92.16% 94.03% 95.52% 94.78% 94.78% 95.52% 97.02% 97.76% 96.27% 97.39% 98.88% Trong 46 hnode la sé noron Iép an, img voi mai kiéu mang nhw sau: Kihigu [Ham ich hoat | Gia tr khOi, | $6 véng lap {go trong s6 | hun luygn 3ig0t-50 | sigmoid Touisic) ot 3 sig01-100__ | sigmoid (ogistic) ot 700 “3190550 —| sigmoid (logisto) 05: 50. ‘smx01-50 | softmax Ot 50 ‘amx01-100 | sofimax Ot 700, ssmx05-50__ | softmax 05 50 Biéu dé sau thé hign két qua nhén dang theo sé noron 1ép dn trong 2 kiéu mang cho két qua cao nhét. 7 8 05 108 16 5185S 2 smx05-50 Tir két qua thir nghiém, ching tdi rat ra mét s6 két ludn sau: |. Phuong phdp nh§n dang bing mang noron cho két qua nhn dang cao nhit 14 99.25% trén b6 dir ligu do ching 164 ty xay dyng. Nhu ‘vay 6 thé sir dung mang noon kim mét co cdu nhén dang higu qua, it nhat Li d6i véi hé thong nhin dang chit sd, 2. Mang sé cho két qua nhan dang cao néu xay dyng hgp li, Khong han cit nhiéu noron 1ép an, cit hudn luyén nhiéu 1a mang c6 46 chinh xdc cao hon. (Mic di diéu dé Lim giam sai sé hudn luygn cia mang). ‘Van dé sai sé hudn luyén thap, sai sé kiém tra cao xay ra khi d6 trong ty giita b6 dit ligu huan luyén va bé dit ligu kiém tra khéng lon. Khi 46 mang nh§n dang rat chinh xdc trén bé dit ligu hudn luyén nhung kém chinh xéc hon nbiéu trén b6 dit ligu kiém tra, 3. Ham kich hogt softmax higu qua hon him sigmoid, (Két qua ahin dang trung binh cao hon, sé noron an cin ding thap hon khi cho két qua nhan dang cao nhat). 4, Méi tru’ng Matlab e6 thé giip eéng vige nghién eu nhan dang tiéng néi don gin va higu qua hon. Nhi cé Matlab va céc bd céng c phat trién hé théng nhan dang kha don gidn va nhanh chéng (vi du: ma chuong trinh ding rit it lénh, nhidu phan khéng can lap trinh), cu VoiceBox, NetLab ma vi ‘Nhiing két luan trén cho thay kha nang sit dung mang noron va mdi trudng Matlab trong nhiin dang tiéng néi c6 nhiéu hita hen, Tuy nhién dé dat duge digu 6 thi phai x4y dyng mét b6 dir ligu chudn va c6 chién luge xay dyng, hudn: Juyén, thit nghigm mang hgp li. 5.3. HUONG MO RONG CUA DE TAT 5.3.1. X4y dung b@ dir ligu hudn luyén Ién hon ‘Nhu ta da thdy, bd dit ligu 1a thanh phn cue ki quan trong déi véi hé nhan dang, Hign tai bo dit ligu ching t6i 43 xay dymg (182 file, 11 tr, 2 ngudi) 1 con qua khiém tén. Dé cé thé c6 nhig két qua nghién ciru tét hon, ching toi sé mo rong bé dit ligu: tang sé ngudi néi va sé tir, da dang ho méi truéng ghi am. 3.3.2. Xay dung phan mém nhan dang dya trén két qua nghién ctru H@ théng nhan dang hign tai etia ching t6i hign chi durge thir nghigm trén méi truéng Matlab, méi cé kha nding nhin dang mét file ghi 4m sin cia m@t tir (ahan dang tir don, ngoai tuyén). Trong khi d6 dé hé nhan dang c6 thé img dung duge thi hé phai hoat dong 6 dang tryc tiép va lién tye (tite 14 vira ghi am vira nhan dang, nh§n dang nhidu chit sé mét lac, chay nhu mt chuong trinh hé théng). Muc tiéu eva ching t6i fa sau ki thir nghigm hé théng cho két qua cao s& xdy dymg mét b6 céng cy nhan dang tiéng néi va cde phan mém img dung, vi dé mdi la myc dich cita nghién ciru nh§in dang tiéng néi, 5.3.3. Nghién ctru cde phuong phap xAc dinh dc trung khic G nghién ciru nay, vige tach dic trumg ciia tin higu tiéng néi cdn rat don gian (chia frame, tinh MFCC, chia 5 phan ly trung binh cng). Dé nang cao két qua nhan dang can tim nhiing dic trang én dinh hon ciia tiéng néi va nhimg phuong phép tach dic trumg higu qua hon. 5.3.4. Nghién ciru cic phwong phap nhgn dang khic Cac nghién ciru khac ([1,9,10]) cho théy hign tai m6 hinh Markov an (HMM) dang cho két qua nhan dang cao nhat. Huéng nghién ciru méi cita dé tai 1a tim cdch két hop mang noron va m6 hinh Markov dn cia hai m6 hinh. két hop wu diém: Mat khée, déi véi bd tir vung nhé thi nhan dang tir don (am tiét) 1a thich hop. Tuy nhién véi hé nhgn dang c6 1én, nha 1a hg nhan dang tiéng Vigt hoan chinh (6 nghin am tiét ) thi chon don vi nhan dang 1a 4m tiét khéng hgp li lim. Mot hudng nghién eiru khéc cia dé tdi 1a nhan dang déi véi don vi nhé hon am tiét la am vi, Tite la xay dung cdc hé nhn dang cé chite ning: © Phan biét due nhiéu nén (khoang lang), phy am, nguyén am. ‘© Nhan dang phy am (phan bigt drgc cae phy am khéc nhau). ‘© han dang nguyén am (phan bigt duge cée nguyén am khic nhau). © Nhan dang thanh digu cia am tiét. 5 PHY LUC 1. DANH MYC TAI LIEU THAM KHAO Kihigu Tie gid ‘Ten tai ligu Ghi chit [1] |DangNgoc Bite | Mang noron va ma hinh Ladin én tién st Markov dn trong nhgn dang tiéng Vigt D] | Neuyén Hi Tinh, | Co'sé Matlab va tng dung | Sich NXBKHKT Lé Tin Hing, Pham -1999 Ngoc Yén, Nguyén Thi Lan Huong B) ‘Doan Thién Thuat | Ngi dm tiéng Vige Sach NXB DHQG Ha Noi - 2003 [4]_ | NguySn Thanh Thuy | Vhgp man xie if anh sd ‘Sich NXBKHKT [5] [Alpay Kog ‘Acoustic feature analysis for robust speech recognition [6] |John-Paul Hosom, | A diphone-based digit hitp://estu.cse.ogi.e Ron Cole recognition system using neural | du/esl networks [7] ]John-Paul Hosom, | Speech Recognition Using Webpage tai Ron Cole, Mark | Neural Networks http://eslu.cse.ogi.e Fanty, Don Colton du/estu [8]___[Mehdi R. Zargham | Computer Architecture [9] [Rabiner LR ‘A Tutorial on Hidden Markov | Proceedings of Models and Selected IEEE, VOL.77, Applications in Speech ‘NO.2, FEB 1989 Recognition [10] [Rabiner L.R, Huang | Fundamentals of Speech Sach NXB B.H Recognition Prentice Hall - 1993 [1] [Simon Haykin ‘Neural Neoworks - A Sich NXB| comprehensive foundation Prentice Hall - 1998 [12] | V-Mantha, Implementation and analysis of | ECEAT73/Digital R.Duncan, Y.Wu, | speech recognition front-ends | Signal Processing - J.Zha0 1998 [13] _ | Joe Tebelskis ‘Speech Recognition using ICMU-CS-95-142 ‘Neural Networks PHU LUC 2. BANG CAC THUAT NGO VA TU VIET TAT Thuat agit Tir viét tit Y nghia ‘Antifactial Neural Network [ANN [Mgng noron nhan tao Fast Fourier Transform [FFT [Bién ddi Fourier nhanh Dicrette Cosine Transform [DCT [Bién déi cosin rdi rac. Hidden Markov Model |HMM__ {M6 hinh Markov an Linear predictive code LPC IHé sé dyr doan tuyén tinh Mel-scale Frequency IMFCC [Hi s6 cepstral d6 do mel Cepstral Coefficient ‘Multi Layer Perceptron — [MLP. [Mang perceptron truyén thing nhiéu lép ‘Speech Recognition SR,ASR__ |Nhfin dang tiéng noi Bias [Newing kich hoat Pattern Recognition INhan dang mau Likelihood Similarity [Mite 46 trong ty Feature [Dac tung Spectral, spectrum IPhé tin higu.

You might also like