giíi thiÖu
Trong nh÷ng n¨m gÇn ®©y, ng−êi ta th−êng nh¾c ®Õn “TrÝ tuÖ nh©n t¹o” nh− lµ mét ph−¬ng thøc m« pháng trÝ th«ng minh cña con ng−êi tõ viÖc l−u tr÷ ®Õn xö lý th«ng tin. Vµ nã thùc sù ®· trë thµnh nÒn t¶ng cho viÖc x©y dùng c¸c thÕ hÖ m¸y th«ng minh hiÖn ®¹i. Còng víi môc ®Ých ®ã, nh−ng dùa trªn quan ®iÓm nghiªn cøu hoµn toµn kh¸c, mét m«n khoa häc ®· ra ®êi, ®ã lµ Lý thuyÕt M¹ng neuron. TiÕp thu c¸c thµnh tùu vÒ thÇn kinh sinh häc, m¹ng neuron lu«n ®−îc x©y dùng thµnh mét cÊu tróc m« pháng trùc tiÕp c¸c tæ chøc thÇn kinh trong bé n·o con ng−êi.
Tõ nh÷ng nghiªn cøu s¬ khai cña McCulloch vµ Pitts trong nh÷ng n¨m 40 cña thÕ kû, tr¶i qua nhiÒu n¨m ph¸t triÓn, cho ®Õn thËp kû nµy, khi tr×nh ®é phÇn cøng vµ phÇn mÒm ®· ®ñ m¹nh cho phÐp cµi ®Æt nh÷ng øng dông phøc t¹p, Lý thuyÕt M¹ng neuron míi thùc sù ®−îc chó ý vµ nhanh chãng trë thµnh mét h−íng nghiªn cøu ®Çy triÓn väng trong môc ®Ých x©y dùng c¸c m¸y th«ng minh tiÕn gÇn tíi TrÝ tuÖ con ng−êi. Søc m¹nh thuéc vÒ b¶n chÊt tÝnh to¸n song song, chÊp nhËn lçi cña m¹ng neuron ®· ®−îc chøng minh th«ng qua nhiÒu øng dông trong thùc tiÔn, ®Æc biÖt khi tÝch hîp cïng víi c¸c kü thuËt kh¸c.
Mét trong nh÷ng øng dông kinh ®iÓn cña m¹ng neuron lµ líp c¸c bµi to¸n nhËn d¹ng mÉu, ë ®ã mçi mét mÉu lµ mét tËp hîp (hay mét vector) c¸c tham sè biÓu thÞ c¸c thuéc tÝnh cña mét qu¸ tr×nh vËt lý nµo ®ã (vÝ dô tÝn hiÖu tiÕng nãi). Ngoµi søc m¹nh vèn cã, m¹ng neuron cßn thÓ hiÖn −u ®iÓm cña m×nh trong viÖc nhËn d¹ng th«ng qua kh¶ n¨ng mÒm dÎo, dÔ thÝch nghi víi m«i tr−êng. ChÝnh v× vËy, cã thÓ coi m¹ng neuron tr−íc tiªn lµ mét c«ng cô ®Ó nhËn d¹ng. NhiÒu c«ng tr×nh nghiªn cøu, nhiÒu øng dông thùc nghiÖm ®· ®−îc thùc hiÖn trªn m¹ng neuron víi môc ®Ých nhËn d¹ng vµ ®· thu ®−îc nh÷ng thµnh c«ng to lín.
Tr−íc sù quyÕn rò cña c¸c øng dông TrÝ tuÖ nh©n t¹o, cïng b¶n tÝnh tß mß tr−íc mét lý thuyÕt míi ch−a tõng ®−îc nghiªn cøu vµ sù ®éng viªn khuyÕn khÝch cña thµy gi¸o h−íng dÉn, t«i ®· quyÕt ®Þnh thùc hiÖn nh÷ng nghiªn cøu ban ®Çu vÒ Lý thuyÕt m¹ng neuron víi mét môc ®Ých cô thÓ lµ øng dông nã vµo vÊn ®Ò nhËn d¹ng tiÕng nãi. Do thêi gian thùc hiÖn ®å ¸n tèt nghiÖp chØ cã h¬n ba th¸ng, t«i kh«ng cã tham väng x©y dùng ®−îc mét phÇn mÒm nhËn d¹ng tiÕng nãi hoµn chØnh.
Môc ®Ých chÝnh cña b¶n luËn v¨n lµ:
Tr×nh bµy c¸c kÕt qu¶ nghiªn cøu lý thuyÕt phôc vô cho chñ ®Ò “øng dông m¹ng neuron cho vÊn ®Ò nhËn d¹ng tiÕng nãi”; ®ång thêi x©y dùng mét phÇn mÒm thö nghiÖm NhËn d¹ng nguyªn ©m víi môc ®Ých hiÓu s©u h¬n vÒ c¸ch thøc mµ mét m¹ng neuron tiÕn hµnh viÖc ph©n lo¹i c¸c tÝn hiÖu tiÕng nãi.
1
Néi dung cña luËn v¨n
PhÇn I. C¬ së lý thuyÕt m¹ng neuron cho vÊn ®Ò nhËn d¹ng tiÕng nãi
Ch−¬ng 1. Më ®Çu.
Kh¸i niÖm vÒ nh÷ng thµnh phÇn vµ kiÕn tróc c¬ b¶n cña m¹ng neuron.
Ch−¬ng 2. Ph−¬ng ph¸p häc cho m¹ng tiÕn ®a møc.
C¸c quy t¾c häc, m« h×nh häc vµ thuËt to¸n häc (thuËt to¸n back-propagation) cho m¹ng tiÕn (feedforward) ®a møc. §¸nh gi¸ vµ c¶i thiÖn tÝnh n¨ng thuËt to¸n back-propagation.
Ch−¬ng 3. C¸c më réng cho m¹ng håi quy trÔ.
M« h×nh m¹ng neuron håi quy trÔ vµ thuËt ti¸n back- propagation më réng.
Ch−¬ng 4. NhËn d¹ng tiÕng nãi vµ kh¶ n¨ng øng dông m¹ng neuron trÔ.
Xö lý filter bank cho tÝn hiÖu tiÕng nãi vµ quan ®iÓm øng dông c¸c m¹ng neuron trÔ cho viÖc nhËn d¹ng.
PhÇn II. X©y dùng phÇn mÒm thö nghiÖm nhËn d¹ng nguyªn ©m
Ch−¬ng 5. Ph©n tÝch bµi to¸n nhËn d¹ng nguyªn ©m.
Ph©n tÝch yªu cÇu bµi to¸n vµ ®Ò xuÊt ph−¬ng ¸n thùc hiÖn.
Ch−¬ng 6. ChiÕn l−îc thiÕt kÕ phÇn mÒm.
ThiÕt kÕ c¸c modul ch −¬ng tr×nh theo tõng chøc n¨ng cô thÓ.
Ch−¬ng 7. Giíi thiÖu phÇn mÒm cµi ®Æt.
Tr×nh bµy ®«i nÐt vÒ c¸ch thøc cµi ®Æt mét sè modul quan träng.
PhÇn III. KÕt luËn
Ch−¬ng 8. KÕt luËn.
2
XÐt vÒ mÆt lý thuyÕt, m¹ng neuron t−¬ng ®èi ®éc lËp víi b¶n chÊt c¸c qu¸ tr×nh vËt lý cÇn nhËn d¹ng mµ tÝn hiÖu tiÕng nãi lµ mét vÝ dô. Dùa trªn quan ®iÓm nhËn d¹ng mÉu, m¹ng neuron chØ quan t©m tíi c¸c tham sè ®Æc tr−ng cña tÝn hiÖu tiÕng nãi vµ sö dông chóng nh− ®Çu vµo; sau mét qu¸ tr×nh tÝnh to¸n, ®Çu ra cña m¹ng neuron sÏ lµ c¸c ®¸nh gi¸ cho phÐp dÔ dµng biÕt ®−îc tÝn hiÖu ban ®Çu thuéc lo¹i nµo. ChÝnh v× thÕ, trong phÇn tr×nh bµy vÒ kÕt qu¶ nghiªn cøu lý thuyÕt (PhÇn I), t«i cã ngÇm ph©n chia thµnh hai khu vùc: ba ch−¬ng ®Çu hoµn toµn nãi vÒ m¹ng neuron, vµ ch−¬ng cuèi cïng chñ yÕu nãi vÒ c¸ch thøc lÊy ra c¸c tham sè ®Æc tr−ng cña tÝn hiÖu tiÕng nãi. Do môc ®Ých nghiªn cøu lý thuyÕt cña ®Ò tµi vµ còng do
phÇn mÒm thö nghiÖm ch−a ®−îc hoµn thiÖn, PhÇn II cña b¶n luËn v¨n chØ chiÕm mét sè trang kh«ng nhiÒu (25 trang), nh−ng còng ®· ®Ò cËp ®Õn hÇu hÕt nh÷ng quan ®iÓm x©y dùng phÇn mÒm. Sau ®©y t«i xin giíi thiÖu nh÷ng nÐt kh¸i qu¸t nhÊt vÒ nh÷ng néi dung ®· thÓ hiÖn.
Lý thuyÕt M¹ng neuron
M¹ng neuron nh©n t¹o lµ mét m« h×nh m« pháng cÊu tróc cña bé n·o con ng−êi. Hai thµnh phÇn chÝnh cÊu t¹o nªn m¹ng neuron lµ c¸c neuron (m« pháng c¸c tÕ bµo thÇn kinh) vµ c¸c synapse (m« pháng c¸c khíp nèi thÇn kinh). Trong kiÕn tróc cña mét m« h×nh kÕt nèi, c¸c neuron chÝnh lµ c¸c nót m¹ng, ®−îc liªn kÕt víi nhau th«ng qua c¸c synpase, lµ c¸c cung m¹ng.
Neuron lµ mét ®¬n vÞ tÝnh to¸n cã nhiÒu ®Çu vµo vµ mét ®Çu ra, mçi ®Çu vµo ®Õn tõ mét syanpse. §Æc tr−ng cña neuron lµ mét hµm kÝch ho¹t phi tuyÕn chuyÓn ®æi mét tæ hîp tuyÕn tÝnh cña tÊt c¶ c¸c tÝn hiÖu ®Çu vµo thµnh tÝn hiÖu ®Çu ra. Hµm kÝch ho¹t nµy ®¶m b¶o tÝnh chÊt phi tuyÕn cho tÝnh to¸n cña m¹ng neuron.
Synapse lµ mét thµnh phÇn liªn kÕt gi÷a c¸c neuron, nã nèi ®Çu ra cña neuron nµy víi ®Çu vµo cña neuron kh¸c. §Æc tr−ng cña synapse lµ mét träng sè mµ mçi tÝn hiÖu ®i qua ®Òu ®−îc nhËn víi träng sè nµy. C¸c träng sè synapse chÝnh lµ c¸c tham sè tù do c¬ b¶n cña m¹ng neuron, cã thÓ thay ®æi ®−îc nh»m thÝch nghi víi m«i tr−êng xung quanh.
M¹ng tiÕn ®a møc lµ mét trong nh÷ng kiÕn tróc m¹ng c¨n b¶n nhÊt, ë ®ã c¸c neuron ®−îc chia thµnh tõng møc. Cã ba lo¹i møc: møc ®Çu vµo bao gåm c¸c nót nguån (kh«ng ph¶i neuron) cung cÊp c¸c tÝn hiÖu ®Çu vµo chung nhËn ®−îc tõ m«i tr−êng; møc Èn bao gåm c¸c neuron kh«ng quan hÖ trùc tiÕp víi m«i tr−êng; møc ®Çu ra ®−a ra c¸c tÝn hiÖu ®Çu ra cho m«i tr−êng. LÇn l−ît tõ møc ®Çu vµo tíi møc ®Çu ra, cø tÝn hiÖu ®Çu ra cña mét nót m¹ng thuéc møc tr−íc sÏ lµ tÝn hiÖu ®Çu vµo cho nót m¹ng thuéc møc tiÕp sau. Tõ kiÕn tróc nµy ta cã thÓ h×nh dung m¹ng neuron nh− mét bé xö lý th«ng tin cã nhiÒu ®Çu vµo vµ nhiÒu ®Çu ra.
Qu¸ tr×nh tÝch luü m¹ng (häc) lµ mét qu¸ tr×nh mµ trong ®ã c¸c tham sè tù do (c¸c träng sè synapse) ®−îc ®iÒu chØnh nh»m môc ®Ých thÝch nghi víi m«i tr−êng. §èi víi vÊn ®Ò häc cho m¹ng neuron ng−êi ta quan t©m tíi ba yÕu tè sau:
• Quy t¾c häc: Ph−¬ng thøc nÒn t¶ng cho viÖc thay ®æi träng sè syanapse (vÝ dô: Quy t¾c häc hiÖu chØnh lçi, Quy t¾c häc kiÓu Heb, ...).
• M« h×nh häc: C¸ch thøc m¹ng neuron quan hÖ víi m«i tr−êng trong qu¸ tr×nh häc (vÝ dô: M« h×nh häc víi mét ng−êi d¹y, ...).
• ThuËt to¸n häc: C¸c b−íc tiÕn hµnh cô thÓ cho mét qu¸ tr×nh häc.
3
ThuËt to¸n Back-propagation lµ thuËt to¸n häc kinh ®iÓn nhÊt vµ còng ®−îc ¸p dông mét c¸ch phæ biÕn nhÊt cho c¸c m¹ng tiÕn ®a møc. Nã ®−îc x©y dùng trªn c¬ së Quy t¾c häc hiÖu chØnh lçi vµ M« h×nh häc víi mét ng−êi d¹y. ThuËt to¸n bao gåm hai giai ®o¹n tÝnh to¸n: giai ®o¹n tiÕn mµ c¸c tÝn hiÖu chøc n¨ng ®i tõ møc ®Çu vµo tíi møc ®Èu ra cña m¹ng nh»m tÝnh to¸n c¸c tÝn hiÖu lçi; giai ®o¹n lïi trong ®ã c¸c tÝn hiÖu lçi quay trë l¹i tõ møc ®Çu ra lÇn l−ît qua c¸c
møc ®Ó tÝnh c¸c gradient côc bé t¹i mçi neuron. §Ó n©ng cao tÝnh n¨ng cña thuËt to¸n, cã kh¸ nhiÒu kinh nghiÖm thùc tÕ ®−îc nªu thµnh quy t¾c mµ kh«ng ®−îc chøng minh mét c¸ch chÆt chÏ.
C¸c m¹ng håi quy trÔ lµ mét líp kiÕn tróc më réng tÝch hîp quan ®iÓm vÒ c¸c synapse trÔ vµ kiÕn tróc håi quy dùa trªn c¬ së m¹ng tiÕn ®a møc. Mét synapse trÔ bao gåm nhiÒu nh¸nh, mçi nh¸nh cã träng sè riªng vµ ®Æc biÖt lµ cã mét to¸n tö trÔ theo thêi gian (z-n) nh»m quan t©m tíi sù ¶nh h−ëng lÉn nhau gi÷a c¸c neuron t¹i nh÷ng têi ®iÓm kh¸c nhau. Líp kiÕn tróc nµy ®−îc ®−a ra ®Ó xö lý c¸c tÝn hiÖu cã ®Æc tÝnh thèng kª biÕn thiªn theo thêi gian nh− tÝn hiÖu tiÕng nãi.
Lý thuyÕt NhËn d¹ng tiÕng nãi
NhËn d¹ng tiÕng nãi lµ Qu¸ tr×nh thu nhËn vµ xö lý tÝn hiÖu tiÕng nãi nh»m môc ®Ých nhËn biÕt néi dung v¨n b¶n cña nã. §Æc tr−ng cña c¸c ©m thanh tiÕng nãi hÕt søc ®a d¹ng tuú theo c¸c lo¹i ©m vÞ kh¸c nhau, nh−ng ®¬n gi¶n vµ dÔ xö lý nhÊt vÉn lµ nguyªn ©m.
Nguyªn ©m lµ c¸c ©m vÞ ®−îc ®Æc tr−ng bëi nguån ©m tuÇn hoµn thuÇn tuý vµ kh«ng bÞ chÆn trong qu¸ tr×nh ph¸t ©m. §Æc tr−ng cña nguyªn ©m thÓ hiÖn ë c¸c formants (tÇn sè céng h−ëng) ®Çu tiªn cña tÝn hiÖu trong miÒn tÇn sè.
NhËn d¹ng mÉu lµ mét trong nh÷ng tiÕp cËn nhËn d¹ng tiÕng nãi dùa trªn c¬ së so s¸nh c¸c mÉu (c¸c vector tham sè ®Æc tr−ng cho ®o¹n tÝn hiÖu cÇn nhËn d¹ng) b»ng c¸c th−íc ®o kho¶ng c¸ch mÉu mµ kh«ng cÇn quan t©m qu¸ nhiÒu tíi c¸c tÝnh chÊt ©m häc cña tÝn hiÖu. TiÕp cËn nµy gîi ý cho chóng ta mét quan ®iÓm øng dông m¹ng neuron dùa trªn viÖc xö lý c¸c mÉu t¹i ®Çu vµo cña m¹ng.
Qu¸ tr×nh xö lý ®Çu cuèi filter bank lµ mét trong hai ph−¬ng ph¸p xö lý tÝn hiÖu tiÕng nãi víi môc ®Ých lÊy ra c¸c tham sè ®Æc tr−ng cña tÝn hiÖu tiÕng nãi. C¸c tham sè ®Æc tr−ng sÏ lµ ®Çu vµo cho bé nhËn d¹ng chÝnh. §Æc tr−ng cña mét ®Çu cuèi filter bank lµ mét d·y c¸c bé läc th«ng d¶i, mçi bé läc chÞu tr¸ch nhiÖm mét d¶i th«ng riªng trong ph¹m vi tÇn sè cÇn quan t©m. C¸ch cµi ®Æt th«ng dông nhÊt cho c¸c filter bank lµ dùa trªn phÐp biÕn ®æi Fourier thêi gian ng¾n. Mét tÝnh chÊt quan träng thÓ hiÖn sù kh¸c nhau gi÷a c¸c lo¹i filter bank kh¸c nhau lµ c¸ch thøc ph©n chia c¸c d¶i th«ng cho c¸c bé läc. Trong thùc tÕ, ng−êi ta th−êng hay sö dông mét sè kiÓu ph©n chia kh«ng ®Òu.
Kh¶ n¨ng øng dông m¹ng neuron trÔ lu«n ®−îc nh¾c tíi trong Lý thuyÕt nhËn d¹ng tiÕng nãi nh− lµ mét minh häa mang tÝnh kinh ®iÓn cho quan ®iÓm sö dông m¹ng neuron. TÝn hiÖu tiÕng nãi cÇn nhËn d¹ng sau khi lÊy mÉu vµ l−îng tö ®−îc ph©n thµnh c¸c ®o¹n theo thêi gian (c¸c frame); sau ®ã tõng ®o¹n ®ã ®−îc chuyÓn qua bé xö lý filter bank råi chuyÓn tíi m¹ng neuron. C¸c frame sÏ ®−îc xö lý mét c¸ch tuÇn tù sau c¸c kho¶ng thêi gian trÔ cè ®Þnh. Nhê vµo cÊu tróc ®Æc biÖt dùa trªn c¸c synapse trÔ, m¹ng neuron trÔ cã kh¶ n¨ng n¾m b¾t ®−îc nh÷ng sù biÕn thiªn theo thêi gian cña ®Æc tÝnh thèng kª trong tÝn hiÖu tiÕng nãi.
PhÇn mÒm thö nghiÖm NhËn d¹ng nguyªn ©m
4
Qu¸ tr×nh xö lý cña m¹ng neuron dùa trªn m« h×nh kÕt nèi ph©n t¸n quy m« lín lu«n g©y khã kh¨n cho nh÷ng ng−êi nghiªn cøu trong viÖc hiÓu ý nghÜa vµ kiÓm so¸t ho¹t ®éng cña m¹ng. MÆt kh¸c, b¶n th©n Lý thuÕt m¹ng neuron ®−îc x©y dùng tõ rÊt nhiÒu nh÷ng kinh nghiÖm thùc tÕ. ChÝnh v× thÕ, ®Ó phôc vô cho viÖc nghiªn cøu cña b¶n th©n, t«i ®· tiÕn hµnh x©y dùng mét phÇn mÒm mang tÝnh thö nghiÖm trªn bµi to¸n NhËn d¹ng nguyªn ©m.
T«i lùa chän nguyªn ©m lµm ®èi t−îng nhËn d¹ng v× ®ã lµ ©m vÞ cã ®Æc tr−ng ®¬n gi¶n nhÊt vµ dÔ nhËn d¹ng nhÊt, phï hîp cho mét phÇn mÒm thö nghiÖm. §iÒu nµy ®¶m b¶o mét tÝnh n¨ng nhÊt ®Þnh cho phÇn mÒm vµ kh«ng cÇn ph¶i thiÕt kÕ nh÷ng m¹ng neuron qu¸ lín.
Tuy nhiªn tÝnh chÊt ®ã cña nguyªn ©m kh«ng lµm cho ®é phøc t¹p cña c¸c thñ tôc x©y dùng vµ thi hµnh m¹ng ®¬n gi¶n ®i mét c¸ch ®¸ng kÓ. §iÒu nµy ®−îc gi¶i thÝch b»ng ®Æc tÝnh ®éc lËp ®èi víi b¶n chÊt ®èi t−îng nhËn d¹ng cña m¹ng neuron.
5
PhÇn mÒm ®· ®−îc x©y dùng theo tõng b−íc tõ Ph©n tÝch, ThiÕt kÕ ®Õn Cµi ®Æt. PhÇn mÒm cµi ®Æt vÉn ch−a ®−îc hoµn thiÖn do thêi gian qu¸ gÊp.
Ch−¬ng 1
më ®Çu
1.1 M¹ng neuron - M« pháng trùc tiÕp bé n∙o con ng−êi
Lý thuyÕt vÒ M¹ng n¬ ron nh©n t¹o, hay gäi t¾t lµ “M¹ng n¬ ron”, ®−îc x©y dùng xuÊt ph¸t tõ mét thùc tÕ lµ bé n·o con ng−êi lu«n lu«n thùc hiÖn c¸c tÝnh to¸n mét c¸ch hoµn toµn kh¸c so víi c¸c m¸y tÝnh sè. Cã thÓ coi bé n·o lµ mét m¸y tÝnh hay mét hÖ thèng xö lý th«ng tin song song, phi tuyÕn vµ cùc kú phøc t¹p. Nã cã kh¶ n¨ng tù tæ chøc c¸c bé phËn cÊu thµnh cña nã, nh− lµ c¸c tÕ bµo thÇn kinh (neuron) hay c¸c khíp nèi thÇn kinh (synapse), nh»m thùc hiÖn mét sè tÝnh to¸n nh− nhËn d¹ng mÉu vµ ®iÒu khiÓn vËn ®éng nhanh h¬n nhiÒu lÇn c¸c m¸y tÝnh nhanh nhÊt hiÖn nay. Sù m« pháng bé n·o con ng−êi cña m¹ng neuron lµ dùa trªn c¬ së mét sè tÝnh chÊt ®Æc thï rót ra tõ c¸c nghiªn cøu vÒ thÇn kinh sinh häc.
1.1.1 S¬ l−îc vÒ cÊu tróc bé n∙o con ng−êi
C¸c ®¸p øng
C¸c bé tiÕp nhËn
M¹ng l−íi thÇn kinh
C¸c bé t¸c ®éng
C¸c kÝch thÝch
HÖ thèng thÇn kinh cña con ng−êi cã thÓ ®−îc xem nh− mét hÖ thèng ba tÇng. Trung t©m cña hÖ thèng lµ bé n·o ®−îc t¹o nªn bëi mét m¹ng l−íi thÇn kinh; nã liªn tôc thu nhËn th«ng tin, nhËn thøc th«ng tin, vµ thùc hiÖn c¸c quyÕt ®Þnh phï hîp. Bªn ngoµi bé n·o lµ c¸c bé tiÕp nhËn lµm nhiÖm vô chuyÓn ®æi c¸c kÝch thÝch tõ c¬ thÓ con ng−êi hay tõ m«i tr−êng bªn ngoµi thµnh c¸c xung ®iÖn; c¸c xung ®iÖn nµy vËn chuyÓn c¸c th«ng tin tíi m¹ng l−íi thÇn kinh. TÇng thø ba bao gåm c¸c bé t¸c ®éng cã nhiÖm vô chuyÓn ®æi c¸c xung ®iÖn sinh ra bëi m¹ng l−íi thÇn kinh thµnh c¸c ®¸p øng cã thÓ thÊy ®−îc (d−íi nhiÒu d¹ng kh¸c nhau), chÝnh lµ ®Çu ra cña hÖ thèng.
H×nh 1.1 BiÓu diÔn s¬ ®å khèi cña hÖ thèng thÇn kinh
Hai trong sè nh÷ng thµnh phÇn c¬ b¶n cña bé n·o mµ chóng ta cÇn quan t©m ®Õn nh− c¸c yÕu tè quyÕt ®Þnh kh¶ n¨ng tÝnh to¸n cña bé n·o lµ c¸c tÕ bµo thÇn kinh (neuron) vµ c¸c khíp nèi thÇn kinh (synapse). Ng−êi ta −íc tÝnh r»ng cã xÊp xû 10 tû neuron vµ 60 ngh×n tû synapse trong vá n·o con ng−êi.
6
C¸c neuron lµ c¸c ®¬n vÞ xö lý th«ng tin c¬ së cña bé n·o víi tèc ®é xö lý chËm h¬n tõ n¨m tíi s¸u lÇn c¸c cæng logic silicon. Tuy nhiªn ®iÒu nµy ®−îc bï ®¾p bëi mét sè l−îng rÊt lín c¸c neuron trong bé n·o. C¸c synapse vÒ c¬ b¶n lµ c¸c
®¬n vÞ cÊu tróc vµ chøc n¨ng lµm trung gian kÕt nèi gi÷a c¸c neuron. KiÓu synapse chung nhÊt lµ synapse ho¸ häc, ho¹t ®éng nh− sau. Mét qu¸ tr×nh tiÒn synapse gi¶i phãng ra mét chÊt liÖu truyÒn, chÊt liÖu nµy khuÕch t¸n qua c¸c synapse vµ sau ®ã l¹i ®−îc xö lý trong mét qu¸ tr×nh hËu synapse. Nh− vËy mét synapse chuyÓn ®æi mét tÝn hiÖu ®iÖn tiÒn synapse thµnh mét tÝn hiÖu ho¸ häc vµ sau ®ã trë l¹i thµnh mét tÝn hiÖu ®iÖn hËu synapse. Trong hÖ thèng thuËt ng÷ vÒ ®iÖn, mét phÇn tö nh− vËy ®−îc gäi lµ mét thiÕt bÞ hai cæng kh«ng thuËn nghÞch.
Cã thÓ nãi r»ng tÝnh mÒm dÎo cña hÖ thèng thÇn kinh con ng−êi cho phÐp nã cã thÓ ph¸t triÓn ®Ó thÝch nghi víi m«i tr−êng xung quanh. Trong mét bé ãc ng−êi tr−ëng thµnh, tÝnh mÒm dÎo ®−îc thÓ hiÖn bëi hai ho¹t ®éng: sù t¹o ra c¸c synapse míi gi÷a c¸c neuron, vµ sù biÕn ®æi c¸c synapse hiÖn cã. C¸c neuron cã sù ®a d¹ng lín vÒ h×nh d¹ng, kÝch th−íc vµ cÊu t¹o trong nh÷ng phÇn kh¸c nhau cña bé n·o thÓ hiÖn tÝnh ®a d¹ng vÒ b¶n chÊt tÝnh to¸n.
Trong bé n·o, cã mét sè l−îng rÊt lín c¸c tæ chøc gi¶i phÉu quy m« nhá còng nh− quy m« lín cÊu t¹o dùa trªn c¬ së c¸c neuron vµ c¸c synapse; chóng ®−îc ph©n thµnh nhiÒu cÊp theo quy m« vµ chøc n¨ng ®Æc thï. CÇn ph¶i nhËn thÊy r»ng kiÓu cÊu tróc ph©n cÊp hoµn h¶o nµy lµ ®Æc tr−ng duy nhÊt cña bé n·o. Chóng kh«ng ®−îc t×m thÊy ë bÊt kú n¬i nµo trong mét m¸y tÝnh sè, vµ kh«ng ë ®©u chóng ta ®¹t tíi gÇn sù t¸i t¹o l¹i chóng víi c¸c m¹ng neuron nh©n t¹o. Tuy nhiªn, hiÖn nay chóng ta ®ang tiÕn tõng b−íc mét trªn con ®−êng dÉn tíi mét sù ph©n cÊp c¸c møc tÝnh to¸n t−¬ng tù nh− vËy. C¸c neuron nh©n t¹o mµ chóng ta sö dông ®Ó x©y dùng nªn c¸c m¹ng neuron nh©n t¹o thùc sù lµ cßn rÊt th« s¬ so víi nh÷ng g× ®−îc t×m thÊy trong bé n·o. C¸c m¹ng neuron mµ chóng ta ®· x©y dùng ®−îc còng chØ lµ mét sù ph¸c th¶o th« kÖch nÕu ®em so s¸nh víi c¸c m¹ch thÇn kinh trong bé n·o. Nh−ng víi nh÷ng tiÕn bé ®¸ng ghi nhËn trªn rÊt nhiÒu lÜnh vùc trong c¸c thËp kû võa qua, chóng ta cã quyÒn hy väng r»ng trong c¸c thËp kû tíi c¸c m¹ng neuron nh©n t¹o sÏ tinh vi h¬n nhiÒu so víi hiÖn nay.
1.1.2 M« h×nh cña mét neuron nh©n t¹o
§Ó m« pháng c¸c tÕ bµo thÇn kinh vµ c¸c khíp nèi thÇn kinh cña bé n·o con ng−êi, trong m¹ng neuron nh©n t¹o còng cã c¸c thµnh phÇn cã vai trß t−¬ng tù lµ c¸c neuron nh©n t¹o cïng c¸c kÕt nèi synapse.
Mét neuron nh©n t¹o lµ mét ®¬n vÞ tÝnh to¸n hay ®¬n vÞ xö lý th«ng tin c¬ së cho ho¹t ®éng cña m«t m¹ng neuron. S¬ ®å khèi cña h×nh 1.2 chØ ra m« h×nh cña mét neuron nh©n t¹o. ë ®©y, chóng ta x¸c ®Þnh ba thµnh phÇn c¬ b¶n cña mét m« h×nh neuron:
7
1. Mét tËp hîp c¸c synapse hay c¸c kÕt nèi, mµ mçi mét trong chóng ®−îc ®Æc tr−ng bëi mét träng sè cña riªng nã. Tøc lµ mét tÝn hiÖu xj t¹i ®Çu vµo cña synapse j nèi víi neuron k sÏ ®−îc nh©n víi träng sè synapse wkj. ë ®ã k lµ chØ sè cña neuron t¹i ®Çu ra cña synapse ®ang xÐt, cßn j chØ ®iÓm ®Çu vµo cña synapse. C¸c träng sè synapse cu¶ mét neuron nh©n t¹o cã thÓ nhËn c¶ c¸c gi¸ trÞ ©m vµ c¸c gi¸ trÞ d−¬ng.
2. Mét bé céng ®Ó tÝnh tæng c¸c tÝn hiÖu ®Çu vµo cña neuron, ®· ®−îc nh©n víi c¸c träng sè synapse t−¬ng øng; phÐp to¸n ®−îc m« t¶ ë ®©y t¹o nªn mét bé tæ hîp tuyÕn tÝnh.
HÖ sè hiÖu chØnh bk
x1
wk1
Hµm kÝch ho¹t
x2
3. Mét hµm kÝch ho¹t (activation function) ®Ó giíi h¹n biªn ®é ®Çu ra cña neuron. Hµm kÝch ho¹t còng ®−îc xem xÐt nh− lµ mét hµm nÐn; nã nÐn (giíi h¹n) ph¹m vi biªn ®é cho phÐp cña tÝn hiÖu ®Çu ra trong mét kho¶ng gi¸ trÞ h÷u h¹n. M« h×nh neuron trong h×nh 1.2 cßn bao gåm mét hÖ sè hiÖu chØnh t¸c ®éng tõ bªn ngoµi, bk. HÖ sè hiÖu chØnh bk cã t¸c dông t¨ng lªn hoÆc gi¶m ®i ®Çu vµo thùc cña hµm kÝch ho¹t, tuú theo nã d−¬ng hay ©m.
vk
ϕ(.)
Σ
§Çu ra yk
C¸c tÝn hiÖu ®Çu vµo
wk1 . . .
Bé tæ hîp tuyÕn tÝnh
xm
wk1 C¸c träng sè synpase
H×nh 1.2 M« h×nh phi tuyÕn cña mét neuron
m
w
=
D−íi d¹ng c«ng thøc to¸n häc, chóng ta cã thÓ m« t¶ mét neuron k b»ng cÆp c«ng thøc sau:
u k
xkj
j
(1.1)
∑
0
j
=
vµ
(1.2)
yk=ϕ(uk+b) ë ®ã x1,x2,...,xm lµ c¸c tÝn hiÖu ®Çu vµo; wk1,wk2,...,wkm lµ c¸c träng sè synapse cña neuron k; uk lµ ®Çu ra bé tæ hîp tuyÕn tÝnh t−¬ng øng; bk lµ hÖ sè hiÖu chØnh.
m
v
=
HÖ sè hiÖu chØnh bk lµ mét tham sè ngoµi cña neuron nh©n t¹o k. Chóng ta cã thÓ thÊy ®−îc sù cã mÆt cña nã trong c«ng thøc (1.2). Mét c¸ch t−¬ng ®−¬ng, chóng ta cã thÓ tæ hîp c¸c c«ng thøc (1.1) vµ (1.2) nh− sau:
k
xw kj
j
(1.3)
∑
j
0
=
)
vµ
y ϕ= k
v ( k
8
(1.4)
Trong c«ng thøc (1.3), chóng ta ®· thªm mét synapse míi. §Çu vµo cña nã lµ:
(1.5) x0=+1
vµ träng sè cña nã lµ
(1.6) wk0=bk
wk0=bk (hÖ sè hiÖu chØnh)
wk0
DdÇu vµo cè ®Þnh x0=+1
x1
wk1
Hµm kÝch ho¹t
x2
vk
ϕ(.)
Σ
§Çu ra yk
C¸c tÝn hiÖu ®Çu vµo
wk1 . . .
Bé tæ hîp tuyÕn tÝnh
xm
wk1 C¸c träng sè synpase
Nh− vËy chóng ta vÏ l¹i m« h×nh cña neuron k nh− trong h×nh 1.3. Trong h×nh nµy, nhiÖm vô cña hÖ sè hiÖu chØnh lµ thùc hiÖn hai viÖc: (1) thªm mét tÝn hiÖu ®Çu vµo cè ®Þnh lµ 1, vµ (2) thªm mét träng sè synapse míi b»ng gi¸ trÞ cña hÖ sè bk. MÆc dÇu c¸c m« h×nh trong h×nh 1.2 vµ 1.3 lµ kh¸c nhau vÒ h×nh thøc nh−ng t−¬ng tù vÒ b¶n chÊt to¸n häc.
H×nh 1.3 M« h×nh phi tuyÕn thø hai cña mét neuron
C¸c kiÓu hµm kÝch ho¹t
Hµm kÝch ho¹t, ký hiÖu bëi ϕ(v), x¸c ®Þnh ®Çu ra cña neuron. D−íi ®©y lµ c¸c kiÓu hµm kÝch ho¹t c¬ b¶n:
=
ϕ( )v
1. Hµm ng−ìng: §èi víi lo¹i hµm nµy (m« t¶ trong h×nh 1.4a), chóng ta cã
0 0
v v
≥ <
nÕu nÕu
1 ⎧ ⎨ 0 ⎩
(1.7)
y
=
Trong c¸c tµi liÖu kü thuËt, d¹ng hµm ng−ìng nµy th−êng ®−îc gäi lµ hµm Heaviside. §Çu ra cña neuron k sö dông hµm ng−ìng sÏ nh− sau
k
v k v
0 0
≥ <
nÕu nÕu
k
1 ⎧ ⎨ 0 ⎩
(1.8)
9
ë ®ã vk lµ ®Çu ra cña bé tæ hîp tuyÕn tÝnh, cã nghÜa lµ
m
v
+
xw kj
j
b k
k
= ∑
j
=1
(1.9)
1
ϕ(v)
0 -2
0
2
(a)
1
ϕ(v)
0 -2
0
2
(b)
1
ϕ(v)
0 -2
2
Mét neuron nh− vËy th−êng ®−îc gäi lµ m« h×nh McCulloch-Pitts.
0 (c) H×nh 1.4 (a) Hµm ng−ìng, (b) Hµm vïng tuyÕn tÝnh (c) Hµm sigma víi tham sè ®é dèc a thay ®æi
,1
v
+≥
,
=
+
v −>≥
vϕ )(
2. Hµm vïng tuyÕn tÝnh: §èi víi lo¹i hµm nµy (m« t¶ trong h×nh 1.4b), chóng ta cã
1 2
,0
v
−≤
1 2 1 2 1 2
⎧ ⎪ ⎪⎪ v ⎨ ⎪ ⎪ ⎪ ⎩
(1.10)
D¹ng hµm nµy cã thÓ ®−îc xem nh− m«t xÊp xû cña mét bé khuÕch ®¹i phi tuyÕn.
10
3. Hµm sigma: Hµm sigma lµ d¹ng chung nhÊt cña hµm kÝch ho¹t ®−îc sö dông trong cÊu tróc m¹ng neuron nh©n t¹o. Nã lµ mét hµm t¨ng vµ nã thÓ hiÖn mét
v )( =ϕ
sù trung gian gi÷a tuyÕn tÝnh vµ phi tuyÕn. Mét vÝ dô cña hµm nµy lµ hµm logistics, x¸c ®Þnh nh− sau
1 exp(
1
av
)
+
−
(1.11)
ë ®ã a lµ tham sè ®é dèc cña hµm sigma. B»ng viÖc biÕn ®æi tham sè a, chóng ta thu ®−îc c¸c hµm sigma víi c¸c ®é dèc kh¸c nhau, nh− ®−îc minh ho¹ trong h×nh 1.4c. Thùc tÕ, hÖ sè gãc t¹i v=0 lµ a/4. Khi tham sè hÖ sè gãc tiÕn tíi kh«ng x¸c ®Þnh, hµm sigma trë thµnh mét hµm ng−ìng ®¬n gi¶n. Trong khi mét hµm ng−ìng chØ cã gi¸ trÞ lµ 0 hoÆc 1, th× mét hµm sigma nhËn c¸c gi¸ trÞ tõ 0 tíi 1. Còng ph¶i ghi nhËn r»ng hµm sigma lµ hµm ph©n biÖt, trong khi hµm ng−ìng th× kh«ng (TÝnh ph©n biÖt cña hµm lµ mét ®Æc tÝnh quan träng trong lý thuyÕt m¹ng neuron).
1 0
=
vϕ )(
C¸c hµm kÝch ho¹t ®−îc ®Þnh nghÜa trong c¸c c«ng thøc (1.7), (1.10), (1.11) ®Òu trong ph¹m vi tõ 0 ®Õn 1. §«i khi cã nh÷ng yªu cÇu x©y dùng hµm kÝch ho¹t trong ph¹m vi tõ -1 ®Õn 1, trong tr−êng hîp nµy hµm kÝch ho¹t ®−îc gi¶ ®Þnh cã d¹ng ®èi xøng qua gèc to¹ ®é (hay cã thÓ gäi lµ d¹ng ph¶n ®èi xøng); nghÜa lµ hµm kÝch ho¹t lµ mét hµm lÎ. VÝ dô, hµm ng−ìng trong c«ng thøc (1.7) b©y giê ®−îc x¸c ®Þnh nh− sau
1
v v v
0 0 0
−
> = <
⎧ ⎪ ⎨ ⎪ ⎩
(1.12)
Hµm nµy th−êng ®−îc gäi lµ hµm signum. Víi d¹ng t−¬ng øng cho hµm sigma chóng ta cã thÓ sö dông hµm tang hyperbol nh− sau
(1.13) ϕ(v)=tanh(v)
ViÖc cho phÐp mét hµm kÝch ho¹t kiÓu sigma nhËn c¸c gi¸ trÞ ©m nh− trong c«ng thøc (1.13) ®em l¹i nhiÒu lîi Ých vÒ gi¶i tÝch.
1.1.3 Ph¶n håi (feedback)
Sù Ph¶n håi cã mÆt trong mét hÖ thèng bÊt kú khi nµo ®Çu ra cña mét phÇn tö trong hÖ thèng cã ¶nh h−ëng ®Õn ®Çu vµo cña phÇn tö ®ã, tøc lµ sÏ cã mét hay nhiÒu ®−êng ®i khÐp kÝn trong viÖc truyÒn tÝn hiÖu cña hÖ thèng. Ph¶n håi x¶y ra hÇu nh− mäi n¬i cña hÖ thèng thÇn kinh ®éng vËt. H¬n n÷a, nã ®ãng mét vai trß chÝnh trong trong viÖc nghiªn cøu mét líp quan träng cña m¹ng neuron ®ã lµ c¸c m¹ng håi quy (recurrent network). H×nh 1.5a cho ta ®å thÞ luång tÝn hiÖu cña mét hÖ thèng ph¶n håi ®¬n-vßng lÆp, ë ®ã tÝn hiÖu ®Çu vµo xj(n), tÝn hiÖu bªn trong xj’(n), vµ tÝn hiÖu ®Çu ra yk(n) lµ c¸c hµm cña biÕn thêi gian rêi r¹c n. HÖ thèng ®−îc gi¶ ®Þnh lµ tuyÕn tÝnh, bao gåm mét ®−êng ®i tiÕn vµ mét ®−êng ®i ph¶n håi ®−îc m« t¶ bëi c¸c “to¸n tö” A vµ B t−¬ng øng. Tõ h×nh 1.5a chóng ta ®−a ra ®−îc quan hÖ ®Çu vµo-®Çu ra nh− sau:
(1.14)
11
(1.15) yk(n)=A[xj’(n)] xj’(n)=xj(n)+B[yk(n)]
[
)]
=
ë ®ã c¸c ngoÆc vu«ng nhÊn m¹nh r»ng A vµ B ho¹t ®éng nh− c¸c to¸n tö. Lo¹i bá xj’(n) gi÷a c«ng thøc (1.15) vµ (1.16), chóng ta ®−îc
ny )( k
nx ( j
A AB
1
−
(1.16)
A
w
xj'(n)
xj'(n)
xj(n)
yk(n)
xj(n)
yk(n)
B
z-1
(a)
(b)
Chóng ta coi A/(1-AB) lµ to¸n tö ®ãng vßng lÆp (closed-loop operator) cña hÖ thèng, vµ AB nh− to¸n tö më vßng lÆp (open-loop operator). Nãi chung, to¸n tö më vßng lÆp lµ kh«ng giao ho¸n (AB≠BA).
H×nh 1.5 §å thÞ luång tÝn hiÖu cña mét hÖ thèng ph¶n håi vßng lÆp ®¬n
=
1 −
A AB
1
−
1 −
1 −
1 w
wz
− 1(
)
=
w wz −
Xem xÐt vÝ dô hÖ thèng ph¶n håi ®¬n vßng lÆp trong h×nh 1.5b, víi A lµ mét träng sè cè ®Þnh w; vµ B lµ mét to¸n tö ®¬n vÞ trÔ z-1, mµ ®Çu ra cña nã trÔ so víi ®Çu vµo mét ®¬n vÞ thêi gian. Nh− vËy chóng ta cã thÓ biÓu diÔn to¸n tö ®ãng vßng lÆp cña hÖ thèng nh− sau
1 −
=
B»ng viÖc ¸p dông khai triÓn nhÞ thøc cho (1-wz-1)-1, chóng ta cã thÓ viÕt l¹i to¸n tö trªn nh− sau
A AB
1
−
l
∞ ∑ l zww 0 =
(1.17)
l
1 −
=
Nh− vËy, thay c«ng thøc (1.18) vµo c«ng thøc (1.17), chóng ta cã
ny )( k
∞ ∑ zww 0
l
=
(1.18)
Tõ ®Þnh nghÜa cña z-1 chóng ta cã
(1.19)
∞
l
+
w x n
(
l
)
=
−
z-1[xj(n)]=xj(n-l) ë ®ã xj(n-1) lµ mét mÉu cña tÝn hiÖu ®Çu vµo ®· bÞ trÔ l ®¬n vÞ thêi gian. Chóng ta cã thÓ biÓu diÔn tÝn hiÖu ®Çu ra yk(n) nh− mét phÐp tÝnh tæng c¸c mÉu hiÖn t¹i vµ qu¸ khø cña tÝn hiÖu ®Çu vµo xj(n)
( ) y n k
j
∑ 1
0
l
=
(1.20)
12
B©y giê chóng ta thÊy râ lµ tÝnh chÊt cña hÖ thèng phô thuéc vµo träng sè w. Cã thÓ ph©n biÖt hai tr−êng hîp ®Æc biÖt sau:
1. |w|<1, tÝn hiÖu ®Çu ra yk(n) héi tô d¹ng hµm mò; tøc lµ hÖ thèng æn ®Þnh.
2. |w|≥1, tÝn hiÖu ®Çu ra yk(n) lµ ph©n kú; nghÜa lµ hÖ thèng kh«ng æn ®Þnh. NÕu |w|=1 th× sù ph©n kú lµ tuyÕn tÝnh, vµ nÕu |w|>1 th× sù ph©n kú cã d¹ng hµm mò.
TÝnh æn ®Þnh lu«n rÊt quan träng trong viÖc nghiªn cøu c¸c hÖ thèng håi quy.
Tr−êng hîp |w|<1 t−¬ng øng víi mét hÖ thèng cã mét bé nhí v« h¹n theo nghÜa lµ ®Çu ra cña hÖ thèng phô thuéc vµo c¸c mÉu cña ®Çu vµo më réng v« h¹n vÒ qu¸ khø. H¬n n÷a, bé nhí lµ suy gi¶m dÇn tøc lµ ¶nh h−ëng cña mét mÉu qu¸ khø gi¶m theo hµm mò cña thêi gian.
1.1.4 KiÕn tróc M¹ng neuron
Trong bé n·o con ng−êi, c¸c tÕ bµo thÇn kinh liªn kÕt víi nhau th«ng qua c¸c khíp nèi thÇn kinh t¹o thµnh nh÷ng m¹ng l−íi víi kiÕn tróc v« cïng phøc t¹p vµ ®a d¹ng. §èi víi c¸c m¹ng neuron nh©n t¹o, chóng ta cã ba líp kiÕn tróc c¬ b¶n sau:
1. C¸c m¹ng tiÕn (feedforward) ®¬n møc
Møc ®Çu ra gåm c¸c neuron
Møc ®Çu vµo gåm c¸c nót nguån
Trong mét m¹ng neuron ph©n møc, c¸c neuron ®−îc tæ chøc d−íi d¹ng c¸c møc. Víi d¹ng ®¬n gi¶n nhÊt cña m¹ng ph©n møc, chóng ta cã mét møc ®Çu vµo gåm c¸c nót nguån chiÕu trùc tiÕp tíi møc ®Çu ra gåm c¸c neuron (c¸c nót tÝnh to¸n). Nh− vËy, m¹ng thùc sù lµ kh«ng cã chu tr×nh. Nã ®−îc minh ho¹ trong h×nh 1.6 cho tr−êng hîp ba nót ®èi víi c¶ møc ®Çu ra vµ ®Çu vµo. Mét m¹ng nh− vËy ®−îc gäi lµ mét m¹ng ®¬n møc. “§¬n møc” tøc lµ chØ cã mét møc, chÝnh lµ møc ®Çu ra gåm c¸c nót tÝnh to¸n (c¸c neuron). Chóng ta kh«ng tÝnh møc ®Çu vµo cña c¸c nót nguån v× kh«ng cã tÝnh to¸n nµo ®−îc thùc hiÖn ë ®©y.
H×nh 1.6 M¹ng tiÕn víi mét møc neuron
2. C¸c m¹ng tiÕn (feedforward) ®a møc
13
Líp thø hai cña mét m¹ng neuron tiÕn ®−îc ph©n biÖt bëi sù cã mÆt cña mét hay nhiÒu møc Èn, mµ c¸c nót tÝnh to¸n cña chóng ®−îc gäi lµ c¸c neuron
Èn hay c¸c ®¬n vÞ Èn (thuËt ng÷ “Èn” ë ®©y mang ý nghÜa lµ kh«ng tiÕp xóc víi m«i tr−êng). Chøc n¨ng cña c¸c neuron Èn lµ can thiÖp vµo gi÷a ®Çu vµo vµ ®Çu ra cña m¹ng mét c¸ch h÷u hiÖu. B»ng viÖc thªm mét vµi møc Èn, m¹ng cã kh¶ n¨ng rót ra ®−îc c¸c thèng kª bËc cao cña tÝn hiÖu ®Çu vµo. Kh¶ n¨ng c¸c neuron Èn rót ra ®−îc c¸c thèng kª bËc cao ®Æc biÖt cã gi¸ trÞ khi møc ®Çu vµo cã kÝch th−íc lín.
C¸c nót nguån trong møc ®Çu vµo cña m¹ng cung cÊp c¸c phÇn tö cña vector ®Çu vµo; chóng t¹o nªn c¸c tÝn hiÖu ®Çu vµo cho c¸c neuron (c¸c nót tÝnh to¸n) trong møc thø hai (møc Èn thø nhÊt). C¸c tÝn hiÖu ®Çu ra cña møc thø hai ®−îc sö dông nh− c¸c ®Çu vµo cho møc thø ba, vµ nh− cø vËy cho phÇn cßn l¹i cña m¹ng. VÒ c¬ b¶n, c¸c neuron trong mçi møc cña m¹ng cã c¸c ®Çu vµo cña chóng lµ c¸c tÝn hiÖu ®Çu ra cña chØ møc ®øng liÒn tr−íc nã (®iÒu nµy cã thÓ kh¸c trong thùc tÕ cµi ®Æt). TËp hîp c¸c tÝn hiÖu ®Çu ra cña c¸c neuron trong møc ®Çu ra cña m¹ng t¹o nªn ®¸p øng toµn côc cña m¹ng ®èi víi c¸c vector ®Çu vµo ®−îc cung cÊp bëi c¸c nót nguån cña møc ®Çu vµo. §å thÞ trong h×nh 1.7 minh ho¹ cÊu tróc cña mét m¹ng neuron tiÕn ®a møc cho tr−êng hîp mét møc Èn. §Ó ®¬n gi¶n, m¹ng ®−îc vÏ trong h×nh 1.7 lµ mét m¹ng 5-3-2 tøc lµ 5 nót nguån, 3 neuron Èn, vµ 2 neuron ®Çu ra.
Møc ®Çu vµo gåm c¸c nót nguån
Møc Èn gåm c¸c neuron Èn
Møc ®Çu ra gåm c¸c neuron ®Çu ra
M¹ng neuron trong h×nh 1.7 ®−îc gäi lµ kÕt nèi ®Çy ®ñ víi ý nghÜa lµ tÊt c¶ c¸c nót trong mçi møc cña m¹ng ®−îc nèi víi tÊt c¶ c¸c nót trong møc tiÕp sau. NÕu mét sè kÕt nèi synapse kh«ng tån t¹i trong m¹ng, chóng ta nãi r»ng m¹ng lµ kÕt nèi kh«ng ®Çy ®ñ.
H×nh 1.7 M¹ng tiÕn kÕt nèi ®Çy dñ víi mét møc Èn vµ mét møc ®Çu ra
3. C¸c m¹ng håi quy (recurrent network)
14
Mét m¹ng neuron håi quy ®−îc ph©n biÖt so víi c¸c m¹ng neuron kh«ng håi quy ë chç lµ nã cã Ýt nhÊt mét vßng lÆp ph¶n håi. VÝ dô. mét m¹ng
z-1
z-1
z-1
C¸c to¸n tö ®¬n vÞ trÔ
håi quy cã thÓ bao gåm mét møc ®¬n c¸c neuron víi mçi neuron ®−a tÝn hiÖu ®Çu ra cña nã quay trë l¹i c¸c ®Çu vµo cña tÊt c¶ c¸c neuron kh¸c, nh− ®−îc minh ho¹ trong h×nh 1.8. Trong cÊu tróc ®−îc m« t¶ trong h×nh nµy, kh«ng cã mét vßng lÆp tù ph¶n håi nµo trong m¹ng; tù ph¶n håi lµ tr−êng hîp ®Çu ra cña mét neuron ®−îc ph¶n håi l¹i chÝnh ®Çu vµo cña neuron ®ã. M¹ng håi quy trong h×nh 1.8 còng kh«ng cã c¸c neuron Èn. Trong h×nh 1.9, chóng ta minh ho¹ mét líp m¹ng håi quy n÷a víi c¸c neuron Èn. C¸c kÕt nèi ph¶n håi ®−îc vÏ trong h×nh 1.9 b¾t nguån tõ c¸c neuron Èn còng nh− tõ c¸c neuron ®Çu ra.
H×nh 1.8 M¹ng håi quy kh«ng cã neuron Èn vµ kh«ng cã vßng lÆp tù ph¶n håi
15
Sù cã mÆt cña c¸c vßng lÆp ph¶n håi, trong c¶ cÊu tróc håi quy cña h×nh 1.8 vµ h×nh 1.9, cã mét ¶nh h−ëng s©u s¾c ®Õn kh¶ n¨ng häc cña m¹ng vµ ®Õn tÝnh n¨ng cña nã. H¬n n÷a, c¸c vßng lÆp ph¶n håi bao hµm viÖc sö dông c¸c nh¸nh ®Æc biÖt gåm cã c¸c phÇn tö ®¬n vÞ trÔ (ký hiÖu lµ z-1), thÓ hiÖn mét hµnh vi phi tuyÕn ®éng theo thêi gian (cïng víi gi¶ sö r»ng m¹ng neuron bao gåm c¸c ®¬n vÞ phi tuyÕn).
z-1
§Çu ra
z-1
z-1
C¸c to¸n tö ®¬n vÞ trÔ
§Çu vµo
H×nh 1.9 M¹ng håi quy cã c¸c neuron Èn
1.2 §Æc tr−ng cña M¹ng neuron
Sau khi ®· t×m hiÓu vÒ cÊu tróc c¬ b¶n cña c¸c m¹ng neuron, chóng ta cã thÓ kÓ ra mét sè ®Æc tr−ng −u viÖt mµ m¹ng neuron cã thÓ thu ®−îc tõ viÖc m« pháng trùc tiÕp bé n·o con ng−êi nh− sau:
1. TÝnh chÊt phi tuyÕn. Mét neuron cã thÓ tÝnh to¸n mét c¸ch tuyÕn tÝnh hay phi tuyÕn. Mét m¹ng neuron, cÊu thµnh bëi sù kÕt nèi c¸c neuron phi tuyÕn th× tù nã sÏ cã tÝnh phi tuyÕn. H¬n n÷a, ®iÒu ®Æc biÖt lµ tÝnh phi tuyÕn nµy ®−îc ph©n t¸n trªn toµn m¹ng. TÝnh phi tuyÕn lµ mét thuéc tÝnh rÊt quan träng, nhÊt lµ khi c¸c c¬ chÕ vËt lý sinh ra c¸c tÝn hiÖu ®Çu vµo (vÝ dô tÝn hiÖu tiÕng nãi) vèn lµ phi tuyÕn.
16
2. TÝnh chÊt t−¬ng øng ®Çu vµo-®Çu ra. MÆc dï kh¸i niÖm “häc” hay “tÝch luü” (training) ch−a ®−îc bµn ®Õn nh−ng ®Ó hiÓu ®−îc mèi quan hÖ ®Çu vµo-®Çu ra cña m¹ng neuron, chóng ta sÏ ®Ò cËp s¬ qua vÒ kh¸i niÖm nµy. Mét m« h×nh häc phæ biÕn ®−îc gäi lµ häc víi mét ng−êi d¹y hay häc cã gi¸m s¸t liªn quan ®Õn viÖc thay ®æi c¸c träng sè synapse cña m¹ng neuron b»ng viÖc ¸p dông mét tËp hîp c¸c mÉu tÝch luü hay c¸c c¸c vÝ dô tÝch luü. Mçi mét vÝ dô bao gåm mét tÝn hiÖu ®Çu vµo vµ mét ®Çu ra mong muèn t−¬ng øng. M¹ng neuron nhËn mét vÝ dô lÊy mét c¸ch ngÉu nhiªn tõ tËp hîp nãi trªn t¹i ®Çu vµo cña nã, vµ c¸c träng sè synapse (c¸c tham sè tù do) cña m¹ng ®−îc biÕn ®æi sao cho cã thÓ cùc tiÓu ho¸ sù sai kh¸c gi÷a ®Çu ra mong muèn vµ ®Çu ra thùc sù cña m¹ng theo mét tiªu chuÈn thèng kª thÝch hîp. Sù tÝch luü cña m¹ng ®−îc lÆp l¹i víi nhiÒu vÝ dô trong tËp hîp cho tíi khi m¹ng ®¹t tíi mét tr¹ng th¸i æn ®Þnh mµ ë ®ã kh«ng cã mét sù thay ®æi ®¸ng kÓ nµo cña c¸c träng sè synapse. C¸c vÝ dô tÝch luü ®−îc ¸p dông tr−íc cã thÓ ®−îc ¸p dông l¹i trong thêi gian cña phiªn tÝch luü nh−ng theo mét thø tù kh¸c. Nh− vËy m¹ng neuron häc tõ c¸c vÝ dô b»ng c¸ch x©y dùng nªn mét t−¬ng øng ®Çu vµo-®Çu ra cho vÊn ®Ò cÇn gi¶i quyÕt. H·y xem xÐt vÝ dô vÒ viÖc ph©n lo¹i mÉu, ë ®ã yªu cÇu ®Æt ra lµ quy cho mét tÝn hiÖu ®Çu vµo mµ thÓ hiÖn mét ®èi t−îng hay sù kiÖn
vËt lý nµo ®ã vµo mét trong sè nh÷ng líp ®· ®−îc x¸c ®Þnh tr−íc. §iÒu cÇn lµm ë ®©y lµ “®¸nh gi¸” c¸c biªn giíi quyÕt ®Þnh trong kh«ng gian tÝn hiÖu ®Çu vµo b»ng c¸ch sö dông mét tËp hîp c¸c vÝ dô ®Ó tÝch luü, vµ kh«ng cÇn tíi mét m« h×nh ph©n bè x¸c suÊt nµo. Mét quan ®iÓm t−¬ng tù ®· ®−îc ngÇm ®Þnh trong m« h×nh häc cã gi¸m s¸t, trong ®ã hµm ý mét sù gÇn gòi gi÷a sù t−¬ng øng ®Çu vµo-®Çu ra cña mét m¹ng neuron víi ph−¬ng ph¸p suy diÔn thèng kª phi tham sè (kh«ng cÇn mét m« h×nh thèng kª x¸c ®Þnh tr−íc cho d÷ liÖu ®Çu vµo).
3. TÝnh chÊt thÝch nghi. C¸c m¹ng neuron cã mét kh¶ n¨ng mÆc ®Þnh lµ biÕn ®æi c¸c träng sè synapse tuú theo sù thay ®æi cña m«i tr−êng xung quanh. §Æc biÖt, mét m¹ng neuron ®· ®−îc tÝch luü ®Ó ho¹t ®éng trong mét m«i tr−êng x¸c ®Þnh cã thÓ ®−îc tÝch luü l¹i mét c¸ch dÔ dµng khi cã nh÷ng thay ®æi nhá cña c¸c ®iÒu kiÖn m«i tr−êng ho¹t ®éng. H¬n n÷a, khi ho¹t ®éng trong mét m«i tr−êng kh«ng æn ®Þnh (c¸c sè liÖu thèng kª thay ®æi theo thêi gian), mét m¹ng neuron cã thÓ ®−îc thiÕt kÕ sao cho cã kh¶ n¨ng thay ®æi c¸c träng sè synapse cña nã theo thêi gian thùc. KiÕn tróc tù nhiªn cña mét m¹ng neuron cho viÖc ph©n lo¹i mÉu, xö lý tÝn hiÖu, vµ c¸c øng dông ®iÒu khiÓn lu«n ®i ®«i víi kh¶ n¨ng thÝch nghi cña m¹ng, t¹o cho nã mét ph−¬ng tiÖn h÷u hiÖu trong viÖc ph©n lo¹i mÉu thÝch nghi, xö lý tÝn hiÖu thÝch nghi, vµ ®iÒu khiÓn thÝch nghi. Nh− mét quy t¾c chung, cã thÓ nãi r»ng chóng ta t¹o ra mét hÖ thèng cµng cã kh¶ n¨ng thÝch nghi th× tÝnh n¨ng cña nã sÏ cµng m¹nh khi hÖ thèng cÇn ph¶i ho¹t ®éng trong mét m«i tr−êng kh«ng æn ®Þnh. Tuy nhiªn, cÇn nhÊn m¹nh r»ng tÝnh thÝch nghi kh«ng ph¶i lóc nµo còng ®em ®Õn søc m¹nh; nã cã thÓ lµm ®iÒu ng−îc l¹i. VÝ dô, mét hÖ thèng thÝch nghi víi nh÷ng h»ng sè thêi gian nhá cã thÓ biÕn ®æi rÊt nhanh vµ nh− vËy lµ cã xu h−íng ph¶n øng l¹i nh÷ng sù nhiÔu lo¹n gi¶ t¹o, vµ sÏ g©y ra sù suy gi¶m m¹nh vÒ tÝnh n¨ng hÖ thèng. §Ó thÓ hiÖn ®Çy ®ñ lîi Ých cña tÝnh thÝch nghi, c¸c h»ng sè thêi gian cña hÖ thèng nªn ®ñ lín ®Ó hÖ thèng cã thÓ bá qua ®−îc sù nhiÔu lo¹n vµ còng ®ñ nhá ®Ó ph¶n øng ®−îc víi nh÷ng thay ®æi cã ý nghÜa cña m«i tr−êng. VÊn ®Ò nµy cã thÓ ®−îc xem nh− mét m©u thuÉn æn ®Þnh-mÒm dÎo.
4. TÝnh chÊt ®−a ra lêi gi¶i cã b»ng chøng. Trong ng÷ c¶ch ph©n lo¹i mÉu, mét m¹ng neuron cã thÓ ®−îc thiÕt kÕ ®Ó ®−a ra th«ng tin kh«ng chØ vÒ mÉu ®−îc ph©n lo¹i, mµ cßn vÒ sù tin cËy cña quyÕt ®Þnh ®· ®−îc thùc hiÖn. Th«ng tin nµy cã thÓ ®−îc sö dông ®Ó lo¹i bá c¸c mÉu m¬ hå hay nhËp nh»ng.
5. TÝnh chÊt chÊp nhËn sai sãt. Mét m¹ng neuron, ®−îc cµi ®Æt d−íi d¹ng phÇn cøng, vèn cã kh¶ n¨ng chÊp nhËn lçi, hay kh¶ n¨ng tÝnh to¸n th« (kh«ng nh¹y c¶m lçi), víi ý nghÜa lµ tÝnh n¨ng cña nã chØ tho¸i ho¸ (chø kh«ng ®æ vì) khi cã nh÷ng ®iÒu kiÖn ho¹t ®éng bÊt lîi. VÝ dô, nÕu mét neuron hay c¸c liªn kÕt kÕt nèi cña nã bÞ háng, viÖc nhËn d¹ng l¹i mét mÉu ®−îc l−u tr÷ sÏ suy gi¶m vÒ chÊt l−îng. Tuy nhiªn, do b¶n chÊt ph©n t¸n cña th«ng tin l−u tr÷ trong m¹ng neuron, sù háng hãc còng ®−îc tr¶i ra trªn toµn m¹ng. Nh− vËy, vÒ c¬ b¶n, trong tr−êng hîp nµy mét m¹ng neuron sÏ thÓ hiÖn mét sù tho¸i ho¸ vÒ tÝnh n¨ng h¬n lµ sù ®æ vì trÇm träng. Cã mét sè b»ng chøng thùc nghiÖm cho viÖc tÝnh to¸n th«, nh−ng nãi chung lµ kh«ng thÓ kiÓm so¸t ®−îc. §Ó ®¶m b¶o r»ng m¹ng neuron thùc sù cã kh¶ n¨ng chÊp nhËn lçi, cã lÏ cÇn ph¶i thùc hiÖn nh÷ng ®o ®¹c hiÖu chØnh trong viÖc thiÕt kÕ thuËt to¸n tÝch luü m¹ng neuron.
17
6. Kh¶ n¨ng cµi ®Æt VLSI. B¶n chÊt song song ®å sé cña mét m¹ng neuron lµm cho nã rÊt nhanh trong tÝnh to¸n ®èi víi mét sè c«ng viÖc. §Æc tÝnh nµy còng
t¹o ra cho mét m¹ng neuron kh¶ n¨ng phï hîp cho viÖc cµi ®Æt sö dông kü thuËt Very-large-scale-intergrated (VLSI). Kü thuËt nµy cho phÐp x©y dùng nh÷ng m¹ch cøng tÝnh to¸n song song quy m« lín. ChÝnh v× vËy mµ −u ®iÓm næi bËt cña VLSI lµ mang l¹i nh÷ng ph−¬ng tiÖn h÷u hiÖu ®Ó cã thÓ xö lý ®−îc nh÷ng hµnh vi cã ®é phøc t¹p cao.
7. T×nh chÊt ®ång d¹ng trong ph©n tÝch vµ thiÕt kÕ. VÒ c¬ b¶n, c¸c m¹ng neuron cã tÝnh chÊt chung nh− lµ c¸c bé xö lý th«ng tin. Chóng ta nªu ra ®iÒu nµy víi cïng ý nghÜa cho tÊt c¶ c¸c lÜnh vùc cã liªn quan tíi viÖc øng dông m¹ng neuron. §Æc tÝnh nµy thÓ hiÖn ë mét sè ®iÓm nh− sau:
• C¸c neuron, d−íi d¹ng nµy hoÆc d¹ng kh¸c, biÓu diÔn mét thµnh phÇn chung cho tÊt c¶ c¸c m¹ng neuron.
• TÝnh thèng nhÊt nµy ®em l¹i kh¶ n¨ng chia sÎ c¸c lý thuyÕt vµ c¸c thuËt to¸n häc trong nhiÒu øng dông kh¸c nhau cña m¹ng neuron.
• C¸c m¹ng tæ hîp (modular) cã thÓ ®−îc x©y dùng th«ng qua mét sù tÝch hîp c¸c m« h×nh kh¸c nhau.
1.3 BiÓu diÔn tri thøc trong M¹ng neuron
Chóng ta cã thÓ ®−a ra ®Þnh nghÜa vÒ tri thøc nh− sau:
Tri thøc chÝnh lµ th«ng tin ®−îc l−u tr÷ hay c¸c m« h×nh ®−îc con ng−êi vµ m¸y mãc sö dông ®Ó biÓu diÔn thÕ giíi, ph¸n ®o¸n vÒ thÕ giíi vµ cã nh÷ng ®¸p øng phï hîp víi thÕ giíi bªn ngoµi.
C¸c ®Æc tÝnh c¬ b¶n cña biÓu diÔn tri thøc lµ: (1) th«ng tin g× thùc sù ®−îc biÓu diÔn; vµ (2) lµm thÕ nµo th«ng tin ®−îc m· ho¸ mét c¸ch vËt lý cho viÖc sö dông sau nµy. Trong c¸c øng dông thùc tÕ cña c¸c m¸y “th«ng minh”, cã thÓ nãi r»ng mét gi¶i ph¸p tèt phô thuéc vµo mét biÓu diÔn tri thøc tèt. §iÒu ®ã còng ®óng víi c¸c m¹ng neuron, mét líp ®Æc biÖt cña c¸c m¸y th«ng minh. Tuy nhiªn, c¸c d¹ng biÓu diÔn cã thÓ tõ c¸c ®Çu vµo thµnh c¸c tham sè bªn trong cña m¹ng lµ rÊt ®a d¹ng, vµ cã khuynh h−íng lµm cho viÖc t×m ra mét gi¶i ph¸p thÝch hîp nh»m biÓu diÔn tri thøc b»ng ph−¬ng tiÖn m¹ng neuron trë nªn mét sù th¸ch thøc vÒ thiÕt kÕ.
ë ®©y cÇn nhÊn m¹nh r»ng m¹ng neuron l−u tr÷ th«ng tin vÒ thÕ giíi thùc b»ng chÝnh b¶n th©n cÊu tróc cña nã kÓ c¶ vÒ mÆt h×nh d¹ng (topo) còng nh− gi¸ trÞ cña c¸c tham sè bªn trong (cã thÓ thay ®æi ®−îc ®Ó n¾m b¾t m«i tr−êng). Mét nhiÖm vô chÝnh cña m¹ng neuron lµ häc mét m« h×nh cña thÕ giíi (m«i tr−êng) xung quanh vµ duy tr× m« h×nh ®ã ®ñ bÒn v÷ng víi thÕ giíi thùc ®Ó cã thÓ ®¹t ®−îc mét sè môc ®Ýnh x¸c ®Þnh cÇn quan t©m. Tri thøc cña thÕ giíi bao gåm hai lo¹i th«ng tin sau:
1.Tr¹ng th¸i thÕ giíi ®· biÕt, ®−îc biÓu diÔn bëi c¸c sù kiÖn vÒ nh÷ng c¸i ®· biÕt; d¹ng thi thøc nµy ®−îc xem nh− lµ c¸c th«ng tin ban ®Çu.
18
2.C¸c quan s¸t (c¸c ®o ®¹c) vÒ thÕ giíi, thu nhËn ®−îc th«ng qua c¸c bé c¶m biÕn ®−îc thiÕt kÕ ®Ó th¨m dß m«i tr−êng mµ trong ®ã m¹ng neuron ho¹t ®éng. Nãi chung, c¸c quan s¸t nµy lu«n bÞ nhiÔu vµ sai lÖch do nhiÒu
nguyªn nh©n kh¸c nhau. C¸c quan s¸t thu nhËn ®−îc nh− vËy cung cÊp mét quü th«ng tin mµ tõ ®ã lÊy ra c¸c vÝ dô (example) ®−îc dïng ®Ó tÝch luü (training) m¹ng neuron.
Nãi mét c¸ch cô thÓ h¬n, th«ng tin ban ®Çu cã thÓ lµ nh÷ng kiÕn thøc vÒ c¸c ®Æc tr−ng cña m«i tr−êng cÇn nghiªn cøu ®−îc sö dông cho viÖc thiÕt kÕ m¹ng neuron ban ®Çu tr−íc khi ®−a nã vµo qu¸ tr×nh häc hay tÝch luü.
B¶n th©n c¸c vÝ dô tÝch luü kh«ng ®−îc l−u tr÷ bëi m¹ng neuron, nh−ng chóng thÓ hiÖn nh÷ng hiÓu biÕt vÒ m«i tr−êng sÏ ®−îc l−u tr÷ trong m¹ng neuron th«ng qua viÖc häc, hay nãi c¸ch kh¸c lµ m¹ng neuron cã thÓ häc ®−îc c¸c hiÓu biÕt ®ã th«ng qua c¸c vÝ dô tÝch luü. C¸c vÝ dô cã thÓ ®−îc g¸n nh·n hoÆc kh«ng. Mét vÝ dô ®−îc g¸n nh·n biÓu diÔn mét tÝn hiÖu ®Çu vµo vµ mét ®¸p øng ®Çu ra mong muèn t−¬ng øng. MÆt kh¸c, mét vÝ dô kh«ng ®−îc g¸n nh·n chØ bao gåm thÓ hiÖn cña tÝn hiÖu ®Çu vµo. Trong qu¸ tr×nh tÝch luü, m¹ng neuron sÏ thay ®æi gi¸ trÞ c¸c tham sè tù do cña nã theo mét sè tiªu chuÈn thèng kª sao cho cã thÓ n¾m b¾t ®−îc tèt nhÊt c¸c th«ng tin cÇn häc chøa trong c¸c vÝ dô tÝch luü.
Cã thÓ thÊy râ mét sù kh¸c nhau c¨n b¶n gi÷a mét m¹ng neuron vµ mét bé ph©n lo¹i mÉu xö lý th«ng tin cæ ®iÓn. §èi víi c¸c ph−¬ng ph¸p cæ ®iÓn, ®Çu tiªn chóng ta th−êng t×m c¸ch x©y dùng mét m« h×nh to¸n häc cho c¸c quan s¸t vÒ m«i tr−êng, sau ®ã tiÕn hµnh hîp thøc ho¸ m« h×nh víi c¸c d÷ liÖu thùc, råi x©y dùng thiÕt kÕ dùa trªn nÒn t¶ng cña m« h×nh ®ã. Tr¸i l¹i, thiÕt kÕ cña mét m¹ng neuron ®−îc t¹o ra mét c¸ch trùc tiÕp trªn c¬ së d÷ liÖu thùc trong ®ã tËp hîp d÷ liÖu (tËp hîp c¸c vÝ dô) lu«n tù ph¸t ng«n cho chÝnh m×nh mµ kh«ng cÇn mét m« h×nh to¸n häc trõu t−îng lµm trung gian. Nh− vËy m¹ng neuron kh«ng chØ cung cÊp m« h×nh ngÇm ®Þnh cho m«i tr−êng mµ nã cßn thùc hiÖn chøc n¨ng xö lý th«ng tin cÇn thiÕt.
Mét c¸ch trùc quan, chóng ta cã thÓ coi biÓu diÔn tri thøc vÒ m«i tr−êng xung quanh trong mét m¹ng neuron ®−îc x¸c ®Þnh bëi chÝnh c¸c träng sè synapse vµ c¸c hÖ sè hiÖu chØnh cña c¸c neuron. Vµ gi¸ trÞ cña c¸c tham sè tù do nµy ®ãng mét vai trß quyÕt ®Þnh cho tÝnh n¨ng cña hÖ thèng.
Do cÊu tróc mét m¹ng neuron lµ v« cïng ®a d¹ng, nªn ®Ó cã thÓ biÓu diÔn tri thøc mét c¸ch cã hiÖu qu¶, ng−êi ta ®−a ra bèn quy t¾c chung sau:
Quy t¾c 1. C¸c ®Çu vµo t−¬ng tù tõ c¸c líp t−¬ng tù cÇn ph¶i lu«n t¹o ra nh÷ng biÓu diÔn t−¬ng tù trong m¹ng, vµ nh− vËy nªn ®−îc ph©n líp thuéc vÒ cïng mét lo¹i.
Trong tiªu chuÈn nµy, ng−êi ta th−êng sö dông mét sè th−íc ®o ®Ó x¸c ®Þnh ®é “t−¬ng tù” gi÷a c¸c ®Çu vµo (vÝ dô kho¶ng c¸ch euclide).
Quy t¾c 2. C¸c phÇn tö mµ cã thÓ ph©n ra thµnh c¸c líp riªng biÖt th× nªn cã nh÷ng biÓu diÔn kh¸c nhau ®¸ng kÓ trong m¹ng.
Quy t¾c 3. NÕu mét ®Æc tr−ng nµo ®ã ®Æc biÖt quan träng th× nªn cã mét sè l−îng lín neuron liªn quan ®Õn viÖc biÓu diÔn ®Æc tr−ng nµy trong m¹ng.
19
Sè l−îng lín c¸c neuron b¶o ®¶m møc ®é chÝnh x¸c cao trong viÖc thùc hiÖn c¸c quyÕt ®Þnh vµ n©ng cao kh¶ n¨ng chÞu ®ùng c¸c neuron háng.
Quy t¾c 4. Th«ng tin ban ®Çu vµ c¸c tÝnh chÊt bÊt biÕn nªn ®−îc ®−a vµo trong thiÕt kÕ ban ®Çu cña mét m¹ng neuron, vµ nh− vËy sÏ gi¶m bít g¸nh nÆng cho qu¸ tr×nh häc.
Quy t¾c 4 ®Æc biÖt quan träng v× nÕu chóng ta ¸p dông nã mét c¸ch thÝch hîp sÏ dÉn ®Õn kh¶ n¨ng t¹o ra c¸c m¹ng neuron víi mét kiÕn tróc chuyªn biÖt. §iÒu nµy thùc sù ®−îc quan t©m do mét sè nguyªn nh©n sau:
1. C¸c m¹ng neuron thÞ gi¸c vµ thÝnh gi¸c sinh häc ®−îc biÕt lµ rÊt chuyªn biÖt.
2. Mét m¹ng neuron víi cÊu tróc chuyªn biÖt th−êng cã mét sè l−îng nhá c¸c tham sè tù do phï hîp cho viÖc chØnh lý h¬n lµ mét m¹ng kÕt nèi ®Çy ®ñ. Nh− vËy m¹ng neuron chuyªn biÖt cÇn mét tËp hîp d÷ liÖu nhá h¬n cho viÖc tÝch luü; nã häc sÏ nhanh h¬n, vµ th−êng cã kh¶ n¨ng tæng qu¸t ho¸ tèt h¬n.
3. Tèc ®é chuyÓn th«ng tin qua mét m¹ng chuyªn biÖt lµ nhanh h¬n.
4. Gi¸ cña viÖc x©y dùng mét m¹ng chuyªn biÖt sÏ nhá h¬n do kÝch th−íc nhá cña nã so víi m¹ng kÕt nèi ®Çy ®ñ.
1.4 TrÝ tuÖ nh©n t¹o vµ M¹ng neuron
Môc ®Ých cña trÝ tuÖ nh©n t¹o (artificial intelligence(AI)) lµ ph¸t triÓn c¸c m« h×nh hay c¸c gi¶i thuËt yªu cÇu m¸y tÝnh thùc hiÖn nh÷ng c«ng viÖc mang tÝnh nhËn thøc mµ con ng−êi lu«n thùc hiÖn mét c¸ch tèt h¬n.
BiÓu diÔn
Häc
Suy diÔn
Mét hÖ thèng AI ph¶i cã kh¶ n¨ng thùc hiÖn ba viÖc: (1) l−u tr÷ tri thøc, (2) øng dông tri thøc ®−îc l−u tr÷ ®Ó gi¶i quyÕt c¸c bµi to¸n, vµ (3) thu nhËn tri thøc míi th«ng qua thùc nghiÖm. T−¬ng øng víi ba nhiÖm vô ®ã, mét hÖ thèng trÝ tuÖ nh©n t¹o cã ba thµnh phÇn chÝnh: biÓu diÔn, suy diÔn, vµ häc, nh− ®−îc m« t¶ trong h×nh 1.10.
H×nh 1.10 Ba thµnh phÇn c¬ b¶n cña mét hÖ thèng AI
20
Nh− vËy chóng ta thÊy r»ng m¹ng neuron cã mèi quan hÖ gÇn gòi víi c¸c m¸y AI. §Ó cã thÓ cã thÓ thùc hiÖn viÖc so s¸nh, chóng ta ph©n tÝch ba yÕu tè sau: møc ®é gi¶i thÝch hiÖn t−îng nhËn thøc, ph−¬ng ph¸p xö lý, vµ cÊu tróc biÓu diÔn.
1. Møc ®é gi¶i thÝch hiÖn t−îng nhËn thøc. Mét trong nh÷ng ®iÓm næi bËt cña mét AI cæ ®iÓn lµ ë viÖc x©y dùng c¸c biÓu diÔn ký hiÖu (symbol) (®−îc dïng ®Ó thay thÕ cho c¸c hiÖn t−îng nhËn thøc cÇn nghiªn cøu). AI gi¶ ®Þnh sù tån t¹i cña c¸c biÓu diÔn mang tÝnh tinh thÇn cña nhËn thøc vµ nã m« h×nh ho¸ nhËn thøc nh− lµ sù xö lý tuÇn tù c¸c biÓu diÔn ký hiÖu.
MÆt kh¸c, ®iÓm næi bËt cña mét m¹ng neuron lµ trong viÖc ph¸t triÓn c¸c m« h×nh sö lý ph©n t¸n song song (parallel distributed processing (PdP)). C¸c m« h×nh nµy gi¶ ®Þnh r»ng viÖc xö lý th«ng tin ®−îc tiÕn hµnh th«ng qua sù t−¬ng t¸c cña mét sè l−îng lín c¸c neuron, mçi neuron göi c¸c tÝn hiÖu kÝch thÝch hay øc chÕ tíi c¸c neuron kh¸c trong m¹ng. Nh− vËy, m¹ng neuron nhÊn m¹nh chñ yÕu trªn viÖc gi¶i thÝch mang tÝnh thÇn kinh sinh häc cho hiÖn t−îng nhËn thøc.
2. Ph−¬ng ph¸p xö lý. Trong AI cæ ®iÓn, viÖc xö lý mang tÝnh tuÇn tù, gièng nh− trong lËp tr×nh. ThËm chÝ khi thø tù thùc hiÖn kh«ng ®−îc x¸c ®Þnh tr−íc (vÝ dô viÖc quÐt qua c¸c sù kiÖn vµ c¸c luËt cña mét hÖ chuyªn gia), c¸c thao t¸c vÉn ®−îc thùc hiÖn theo mét c¸ch tuÇn tù. ViÖc sö dông xö lý tuÇn tù cã nhiÒu kh¶ n¨ng lµ do b¶n chÊt tuÇn tù cña ng«n ng÷ tù nhiªn vµ suy luËn vËt lý, còng nh− tõ cÊu tróc cña m¸y Von Neuman. Chóng ta kh«ng nªn quªn r»ng AI b¾t ®Çu ph¸t triÓn chØ mét thêi gian ng¾n sau m¸y Von Neuman.
Tr¸i l¹i, tÝnh song song kh«ng chØ lµ ®iÒu c¨n b¶n mang tÝnh lý thuyÕt trong vÊn ®Ò xö lý cña mét m¹ng neuron, mµ nã cßn lµ nguån gèc cña tÝnh linh ho¹t mÒm dÎo. H¬n n÷a, sù song song cã thÓ rÊt ®å sé (hµng tr¨m ngh×n neuron), nã mang l¹i cho m¹ng neuron mét d¹ng ®Æc biÖt cña tÝnh to¸n th« (chÊp nhËn lçi). Víi viÖc tÝnh to¸n tr¶i ra trªn nhiÒu neuron, th−êng kh«ng cã g× nghiªm träng x¶y ra khi mét sè neuron thùc hiÖn c¸c tÝnh to¸n kh«ng ®óng víi c¸c gi¸ trÞ mong ®îi. C¸c ®Çu vµo bÞ nhiÔu vµ kh«ng toµn vÑn vÉn cã thÓ ®−îc nhËn ra, mét m¹ng neuron cã sù sai lÖch vÉn cã kh¶ n¨ng ho¹t ®éng, vµ viÖc häc kh«ng cÇn ph¶i qu¸ hoµn chØnh. TÝnh n¨ng cña m¹ng chØ cã thÓ suy tho¸i trong mét ph¹m vi nµo ®ã khi cã sù cè x¶y ra.
3. CÊu tróc biÓu diÔn. Lu«n cã mét ng«n ng÷ lµm ph−¬ng tiÖn m« h×nh ho¸ trong mét AI cæ ®iÓn. Chóng ta cã thÓ nhËn thÊy r»ng c¸c biÓu diÔn ký hiÖu cña AI t¹o nªn mét cÊu tróc gi¶ ng«n ng÷. Gièng nh− ng«n ng÷ tù nhiªn, c¸c ng«n ng÷ cña AI cæ ®iÓn nh×n chung lµ kh¸ phøc t¹p, mang mét kiÓu c¸ch ®−îc hÖ thèng ho¸ tõ c¸c ký hiÖu ®¬n. NÕu ta cã mét sè l−îng h÷u h¹n c¸c ký hiÖu ®−îc l−u tr÷ th× nh÷ng biÓu diÔn ng«n ng÷ sÏ ®−îc t¹o thµnh tõ b¶n th©n c¸c ký hiÖu còng nh− sù kÕt hîp gi÷a cÊu tróc có ph¸p vµ ng÷ nghÜa.
Tuy nhiªn, b¶n chÊt vµ cÊu tróc biÓu diÔn l¹i lµ mét vÊn nh¹y c¶m ®èi víi c¸c m¹ng neuron. ChØ víi c¸c tham sè tù do (c¸c träng sè synapse vµ c¸c hÖ sè hiÖu chØnh) ®−îc dïng ®Ó biÓu diÔn tri thøc, nãi chung trong m¹ng neuron, kh«ng tån t¹i mét c¸ch râ rµng c¸c kh¸i niÖm mang tÝnh ng÷ nghÜa. §iÒu nµy ®«i khi g©y khã kh¨n cho ng−êi sö dông trong viÖc hiÓu ý nghÜa vµ kiÓm so¸t qu¸ tr×nh ho¹t ®éng cña m¹ng neuron.
21
Tõ c¸c so s¸nh trªn, chóng ta thÊy r»ng, ®Ó cã thÓ tËn dông ®−îc −u ®iÓm vÒ kh¸i niÖm vµ ng÷ nghÜa cña AI cæ ®iÓn, còng nh− søc m¹nh tÝnh to¸n song song, chÊp nhËn lçi cña m¹ng neuron, mét h−íng nghiªn cøu cÇn ph¸t triÓn (vµ ®· b¾t ®Çu ph¸t tirÓn) lµ x©y dùng c¸c m« h×nh lai tÝch hîp c¶ hai tiÕp cËn nãi trªn.
Ch−¬ng 2
ph−¬ng ph¸p häc cho m¹ng tiÕn (feedforward) ®a møc
2.1 Lý thuyÕt häc vµ vÊn ®Ò nhËn d¹ng mÉu
Tr−íc tiªn, chóng ta cÇn ®−a ra ®Þnh nghÜa h×nh thøc cña viÖc häc hay tÝch luü ®−îc ¸p dông cho c¸c m¹ng neuron nh©n t¹o nh− sau:
Häc lµ mét qu¸ tr×nh mµ nhê nã c¸c tham sè tù do cña mét m¹ng neuron ®−îc ®iÒu chØnh l¹i cho phï hîp th«ng qua mét qu¸ tr×nh kÝch thÝch bëi m«i tr−êng.
§Þnh nghÜa nµy bao hµm nh÷ng ý nghÜa quan träng sau:
• M¹ng neuron ®−îc kÝch thÝch bëi mét m«i tr−êng.
• M¹ng neuron tr¶i qua nh÷ng sù thay ®æi vÒ c¸c tham sè tù do cña nã nh− lµ kÕt qu¶ cña sù kÝch thÝch nµy.
• M¹ng neuron ®¸p øng l¹i theo mét c¸ch hoµn toµn míi víi m«i tr−êng do sù thay ®æi vÒ cÊu tróc bªn trong cña nã.
Mét tËp hîp c¸c quy t¾c ®−îc x¸c ®Þnh cho lêi gi¶i cña bµi to¸n häc ®−îc gäi lµ thuËt to¸n häc. Kh«ng cã mét thuËt to¸n häc duy nhÊt cho viÖc thiÕt kÕ c¸c m¹ng neuron, mµ chóng ta cã mét “bé c«ng cô” bao gåm nhiÒu thuËt to¸n häc rÊt ®a d¹ng, mçi thuËt to¸n ®Òu cã nh÷ng −u ®iÓm riªng. Nãi chung, c¸c thuËt to¸n häc kh¸c nhau chñ yÕu trong c¸ch thøc ®iÒu chØnh träng sè synapse cña mét neuron.
2.1.1 Quy t¾c häc hiÖu chØnh lçi
Cã thÓ kÓ ra nhiÒu quy t¾c häc c¬ b¶n nh−: häc hiÖu chØnh lçi, häc dùa trªn bé nhí, häc kiÓu Heb, häc c¹nh tranh, häc kiÓu bolzman. Tuy nhiªn trong b¶n luËn v¨n nµy, t¸c gi¶ chØ xin ®Ò cËp ®Õn mét quy t¾c häc phæ biÕn vµ ®−îc sö dông lµm c¬ së cho viÖc x©y dùng phÇn mÒm thùc nghiÖm, ®ã lµ quy t¾c häc hiÖu chØnh lçi.
22
§Ó minh ho¹ cho quy t¾c häc nµy, h·y xem xÐt tr−êng hîp ®¬n gi¶n cña mét neuron k t¹o nªn nót tÝnh to¸n duy nhÊt trong møc ®Çu ra cña mét m¹ng neuron tiÕn, nh− ®−îc m« t¶ trong h×nh 2.1. Neuron k tiÕp nhËn mét vector tÝn hiÖu x(n) ®−îc t¹o ra bëi mét hay nhiÒu møc neuron Èn, chÝnh chóng còng tiÕp nhËn mét vector ®Çu vµo (t¸c nh©n kÝch thÝch) tõ c¸c nót nguån (møc ®Çu vµo). §èi sè n lµ thêi gian rêi r¹c, hay chÝnh x¸c h¬n, lµ b−íc thêi gian cña mét qu¸ tr×nh lÆp nh»m ®iÒu chØnh c¸c träng sè synapse cña neuron k. TÝn hiÖu ®Çu ra cña neuron k ®−îc ký hiÖu bëi yk(n). TÝn hiÖu ®Çu ra nµy, biÓu diÔn ®Çu ra duy nhÊt cña m¹ng
(2.1) neuron, ®−îc so s¸nh víi ®¸p øng mong ®îi hay ®Çu ra ®Ých, ký hiÖu bëi dk(n). Vµ mét tÝn hiÖu lçi, ký hiÖu bëi ek(n), ®−îc sinh ra nh− sau ek(n)=dk(n)-yk(n)
n )( =τ
TÝn hiÖu lçi lµ nguån gèc mét kü thuËt ®iÒu khiÓn, mµ môc ®Ýnh cña nã lµ ¸p dông mét chuçi nh÷ng söa ®æi mang tÝnh hiÖu chØnh cho c¸c träng sè synapse cña neuron k. Nh÷ng söa ®æi nµy lµ nh»m t¹o ra tÝn hiÖu ®Çu ra yk(n) dÇn tiÕn gÇn tíi ®¸p øng mong ®îi dk(n). Môc ®Ých nµy ®¹t ®−îc b»ng c¸ch cùc tiÓu ho¸ mét hµm gi¸ hay chØ sè tÝnh n¨ng, τ(n), ®−îc x¸c ®Þnh theo tÝn hiÖu lçi nh− sau
2 ne )( k
1 2
(2.2)
Vector ®Çu vµo
x(n)
dk(n)
Σ
NghÜa lµ τ(n) chÝnh lµ gi¸ trÞ tøc thêi cña n¨ng l−îng lçi. Nh÷ng sù ®iÒu chØnh dÇn dÇn c¸c träng sè synapse cña neuron k tiÕp tôc cho tíi khi hÖ thèng ®¹t tíi mét tr¹ng th¸i æn ®Þnh (c¸c träng sè synapse Ýt biÕn ®æi). T¹i thêi ®iÓm nµy, qu¸ tr×nh häc kÕt thóc.
Neuron
yk(n) -
®Çu ra k
+
Mét hay nhiÒu møc neuron Èn
ek(n)
M¹ng tiÕn ®a møc
H×nh 2.1 S¬ ®å quy t¾c häc hiÖu chØnh lçi
η=
Δ
nxne )( )( k
j
nw )( kj
Qu¸ tr×nh häc ®−îc m« t¶ ë ®©y ®−îc gäi lµ häc hiÖu chØnh lçi. §Æc biÖt, viÖc cùc tiÓu hµm gi¸ τ(n) dÉn ®Õn mét quy t¾c häc th−êng ®−îc gäi lµ quy t¾c delta hay quy t¾c Widrow-Hoff. §Æt wkj(n) ®Ó chØ gi¸ trÞ cña träng sè synapse wkj cña neuron k; synapse nµy ®−îc kÝch thÝch bëi thµnh phÇn xj(n) cña vector tÝn hiÖu x(n) t¹i b−íc thêi gian n. Theo quy t¾c delta, hiÖu chØnh Δ wkj(n) ¸p dông cho träng sè synapse wkj t¹i b−íc thêi gian n ®−îc x¸c ®Þnh nh− sau (2.3)
ë ®ã η lµ mét h»ng sè d−¬ng tû lÖ víi tèc ®é häc khi chóng ta tiÕn tõ b−íc nµy tíi b−íc kh¸c trong qu¸ tr×nh häc. Nh− vËy chóng ta cã thÓ quy cho η lµ tham sè tèc ®é häc. Nãi c¸ch kh¸c quy t¾c delta cã thÓ ®−îc ph¸t biÓu nh− sau:
Sù ®iÒu chØnh thùc hiÖn cho mét träng sè synapse cña mét neuron tû lÖ víi tÝn hiÖu lçi vµ tÝn hiÖu ®Çu vµo cña synapse ®ang xÐt.
23
CÇn nhí r»ng quy t¾c delta ë ®©y gi¶ ®Þnh tr−íc r»ng tÝn hiÖu lçi cã thÓ ®o ®−îc mét c¸ch trùc tiÕp. §Ó sù ®o ®¹c nµy cã thÓ thùc hiÖn ®−îc, râ rµng chóng ta cÇn mét sù cung cÊp ®¸p øng mong muèn tõ nguån bªn ngoµi cho neuron k. Nãi c¸ch kh¸c, neuron k lµ cã thÓ nh×n thÊy ®−îc ®èi víi thÕ giíi bªn ngoµi (neuron k
lµ neuron ®Çu ra), nh− ®−îc m« t¶ trong h×nh 2.1. Tõ h×nh nµy, ta thÊy r»ng viÖc häc hiÖu chØnh lçi cã b¶n chÊt côc bé. §iÒu nµy nãi lªn r»ng nh÷ng sù ®iÒu chØnh träng sè synapse ®−îc thùc hiÖn bëi quy t¾c delta ®−îc côc bé ho¸ xung quanh neuron k (chØ liªn quan tíi neuron k).
Gi¸ trÞ cËp nhËt cña träng sè synapse wkj ®−îc x¸c ®Þnh nh− sau
(2.4) wkj(n+1)=wkj(n)+Δwkj(n)
Thùc tÕ, wkj(n) vµ wkj(n+1) cã thÓ ®−îc xem nh− c¸c gi¸ trÞ cò vµ míi cña
(2.5) wkj(n)=z-1[wkj(n+1)]
träng sè synapse wkj. Chóng ta còng cã thÓ viÕt nh− sau ë ®ã z-1 to¸n tö ®¬n vÞ trÔ, biÓu thÞ mét phÇn tö l−u tr÷.
Chóng ta cã thÓ nhËn thÊy r»ng viÖc häc hiÖu chØnh lçi lµ mét vÝ dô cña mét hÖ thèng ph¶n håi ®ãng vßng lÆp. Tõ lý thuyÕt ®iÒu khiÓn, chóng ta biÕt r»ng tÝnh æn ®Þnh cña mét hÖ thèng nh− vËy lµ do c¸c tham sè t¹o nªn vßng lÆp ph¶n håi cña hÖ thèng quyÕt ®Þnh. Trong tr−êng hîp cña chóng ta, chØ cã mét vßng lÆp ph¶n håi ®¬n, vµ mét trong c¸c tham sè nh− võa nãi tíi lµ tham sè tèc ®é häc η. Do ®ã cÇn chän mét c¸ch cÈn thËn tham sè η ®Ó ®¶m b¶o tÝnh æn ®Þnh hay tÝnh héi tô cña qu¸ tr×nh häc. ViÖc chän gi¸ trÞ cho tham sè nµy cßn ¶nh h−ëng s©u s¾c tíi ®é chÝnh x¸c vµ mét sè khÝa c¹nh kh¸c cña viÖc häc.
2.1.2 M« h×nh häc
Mét khÝa c¹nh kh¸c còng ®−îc ®−îc quan t©m lµ c¸ch thøc mét m¹ng neuron (®−îc xem nh− mét m¸y häc) quan hÖ víi m«i tr−êng trong qu¸ tr×nh häc. Trong khÝa c¹nh nµy, chóng ta nãi tíi mét m« h×nh häc ®Ó ¸m chØ mét m« h×nh cña m«i tr−êng trong ®ã m¹ng neuron ho¹t ®éng. Cã hai m« h×nh häc chÝnh. M« h×nh häc kh«ng cã ng−êi d¹y liªn quan ®Õn qu¸ tr×nh tù tÝch luü tõ c¸c vÝ dô kh«ng ®−îc g¸n nh·n cña m¹ng neuron. Tuy nhiªn ë ®©y chóng ta sÏ chØ ®Ò cËp tíi m« h×nh häc c¬ b¶n h¬n: Häc víi mét ng−êi d¹y.
Häc víi mét ng−êi d¹y
24
H×nh 2.2 cho ta mét s¬ ®å khèi minh ho¹ m« h×nh häc th−êng ®−îc gäi lµ häc cã gi¸m s¸t nµy. Trong sè c¸c thuËt ng÷ mang tÝnh kh¸i niÖm, chóng ta cã thÓ nghÜ vÒ “mét ng−êi d¹y“ nh− lµ mét ng−êi cã kiÕn thøc vÒ m«i tr−êng, mµ kiÕn thøc ®ã ®−îc biÓu diÔn bëi mét tËp hîp c¸c vÝ dô ®Çu vµo-®Çu ra. Tuy nhiªn, m¹ng neuron kh«ng biÕt g× vÒ m«i tr−êng. B©y giê gi¶ sö r»ng c¶ ng−êi d¹y vµ m¹ng neuron ®Òu tiÕp nhËn mét vector tÝch luü (mét vÝ dô) thu ®−îc tõ m«i tr−êng. B»ng kiÕn thøc vèn cã, ng−êi d¹y cã kh¶ n¨ng ®−a ra cho m¹ng neuron mét ®¸p øng mong muèn cho vector tÝch luü ®ã. Thùc tÕ, ®¸p øng mong muèn sÏ quyÕt ®Þnh hµnh ®éng tèi −u cÇn thùc hiÖn cho m¹ng neuron. C¸c tham sè cña m¹ng ®−îc ®iÒu chØnh d−íi ¶nh h−ëng tæ hîp cña vector tÝch luü vµ tÝn hiÖu lçi. TÝn hiÖu lçi ®−îc x¸c ®Þnh nh− lµ sù kh¸c biÖt gi÷a ®¸p øng mong muèn vµ ®¸p øng thùc sù. Sù ®iÒu chØnh nµy ®−îc thùc hiÖn dÇn dÇn lÆp ®i lÆp l¹i víi môc ®Ých lµm cho m¹ng neuron s¸nh ®−îc víi ng−êi d¹y. Theo c¸ch nµy, kiÕn thøc vÒ m«i tr−êng s½n dïng cña ng−êi d¹y ®−îc chuyÓn sang m¹ng neuron th«ng qua tÝch luü mét c¸ch ®Çy ®ñ
Vector m« t¶ tr¹ng th¸i cña m«i tr−êng
M«i tr−êng
Ng−êi d¹y
§¸p øng mong muèn
+
§¸p øng thùc sù
Σ
-
HÖ thèng häc
TÝn hiÖu lçi
nhÊt cã thÓ ®−îc. Khi ®¹t ®−îc ®iÒu kiÖn nµy, chóng ta cã thÓ kh«ng cÇn tíi ng−êi d¹y n÷a vµ ®Ó cho m¹ng neuron tù nã quan hÖ víi m«i tr−êng.
H×nh 2.2 S¬ ®å khèi cña m« h×nh häc víi mét ng−êi d¹y
25
D¹ng häc cã gi¸m s¸t mµ chóng ta võa m« t¶ ë trªn lµ ph−¬ng ph¸p häc hiÖu chØnh lçi mµ chóng ta ®· ®Ò cËp ®Õn trong phÇn 2.1.1. §èi víi mét th−íc ®o tÝnh n¨ng hÖ thèng, chóng ta cã thÓ nghÜ tíi d¹ng lçi b×nh ph−¬ng trung b×nh hay tæng c¸c lçi b×nh ph−¬ng trªn toµn bé c¸c vÝ dô tÝch luü, ®−îc x¸c ®Þnh nh− lµ mét hµm cña c¸c tham sè tù do cña m¹ng neuron (c¸c träng sè synapse vµ c¸c hÖ sè hiÖu chØnh). Hµm nµy cã thÓ ®−îc h×nh dung nh− mét bÒ mÆt lçi tÝnh n¨ng, víi c¸c trôc to¹ ®é lµ c¸c tham sè tù do. BÒ mÆt lçi ®−îc tÝnh trung b×nh trªn tÊt c¶ c¸c vÝ dô ®Çu vµo-®Çu ra cã thÓ. BÊt kú mét tr¹ng th¸i nµo cña hÖ thèng ®Æt d−íi sù ®iÒu khiÓn cña ng−êi d¹y ®Òu ®−îc biÓu diÔn nh− lµ mét ®iÓm trªn bÒ mÆt lçi. §Ó hÖ thèng cã thÓ n©ng cao ®−îc tÝnh n¨ng theo thêi gian, trong qu¸ tr×nh häc tõ ng−êi d¹y, ®iÓm biÓu diÔn tr¹ng th¸i ph¶i di chuyÓn dÇn vÒ phÝa mét ®iÓm cùc tiÓu cña bÒ mÆt lçi (cã thÓ lµ cùc tiÓu côc bé hoÆc toµn côc). Mét hÖ thèng häc cã gi¸m s¸t thùc hiÖn ®iÒu nµy b»ng c¸ch sö dông th«ng tin mµ nã cã vÒ gradient cña bÒ mÆt lçi t−¬ng øng víi tr¹ng th¸i hiÖn thêi cña hÖ thèng. Gradient cña bÒ mÆt lçi t¹i bÊt kú ®iÓm nµo lµ mét vector theo h−íng dèc xuèng nhÊt. Thùc tÕ, hÖ thèng cã thÓ sö dông mét ®¸nh gi¸ tøc thêi cho c¸c vector gradient nÕu coi c¸c chØ sè vÝ dô tÝch luü nh− chØ sè vÒ thêi gian. ViÖc sö dông mét ®¸nh gi¸ nh− vËy dÉn ®Õn kÕt qu¶ lµ mét sù dÞch chuyÓn cña ®iÓm biÓu thÞ tr¹ng th¸i trªn bÒ mÆt lçi cã tÝnh chÊt nh− mét “di chuyÓn ngÉu nhiªn”. Nh− vËy, nÕu cho tr−íc mét thuËt to¸n ®−îc thiÕt kÕ nh»m cùc tiÓu ho¸ hµm gi¸, mét tËp hîp ®Çy ®ñ c¸c vÝ dô ®Çu vµo-®Çu ra, vµ mét thêi gian cho phÐp ®ñ ®Ó tÝch luü, th× mét hÖ thèng häc cã gi¸m s¸t lu«n cã kh¶ n¨ng thùc hiÖn nh÷ng c«ng viÖc nh− ph©n lo¹i mÉu v.v...
2.1.3 §èi víi vÊn ®Ò nhËn d¹ng mÉu (ph©n lo¹i mÉu)
Con ng−êi rÊt giái trong viÖc nhËn d¹ng mÉu. Con ng−êi thùc hiÖn nhËn d¹ng mÉu th«ng qua mét qu¸ tr×nh häc; ®iÒu ®ã còng x¶y ra ®èi víi c¸c m¹ng neuron.
NhËn d¹ng mÉu vÒ mÆt h×nh thøc ®−îc ®Þnh nghÜa nh− lµ qu¸ tr×nh mµ nhê nã mét mÉu hay tÝn hiÖu thu nhËn ®−îc g¸n cho mét trong sè c¸c líp ®· ®−îc x¸c ®Þnh tr−íc. Mét m¹ng neuron thùc hiÖn nhËn d¹ng mÉu tr−íc tiªn b»ng viÖc tr¶i qua mét phiªn tÝch luü, trong suèt phiªn nµy m¹ng thu nhËn lÆp ®i lÆp l¹i mét tËp hîp c¸c mÉu ®Çu vµo. Sau ®ã, m¹ng thu nhËn mét mÉu míi ch−a tõng ®−îc biÕt tíi nh−ng thuéc cïng mét d¹ng víi c¸c mÉu ®−îc sö dông ®Ó tÝch luü m¹ng. M¹ng cã kh¶ n¨ng ®Þnh râ mÉu ®ã thuéc líp nµo nhê th«ng tin mµ nã ®· lÊy ®−îc tõ d÷ liÖu tÝch luü. NhËn d¹ng mÉu ®−îc thùc hiÖn bëi m¹ng neuron vÒ b¶n chÊt mang tÝnh thèng kª, víi c¸c mÉu ®−îc biÓu diÔn d−íi d¹ng c¸c ®iÓm trong kh«ng gian quyÕt ®Þnh ®a chiÒu. Kh«ng gian quyÕt ®Þnh ®−îc chia thµnh c¸c vïng, mçi vïng t−¬ng øng víi mét líp. C¸c ®−êng biªn quyÕt ®Þnh ®−îc x¸c ®Þnh bëi qu¸ tr×nh tÝch luü. ViÖc cÊu tróc nªn c¸c ®−êcg biªn nµy ®−îc thùc hiÖn mét c¸ch thèng kª xuÊt ph¸t tõ tÝnh chÊt biÕn thiªn vèn cã tån t¹i bªn trong c¸c líp vµ gi÷a c¸c líp.
• M¸y ®−îc chia thµnh hai phÇn, mét m¹ng kh«ng ®iÒu khiÓn ®Ó lÊy ra c¸c
®Æc tr−ng vµ mét m¹ng cã gi¸m s¸t ®Ó ph©n líp. Mét ph−¬ng ph¸p nh− vËy
lµ sù tiÕp nèi quan ®iÓm truyÒn thèng vÒ nhËn d¹ng mÉu thèng kª. VÒ mÆt
kh¸i niÖm, mét mÉu ®−îc biÓu diÔn bëi mét tËp hîp m quan s¸t mµ cã thÓ
®−îc xem nh− mét ®iÓm x trong mét kh«ng gian quan s¸t m chiÒu. ViÖc lÊy
ra c¸c ®Æc tr−ng ®−îc m« t¶ nh− mét sù chuyÓn ®æi ®iÓm x thµnh mét ®iÓm
y trong mét kh«ng gian ®Æc tr−ng q chiÒu víi q • M¸y ®−îc thiÕt kÕ nh− mét m¹ng tiÕn ®a møc sö dông mét thuËt to¸n häc
cã gi¸m s¸t. Trong tiÕp cËn thø hai nµy, c«ng viÖc lÊy ra c¸c ®Æc tr−ng ®−îc
thùc hiÖn bëi c¸c ®¬n vÞ tÝnh to¸n trong c¸c møc Èn cña m¹ng. Nh×n chung, c¸c m¸y nhËn d¹ng mÉu sö dông m¹ng neuron cã thÓ thuéc hai d¹ng sau: ViÖc lùa chän tiÕp cËn nµo trong thùc hµnh phô thuéc vµo øng dông cÇn x©y
dùng. §èi víi phÇn mÒm thö nghiÖm vÒ nhËn d¹ng nguyªn ©m trong b¶n luËn v¨n
nµy, t¸c gi¶ ®· sö dông kiÓu m¸y nhËn d¹ng mÉu thø hai. ë Ch−¬ng 1, chóng ta ®· biÕt thÕ nµo lµ mét m¹ng neuron tiÕn ®a møc.
Trong phÇn nµy, chóng ta tËp trung nghiªn cøu ph−¬ng ph¸p tÝch luü cho kiÕn tróc
m¹ng phæ biÕn nµy. 26 Tr−íc tiªn, chóng ta nªu ra mét sè nh÷ng ®Æc tr−ng t¹o nªn søc m¹nh cña kiÕn tróc m¹ng neuron tiÕn ®a møc: y = i 1
1 exp( v ) + − j 1.M« h×nh cña mçi neuron trong m¹ng bao gåm mét hµm kÝch ho¹t kh«ng
tuyÕn tÝnh. §iÓm quan träng cÇn nhÊn m¹nh ë ®©y lµ sù kh«ng tuyÕn tÝnh cã
tÝnh chÊt tr¬n (hµm ph©n biÖt vµ liªn tôc). Mét d¹ng hµm hay ®−îc sö dông
tho¶ m·n yªu cÇu nµy lµ hµm sigma: 2. M¹ng bao gåm mét hay nhiÒu møc neuron Èn. C¸c neuron Èn nµy cho
phÐp m¹ng cã thÓ häc nh÷ng kiÕn thøc vÒ nh÷ng c«ng viÖc rÊt phøc t¹p
b»ng c¸ch dÇn lÊy ra ®−îc c¸c ®Ëc tr−ng cã ý nghÜa h¬n tõ c¸c mÉu ®Çu vµo. 3. M¹ng thÓ hiÖn møc ®é kÕt nèi cao, ®−îc x¸c ®Þnh bëi c¸c synapse cña
m¹ng. §Ó cã thÓ thay ®æi tÝnh kÕt nèi cña m¹ng cÇn sù thay ®æi vÒ tæ chøc
c¸c kÕt nèi synapse hay cña c¸c gi¸ trÞ träng sè synapse. ChÝnh b»ng sù tæ hîp c¸c ®Æc tÝnh trªn víi nhau cïng víi kh¶ n¨ng häc tõ
thùc nghiÖm th«ng qua tÝch luü mµ m¹ng tiÕn ®a møc thÓ hiÖn søc m¹nh tÝnh to¸n
cña nã. Mét trong nh÷ng thuËt to¸n häc ®−îc sö dông réng r·i hiÖn nay ®Æc biÖt lµ
cho nh÷ng øng dông nhËn d¹ng mÉu dùa trªn m¹ng tiÕn ®a møc lµ thuËt to¸n back-
propagation. ThuËt to¸n nµy ®−îc x©y dùng theo quy t¾c häc hiÖu chØnh lçi vµ m«
h×nh häc cã gi¸m s¸t. ThuËt to¸n back-propagation thÓ hiÖn mét b−íc ngoÆt trong sù ph¸t triÓn
cña m¹ng neuron. Nã mang ®Õn mét ph−¬ng ph¸p tÝnh to¸n hiÖu qu¶ cho viÖc tÝch
luü c¸c m¹ng tiÕn ®a møc. MÆc dï chóng ta kh«ng thÓ yªu cÇu thuËt to¸n back-
propagation cung cÊp nh÷ng gi¶i ph¸p tèi −u cho tÊt c¶ c¸c bµi to¸n, nh−ng nã
còng cho chóng ta mét sù l¹c quan vÒ viÖc häc trong c¸c m¸y dùa trªn c¬ së m¹ng
tiÕn ®a møc. 2.2.1 C¸c kh¸i niÖm khëi ®Çu H×nh 2.3 m« t¶ mét phÇn cña m¹ng tiÕn ®a møc. Hai d¹ng tÝn hiÖu ®−îc x¸c ®Þnh trong m¹ng nµy lµ: 27 1. C¸c tÝn hiÖu chøc n¨ng. Mét tÝn hiÖu chøc n¨ng lµ mét tÝn hiÖu ®Çu vµo
®Õn t¹i phÝa ®Çu vµo cña m¹ng, lan truyÒn theo h−íng tiÕn (tõ neuron nµy sang
neuron kh¸c) qua m¹ng, vµ ®i ra t¹i phÝa ®Çu ra cña m¹ng nh− mét tÝn hiÖu ®Çu ra.
Chóng ta xem xÐt mét tÝn hiÖu nh− vËy víi hai lý do. Thø nhÊt, nã ®−îc coi lµ thùc
hiÖn mét chøc n¨ng h÷u Ých t¹i ®Çu ra cña m¹ng. Thø hai, t¹i mçi neuron cña m¹ng
mµ qua ®ã tÝn hiÖu chøc n¨ng ®i qua, tÝn hiÖu ®−îc tÝnh to¸n nh− mét hµm cña c¸c
®Çu vµo vµ c¸c träng sè synapse t−¬ng øng víi neuron ®ã. TÝn hiÖu chøc n¨ng TÝn hiÖu lçi 2. C¸c tÝn hiÖu lçi. Mét tÝn hiÖu lçi b¾t nguån tõ mét neuron ®Çu ra cña
m¹ng, vµ lan truyÒn ng−îc l¹i (theo tõng møc) qua m¹ng. Chóng ta coi nã nh− lµ
mét “tÝn hiÖu lçi” do sù tÝnh to¸n cña nã ®−îc thùc hiÖn bëi mäi neuron cña m¹ng
lu«n liªn quan ®Õn mét hµm phô thuéc lçi d−íi d¹ng nµy hay d¹ng kh¸c. 2.2.2 ThuËt to¸n Back-propagation = − TÝn hiÖu lçi t¹i ®Çu ra cña neuron j t¹i vßng lÆp thø n (khi xö lý vÝ dô tÝch luü thø n) ®−îc x¸c ®Þnh nh− sau ( )
e n
j ( )
d n
j ( )
y n
j (2.6) neuron j lµ mét nót ®Çu ra 2e nj ( ) . Còng t−¬ng tù nh− vËy, gi¸ trÞ tøc thíi τ(n) cña n¨ng l−îng lçi tæng céng 1
2 Chóng ta ®Þnh nghÜa gi¸ trÞ tøc thêi cña n¨ng l−îng lçi cho neuron j lµ 2e nj ( ) trªn tÊt c¶ c¸c neuron trong møc ®Çu ra; ®©y 1
2 n
τ( ) = nhËn ®−îc bëi viÖc tÝnh tæng 2 n
( )
e j j C
∈ (2.7) lµ c¸c neuron nh×n thÊy duy nhÊt mµ c¸c tÝn hiÖu lçi cã thÓ ®−îc tÝnh to¸n mét
c¸ch trùc tiÕp. Nh− vËy, chóng ta cã thÓ viÕt
∑1
2 N = ( )τ
n ë ®ã tËp hîp C bao gåm tÊt c¶ c¸c neuron trong møc ®Çu ra cña m¹ng. §Æt N lµ sè
c¸c mÉu (c¸c vÝ dô) trong tËp hîp tÝch luü. N¨ng l−îng lçi b×nh ph−¬ng trung b×nh
nhËn ®−îc b»ng c¸ch tÝnh tæng τ(n) trªn tÊt c¶ c¸c gi¸ trÞ cña n råi chia cho kÝch
th−íc tËp hîp N nh− sau τav ∑1
N 1 n = (2.8) 28 C¸c gi¸ trÞ n¨ng l−îng lçi kÓ trªn lµ hµm cña tÊt c¶ c¸c c¸c tham sè tù do
(c¸c träng sè synapse vµ c¸c hÖ sè hiÖu chØnh) cña m¹ng. Víi mét tËp hîp tÝch luü
cho tr−íc, ®¹i l−îng τav biÓu diÔn mét hµm gi¸ nh− mét th−íc ®o tÝnh n¨ng cña y0=+1 dj(n) wj0(n)=bj(n) .
.
. vj(n) yj(n) -1 wji(n) ϕj(.) ej(n) yi(n) .
.
. viÖc häc. Môc ®Ých cña qu¸ tr×nh häc lµ ®Ó ®iÒu chØnh c¸c tham sè tù do cña m¹ng
lµm cho τav ®¹t cùc tiÓu. Chóng ta xem xÐt mét ph−¬ng ph¸p tÝch luü ®¬n gi¶n mµ
trong ®ã c¸c träng sè ®−îc cËp nhËt trªn c¬ së tõng mÉu mét cho tíi khi mét Thêi
kú (toµn bé tËp hîp tÝch luü ®−îc sö dông mét l−ît) kÕt thóc. Nh÷ng sù ®iÒu chØnh
träng sè ®−îc thùc hiÖn theo c¸c lçi t−¬ng øng ®−îc tÝnh to¸n cho tõng mÉu tÝch
luü. m ( )
v n ( )
w n y n
( ) = Chóng ta xem xÐt h×nh 2.4, trong ®ã thÓ hiÖn neuron j víi c¸c ®Çu vµo lµ c¸c
tÝn hiÖu chøc n¨ng ®−îc t¹o ra bëi møc neuron ë bªn tr¸i. Tæ hîp tuyÕn tÝnh vj(n)
®−îc t¹o ra t¹i ®Çu vµo cña hµm kÝch ho¹t cña neuron j nh− sau ji i ∑ 0 i = (2.9) ë ®ã m lµ sè c¸c ®Çu vµo cña neuron j. Träng sè synapse wi0 (t−¬ng øng víi ®Çu
vµo cè ®Þnh y0=+1) lµ hÖ sè hiÖu chØnh bj cña neuron j. Nh− vËy tÝn hiÖu chøc n¨ng
yi(n) xuÊt hiÖn t¹i ®Çu ra cña neuron j t¹i vßng lÆp thø n lµ (2.10) yj(n)=ϕ(vj(n)) ∂ ∂ ∂ = Trong thuËt to¸n back-propagation, hiÖu chØnh Δwji(n) ®èi víi träng sè
synapse wji(n) tû lÖ víi ®¹o hµm riªng ∂τ(n)/∂wji(n). Theo quy t¾c tÝnh to¸n ®¹o
hµm, chóng ta cã thÓ biÓu diÔn gradient nµy nh− sau ∂ ∂ ∂ ( )
n
∂τ
w n
( )
∂
ji n
( )
∂τ
e n
( )
∂
j e n
( )
j
y n
( )
j y n
( )
j
v n
( )
j v n
( )
j
w n
( )
j (2.11) ®¹o hµm riªng nµy x¸c ®Þnh h−íng t×m kiÕm trong kh«ng gian träng sè ®èi víi
träng sè synapse wji. 29 §¹o hµm c¶ hai vÕ cña (2.7) theo ej(n), chóng ta cã e n
( ) j= n
( )
∂τ
e n
( )
∂
j (2.12) ∂ = −1 §¹o hµm c¶ hai vÕ cña (2.6) theo yj(n), chóng ta cã ∂ ( )
e n
j
( )
y n
j (2.13) ∂ ( )) = ϕ §¹o hµm c¶ hai vÕ cña (2.10) theo vj(n), chóng ta cã ' (
j v n
j ∂ ( )
y n
j
( )
v n
j ∂ = (2.14) ( )
y n
i ∂ (2.15) Cuèi cïng, ®¹o hµm c¶ hai vÕ cña (2.9) theo wji(n), chóng ta cã
( )
v n
j
( )
w n
j v n y n
( ))
( ) = − ψ ¸p dông c¸c c«ng thøc tõ (2.12) ®Õn (2.15) cho c«ng thøc (2.11), ta cã e n
( )
j ' (
j i j n
( )
∂τ
w n
( )
∂
j (2.16) = −η HiÖu chØnh Δwji(n) ¸p dông cho träng sè wji(n) ®−îc x¸c ®Þnh theo quy t¾c delta nh− sau ( )
Δw n
ji n
( )
∂τ
w n
( )
∂
j (2.17) ë ®ã η lµ tham sè tèc ®é häc. Nh− vËy tõ (2.16) vµ (2.17), ta cã (2.18) Δwji(n)=ηδj(n)yj(n) n
( ) δ = − j n
( )
∂τ
v n
( )
∂
j ∂ ∂ = − ë ®ã gradient côc bé δj(n) ®−îc x¸c ®Þnh nh− sau ∂ ∂ y n
( )
j
v n
( )
j n
( )
∂τ
e n
( )
∂
j
( ) ' (
ϕ = e n
( )
j
y n
( )
j
v n
( ))
j j e n
j (2.19) Gradient côc bé chØ ra nh÷ng thay ®æi cÇn thiÕt cho c¸c träng sè synapse.
Tõ c¸c c«ng thøc (2.18) vµ (2.19), chóng ta thÊy r»ng mét yÕu tè chÝnh liªn quan
tíi viÖc tÝnh to¸n c¸c ®iÒu chØnh träng sè Δwji(n) lµ tÝn hiÖu lçi ej(n) t¹i ®Çu ra cña
neuron j. ë ®©y, chóng ta quan t©m ®Õn hai tr−êng hîp riªng biÖt. Tr−êng hîp thø
nhÊt, neuron j lµ mét nót ®Çu ra; vµ tr−êng hîp thø hai, neuron j lµ mét nót Èn. 30 Khi neuron j n»m ë møc ®Çu ra cña m¹ng, nã ®−îc cung cÊp mét ®¸p øng
mong muèn. Chóng ta cã thÓ sö dông c«ng thøc (2.6) ®Ó tÝnh to¸n tÝn hiÖu lçi ej(n) t−¬ng øng víi neuron nµy (xem h×nh 2.4). Do x¸c ®Þnh ®−îc ej(n), chóng ta dÔ
dµng tÝnh ®−îc gradient côc bé δj(n) theo c«ng thøc (2.19). ∂ ( )
n δ = − j ∂ ( )
y n
j
( )
v n
j Khi neuron j thuéc mét møc Èn cña m¹ng, kh«ng cã mét ®¸p øng mong
muèn x¸c ®Þnh nµo cho neuron nµy. Nh− vËy, tÝn hiÖu lçi cho mét neuron Èn ®−îc
x¸c ®Þnh mét c¸ch ®Ö quy theo c¸c tÝn hiÖu lçi cña tÊt c¶ c¸c neuron mµ neuron
®ang xÐt kÕt nèi trùc tiÕp. H·y xem xÐt t×nh huèng ®−îc m« t¶ trong h×nh 2.5.
Theo c«ng thøc (2.19), chóng ta cã thÓ tÝnh l¹i gradient côc bé cña neuron j nh−
sau ( )) ϕ = − ' (
j v n
j n
( )
∂τ
( )
y n
∂
j
( )
n
∂τ
( )
y n
∂
j Neuron k Neuron j +1 y0=+1 dk(n) wj0(n)=bj(n) .
.
. vj(n) vk(n) yk(n) .
.
.
yj(n) -1 wji(n) ϕj(.) wkj(n) ϕk(.) ek(n) yi(n) .
.
. .
.
. (2.20) , neuron j lµ Èn n
τ( ) = §Ó tÝnh ®¹o hµm riªng ∂τ(n)/∂wji(n), chóng ta cã thÓ thùc hiÖn nh− sau. Tõ h×nh 2.5, chóng ta thÊy r»ng 2 n , neuron k lµ nót ®Çu ra
( )
ek ∑1
2 k C
∈ e (2.21) k = ∑ ∂
∂ k n
( )
∂τ
y n
( )
∂
j 31 (2.22) §¹o hµm hai vÕ c«ng thøc (2.21) theo tÝn hiÖu chøc n¨ng yj(n), chóng ta cã
e n
( )
k
y n
( )
j e TiÕp theo, chóng ta sö dông quy t¾c tÝnh ®¹o hµm vµ viÕt l¹i c«ng thøc (2.22) d−íi d¹ng t−¬ng ®−¬ng nh− sau k = ∑ ∂
∂ ∂
∂ k n
( )
∂τ
y n
( )
∂
j e n
( )
k
v n
( )
k ( )
v n
k
y n
( )
j (2.23) Tuy nhiªn, tõ h×nh 2.5, chóng ta nhËn thÊy ek(n)=dk(n)-yk(n) (2.24) =dk(n)-ϕk(vk(n)), neuron k lµ mét nót ®Çu vµo ( )) = − ϕ Nh− vËy ' (
k v n
k ∂
∂ e n
( )
k
( )
v n
k (2.25) m ( )
w n y n
( ) = Tõ h×nh 2.5, chóng ta còng thÊy r»ng ®èi víi neuron k ( )
v n
k kj j ∑ 0 j = (2.26) ( )
n ∂ν = ë ®ã m lµ sè ®Çu vµo (bao gåm c¶ hÖ sè hiÖu chØnh) cña neuron k. LÊy ®¹o hµm
c«ng thøc (2.26) theo yj(n), ta cã ( )
w n
kj ∂ j
( )
y n
j (2.27) e v n w n
( ) ( )) = − ' (
ϕ k kj k ∑ k ( )
n
∂τ
y n
( )
∂
j Tõ c¸c c«ng thøc (2.25), (2.27) vµ (2.23), chóng ta tÝnh ®−îc ®¹o hµm riªng mong muèn = − δ
k n w n
( )
( )
kj ∑ k (2.28) ë ®ã δk(n) cho bëi c«ng thøc (2.19) víi chØ sè k thay cho chØ sè j. Cuèi cïng, thay c«ng thøc (2.28) vµo c«ng thøc (2.20), chóng ta ®−îc c«ng ( )
n ( )) ( )
n w δ = '(
ϕ thøc back-propagation cho gradiient côc bé δj(n) nh− sau j v n
j δ
k kj n
( ) ∑ k (2.29) , neuron j lµ nót Èn H×nh 2.6 thÓ hiÖn ®å thÞ luång d÷ liÖu cña c«ng thøc (2.29), vãi gi¶ ®Þnh r»ng møc ®Çu ra bao gåm mL neuron.
Tãm t¾t l¹i thuËt to¸n = ηδ B©y giê chóng ta tæng kÕt nh÷ng g× mµ chóng ta võa tÝnh ®−îc cho thuËt
to¸n back-propagation. §Çu tiªn, hiÖu chØnh Δwji(n) cña träng sè wji(n) mµ nèi
neuron i víi neuron j ®−îc x¸c ®Þnh bëi quy t¾c delta nh− sau ( )
Δw n
ji ( )
n y n
( )
j j 32 (2.30) Thø hai, gradient côc bé δj ®−îc x¸c ®Þnh tuú theo viÖc neuron j lµ mét nót ®Çu ra hay mét nót Èn: ( )
n w n
( )
kj 1.NÕu neuron j lµ mét nót ®Çu ra, δj(n) ®−îc tÝnh theo c«ng thøc (2.19):
b»ng tÝch cña ®¹o hµm ϕ‘(vj(n)) víi tÝn hiÖu lçi e(n). k 2.NÕu neuron j lµ mét nót Èn, δj(n) ®−îc tÝnh mét c¸ch ®Ö quy theo c«ng
thøc (2.29): b»ng tÝch cña ®¹o hµm riªng ϕ‘(vj(n)) víi tæng c¸c δ ®· ®−îc
∑
) cña tÊt c¶ c¸c neuron
nh©n víi c¸c träng sè t−¬ng øng ( δk ϕ1'(v1(n)) δ1(n) w1j(n) δj(n) wkj(n) ϕk'(vk(n)) δk(n) wmLj(n) ϕmL'(vmL(n)) δmL(n) thuéc møc tiÕp theo mµ ®−îc neuron j nèi tíi. Trong viÖc ¸p dông thuËt to¸n back-propagation, cã hai giai ®o¹n tÝnh to¸n t¸ch biÖt nhau: giai ®o¹n tiÕn (forward), vµ giai ®o¹n lïi (backward). Trong giai ®o¹n tiÕn, c¸c träng sè synapse gi÷ nguyªn kh«ng thay ®æi trong
toµn bé giai ®o¹n, vµ c¸c tÝn hiÖu chøc n¨ng ®−îc tÝnh to¸n dùa trªn c¬ së tõ
neuron nµy tíi neuron kh¸c theo chiÒu tiÕn cña m¹ng. B¾t nguån tõ ®Çu vµo lµ mét
mÉu tÝch luü, qu¸ tr×nh tÝnh to¸n cø tiÕp diÔn cho tíi khi tÝnh ®−îc ®Çu ra cña c¸c
neuron n»m trong møc ®Çu ra cu¶ m¹ng. §Çu ra nµy ®−îc so s¸nh víi ®¸p øng
mong muèn di(n), vµ thu ®−îc tÝn hiÖu lçi ej(n). Nh− vËy, giai ®o¹n tÝnh to¸n tiÕn
b¾t ®Çu tõ møc Èn ®Çu tiªn vµ kÕt thóc t¹i møc ®Çu ra ®Ó tÝnh to¸n tÝn hiÖu lçi cho
mçi neuron t¹i møc nµy. Tr¸i l¹i, giai ®o¹n tÝnh to¸n lïi b¾t ®Çu t¹i møc ®Çu ra b»ng c¸ch chuyÓn tÝn
hiÖu lçi ng−îc trë l¹i qua toµn bé m¹ng theo tõng møc nh»m tÝnh to¸n mét c¸ch ®Ö
quy δ (gradient côc bé) cho mçi neuron. Qu¸ tr×nh ®Ö quy nµy cho phÐp c¸c träng
sè synapse cña m¹ng cã thÓ ®−îc ®iÒu chØnh theo quy t¾c delta (c«ng thøc (2.30)).
B»ng c¸ch nh− vËy, sù ®iÒu chØnh c¸c träng sè synapse sÏ ®−îc lan truyÒn trªn toµn
bé m¹ng. 33 ThuËt to¸n back-propagation cung cÊp mét ph−¬ng ph¸p tÝnh “xÊp xû” cho
viÖc lÇn t×m trong kh«ng gian träng sè (nh»m t×m ra c¸c träng sè phï hîp nhÊt cho
m¹ng). Chóng ta cµng lÊy gi¸ trÞ cña tham sè tèc ®é häc nhá bao nhiªu th× sù thay
®æi cña träng sè synapse cµng nhá bÊy nhiªu vµ quü ®¹o trong kh«ng gian träng sè
sÏ cµng tr¬n. Tuy nhiªn ®iÒu nµy l¹i lµm cho tèc ®é häc chËm ®i. Tr¸i l¹i nÕu
chóng ta chän tham sè tèc ®é häc qu¸ lín, sù thay ®æi lín cña c¸c träng sè synapse
cã thÓ lµm cho m¹ng trë nªn kh«ng æn ®Þnh. Mét ph−¬ng ph¸p ®¬n gi¶n ®Ó t¨ng
tèc ®é häc mµ tr¸nh ®−îc nguy c¬ kh«ng æn ®Þnh nh− trªn lµ thay ®æi quy t¾c delta
trong c«ng thøc (2.18) b»ng c¸ch sö dông thªm mét to¸n h¹ng moment nh− sau (2.31) Δwji(n)=αΔwji(n-1)+ηδ(n)yi(n) δj(n)yj(n) z-1 η α
Δwji(n-1) Δwji(n) ë ®ã α th−êng ®−îc gäi lµ h»ng sè moment. Nã ®iÒu khiÓn vßng lÆp quay lui ho¹t
®éng xung quanh Δwji nh− ®−îc minh ho¹ trong h×nh 2.7 mµ ë ®ã z-1 lµ to¸n h¹ng
®¬n vÞ trÔ. §¼ng thøc (2.31) ®−îc gäi lµ quy t¾c delta tæng qu¸t mµ quy t¾c delta
trong c«ng thøc (2.18) lµ mét tr−êng hîp ®Æc biÖt (víi α=0). n n t
− = §Ó thÊy ®−îc ¶nh h−ëng cña c¸c hiÖu chØnh trong qu¸ khø ®èi víi c¸c träng
sè synapse, chóng ta viÕt l¹i c«ng thøc (2.31) nh− mét tæng chuçi theo thêi gian
víi chØ sè thêi gian t nh− sau ( )
Δw n
ji j ( )
t y t
( )
i ∑η α δ 0 t = (2.32) Tõ c«ng thøc (2.16) vµ (2.19), chóng ta thÊy r»ng to¸n h¹ng δj(n)yi(n) chÝnh n −
n t = − b»ng -∂τ(n)/∂wji(n). Nh− vËy, chóng ta cã thÓ viÕt l¹i c«ng thøc (2.32) nh− sau ( )
Δw n
ji ∑η α t 0 = ( )
n
τ
∂
w n
( )
∂
ji (2.33) Dùa trªn quan hÖ nµy, chóng ta cã thÓ ®i mét sè nhËn ®Þnh sau: 1. §iÒu chØnh hiÖn thêi Δwji biÓu diÔn mét tæng chuçi theo thêi gian víi sè
mò cña h»ng sè α t¨ng theo thêi gian. §Ó chuçi nµy cã thÓ héi tô, h»ng sè
moment ph¶i n»m trong giíi h¹n 0≤|α|<1. Khi α b»ng 0, thuËt to¸n back-
propagation ho¹t ®éng kh«ng cã moment. α cã thÓ nhËn gi¸ trÞ ©m hoÆc
d−¬ng. 34 2. Khi ®¹o hµm -∂τ(n)/∂wji(n) cã cïng dÊu ®¹i sè trong c¸c vßng lÆp kÕ tiÕp
nhau, Δwji t¨ng theo hµm mò, vµ nh− vËy träng sè wji ®−îc ®iÒu chØnh bëi
mét gi¸ trÞ lín. Trong tr−êng hîp nµy, viÖc ®−a thªm moment vµo thuËt to¸n back-propagation cã xu h−íng lµm cho nã ho¹t ®éng mét c¸ch nhanh chãng
vµ ®Òu ®Æn. 3. Khi ®¹o hµm -∂τ(n)/∂wji(n) ®æi dÊu ë nh÷ng vßng lÆp kÕ tiÕp nhau, Δwji
dao ®éng vÒ gi¸ trÞ, vµ nh− vËy träng sè wji(n) ®−îc ®iÒu chØnh bëi mét gi¸
trÞ nhá. Trong tr−êng hîp nµy, viÖc ®−a thªm moment vµo thuËt to¸n back-
propagation cho nã kh¶ n¨ng tù æn ®Þnh dÇn theo thêi gian. ViÖc tÝch hîp moment vµo thuËt to¸n back-propagation biÓu diÔn mét sù
thay ®æi c¨n b¶n trong viÖc cËp nhËt träng sè, vµ nã cã thÓ ®em l¹i hiÖu qu¶ tèt cho
ho¹t ®éng häc cña thuËt to¸n. To¸n h¹ng moment còng cã thÓ phÇn nµo ng¨n ngõa
®−îc nguy c¬ qu¸ tr×nh häc kÕt thóc t¹i mét cùc tiÓu côc bé cña bÒ mÆt lçi. Trong øng dông thùc tÕ cña thuËt to¸n back-propagation, viÖc häc thùc hiÖn
th«ng qua rÊt nhiÒu biÓu hiÖn cña mét tËp hîp c¸c vÝ dô tÝch luü cho tr−íc. Nh− ®·
nh¾c ®Õn ë trªn, mét biÓu diÔn trän vÑn cña toµn bé tËp hîp tÝch luü trong qu¸ tr×nh
häc ®−îc gäi lµ mét Thêi kú. Qu¸ tr×nh häc ®−îc duy tr× trªn mét c¬ së tõ Thêi kú
nµy sang Thêi kú kh¸c cho tíi khi c¸c träng sè synapse vµ c¸c møc hiÖu chØnh cña
m¹ng trë nªn æn ®Þnh vµ lçi b×nh ph−¬ng trung b×nh trªn toµn bé tËp hîp tÝch luü
héi tô t¹i mét sè gi¸ trÞ cùc tiÓu. SÏ tèt h¬n nÕu chóng ta chän mét c¸ch ngÉu nhiªn
thø tù c¸c thÓ hiÖn cña c¸c vÝ dô tÝch luü cho tõng thêi kú. MÆc dï ®iÒu nµy kh«ng
®−îc chøng minh mét c¸ch râ rµng nh−ng nã lµ mét trong nh÷ng kinh nghiÖm v«
cïng quan träng ®¶m b¶o cho hiÖu qu¶ cña thuËt to¸n. Trong thùc tÕ, ®«i khi viÖc ®iÒu chØnh träng sè cña thuËt to¸n back-
propagation kh«ng ®−îc thùc hiÖn ngay trong giai ®o¹n lïi cña thuËt to¸n mµ sau
( ) trong c«ng thøc cña quy t¾c delta (2.30) sÏ
mçi Thêi kú. Khi ®ã tÝch δj
( )
n y n
j
®−îc tÝnh trung b×nh trªn toµn bé Thêi kú cho mçi neuron j. Nãi chung, thuËt to¸n back-propagation kh«ng thÓ x¸c ®Þnh ®−îc lµ ®· héi
tô hay ch−a, vµ nh− vËy kh«ng cã mét tiªu chuÈn tuyÖt ®èi nµo cho viÖc dõng thuËt
to¸n. Tuy nhiªn, vÉn cã mét sè tiªu chuÈn cã thÓ coi lµ chÊp nhËn ®−îc. §Ó t¹o nªn
mét tiªu chuÈn nh− vËy, mét c¸ch logic, chóng ta cã thÓ nhghÜ ®Õn nh÷ng thuéc
tÝnh ®Æc tr−ng cña c¸c cùc tiÓu côc bé hay toµn côc cña bÒ mÆt lçi. §Æt w* lµ mét
cùc tiÓu, cã thÓ lµ toµn côc hay côc bé. Mét ®iÒu kiÖn cÇn ®Ó w* lµ mét cùc tiÓu lµ
vector gradient g(w) (®¹o hµm riªng bËc nhÊt) cña bÒ mÆt lçi theo vector träng sè
w ph¶i b»ng kh«ng t¹i w=w*. Nh− vËy, chóng ta cã thÓ x©y dùng nªn mét tiªu
chuÈn héi tô nh¹y c¶m cho thuËt to¸n back-propagation nh− sau: ThuËt to¸n back-propagation ®−îc xem lµ héi tô khi ®é lín Euclide cña vector gradient ®¹t tíi mét ng−ìng gradient ®ñ nhá. Mét h¹n chÕ cña tiªu chuÈn héi tô nµy lµ thêi gian häc ph¶i dµi vµ cÇn ph¶i tÝnh to¸n vector gradient g(w). 35 Mét thuéc tÝnh duy nhÊt n÷a cña cùc tiÓu lµ hµm gi¸ τav(w) æn ®Þnh t¹i w=w*. Nh− vËy chóng ta l¹i cã thÓ ®−a ra mét tiªu chuÈn kh¸c nh− sau: ThuËt to¸n back-propagation ®−îc xem lµ héi tô khi tû lÖ thay ®æi tuyÖt ®èi cña lçi b×nh ph−¬ng trung b×nh trªn mét Thêi kú lµ ®ñ nhá. Tû lÖ thay ®æi cña lçi b×nh ph−¬ng trung b×nh ®−îc coi lµ ®ñ nhá nÕu nã
n»m trong giíi h¹n tõ 0.1 ®Õn 1 phÇn tr¨m trªn mét thêi kú. ThËt kh«ng may lµ
tiªu chuÈn nµy cã thÓ dÉn ®Õn mét sù kÕt thóc véi vµng cña qu¸ tr×nh häc. Ngoµi ra cßn cã ph−¬ng ph¸p võa häc võa thùc hiÖn kiÓm tra tÝnh n¨ng nhËn
d¹ng trªn mét tËp hîp mÉu kiÓm tra kh¸c víi tËp hîp tÝch luü. Trong tr−êng hîp
nµy, thuËt to¸n ®−îc xem lµ héi tô khi nã ®· tÝch luü ®ñ l©u vµ tÝnh n¨ng nhËn d¹ng
trªn tËp hîp kiÓm tra ®¹t tíi mét gi¸ trÞ cho phÐp. 2.2.3 Mét sè kinh nghiÖm nh»m n©ng cao
tÝnh n¨ng cña thuËt to¸n Back-propagation Ng−êi ta th−êng nãi r»ng viÖc thiÕt kÕ m¹ng neuron sö dông thuËt to¸n
back-propagation lµ mét nghÖ thuËt h¬n lµ mét khoa häc. §iÒu nµy còng cã vµi
phÇn hîp lý, vµ trong thùc tÕ còng cã mét sè kinh nghiÖm cã kh¶ n¨ng c¶i thiÖn
®¸ng kÓ tÝnh n¨ng cña thuËt to¸n back-propagation nh− ®−îc m« t¶ d−íi ®©y. • Sö dông vÝ dô tÝch luü mµ dÉn ®Õn lçi tÝch luü lín nhÊt. • Sö dông c¸c vÝ dô tÝch luü míi kh¸c mét c¸ch c¨n b¶n so víi c¸c vÝ dô ®·
®−îc sö dông tr−íc ®ã. 1. Cùc ®¹i ho¸ néi dung th«ng tin. Mäi vÝ dô tÝch luü ®−îc dïng cho thuËt
to¸n back-propagation nªn ®−îc chän dùa trªn c¬ së néi dung th«ng tin cña nã lµ
lín nhÊt cã thÓ ®−îc ®èi víi c«ng viÖc cô thÓ ®ang xÐt. Cã hai c¸ch ®Ó ®¹t ®−îc
môc ®Ých nµy lµ: Trong c¸c c«ng viÖc nhËn d¹ng mÉu, mét kü thuËt ®¬n gi¶n hay ®−îc sö
dông lµ chän mét c¸ch ngÉu nhiªn thø tù c¸c vÝ dô ®−îc xö lý cho mçi Thêi kú.
ViÖc chän ngÉu nhiªn nh− vËy ®¶m b¶o r»ng c¸c vÝ dô liªn tiÕp nhau hiÕm khi
thuéc cïng mét líp. 2. Hµm kÝch ho¹t. Mét m¹ng tiÕn ®a møc ®−îc tÝch luü b»ng thuËt to¸n
back-propagation cã thÓ häc nhanh h¬n khi sö dông hµm kÝch ho¹t ph¶n ®èi xøng.
Chóng ta nãi r»ng mét hµm kÝch ho¹t ϕ(v) lµ ph¶n ®èi xøng nÕu ϕ(-v)=-ϕ(v) Mét vÝ dô cña mét hµm kÝch ho¹t ph¶n ®èi xøng lµ hµm tang hyperbol nh− sau ϕ(v)=a tanh(bv) C¸c gi¸ trÞ thÝch hîp cho a vµ b lµ a=1.7159 vµ b=2/3 36 Hµm tang hyperbol cã cã hai thuéc tÝnh h÷u Ých sau: • ϕ(1)=1 vµ ϕ(-1)=-1 • T¹i gèc to¹ ®é, hÖ sè gãc cña hµm kÝch ho¹t xÊp xû b»ng 1 ϕ‘(0)=ab =1.7159×2/3 =1.1424 3. C¸c gi¸ trÞ ®Ých. Mét ®iÒu hÕt søc quan träng lµ c¸c gi¸ trÞ ®Ých (®¸p øng
mong muèn) ®−îc chän trong ph¹m vi cña hµm kÝch ho¹t. Mét c¸ch cô thÓ h¬n,
®¸p øng mong muèn dj cho neuron j trong møc ®Çu ra nªn cã trÞ tuyÖt ®èi nhá h¬n
mét gi¸ trÞ ε nµo ®ã so víi gi¸ trÞ giíi h¹n cña hµm kÝch ho¹t tuú theo gi¸ trÞ giíi
h¹n ®ã lµ d−¬ng hay ©m. §Ó thÊy râ h¬n, h·y xem xÐt tr−êng hîp hµm kÝch ho¹t
ph¶n ®èi xøng. Víi gi¸ trÞ giíi h¹n +a, chóng ta ®Æt dj=a-ε vµ víi gi¸ trÞ giíi h¹n -a, chóng ta ®Æt dj=-a+ε ë ®ã ε lµ mét h»ng sè d−¬ng thÝch hîp. Víi viÖc chän a=1.7159, chóng ta cã thÓ
®Æt ε=0.7159, vµ nh− vËy gi¸ trÞ ®Ých dj cã thÓ ®−îc chän lµ ±1. 4. ChuÈn ho¸ ®Çu vµo. Mét biÕn ®Çu vµo nªn ®−îc xö lý sao cho gi¸ trÞ
trung b×nh cña nã, tÝnh trªn toµn bé tËp hîp tÝch luü, lµ gÇn víi kh«ng. §Ó ®¸nh gi¸
ý nghÜa thùc tÕ cña quy t¾c nµy, h·y xem xÐt tr−êng hîp mµ ë ®ã c¸c biÕn ®Çu vµo
lu«n d−¬ng. Trong t×nh huèng nµy, c¸c träng sè synapse cña mét neuron trong
møc Èn ®Çu tiªn cã thÓ chØ cïng t¨ng hay cïng gi¶m. Nh− vËy, vector träng sè cña
neuron nµy cã xu h−íng ®i theo ®−êng zigzag trªn bÒ nÆt lçi vµ sÏ chËm héi tô; tøc
lµ nªn tr¸nh nh÷ng t×nh huèng nh− vËy. • Gi÷a c¸c biÕn ®Çu vµo nªn kh«ng cã sù t−¬ng quan (ph©n bè x¸c suÊt ®éc
lËp). • C¸c biÕn ®Çu vµo nªn ®−îc nh©n tû lÖ sao cho ph−¬ng sai cña chóng ph¶i
xÊp xû nhau ®Ó ®¶m b¶o r»ng c¸c träng sè synapse kh¸c nhau häc víi tèc
®é xÊp xû nhau. §Ó t¨ng tèc qu¸ tr×nh häc back-propagation, trong viÖc chuÈn ho¸ ®Çu vµo cßn cÇn ph¶i chó ý tíi hai ®iÒu sau: 5. Sù khëi ®Çu. Mét sù lùa chän tèt cho c¸c gi¸ trÞ khëi ®Çu cña c¸c träng sè
synape vµ c¸c hÖ sè hiÖu chØnh cña m¹ng cã ý nghÜa v« cïng quan träng trong viÖc
thiÕt kÕ m¹ng. C©u hái ®Æt ra ë ®©y lµ: ThÕ nµo lµ mét lùa chän tèt? 37 Khi c¸c träng sè synapse ®−îc g¸n c¸c gi¸ trÞ khëi ®Çu lín, rÊt cã kh¶ n¨ng
lµ c¸c neuron cña m¹ng sÏ ®i ®Õn tr¹ng th¸i b·o hoµ. NÕu ®iÒu nµy x¶y ra, c¸c
gradient côc bé trong thuËt to¸n back-propagation ®¹t c¸c gi¸ trÞ nhá, vµ sÏ lµm
cho qu¸ tr×nh häc chËm ®i. Tuy nhiªn, nÕu c¸c träng sè synapse ®−îc g¸n c¸c gi¸
trÞ khëi ®Çu nhá, thuËt to¸n back-propagation cã xu h−íng ho¹t ®éng trªn mét
vïng b»ng ph¼ng xung quanh gèc cña bÒ mÆt lçi; ®iÒu nµy ®Æc biÖt ®óng trong
tr−êng hîp c¸c hµm kÝch ho¹t lµ ph¶n ®èi xøng. Bëi nh÷ng lý do nµy, viÖc sö dông c¸c gi¸ trÞ lín hay c¸c gi¸ trÞ nhá cho viÖc khëi ®Çu c¸c träng sè synapse ®Òu nªn
tr¸nh. Lùa chän thÝch hîp ë ®©y lµ nh÷ng gi¸ trÞ n»m gi÷a hai th¸i cùc ®ã. §Ó râ h¬n, h·y xem xÐt vÝ dô vÒ mét m¹ng tiÕn ®a møc sö dông hµm tang
hyperbol cho c¸c hµm kÝch ho¹t cña nã. §Æt hÖ sè hiÖu chØnh cña mçi neuron trong
m¹ng b»ng kh«ng. Gi¶ sö r»ng c¸c ®Çu vµo cña mçi neuron trong m¹ng cã trung
b×nh b»ng kh«ng vµ ph−¬ng sai b»ng mét; c¸c träng sè synapse ®−îc lÊy tõ mét
tËp hîp c¸c sè ph©n bè ®Òu cã trung b×nh b»ng kh«ng. Trong tr−êng hîp nµy,
ng−êi ta gîi ý r»ng nªn chän c¸c träng sè sao cho ph−¬ng sai cña chóng b»ng
nghÞch ®¶o cña c¨n bËc hai sè c¸c kÕt nèi synapse cña mét neuron. 6. Tèc ®é häc. VÒ mÆt lý t−ëng, tÊt c¶ c¸c neuron trong m¹ng tiÕn ®a møc
nªn häc víi cïng mét tèc ®é. Møc cuèi cïng th−êng xuyªn cã gradient côc bé lín
h¬n c¸c møc ë phÝa tr−íc. Nh− vËy, tham sè tèc ®é häc η nªn ®−îc g¸n mét gi¸ trÞ
nhá h¬n. C¸c neuron víi nhiÒu ®Çu vµo nªn cã mét tham sè tèc ®é häc nhá h¬n ®Ó
gi÷ mét thêi gian häc t−¬ng tù nhau cho tÊt c¶ c¸c neuron trong m¹ng. Cã mét gîi
ý lµ ®èi víi mét neuron, tham sè tèc ®é häc nªn tû lÖ nghÞch víi c¨n bËc hai cña
c¸c kÕt nèi synapse nèi tíi neuron ®ã. Chóng ta sÏ bµn kü h¬n tíi tèc ®é häc trong
phÇn 2.2.7. 2.2.4 BiÓu diÔn ®Çu ra vµ quy t¾c quyÕt ®Þnh cho bµi to¸n ph©n lo¹i y1,j
y2,j xj m¹ng tiÕn
®a møc: w yM,j VÒ mÆt lý thuyÕt, víi mét bµi to¸n ph©n lo¹i M líp trong ®ã hîp cña M líp
ph©n biÖt t¹o nªn toµn bé kh«ng gian ®Çu vµo, chóng ta cÇn mét tæng sè M ®Çu ra
®Ó biÓu diÔn tÊt c¶ c¸c quyÕt ®Þnh ph©n líp cã thÓ, nh− ®−îc m« t¶ trong h×nh 2.8.
Trong h×nh nµy, vector xj=[xj1j, xj2,..., xjm]T biÓu diÔn nguyªn mÉu thø j cña mét
vector ngÉu nhiªn x gåm m phÇn tö cÇn ®−îc ph©n lo¹i b»ng mét m¹ng tiÕn ®a
møc. Líp thø k trong M líp mµ xj cã thÓ thuéc vµo ®−îc ký hÖu lµ Ck. §Æt ykj lµ
®Çu ra thø k cña m¹ng (t−¬ng øng víi líp thø k) ®−îc t¹o ra ®Ó ®¸p øng l¹i nguyªn
mÉu xj (2.34) ykj=Fk(xj), k=1,2,...,M ë ®ã hµm Fk(.) x¸c ®Þnh quan hÖ gi÷a ®Çu vµo vµ ®Çu ra thø k cña m¹ng. §Ó thuËn
tiÖn cho viÖc biÓu diÔn, ®Æt (2.35) yj=[y1j, y2j,..., yMj]T
=[F1(xj), F2(xj),..., FM(xj)]T
=F(xj) 38 ë ®ã F(.) lµ mét hµm kiÓu vector. Mét c©u hái c¬ b¶n ®−îc ®Æt ra mµ chóng ta hy
väng lµ cã thÓ tr¶ lêi ®−îc trong phÇn nµy lµ: Sau khi mét m¹ng tiÕn ®· ®−îc tÝch luü, quy t¾c quyÕt ®Þnh tèi −u cho viÖc ph©n lo¹i M ®Çu ra cña m¹ng nªn nh− thÕ nµo? DÔ thÊy lµ bÊt kú mét quy t¾c quyÕt ®Þnh ®Çu ra hîp lý nµo ®Òu ph¶i dùa trªn kiÕn thøc vÒ hµm kiÓu vector F(.). N R || d (
F x = − 2
)|| Nãi chung, tÊt c¶ nh÷ng g× cã thÓ ch¾c ch¾n vÒ hµm F(.) lµ hµm nµy lµ mét hµm liªn tôc vµ nã cã t¸c dông lµm cùc tiÓu ho¸ hµm nguy c¬ thùc nghiÖm sau. j j ∑1
2
N j 1 = (2.36) ë ®ã dj=[d1j, d2j,..., dMj]T lµ mÉu ®Çu ra mong muèn cho nguyªn mÉu xj, ||.|| chØ ®é
lín Euclide, vµ N lµ sè l−îng c¸c vÝ dô ®−îc xö lý bëi m¹ng trong tÝch luü. VÒ b¶n
chÊt, c«ng thøc (2.36) kh«ng cã g× kh¸c víi hµm gi¸ trong c«ng thøc (2.8). Hµm
kiÓu vector F(.) phô thuéc rÊt nhiÒu vµo sù lùa chän c¸c vÝ dô (xj,dj) ®−îc sö dông
®Ó tÝch luü m¹ng; c¸c gi¸ trÞ kh¸c nhau cña (xj,dj) thùc sù sÏ dÉn ®Õn nh÷ng kÕt qu¶
kh¸c nhau cña hµm F(.). (Chó ý r»ng ký hiÖu (xj,dj) ë ®©y hoµn toµn t−¬ng ®−¬ng
víi ký hiÖu (x(j),d(j)) ®−îc sö dông trong c¸c phÇn tr−íc.) Dùa trªn c¬ së lý thuyÕt thèng kª, ®Æc biÖt lµ quy t¾c xÊp xû Bayes cïng víi
c¸c ®¸nh gi¸ x¸c suÊt líp (vÝ dô x¸c suÊt cã ®iÒu kiÖn P(Ck|x)), ng−êi ta ®· ®−a ra
mét quy t¾c quyÕt ®Þnh cho ®Çu ra m¹ng neuron nh− sau: Ph©n lo¹i vector ngÉu nhiªn xj lµ thuéc vµo líp Ck nÕu Fk(x)>Fj(k) víi mäi j≠k ë ®ã Fk(x) vµ Fj(x) lµ c¸c phÇn tö cña hµm kiÓu vector F(x)
Quy t¾c quyÕt ®Þnh nµy cã −u ®iÓm cña viÖc tr¶ vÒ c¸c quyÕt ®Þnh kh«ng
nhËp nh»ng so víi quy t¾c ad hoc lµ quy t¾c mµ ë ®ã vector x ®−îc coi lµ phÇn tö
cña mét líp x¸c ®Þnh nÕu gi¸ trÞ ®Çu ra t−¬ng øng lµ lín h¬n mét ng−ìng cè ®Þnh
nµo ®ã (th−êng lµ 0.5 ®èi hµm logistics). 2.2.5 Kü thuËt tinh gi¶m (pruning) m¹ng vµ r¶i máng (sparse) kÕt
nèi Tõ nh÷ng kinh nghiÖm tùc tÕ, cã thÓ thÊy r»ng tÝnh n¨ng cña m¹ng neuron
lµ mét hµm t¨ng ®èi víi sè c¸c neuron Èn. ViÖc më réng c¸c møc Èn còng lµ mét
c¸ch th−êng ®−îc lùa chän ®Ó c¶i thiÖn tÝnh n¨ng cña m¹ng. VÊn ®Ò lµ ë chç sè
l−îng c¸c kÕt nèi (c¸c synapse) sÏ t¨ng rÊt nhanh cïng víi sè l−îng c¸c neuron Èn
®Õn nçi ®«i khi lµm cho viÖc tÝch luü vµ kiÓm tra kh«ng thÓ thùc hiÖn ®−îc. Tuy
nhiªn, th«ng qua nghiªn cøu c¸c m¹ng kÕt nèi ®Çy ®ñ ®· ®−îc tÝch luü, ng−êi ta
nhËn thÊy r»ng mét phÇn kh«ng nhá c¸c kÕt nèi cã gi¸ trÞ träng sè rÊt nhá. §iÒu
nµy gîi ý cho chóng ta kh¶ n¨ng nghiªn cøu c¸c ph−¬ng ph¸p tinh gi¶m m¹ng vµ
c¸c chiÕn l−îc r¶i máng kÕt nèi. 39 Tinh gi¶m m¹ng lµ c¸ch thøc gi¶m sè l−îng c¸c kÕt nèi cña m¹ng. Ph−¬ng
ph¸p tinh gi¶m m¹ng næi tiÕng nhÊt lµ ph−¬ng ph¸p ODB (optimal brain damage).
Mét tiªu chuÈn tinh gi¶m th« ®−îc sö dông - chóng ta chØ ®¬n gi¶n lo¹i bá ®i c¸c
träng sè nhá h¬n mét ng−ìng nµo ®ã. CÇn chó ý r»ng m¹ng ph¶i ®−îc tÝch luü l¹i sau khi tinh gi¶m. TÝch luü kiÓu nµy héi tô nhanh h¬n nhiÒu so víi tÝch luü gèc.
ViÖc tÝch luü l¹i sÏ hiÖu chØnh hÇu hÕt c¸c lçi g©y ra bëi tiªu chuÈn tinh gi¶m. ThËt kh«ng may lµ viÖc tinh gi¶m kh«ng cã ¶nh h−ëng tÝch cùc tíi thêi gian
tÝch luü bëi nã ®−îc ¸p dông sau khi tÝch luü. Trong vÊn ®Ò gi¶m thêi gian tÝch luü,
mét sè thùc nhiÖm ®· chøng minh kh¶ n¨ng cña c¸c m¹ng cã c¸c kÕt nèi ®−îc r¶i
máng. Tr−íc khi tÝch luü, kh«ng cã mét th«ng tin nµo cho phÐp chóng ta biÕt ®−îc
lµ nh÷ng kÕt nèi nµo lµ quan träng, vµ nh− vËy mét tËp hîp ngÉu nhiªn c¸c kÕt nèi
ph¶i ®−îc lùa chän. Môc ®Ých cu¶ chiÕn l−îc kÕt nèi ngÉu nhiªn lµ nh»m xem xÐt tÊt c¶ c¸c kÕt
nèi trong mét m¹ng kÕt nèi ®Çy ®ñ t−¬ng øng sao cho mçi kÕt nèi cã mét x¸c suÊt
tån t¹i lµ φ. Sè l−îng mong ®îi c¸c kÕt nèi trong m¹ng ®−îc r¶i máng (m¹ng thùc
tÕ) lµ Nφ, ë ®ã N lµ sè c¸c kÕt nèi trong m¹ng kÕt nèi ®Çy ®ñ gi¶ thiÕt. C¸c kÕt qu¶
tõ mét sè nghiªn cøu cho thÊy c¸c m¹ng cã c¸c kÕt nèi ®−îc r¶i máng tèt kh«ng
kÐm, thËm chÝ tèt h¬n c¸c m¹ng OBD vµ c¸c m¹ng kÕt nèi ®Çy ®ñ. Trong m¹ng neuron håi quy, sè c¸c kÕt nèi lµ tû lÖ víi b×nh ph−¬ng kÝch
th−íc møc Èn. Nh− vËy víi c¸c møc Èn lín, cÇn c¸c gi¸ trÞ x¸c suÊt kÕt nèi nhá ®Ó
gi¶m sè l−îng kÕt nèi tíi mét gi¸ trÞ cã thÓ kiÓm so¸t ®−îc. §iÒu nµy lµm gi¶m
tÝnh n¨ng cña m¹ng h¬n lµ cã thÓ ®−îc bï ®¾p bëi sè l−îng lín c¸c neuron. §Ó gi¶i quyÕt khã kh¨n do mèi quan hÖ b×nh ph−¬ng gi÷a kÝch th−íc møc
vµ sè l−îng kÕt nèi, chóng ta côc bé ho¸ c¸c x¸c suÊt kÕt nèi. Theo quan ®iÓm nµy,
gi¸ trÞ x¸c suÊt kÕt nèi cña c¸c kÕt nèi ph¶n håi sÏ phô thuéc kho¶ng c¸ch gi÷a hai
neuron. Kho¶ng c¸ch nµy cã thÓ ®−îc x¸c ®Þnh b»ng ®é chªnh lÖch chØ sè cña hai
neuron khi ta tiÕn hµnh s¾p xÕp c¸c neuron theo thø tù lÇn l−ît tõng neuron råi ®Õn
tõng møc. VÝ dô, x¸c suÊt kÕt nèi cña hai neuron Èn un vµ um cã thÓ lµ φ(un,um)=e-|n-m|/σ ë ®ã σ lµ mét h»ng sè chän tr−íc. 2.2.6 Mét vµi −u ®iÓm vµ nh−îc ®iÓm
cña thuËt to¸n Back-propagation • Nã rÊt ®¬n gi¶n trong c¸c tÝnh to¸n côc bé. • Nã thùc hiÖn sù dÞch chuyÓn theo c¸c gradient ngÉu nhiªn trong kh«ng ThuËt to¸n back-propagation lu«n ®−îc coi nh− lµ thuËt to¸n phæ biÕn nhÊt
cho m« h×nh häc cã gi¸m s¸t cña m¹ng neuron tiÕn ®a møc. VÒ c¬ b¶n mµ nãi, nã
lµ mét kü thuËt gradient (®¹o hµm), chø kh«ng ph¶i lµ mét kü thuËt tèi −u ho¸.
ThuËt to¸n nµy cã hai thuéc tÝnh riªng biÖt: gian träng sè (víi viÖc cËp c¸c träng sè trªn c¬ së tõng mÉu mét). Hai tÝnh chÊt nµy cña thuËt to¸n back-propagation ®ñ ®Ó tr¶ lêi cho tÊt c¶ c¸c −u vµ nh−îc ®iÓm cña nã. 40 ThuËt to¸n back-propagation lµ mét m« h×nh kÕt nèi mµ dùa trªn c¸c tÝnh
to¸n côc bé ®Ó kh¸m ph¸ ra nh÷ng kh¶ n¨ng xö lý th«ng tin cña m¹ng neuron. D¹ng giíi h¹n tÝnh to¸n nµy ®−îc xem nh− mét rµng buéc vÒ tÝnh côc bé, víi ý
nghÜa lµ c¸c tÝnh to¸n cña mét neuron chØ chÞu ¶nh h−ëng cña c¸c neuron kÕt nèi
víi nã. ViÖc sö dông c¸c tÝnh to¸n côc bé nh− vËy trong viÖc thiÕt kÕ m¹ng neuron
nh©n t¹o th−êng ®−îc ñng hé bëi ba lý do c¬ b¶n: 1. C¸c m¹ng neuron nh©n t¹o thùc hiÖn c¸c tÝn to¸n côc bé th−êng ®−îc duy
tr× nh− lµ mét h×nh ¶nh cu¶ c¸c m¹ng l−íi thÇn kinh sinh häc. 2. ViÖc sö dông c¸c tÝnh to¸n côc bé cho phÐp mét sù tho¸i ho¸ nhÑ nhµng
vÒ tÝnh n¨ng khi cã lçi cøng, vµ nh− vËy cung cÊp cho chóng ta mét nÒn
t¶ng vÒ mét thiÕt kÕ m¹ng chÊp nhËn lçi. 3. C¸c tÝnh to¸n côc bé thuËn lîi cho viÖc sö dông c¸c kiÕn tróc song song
nh− lµ mét ph−¬ng ph¸p hiÖu qu¶ ®Ó cµi ®Æt c¸c m¹ng neuron nh©n t¹o. VÒ lý do thø nhÊt kÓ trªn, liªn quan ®Õn sù hîp lý vÒ mÆt sinh häc cña thuËt
to¸n back-propagation, vÉn cßn nhiÒu c©u hái nghiªm tóc ®−îc ®Æt ra mµ ch−a cã
lêi gi¶i ®¸p tho¶ ®¸ng. Tuy nhiªn nh÷ng sù thiÕu hôt vÒ thÇn kinh sinh häc kh«ng
lµm gi¶m ®i gi¸ trÞ vÒ mÆt kü thuËt cña thuËt ti¸n back-propagation víi t− c¸ch lµ
mét c«ng cô xö lý th«ng tin, vµ ®−îc chøng minh b»ng nh÷ng øng dông thµnh
c«ng cña nã trong nhiÒu lÜnh vùc kh¸c nhau. §é phøc t¹p vÒ tÝnh to¸n cña mét thuËt to¸n th−êng ®−îc x¸c ®Þnh b»ng sè
l−îng c¸c phÐp céng, phÐp nh©n, vµ sù l−u tr÷ liªn quan tíi viÖc cµi ®Æt nã. Mét
thuËt to¸n häc ®−îc gäi lµ hiÖu qu¶ trong tÝnh to¸n khi ®é phøc t¹p tÝnh to¸n cña
nã lµ hµm ®a thøc cña sè l−îng c¸c tham sè cã thÓ ®iÒu chØnh ®−îc. Trªn c¬ së ®ã,
chóng ta cã thÓ nãi r»ng thuËt to¸n back-propagation lµ hiÖu qu¶ trong tÝnh to¸n.
§Æc biÖt, víi viÖc sö dông nã ®Ó tÝch luü mét m¹ng tiÕn ®a møc bao gåm W träng
sè synapse (kÓ c¶ c¸c hÖ sè hiÖu chØnh), ®é phøc t¹p cña nã lµ mét hµm tuyÕn tÝnh
cña W. §iÒu nµy cã thÓ dÔ dµng ®−îc chøng minh b»ng c¸ch xem xÐt c¸c tÝnh to¸n
liªn quan ®Õn viÖc thùc hiÖn c¸c giai ®o¹n tiÕn vµ lïi cña thuËt to¸n. ThuËt to¸n back-propagation sö dông mét “®¸nh gi¸ tøc thêi” cho gradient
cña bÒ mÆt lçi trong kh«ng gian träng sè. Nh− vËy thuËt to¸n lµ ngÉu nhiªn vÒ b¶n
chÊt; nghÜa lµ nã cã xu h−íng ®i theo nh÷ng ®−êng zigzag xung quanh h−íng ®i
thùc tíi cùc tiÓu cña bÒ mÆt lçi. Nh− vËy lµ nã cã xu h−íng héi tô chËm; chóng ta
cã thÓ nªu ra hai nguyªn nh©n c¬ b¶n sau: 41 1. XÐt tr−êng hîp bÒ mÆt lçi lµ kh¸ b»ng ph¼ng däc theo mét chiÒu träng sè
nµo ®ã. §iÒu nµy cã nghÜa lµ ®¹o hµm cña bÒ mÆt lçi theo träng sè nµy cã
trÞ tuyÖt ®èi nhá. Trong tr−êng hîp nµy, sù ®iÒu chØnh ¸p dông cho träng sè
còng nhá, vµ cã thÓ cÇn nhiÒu vßng lÆp kÕ tiÕp nhau ®Ó cã thÓ lµm gi¶m
®¸ng kÓ gi¸ trÞ lçi. MÆt kh¸c nÕu bÒ mÆt lçi cã ®é cong lín däc theo mét
chiÒu träng sè th× ®¹o hµm cña bÒ mÆt lçi theo träng sè ®ang xÐt cã trÞ sè
lín, vµ nh− vËy c¸c ®iÒu chØnh ¸p dông cho träng sè nµy còng lín. §iÒu nµy
lµm cho thuËt to¸n cã kh¶ n¨ng v−ît qu¸ ®iÓm cùc tiÓu cÇn ®i tíi. 2. ChiÒu cña vector gradient ©m cã thÓ chØ theo h−íng ®i xa khái cùc tiÓu
cña mÆt ph¼ng lçi, vµ nh− vËy th× c¸c ®iÒu chØnh träng sè cã xu h−íng lµm
cho thuËt to¸n ®i sai h−íng. Theo mét sè nghiªn cøu thùc nghiÖm, tèc ®é héi tô côc bé cña thuËt to¸n
back-propagation cã tÝnh chÊt tuyÕn tÝnh, vµ cã thÓ chÝnh ®ã lµ nguån gèc cña c¸c
nguyªn nh©n g©y ra sù chËm trÔ cña thuËt to¸n. Gîi ý nµy ®−a chóng ta ®Õn mét
quan ®iÓm nh− sau: Cã thÓ c¸c ph−¬ng ph¸p tÝnh to¸n víi tèc ®é héi tô bËc cao
h¬n (cã tÝnh phi tuyÕn cao) sÏ cho phÐp héi tô nhanh h¬n nh−ng yªu cÇu nhiÒu nç
lùc tÝnh to¸n h¬n. 2.2.7 Héi tô nhanh cho qu¸ tr×nh häc Back-propagation Nh− ®· bµn tíi trong phÇn tr−íc, thuËt to¸n back-propagation kh«ng ®−îc
coi lµ ph−¬ng ph¸p häc cho ta kh¶ n¨ng héi tô nhanh chãng. Trong phÇn nµy,
chóng ta sÏ ®Ò cËp tíi mét sè kinh nghiÖm cã kh¶ n¨ng mang l¹i cho chóng ta
nh÷ng chØ dÉn h÷u Ých trong viÖc lµm thÕ nµo ®Ó t¨ng tèc sù héi tô cña thuËt to¸n
back-propagation th«ng qua viÖc thÝch nghi tham sè tèc ®é häc. Mäi tham sè m¹ng cã thÓ ®iÒu chØnh ®−îc cña hµm gi¸ nªn cã tham sè tèc ®é häc riªng biÖt. ë ®©y, chóng ta chó ý r»ng thuËt to¸n back-propagation héi tô chËm cã thÓ
lµ do viÖc sö dông cïng mét tham sè tèc ®é häc. Tham sè cè ®Þnh nµy cã kh¶ n¨ng
kh«ng phï hîp ®−îc víi tÊt c¶ c¸c vÞ trÝ cña bÒ mÆt lçi. Nãi c¸ch kh¸c, mét tham
sè tèc ®é häc thÝch hîp cho viÖc ®iÒu chØnh mét träng sè synapse kh«ng nhÊt thiÕt
lµ thÝch hîp cho viÖc ®iÒu chØnh c¸c träng sè kh¸c trong m¹ng. Kinh nghiÖm thø
nhÊt khuyÕn c¸o sö dông c¸c tham sè tèc ®é häc kh¸c nhau cho c¸c träng sè
synapse kh¸c nhau trong m¹ng. Mäi tham sè tèc ®é häc nªn ®−îc phÐp thay ®æi sau mçi vßng lÆp. BÒ mÆt lçi th−êng cã ®Æc tÝnh kh¸c nhau trong nh÷ng vïng kh¸c nhau khi ta
xÐt däc theo mét chiÒu träng sè nhÊt ®Þnh. ChÝnh v× sù biÕn thiªn nµy mµ kinh
nghiÖm thø hai khuyÕn c¸o r»ng tham sè tèc ®é häc còng nªn biÕn thiªn tõ vßng
lÆp n»y sang vßng lÆp kh¸c. §iÒu thó vÞ lµ kinh nghiÖm nµy ®−îc h×nh thµnh tõ
nh÷ng nghiªn cøu vÒ c¸c ®¬n vÞ xö lý tuyÕn tÝnh. Khi ®¹o hµm cña hµm gi¸ theo mét träng sè synapse cã cïng mét dÊu ®¹i sè
víi trong mét sè vßng lÆp kÕ tiÕp nhau cña thuËt to¸n, tham sè tèc ®é häc cho
träng sè synapse nµy nªn ®−îc t¨ng lªn. 42 §iÓm biÓu diÔn tr¹ng th¸i hiÖn thêi trong kh«ng gian träng sè cã thÓ n»m
trªn mét vïng b»ng ph¼ng cña bÒ mÆt lçi däc theo mét chiÒu träng sè x¸c ®Þnh.
§iÒu nµy thÓ hiÖn b»ng viÖc gi÷ nguyªn dÊu cña ®¹o hµm hµm gi¸ (gradient cña bÒ
mÆt lçi) theo träng sè synapse ®ã; vµ nh− vËy lµ vector gradient cã cïng mét chiÒu trong mét sè vßng lÆp kÕ tiÕp nhau cña thuËt to¸n. Kinh nghiÖm thø ba khuyÕn c¸o
r»ng trong tr−êng hîp nh− vËy, sè l−îng c¸c vßng lÆp cÇn ®Ó ®i qua vïng b»ng
ph¼ng nµy cã thÓ ®−îc gi¶m bít b»ng c¸ch t¨ng tham sè tèc ®é häc mét c¸ch phï
hîp. Khi dÊu ®¹i sè cña ®¹o hµm hµm gi¸ theo mét träng sè x¸c ®Þnh lµ liªn tôc
thay ®æi trong mét sè vßng lÆp cña thuËt to¸n, tham sè tèc ®é häc cho träng sè nªn
®−îc gi¶m xuèng. 43 Khi ®iÓm biÓu diÔn tr¹ng th¸i hiÖn thêi trong kh«ng gian träng sè n»m trªn
mét vïng cña bÒ mÆt lçi däc theo mét chiÒu träng sè x¸c ®Þnh mµ cã nhiÒu chç låi
lâm. Nh− vËy cã nghÜa lµ ®¹o hµm hµm gi¸ theo träng sè ®ã cã kh¶ n¨ng liªn tôc
thay ®æi dÊu trong mét sè vßng lÆp kÕ tiÕp . §Ó tr¸nh kh«ng ®Ó viÖc ®iÒu chØnh
träng sè bÞ giao ®éng qu¸ nhiÒu, kinh nghiÖm thø t− khuyÕn c¸o r»ng tham sè tèc
®é häc cho c¸c träng sè nh− vËy nªn ®−îc gi¶m ®i mét c¸ch phï hîp. Trong thùc tÕ, cã nhiÒu lo¹i th«ng tin cã ®Æc tÝnh thèng kª kh«ng æn ®Þnh
theo thêi gian nh− c¸c tÝn hiÖu tiÕng nãi, tÝn hiÖu radar, c¸c tÝn hiÖu lÊy tõ ®éng c¬
cña mét xe « t«, hay sù lªn xuèng cña gi¸ c¶ thÞ tr−êng. §Ó cã thÓ theo ®−îc nh÷ng
sù biÕn thiªn vÒ ®Æc tÝnh thèng kª cña c¸c th«ng tin nµy, chóng ta cÇn quan t©m
®Õn yÕu tè thêi gian khi thiÕt kÕ c¸c m¹ng neuron. C©u hái ®Æt ra lµ: Lµm thÕ nµo
®Ó cã thÓ tÝch hîp thêi gian vµo trong cÊu tróc vµ ho¹t ®éng cña mét m¹ng neuron?
Mét trong nh÷ng gi¶i ph¸p ®−îc ®−a ra ®Ó gi¶i quyÕt vÊn ®Ò nµy lµ viÖc x©y dùng
c¸c m¹ng neuron trÔ (time-delay neural network (TDNN)). VÒ thùc chÊt, mét
TDNN lµ mét m¹ng tiÕn ®a møc ®−îc x©y dùng thªm nh÷ng kÕt nèi synapse trÔ. wji(0) vj(n) wji(1) z-1 yj(n) yi(n) ϕj(.) wji(2) z-2 C¸c to¸n
tö ®¬n vÞ
trÔ Trong mét m¹ng tiÕn ®a møc th«ng th−êng, hai neuron chØ nèi víi nhau
b»ng mét kÕt nèi synapse víi mét träng sè synapse x¸c ®Þnh vµ nh− vËy lµ c¸c tÝn
hiÖu ®i qua kÕt nèi synapse t¹i c¸c thêi ®iÓm kh¸c nhau lµ hoµn toµn ®éc lËp víi
nhau. §Ó cã thÓ ®−a vµo mèi quan hÖ theo thêi gian cña c¸c tÝn hiÖu trao ®æi gi÷a
hai neuron, ng−êi ta t¹o nªn nhiÒu kÕt nèi synapse víi thêi gian trÔ kh¸c nhau.
B»ng c¸ch ®ã, c¸c tÝn hiÖu trong qu¸ khø ®−îc trÔ l¹i sÏ cã ¶nh h−ëng tíi hiÖn t¹i.
H×nh 3.1 minh häa mét kÕt nèi synapse trÔ ®−îc t¹o nªn theo c¸ch trªn mµ nèi hai
neuron i vµ j. Trong cÊu tróc nµy, c¸c tÝn hiÖu trong kho¶ng thêi gian hai ®¬n vÞ
trÔ vÉn cã thÓ ®−îc tæ hîp víi nhau t¹i neuron j. 44 §Çu vµo
x(n) z-1 z-1 z-1 M¹ng tiÕn
®a møc §Çu ra
y(n) y(n-q) w(q-1) z-1 y(n-q+1) w(q-2) y(n-2) w(1) z-1 y(n-1) w(0) z-1 45 Chóng ta ®· biÕt vÒ kiÕn tróc m¹ng håi quy tæng qu¸t trong Ch−¬ng 1. B¶n
chÊt cña mét m¹ng håi quy lµ lµm cho tÝn hiÖu ®Çu ra cña mét neuron cã ¶nh
h−ëng tíi ®Çu vµo cña nã th«ng qua c¸c vßng lÆp ph¶n håi. Cã thÓ thÊy r»ng b¶n
th©n tÝn hiÖu ®Çu ra cña neuron mµ ¶nh h−ëng ríi ®Çu vµo hiÖn t¹i lµ thuéc vÒ qu¸
khø nªn nã th−êng ®−îc lµm trÔ l¹i mét sè ®¬n vÞ thêi gian tr−íc khi quay trë l¹i
qua vßng lÆp ph¶n håi. Quan ®iÓm nµy gîi ý cho chóng ta kh¶ n¨ng tÝch hîp m«
h×nh m¹ng neuron trÔ víi kiÕn tróc m¹ng håi quy. §Ó lµm ®iÒu nµy, riªng ®èi víi
mçi kÕt nèi ph¶n håi, chóng ta l¹i t¸ch ra thµnh nhiÒu kÕt nèi ph¶n håi víi thêi
gian trÔ kh¸c nhau. Mét m¹ng neuron ®−îc x©y dùng trªn c¬ së nµy ®−îc gäi lµ
m¹ng neuron håi quy trÔ (recurrent time-delay neural network (RTDNN)). H×nh
3.2 minh ho¹ mét hÖ thèng håi quy víi mét ®Çu ra ph¶n håi l¹i ®Çu vµo b»ng q kÕt
nèi synapse cã c¸c thêi gian trÔ chªnh lÖch nhau mét ®¬n vÞ thêi gian. n
τ( ) §Ó tÝch luü mét RTDNN, chóng ta cÇn mét d¹ng më réng cña thuËt to¸n
back-propagation ®Ó cã thÓ tÝnh ®Õn kh¸i niÖm thêi gian. Gi¶ sö r»ng neuron j n»m
trong møc ®Çu ra víi ®¸p øng thùc sù lµ yj(n) vµ ®¸p øng mong muèn lµ dj(n), c¶
hai ®Òu ®−îc ®o t¹i thêi ®iÓm n. Chóng ta x¸c ®Þnh mét gi¸ trÞ tøc thêi cña tæng
b×nh ph−¬ng c¸c lçi ®−îc sinh ra bëi m¹ng nh− sau 2 n
( )
e j = ∑1
2 j (3.1) ë ®ã chØ sè j chØ mét neuron trong møc ®Çu ra, vµ ej(n) lµ tÝn hiÖu lçi ®−îc x¸c ®Þnh
nh− sau (3.2) ej(n)=dj(n)-yj(n) n τ Môc ®Ých ë ®©y lµ cùc tiÓu mét hµm gi¸, chÝnh lµ gi¸ trÞ cña τ(n) ®−îc tÝnh trªn tÊt c¶ c¸c thêi ®iÓm total = ∑ ( )
τ n (3.3) Mét c¸ch ®Ó t×m ra ®−îc ®¸nh gi¸ tèi −u cña vector träng sè nh»m ®¹t ®−îc
môc ®Ých kÓ trªn lµ sö dông gradient. §¹o hµm cña hµm gi¸ theo theo vector träng
sè wji sÏ nh− sau = ∑ ( )
n
∂τ
w
∂ ∂τ
total
w
∂ n ji ji (3.4) ∂ Trong tr−êng hîp nµy, tr−íc tiªn chóng ta cÇn nhËn ra r»ng sù më réng cña
gradient lçi tæng céng thµnh mét tæng c¸c gradient lçi tøc thêi nh− trong c«ng thøc
(3.4) kh«ng ph¶i lµ duy nhÊt. Mét c¸ch cô thÓ, chóng ta cã thÓ xem xÐt mét c¸ch
biÓu diÔn kh¸c cña ®¹o hµm riªng cña hµm gi¸ tæng céng theo vector träng sè
wji(n) nh− sau ∂τ
total
w
∂ ( )
v n
j
w
∂ n ji ∂τ
= ∑ ( )
total
v n
∂
j ji (3.5) ∂ ≠ n
( )
∂τ
w
∂ v n
( )
j
w
∂ ji ∂τ
total
v n
( )
∂
j ji ë ®ã chØ sè thêi gian n chØ ch¹y ®èi víi biÕn vj(n). Chóng ta cã thÓ coi ®¹o hµm
riªng ∂τtotal/∂vj(n) ®Æc tr−ng cho sù thay ®æi cña hµm gi¸ τtotal ®−îc t¹o ra bëi sù
thay ®æi cña ®Çu ra bé tæ hîp tuyÕn tÝnh vj cña neuron j t¹i thêi ®iÓm n. Tuy nhiªn,
cÇn chó ý r»ng ChØ khi chóng ta tÝnh tæng chóng theo thêi gian th× míi thu ®−îc gi¸ trÞ t−¬ng ®−¬ng. 46 Víi d¹ng më réng trong c«ng thøc (3.5), b©y giê chóng ta sö dông quan
®iÓm vÒ gradient trong kh«ng gian träng sè. Chóng ta thùc hiÖn mét phÐp tÝnh ®Ö
quy ®Ó cËp nhËt vecior träng sè wji(n) nh− sau ∂ )
1 η + = − (
w n
ji ( )
w n
ji ( )
v n
j
w
∂ ∂τ
total
v n
( )
∂
j ji (3.6) ∂ = ë ®ã η lµ tham sè tèc ®é häc. DÔ dµng thÊy r»ng víi mäi neuron j trong m¹ng, ®¹o
hµm riªng cña vj(n) theo vector träng sè wji(n) sÏ nh− sau x n
( )
j ( )
v n
j
w
∂ ji (3.7) ( )
n δ = − ë ®ã xj lµ vector ®Çu vµo ¸p dông cho synapse i cña neuron j. TiÕp ®ã, chóng ta cã
thÓ x¸c ®Þnh gradient côc bé cña neuron j nh− sau j ∂τ
total
( )
v n
∂
j (3.8) 1
) + = + ηδ Nh− vËy, chóng ta cã thÓ viÕt l¹i c«ng thøc (3.6) d−íi d¹ng t−¬ng ®−¬ng nh− sau ( )
w n
ji ( )
n x n
( )
j j (3.9) w n
(
ji Còng nh− ®èi víi thuËt to¸n back-propagation chuÈn, chóng ta chia ra hai tr−êng hîp riªng biÖt sau ( )
n δ = − j = − Neuron j lµ mét nót ®Çu ra. Víi møc ®Çu ra, ®¬n gi¶n chóng ta cã ∂ ( )) = ∂τ
total
( )
v n
∂
j
∂τ
( )
v n
j
( ) '(
ϕ e n
j v n
j (3.10) ë ®ã ej(n) lµ tÝn hiÖu lçi ®−îc ®o t¹i ®Çu ra cña neuron j, vµ ϕ‘(.) lµ ®¹o hµm cña
hµm hµm kÝch ho¹t ϕ(.) theo c¸c tham biÕn cña nã. n
( ) δ = − j ∂τ
total
v n
( )
∂
j Neuron j lµ mét nót Èn. §èi víi mét neuron trong møc Èn chóng ta ®Þnh
nghÜa a lµ tËp hîp tÊt c¶ c¸c neuron mµv ®Çu vµo cña chóng ®−îc nèi víi ®Çu ra
cña neuron j. §Æt vr(n) ®Ó chØ ®Çu ra bé tæ hîp tuyÕn tÝnh cña neuron r thuéc tËp
hîp a. Nh− vËy, chóng ta cã thÓ viÕt = ∑∑ ∂
∂ k r A
∈ ∂τ
total
v k
( )
∂
r v k
( )
r
v n
( )
j (3.11) 47 Sö dông c«ng thøc (3.8) (víi chØ sè r thay cho j) trong c«ng thøc (3.11), chóng ta cã thÓ viÕt δ = n
( ) k
( ) j δ
r ∑∑ ∂
∂ n r A
∈ v k
( )
r
v n
( )
j ∂ = k
( ) δ
r ∑∑ ∂
∂ ∂ n r A
∈ v k
( )
r
y n
( )
j y k
( )
j
v n
( )
j (3.12) δ = n
( ) ϕ
'( ( )) k
( ) ë ®ã yj(n) lµ ®Çu ra cña neuron j. TiÕp theo, chóng ta nhËn thÊy r»ng ®¹o hµm riªng
∂yj(n)/∂vj(n) chÝnh b»ng φ‘(vj(n)) (neuron j n»m bªn ngoµi tËp hîp a). Chóng ta cã
thÓ ®−a phÇn tö nµy ra ngoµi dÊu ∑ vµ viÕt l¹i c«ng thøc (3.12) nh− sau j v n
j δ
r ∑∑ ∂
∂ n ∈
r A v k
( )
r
y n
( )
j (3.13) p m
0 l = − Nh− ®Þnh nghÜa tõ tr−íc, vr(k) lµ ®Çu ra bé tæ hîp tuyÕn tÝnh cña neuron. §èi víi m¹ng neuron trÔ, c«ng thøc cña vr(k) nh− sau w l y k
( ) ( ) v k
( )
r rj j ∑∑ j l 0 0 = = (3.14) C«ng thøc (3.14) ®· bao hµm c¶ hÖ sè hiÖu chØnh br ¸p dông cho neuron r; br chÝnh lµ to¸n h¹ng t−¬ng øng víi j=0 nh− sau (3.15) k m
0 y l w k l − = wr0(l)=b vµ y0(k-l)=1 víi mäi l vµ k
ChØ sè p x¸c ®Þnh giíi h¹n trªn cña tæng bªn trong cña c«ng thøc (3.14)
chÝnh lµ sè l−îng synapse trÔ t−¬ng øng víi mét synapse nguyªn thuû (mét
synapse chÝnh) nèi gi÷a neuron j vµ neuron r. ChØ sè m0 x¸c ®Þnh giíi h¹n trªn cu¶
tæng bªn ngoµi cña c«ng thøc (3.14) l¹i lµ tæng sè l−îng c¸c synapse chÝnh nèi tíi
neuron r. Chóng ta cã thÓ viÕt l¹i c«ng thøc (3.14) d−íi d¹ng t−¬ng ®−¬ng nh− sau ( ) ( ) v k
( )
r rj j ∑∑ j 0 = l k p
= − (3.16) n n p − ), = LÊy ®¹o hµm c«ng thøc (3.16), chóng ta thu ®−îc ∂
∂ n
k
+
≤ ≤
t h kh c
¸ / v k
( )
r
y n
( )
j w k
(
⎧
rj
⎨
⎩0
, (3.17) n p
+ ( )) ) n
( ) n δ = ' (
ϕ − j v n
j δ
r k w k
(
( )
rj ∑∑ k n
= r A
∈ §èi víi neuron Èn j, thay c«ng thøc (3.17) vµo c«ng thøc (3.13), ta cã p ( )) ( n l w l
( )
) = ' (
ϕ + v n
j δ
r rj ∑∑ 0 l r A
=∈ (3.18) X¸c ®Þnh mét vector míi (p+1) thµnh phÇn (3.19) Δr(n)=[δr(n), δr(n+1),..., δr(n+p)]T Chóng ta ®· ®Þnh nghÜa vector wrj nh− sau (3.20) wji=[wrj(0),wrj(1),...,wrj(p)] 48 Chóng ta viÕt l¹i ®¼ng thøc (3.18) nh− sau ( )) n
( ) n
( ) δ = '(
ϕ j v n
j T
r w
rj ∑ Δ ∈
r A (3.21) C«ng thøc nµy chÝnh lµ c«ng thøc tÝnh δj(n) cho neuron j trong møc Èn.
B©y giê chóng ta tæng kÕt c«ng thøc cËp nhËt träng sè cho thuËt toµn back- propagation më réng b»ng cÆp quan hÖ sau ( )
n δ = (3.22) wji(n+1)=wji(n)+ηδj(n)xi(n) j , nÕu j trong møc dÇu ra
nÕu j trong møc Èn T
Δ
r ( )
n w
rj ( )),
∑ r A
∈ e n
' (
( )
v n
ϕ
⎧
⎪
j
j
⎨
( ))
' (
v n
ϕ
j
⎩⎪ (3.23) Δ1(n) Δ2(n) §Ó tÝnh δj(n) cho neuron Èn, chóng ta còng ph¶i lan truyÒn c¸c δ ng−îc trë
l¹i qua m¹ng. S¬ ®å luång tÝn hiÖu cho sù lan truyÒn nµy ®−îc minh ho¹ trong h×nh
3.3. δj(n) Σ ϕ'(vj(n)) Δr(n) 49 Trong c¸c ch−¬ng tr−íc, b¶n luËn v¨n ®· ®Ò cËp ®Õn nh÷ng kh¸i niÖm c¨n
b¶n nhÊt vÒ m¹ng neuron lµm nÒn t¶ng cho mét bµi to¸n nhËn d¹ng mÉu tæng qu¸t.
B−íc sang ch−¬ng nµy, t¸c gi¶ sÏ tr×nh bµy mét vµi khÝa c¹nh kh¸i qu¸t nhÊt vÒ lý
thuyÕt nhËn d¹ng tiÕng nãi. §ång thêi ph©n tÝch nã trong môc ®Ých ¸p dông m¹ng
neuron ®Ó x©y dùng c¸c øng dông nhËn d¹ng tiÕng nãi nh− lµ mét líp riªng cña bµi
to¸n nhËn d¹ng mÉu. §Þnh nghÜa h×nh thøc cña nhËn d¹ng tiÕng nãi nh− sau: Do giíi h¹n vÒ quy m« luËn v¨n, t¸c gi¶ kh«ng cã ®iÒu kiÖn tr×nh bµy l¹i
nh÷ng kiÕn thøc nÒn cña lý thuyÕt xö lý tiÕng nãi nh− biÓu diÔn tÝn hiÖu tiÕng nãi
rêi r¹c trong miÒn thêi gian vµ tÇn sè, biÕn ®æi Fourier tæng qu¸t, ... Nh÷ng kiÕn
thøc nµy, b¹n ®äc cã thÓ tham kh¶o c¸c s¸ch viÕt vÒ Lý thuyÕt xö lý tiÕng nãi. S¶n xuÊt tiÕng nãi nhËn d¹ng tiÕng nãi T¹o th«ng ®iÖp HiÓu th«ng ®iÖp M· ng«n ng÷ M· ng«n ng÷ Qóa tr×nh thÇn kinh C¸c lÖnh thÇn
kinh vËn ®éng Tai
trong sãng ©m
thanh èng dÉn
©m D©y
thanh ng−êi nghe Ng−êi nãi 50 4.1.1 Qu¸ tr×nh s¶n xuÊt tiÕng nãi vµ
thu nhËn tiÕng nãi cña con ng−êi H×nh 4.1 ®−a ra mét s¬ ®å khèi cña qu¸ tr×nh s¶n xuÊt tiÕng nãi/nhËn thøc
tiÕng nãi cña con ng−êi. Qu¸ tr×nh s¶n xuÊt tiÕng nãi b¾t ®Çu khi ng−êi nãi t¹o ra
mét th«ng ®iÖp (trong ý nghÜ cña anh ta) vµ muèn chuyÓn t¶i nã cho ng−êi nghe
th«ng qua tiÕng nãi. Tæ chøc thÇn kinh t−¬ng øng chÞu tr¸ch nhiÖm t¹o ra th«ng
®iÖp d−íi d¹ng v¨n b¶n biÓu diÔn c¸c tõ cña th«ng ®iÖp. B−íc tiÕp theo cña qu¸
tr×nh lµ chuyÓn ®æi th«ng ®iÖp sang d¹ng mét m· ng«n ng÷. §iÒu nµy gÇn nh−
t−¬ng ®−¬ng víi viÖc chuyÓn ®æi c¸c biÓu diÔn v¨n b¶n cña th«ng ®iÖp thµnh mét
chuçi c¸c ©m vÞ t−¬ng øng víi nh÷ng ©m thanh t¹o nªn c¸c tõ; ®ång thêi víi viÖc
ghi nhËn ©m ®iÖu nh»m x¸c ®Þnh sù kÐo dµi, sù nhÊn m¹nh, vµ träng ©m cao thÊp
cña ©m thanh. Khi mét m· ng«n ng÷ ®· ®−îc lùa chän, ng−êi nãi ph¶i thùc hiÖn
mét lo¹t c¸c lÖnh thÇn kinh vËn ®éng ®Ó lµm cho c¸c d©y thanh dao ®éng, ®ång
thêi cÊu tróc h×nh d¹ng èng dÉn ©m nh»m ph¸t ra mét chuçi c¸c ©m thanh. Nh−
vËy, ®Çu ra cuèi cïng cña qu¸ tr×nh lµ mét tÝn hiÖu ©m häc. C¸c lÖnh thÇn kinh vËn
®éng ph¶i ®iÒu khiÓn mét c¸ch ®ång bé tÊt c¶ c¸c kh©u vËn ®éng nh− sù ho¹t ®éng
cña m«i, hµm, l−ìi, ... Khi tÝn hiÖu tiÕng nãi ®· ®−îc sinh ra vµ ®−îc truyÒn cho ng−êi nghe, qu¸
tr×nh thu nhËn tiÕng nãi (hay nhËn d¹ng tiÕng nãi) b¾t ®Çu. §Çu tiªn, ng−êi nghe
xö lý tÝn hiÖu ©m thanh th«ng qua mµng nÒn cña tai trong; nã cã kh¶ n¨ng cung
cÊp mét ph©n tÝch phæ cho tÝn hiÖu tíi. Mét qu¸ tr×nh xö lý thÇn kinh chuyÓn ®æi
tÝn hiÖu phæ t¹i ®Çu ra cña mµng nÒn thµnh c¸c tÝn hiÖu ho¹t ®éng ®èi víi thÇn kinh
thÝnh gi¸c; cã thÓ coi ®©y nh− mét qu¸ tr×nh lÊy ra c¸c ®Æc tr−ng. B»ng mét ph−¬ng
ph¸p ®Æc biÖt (ch−a ®−îc hiÓu mét c¸ch thÊu ®¸o), c¸c tÝn hiÖu ho¹t ®éng ®i qua hÖ
thÇn kinh thÝnh gi¸c ®−îc chuyÓn ®æi thµnh mét m· ng«n ng÷ cho nh÷ng trung t©m
xö lý cao cÊp h¬n bªn trong bé n·o; vµ cuèi cïng lµ viÖc hiÓu ®−îc néi dung th«ng
®iÖp. Tõ sù minh häa qu¸ tr×nh nhËn d¹ng tiÕng nãi th«ng qua hÖ thèng thÇn kinh
con ng−êi nh− trªn, chóng ta cã thÓ cã mét chót ý niÖm vÒ kh¶ n¨ng øng dông
m¹ng neuron nh©n t¹o trong viÖc m« pháng mét sè tæ chøc thÇn kinh nh− mét
phÇn cña hÖ thÇn kinh thÝnh gi¸c ch¼ng h¹n. 4.1.2 C¸c ©m thanh tiÕng nãi vµ c¸c ®Æc tr−ng Sè l−îng c¸c ©m thanh tiÕng nãi riªng biÖt (c¸c ©m vÞ) cña mét ng«n ng÷
th−êng lµ mét ®èi t−îng ®Ó ®¸nh gi¸ vµ kh«ng bÊt biÕn ®èi víi nh÷ng ng«n ng÷
kh¸c nhau. VÝ dô, theo mét thèng kª cô thÓ vÒ c¸c ©m vÞ chuÈn, trong TiÕng Anh
Mü, cã 39 ©m thanh bao gåm 11 nguyªn ©m, 4 nguyªn ©m ®«i, 4 b¸n nguyªn ©m,
20 phô ©m. Chóng ta sÏ nãi qua vÒ ®Æc tr−ng cña c¸c lo¹i ©m vÞ vµ tr×nh bµy kü h¬n
mét chót vÒ nguyªn ©m. Còng nh− nhiÒu nghiªn cøu vÒ xö lý tiÕng nãi kh¸c, ®èi
t−îng ng«n ng÷ ®−îc ®em ra ph©n tÝch ë ®©y lµ TiÕng Anh. 51 C¸c nguyªn ©m cã thÓ ®−îc coi lµ líp thó vÞ nhÊt trong c¸c líp ©m thanh
tiÕng nãi, ®Æc biÖt ®èi víi TiÕng Anh. TÇm quan träng cña chóng trong lÜnh vùc nhËn d¹ng tiÕng nãi lµ rÊt lín; hÇu hÕt c¸c hÖ thèng nhËn d¹ng dùa trªn c¬ së nhËn
d¹ng nguyªn ©m ®Òu cã tÝnh n¨ng tèt. Trong khi nãi, nguyªn ©m ®−îc t¹o ra b»ng c¸ch kÝch thÝch mét èng dÉn ©m
thanh cã h×nh d¹ng cè ®Þnh b»ng c¸c xung ¸p lùc khÝ gi¶ tuÇn hoµn do sù rung
®éng cña d©y thanh sinh ra. H×nh d¹ng cña tõng vïng côc bé däc theo èng dÉn ©m
x¸c ®Þnh c¸c tÇn sè céng h−ëng (c¸c formants) vµ ©m thanh sÏ ®−îc t¹o ra. ViÖc
t¹o ra nguyªn ©m cô thÓ nµo lµ ®−îc quyÕt ®Þnh bëi vÞ trÝ cña l−ìi, hµm, m«i, ...
C¸c nguyªn ©m nãi chung lµ cã thêi gian tån t¹i dµi (so víi c¸c phô ©m) vµ dÔ x¸c
®Þnh phæ. ChÝnh v× thÕ mµ sÏ dÔ dµng cho viÖc nhËn d¹ng, c¶ ®èi víi con ng−êi vµ
m¸y mãc. 4000
3500 3000 i I 2500 ε ae 2000 )
Z
H ( ε 1500 Λ 2
F a U 1000 u c 0 200 400 600 800 1000 1200 1400 F1(Hz) Cã mét sè c¸ch biÓu diÔn ®Æc tr−ng nguyªn ©m, bao gåm cÊu h×nh khoang
miÖng, c¸c ®å thÞ d¹ng sãng tÝn hiÖu vµ c¸c ®å thÞ phæ. ë ®©y chóng ta chØ quan
t©m tíi d¹ng biÓu diÔn ®å thÞ phæ. VÒ mÆt lý thuyÕt, c¸c cùc ®¹i cña biÓu diÔn phæ
cña tÝn hiÖu nguyªn ©m chÝnh lµ c¸c tÇn sè céng h−ëng (formants) t¹o nªn nguyªn
©m. Gi¸ trÞ cña c¸c c¸c formant ®Çu tiªn (2 hoÆc 3 formants ®Çu tiªn) lµ yÕu tè
quyÕt ®Þnh cho phÐp chóng ta nhËn d¹ng ®−îc nguyªn ©m. Do nhiÒu yÕu tè biÕn
thiªn nh− sù kh¸c nhau vÒ giíi tÝnh, vÒ ®é tuæi, t×nh tr¹ng tinh thÇn cña ng−êi nãi
vµ nhiÒu yÕu tè ngo¹i c¶nh kh¸c, ®èi víi mét nguyªn ©m x¸c ®Þnh c¸c gi¸ trÞ
formant còng cã mét sù biÕn thiªn nhÊt ®Þnh. Tuy nhiªn sù kh¸c biÖt vÒ gi¸ trÞ c¸c
fornants gi÷a c¸c nguyªn ©m kh¸c nhau lín h¬n nhiÒu; vµ trong kh«ng gian
formant chóng ta cã thÓ x¸c ®Þnh mét c¸ch t−¬ng ®èi c¸c vïng riªng biÖt cho tõng
nguyªn ©m. H×nh 4.2 minh häa mét ®å thÞ kinh ®iÓn cña c¸c gi¸ trÞ formant ®Çu
tiªn vµ thø hai cña 10 nguyªn ©m cïng víi sù ph©n vïng cho c¸c nguyªn ©m. ë
®©y chóng ta còng thÊy cã nh÷ng sù nhËp nh»ng trong ph¸t ©m thÓ hiÖn ë mét sè
chç chång chÐo lªn nhau gi÷a c¸c vïng. 52 Nguyªn ©m ®«i lµ kÕt qu¶ cña mét sù biÕn thiªn cña èng dÉn ©m mét c¸ch
liªn tôc tõ h×nh d¹ng t−¬ng øng víi nguyªn ©m thø nhÊt sang h×nh d¹ng t−¬ng øng
víi nguyªn ©m thø hai. §iÒu nµy còng lµm biÕn thiªn mét c¸ch liªn tôc c¸c
formant cña biÓu diÔn phæ theo thêi gain. §èi víi ©m vÞ lo¹i nµy, cÇn ph¶i ®Æc biÖt
chó ý ®Õn viÖc ph©n ®o¹n theo thêi gian khi nhËn d¹ng. C¸c b¸n nguyªn ©m nh− /w/, /l/, /r/, vµ /y/ lµ t−¬ng ®èi khã trong viÖc biÓu
diÔn ®Æc tr−ng. C¸c ©m thanh nµy kh«ng ®−îc coi lµ nguyªn ©m nh−ng gäi lµ b¸n
nguyªn ©m do b¶n chÊt tùa nguyªn ©m cña chóng. Nãi chung, chóng ®−îc ®Æc
tr−ng bëi mét sù qu¸ ®é vÒ chøc n¨ng cña èng dÉn ©m gi÷a c¸c ©m vÞ kÒ nhau.
Nh− vËy, c¸c ®Æc tr−ng ©m häc cña c¸c ©m thanh nµy chÞu ¶nh h−ëng rÊt m¹nh cña
ng÷ c¶nh mµ trong ®ã chóng xuÊt hiÖn. C¸c phô ©m mòi ®−îc t¹o ra víi sù kÝch thÝch cña thanh m«n vµ èng dÉn ©m
hoµn toµn bÞ th¾t (thu hÑp thiÕt diÖn) t¹i mét sè ®iÓm nhÊt ®Þnh. §Æc biÖt, l−ìi gµ
(ng¨n gi÷a khoang mòi vµ thanh qu¶n) më ra cho phÐp kh«ng khÝ ®i qua khoang
mòi vµ ©m thanh ®−îc bøc x¹ t¹i c¸c lç mòi. MÆc dï khoang miÖng còng bÞ th¾t vÒ
phÝa tr−íc nh−ng nã vÉn ®−îc ng¾t ©m t¹i thanh qu¶n. Vµ nh− vËy, miÖng ®ãng vai
trß nh− mét khoang céng h−ëng cã t¸c dông bÉy n¨ng l−îng ©m t¹i mét vµi tÇn sè
tù nhiªn. Cho tíi khi cã sù tham gia cña ©m thanh bøc x¹, c¸c tÇn sè céng h−ëng
nµy cña khoang miÖng xuÊt hiÖn nh− c¸c ph¶n céng h−ëng, hay c¸c ®iÓm kh«ng
cña hµm truyÒn ®¹t. Ngoµi ra, c¸c phô ©m mòi cßn ®−îc ®Æc tr−ng bëi nh÷ng
nh÷ng sù céng h−ëng m¹nh h¬n vÒ phæ so víi c¸c nguyªn ©m. C¸c phô ©m mòi
trong TiÕng Anh lµ /η/, /m/ vµ /n/. C¸c phô ©m x¸t v« thanh nh− /f/, /θ/, /s/ vµ /sh/ ®−îc t¹o ra b»ng c¸ch kÝch
thÝch èng dÉn ©m bëi mét luång kh«ng khÝ ®Òu ®Æn; luång kh«ng khÝ nµy sÏ trë
nªn hçn lo¹n trong mét khu vùc th¾t cña èng dÉn ©m. VÞ trÝ th¾t cã t¸c dông x¸c
®Þnh ©m thanh x¸t nµo ®−îc t¹o ra. Víi /f/, ®iÓm th¾t t¹i m«i, víi /θ/ th× gÇn r¨ng,
víi /s/ lµ gÇn gi÷a khoang miÖng, cßn víi /sh/ th× t¹i gÇn cuèi khoang miÖng. Nh−
vËy, hÖ thèng t¹o ra c¸c phô ©m x¸t v« thanh bao gåm mét nguån nhiÔu t¹i mét
®iÓm th¾t mµ chia èng dÉn ©m thµnh hai khoang. ¢m thanh ®−îc bøc x¹ t¹i m«i
tøc lµ tõ khoang tr−íc. Khoang sau cã t¸c dông bÉy n¨ng l−îng nh− trong tr−êng
hîp phô ©m mòi, vµ nh− vËy lµ ®−a c¸c ph¶n céng h−ëng vµo ©m thanh ®Çu ra. B¶n
chÊt kh«ng tuÇn hoµn lµ ®Æc tr−ng c¬ b¶n nhÊt cña nguån kÝch thÝch x¸t v« thanh. §iÓm kh¸c biÖt cña c¸c phô ©m x¸t h÷u thanh nh− /v/, /th/ vµ /zh/ so víi c¸c
phô ©m x¸t v« thanh lµ ë chç cã hai nguån kÝch thÝch liªn quan tíi viÖc t¹o ra
chóng; mét nguån kÝch thÝch t¹i thanh m«n do c¸c d©y thanh rung ®éng vµ mét
nguån nhiÔu t¹i ®iÓm th¾t gièng nh− trªn. Vµ nh− vËy ®Æc tr−ng cña phô ©m x¸t
h÷u thanh lµ bao gåm c¶ hai thµnh phÇn kÝch thÝch tuÇn hoµn vµ nhiÔu. 53 C¸c ©m dõng lµ c¸c phô ©m /b/, /d/, /g/, /p/, /t/ vµ /k/; chóng cã thêi gian tån
t¹i rÊt ng¾n vµ ®−îc sinh ra b»ng c¸ch t¹o nªn ¸p suÊt phÝa sau mét ®iÓm th¾t trong
khoang miÖng råi ®ét ngét gi¶i phãng ¸p suÊt. Víi /b/, ®iÓm th¾t t¹i m«i, víi /d/ t¹i
phÝa sau r¨ng, vµ víi /g/ lµ ë gÇn l−ìi gµ... Trong suèt thêi gian cã ®iÓm th¾t,
kh«ng mét ©m thanh nµo ®−îc bøc x¹ t¹i m«i. Tuy nhiªn, vÉn th−êng cã mét n¨ng
l−îng nhá bøc x¹ qua c¸c bøc v¸ch cña häng. §iÒu nµy x¶y ra khi c¸c d©y thanh
cã kh¶ n¨ng dao ®éng dï lµ èng dÉn ©m ®ang bÞ ®ãng t¹i mét sè ®iÓm. D©y thanh
còng cã thÓ kh«ng dao ®éng vµ trong tr−êng hîp nµy chØ cã kÝch thÝch v« thanh. Do c¸c ©m dõng lu«n cã tÝnh chÊt ®éng nh− vËy nªn c¸c thuéc tÝnh cña chóng chÞu
¶nh h−ëng rÊt nhiÒu bëi nguyªn ©m ®i sau nã. 4.1.3 C¸c tiÕp cËn nhËn d¹ng tiÕng nãi VÒ c¬ b¶n, cã ba tiÕp cËn nhËn d¹ng tiÕng nãi chÝnh nh− sau: 1. TiÕp cËn ©m thanh-ng÷ ©m. 2. TiÕp cËn nhËn d¹ng mÉu. 3. TiÕp cËn trÝ tuÖ nh©n t¹o. TiÕp cËn ©m thanh-ng÷ ©m dùa trªn c¬ së c«ng nhËn sù tån t¹i cña c¸c ®¬n
vÞ ng÷ ©m trong ng«n ng÷ tiÕng nãi; c¸c ®¬n vÞ ng÷ ©m nµy ®−îc biÓu diÔn ®Æc
tr−ng bëi mét tËp hîp nh÷ng thuéc tÝnh thÓ hiÖn trong tÝn hiÖu ©m thanh hay biÓu
diÔn phæ theo thêi gian. B−íc ®Çu tiªn cña tiÕp cËn ©m thanh-ng÷ ©m cho nhËn
d¹ng tiÕng nãi ®−îc gäi lµ b−íc ph©n ®o¹n vµ g¸n nh·n bëi v× nã liªn quan ®Õn
viÖc ph©n ®o¹n tÝn hiÖu ©m thanh thµnh c¸c vïng rêi r¹c (theo thêi gian) mµ ë ®ã
c¸c thuéc tÝnh ©m häc cña tÝn hiÖu biÓu diÔn cho mét (hay mét vµi) ®¬n vÞ ng÷ ©m.
Sau ®ã g¸n mét (hoÆc nhiÒu) nh·n ng÷ ©m cho mçi vïng ph©n ®o¹n dùa theo c¸c
thuéc tÝnh ©m häc. B−íc thø hai cña tiÕp cËn lµ giai ®o¹n thùc sù nhËn d¹ng tiÕng
nãi. NhiÖm vô chÝnh cña b−íc nµy lµ cè g¾ng x¸c ®Þnh mét tõ hîp lÖ (hay chuçi tõ
hîp lÖ) tõ mét chuçi c¸c nh·n ng÷ ©m thu ®−îc tõ b−íc thø nhÊt dùa trªn c¬ së c¸c
rµng buéc (vÒ tõ vùng vµ có ph¸p) cña t¸c vô cÇn nhËn d¹ng tiÕng nãi. TiÕp cËn nhËn d¹ng mÉu vÒ c¬ b¶n lµ mét quan ®iÓm sö dông trùc tiÕp c¸c
mÉu tiÕng nãi (speech patern) (chÝnh lµ ®o¹n tÝn hiÖu tiÕng nãi cÇn nhËn d¹ng) mµ
kh«ng cÇn x¸c ®Þnh thËt râ c¸c ®Æc tr−ng vµ còng kh«ng cÇn ph©n ®o¹n tÝn hiÖu
nh− ®èi víi tiÕp cËn ©m thanh - ng÷ ©m. (Chó ý cÇn ph©n biÖt thuËt ng÷ “mÉu tiÕng nãi” ë
®©y víi cïng thuËt ng÷ ®ã (speech sample) ®−îc sö dông trong Lý thuyÕt xö lý tiÕng nãi ®Ó chØ tÝn
hiÖu liªn tôc ®· ®−îc lÊy mÉu.) Ph−¬ng ph¸p nµy còng gåm hai b−íc, tÝch luü c¸c mÉu
tiÕng nãi, vµ nhËn d¹ng mÉu th«ng qua so s¸nh mÉu. “KiÕn thøc” vÒ tiÕng nãi ®−îc
®−a vµo hÖ thèng th«ng qua thñ tôc tÝch luü. NÕu cã ®ñ c¸c phiªn b¶n cña mét mÉu
trong mét tËp hîp tÝch luü, thñ tôc tÝch luü sÏ cã kh¶ n¨ng biÓu diÔn ®Æc tr−ng mét
c¸ch ®Çy ®ñ c¸c thuéc tÝnh ©m häc cña mÉu ®ã. ViÖc biÓu diÔn ®Æc tr−ng tiÕng nãi
th«ng qua sù tÝch luü nµy cã thÓ coi nh− mét bµi to¸n ph©n lo¹i mÉu. §Æc tÝnh h÷u
Ých chñ yÕu cña ph−¬ng ph¸p nµy n»m ë kh©u so s¸nh mÉu trong ®ã c¸c mÉu tiÕng
nãi kh«ng biÕt ®−îc so s¸nh trùc tiÕp víi c¸c mÉu ®· ®−îc häc b»ng tÝch luü vµ
®ång thêi ®−îc ph©n lo¹i theo sù t−¬ng øng mÉu tèt nhÊt. TiÕp cËn nhËn d¹ng mÉu th−êng ®−îc lùa chän cho c¸c øng dông nhËn d¹ng tiÕng nãi bëi ba lý do sau: 1. TÝnh dÔ sö dông vµ dÔ hiÓu trong thuËt to¸n. 2. TÝnh bÊt biÕn vµ kh¶ n¨ng thÝch nghi ®èi víi nh÷ng tõ vùng, ng−êi sö
dông, c¸c tËp hîp ®Æc tr−ng, c¸c thuËt to¸n so s¸nh mÉu vµ c¸c quy t¾c quyÕt ®Þnh
kh¸c nau. 3. Kh¼ng ®Þnh tÝnh n¨ng cao trong thùc tÕ. 54 Tõ nh÷ng m« t¶ trªn vÒ tiÕp cËn nhËn d¹ng mÉu cho nhËn d¹ng tiÕng nãi,
chóng ta cã thÓ nhËn ra nhiÒu ®iÓm t−¬ng ®ång vÒ lý thuyÕt ®èi víi c¸c bµi to¸n ®−îc gi¶i quyÕt b»ng c«ng cô m¹ng neuron. §iÓm kh¸c biÖt chÝnh ë ®©y n»m ë
kh¸i niÖm l−u tr÷ c¸c mÉu tÝch luü. §èi víi m¹ng neuron, c¸c mÉu l−u tr÷ ®−îc m·
ho¸ thµnh c¸c träng sè synapse vµ c¸c hÖ sè hiÖu chØnh cña m¹ng th«ng qua qu¸
tr×nh tÝch luü; qu¸ tr×nh “so s¸nh mÉu” còng ®−îc trõu t−îng ho¸ b»ng viÖc ®−a c¸c
mÉu kh«ng biÕt qua ®Çu vµo cña m¹ng råi sau ®ã thùc hiÖn quyÕt ®Þnh “so s¸nh”
trªn c¸c ®Çu ra cña m¹ng. TiÕp cËn nhËn d¹ng tiÕng nãi cuèi cïng ®−îc bµn ®Õn ë ®©y lµ tiÕp cËn trÝ
tuÖ nh©n t¹o mµ d−êng nh− khai th¸c quan ®iÓm cña hai tiÕp cËn kÓ trªn. TiÕp cËn
nµy cè g¾ng “m¸y mãc ho¸” chøc n¨ng nhËn d¹ng theo c¸ch mµ con ng−êi ¸p
dông trÝ th«ng minh cña m×nh trong viÖc quan s¸t, ph©n tÝch vµ thùc hiÖn nh÷ng
quyÕt ®Þnh trªn c¸c ®Æc tr−ng ©m häc cña tÝn hiÖu. Mét trong nh÷ng kü thuËt ®−îc
x©y dùng theo quan ®iÓm nµy lµ viÖc sö dông mét hÖ chuyªn gia cho viÖc ph©n
®o¹n vµ g¸n nh·n tÝn hiÖu, hay viÖc häc vµ thÝch nghi theo thêi gian ... XÐt trªn
khÝa c¹nh m« pháng trÝ tuÖ con ng−êi th× viÖc øng dông m¹ng neuron phÇn nµo
mang tÝnh chÊt cña tiÕp cËn trÝ tuÖ nh©n t¹o. Nh− chóng ta ®· bµn tíi ë trªn, viÖc nhËn d¹ng tiÕng nãi lu«n dùa trªn tÝn
hiÖu tiÕng nãi ®Çu vµo. Nh− vËy chóng ta ph¶i cÇn ®Õn nh÷ng kü thuËt ph©n tÝch vµ
xö lý nh»m biÓu diÔn tÝn hiÖu d−íi d¹ng nh÷ng tham sè thÝch hîp nhÊt cho viÖc
nhËn d¹ng. §Ó cã thÓ thÊy ®−îc râ h¬n vai trß cña c¸c kü thuËt xö lý tÝn hiÖu trong c¸c
m« h×nh hÖ thèng nhËn d¹ng, h·y xem h×nh 4.3 trong ®ã cã minh ho¹ cho c¶ tiÕp
cËn nhËn d¹ng mÉu vµ tiÕp cËn ©m thanh-ng÷ ©m. Mét tÝnh chÊt quan träng cÇn nhÊn m¹nh ë ®©y lµ ®Çu ra cña mét qu¸ tr×nh
xö lý tÝn hiÖu chÝnh lµ c¸c tham sè ®Æc tr−ng cña tÝn hiÖu tiÕng nãi ®Çu vµo; c¸c
tham sè nµy th−êng ®−îc biÓu diÔn d−íi d¹ng c¸c vector ®Æc tr−ng (vector feature). 4.2.1 C¸c m« h×nh ph©n tÝch phæ Hai lùa chän chung nhÊt cho viÖc x©y dùng ®Çu cuèi xö lý tÝn hiÖu cña bé
nhËn d¹ng tiÕng nãi lµ m« h×nh filter bank (d·y c¸c bé läc) vµ m« h×nh LPC (dù
®o¸n tuyÕn tÝnh). Trrong m« h×nh filter bank, tÝn hiÖu tiÕng nãi ®−îc chuyÓn qua
mét d·y c¸c bé läc th«ng d¶i mµ mçi mét trong chóng chiÕm lÜnh mét kho¶ng nhÊt
®Þnh trong mét ph¹m vi tÇn sè cÇn quan t©m (vÝ dô 100-3000Hz cho c¸c tÝn hiÖu
®iÖn tho¹i). Cã thÓ thÊy r»ng, mçi bé läc trong m« h×nh filter bank xö lý tÝn hiÖu
tiÕng nãi mét c¸ch ®éc lËp ®Ó t¹o c¸c ®Æc tr−ng cña tÝn hiÖu tiÕng nãi trong d¶i
th«ng mµ nã phô tr¸ch. M« h×nh ph©n tÝch LPC thùc hiÖn viÖc ph©n tÝch phæ dùa trªn c¸c khèi tiÕng
nãi (khung tiÕng nãi) víi rµng buéc m« h×nh toµn ®iÓm cùc. Sau khi t×m ra ®−îc
c¸c vector hÖ sè LPC x¸c ®Þnh phæ cña mét m« h×nh toµn ®iÓm cùc cña khung
tiÕng nãi, c¸c tham sè LPC sÏ tr¶i qua mét vµi xö lý tr−íc khi ®−îc ®−a tíi ®Çu vµo
cña bé nhËn d¹ng. 55 Trong c¸c phÇn tiÕp theo cña ch−¬ng nµy, còng do giíi h¹n vÒ quy m« luËn
v¨n, t¸c gi¶ chØ xin tr×nh bµy kü vÒ ph−¬ng ph¸p xö lý tÝn hiÖu dùa trªn m« h×nh filter bank v× nã ®−îc sö dông kh¸ phæ biÕn hiÖn nay vµ cã liªn quan trùc tiÕp tíi
viÖc x©y dùng phÇn mÒm thö nghiÖm. C¸c mÉu
tham chiÕu TiÕng nãi MÉu
kiÓm tra TiÕng nãi ®−îc
nhËn d¹ng §o ®¹c c¸c
tham sè So s¸nh
mÉu Quy t¾c
quyÕt ®Þnh C¸c ®Æc
tr−ng tõ
vùng TiÕng nãi TiÕng nãi ®−îc
nhËn d¹ng §o ®¹c c¸c
tham sè Bé kiÓm tra
c¸c gi¶
thiÕt Bé tæ hîp ®Æc
tr−ng vµ
Logic quyÕt
®Þnh Bé x¸c ®Þnh
®Æc tr−ng Q 4.2.2 Bé xö lý ®Çu cuèi filter bank (d∙y bé läc) 1 i Q = ≤ ≤ S¬ ®å khèi chi tiÕt h¬n cña bé ph©n tÝch ®Çu cuèi filter bank ®−îc ®−a ra
trong h×nh 4.4. TÝn hiÖu tiÕng nãi ®· ®−îc lÊy mÉu s(n) ®−îc ®−a qua mét d·y Q bé
läc th«ng d¶i, vµ ta ®−îc tÝn hiÖu sau ( )
s n
i ( ) * ( ),
s n
h n
i 1
− Mi ( = − (4.1a) i (4.1b) m 0 = 56 ë ®ã chóng ta ®· gi¶ ®Þnh r»ng ®¸p øng xung cña bé läc thø i lµ hi(m) trong kho¶ng
thêi gian t−¬ng øng víi Mi mÉu; nh− vËy, chóng ta sö dông biÓu diÔn tÝch chËp cña
thao t¸c läc ®Ó ®−a ra mét biÓu diÔn t−êng minh cho si(n), tÝn hiÖu ®Çu ra cña bé
läc thø i. Do môc ®Ých cña ph©n tÝch filter bank lµ ®−a ra sè liÖu vÒ n¨ng l−îng cña
tÝn hiÖu tiÕng nãi trong tõng d¶i tÇn sè nhÊt ®Þnh, nªn mçi tÝn hiÖu th«ng d¶i si
®−îc chuyÓn qua mét bé chuyÓn ®æi phi tuyÕn. C¸c bé chuyÓn ®æi phi tuyÕn dÞch
chuyÓn phæ cña tÝn hiÖu th«ng d¶i vÒ vïng tÇn thÊp ®ång thêi còng t¹o ra c¸c nhiÔu
tÇn sè cao. TiÕp ®ã c¸c bé läc th«ng thÊp ®−îc sö dông ®Ó lo¹i bá c¸c nhiÔu tÇn sè
cao, vµ cho ta mét tËp hîp c¸c tÝn hiÖu ui, 1≤i≤Q, biÓu diÔn ®¸nh gi¸ vÒ n¨ng l−îng
cña tÝn hiÖu tiÕng nãi trong tõng gi¶i th«ng (thuéc Q d¶i th«ng cña Q bé läc). s1(n) v1(n) t1(n) u1(m) x1(m) Bé läc th«ng
d¶i 1 Bé chuyÓn ®æi
phi tuyÕn Bé läc
th«ng thÊp Gi¶m tÇn
sè lÊy mÉu NÐn biªn
®é s(n) sQ(n) vQ(n) tQ(n) uQ(m) xQ(m) Bé läc th«ng
d¶i Q Bé chuyÓn ®æi
phi tuyÕn Bé läc
th«ng thÊp Gi¶m tÇn
sè lÊy mÉu NÐn biªn
®é 57 §Ó cã thÓ hiÓu mét c¸ch ®Çy ®ñ h¬n vÒ t¸c dông cña bé chuyÓn ®æi phi
tuyÕn vµ bé läc th«ng thÊp, chóng ta h·y gi¶ sö r»ng ®Çu ra cña bé läc th«ng d¶i
thø i lµ mét hµm thuÇn tuý h×nh sin t¹i tÇn sè ωi nh− sau (4.2) si(n)=αi sin(ωin) Gi¶ sö nµy lµ hîp lÖ ®èi víi tiÕng nãi trong tr−êng hîp c¸c ©m thanh h÷u
thanh cã tr¹ng th¸i æn ®Þnh vµ khi b¨ng th«ng cña bé läc lµ ®ñ hÑp sao cho chØ mét
thµnh phÇn dao ®éng ®iÒu hoµ ®¬n cña tÝn hiÖu tiÕng nãi ®−îc chuyÓn qua. NÕu
chóng ta sö dông mét bé chuyÓn ®æi phi tuyÕn nh− sau f(si(n))=si(n) víi si(n)≥0 (4.3) =-si(n) víi si(n)<0 th× chóng ta cã thÓ biÓu diÔn ®Çu ra bé chuyÓn ®æi nh− sau (4.4) vi(n)=f(si(n))=si(n).w(n) ( )
w n = ë ®ã 1
1 0
≥
0< +
− ( )
s n
i
( )
s n
i ⎧
⎨
⎩ (4.5) nh− ®−îc minh häa trong c¸c h×nh 4.5 a - 4.5 c. Bé chuyÓn ®æi phi tuyÕn cã thÓ
®−îc xem nh− thùc hiÖn mét sù biÕn ®æi tÇn sè theo thêi gian (theo c«ng thøc
(4.5)) ,vµ trong miÒn tÇn sè chóng ta cã ®−îc kÕt qu¶ sau si(n) n wi(n) +1 n -1 vi(n) n 58 (4.6) Vi(ejω)=Si(ejω) W(ejω) |Si(ejw)| ω ωi |Wi(ejw)| ω ωi 3ωi |Vi(ejw)| 0 ω
4ωi Quay trë l¹i h×nh 4.4, hai khèi cuèi cïng mµ c¸c tÝn hiÖu ®· ®−îc läc th«ng
thÊp ti(n) ®i qua lµ khèi lÊy mÉu l¹i tÝn hiÖu víi tÇn sè thÊp h¬n (kho¶ng 40-60Hz)
vµ khèi nÐn biªn ®é tÝn hiÖu (dïng m· ho¸ logarithm hay luËt μ (μ_law)). T¸c
dông cña hai khèi nµy chñ yÕu lµ ®Ó gi¶m bít ®i sè bit cÇn ®Ó l−u tr÷ c¸c tÝn hiÖu. 4.2.3 C¸c kiÓu filter bank c¬ b¶n KiÓu filter bank chung nhÊt (nh−ng Ýt ®−îc xö dông trong thùc tÕ) lµ filter i i 1 f , ≤ Q≤ bank ®Òu; ë ®ã tÇn sè trung t©m fi cña d¶i th«ng thø i ®−îc x¸c ®Þnh nh− sau: i F
s=
N (4.7) 59 ë ®ã Fs lµ tÇn sè lÊy mÉu cña tÝn hiÖu tiÕng nãi, vµ N lµ sè bé läc ph©n chia ®Òu
cÇn cã ®Ó bao phñ ph¹m vi tÇn sè cña tiÕng nãi. Sè l−îng bé läc thùc sù ®−îc sö
dông Q tho¶ m·n quan hÖ sau (4.8) Q≤N/2 1 2 3 Q F
s
N s F
s
N 2 F
N 3F
s
N QF
s
N 1 2 3 Q s s F
s
N 2 F
N 3 F
N QF
s
N víi dÊu b»ng (=) thÓ hiÖn kh«ng cã hiÖn t−îng chång tÇn sè gi÷a c¸c bé läc kÒ
nhau vµ dÊu nhá h¬n (<) thÓ hiÖn d¶i th«ng cña c¸c c¸c bé läc kÒ nhau cã mét
phÇn chång lªn nhau. H×nh 4.6a minh ho¹ mét tËp hîp Q bé läc th«ng d¶i lý t−ëng
vµ kh«ng chång tÇn sè mµ che phñ tõ (Fs/N)(1/2) tíi (Fs/N)(Q+1/2). H×nh 4.6b
minh häa mét tËp hîp Q bé läc thùc tÕ , cã hiÖn t−îng chång tÇn sè vµ còng che
phñ gÇn nh− cïng ph¹m vi tÇn sè nh− vËy. Mét lùa chän kh¸c cho viÖc thiÕt kÕ filter bank lµ c¸c filter bank kh«ng ®Òu.
VÝ dô, mét tiªu chuÈn ®−îc sö dông ®Ó ph©n chia tÇn sè cho c¸c bé läc lµ lµ dùa
trªn tû lÖ logarithm. Theo c¸ch ®ã, víi mét tËp hîp Q bé läc th«ng d¶i víi c¸c tÇn
sè trung t©m fi vµ b¨ng th«ng bi, 1≤i≤Q, chóng ta ®Æt (4.9a) b1=C i 1 − )
1 b
(
i f f b = + (4.9b) 2≤i≤Q bi=αbi-1, i j ∑1
+ −
2 j 1 = (4.9c) ë ®ã C vµ f1 lµ b¨ng th«ng vµ tÇn sè trung t©m bÊt kú cña bé läc ®Çu tiªn, vµ α lµ
mét h»ng sè cho tr−íc. 60 H·y xem xÐt mét vÝ dô vÒ viÖc thiÕt kÕ mét filter bank kh«ng ®Òu bèn bé
läc che phñ d¶i tÇn sè tõ 200 tíi 300Hz (víi tÇn sè lÊy mÉu 6.6.7 kHz) vµ kh«ng
chång tÇn sè, víi α=2. H×nh 3.8a minh ho¹ c¸c bé läc lý t−ëng cho filter bank nµy.
LÊy f1=300Hz vµ C=200Hz, chóng ta ®−îc c¸c bé läc nh− sau:
Bé läc 1: f1=300Hz,
Bé läc 2: f1=600Hz,
Bé läc 3: f1=1200Hz,
Bé läc 4: f1=2400Hz, b1=200Hz
b1=400Hz
b1=800Hz
b1=1600Hz g
n
«
h
t
g
n
¨
b f 0 1000Hz Trong thùc tÕ, cã mét sè kiÓu ph©n chia filter bank kh«ng ®Òu ®−îc ®−a ra
nh»m môc ®Ých phï hîp ®−îc víi tÝnh chÊt cña phæ tiÕng nãi. D¹ng chung cña c¸c
kiÓu ph©n chia nµy ®−îc minh häa trong h×nh 4.7. Tû lÖ ph©n chia gÇn nh− tuyÕn
tÝnh víi nh÷ng tÇn sè thÊp h¬n 1000Hz vµ gÇn víi tû lÖ logarithm víi nh÷ng tÇn sè
lín h¬n 1000Hz. Hai trong sè nh÷ng tû lÖ ph©n chia kinh ®iÓn theo kiÓu nµy lµ tû
lÖ mel vµ tû lÖ bark (sÏ ®−îc ®Ò cËp kü h¬n trong Ch−¬ng Ph©n tÝch bµi to¸n nhËn
d¹ng nguyªn ©m). 4.2.4 Mét sè ph−¬ng ph¸p cµi ®Æt filter bank = Mét filter bank cã thÓ ®−îc cµi ®Æt theo mét sè c¸ch tuú theo ph−¬ng ph¸p
®−îc sö dông ®Ó thiÕt kÕ c¸c bé läc. C¸c ph−¬ng ph¸p thiÕt kÕ cho bé läc sè
th−êng thuéc vµo hai líp c¬ b¶n sau: ®¸p øng xung v« h¹n (infnite impulse
response (IIR)) vµ ®¸p øng xung h÷u h¹n (fnite impulse response (FIR)). Tuy
nhiªn trong thùc tÕ, ng−êi ta th−êng quan t©m tíi c¸c bé läc FIR. ( ) * ( )
s n
h n
i i ( )
x n L 1 − ( = − Cã mét vµi ph−¬ng ph¸p cã thÓ sö dông ®Ó cµi ®Æt c¸c bé läc FIR trong mét
filterbank. D¹ng ®¬n gi¶n nhÊt lµ mét cÊu tróc trùc tiÕp. §Ó minh ho¹ cho cÊu tróc
nµy, chóng ta ký hiÖu ®¸p øng xung cña bé läc thø i lµ hi(n), 0≤i≤L-1; ®Çu ra cña
bé läc thø i lµ xi, cã thÓ ®−îc biÓu diÔn nh− mét tÝch chËp h÷u h¹n vµ rêi r¹c cña
tÝn hiÖu ®Çu vµo s(n) víi ®¸p øng xung hi(n), nh− sau (4.10a) i ∑ h m s n m
)
) ( m 0 = (4.10b) niω e j TÝnh to¸n trong c«ng thøc (4.10) ®−îc lÆp l¹i cho tÊt c¶ c¸c bé läc i, víi i=1,2,...,Q. ω
j ni w n e
( ) = Cã mét c¸ch cµi ®Æt kh¸c mµ ë ®ã mçi ®¸p øng xung cña bé läc th«ng d¶i
®−îc biÓu diÔn nh− lµ mét cöa sè th«ng thÊp cè ®Þnh w(n) ®−îc dÞch chuyÓn d¶i
tÇn b»ng c¸ch nh©n víi , nh− sau h n
( )
i (4.11) 61 Trong tr−êng hîp nµy, c«ng thøc (2.12b) trë thµnh j m
ω
i )
w m e
( = s n m
)
(
− ( )
x n
i ∑ m ( ) n m
− j
ω
i )
s m w n m e
( ) ( = − ∑ m n − iω
j iω
j m ) ( e s m w n m e
)
( = − ∑ m n iω
j iω )
j = e (4.12a) S e
(
n i ) S en ( ω
j
lµ biÕn ®æi Fourier thêi gian ng¾n (short-time Fourier transform
ë ®ã
(STFT)) t¹i tÇn sè ω
i=2πfi. TÇm quan träng cña c«ng thøc (4.12) lµ lu«n tån t¹i
nh÷ng thñ tôc tÝnh to¸n hiÖu qu¶ cho viÖc tÝnh STF sö dông c¸c ph−¬ng ph¸p FFT.
Chóng ta sÏ bµn tíi mét thñ tôc nh− vËy, nh−ng tr−íc tiªn cÇn bµn tíi kh¸i niÖm
STFT. (4.12b) − j miω i ) s m w n m e
)
(
( ω =
j
) − S e
(
n m i ( ω )
j (4.13) STFT cña mét chuçi s(m) ®−îc ®Þnh nghÜa nh− sau
∑ 0 cè ®Þnh th× chóng ta cã thÓ biÓu S en NÕu gi¶ sö r»ng ®−îc tÝnh víi n=n j
ω
i S ( e ) )
FT s m w n m [ ( ( )] = − diÔn c«ng thøc (4.13) d−íi d¹ng sau 0 n
0 =
ω ω
i i j
( ω ) (4.14) en 0 ë ®ã ký hiÖu FT[.] biÓu diÔn phÐp biÕn ®æi Fourier th«ng th−êng. Nh− vËy,
chÝnh lµ biÕn ®æi Fourier th«ng th−êng cña tÝn hiÖu ®∙ ®−îc läc qua
S i ) ( ω
j S en i ) ( ω
j S en 1. NÕu L lín (so víi sù tuÇn hoµn cña tÝn hiÖu), th×
sÏ cho mét kÕt
qu¶ tÇn sè tèt. NghÜa lµ, chóng ta cã thÓ x¸c ®Þnh ®−îc t−¬ng ®èi chÝnh x¸c
biªn ®é cña c¸c thµnh phÇn tÇn sè ®¬n; tuy nhiªn chóng ta chØ quan s¸t ®−îc
mét d¹ng gå ghÒ cña h×nh phæ tæng thÓ cña ®o¹n tÝn hiÖu tiÕng nãi trong cöa
sæ. sÏ cho mét kÕt
2. NÕu L nhá (so víi sù tuÇn hoµn cña tÝn hiÖu), th×
qu¶ tÇn sè s¬ l−îc (kh«ng x¸c ®Þnh ®−îc c¸c thµnh phÇn tÇn sè ®¬n mét
c¸ch chÝnh x¸c), nh−ng l¹i thu ®−îc mét ®¸nh gi¸ râ rµng cña h×nh phæ tæng
thÓ. 62 B©y giê chóng ta quay trë l¹i vÊn ®Ò lµm thÕ nµo ®Ó cã thÓ cµi ®Æt mét c¸ch
cã hiÖu qu¶ viÖc tÝnh to¸n c¸c ®Çu ra cho mét filter bank ®Òu (c¸c ®Çu ra ®−îc cho
bëi c«ng thøc (4.12)). Víi filter bank ®Òu, chóng ta cã c¸c tÇn sè trung t©m (4.15) i=0,1,...,N-1 fi=i(Fs/N) j in j im − ⎛
⎜
⎝ ⎛
⎜
⎝ π
2
⎞
⎟
⎠
N π
2
⎞
⎟
⎠
N e )
s m w n m e
( ) ( = − vµ c«ng thøc (4.12a) cã thÓ ®−îc viÕt l¹i nh− sau ∑ m (4.16) x n
( )
i B©y giê ta t¸ch phÐp tÝnh tæng theo m thµnh mét tæng kÐp theo r vµ k sao cho (4.17) m=Nr+k, 0≤k≤N-1, -∞≤r≤∞ Hay nãi c¸ch kh¸c, chóng ta chia tæng theo m thµnh c¸c phÇn cã kÝch th−íc N. NÕu chóng ta ®Æt (4.18) sn(m)=s(m)w(n-m) N 1
− ) j in j i Nr k
( + − ⎛
⎜
⎝ ⎛
⎜
⎝ 2
π
⎞
⎟
⎠
N 2
π
⎞
⎟
⎠
N e = + th× c«ng thøc (4.16) cã thÓ ®−îc viÕt l¹i nh− sau ( )
x n
i (
s Nr
n 0 k r = ⎡
∑∑
⎢
⎣ ⎤
k e
)
⎥
⎦ (4.19) N 1 − j ik j in − ⎛
⎜
⎝ ⎛
⎜
⎝ 2
π
⎞
⎟
⎠
N 2
π
⎞
⎟
⎠
N e = + Do e-j2πir=1 víi mäi i vµ r nªn x n
( )
i s Nr
(
n k r 0 = ⎡
∑∑
⎢
⎣ ⎤
k e
)
⎥
⎦ ), 0 k k N = + ≤ ≤ − (4.20) 1 u k
( )
n s Nr
(
n r (4.21) NÕu chóng ta ®Þnh nghÜa
∑ N 1 − j ik j in − ⎛
⎜
⎝ ⎛
⎜
⎝ 2
π
⎞
⎟
⎠
N 2
π
⎞
⎟
⎠
N e u k e
( ) = th× chóng ta sÏ cã ®−îc c«ng thøc cuèi cïng nh− sau n ∑ k 0 = ⎤
⎥
⎥
⎦ ⎡
⎢
⎢
⎣ (4.22) x n
( )
i vµ ®©y chÝnh lµ kÕt qu¶ mong muèn; cã nghÜa lµ xi(n) lµ mét DFT (biÕn ®æi Fourier
rêi r¹c (Discrete Fourier Transform)) N ®iÓm cña chuçi ui(k), vµ chóng ta cã thÓ
dïng FFT ®Ó tÝnh xi(n). 63 D¹ng chung nhÊt cña mét filter bank FIR ®−îc minh häa trong h×nh 4.8, ë
®ã bé läc th«ng d¶i thø k cã ®¸p øng xung hk(n) víi tÇn sè trung t©m ωk, vµ b¨ng
th«ng Δωk. x1(n) h1(n) x2(n) s(n) h2(n)
.
.
. xQ(n) hQ(n) Trong m« h×nh chung nµy, mçi bé läc th«ng d¶i ®−îc cµi ®Æt th«ng qua mét
tÝch chËp trùc tiÕp; nghÜa lµ kh«ng mét cÊu tróc FFT hiÖu qu¶ nµo ®−îc sö dông.
Trong tr−êng hîp mµ ë ®ã mçi bé läc th«ng d¶i ®−îc thiÕt kÕ theo ph−¬ng ph¸p
dïng cöa sæ (®· ®−îc nãi tíi trong phÇn ®Çu cña 4.2.4), th× víi viÖc sö dông cïng
mét cöa sæ tÇn sè thÊp, ng−êi ta cã thÓ chøng minh r»ng ®¸p øng tÇn sè chung cña
filter bank Q bé läc lµ hoµn toµn ®éc lËp víi sè l−îng còng nh− sù ph©n bè c¸c bé
läc. Mét filter bank gåm ba bé läc còng cã cïng ®¸p øng tÇn sè víi mét filter bank
gåm b¶y bé läc. N 1
− j nk − 2
π
N , 0 X = ≤ k N
≤ − 1 Cã mét c¸ch cã thÓ khai th¸c cÊu tróc FFT cho viÖc cµi ®Æt c¸c filter bank
®Òu ®Ó thiÕt kÕ mét filter bank ®Òu kÝch th−íc lín (cã kho¶ng tõ 128 ®Õn 256 bé
läc th«ng d¶i), råi sau ®ã t¹o nªn tÝnh kh«ng ®Òu b»ng c¸ch tæ hîp hai hay nhiÒu
bé läc l¹i víi nhau. Ng−êi ta ®· chøng minh r»ng kü thuËt tæ hîp bé läc nh− vËy lµ
t−¬ng ®−¬ng víi viÖc ¸p dông cöa sæ ph©n tÝch biÕn ®æi (chø kh«ng cè ®Þnh nh−
víi filter bank ®Òu) cho chuçi tr−íc khi tÝnh FFT. §Ó thÊy râ ®−îc ®iÒu nµy, h·y
xem xÐt viÖc tÝnh DFT N ®iÓm cña chuçi x(n) (®−îc lÊy tõ tÝn hiÖu tiÕng nãi s(n)
b»ng c¸ch läc qua cöa sæ w(n)). Nh− vËy, chóng ta cã k ∑ ( )
x n e n 0 = (4.23) N 1 − j nk j (
n k )
1 + − − 2
π
N 2
π
N X X x n e
( ) e + + chÝnh lµ tËp hîp c¸c gi¸ trÞ DFT. NÕu chóng ta tiÕn hµnh céng c¸c ®Çu ra DFT lµ
Xk vµ Xk+1 víi nhau, chóng ta ®−îc k k + ∑1
= ⎛
⎜
⎝ ⎞
⎟
⎠ n 0 = (4.24) N 1
− j j nk − − π
n
N 2
π
N X X X x n e
2
( ) e = + vµ còng thÓ ®−îc viÕt thµnh '
k k k + ∑1
= ⎛
cos
⎜
⎝ ⎞
⎟
⎠ n
π
N n 0 = ⎡
⎢
⎣ ⎤
⎥
⎦ 64 (4.25) j − π
n
N ë ®©y gi¸ trÞ ®Çu ra bé läc t−¬ng ®−¬ng thø k lµ Xk’ nhËn ®−îc b»ng c¸ch ⎛
cos
⎜
⎝ ⎞
⎟
⎠ n
π
N . Trong tr−êng hîp nh©n chuçi x(n) theo thêi gian víi chuçi phøc 2e cã nhiÒu h¬n hai bé läc tæ hîp víi nhau, th× ta sÏ thu ®−îc mét kÕt qu¶ nh©n chuçi
t−¬ng ®−¬ng kh¸c. Nh− vËy cã thÓ nãi viÖc tæ hîp cÊu tróc FFT nh− trªn thùc chÊt lµ mét
ph−¬ng ph¸p “nhanh vµ th«” trong viÖc thiÕt kÕ c¸c bé läc th«ng d¶i lín h¬n, ®ång
thêi còng lµ mét c¸ch ®¬n gi¶n vµ hiÖu qu¶ ®Ó x©y dùng mét sè kiÓu cÊu tróc ph©n
tÝch filter bank phi tuyÕn. Còng trªn quan ®iÓm thu nhËn c¸c kiÕn thøc vÒ sù biÕn thiªn cña tÝn hiÖu
tiÕng nãi th«ng qua viÖc häc vµ thÝch nghi nh− trong c¸c øng dông TrÝ tuÖ nh©n t¹o
mµ Lý thuyÕt M¹ng neuron ®−îc nghiªn cøu víi môc ®Ých ¸p dông vµo lÜnh vùc
nhËn d¹ng tiÕng nãi. H×nh 4.9 minh ho¹ mét s¬ ®å khèi cña mét hÖ thèng hiÓu tiÕng nãi ®−îc
ph¸c th¶o dùa trªn mét m« h×nh tiÕp thu tiÕng nãi cña con ng−êi. TÝn hiÖu ©m
thanh ®Çu vµo ®−îc ph©n tÝch bëi mét “m« h×nh tai” mµ cã thÓ cung cÊp c¸c th«ng
tin vÒ phæ cña tÝn hiÖu vµ l−u tr÷ nã trong mét kho th«ng tin c¶m biÕn. C¸c th«ng
tin trong kho nµy sÏ ®−îc sö dông ®Ó lÊy ra c¸c ®Æc tr−ng cña tÝn hiÖu tiÕng nãi ë
c¸c møc ®é kh¸c nhau. C¶ bé nhí thêi h¹n ng¾n (short-term) (®éng) vµ bé nhí
thêi h¹n dµi (long-term) (tÜnh) ®Òu s½n sµng cho c¸c bé x¸c ®Þnh ®Æc tr−ng sö
dông. Cuèi cïng sau mét sè b−íc x¸c ®Þnh ®Æc tr−ng, ®Çu ra cuèi cña hÖ thèng lµ
mét biÓu diÔn cña th«ng tin chøa trong ©m thanh ®Çu vµo. 65 Trong hÖ thèng cña h×nh 4.9, sù ph©n tÝch thÝnh gi¸c ®−îc ph¸c th¶o dùa
trªn nh÷ng hiÓu biÕt cña chóng ta vÒ qu¸ tr×nh xö lý ©m thanh trong tai. Nh÷ng sù
ph©n tÝch ®Æc tr−ng kh¸c nhau biÓu diÔn qu¸ tr×nh xö lý t¹i nh÷ng møc kh¸c nhau
trong lé tr×nh thÇn kinh tíi bé n·o. Bé nhí thêi h¹n ng¾n vµ thêi h¹n dµi ®em l¹i
mét sù ®iÒu khiÓn bªn ngoµi ®èi víi c¸c qu¸ tr×nh thÇn kinh. Vµ nh− vËy cã thÓ ®i
®Õn mét nhËn xÐt r»ng d¹ng chung cña m« h×nh lµ mét m¹ng kÕt nèi tiÕn
(feedforward connectionist network) - gièng nh− mét m¹ng neuron. bé nhí thêi h¹n dµi bé nhí thêi h¹n ng¾n (4)
tæ hîp ®Æc
tr−ng ng÷
©m (3)
bé ®Öm
®Æc
tr−ng (1)
PH¢N TÝCH
§ÆC TR¦NG
THÝNH GI¸C (2)
PH¢N TÝCH
§ÆC TR¦NG
ng÷ ©m i ©m thanh
®Çu vµo hiÓu ©m
thanh ®Çu
vµo Ý c
¸
g
h
n
h
t h
c
Ý
t
n
©
h
p
n
Ò
i
t n
Õ
i
b
m
¶
c
n
i
t
g
n
«
h
t
o
h
k KHèI NHËN D¹NG §Ó cã ®−îc mét ý niÖm vÒ mèi quan hÖ gi÷a kiÕn tróc kÕt nèi cña m¹ng
neuron vµ c¸c ®Æc tr−ng cña ©m thanh tiÕng nãi, h·y xem xÐt mét vÝ dô nhá mang
tÝnh lý thuyÕt ®−îc minh ho¹ trong h×nh 4.10 . M¹ng neuron ®−îc xÐt ë ®©y lµ mét
m¹ng tiÕn ®a møc gåm mét møc Èn. §Çu vµo cña m¹ng lµ hai ®Æc tr−ng c¬ b¶n cña
nguyªn ©m, ®ã lµ hai tÇn sè céng h−ëng ®Çu tiªn F1 vµ F2; cßn ®Çu ra cña m¹ng lµ
10 nót trong ®ã mçi nót ®¹i diÖn cho mét nguyªn ©m. M¹ng nµy cã kh¶ n¨ng ph©n
biÖt c¸c vïng quyÕt ®Þnh kh¸c nhau trong kh«ng gian ®Çu vµo (F1,F2) sao cho mçi
vïng ®ã ®¹i diÖn cho mét trong m−êi nguyªn ©m. Tuy nhiªn cÊu tróc trªn chØ ®−îc ®−a ra nh− mét vÝ dô lý thuyÕt v× trong
thùc tÕ viÖc x¸c ®Þnh chÝnh x¸c F1 vµ F2 cho mét tÝn hiÖu nguyªn ©m bÊt kú nhËn
®−îc kh«ng ph¶i lµ mét ®iÒu ®¬n gi¶n. 4.3.1 C¸c M¹ng neuron trÔ (time-delay) vµ nhËn d¹ng tiÕng nãi 66 Do b¶n chÊt ®éng cña tÝn hiÖu tiÕng nãi, viÖc sö dông c¸c m¹ng neuron trÔ
(TDNN) lµ mét trong nh÷ng gi¶i ph¸p hîp lý ®Ó cã thÓ b¾t ®−îc nh÷ng sù biÕn
thiªn tÝnh chÊt theo thêi gian. /u/ /a/ /i/ /c/ . . . F1 F2 Tõ cÊu tróc TDNN ®· nghiªn cøu trong Ch−¬ng 3, cã thÓ thÊy r»ng TDNN
cho phÐp më réng ®Çu vµo cña mçi phÇn tö tÝnh to¸n (neuron) sao cho cã thÓ bao
gåm N vector tham sè ®Æc tr−ng cña N khung tiÕng nãi (frames) (mçi frame lµ mét
®o¹n tÝn hiÖu tiÕng nãi ®−îc lÊy trong mçi kho¶ng thêi gian cè ®Þnh Δ(s)). ë ®©y
cÇn ph¶i nhÊn m¹nh r»ng mçi vector feature nh− vËy lµ kÕt qu¶ cña mét qu¸ tr×nh
ph©n tÝch vµ xö lý tÝn hiÖu tiÕng nãi b»ng ph−¬ng ph¸p filter bank hay LPC ®·
®−îc tr×nh bµy trong phÇn 4.2. B»ng c¸ch më réng ®Çu vµo thµnh N vector feature
nh− vËy, nhiÒu bé nhËn d¹ng ©m vÞ ®· ®−îc x©y dùng trong thùc tiÔn dùa trªn c¬
së TDNN. VÝ dô, h×nh 4.11 minh ho¹ mét m¹ng TDNN kÕt nèi ®Çy ®ñ víi hai møc
Èn mµ ®· d−îc sö dông ®Ó ph©n biÖt ba ©m vÞ /b/, /d/ vµ /g/. Trong vÝ dô nµy, ®Çu vµo cña m¹ng xö lý tÝn hiÖu gåm 15 vector feature cña
15 frames víi 10 ms cho mét frame; mçi vector feature gåm 16 hÖ sè filter bank
theo kiÓu tû lÖ mel, tøc lµ ®Çu vµo cña m¹ng cã 16 nót. §ång thêi, mçi nót cña
møc ®Çu vµo sö dông c¸c kÕt nèi trÔ 3 nh¸nh ®Ó nèi tíi c¸c neuron cña møc Èn ®Çu
tiªn, cã nghÜa lµ mçi bé 3 vector feature kÒ nhau sÏ ®−îc xö lý t¹i cïng mét neuron
Èn trong møc nµy. Møc Èn thø nhÊt cã 8 neurons, vµ nh− vËy sÏ t¹o thµnh c¸c
vector 8 hÖ sè lµm ®Çu vµo cho møc Èn thø hai. Mçi neuron trong møc Èn ®Çu tiªn
l¹i nèi víi c¸c neuron cña møc Èn thø hai b»ng c¸c kÕt nèi trÔ 5 nh¸nh. Møc Èn thø
hai cã 3 neurons, vµ còng sÏ t¹o thµnh c¸c vector 3 hÖ sè ®Ó tiÕp tôc chuyÓn tíi
møc ®Çu ra. Mçi neuron cña møc Èn thø hai còng l¹i nèi víi mét nót ®Çu ra b»ng
c¸c kÕt nèi trÔ 9 nh¸nh. Møc ®Çu ra cã 3 neurons vµ mçi neuron ®¹i diÖn cho mét
trong ba ©m vÞ cÇn ph©n biÖt. §èi víi c¸c ©m thanh tiÕng nãi ®a ©m vÞ, tÝn hiÖu còng cã thÓ ®−îc chia
thµnh c¸c frame nh− trªn, sau ®ã mçi frame sÏ ®−îc nhËn d¹ng ®éc lËp xem nã
thuéc ©m vÞ nµo; vµ nh− vËy sÏ dÇn t¹o nªn ®−îc chuçi ©m vÞ cña ©m thanh ®Çu
vµo. 67 Trong c¸c øng dông thùc tÕ, ngoµi cÊu tróc TDNN nh− trªn, ng−êi ta cßn
tËn dông søc m¹nh cña c¸c kÕt nèi ph¶n håi ®Ó n©ng cao tÝnh n¨ng nhËn d¹ng vµ
dÉn ®Õn viÖc øng dông réng r·i c¸c m¹ng RTDNN (m¹ng neuron håi quy trÔ). b d g Møc ®Çu ra Møc Èn thø hai
(3 neurons) Møc Èn thø nhÊt
(8 neurons) Møc Èn ®Çu vµo
(16 neurons) 16 hÖ sè filter
bank theo tû lÖ
mel 15 vectors feature cña 15 frames
(10 ms/frame) 4.3.2 Mét h−íng ph¸t triÓn dùa trªn m¹ng neuron -
M« hinh lai ANN/HMM (Artificial Neural Network/Hidden Markov
Model) M« h×nh sö dông RTDNN mét c¸ch trùc tiÕp nh− ®−îc m« t¶ ë trªn lµ mét
m« h×nh kinh ®iÓn, ®−îc nghiªn cøu ngay tõ thêi gian ®Çu ph¸t triÓn c«ng cô m¹ng
neuron cho nhËn d¹ng tiÕng nãi. Trong qu¸ tr×nh nghiªn cøu, ng−êi ta thÊy r»ng,
víi tr×nh ®é ph¸t triÓn hiÖn nay cña Lý thuyÕt m¹ng neuron còng nh− c¸c lÜnh vùc
liªn quan kh¸c, cßn cã nhiÒu khã kh¨n trong viÖc x©y dùng mét hÖ thèng thuÇn tuý
m¹ng nueron cã kh¶ n¨ng nhËn d¹ng mét c¸ch cã hiÖu qu¶ c¸c qu¸ tr×nh ®éng nh−
tÝn hiÖu tiÕng nãi, ®Æc biÖt lµ nh÷ng h¹n chÕ vÒ quy m« m¹ng do kh¶ n¨ng l−u tr÷.
ChÝnh v× thÕ, nhiÒu nghiªn cøu quan träng hiÖn nay ®i theo h−íng tÝch hîp m¹ng
neuron víi c¸c ph−¬ng ph¸p kh¸c nh»m t¨ng tÝnh n¨ng bé nhËn d¹ng. Mét m«
h×nh còng ®−îc coi lµ kinh ®iÓn trong h−íng nghiªn cøu nµy lµ m« h×nh lai
ANN/HMM (Artificial Neural Network/Hidden Markov Model). (Trong phÇn nµy
cã sö dông mét sè kiÕn thøc vÒ HMM mµ ch−a ®−îc ®Ò cËp tíi trong b¶n luËn v¨n,
®Ó cã thÓ hiÓu ®−îc chóng b¹n ®äc nªn tham kh¶o c¸c s¸ch chuyªn vÒ Lý thuyÕt
nhËn d¹ng tiÕng nãi) 68 Trong m« h×nh nµy, ANN ®−îc sö dông ®Ó ®¸nh gi¸ c¸c x¸c suÊt cho c¸c
©m vÞ; vµ x¸c suÊt nµy ®−îc sö dông bëi HMM. §Çu ra cña ANN sÏ ®−îc biÓu diÔn
nh− c¸c x¸c suÊt ©m vÞ thuéc mét quan s¸t p(ci|O) vµ c¸c x¸c suÊt quan s¸t p(O|ci)
theo quy t¾c x¸c suÊt Bayes. C¸c tÇn sè líp p(ci) ®−îc ®¸nh gi¸ tr−íc tõ tËp hîp
tÝch luü vµ x¸c suÊt quan s¸t kh«ng ®iÒu kiÖn p(O) lµ h»ng sè cho tÊt c¶ c¸c líp. Trong c¸c Ch−¬ng tr−íc, chóng ta ®· nghiªn cøu mét c¸ch t−¬ng ®èi ®Çy ®ñ
vÒ c¬ së lý thyÕt ®Ó cã thÓ x©y dùng ®−îc mét øng dông ®¬n gi¶n cho vÊn ®Ò nhËn
d¹ng tiÕng nãi b»ng c«ng cô m¹ng neuron. Tõ ch−¬ng nµy trë vÒ sau, ®Ó phôc vô
cho môc ®Ých hiÓu s©u h¬n vÒ mÆt lý thuyÕt, t¸c gi¶ b¶n luËn v¨n xin tr×nh bµy mét
sè quan ®iÓm trong viÖc x©y dùng mét phÇn mÒm thö nghiÖm. • §Çu vµo: Lµ c¸c tÝn hiÖu tiÕng nãi, cã thÓ lµ tÝn hiÖu trùc tiÕp tõ micro hay
tÝn hiÖu tõ c¸c file ©m thanh (vÝ dô *.wav). TÝnh chÊt cña tiÕng nãi ®Çu vµo
giíi h¹n trong ph¹m vi lµ c¸c nguyªn ©m ®¬n ®−îc ph¸t ©m kÐo dµi. • PhÇn thùc hiÖn tÝnh to¸n: Xö lý c¸c tÝn hiÖu ®Çu vµo víi c«ng cô chÝnh lµ
m¹ng neuron nh»m thùc hiÖn hai nhiÖm vô: (1) tÝch luü m¹ng neuron ®Ó
t¨ng dÇn tÝnh n¨ng nhËn d¹ng; (2) quyÕt ®Þnh xem tÝn hiÖu ®ã lµ thuéc
nguyªn ©m nµo. • §Çu ra: Cã hai tr−êng hîp: (1) ®Çu ra lµ c¸c sè liÖu biÓu thÞ kÕt qu¶ cña
qu¸ tr×nh tÝch luü; (2) ®Çu ra lµ c¸c quyÕt ®Þnh ®· thùc hiÖn vÒ sù ph©n lo¹i
nguyªn ©m vµ th«ng tin vÒ ®é tin cËy cña quyÕt ®Þnh ®ã. Môc ®Ých cña phÇn mÒm chØ lµ nh»m ph©n biÖt c¸c tÝn hiÖu tiÕng nãi cña 5
nguyªn ©m a, e, i, o, u. Chóng ta cã thÓ h×nh dung ®©y nh− mét hÖ thèng víi c¸c
thµnh phÇn sau: TÝn hiÖu
tiÕng nãi M¹ng
neuron KÕt qu¶ tÝch luü &
QuyÕt ®Þnh nhËn d¹ng • C¸c kü thuËt xö lý tÝn hiÖu tiÕng nãi c¬ b¶n: tiÒn xö lý tÝn hiÖu, cöa sæ läc,
tÝnh FFT, cöa sæ cepstre, ... • Kü thuËt ph©n tÝch tÝn hiÖu cho nhËn d¹ng tiÕng nãi: sö dông c¸c filter
bank. 69 Nh− chóng ta ®· thÊy, yªu cÇu cña bµi to¸n lµ hÕt søc ®¬n gi¶n, nh−ng viÖc
x©y dùng nã l¹i liªn quan ®Õn nhiÒu kiÕn thøc c¬ b¶n vÒ m¹ng neuron vµ xö lý
tiÕng nãi nh−: • C¸c kiÕn thøc vÒ m¹ng neuron tiÕn ®a møc: cÊu tróc ph©n møc, thuËt to¸n
back-propagation, ... • C¸c kiÕn thøc vÒ RTDNN: c¸c frames, thuËt to¸n back-propagation më
réng, ... XÐt vÒ nÒn t¶ng hÖ thèng, ch−¬ng tr×nh nªn cã kh¶ n¨ng ch¹y trªn hÖ ®iÒu hµnh phæ biÕn lµ Windows 9x, cïng víi c¸c hç trî ©m thanh cña hÖ ®iÒu hµnh nµy. Dùa vµo yªu cÇu cña bµi to¸n cÇn gi¶i quyÕt, chóng ta cã thÓ kh¼ng ®Þnh
r»ng ho¹t ®éng chÝnh cña phÇn mÒm n»m ë hai vÊn ®Ò: Xö lý tÝn hiÖu ®Çu vµo vµ
VËn hµnh m¹ng neuron. Sau ®©y lµ c¸c ph−¬ng ¸n ®Ò xuÊt nh»m môc ®Ých gi¶i
quyÕt hai vÊn ®Ò trªn. CÇn nhÊn m¹nh r»ng môc tiªu chÝnh cÇn ®¹t ®−îc trong viÖc gi¶i quyÕt vÊn
®Ò nµy lµ t¹o ra c¸c vector ®Çu vµo cho m¹ng neuron tõ c¸c tham sè ®Æc tr−ng lÊy
®−îc tõ tÝn hiÖu tiÕng nãi. §èi víi b¶n th©n tÝn hiÖu tiÕng nãi, chóng ta cã thÓ dïng mét d¹ng m· ho¸
trùc tiÕp nh− d¹ng file *.wav (file ©m thanh chuÈn cña hÖ ®iÒu hµnh Windows).
Ngay c¶ víi ©m thanh thu trùc tiÕp tõ micro còng cã thÓ ®−îc m· ho¸ theo d¹ng
nµy. Néi dung cña mét file *.wav cã thÓ coi lµ mét sãng tÝn hiÖu ®· ®−îc lÊy mÉu
vµ sè ho¸. TiÕp sau ®©y chóng ta sÏ bµn vÒ bé xö lý c¸c chuçi sè biÓu thÞ c¸c sãng
tÝn hiÖu nµy. Tr−íc hÕt, chóng ta quyÕt ®Þnh lùa chän ph−¬ng ¸n filter bank do tÝnh phæ
biÕn vµ kh¶ n¨ng dÔ cµi ®Æt cña nã. QuyÕt ®Þnh ®Çu tiªn nµy sÏ cã vai trß më ®−êng
cho viÖc lùa chän c¸c kü thuËt kh¸c. Nh− vËy, STFT (phÐp biÕn ®æi Fourier thêi
gian ng¾n) sÏ ®−îc sö dông nh− mét phÐp xö lý tÝn hiÖu c¬ b¶n. Mét vÊn ®Ò hÕt søc quan träng ®èi víi mét filter bank lµ c¸ch ph©n chia c¸c
vïng tÇn sè cho c¸c bé läc thµnh phÇn. Còng nh− nhiÒu øng dông kh¸c, chóng ta
sÏ ¸p dông mét tû lÖ ph©n chia kh«ng ®Òu lµ tû lÖ mel (rÊt kinh ®iÓn). Víi tû lÖ nµy,
d¶i tÇn sè tæng thÓ ®−îc biÕn ®æi theo hµm logarithm (vÝ dô log10(.)); sau ®ã chia
®Òu c¶ d¶i tÇn sè cho tõng bé läc; råi l¹i tÝnh c¸c tÇn sè biªn (c¸c tÇn sè c¾t) ng−îc
trë l¹i theo hµm mò t−¬ng øng(vÝ dô 10(.)). Sãng tÝn hiÖu ®−îc xö lý theo tõng frame bao gåm mét sè x¸c ®Þnh c¸c mÉu
liªn tiÕp nhau (vÝ dô c¸c frame t−¬ng øng víi c¸c ®o¹n sãng kÐo dµi 10 ms). Víi
mçi frame, ®Çu ra cña mét nh¸nh xö lý filter bank (t−¬ng øng víi mét bé läc th«ng
d¶i) sÏ lµ mét ®¸nh gi¸ vÒ n¨ng l−îng tÝn hiÖu trong b¨ng th«ng cña bé läc ®ã. PhÝa
sau tõng bé läc, trªn tõng nh¸nh, cã thÓ cã hoÆc kh«ng mét cöa sæ cepstre, víi
môc ®Ých t¹o kh¶ n¨ng tËn dông nh÷ng −u ®iÓm cña kho¶ng c¸ch cepstre trong
mèi quan hÖ gi÷a c¸c mÉu. VËy nÕu filter bank cã Q bé läc th× ®Çu ra cña nã sÏ lµ
mét vector Q thµnh phÇn. 70 Cïng víi Q ®Çu ra cña Q bé läc, chóng ta cã thÓ thªm c¸c tham sè kh¸c nh−
n¨ng l−îng tæng céng cña tÝn hiÖu trong frame, hay c¸c gi¸ trÞ delta so víi c¸c frame liÒn tr−íc vµ liÒn sau .... Gi¶ sö chóng ta thu ®−îc tæng céng N tham sè th×
®ã chÝnh lµ mét vector ®Æc tr−ng gåm N thµnh phÇn cho mét frame; vµ vector nµy
sÏ trë thµnh ®Çu vµo cña m¹ng neuron. • Neuron (tõ ®©y trë ®i cã thÓ gäi lµ Unit): Sù kh¸c biÖt nhau chñ yÕu gi÷a
c¸c kiÓu Neuron chÝnh lµ ë d¹ng cña hµm kÝch ho¹t. TÝnh n¨ng cña m¹ng
còng sÏ cao h¬n nÕu biÕt c¸ch trén lÉn mét c¸ch hîp lý nhiÒu d¹ng hµm
kÝch ho¹t. Tuy nhiªn ®Ó cho vÊn ®Ò kh«ng trë nªn qu¸ phøc t¹p, trong phÇn
mÒm sÏ chØ sö dông hai d¹ng phæ biÕn lµ d¹ng hµm sigma ph¶n ®èi xøng
(hµm tang hyperbole) vµ d¹ng hµm tuyÕn tÝnh. Nh− ®· ®−îc ®Ò cËp tíi trong
c¸c Ch−¬ng tr−íc, hµm phi tuyÕn liªn tôc ph¶n ®èi xøng lu«n ®em l¹i nh÷ng
Ých lîi to lín vÒ gi¶i tÝch cho c¸c thuËt to¸n häc còng nh− qu¸ tr×nh nhËn
d¹ng; cßn hµm tuyÕn tÝnh cã thÓ h÷u dông trong viÖc t¹o ra nh÷ng tham sè
chuyªn biÖt nh− ®¹o hµm bËc nhÊt theo thêi gian. • Synpase (hay c¸c Connection): Ngoµi thuéc tÝnh quan träng nhÊt lµ träng
sè synapse, mçi Connection sÏ cã thªm mét tham sè, vÝ dô plast, cã t¸c
dông thay ®æi tèc ®é cËp nhËt träng sè trong qu¸ tr×nh häc. §iÒu nµy mang
l¹i mét kh¶ n¨ng mÒm dÎo cho tèc ®é häc theo mét quan ®iÓm nh− ®· ®−îc
tr×nh bµy trong phÇn 2.2.7. CÇn ¸p dông kü thuËt tinh gi¶m m¹ng th«ng qua
r¶i máng kÕt nèi (phÇn 2.2.5) cho c¸c Connection nh»m n©ng cao kh¶ n¨ng
l−u tr÷ c¸c Unit. §Ó ®¶m b¶o r»ng m¹ng neuron cã thÓ ®−îc thiÕt kÕ theo
m« h×nh RTDNN th× kh«ng thÓ thiÕu ®−îc thuéc tÝnh thêi gian trÔ cho mçi
Connection. • Møc (Layer hay Group): Cã thÓ ®−îc cµi ®Æt thuÇn tuý nh− mét tËp hîp
c¸c Unit. Tuy nhiªn còng cã ®«i chót ph©n biÖt khi mét Group ®−îc coi lµ
møc ®Çu vµo (c¸c Unit ®−îc nèi víi c¸c tham sè ®Çu vµo), møc Èn (th«ng
th−êng) hay møc ®Çu ra (®Çu ra c¸c Unit ®−îc nèi víi ®¬n vÞ xö lý ®Çu ra). • §Çu vµo vµ ®Çu ra: C¶ ®Çu vµo vµ ®Çu ra ®Òu ®−îc chuÈn ho¸ sao cho
kh«ng v−ît ra ngoµi ph¹m vi [-1,1]; phÐp chuÈn ho¸ chØ ®¬n gi¶n lµ mét
phÐp biÕn ®æi tuyÕn tÝnh. §iÒu nµy liªn quan ®Õn tÝnh thuËn tiÖn trong tÝnh
to¸n vµ còng n»m trong c¸c kinh nghiÖm nh»m n©ng cao tÝnh n¨ng cña thuËt
to¸n häc. Khi ®· cã ®Çu vµo m¹ng th× vÊn ®Ò chØ cßn lµ cÊu tróc vµ vËn hµnh m¹ng
neuron nh− thÕ nµo cho phï hîp. Nh− ®· tr×nh bµy trong Ch−¬ng 4, lý thuyÕt nhËn
d¹ng tiÕng nãi lu«n g¾n víi kiÕn tróc RTDNN, vµ m¹ng neuron ®−îc thiÕt kÕ cho
phÇn mÒm còng thuéc kiÕn tróc nµy. Chóng ta sÏ bµn cô thÓ vÒ tõng thµnh phÇn c¬
b¶n cña m¹ng: 71 Chóng ta còng ®· nãi qu¸ nhiÒu vÒ kiÕn tróc m¹ng ¸p dông cho vÊn ®Ò nhËn
d¹ng tiÕng nãi; vµ xuÊt ph¸t tõ c¸c nghiªn cøu lý thuyÕt, kh«ng cã kiÕn tróc nµo
phï hîp h¬n m« h×nh RTDNN. Th«ng qua m« h×nh nµy, c¸c frame tiÕng nãi kÒ
nhau vÒ mÆt thêi gian sÏ cã ¶nh h−ëng ®Õn nhau c¶ khi tÝch luü còng nh− khi nhËn
d¹ng. ThuËt to¸n häc phï hîp nhÊt cho RTDNN lµ thuËt to¸n back-propagation.
Mét trong nh÷ng ®iÓm yÕu cña thuËt to¸n lµ tèc ®é kh«ng cao nªn cÇn ¸p dông
mét sè kinh nghiÖm nh»m c¶i thiÖn thuËt to¸n (phÇn 2.2.3) nh−: trén lÉn mét c¸ch ngÉu nhiªn thø tù c¸c mÉu tiÕng nãi (c¸c file nguyªn ©m) sau mçi epoch (mét lÇn
duyÖt toµn bé tËp hîp tÝch luü); dïng hµm kÝch ho¹t liªn tôc ph¶n ®èi xøng; chuÈn
ho¸ c¸c ®Çu vµo sao cho gi¸ trÞ trung b×nh b»ng kh«ng vµ cã ph©n bè x¸c suÊt ®éc
lËp; sö dông hÖ sè mÒm dÎo cho tèc ®é häc. Thùc tÕ, mét phÇn mÒm ®−îc x©y dùng dùa trªn c¸c kü thuËt kÓ trªn kh«ng
thÓ hiÖn mét ®iÒu g× ®Æc biÖt riªng cho bµi to¸n nhËn d¹ng nguyªn ©m mµ nã mang
tÝnh tæng qu¸t cho tÊt c¶ c¸c ®Çu vµo lµ tÝn hiÖu tiÕng nãi ®¬n ©m vÞ. ThËm chÝ nÕu
ta bá qua mét sè rµng buéc kh«ng liªn quan g× ®Õn phÇn lâi m¹ng neuron, mét
phÇn mÒm nh− vËy cßn cã thÓ thÝch hîp cho c¸c tõ ®a ©m vÞ. TÝnh chÊt nµy còng
cã thÓ b¾t nguån tõ b¶n chÊt ®éc lËp ®èi víi ®Æc tr−ng ©m thanh cña tiÕp cËn nhËn
d¹ng mÉu trong lý thuyÕt nhËn d¹ng tiÕng nãi. Tuy nhiªn ®iÓm kh¸c nhau chñ yÕu
n»m ë møc ®é phøc t¹p cÇn ph¶i cã cña m¹ng neuron nh»m ®¶m b¶o mét tÝnh n¨ng
nhÊt ®Þnh. Nh− chóng ta ®· biÕt, c¸c nguyªn ©m cã thÓ ®−îc coi lµ ©m thanh cã ®Æc
tr−ng dÔ nhËn biÕt nhÊt trong xö lý tiÕng nãi. TÝnh chÊt nµy n»m ë b¶n chÊt h÷u
thanh cïng víi sù ph©n chia rÊt râ rµng trong kh«ng gian formant. Víi c¸c øng
dông nhËn d¹ng tiÕng nãi cæ ®iÓn, ng−êi ta chØ cÇn sö dông mét sè formant ®Çu
tiªn cña phæ nguyªn ©m lµ ®· cã thÓ ®¹t ®−îc mét x¸c suÊt nhËn d¹ng cao. Tõ quan ®iÓm trªn, ta cã thÓ ®−a ra mét nhËn xÐt lµ ®é phøc t¹p phi tuyÕn
cña mèi quan hÖ gi÷a tÝn hiÖu tiÕng nãi vµ quyÕt ®Þnh nhËn d¹ng trong tr−êng hîp
nguyªn ©m lµ thÊp nhÊt so víi c¸c lo¹i ©m thanh kh¸c. Mµ chÝnh ®é phøc t¹p nµy lµ
®iÒu mµ mét m¹ng neuron muèn mang l¹i th«ng quy m« cña mét m« h×nh kÕt nèi.
§iÒu nµy còng cã nghÜa lµ ®Ó cã thÓ lÊy dÇn ra ®−îc c¸c ®Æc tr−ng thèng kª bËc
cao cña nguyªn ©m, m¹ng chØ cÇn mét sè l−îng nhá c¸c møc neuron Èn (vÝ dô 3
hoÆc 4 møc) vµ sè c¸c neuron trong mçi møc còng kh«ng cÇn nhiÒu (vÝ dô vµi tr¨m
neuron). VÒ mét khÝa c¹nh nµo ®ã ®©y còng cã thÓ coi lµ mét c¸ch ®−a th«ng tin
®· biÕt vÒ m«i tr−êng vµo trong thiÕt kÕ m¹ng ban ®Çu. 72 Tuy c¸c ©m vÞ kiÓu nguyªn ©m cã ®Æc tr−ng dÔ nhËn d¹ng nh− vËy nh−ng
®èi víi viÖc ph¸t triÓn phÇn mÒm, ngoµi −u ®iÓm trong viÖc ®¬n gi¶n ho¸ cÊu tróc
m¹ng vµ thêi gian vËn hµnh m¹ng th× ®é phøc t¹p cña c¸c gi¶i thuËt cµi ®Æt còng
nh− c¸c cÊu tróc d÷ liÖu nÒn t¶ng kh«ng cã g× ®−îc c¶i thiÖn ®¸ng kÓ. M¹ng
neuron cã tÝnh chÊt modul rÊt cao. Dï cho m¹ng lµ lín hay nhá th× c¸c thñ tôc x©y
dùng c¸c Unit, Connection, Group vµ c¸c thµnh phÇn liªn kÕt ®Çu vµo víi c¸c Unit
còng kh«ng cã g× lµ kh¸c biÖt. §iÓm kh¸c biÖt chØ n»m ë quan ®iÓm ¸p dông c¸c
kü thuËt c¬ b¶n. • PhÇn 1: C¸c modul xö lý tÝn hiÖu tiÕng nãi ®· ®−îc lÊy mÉu vµ l−îng tö
ho¸, bao gåm tõ c¸c xö lý c¬ b¶n tíi filter bank. • PhÇn 2: C¸c modul x©y dùng m¹ng neuron cã nhiÖm vô cung cÊp ®Çy ®ñ
c¸c c«ng cô ®Ó t¹o nªn mét m¹ng neuron theo m« h×nh RTDNN. • PhÇn 3: C¸c modul phôc vô cho viÖc thi hµnh m¹ng neuron bao gåm c¶
qu¸ tr×nh häc vµ qu¸ tr×nh nhËn d¹ng. • PhÇn 4: C¸c modul thùc hiÖn c¸c c«ng viÖc vÒ hÖ thèng nh− c¸c phÐp to¸n
c¬ b¶n, qu¶n lý c¸c file vµo ra , cung cÊp c¸c Macro hÖ thèng, ... Qua c¸c ph©n tÝch trong Ch−¬ng 5, ta ®· cã thÓ h×nh dung ®−îc mét c¸ch
tæng qu¸t c¸c thµnh phÇn chøc n¨ng cÇn x©y dùng cña phÇn mÒm. XuÊt ph¸t tõ hai
vÊn ®Ò nÒn t¶ng: Xö lý tÝn hiÖu tiÕng nãi vµ VËn hµnh m¹ng neuron, cã thÓ ph©n
chia phÇn mÒm mét c¸ch t−¬ng ®èi thµnh bèn phÇn chÝnh sau: Cã thÓ thÊy ngay r»ng PhÇn 1 bao gåm hai møc ®é xö lý tÝn hiÖu kh¸c
nhau: c¸c xö lý c¬ b¶n nh− lo¹i bá thµnh phÇn mét chiÒu hay c¸c phÐp biÕn ®æi
Fourier; vµ bé xö lý ®Çu cuèi filter bank. PhÇn 4 còng cã thÓ t¸ch thµnh bèn phÇn
con: phÇn thø nhÊt cã chøc n¨ng qu¶n lý viÖc vµo ra theo file; phÇn thø hai thùc
hiÖn c¸c phÐp to¸n chuyªn dông; phÇn thø ba chÞu tr¸ch nhiÖm in chuçi ra mµn
h×nh; cßn phÇn thø t− ®¶m nhiÖm phÇn viÖc cßn l¹i. Nh− vËy ta cã ®−îc mét gi¶n
®å chøc n¨ng cña ch−¬ng tr×nh nh− trong H×nh 6.1. . . . 73 • CÊp ®é 1: C¸c modul hÖ thèng, còng gièng nh− phÇn 4 trong quan ®iÓm
ph©n chia theo chøc n¨ng nh− trªn. §©y lµ thµnh phÇn nÒn gióp cho c¸c
thµnh phÇn kh¸c quan hÖ tèt h¬n víi hÖ ®iÒu hµnh. • CÊp ®é 2: C¸c modul th− viÖn, cung cÊp ®Çy ®ñ c¸c thñ tôc c¬ së nh»m
môc ®Ých thùc hiÖn c¸c chøc n¨ng chÝnh nh− Xö lý tiÕng nãi, X©y dùng vµ
vËn hµnh m¹ng neuron ... • CÊp ®é 3: C¸c modul c«ng cô liªn quan ®Õn c¸c thao t¸c c¬ b¶n nh−:
chuyÓn ®æi tÝn hiÖu tiÕng nãi thµnh c¸c tham sè ®Çu vµo cña m¹ng; tÝch luü
m¹ng neuron b»ng thuËt to¸n back-propagation; vµ ®¸nh gi¸ tÝnh n¨ng nhËn
d¹ng cña hÖ thèng. • CÊp ®é 4: Modul chÝnh (Main) sö dông c¸c modul c«ng cô vµ c¸c modul
th− viÖn ®Ó x©y dùng nªn mét m¹ng neuron riªng biÖt vµ vËn hµnh nã cho
môc ®Ých nhËn d¹ng ngyªn ©m. NÕu xÐt vÒ mÆt cÊu tróc cña ch−¬ng tr×nh th× cã thÓ ph©n chia c¸c modul nh− sau: cÊp ®é 4: modul chÝnh (Main) cÊp ®é 3: c¸c modul c«ng cô cÊp ®é 2: c¸c modul th− viÖn cÊp ®é 1: c¸c modul hÖ thèng Dùa trªn quan ®iÓm nµy, chóng ta cã thÓ ph¸c th¶o mét s¬ ®å khèi tõ ®Ønh tíi gèc cho ch−¬ng tr×nh nh− trong h×nh 6.2. XuÊt ph¸t tõ s¬ ®å thiÕt kÕ chung trong phÇn 6.1 vµ nh÷ng dù kiÕn vÒ thùc
tÕ cµi ®Æt, mét hÖ thèng modul cho phÇn mÒm sÏ ®−îc x©y dùng dùa trªn c¬ së
chøc n¨ng còng nh− cÊp ®é (trong gi¶n ®å vÒ cÊu tróc ch−¬ng tr×nh) cña tõng
modul. §Ó thuËn tiÖn cho viÖc theo dâi, c¸c modul trong phÇn nµy sÏ ®−îc tr×nh
bµy theo chøc n¨ng. 74 6.2.1 C¸c modul xö lý tÝn hiÖu tiÕng nãi Nh− ®· tr×nh bµy ë trªn, ph¹m vi chøc n¨ng nµy cã thÓ ®−îc chia thµnh hai
khèi chøc n¨ng con. T−¬ng øng víi mçi khèi nµy, ta cã thÓ x©y dùng mét modul
nh− sau: • Cöa sè läc Hamming. • TÝnh n¨ng l−îng tÝn hiÖu. • Lo¹i bá thµnh phÇn mét chiÒu. • Mét sè kiÓu tÝnh FFT. BÊt kú mét ai ®· tõng nghiªn cøu vÒ Lý thuyÕt xö lý tiÕng nãi ®Òu biÕt ®Õn
nh÷ng phÐp xö lý ®−îc coi lµ kh«ng thÓ thiÕu ®−îc trong mäi øng dông liªn quan
®Õn tiÕng nãi nh−: Nh− vËy, mét modul ®−îc x©y dùng nh− mét th− viÖn c¸c thñ tôc ®¶m
nhiÖm nh÷ng nhiÖm vô trªn lµ cÇn thiÕt vµ nã cã thÓ n»m ë cÊp ®é thø hai (cña s¬
®å theo cÊu tróc ch−¬ng tr×nh). • Cµi ®Æt c¸c thao t¸c cho d·y c¸c bé läc th«ng d¶i (thùc hiÖn trªn mét
frame). • Cµi ®Æt thao t¸c phôc vô cho viÖc qu¶n lý chuçi ®Çu vµo c¸c mÉu tÝn hiÖu
tiÕng nãi (bao gæm c¶ viÖc t¹o c¸c frame) vµ chuçi ®Çu ra c¸c vector ®Æc
tr−ng (vector feature). Xö lý filter bank lµ mét qu¸ tr×nh mµ ta ®−a liªn tiÕp c¸c mÉu tÝn hiÖu tiÕng
nãi (mçi mÉu lµ mét sè nguyªn) vµo vµi råi sau ®ã l¹i lÊy lÇn l−ît c¸c vector ®Æc
tr−ng cña c¸c frame (t−¬ng øng víi mét sè l−îng nhÊt ®Þnh c¸c mÉu tÝn hiÖu) ra
theo cïng tr×nh tù thêi gian. MÆt kh¸c mçi filter bank bao gåm nhiÒu nh¸nh xö lý,
mçi nh¸nh cã mét bé läc th«ng d¶i vµ mét vµi bé läc phô trî kh¸c. Còng cÇn nhÊn
m¹nh r»ng, trong mçi lÇn xö lý th× filter bank lµm viÖc víi mét frame. Tõ c¸c quan
®iÓm trªn ta thÊy r»ng nhiÖm vô cña mét modul th− viÖn cÇn x©y dùng lµ: Nh− sÏ tr×nh bµy ë d−íi, cã c¸c modul th− viÖn chuyªn tr¸ch viÖc giao tiÕp
víi c¸c file ©m thanh vµ c¸c file tham sè. NhiÖm cña modul trong phÇn nµy chØ lµ
sö dông c¸c thñ tôc th− viÖn ®· x©y dùng ®Ó t¹o nªn mét thao t¸c chung hoµn
chØnh cho Filter Bank tõ ®Çu vµo lµ c¸c file ©m thanh tíi ®Çu ra lµ c¸c file tham sè
(l−u gi÷ c¸c vector ®Æc tr−ng). 6.2.2 Modul x©y dùng m¹ng neuron 75 Chóng ta ®· biÕt r»ng m¹ng neuron lµ mét m« h×nh kÕt nèi rÊt chÆt chÏ, víi
c¸c thµnh phÇn c¬ b¶n nh− Unit, Connection, Group mµ mçi thµnh phÇn l¹i cã
nhiÒu ®Æc tÝnh rÊt riªng vµ kh¸c biÖt, ®ång thêi chóng ph¶i cã kh¶ n¨ng giao tiÕp
cao. TÝnh chÊt nµy lµm chóng ta nghÜ ngay ®Õn viÖc x©y dùng mét lo¹t c¸c cÊu tróc • Cµi ®Æt c¸c cÊu tróc d÷ liÖu cho m¹ng vµ c¸c thµnh phÇn Unit, Connection,
Group, ... ®ång thêi qu¶n lý viÖc t¹o míi, l−u tr÷ vµ gi¶i phãng c¸c ®èi
t−îng. • Thùc hiÖn c¸c thao t¸c trªn toµn m¹ng nh− thªm míi/xo¸ bá c¸c Unit,
Group, ..., hay thùc hiÖn c¸c kiÓu kÕt nèi gi÷a c¸c Unit, Group (®ång thêi
thªm c¸c Connection). d÷ liÖu vµ mét lo¹t c¸c thao t¸c riªng biÖt nh− lµ chøc n¨ng chÝnh cña mét modul
th− viÖn: 6.2.3 C¸c modul thi hµnh m¹ng neuron C¸c ho¹t ®éng trªn m¹ng neuron rÊt phøc t¹p vµ ®−îc ph©n thµnh hai kiÓu,
còng t−¬ng øng víi hai giai ®o¹n cña thuËt to¸n back-propagation lµ “giai ®o¹n
tiÕn” vµ “giai ®o¹n lïi”. Tuy nhiªn c¶ hai giai ®o¹n nµy ®Òu cïng ®−îc thùc thi trªn
mét nÒn m¹ng neuron, chÝnh v× thÕ mµ rÊt cÇn ®Õn c¸c thñ tôc th− viÖn c¬ së còng
nh− c¸c c«ng cô chuyªn tr¸ch. • Cµi ®Æt c¸c thao t¸c c¬ b¶n trªn mét Unit trong c¶ hai giai ®o¹n tiÕn vµ lïi. •Thùc hiÖn khëi ®Çu, thi hµnh vµ kÕt thóc cho c¸c giai ®o¹n tiÕn vµ lïi theo
thuËt to¸n back-propagation. C¸c thñ tôc trong modul nµy chñ yÕu thùc hiÖn c¸c nhiÖm vô sau: TÝnh chÊt phøc t¹p ®Æc biÖt trong viÖc cµi ®Æt modul nµy lµ n»m ë mét sè
l−îng lín c¸c c«ng thøc phi tuyÕn vµ ®Ö quy, cïng víi qu¸ tr×nh tÝnh to¸n lu«n liªn
quan ®Õn nhiÒu neuron dÉn ®Õn cÇn ph¶i thùc hiÖn nhiÒu vßng lÆp. Khi ®· ®−îc cung cÊp c¸c thñ tôc cho hai giai ®o¹n tÝnh to¸n c¬ së (tiÕn vµ
lïi) th× c«ng viÖc tiÕp theo cña mét qu¸ tr×nh tÝch luü hoµn chØnh lµ ¸p dông c¸c thñ
tôc ®ã lÇn l−ît cho tÊt c¶ c¸c vector ®Æc tr−ng trong tÊt c¶ c¸c file tham sè, ®iÒu
nµy cÇn ®Õn mét sè vßng lÆp lång nhau. CÇn nhÊn m¹nh r»ng ®Çu vµo cña mét qu¸
tr×nh tÝch luü lµ mét tËp hîp c¸c file tham sè chøa c¸c vector ®Æc tr−ng lµ kÕt qu¶
cña toµn bé qu¸ tr×nh xö lý tÝn hiÖu tiÕng nãi b»ng ph−¬ng ph¸p filter bank. Ngoµi
ra qu¸ tr×nh nµy cßn sö dông c¸c file tham sè chøa c¸c th«ng sè x¸c ®Þnh c¸c gi¸
trÞ ®Ých cho c¸c file ©m thanh. 76 Cã ba vßng lÆp chÝnh t−¬ng øng víi c¸c Thêi kú (Epoch), c¸c mÉu tÝch luü
(sample) vµ c¸c vector ®Æc tr−ng (feature). (CÇn chó ý ph©n biÖt hai thuËt ng÷:
“mÉu tÝch luü” lµ mét file tham sè chøa c¸c vector feature t−¬ng øng víi mét file
©m thanh, cßn “mÉu tÝn hiÖu tiÕng nãi” chØ lµ mét sè nguyªn biÓu thÞ mét gi¸ trÞ
lÊy mÉu cña tÝn hiÖu trong file ©m thanh) .§iÒu quan träng ë ®©y lµ cÇn s¾p xÕp l¹i
thø tù mét c¸ch ngÉu nhiªn c¸c mÉu tÝch luü sau mçi Thêi kú; ®ång thêi cho phÐp
kh¶ n¨ng lùa chän viÖc cËp nhËt c¸c träng sè kÕt nèi cña m¹ng theo tõng neuron,
tõng mÉu hay sau mçi Thêi kú. Mét qu¸ tr×nh nhËn d¹ng thùc chÊt chØ lµ mét “giai ®o¹n tiÕn” cña thuËt to¸n
back-propagation nh−ng thay v× ®èi chiÕu víi c¸c tham sè ®Ých ®Ó tÝnh c¸c tÝn hiÖu
lçi, t¹i møc ®Çu ra chóng ta ¸p dông mét sè quy t¾c quyÕt ®Þnh ®Ó cã thÓ biÕt ®−îc
mét frame lµ thuéc nguyªn ©m nµo. Quy t¾c quyÕt ®Þnh cã thÓ chØ ®¬n gi¶n lµ chän
®Çu ra cã gi¸ trÞ lín nhÊt. 6.2.4 C¸c modul hÖ thèng C¸c modul ®−îc giíi thiÖu d−íi ®©y sÏ t¹o nªn mét c¸i nÒn thÊp nhÊt cho
ch−¬ng tr×nh cho phÐp mäi thao t¸c hÖ thèng c¬ b¶n chØ ®−îc tham chiÕu tíi qua
c¸c thñ tôc ®éc lËp víi hÖ ®iÒu hµnh. Tuy nhiªn viÖc cµi ®Æt c¸c thñ tôc nµy l¹i rÊt
phô thuéc vµo hÖ ®iÒu hµnh. Thùc hiÖn viÖc më, ®äc, ghi c¸c file ©m thanh trªn ®Üa víi môc ®Ých cung
cÊp c¸c mÉu tÝn hiÖu tiÕng nãi. Modul nµy cã thÓ cßn bao gåm c¶ c¸c thñ tôc phôc
vô viÖc ghi ©m tõ micro. Thùc hiÖn viÖc më, ®äc, ghi c¸c file tham sè trªn ®Üa víi môc ®Ých cung cÊp
c¸c tham sè yªu cÇu. C¸c file tham sè thùc chÊt lµ c¸c file nhÞ ph©n chøa c¸c gi¸ trÞ
sè ®−îc s¾p xÕp liªn tiÕp nhau nh»m l−u tr÷ c¸c vector feature hoÆc c¸c gi¸ trÞ
®Ých. Trong qu¸ tr×nh thùc hiÖn cña m×nh, c¸c modul c«ng cô lu«n cã nhu cÇu in
ra mµn h×nh c¸c chuçi ký tù thÓ hiÖn tr¹ng th¸i ho¹t ®éng cña chóng còng nh− c¸c
kÕt qu¶ ®¹t ®−îc. §Ó ®¶m b¶o ®éc lËp víi phÇn giao diÖn phô thuéc rÊt nhiÒu vµo
tÝnh chÊt cña hÖ ®iÒu hµnh, mét modul cÇn ®−îc x©y dùng ®Ó cung cÊp nh÷ng hµm
in chuçi chuÈn. • So s¸nh gÇn ®óng c¸c sè thùc. • X¸c ®Þnh mét sè ngÉu nhiªn (dïng cho viÖc t¹o ra c¸c kÕt nèi m¹ng
neuron theo kü thuËt r¶i máng hay dïng trong viÖc thay ®æi thø tù c¸c mÉu
tÝch luü). • ... Cã thÓ cung cÊp mét sè phÐp to¸n nh−: 77 Cßn mét sè c«ng viÖc phô thuéc hÖ ®iÒu hµnh kh¸c cÇn ®¶m nhiÖm nh−: • Xö lý c¸c chuçi ký tù biÓu diÔn ®−êng dÉn, th− môc, tªn file, phÇn më • C¸c thao t¸c ®äc, ghi c¸c gi¸ trÞ víi kiÓu d÷ liÖu kh¸c nhau (sè nguyªn, sè réng, ... • T¹o c¸c macro cÊp ph¸t bé nhí. • ... thùc, ...) cho c¸c file cña hÖ ®iÒu hµnh. 6.2.5 Modul ch−¬ng tr×nh chÝnh • C¸c thñ tôc cã c¸c tham biÕn ®−îc truyÒn trùc tiÕp tõ giao diÖn thÓ hiÖn
c¸c c«ng viÖc chñ ®¹o nh−: cÊu t¹o mét m¹ng neuron chuyªn biÖt; thùc hiÖn c¸c
b−íc tiÕn hµnh cÇn thiÕt cho viÖc xö lý c¸c file ©m thanh, tÝch luü m¹ng hay ®¸nh
gi¸ tÝnh n¨ng nhËn d¹ng. • Mét sè phÐp xö lý ®Æc biÖt cã quy m« nhá nh−: t¹o møc neuron ®¹o hµm §èi víi mét phÇn mÒm, modul ch−¬ng tr×nh chÝnh lu«n thÓ hiÖn nh÷ng ý ®å
chñ ®¹o tõ viÖc nhËn c¸c d÷ liÖu tõ giao diÖn, th«ng qua c¸c b−íc tiÕn hµnh vµ cuèi
cïng lµ thÓ hiÖn kÕt qu¶ ra mµn h×nh. XÐt riªng trong tr−êng hîp bµi to¸n nhËn
d¹ng nguyªn ©m mµ chóng ta ®ang nghiªn cøu, víi môc ®Ých ®éc lËp víi phÇn thiÕt
kÕ giao diÖn, ®ång thêi trao tr¸ch nhiÖm thÓ hiÖn kÕt qu¶ ra mµn h×nh cho c¸c
modul kh¸c trong qu¸ tr×nh ho¹t ®éng cña chóng, modul ch−¬ng tr×nh chÝnh chØ
bao gåm c¸c thñ tôc sau: 78 bËc nhÊt, chuÈn ho¸ ®Çu vµo ... Sau khi tiÕn hµnh ph©n tÝch vµ thiÕt kÕ bµi to¸n cÇn thùc hiÖn, t¸c gi¶ b¶n
luËn v¨n nµy ®· cè g¾ng cµi ®Æt phÇn mÒm thö nghiÖm b»ng ng«n ng÷ C ®−îc
biªn dÞch trªn nÒn Microsoft Visual C++. Tuy nhiªn do h¹n chÕ vÒ thêi gian vµ
n¨ng lùc c¸ nh©n, phÇn mÒm ®· cµi ®Æt ch−a ®−îc hoµn thiÖn c¶ vÒ mÆt giao diÖn
lÉn sù vËn hµnh. Trong ch−¬ng nµy, t¸c gi¶ xin giíi thiÖu vÒ nh÷ng g× ®· thùc hiÖn
®−îc trong qu¸ tr×nh cµi ®Æt phÇn mÒm. • B»ng giao diÖn, ng−êi sö dông më (hoÆc t¹o míi) mét file chøa m¹ng
neuron (*.net). • Ng−êi sö dông nhËp vµo danh s¸ch c¸c file ©m thanh (*.wav) vµ tiÕn hµnh
xö lý tÝn hiÖu ®Ó cã ®−îc c¸c file tham sè ®Æc tr−ng víi cïng tªn nh−ng cã
phÇn më réng kh¸c (*.dat). • Ng−êi sö dông chän c¸c file ©m thanh thuéc cïng mét nguyªn ©m råi thùc
hiÖn t¹o c¸c file chøa c¸c gi¸ trÞ ®Ých (*.tag) t−¬ng øng víi nguyªn ©m ®ã
cho tÊt c¶ c¸c file ®−îc chän. C¸c file *.tag còng cã cïng tªn víi c¸c file ©m
thanh (*.wav). • Ng−êi sö dông chän mét tËp hîp c¸c cÆp file tham sè ®Æc tr−ng vµ file gi¸
trÞ ®Ých (mçi cÆp file cã cïng tªn vµ cïng t−¬ng øng víi mét file ©m thanh).
TËp hîp nµy cã thÓ coi lµ tËp hîp c¸c vÝ dô tÝch luü vµ tiÕp theo lµ tiÕn hµnh
tÝch luü m¹ng neuron (trong file ®ang më (*.net)) theo thuËt to¸n back-
propagation. Trong thêi gian tÝch luü, phÇn mÒm sÏ dÇn th«ng b¸o tr¹ng th¸i
ho¹t ®éng còng nh− kÕt qu¶ ®¹t ®−îc ra mµn h×nh. • Ng−êi sö dông còng chän mét tËp hîp c¸c cÆp file nh− trªn nh−ng tËp hîp
nµy ®−îc coi lµ tËp hîp c¸c vÝ dô kiÓm tra. Mçi vector feature trong file
tham sè ®Æc tr−ng sÏ ®−îc tiÕn hµnh ph©n lo¹i (nhËn d¹ng) b»ng m¹ng
neuron trong file ®ang më (*.net); kÕt qu¶ ph©n lo¹i sÏ ®−îc ®em so s¸nh
víi c¸c gi¸ trÞ ®Ých ®Ó quyÕt ®Þnh xem vector ®ã cã ®−îc ph©n lo¹i ®óng
kh«ng. Cuèi cïng tû lÖ frame nhËn d¹ng ®óng cho tõng lo¹i nguyªn ©m sÏ
®−îc th«ng b¸o lªn mµn h×nh. Nh×n mét c¸ch tæng thÓ, phÇn mÒm ho¹t ®éng nh− sau: 79 Vai trß vµ chøc n¨ng chung cña tÊt c¶ c¸c modul ®· ®−îc nªu ra trong thiÕt
kÕ cña phÇn mÒm. D−íi ®©y t¸c gi¶ xin tr×nh bµy mét sè chi tiÕt vÒ cµi ®Æt cho c¸c
modul. char* ParamDir, char* TargDir); §©y lµ modul ch−¬ng tr×nh chÝnh, nã cung cÊp nh÷ng thñ tôc sau cho phÇn giao diÖn: /* T¹o nªn mét m¹ng neuron chuyªn biÖt */
void MakeInitNet(char* NetName, char* Dir,
/* T¹o c¸c file tham sè chøa c¸c gi¸ trÞ ®Ých cho c¸c file char* TargFile); char* NetName, char* Dir,
char** EvalList1, int NumEvalFiles); char* ParamsDir, char* WavsDir); char** ParamsList1, int NumParams); Net *ann;
char** inList;
char** EvalList; 80 Sau ®©y lµ chi tiÕt vÒ ba thñ tôc thùc hiÖn chÝnh:
void Training(char** inList1, int NumFiles, .
.
. .
.
. .
.
. .
.
. .
.
. Hai møc ®¹o hµm bËc nhÊt
vµ bËc hai gåm 13 neuron
tuyÕn tÝnh (mçi møc) Møc ®Çu ra gåm 5
neuron ®Çu ra cho
5 nguyªn ©m Møc Èn gåm 150
neuron tang
hyperbole Møc ®Çu vµo
gåm c¸c 13
nót nguån (§Ó ®¬n gi¶n c¸c kÕt nèi trÔ vµ ph¶n håi
kh«ng ®−îc thÓ hiÖn trªn h×nh) NetName = MakeName(Dir, NetName, "net");
ann = LoadNet(NetName); /* ChuÈn ho¸ ®Çu v NormConnector("CEP", ann, inList, NumFiles, 1.0); NormGroup("diff1", ann, inList, NumFiles, 1.0);
NormGroup("diff2", ann, inList, NumFiles, 1.0); NULL); NULL); inList); FREE2D(inList, NumFiles)
SaveNet(NetName, ann); 81 FreeNet(ann); char** WavsList; WavsList = CutDirExt(WavsList1, NumWavs); ResetFibVar();
SetFibVar('d' ,0, 0, 0, ParamsDir, NULL);
SetFibVar('x' ,0, 0, 0, "dat", NULL);
SetFibVar('p' ,0, 0, 0, WavsDir, NULL);
SetFibVar('q' ,0, 0, 0, "wav", NULL);
SetFibVar('i', NumWavs, 0, 0, NULL, WavsList);
SetFibVar('n', 24, 0, 0, NULL, NULL);
SetFibVar('c', 12, 0, 0, NULL, NULL);
SetFibVar('e', 0, 0, 0, NULL, NULL); FREE2D(WavsList, NumWavs) FREE2D(ParamsList, NumParams) } 7.2.2 Mét vµi modul quan träng kh¸c 82 §©y lµ modul c«ng cô thùc hiÖn mét qu¸ tr×nh tÝch luü back-propagation
hoµn chØnh. Cã rÊt nhiÒu chÕ ®é thi hµnh mét qu¸ tr×nh nh− vËy phô thuéc vµo c¸c
thuéc tÝnh nh−: sè l−îng c¸c Epoch; tham sè tèc ®é häc, h»ng sè moment; cËp nhËt
c¸c träng sè theo tõng Unit, tõng file tham sè hay sau mçi Epoch; ... §iÒu nµy yªu
cÇu modul ph¶i cã rÊt nhiÒu biÕn trung gian, vµ v× vËy nã sÏ cung cÊp hai thñ tôc
sau: /* Thñ tôc khëi ®Çu l¹i c¸c biÕn tr−íc khi truyÒn gi¸ trÞ*/
void ResetBackPropVar (void);
/* Thñ tôc truyÒn gi¸ trÞ c¸c thuéc tÝnh x¸c ®Þnh chÕ ®é
thi hμnh. ë ®ã sign lμ ký tù x¸c ®Þnh lo¹i thuéc tÝnh cÇn thay
®æi vμ c¸c tham biÕn tiÕp theo lμ c¸c gi¸ trÞ cÇn float num3, float num4, char* str1,
char* str2, char** List); char** List); §©y lµ modul c«ng cô thùc hiÖn mét qu¸ tr×nh ®¸nh gi¸ tÝnh n¨ng nhËn
d¹ng cña mét m¹ng neuron. Gièng nh− modul BackPropTrain.c, nã cung cÊp hai
thñ tôc sau: §©y lµ modul th− viÖn phôc vô cho xö lý filter bank, nã cung cÊp c¸c cÊu tróc d÷ liÖu vµ thñ tôc chñ yÕu sau: 83 /*struct cho mét ph/tö trong d/s¸ch c¸c mÉu tiÕng nãi*/
typedef struct SpeechEntry {
struct SpeechEntry *next;
struct SpeechEntry *prev;
short *speech;
int ptr;
int size;
int allocated_size;
} SpeechEntry;
/* struct cho mét phÇn tö trong danh s¸ch c¸c frame */
typedef struct FrameEntry {
struct FrameEntry *next;
struct FrameEntry *prev; typedef struct SpeeFeat {
/* FiFO cho tiÕng nãi ®Çu vμo */
int num_samples_stacked;
SpeechEntry *first_speech;
SpeechEntry *last_speech;
SpeechEntry *used_speech;
int base_size; /*sè c¸c th/sè feature cho 1 frame*/
int base_type; /* kiÓu ®Æc tr−ng c¬ b¶n */
int add_flags; /* flag ®Ó thªm c¸c tham sè ®Æc biÖt*/
int used_size; /*sè c¸c th/sè feature ®−îc sö dông */
/* Giíi h¹n cña toμn bé d¶i tÇn sè */
float low_cut, high_cut;
float pre_emp_factor;
float cep_lift;
int num_frames; /* Sè l−îng c¸c frame ®−îc Pop */
int num_pushed_frames;/*S/l−îng c¸c frame ®−îc Push*/
int memory_size; 84 int add_flags,
float samp_freq,
float frame_length,
float frame_width,
float low_cut,
float high_cut); num_samples); *Name; §©y lµ modul th− viÖn phôc vô cho viÖc x©y dùng nªn m¹ng neuron, nã cung cÊp c¸c cÊu tróc d÷ liÖu vµ thñ tôc chñ yÕu sau: 85 86 ConnectorType, long size); float RandBound); delay, float RandBound, §©y lµ modul th− viÖn phôc vô cho viÖc thi hµnh m¹ng neuron, nã cung cÊp c¸c cÊu tróc d÷ liÖu vµ thñ tôc chñ yÕu sau: 87 Connection ***ConLink; 88 float momentum); int end_t); int start_t, int end_t); int little_endian_flag, char *mode); int NumSamples); §©y lµ modul hÖ thèng qu¶n lý c¸c thao t¸c vµo/ra cho c¸c file ©m thanh, nã cung cÊp nh÷ng thñ tôc chñ yÕu sau: /* Thñ tôc n¹p toμn bé file ©m thanh */
void LoadAudio(char *fn, AUDiO_BUFFER *);
/* C¸c thñ tôc vμo ra c¬ b¶n */
AUDiO_FiLE *OpenAudioFile(char *fn, char *mode);
AUDiO_FiLE *OpenRawAudioFile(char *fn,
int samp_freq,
int header_size,
int AudioReadFile(AUDiO_FiLE *, short *Buffer,
int AudioFileEOF(AUDiO_FiLE *);
void CloseAudioFile(AUDiO_FiLE *);
/* LÊy th«ng tin vÒ mét file ©m thanh ®· më */
char *GetAudioFileMode(AUDiO_FiLE *);
int GetAudioFileNumSamples(AUDiO_FiLE *); 89 int NumSamples, int *SampleSize, §©y lµ modul hÖ thèng qu¶n lý c¸c thao t¸c vµo/ra cho c¸c file tham sè, nã cung cÊp nh÷ng thñ tôc chñ yÕu sau: PhÇn mÒm bao gåm mét file NeuronSpeech.exe cïng mét cÊu tróc th− môc
kÌm theo. §Ó cã thÓ ch¹y ®−îc ch−¬ng tr×nh, ng−êi sö dông chØ cÇn copy file
NeuronSpeech.exe vµ c¸c th− môc cïng møc vµo chung mét th− môc víi tªn bÊt
kú. C¸c c«ng viÖc thùc hiÖn trªn phÇn mÒm cô thÓ nh− sau: 1. N¹p mét file l−u tr÷ m¹ng neuron Ng−êi sö dông cã thÓ t¹o míi mét file l−u tr÷ m¹ng neuron b»ng chøc n¨ng
thªm míi cña phÇn mÒm (File->New). File míi sÏ cã tªn Untitled.net vµ chøa mét
m¹ng neuron cã mét cÊu tróc cè ®Þnh nh− trong h×nh 7.2 cïng víi mét sè gi¸ trÞ
khëi ®Çu cho c¸c träng sè synapse (cña c¸c Connection). Ng−êi sö dông cã thÓ tiÕn
hµnh c¸c thao t¸c trªn file míi nµy råi l−u file lªn ®Üa víi tªn kh¸c b»ng chøc n¨ng
l−u file cña phÇn mÒm (File->Save As...). Ng−êi sö dông cã thÓ n¹p mét file l−u tr÷ m¹ng neuron cã s½n tõ æ ®Üa b»ng
chøc n¨ng më file cña phÇn mÒm (File->Open). Sau khi ®· tiÕn hµnh c¸c thao t¸c
trªn m¹ng, file chøa m¹ng cã thÓ l−u l¹i lªn ®Üa víi tªn kh¸c b»ng chøc n¨ng l−u
file cña phÇn mÒm. • C¸c file lu«n ®−îc mÆc ®Þnh lµ ®· l−u lªn ®Üa. Sau mçi thao t¸c lµm biÕn
®æi m¹ng neuron, kh«ng cã c¸ch nµo kh«i phôc l¹i tr¹ng th¸i tr−íc ®ã. • Khi míi b¾t ®Çu ch¹y phÇn mÒm, file chøa m¹ng neuron ch−a ®−îc n¹p vµ
kh«ng thùc hiÖn ®−îc c¸c thao t¸c trªn m¹ng. 90 Chó ý: 2. T¹o c¸c file chøa c¸c tham sè ®Ých
(®¸p øng mong muèn) cho c¸c file ©m thanh §Ó cã thÓ tiÕn hµnh tÝch luü hay ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng, mçi file ©m
thanh cÇn ph¶i cã mét file chøa c¸c tham sè ®Ých cung cÊp ®¸p øng mong muèn
cho m¹ng neuron. Cã hai chøc n¨ng t¹o c¸c file nµy: Cöa sæ giao diÖn sÏ nh− h×nh 7.3 (Make Files->Make Targ Files For
Training->A) (nÕu b¹n muèn t¹o file tham sè ®Ých t−¬ng øng víi nguyªm ©m nµo
th× chän môc Menu t−¬ng øng víi nguyªn ©m ®ã). Trong ListBox bªn tr¸i phÇn mÒm sÏ hiÖn tÊt c¶ c¸c file *.wav trong mét th−
môc quy ®Þnh riªng cho c¸c file ©m thanh dµnh ®Ó tÝch luü (mÆc ®Þnh lµ
TRAINWAV). ListBox bªn ph¶i hiÖn s½n tªn c¸c file *.wav mµ ch−a cã file gi¸ trÞ
®Ých t−¬ng øng. Ng−êi sö dông cã thÓ sö dông c¸c Button ë gi÷a ®Ó thªm hay bít
c¸c file trong ListBox bªn ph¶i (thªm file b»ng c¸ch chän c¸c file ë ListBox bªn
tr¸i råi bÊm Button “Add”). Sau khi bÊm “OK”, tÊt c¶ c¸c file ©m thanh cã tªn trong ListBox bªn ph¶i sÏ
®−îc t¹o file gi¸ trÞ ®Ých t−¬ng øng (cã cïng tªn nh−ng phÇn më réng lµ “tag”) phï
hîp víi nguyªn ©m ®· chän. • Th− môc quy ®Þnh cho c¸c file ©m thanh dµnh ®Ó tÝch luü cã thÓ thay ®æi
®−îc nhê chøc n¨ng th− môc hÖ thèng cña phÇn mÒm (System-
>Dierectory). Chó ý: 91 C¸ch sö dông còng t−¬ng tù nh− trªn chØ kh¸c ë chç ®èi t−îng lµ c¸c file ©m
thanh dµnh ®Ó ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng (Make Files->Make Targ Files For
Evaluation->A). • Th− môc quy ®Þnh cho c¸c file ©m thanh dµnh ®Ó ®¸nh gi¸ tÝnh n¨ng nhËn
d¹ng (mÆc ®Þnh lµ EVALWAV) cã thÓ thay ®æi ®−îc nhê chøc n¨ng th−
môc hÖ thèng cña phÇn mÒm (System->Dierectory). Chó ý: 3. Xö lý filter bank cho c¸c file ©m thanh §Ó cã thÓ thùc hiÖn c¸c thao t¸c trªn m¹ng neuron, c¸c file ©m thanh cÇn
ph¶i tr¶i qua qu¸ tr×nh xö lý filter bank ®Ó thu ®−îc c¸c file tham sè ®Æc tr−ng (cã
cïng tªn nh−ng phÇn më réng lµ “dat”) lµm ®Çu vµo cho m¹ng neuron. C¸c tham
sè ®Æc tr−ng chÝnh lµ c¸c vector feature cña c¸c frame ®−îc xÕp liªn tiÕp nhau. ë ®©y, còng cã hai chøc n¨ng nh− trªn (Make Files->Make Targ Files->For
Training vµ Make Files->Make Targ Files->For Evaluation) vµ c¸ch sö dông còng
t−¬ng tù nh− trªn. 4. TiÕn hµnh tÝch luü m¹ng neuron §èi víi m¹ng neuron ®· ®−îc n¹p, ng−êi sö dông cã thÓ thùc hiÖn tÝch luü m¹ng nh− m« t¶ d−íi ®©y (Run Net->BackPropagation Training). Cöa sæ giao diÖn cho thao t¸c nµy cã h×nh thøc hoµn toµn gièng nh− trong
h×nh 7.3, chØ cã ý nghÜa lµ h¬i kh¸c. C¸c file ë ListBox bªn tr¸i lµ c¸c file tham sè
®Æc tr−ng ®· cã file gi¸ trÞ ®Ých t−¬ng øng (cña cïng mét file ©m thanh); c¸c file
nµy lµ kÕt qu¶ cña qu¸ tr×nh xö lý filter bank c¸c file ©m thanh dµnh cho viÖc tÝch
luü. ListBox bªn ph¶i hiÖn s½n c¸c file gièng nh− trong ListBox bªn tr¸i. NÕu
ng−êi sö dông chØ muèn tÝch luü víi mét tËp hîp vÝ dô nhá th× cã thÓ bá bít mét sè
file b»ng c¸c Button ë gi÷a hai ListBox. Sau khi bÊm “OK”, sÏ cã mét DialogBox hiÖn ra yªu cÇu ng−êi sö dông
chän c¸c gi¸ trÞ quan träng cho qu¸ tr×nh tÝch luü nh−: sè vßng lÆp tèi ®a, ng−ìng
dõng cho lçi tæng thÓ cña m¹ng. Sau khi tiÕp tôc bÊm “OK”, phÇn mÒm sÏ tiÕn
hµnh tÝch luü m¹ng neuron trong mét kho¶ng thêi gian kh«ng nhá (tuú theo c¸c
gi¸ trÞ do ng−êi sö dông nhËp vµo vµ tuú theo tÝnh chÊt cña m¹ng neuron). M¹ng
neuron sau khi tÝch luü sÏ bÞ thay ®æi ®i so víi ban ®Çu. KÕt qu¶ cña qu¸ tr×nh tÝch luü (gi¸ trÞ cña lçi tæng thÓ) sÏ ®−îc th«ng b¸o
lªn cöa sæ phÇn mÒm sau mçi vßng lÆp. H×nh 7.4 thÓ hiÖn mét vÝ dô vÒ kÕt qu¶ tÝch
luü cho tr−êng hîp chØ cã ba vßng lÆp. 5. TiÕn hµnh ®¸nh gi¸ tÝnh n¨ng
nhËn d¹ng cho m¹ng neuron 92 Thao t¸c thø hai cho mét m¹ng neuron ®· ®−îc n¹p lµ tiÕn hµnh ®¸nh gi¸
tÝnh n¨ng nhËn d¹ng cña m¹ng. C¸ch tiÕn hµnh thao t¸c còng t−¬ng tù nh− trªn
(Run Net->Performance Evaluation), chØ cã kh¸c lµ kh«ng xuÊt hiÖn DialogBox
sau khi bÊm “OK” vµ kÕt qu¶ hiÖn ra mµn h×nh lµ th«ng tin vÒ sè c¸c frame ®−îc
nhËn d¹ng ®óng vµ tû lÖ phÇn tr¨m so víi tæng sè frame. KÕt qu¶ hiÖn ra mµn h×nh
sÏ cã d¹ng nh− h×nh 7.5. 93 MÆc dï nh÷ng nghiªn cøu ph«i thai ®Çu tiªn cña Lý thuyÕt m¹ng neuron ®·
b¾t ®Çu tõ nh÷ng n¨m 40 cña thÕ kû, nh−ng chØ trong mét vµi thËp niªn trë l¹i ®©y
nã míi thùc sù cã ®−îc nh÷ng øng dông quan träng vµ mang ®Õn nhiÒu høu hÑn vÒ
mét thÕ hÖ c¸c m¸y th«ng minh míi. ChÝnh v× vËy, ®èi víi riªng t«i nã cßn h¬n c¶
mét ®iÒu míi mÎ; nã lµ mét bé m«n lý thuyÕt cña t−¬ng lai. §iÒu nµy ®· thóc ®Èy
t«i võa thùc hiÖn nghiªn cøu lý thuyÕt võa cè g¾ng cµi ®Æt mét phÇn mÒm thö
nghiÖm víi tham väng n¾m ®−îc nh÷ng g× ®−îc gäi lµ c¨n b¶n nhÊt trong kho¶ng
thêi gian thùc hiÖn b¶n luËn v¨n nµy. Theo sù gîi ý cña thµy gi¸o h−íng dÉn, t«i
®· lùa chän bµi to¸n NhËn d¹ng nguyªn ©m cho viÖc øng dông m¹ng neuron. • §· n¾m ®−îc kh¸i niÖm vÒ nh÷ng thµnh phÇn c¬ b¶n vµ c¸c kiÓu kiÕn tróc
c¬ b¶n cña m¹ng neuron. • §· hiÓu ®−îc ý nghÜa cña viÖc häc hay tÝch luü, trong ®ã cã vai trß to lín
cña c¸c quy t¾c häc, m« h×nh häc vµ thuËt to¸n häc ®èi víi nhiÒu kh¶ n¨ng
øng dông kh¸c nhau. • §· ®i s©u nghiªn cøu vÒ mét kiÓu kiÕn tróc kinh ®iÓn nhÊt (m¹ng tiÕn ®a
møc) vµ mét thuËt to¸n häc ®−îc coi lµ phï hîp nhÊt cho kiÕn tróc nµy lµ
thuËt to¸n back-propagation. Qua ®ã thÊy râ ®−îc nh÷ng −u vµ nh−îc ®iÓm
cïng c¸c kinh nghiÖm nh»m c¶i thiÖn thuËt to¸n, • §· t×m hiÓu nh÷ng më réng cho c¸c m« h×nh m¹ng trÔ vµ håi quy dùa trªn
kiÕn tróc m¹ng tiÕn ®a møc víi môc ®Ých øng dông cho bµi to¸n nhËn d¹ng
tiÕng nãi. Ph¶i nãi r»ng lý thuyÕt m¹ng neuron nh©n t¹o còng phøc t¹p vµ quy m« nh−
chÝnh b¶n th©n bé ãc con ng−êi mµ nã m« pháng. ChØ víi mét sè rµng buéc vÒ mÆt
cÊu tróc mang tÝnh thÇn kinh sinh häc, m¹ng neuron lu«n cã tÝnh më cao trong viÖc
x©y dùng c¸c quy t¾c häc, c¸c thuËt to¸n häc còng nh− rÊt phong phó vÒ ph¹m vi
øng dông (l−u tr÷ mÉu, nhËn d¹ng mÉu, xÊp xû hµm, ®iÒu khiÓn, läc, thÝch nghi,
...). Trong khu«n khæ c¸c nghiªn cøu cho luËn v¨n tèt nghiÖp, t«i ®· ®¹t ®−îc mét
sè kÕt qu¶ cô thÓ nh− sau: • §· tËp trung khai th¸c mét ph−¬ng ph¸p xö lý tÝn hiÖu hay ®−îc sö dông
lµ kü thuËt filter bank nh»m lÊy ra c¸c vector ®Æc tr−ng cña tÝn hiÖu lµm dÇu
vµo cho m¹ng neuron. VÒ lý thuyÕt nhËn d¹ng tiÕng nãi: • KiÓm nghiÖm ®−îc nh÷ng kiÕn thøc lý thuyÕt thu nhËn ®−îc. 94 Ngoµi ra viÖc x©y xùng phÇn mÒm thö nghiÖm ®· cho phÐp t«i: • Cã c¸i nh×n râ nÐt h¬n vÒ c¸c kü thuËt øng dông lý thuyÕt vµo thùc tÕ. • Bªn c¹nh ®ã, n©ng cao ®−îc kü n¨ng ph©n tÝch, thiÕt kÕ vµ lËp tr×nh trong
viÖc gi¶i quyÕt nh÷ng bµi to¸n cã ®é phøc t¹p trung b×nh. Tuy biÕt r»ng nh÷ng ®iÒu thu nhËn ®−îc míi chØ lµ mét phÇn rÊt nhá trong
mét nghµnh nghiªn cøu lín, t«i tù nhËn thÊy ®· gÆt h¸i ®−îc nh÷ng thµnh c«ng
nhÊt ®Þnh trong giai ®o¹n nghiªn cøu ®Çu tiªn. XuÊt ph¸t tõ yªu cÇu cña bµi to¸n nhËn d¹ng nguyªn ©m, cïng c¸c ph©n tÝch
vµ thiÕt kÕ ban ®Çu, sau mét thêi gian tiÕn hµnh cµi ®Æt, t«i thÊy r»ng ch−a thùc sù
hoµn thiÖn c¸c c«ng viÖc cÇn lµm, vÉn cßn nhiÒu vÊn ®Ò cÇn tiÕp tôc ®−îc gi¶i
quyÕt. • X©y dùng ®−îc mét hÖ thèng c¸c modul th− viÖn cung cÊp kh¸ ®Çy ®ñ 8.2.1 Nh÷ng ®iÒu ®∙ gi¶i quyÕt ®−îc − Xö lý c¬ b¶n tÝn hiÖu tiÕng nãi. − Xö lý filter bank. − X©y dùng vµ l−u tr÷ m¹ng neuron. − Thi hµnh m¹ng neuron theo thuËt to¸n back-propagation. • X©y dùng ®−îc mét bé c«ng cô cã chÕ ®é thùc hiÖn thay ®æi ®−îc theo
gi¸ trÞ c¸c biÕn ®−îc truyÒn; ®iÒu nµy cho phÐp viÖc thay ®æi nh÷ng ý ®å
thùc hiÖn khi x©y dùng modul ch−¬ng tr×nh chÝnh. • Modul ch−¬ng tr×nh chÝnh ®¶m nhiÖm ®−îc viÖc nhËn c¸c chØ dÉn ®Çu
vµo còng nh− c¸c lÖnh thùc hiÖn cña ng−êi sö dông th«ng qua giao diÖn
®Ó thùc hiÖn c¸c c«ng viÖc sau: − T¹o c¸c file tham sè ®Æc tr−ng cho c¸c file ©m thanh nh− lµ kÕt
qu¶ cña qu¸ tr×nh xö lý filter bank. − T¹o c¸c file chøa c¸c gi¸ trÞ ®Çu ra mong muèn cho tõng file ©m
thanh øng víi tõng nguyªn ©m. − TiÕn hµnh tÝch luü m¹ng neuron tõ c¸c file tham sè ®Æc tr−ng vµ
c¸c file ®Çu ra mong muèn. − TiÕn hµnh ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng cña m¹ng neuron tõ mét
tËp hîp c¸c file tham sè ®Æc tr−ng míi. c¸c thñ tôc c¬ b¶n nhÊt cho c¸c c«ng viÖc: 8.2.2 Nh÷ng ®iÒu ch−a gi¶i quyÕt ®−îc 95 Do ®é phøc t¹p cña phÇn mÒm vµ tr×nh tù cµi ®Æt tõ c¸c modul th− viÖn ®Õn
modul ch−¬ng tr×nh chÝnh, råi sau ®ã míi lµ thiÕt kÕ giao diÖn, víi kho¶ng thêi • gian thùc hiÖn ®Ò tµi tèt nghiÖp, t«i ®· kh«ng thÓ t¹o cho phÇn mÒm mét diÖn m¹o
kh¶ quan ®èi víi ng−êi sö dông vµ cßn ®Ó l¹i nhiÒu ®iÒu thiÕu sãt nh− sau: • Ch−a cã tÝnh më cao ®èi víi c¸c d¹ng file ©m thanh vµ file tham sè (míi
chØ xö lý ®−îc file ©m thanh *.wav vµ file tham sè nhÞ ph©n). • Ch−a cµi ®Æt ®−îc viÖc nhËn d¹ng ©m thanh trùc tiÕp tõ micro (do thêi
gian qu¸ gÊp). • Ch−a cho phÐp ng−êi sö dông tù do t¹o m¹ng neuron. • Giao diÖn thiÕt kÕ ch−a thuËn tiÖn cho viÖc sö dông. • Ch−a cã nhiÒu tuú chän cho phÐp ng−êi sö dông thay ®æi tù do chÕ ®é
thùc hiÖn tÝch luü vµ ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng. • Ch−a tiÕn hµnh ®−îc nhiÒu thö nghiÖm trªn phÇn mÒm ®Ó cã thÓ cã c¸i
nh×n cô thÓ h¬n vÒ tÝnh n¨ng cña c¸c m¹ng neuron cã cÊu tróc kh¸c
nhau. ... Trong bèi c¶nh hiÖn nay khi mµ c¸c nghiªn cøu ®ang chuyÓn sang h−íng
x©y dùng c¸c hÖ thèng th«ng minh, m¹ng neuron næi lªn nh− mét gi¶i ph¸p ®Çy
høu hÑn. Nã thÓ hiÖn nh÷ng −u ®iÓm næi bËt cña m×nh so víi c¸c hÖ thèng kh¸c ë
kh¶ n¨ng mÒm dÎo, linh ho¹t vµ tÝnh to¸n th«; ®©y còng chÝnh lµ trong sè nh÷ng
®iÓm kh¸c biÖt gi÷a bé ãc con ng−êi víi c¸c m¸y th«ng minh nh©n t¹o. Nh−ng
còng chÝnh v× thÕ mµ nã ®ßi hái mét ®é phøc t¹p rÊt cao trong thiÕt kÕ vµ cµi ®Æt
c¸c hÖ thèng øng dông ®Ó cã thÓ ®¹t ®−îc mét tÝnh n¨ng tèt. §iÓm mÊu chèt cña
quy m« hÖ thèng lµ sè l−îng c¸c neuron vµ sè l−îng c¸c møc Èn. Kh¶ n¨ng nµy sÏ
®−îc c¶i thiÖn kh«ng ngõng trong t−¬ng lai cïng víi sù ph¸t triÓn cña c¸c m¹ch
tÝch hîp phÇn cøng cì lín vµ c¸c bé nhí ngµy cµng lín h¬n cho c¸c phÇn mÒm
m¸y vi tÝnh. ChÝnh v× ®iÒu nµy mµ m¹ng neuron ®−îc coi lµ “kü thuËt cña thÕ kû
21”. Tuy nhiªn, th«ng qua viÖc cµi ®Æt phÇn mÒm thö nghiÖm, cã thÓ thÊy r»ng
mét vÊn ®Ò quan träng cÇn ph¶i tiÕp tôc ®−îc nghiªn cøu vµ gi¶i quÕt ®ã lµ vÊn ®Ò
tèc ®é héi tô cña c¸c thuËt to¸n häc nhÊt lµ ®èi víi nh÷ng tËp hîp d÷ liÖu cã kÝch
th−íc lín. Bªn c¹nh c¸c ph−¬ng ph¸p c¶i thiÖn b¶n th©n thuËt to¸n th× kü thuËt xö
lý song song trªn nhiÒu processor cã thÓ ®em l¹i cho c¸c phÇn mÒm nhËn d¹ng
nh÷ng tÝnh n¨ng tèt h¬n. Vµ c¸c nhµ b¸c häc vÉn lu«n t×m c¸ch kh¸m ph¸ ra nh÷ng
quy t¾c häc vµ thuËt to¸n häc míi hiÖu qu¶ h¬n. Mét ®iÒu dÔ nhËn thÊy lµ mÆc dï
m¹ng neuron m« pháng trùc tiÕp bé ãc con ng−êi vÒ mÆt cÊu tróc vµ trong môc
tiªu cña qu¸ tr×nh häc (®iÒu chØnh c¸c träng sè synnapse) nh−ng c¸c quy t¾c häc
®−îc ®−a ra vÉn thuÇn tuý mang tÝnh to¸n häc vµ ch−a thùc sù lµ mét sù b¾t ch−íc
vÒ mÆt thÇn kinh sinh häc cña qu¸ tr×nh häc x¶y ra trong bé ãc... 96 Tãm l¹i, chóng ta cã thÓ kh¼ng ®Þnh mét ®iÒu r»ng môc tiªu tiÕn gÇn tíi sù
hoµn h¶o cña bé m¸y nhËn thøc cña con ng−êi vÉn lµ mét th¸ch thøc qu¸ lín ngay c¶ ®èi víi mét bé m«n lý thuyÕt míi nh− Lý thuyÕt m¹ng neuron mµ b¶n chÊt
t−¬ng tù thÇn kinh sinh häc vÒ cÊu tróc cho chóng ta nh÷ng “tia hy väng” ®¸ng l¹c
quan. • Hoµn chØnh nh÷ng thiÕu sãt ch−a gi¶i quyÕt ®−îc nh− ®· nªu trong phÇn
8.2.2. • Më réng phÇn mÒm ®èi víi tÊt c¶ c¸c nguyªn bao gåm c¶ c¸c nguyªn ©m
cã dÊu, vµ nÕu cã thÓ th× më réng cho ©m tiÕt bÊt kú. • Lùa chän mét c¬ së hÖ thèng ®ñ m¹nh vµ x©y dùng mét m¹ng neuron ®ñ
hiÖu qu¶ còng nh− nghiªn cøu viÖc tèi −u trong cµi ®Æt thuËt to¸n häc ®Ó cã
thÓ x©y dùng ®−îc mét hÖ thèng “truyÒn lÖnh” b»ng ©m thanh ®¬n gi¶n. B¶n luËn v¨n ®−îc x©y dùng dùa trªn nh÷ng b−íc ®i chËp ch÷ng ®Çu tiªn
trong qu¸ tr×nh nghiªn cøu Lý thuyÕt m¹ng neuron vµ øng dông cña nã cho vÊn ®Ò
nhËn d¹ng tiÕng nãi nªn ch¾c ch¾n lµ sÏ cã rÊt nhiÒu ®iÒu cã thÓ tiÕp tôc ph¸t triÓn
trong môc tiªu x©y dùng nh÷ng phÇn mÒm nhËn d¹ng hiÖu qu¶. Tuy nhiªn chØ xÐt
riªng trong ph¹m vi bµi to¸n nhËn d¹ng nguyªn ©m, nÕu ®iÒu kiÖn cho phÐp, t«i sÏ
tiÕp tôc ®Ò tµi theo h−íng sau: 97 Nh−ng ®Ó cã thÓ ®¹t ®−îc nh÷ng môc tiªu nµy, t«i nghÜ r»ng sÏ hÕt søc khã
kh¨n cho t«i nÕu chØ tiÕn hµnh c«ng viÖc mét m×nh. T«i rÊt mong muèn cã nh÷ng
c¬ héi cïng trao ®æi vµ cïng lµm viÖc víi nh÷ng ng−êi cã cïng mèi quan t©m tíi
M¹ng neuron nh− t«i.2.2 M¹ng tiÕn (feedforward) ®a møc
H×nh 2.3 H−íng ®i cña hai luång tÝn hiÖu c¬ b¶n
trong mét m¹ng tiÕn ®a møc: h−íng tiÕn cña c¸c
tÝn hiÖu chøc n¨ng vµ h−íng lïi cña c¸c tÝn hiÖu lçi
H×nh 2.4 §å thÞ luång tÝn hiÖu chi tiÕt cho mét neuron ®Çu ra
Tr−êng hîp 1. Neuron j lµ mét nót ®Çu ra
Tr−êng hîp 2. Neuron j lµ mét nót Èn
H×nh 2.5 §å thÞ luång tÝn hiÖu chi tiÕt cho
mét neuron Èn j nèi víi mét neuron ®Çu ra k.
H×nh 2.6 §å thÞ luång tÝn hiÖu cña mét phÇn
m¹ng tiÕn ®a møc khi tÝn hiÖu lçi ph¶n håi trë l¹i
Hai giai ®o¹n tÝnh to¸n cña thuËt to¸n
Tèc ®é häc
H×nh 2.7 §å thÞ luång tÝn hiÖu minh ho¹
t¸c dông cña h»ng sè moment α
C¸c Thêi kú (Epoch)
Tiªu chuÈn dõng thuËt to¸n
H×nh 2.8 S¬ ®å khèi cña mét bé ph©n läai mÉu
VÊn ®Ò tÝnh to¸n côc bé
VÊn ®Ò hiÖu qu¶ tÝnh to¸n
VÊn ®Ò héi tô
Kinh nghiÖm thø nhÊt
Kinh ngiÖm thø hai
Kinh ngiÖm thø ba
Kinh nghiÖm thø t−
Ch−¬ng 3
C¸c më réng cho m¹ng
håi quy trÔ (recurrent time-delay)
3.1 M« h×nh m¹ng neuron trÔ (time-delay)
H×nh 3.1 Mét kÕt nèi synpase trÔ
3.2 C¸c m¹ng neuron håi quy trÔ
H×nh 3.2 Mét hÖ thèng håi quy trÔ
3.3 ThuËt to¸n Back-propagation më réng
Tr−êng hîp 1
Tr−êng hîp 2
w1j
w1j
.
.
.
w1j
H×nh 3.3 Minh häa sù ph¶n håi tÝn hiÖu lçi
cña thuËt to¸n back-propagation më réng
Ch−¬ng 4
nhËn d¹ng tiÕng nãi vμ kh¶ n¨ng
øng dông m¹ng neuron trÔ
(time-delay)
4.1 Më ®Çu vÒ lý thuyÕt nhËn d¹ng tiÕng nãi
NhËn d¹ng tiÕng nãi lµ qu¸ tr×nh thu nhËn vµ xö lý tÝn hiÖu tiÕng
nãi nh»m môc ®Ých nhËn biÕt néi dung v¨n b¶n cña nã.
H×nh 4.1 S¬ ®å biÓu diÔn qu¸ tr×nh s¶n xuÊt vµ
thu nhËn tiÕng nãi cña con ng−êi
1. Nguyªn ©m
H×nh 4.2 §å thÞ theo c¸c formant F1, F2 cho 10 nguyªn ©m
®−îc thùc hiÖn víi nhiÒu ®èi t−îng ng−êi nãi kh¸c nhau
2. C¸c ©m vÞ kh¸c
4.2 Ph©n tÝch vµ xö lý tÝn hiÖu cho nhËn d¹ng tiÕng nãi
TiÕp cËn nhËn d¹ng mÉu
TiÕp cËn ©m thanh-ng÷ ©m
Bé x¸c ®Þnh
®Æc tr−ng 1
.
.
.
H×nh 4.3 Xö lý tÝn hiÖu trong c¸c tiÕp cËn nhËn d¹ng tiÕng nãi
∑ h m s n m
)
) (
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
H×nh 4.4 M« h×nh cña bé xö lý ®Çu cuèi filter bank
2ωi
H×nh 4.5 C¸c ®å thÞ d¹ng sãng vµ phæ cho viÖc ph©n tÝch mét
tÝn hiÖu thuÇn tuý h×nh sin trong m« h×nh filter bank
ë ®ã Vi(ejω), Si(ejω) vµ W(ejω) lµ biÕn ®æi Fourier cña tÝn hiÖu vi(n), si(n) vµ wi(n),
lµ mét tÝch chËp vßng. H×nh phæ Si(ejω) lµ mét xung ®¬n t¹i ω0=ωi; trong khi
víi
®ã h×nh phæ W(ejω) l¹i lµ mét tËp hîp c¸c xung t¹i c¸c tÇn sè dao ®éng ®iÒu hoµ lÎ
ωq=ωiq, q=1,2,...,qmax. Nh− vËy, h×nh phæ V(ejω) lµ mét xung t¹i ω=0 vµ mét tËp
hîp c¸c xung cã biªn ®é nhá h¬n t¹i ωq=ωiq, q=2,4,6,... nh− ®−îc minh ho¹ trong
c¸c h×nh 4.5 d - 4.5 f. T¸c dông cña bé läc th«ng thÊp lµ gi÷ l¹i thµnh phÇn DC cña
Vi(ejω) vµ läc ®i c¸c thµnh phÇn tÇn sè cao h¬n do bé chuyÓn ®æi phi tuyÕn g©y ra.
Ph©n tÝch trªn, mÆc dï chØ ®óng cho tr−êng hîp hµm thuÇn tuý h×nh sin, vÉn
lµ mét m« h×nh tèt cho c¸c ©m thanh tiÕng nãi gi¶ tuÇn hoµn vµ h÷u thanh chõng
nµo mµ bé läc th«ng d¶i kh«ng qu¸ réng ®Õn nçi cho phÐp nhiÒu h¬n mét thµnh
phÇn dao ®éng ®iÒu hoµ cã biªn ®é lín cña tÝn hiÖu ®i qua. Do b¶n chÊt biÕn thiªn
theo thêi gian cña tÝn hiÖu tiÕng nãi (tÝnh gi¶ tuÇn hoµn), h×nh phæ cña tÝn hiÖu tÇn
thÊp kh«ng ph¶i lµ mét xung DC thuÇn tuý mµ cã thÓ lµ mét d¶i tÇn sè thÊp xung
quanh DC.
H×nh 4.6 TËp hîp ®¸p øng tÇn sè cña Q bé läc filter bank
che phñ d¶i tÇn sè tõ Fs/N tíi (Q+1/2)Fs/N víi hai tr−êng hîp:
(a) c¸c bé läc lý t−ëng, (b) c¸c bé läc thùc tÕ
H×nh 4.7 §å thÞ biÕn thiªn cña b¨ng th«ng theo tÇn sè
cho kiÓu ph©n chia kh«ng ®Òu mel hoÆc bark
4.2.4.1 BiÓu diÔn trong miÒn tÇn sè cña biÕn ®æi
Fourier thêi gian ng¾n (Short-time Fourier Transform (STFT))
0-m), ®−îc tÝnh t¹i tÇn sè ω=ωi. ë ®©y cÇn nhÊn m¹nh r»ng
mét cöa sæ, s(m)w(n
cöa sæ w(m) lïi l¹i L mÉu so víi thêi ®iÓm ®ang xÐt n0 víi L lµ kÝch th−íc cña cöa
sæ. Do cã thÓ coi w(n) lµ mét bé läc FIR nªn chóng ta cã thÓ rót ra nh÷ng nhËn
xÐt sau:
4.2.4.2 KiÓu cµi ®Æt FFT cho filter bank ®Òu dùa trªn c¬ së STFT
4.2.4.3 Cµi ®Æt filter bank FIR kh«ng ®Òu
H×nh 4.8 D¹ng cµi ®Æt trùc tiÕp cña mét
filter bank kh«ng ®Òu
4.2.4.4 C¸c filter bank kh«ng ®Òu dùa trªn c¬ së FFT
4.3 Quan ®iÓm x©y dùng øng dông nhËn
d¹ng tiÕng nãi dùa trªn m¹ng neuron
H×nh 4.9 S¬ ®å khèi cña hÖ thèng hiÓu
tiÕng nãi cña con ng−êi
KiÕn tróc m¹ng vµ c¸c ®Æc tr−ng ©m thanh
H×nh 4.10 Mét m¹ng tiÕn ®a møc cho viÖc ph©n lo¹i
c¸c nguyªn ©m dùa trªn c¸c formant F1 vµ F2
H×nh 4.11 Mét TDNN cho viÖc nhËn d¹ng /b/, /d/, /g/
Ch−¬ng 5
Ph©n tÝch bμi to¸n
nhËn d¹ng nghuyªn ©m
5.1 Ph©n tÝch yªu cÇu bµi to¸n
§Çu vµo
PhÇn tÝnh to¸n
§Çu ra
H×nh 5.1 M« h×nh tæng qu¸t cña bµi to¸n
5.2 Ph−¬ng ¸n x©y dùng bµi to¸n
VÊn ®Ò Xö lý tÝn hiÖu ®Çu vµo
VÊn ®Ò VËn hµnh m¹ng neuron
5.3 §Æc tr−ng cña bµi to¸n nhËn d¹ng nguyªn ©m
Ch−¬ng 6
ChiÕn l−îc thiÕt kÕ phÇn mÒm
6.1 ThiÕt kÕ chung
Theo quan ®iÓm chøc n¨ng
phÇn mÒm nhËn d¹ng nguyªn ©m
phÇn 1:
xö lý tÝn
hiÖu
phÇn 2:
x©y dùng
m¹ng neuron
phÇn 3:
thi hμnh m¹ng
neuron
phÇn 4:
c«ng viÖc hÖ
thèng
c¸c phÐp xö
lý tÝn hiÖu c¬
b¶n
xö lý ®Çu
cuèi filter
bank
H×nh 6.1 Gi¶n ®å thiÕt kÕ theo chøc n¨ng
Theo quan ®iÓm cÊu tróc
H×nh 6.2 Gi¶n ®å vÒ cÊu tróc ch−¬ng tr×nh
6.2 X©y dùng c¸c modul chÝnh
Modul c¸c thñ tôc xö lý tÝn hiÖu c¬ së
Modul c¸c thñ tôc cµi ®Æt vµ thùc hiÖn qu¸ tr×nh xö lý filter bank
Modul c«ng cô cho phÐp thùc hiÖn
hoµn chØnh mét qu¸ tr×nh xö lý Filter Bank
Modul c¸c thñ tôc c¬ së
Modul c«ng cô cho phÐp thùc hiÖn
hoµn chØnh mét qu¸ tr×nh häc Back-propagation
Modul c«ng cô cho phÐp thùc hiÖn
hoµn chØnh mét qu¸ tr×nh ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng
Modul qu¶n lý thao t¸c vµo/ra cho c¸c file ©m thanh
Modul qu¶n lý thao t¸c vµo/ra cho c¸c file tham sè
Modul chÞu tr¸ch nhiÖm in chuçi ra mµn h×nh
Modul c¸c phÐp to¸n c¬ së
Modul c¸c thao t¸c hÖ thèng c¬ b¶n kh¸c
Ch−¬ng 7
Giíi thiÖu phÇn mÒm cμi ®Æt
7.1 Kh¸i qu¸t vÒ kÕt qu¶ cµi ®Æt
7.2 C¸c modul ®∙ cµi ®Æt
7.2.1 Modul MainProg
©m thanh */
int MakeTarget(int NumFiles, char** WavFiles,
/* Thùc hiÖn qu¸ tr×nh tÝch luü */
void Training(char** inList1, int NumFiles,
/* Thùc hiÖn xö lý filter bank vμ t¹o ra c¸c file tham
sè chøa c¸c vector feature cho c¸c file ©m thanh */
void FilterBank(char** WavsList1, int NumWavs,
/* Thùc hiÖn ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng */
void RunNet(char* NetName, char* Dir,
T¹o m¹ng
neuron chuyªn
biÖt
TÝch luü m¹ng
neuron
KÕt qu¶
tÝch luü
T¹o c¸c file
chøa c¸c gi¸ trÞ
®Ých
C¸c file ©m
thanh
§¸nh gi¸ tÝnh
n¨ng nhËn
d¹ng
KÕt qu¶
nhËn
d¹ng
Xö lý filter
bank, t¹o c¸c
file th/sè ®Æc
tr−ng
H×nh 7.1 Kh¸i qu¸t tr×nh tù thi hµnh cña phÇn mÒm
char* NetName, char* Dir,
char** EvalList1, int NumEvalFiles,
int Numiters, float Threshold) {
H×nh 7.2 KiÕn tróc kh¸i qu¸t cña m¹ng neuron thö nghiÖm
/* §äc file chøa m¹ng neuron tõ ®Üa */
inList = CutDirExt(inList1, NumFiles);
μo */
/* Thùc hiÖn tÝch luü */
BackPropTrain(ann);
/* TruyÒn gi¸ trÞ cho tham biÕn x¸c lËp chÕ ®é tÝch luü */
ResetBackPropVar();
SetBackPropVar('m', 0, 0, 0.7, 0.0, NULL, NULL, NULL);
SetBackPropVar('g', 0, 0, 1e-5, 0.0, NULL, NULL, NULL);
SetBackPropVar('i', Numiters, 0, 0.0, 0.0, NULL, NULL,
SetBackPropVar('F', 20, 30, 0.0, 0.0, NULL, NULL, NULL);
SetBackPropVar('e', 0, 0, Threshold, 0.0, NULL, NULL,
SetBackPropVar('n', 0, 0, 0.0, 0.0, NetName, NULL, NULL);
SetBackPropVar('x', NumFiles, 0, 0.0, 0.0, NULL, NULL,
ParamsDir, char* WavsDir) {
/* Thùc hiÖn xö lý filter bank */
FibAct();
char** ParamsList1, int NumParams) {
char** ParamsList;
/* §äc file chøa m¹ng neuron tõ ®Üa */
ParamsList = CutDirExt(ParamsList1, NumParams);
NetName = MakeName(Dir, NetName, "net");
LoadNet(NetName);
}
void MyFilterBank(char** WavsList1, int NumWavs, char*
/* TruyÒn gi¸ trÞ cho tham biÕn x¸c lËp chÕ ®é x/lý*/
}
void MyRunNet(char* NetName, char* Dir,
/* TruyÒn gi¸ trÞ cho tham biÕn */
ResetEvaluationVar();
SetEvaluationVar('t', 0, NetName, NULL);
SetEvaluationVar('i', NumParams, NULL, ParamsList);
/* Thùc hiÖn ®¸nh gi¸ tÝnh n¨ng cho m¹ng neuron */
Evaluation();
1. Modul BackPropTrain
g¸n */
void BackPropVar(char sign, int num1, int num2,
/* Thñ tôc thi hμnh sau khi ®· x¸c ®Þnh chÕ ®é*/
void BackPropTrain(void);
2. Modul Evaluation
/* Thñ tôc khëi ®Çu l¹i c¸c biÕn tr−íc khi truyÒn gi¸ trÞ*/
void ResetEvaluationVar(void);
/* Thñ tôc truyÒn gi¸ trÞ c¸c biÕn */
void SetEvaluationVar(char sign, int num, char* str,
/* Thñ tôc ®¸nh gi¸ chÝnh */
void Evaluation(void);
3. Modul SpeeFeat
float *frame; /* vector frame */
int n; /* thø tù frame trong file ©m thanh */
} FrameEntry;
/* CÊu tróc d÷ liÖu qu¶n lý c¸c tÝn hiÖu tiÕng nãi ®Çu
vμo vμ c¸c vector ®Æc tr−ng ®Çu ra. Nã bao gåm hai hμng
®îi FiFO: mét hμng ®îi bao gåm c¸c SpeechEntry vμ mét hμng
®îi gåm c¸c FrameEntry */
frame*/
int status; /* =0 khi SpeechEnd ®−îc gäi */
int frame_size;
float *running_average;
float ra_timeconst;
int mean_subtraction;
/* C¸c chØ sè cho c¸c th/sè feature ®Æc biÖt */
int energy_offset;
int pitch_offset;
int samp_freq; /* sè mÉu tiÕng nãi trong mét gi©y */
int frame_step; /* sè mÉu tiÕng nãi cho mét frame */
int frame_window_size;/* k/th−íc cña cöa sæ ph/tÝch*/
int allocated_window_size;
float *frame_window; /*cöa sæ ph/tÝch ban ®Çu chøa
void *info;
/* FiFO cho c¸c frame */
int num_stacked_frames;
FrameEntry *first_frame;
FrameEntry *last_frame;
FrameEntry *used_frames;
FrameEntry *next_frame_to_pop;
} SpeeFeat;
/* Khëi ®Çu mét SpeeFeat */
SpeeFeat *initSpeeFeat(int base_type, int base_size,
int used_size,
/* Push mét sè mÉu tiÕng nãi vμo SpeeFeat */
void PushSpeech(SpeeFeat *S, short *speech, int
/*Gäi hμm nμy khi kh«ng cßn mÉu tiÕng nãi nμo ®Ó Push*/
void SpeechEnd(SpeeFeat *S);
/* X/®Þnh sè frame cã vector feature cã thÓ ®−îc Pop */
int AvaiFeatures(SpeeFeat *S);
/* Pop mét vector feture: chÝnh lμ mét m¶ng sè thùc */
float *PopFeatures(SpeeFeat *S);
4. Modul RTDNN
/* struct cho mét Group */
typedef struct Group {
char
long id;
long mark;
long NumParents;
long NumMem;
long *MemTab;
} Group;
/* struct cho mét Unit */
typedef struct Unit {
long id;
ForwardType type;
BackwardType backtype;
float backward_prune_thresh;
long mark;
long NumParents;
long index;
long link; /* id cña Connector t/øng nÕu cã */
long pos; /* vÞ trÝ trong Connector nÕu cã */
} Unit;
/* struct cho Connection (thμnh phÇn delay cña struct cho
phÐp cμi ®Æt c¸c kÕt nçi trÔ (time - delay)) */
typedef struct Connection {
long to;
long from;
long delay;
float w;
float plast;/*th/sè mÒm dÎo cho tèc ®é häc*/
long mark;
long index;
} Connection;
/* struct cho mét Connector (mét Connector lμ mét thμnh
phÇn chuyªn tr¸ch viÖc giao tiÕp gi÷a d÷ liÖu bªn ngoμi
víi c¸c Group ®Çu vμo vμ ®Çu ra) */
typedef struct Connector {
char *Name;
long id;
ConnectorType type;
char *ext;
char *path;
long size; /* sè thμnh phÇn cho mét frame*/
/*C¸c h/sè biÕn ®æi tuyÕn tÝnh ®Ó chuÈn ho¸ ®Çu vμo*/
float *a, *b;
char **CompName; /* tªn cho mçi thμnh phÇn */
char *Filter;
long index;
long NumParents;
long mark;
} Connector;
/* struct cho mét m¹ng neuron */
typedef struct Net {
char *Name;
float Version;
long Numid;
long Allocatedid;
long NumGroups;
long NumTemplates;
long NumConnections, NumAllocatedCons,
NumSortedCons;
long NumConnectors;
long NumUnits;
long Numinput;
long NumTanhyp;
long NumLinear;
long NumOutput;
long MaxDelay;
Group **GrTab; /* M¶ng c¸c id cña c¸c Group */
Unit **UTab; /* M¶ng c¸c id cña c¸c Unit */
Connection **CTab;/*M¶ng c¸c id cña c¸c Connection*/
Connector **StrTab;/*M¶ng c¸c id cña c¸c Connector */
idEntry *idTab; /* M¶ng tÊt c¶ c¸c id */
Group *rootgroup;
Unit *biasunit; /*M¶ng c¸c id cña c¸c bias*/
} Net;
/* Khëi t¹o mét Net míi */
Net *CreateNet();
/* C¸c hμm thªm c¸c thμnh phÇn vμo m¹ng */
Group *AddNamedGroup (Net *net, char *Name);
Connector *AddConnector(Net *net, char *Name,
void AddUnits(Net *net, long parent,
ForwardType type, BackwardType backtype,
long n, float RandBound);
void SetUnitType(Net *net, long unit, ForwardType type,
BackwardType backtype);
/* Thùc hiÖn c¸c kiÓu kÕt nèi kh¸c nhau gi÷a c¸c Unit*/
void Connect(Net *net, long g1, long g2, long Delay,
void ConstConnect(Net *net, long g1, long g2, long
Delay, float weight);
void SparseConnect(Net *net, long g1, long g2, long
float Fraction);
void MetricConnect(Net *net, long g1, long g2,
long delay, float RandBound,
float fraction, float spread,
long cyclic);
/* Liªn kÕt mét Uint víi mét Connector (t¹i vÞ trÝ pos) */
long LinkUnit(Net *net, long Connector, long pos,
long unit);
/* L−u tr÷ m¹ng ra file */
void SaveNet(char *fn, Net *net);
Net *LoadNet(char *fn);
5. Modul Execution
/* CÊu tróc ®Æc biÖt cña m¹ng neuron cho viÖc thi hμnh
m¹ng. §iÓm kh¸c biÖt chñ yÕu so víi cÊu tróc m¹ng trong
modul RTDNN lμ c¸c thuéc tÝnh liªn quan c¸c thμnh phÇn
m¹ng cã xu h−íng ®−îc l−u tr÷ trùc tiÕp bëi m¹ng th«ng qua
c¸c m¶ng ®a chiÒu nh»m môc ®Ých n©ng cao tèc ®é khi thi
hμnh */
typedef struct NetExe {
int NumUnits;
int NumConnections;
int NumExt;
int NumConnectors;
int MaxDelay;
int excited;
int has_data;
/* C¸c thuéc tÝnh cña c¸c Connector */
float *lin_a, *lin_b;
char **Connector_comp_name;
char **Connector_dir;
char **Connector_ext;
ConnectorType *Connector_mode;
int *Connector_offset;
int *Connector_size;
char **Connector_name;
char **Connector_filter;
int NumConstants;
float *Constants;
char **ConstName;
/* D÷ liÖu ngoμi hiÖn thêi ®ang ®−îc xö lý */
char *CurrentData; /*tªn cña d÷ liÖu (tªn file)*/
int T; /* sè c¸c frames */
float **ExtData;/*m¶ng l−u gi÷ trùc tiÕp c¸c d÷ liÖu*/
float *A; /* (Activations) c¸c ®Çu ra cña c¸c Unit*/
float *GA;/* m¶ng c¸c gradient côc bé cho c¸c Unit*/
/* C¸c thuéc tÝnh liªn quan ®Õn Unit */
int *type;
int *backtype;
int *Xindex;
int *Xlag;
ConnectorType *link_mode;
float *backthresh;
int *Numinflows;
int **inflows;
float **inW; /* m¶ng tÊt c¶ c¸c träng sè kÕt nèi*/
float **inGW;
float **Gain; /* m¶ng tÊt c¶ c¸c th/sè tèc ®é häc */
float **Momentum; /* m¶ng tÊt c¶ c¸c h/sè moment */
float **DeltaW;/*m¶ng tÊt c¶ c¸c ®iÒu chØnh träng sè*/
float **Plast; /*m¶ng tÊt c¶ c¸c hÖ sè ®é mÒm dÎo*/
} NetExe;
/* C¸c hμm ch/®æi cÊu tróc d÷ liÖu cho m¹ng neuron */
NetExe *Compile(Net *net);
void UpdateNet(Net *, NetExe *, int all_flag);
/* Khëi ®Çu c¸c th/sè cho th/to¸n back-propagation */
void initGainAndMomentum(NetExe *net, float gain,
/* Thùc hiÖn mét “b−íc ®i xuèng” theo gradient côc bé cã sö
dông tham sè moment */
void GradStep(Net *ann, NetExe *net, int all_flag);
/* N¹p d÷ liÖu bªn ngoμi */
void LoadExtData(NetExe *, char *Name, int
load_targets, int check_range);
/* “Giai ®o¹n tiÕn” cña thuËt to¸n back-propagation */
void initForward(NetExe *);
void Forward(NetExe *);
void ForwardSection(NetExe *, int start_t, int end_t);
void FinishForward(NetExe *);
/* “Giai ®o¹n lïi” cña thuËt to¸n back-propagation */
void initBackward(NetExe *);
float Backward(NetExe *);
float BackwardSection(NetExe *, int start_t,
float BackwardSectionAndUpdate(NetExe *net,
float FinishBackward(NetExe *);
/* TÝnh to¸n lçi toμn thÓ */
float GetGlobalError(NetExe *);
6. Modul AudioFiles
7. Modul ParamFiles
/* C¸c thñ tôc n¹p vμ l−u tr÷ toμn bé file tham sè */
float **LoadParameters(char *fn, int *SampleSize,
int *NumSamples);
void SaveParameters(char *fn, int SampleSize,
float **Data);
/* C¸c thñ tôc vμo ra c¬ b¶n */
PARAM_FiLE *OpenParameterFile(char *fn,
char *mode);
float *ReadParameterSample(PARAM_FiLE *);
void WriteParameterSample(PARAM_FiLE *, float *);
int ParameterFileEOF(PARAM_FiLE *);
void CloseParameterFile(PARAM_FiLE *);
/* LÊy th«ng tin vÒ mét file tham sè ®· më */
char *GetParamFileMode(PARAM_FiLE *);
int GetParamFileNumSamples(PARAM_FiLE *);
7.3 H−íng dÉn sö dông phÇn mÒm
T¹o file cho viÖc tÝch luü
H×nh 7.3 Cöa sæ giao diÖn cho viÖc t¹o file ®Ých (*.tag)
T¹o file cho viÖc ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng
H×nh 7.4 VÝ dô vÒ kÕt qu¶ tÝch luü
H×nh 7.5 VÝ dô vÒ kÕt qu¶ ®¸nh gi¸ tÝnh n¨ng nhËn d¹ng
Ch−¬ng 8
kÕt luËn
8.1 Nh÷ng kÕt qu¶ nghiªn cøu ®∙ ®¹t ®−îc
8.2 §¸nh gi¸ vÒ kÕt qu¶ cµi ®Æt phÇn mÒm thö nghiÖm
8.3 Mét vµi suy nghÜ sau khi nghiªn cøu viÖc øng dông Lý
thuyÕt m¹ng neuron trong NhËn d¹ng tiÕng nãi
8.4 H−íng ph¸t triÓn tiÕp theo cña ®Ò tµi

