Chương này cũng đã trình bày việc phân loại các mạng neuron và các giải
thuật huấn luyện chúng. Do mục tiêu ứng dụng của đề tài là dùng mạng
neuron để nhận dạng mô hình đối tượng chưa biết thông số, nên người thực
hiện đã nghiêng về phía các giải thuậthọc có giám sát (tức học có thầy
cho ‘đáp số’ (desired output), đó chính làngõ ra của thiết bị, nói cách khác
ứng dụng mạng neuron trong đề tài này là dựa vào các input/output quá
khứ của đối tượng để nhận dạng mô hình của nó). Còn các giải thuật học
không giám sát chỉ được trình bày dưới dạng giới thiệu cơ bản. Bởi vì đối
với các giải thuật này, mặc dù không đòi hỏi ngõ ra đúng, nhưng nó lại đòi
hỏi ngõ vào phải mang nhiều thông tin chính xác về hệ thống, trong khi đối
tượng sẽ nhận dạng trong đề tài không cho phép biết được một thông số
nào để xây dựng tập dữ liệu huấn luyện. Vì vậy khó có thể dùng phương
pháp học không giám sát để áp dụng cho đề tài. Tuy nhiên, học không
giám sát là một kỹ thuật đã hấp dẫn người thực hiện đến mức không thể
không nghiên cứu trong thời gian sắp tới, nhất là giải thuật di truyền học
(genetic algorithm).
39 trang |
Chia sẻ: lylyngoc | Lượt xem: 3207 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Mạng neuron nhân tạo, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
H
ie
äu
qu
aû
hô
n
nh
ie
àu
gi
aûi
th
ua
ät k
ha
ùc
tro
ng
v
ie
äc
tín
h
kh
í ñ
oän
g
ho
ïc
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.6
2.2 Boä naõo ngöôøi vaø Neuron sinh hoïc
Heä thaàn kinh cuûa con ngöôøi goàm thaàn kinh trung öông (naõo), tuûy soáng vaø
caùc daây thaàn kinh. Thaàn kinh trung öông ñöôïc caáu taïo töø 2 lôùp teá baøo, teá baøo
thaàn kinh (goïi laø neuron) vaø teá baøo glia. Trong ñoù, glia chæ thöïc hieän chöùc naêng
hoå trôï, neuron môùi tröïc tieáp tham gia vaøo quaù trình xöû lyù thoâng tin. Boä naõo
ngöôøi chöùa khoaûng 1011 neuron, vôùi hôn 1014 lieân keát giöõa chuùng, taïo thaønh
moät maïng teá baøo thaàn kinh khoång loà. Hình 2.2 cho thaáy toång theå cuûa moät boä
naõo ngöôøi [4].
Hình 2.2 Boä naõo ngöôøi
Moãi neuron coù phaàn thaân vôùi nhaân beân trong (goïi laø soma), moät ñaàu thaàn
kinh ra (goïi laø sôïi truïc axon) vaø moät heä thoáng daïng caây caùc daây thaàn kinh vaøo
(goïi laø dendrite). Xem hình 2.3. Truïc daây thaàn kinh ra cuõng coù theå phaân nhaùnh
theo daïng caây ñeå noái vôùi caùc daây thaàn kinh vaøo hoaëc tröïc tieáp vôùi nhaân teá baøo
cuûa caùc neuron khaùc thoâng qua caùc khôùp noái (goïi laø synapse). Thoâng thöôøng
moãi neuron coù theå coù töø vaøi chuïc ñeán vaøi traêm ngaøn khôùp noái.
Hình 2.3 Caáu truùc cuûa moät neuron sinh hoïc
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.7
Caùc tín hieäu truyeàn trong caùc daây thaàn kinh vaøo vaø ra cuûa caùc neuron laø
tín hieäu ñieän, ñöôïc thöïc hieän thoâng qua quaù trình giaûi phoùng caùc chaát höõu cô.
Caùc chaát naøy ñöôïc phaùt ra töø caùc khôùp noái, hình 2.4, daãn tôùi caùc daây thaàn kinh
vaøo seõ laøm taêng hay giaûm ñieän theá cuûa nhaân teá baøo. Khi ñieän theá ñaït tôùi moät
ngöôõng naøo ñoù (goïi laø ngöôõng kích hoaït), seõ taïo ra moät xung ñieän daãn tôùi truïc
daây thaàn kinh ra. Xung naøy ñöôïc truyeàn theo truïc tôùi caùc nhaùnh reõ, khi chaïm
vaøo caùc khôùp noái noái vôùi caùc neuron khaùc, seõ giaûi phoùng caùc chaát truyeàn ñieän,
hình 2.5. Ngöôøi ta chia thaønh 2 loaïi khôùp noái, khôùp kích thích (excitatory) vaø
khôùp öùc cheá (inhibitory).
Hình 2.4 Khôùp noái thaàn kinh
Hình 2.5 Xung ñieän treân truïc thaàn kinh
Vieäc nghieân cöùu neuron sinh hoïc cho thaáy hoaït ñoäng cuûa noù khaù ñôn
giaûn, khi ñieän theá ôû daây thaàn kinh vaøo vöôït quaù moät ngöôõng naøo ñoù, neuron
baét ñaàu giaät (firing), taïo ra moät xung ñieän truyeàn treân daây thaàn kinh ra ñeán caùc
neuron khaùc, cô cheá naøy cho pheùp deã daøng taïo ra moâ hình neuron nhaân taïo.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.8
2.3 Moâ hình Neuron nhaân taïo
2.3.1 Moââ hình neuron 1 ngoõõ vaøøo
Hình 2.6 laø moâ hình 1 neuron nhaân taïo11 vôùi moät ngoõ vaøo [3].
Hình 2.6 Moâ hình neuron 1 ngoõ vaøo
Ngoõ vaøo p truyeàn qua moät keát noái coù ñoä lôïi w, goïi laø troïng soá keát noái
(weight) taïo thaønh wp, sau ñoù wp ñöôïc ñöa vaøo haøm kích hoaït f cuûa neuron,
goïi laø haøm truyeàn seõ taïo thaønh ngoõ ra a cuûa neuron.
a = f(wp)
Tröôøng hôïp neuron coù ngöôõng kích hoaït12 (bias), wp ñöôïc coäng vôùi b, ngoõ
ra cuûa neuron seõ laø
a = f(wp+b)
Quaù trình huaán luyeän seõ thay ñoåi troïng soá w vaø ngöôõng b laøm cho quan
heä vaøo ra p/a thay ñoåi theo. Thoâng thöôøng coù 3 haøm truyeàn ñöôïc söû duïng nhieàu
trong thöïc teá, ñoù laø haøm Linear, Log sigmoid vaø Hyperbolic tangent sigmoid.
11 keå töø ñaây veà sau, ñeå ñôn giaûn ta chæ goïi laø neuron
12 töông ñöông vôùi ñieän theá ngöôõng cuûa neuron sinh hoïc
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.9
♦ Haøm truyeàn tuyeán tính – ‘purelin’:
f(n) = n (2.1)
Hình 2.7 Haøm truyeàn tuyeán tính
♦ Haøm truyeàn Log Sigmoid – ‘logsig’
ne1
1)n(f −+= (2.2)
Hình 2.8 Haøm truyeàn Log Sigmoid
♦ Hyperbolic tangent sigmoid – ‘tansig’
n2
n2
e1
e1)n(f −
−
+
−= (2.3)
Hình 2.9 Haøm truyeàn Hyperbolic tangent sigmoid
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.10
Baèng caùch söû duïng caùc haøm truyeàn khaùc nhau, ta ñöôïc caùc neuron coù tính
chaát khaùc nhau töông öùng. Neural Network ToolBox 3.0 cuûa MATLAB 5.3
cung caáp caùc haøm truyeàn ñöôïc lieät keâ trong baûng 2.2.
Baûng 2.2 Caùc haøm truyeàn cuûa neuron
TRANSFER FUNCTIONS
compet Competitive transfer function.
hardlim Hard limit transfer function.
hardlims Symmetric hard limit transfer function
logsig Log sigmoid transfer function.
poslin Positive linear transfer function
purelin Linear transfer function.
radbas Radial basis transfer function.
satlin Saturating linear transfer function.
satlins Symmetric saturating linear transfer function
softmax Soft max transfer function.
tansig Hyperbolic tangent sigmoid trans. function.
tribas Triangular basis transfer function.
Söï töông quan giöõa neuron sinh hoïc vaø neuron nhaân taïo nhö baûng 2.3 [6].
Baûng 2.3 So saùnh Neuron sinh hoïc vaø nhaân taïo
Neuron sinh hoïc Neuron nhaân taïo
Teá baøo Ñôn vò (hay goïi laø nuùt trong maïng)
Khôùp thaàn kinh Troïng soá keát noái w
Ñaàu vaøo kích thích Troïng soá keát noái döông
Ñaàu vaøo öùc cheá Troïng soá keát noái aâm
Kích hoaït baèng taàn soá Trò ngöôõng b
Phaïm vi hoaït ñoäng giôùi haïn bôûi
lyù tính cuûa teá baøo
Phaïm vi hoaït ñoäng giôùi haïn bôûi
haøm truyeàn f
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.11
2.3.2 Moââ hình neuron nhieààu ngoõõ vaøøo
Töông töï nhö treân, moâ hình neuron nhieàu ngoõ vaøo cho bôûi hình 2.10,
nhöng ngoõ vaøo p laø moät veùctô R phaàn töû
p1, p2, …, pR
Caùc troïng soá keát noái töông öùng vôùi töøng ngoõ vaøo laø
w1,1, w1,2, …, w1,R
Vôùi ngöôõng kích hoaït b ta coù:
n = w1,1p1+ w1,2p2+ … + w1,RpR + b
Bieåu dieãn daïng veùctô, n = Wp+b, khi ñoù ngoõ ra cuûa neuron vaãn laø:
a = f(Wp+b)
Hình 2.10 Moâ hình neuron nhieàu ngoõ vaøo
2.4 Maïng Neuron
Maïng neuron laø moät heä thoáng goàm nhieàu neuron keát noái vôùi nhau vaø hoaït
ñoäng song song. Tính naêng cuûa maïng tuøy thuoäc vaøo caáu truùc cuûa noù, caùc troïng
soá keát noái vaø quaù trình tính toaùn taïi caùc neuron ñôn leû. Maïng neuron coù theå
hoïc töø döõ lieäu maãu vaø toång quaùt hoùa döïa treân caùc maãu ñaõ hoïc [2].
2.4.1 Phaâân loaïïi maïïng neuron
Ngöôøi ta phaân loaïi maïng neuron döïa vaøo kieåu keát noái cuûa caùc neuron vaø
döïa vaøo soá lôùp neuron trong maïng.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.12
♦ Phaân loaïi theo kieåu keát noái caùc neuron:
Döïa theo kieåu keát noái, ta coù maïng neuron truyeàn thaúng (feedforward
Neural Network) vaø maïng hoài qui (recurrent NN). Trong maïng truyeàn thaúng,
caùc keát noái ñi theo moät höôùng nhaát ñònh, khoâng taïo thaønh chu trình. Ngöôïc laïi,
caùc maïng hoài qui cho pheùp caùc keát noái neuron taïo thaønh chu trình, vôùi ñænh laø
caùc neuron vaø cung laø caùc keát noái giöõa chuùng. Caùc neuron nhaän tín hieäu vaøo
goïi laø neuron vaøo, caùc neuron ñöa thoâng tin ra goïi laø neuron ra, caùc neuron coøn
laïi goïi laø neuron aån.
♦ Phaân loaïi theo soá lôùp neuron:
Caùc neuron trong maïng coù theå ñöôïc toå chöùc thaønh caùc lôùp theo nguyeân
taéc caùc neuron ôû lôùp naøy, chæ ñöôïc noái vôùi caùc neuron ôû lôùp khaùc, khoâng cho
pheùp keát noái giöõa caùc neuron treân cuøng lôùp, hoaëc töø neuron lôùp döôùi leân
neuron lôùp treân, cuõng khoâng cho pheùp keát noái nhaûy qua 1 lôùp [2]. Lôùp nhaän tín
hieäu vaøo goïi laø lôùp vaøo, lôùp ñöa thoâng tin ra goïi laø lôùp ra, caùc lôùp ôû giöõa goïi laø
lôùp aån. Xem hình 2.11.
Thoâng thöôøng lôùp vaøo khoâng tham gia quaù trình tính toaùn cuûa maïng
neuron13, neân khi tính soá lôùp ngöôøi ta khoâng keå lôùp vaøo. Ví duï ôû hình 2.11a, ta
coù maïng 2 lôùp, goàm lôùp aån vaø lôùp ra.
2.4.2 Maïïng neuron 1 lôùùp
Moâ hình maïng neuron 1 lôùp vôùi R neuron vaøo vaø S neuron ra14 nhö hình
2.12. Moãi phaàn töû trong veùctô vaøo p, ñöôïc noái vôùi töøng nuùt vaøo töông öùng (caùc
neuron naèm treân lôùp vaøo) thoâng qua ma traän troïng soá W
R,S2,S1,S
R,22,21,2
R,12,11,1
www
www
www
W
L
L
L
= (2.4)
Neuron thöù i (trong lôùp tính toaùn) coù:
i
R
1j
j,iii bwpn += ∑
=
(2.5)
Ngoõ ra töông öùng cuûa neuron thöù i laø: ai = f(ni), trong ñoù f laø haøm truyeàn
cuûa neuron. Chuùng ta coù theå bieåu dieãn ngoõ ra cuûa maïng:
a = f(Wp+b)
13 lôùp vaøo chæ coù nhieäm vuï nhaän tín hieäu vaøo, ñaây laø thaønh phaàn tuyeán tính cuûa maïng
14 neuron vaøo coøn goïi laø nuùt vaøo, neuron ra coøn goïi laø nuùt ra
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.13
Hình 2.11 Phaân loaïi maïng neuron
Hình 2.12 Maïng neuron 1 lôùp
2.4.3 Maïïng neuron nhieààu lôùùp
Moät maïng neuron coù theå coù nhieàu lôùp, ngoõ ra cuûa lôùp tröôùc seõ laøm ngoõ
vaøo cuûa lôùp sau. Quaù trình tính toaùn treân maïng laàn löôït tính toaùn treân töøng lôùp,
treân moãi lôùp hoaøn toaøn gioáng nhö tính toaùn ñoái vôùi maïng moät lôùp. Treân hình
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.14
2.13, veùctô vaøo laø p, ngoõ ra laø veùctô a. Tuy nhieân, ta theâm caùc chæ soá 1,2,3 ñeå
deã phaân bieät caùc lôùp cuûa maïng.
Hình 2.13 Maïng neuron nhieàu lôùp
Neural Network ToolBox 3.0 cuûa MATLAB cung caáp caùc haøm taïo maïng
neuron ñöôïc lieät keâ trong baûng 2.4 [3].
Baûng 2.4 Caùc haøm taïo maïng neuron cuûa MATLAB 5.3
New Neural Networks
newc Create a competitive layer.
newcf Create a cascade-forward backpropagation network.
newelm Create an Elman backpropagation network.
newff Create a feed-forward backpropagation network.
newfftd Create a feed-forward input-delay backprop network.
newgrnn Design a generalized regression neural network.
newhop Create a Hopfield recurrent network.
newlin Create a linear layer.
newlind Design a linear layer.
newlvq Create a learning vector quantization network
newp Create a perceptron.
newpnn Design a probabilistic neural network.
newrb Design a radial basis network.
newrbe Design an exact radial basis network.
newsom Create a self-organizing map.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.15
2.5 Huaán luyeän maïng
Huaán luyeän maïng laø quaù trình thay ñoåi caùc troïng soá keát noái cuõng nhö caáu
truùc cuûa maïng sao cho phuø hôïp vôùi caùc maãu hoïc [2]. Ngöôøi ta phaân bieät 3 kyõ
thuaät hoïc, ñoù laø hoïc coù giaùm saùt (supervised learning), hoïc khoâng giaùm saùt
(unsupervised learning) vaø hoïc taêng cöôøng (reinforcement learning).
2.5.1 Hoïïc coùù giaùùm saùùt
Laø giaûi thuaät ñieàu chænh caùc troïng soá keát noái döïa vaøo söï khaùc bieät giöõa
ngoõ ra thöïc teá cuûa maïng (actual network output) vaø ngoõ ra mong muoán (target
or desired network output)15, öùng vôùi moät taäp tín hieäu vaøo. Hoïc coù giaùm saùt ñoøi
hoûi phaûi coù moät teacher hay supervisor cung caáp ngoõ ra mong muoán, vì theá
ngöôøi ta coøn goïi laø hoïc coù thaày.
Giaû söû ta coù taäp maãu hoïc laø {(p,t)}, vôùi p laø veùctô vaøo, t laø veùctô ra mong
muoán, töùc laø öùng vôùi ngoõ vaøo p thì ngoõ ra ñuùng cuûa heä phaûi laø t. Goïi ngoõ ra
thöïc teá cuûa maïng laø a, thì giaûi thuaät hoïc phaûi ñieàu chænh maïng sao cho
error=|t-a| nhoû hôn moät tieâu chuaån naøo ñoù. Caùc giaûi thuaät hoïc coù giaùm saùt seõ
ñöôïc ñeà caäp chi tieát hôn ôû caùc phaàn sau.
2.5.2 Hoïïc khoââng giaùùm saùùt
Trong phöông phaùp hoïc khoâng giaùm saùt, khoâng ñoøi hoûi taäp ngoõ ra mong
muoán, vì theá ngöôøi ta goïi laø hoïc khoâng thaày. Trong quaù trình huaán luyeän, chæ coù
taäp döõ lieäu vaøo ñöôïc ñöa vaøo maïng, maïng töï ñieàu chænh theo nguyeân taéc goäp
caùc maãu döõ lieäu vaøo coù ñaëc ñieåm töông töï thaønh töøng nhoùm [7]. Phöông phaùp
naøy ñöôïc duøng trong maïng Kohonen vaø maïng ART. Coù hai giaûi thuaät hoïc
khoâng giaùm saùt laø: Hoïc caïnh tranh (Competitive Learning) vaø Caáu hình töï toå
chöùc (Self-organizing feature maps – SOFM).
# Giaûi thuaät hoïc caïnh tranh
Maïng neuron aùp duïng giaûi thuaät hoïc naøy goïi laø maïng caïnh tranh
(competitive neural network), hình 2.14 [3].
Trong hình 2.14, khoái || ndist || nhaän veùctô vaøo p vaø ma traän troïng soá
IW1,1, ñeå taïo ra moät veùctô coù S1 phaàn töû. Caùc phaàn töû cuûa veùctô naøy coù giaù trò
15 actual network output laø ngoõ ra maø maïng tính toaùn ñöôïc khi aùp duïng moät ngoõ vaøo naøo ñoù, desired
network output laø ‘ñaùp soá’ do supervisor cung caáp
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.16
laø khoaûng caùch Euclidean aâm (Euclidean distance < 0) giöõa veùctô vaøo p vaø ma
traän troïng soá IW1,1. Sau ñoù veùctô naøy ñöôïc coäng vôùi trò ngöôõng b1 taïo thaønh n1.
Haøm truyeàn caïnh tranh C (competitive transfer function), nhaän n1 vaø laøm
cho caùc ngoõ ra cuûa caùc neuron baèng 0 ngoaïi tröø winning neuron seõ coù ngoõ ra
baèng 1. Winning neuron laø neuron maø khoaûng caùch Euclidean giöõa veùctô troïng
soá cuûa noù vaø ngoõ vaøo ít aâm nhaát, nghiaõ laø veùctô troïng soá cuûa noù gaàn ñuùng vôùi
veùctô ngoõ vaøo nhaát.
Hình 2.14 Giaûi thuaät hoïc caïnh tranh
Caùc troïng soá cuûa winning neuron seõ ñöôïc caäp nhaät theo luaät sau: Giaû söû
neuron thöù i trong maïng laø winning neuron, thì caùc phaàn töû ôû haøng thöù i trong
ma traän troïng soá ñöôïc ñieàu chænh nhö sau:
(2.6)
Trong ñoù α laø toác ñoä hoïc (learning rate), α ∈ [0, 1].
Luaät caäp nhaät troïng soá naøy goïi laø luaät Kohonen, noù cho pheùp caùc troïng soá
cuûa moät neuron hoïc theo veùctô vaøo. Caùc neuron coù veùctô troïng soá gaàn gioáng
nhaát so vôùi veùctô vaøo seõ ñöôïc ñieàu chænh cho gaàn gioáng hôn nöõa. Keát quaû laø,
winning neuron ôû böôùc huaán luyeän16 thöù (i) seõ gaàn gioáng vôùi winning neuron ôû
böôùc thöù (i+1), vaø seõ khaùc xa so vôùi winning neuron ôû moät böôùc huaán luyeän
naøo ñoù, maø ôû ñoù veùctô ngoõ vaøo coù söï thay ñoåi. Khi ta ñöa nhieàu maãu huaán
luyeän khaùc nhau vaøo maïng, seõ daãn tôùi söï hình thaønh töøng nhoùm neuron coù caùc
ñaëc ñieåm gaàn gioáng vôùi caùc maãu döõ lieäu huaán luyeän.
Sau khi huaán luyeän, maïng seõ hình thaønh nhieàu nhoùm neuron, moãi nhoùm
seõ phaûn aùnh moät ñaëc ñieåm naøo ñoù cuûa caùc maãu huaán luyeän. Ñieàu naøy cuõng
16 epoch, coù nhieàu taùc giaû goïi laø thôøi kyø huaán luyeän
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.17
töông ñöông nhö vieäc phaân chia caùc vuøng chöùc naêng treân boä naõo ngöôøi, vì lyù
do naøy maø giaûi thuaät hoïc caïnh tranh toû ra öu ñieåm trong caùc öùng duïng nhaän
daïng, ví duï döïa treân nhöõng ñaëc ñieåm ‘thaân quen’ coøn laïi ñeå nhaän daïng khuoân
maët ngöôøi 10 naêm sau.
# Caáu hình töï toå chöùc
Maïng neuron aùp duïng giaûi thuaät naøy goïi laø maïng töï toå chöùc SOFM (Self-
organizing feature maps), hình 2.15 [3]. Maïng naøy cuõng gioáng nhö maïng caïnh
tranh, chæ khaùc ôû choå noù khoâng duøng ngöôõng kích hoaït b.
Hình 2.15 Caáu hình töï toå chöùc
SOFM nhaän bieát winning neuron i* cuõng gioáng nhö trong giaûi thuaät hoïc
caïnh tranh, nhöng thay vì chæ ñieàu chænh troïng soá cuûa neuron ñoù, noù coøn ñieàu
chænh caû troïng soá cuûa taát caû caùc neuron trong taäp neuron laùng gieàng Ni*(d) cuûa
winning neuron i*, bao goàm i* vaø taát caû caùc neuron laùng gieàng cuûa noù. Caùc
neuron i∈ Ni*(d) ñöôïc ñieàu chænh troïng soá theo luaät sau:
hoaëc (2.7)
(2.8)
Ta kyù hieäu taäp neuron laùng gieàng Ni*(d) vôùi yù nghóa nhö sau: Chæ soá i* cho
bieát winning neuron laø neuron thöù i trong toång soá neuron cuûa maïng, chæ soá d
cho bieát soá neuron laùng gieàng cuûa i* naèm trong voøng troøn baùn kính laø d
neuron, taâm laø winning neuron. Ví duï N5(2) nghóa laø taäp hôïp caùc neuron naèm
trong voøng troøn baùn kính 2 neuron, taâm laø neuron thöù 5 (winning neuron) trong
maïng, xem hình 2.16 [3].
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.18
N13(1) ={8 12 13 14 18}
N13(2) = {3 7 8 9 11 12 13 14 15 18 18 19 23}
Hình 2.16 Minh hoïa taäp neuron laùng gieàng
Löu yù laø caùc neuron trong SOFM khoâng baét buoäc luùc naøo cuõng phaûi saép
xeáp theo hai höôùng. Chuùng ta coù theå saép xeáp theo 1 höôùng hay 3 höôùng. Ñoái
vôùi SOFM 1 höôùng, moãi neuron chæ coù 2 laùng gieàng trong phaïm vi baùn kính laø
1 (cuõng coù theå chæ coù 1 laùng gieàng neáu neuron ñoù naèm ôû cuoái haøng). Ngoaøi ra
ngöôøi ta coøn xeùt taäp neuron laùng gieàng theo kieåu hình vuoâng, hình luïc giaùc,
Hieäu quaû cuûa maïng khoâng phuï thuoäc vaøo hình daïng cuûa taäp neuron laùng gieàng.
Trong quaù trình huaán luyeän, kích thöôùc cuûa taäp neuron laùng gieàng seõ nhoû
daàn, ñeán khi chæ coøn 1 lôùp (lôùp naøy phaûn aùnh ñaëc ñieåm cuûa maãu döõ lieäu huaán
luyeän). Khi ta thay ñoåi nhieàu maãu huaán luyeän, keát quaû cuõng ñaït ñöôïc töông töï
nhö giaûi thuaät hoïc caïnh tranh.
2.5.3 Hoïïc taêêng cöôøøng
Hoïc taêng cöôøng laø moät giaûi thuaät ñaëc bieät cuûa hoïc coù giaùm saùt. Thay vì
phaûi do thaày cung caáp ngoõ ra mong muoán thì giaûi thuaät naøy seõ nhôø moät
‘chuyeân gia’ (critic) öôùc löôïng ngoõ ra toát nhaát öùng vôùi moät ngoõ vaøo cho tröôùc.
Tieâu bieåu cho hoïc taêng cöôøng laø giaûi thuaät di truyeàn (Genetic Algorithm - GA).
Giaûi thuaät GA ñôn giaûn nhaát ñöôïc cho bôûi löu ñoà hình 2.17 [6,7].
Giaûi thuaät naøy baét ñaàu baèng caùch khôûi taïo theá heä neuron hieän taïi moät
caùch ngaãu nhieân, sau ñoù aùp duïng caùc pheùp toaùn di truyeàn ñeå taïo theá heä môùi
phuø hôïp hôn. Caùc pheùp toaùn di truyeàn goàm coù: Choïn loïc, lai taïo vaø ñoät bieán.
Coù theå minh hoïa pheùp lai nhö hình 2.18 [7]. Giaû söû coù 2 chuoãi cha vaø meï, ta caét
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.19
2 chuoãi naøy thaønh nhöõng ñoaïn nhoû baèng nhau coù ñoä daøi ngaãu nhieân, hoaùn ñoåi
caùc chuoãi nhoû naøy cho nhau ta seõ thu ñöôïc 2 con. Ñôn giaûn nhaát laø ta caét chuoãi
cha vaø meï thaønh 2 phaàn.
Hình 2.17 Giaûi thuaät GA
Hình 2.18 Pheùp lai cuûa GA
Pheùp ñoät bieán ñöôïc thöïc hieän treân töøng con rieâng leû, goàm 2 böôùc: böôùc 1,
thay ñoåi giaù trò, böôùc 2 caét chuoåi con thaønh 3 phaàn ngaãu nhieân roài nghòch ñaûo
phaàn ôû giöõa. Caùch naøy cho pheùp taïo ra con môùi coù tính chaát hoaøn toaøn khaùc
vôùi cha meï chuùng, xem hình 2.19.
Baét ñaàu
Khôûi taïo theá heä hieän taïi
Choïn nhöõng neuron toát
Lai taïo, ñoät bieán
Theá heä môùi
Ñaùnh giaù
Khoâng ñaït
Ñaït
Keát thuùc
Cha: 1 0 0 0 1 0 0 1 1 1 1 0
Meï: 0 0 1 0 1 1 0 0 0 1 1 0
Con1: 1 0 0 0 1 1 0 0 0 1 1 0
Con2: 0 0 1 0 1 0 0 1 1 1 1 0
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.20
Hình 2.19 Pheùp ñoät bieán cuûa GA
Coøn raát nhieàu vaán ñeà xung quanh giaûi thuaät di truyeàn, nhöng do söï hieåu
bieát coøn nhieàu haïn cheá vaø ñeà taøi khoâng döï ñònh aùp duïng giaûi thuaät naøy, cho
neân ngöôøi thöïc hieän chöa theå nghieân cöùu saâu veà noù.
2.6 Moät soá Giaûi thuaät huaán luyeän thoâng duïng
Trong phaàn naøy chuùng ta seõ khaûo saùt giaûi thuaät truyeàn ngöôïc
(backpropagation)17 vaø caùc giaûi thuaät caûi tieán cuûa noù. Truyeàn ngöôïc ñöôïc taïo
ra theo luaät hoïc Widrow-Hoff toång quaùt aùp duïng cho caùc maïng nhieàu lôùp vôùi
caùc haøm truyeàn phi tuyeán. Giaûi thuaät truyeàn ngöôïc caäp nhaät troïng soá theo
nguyeân taéc:
xk+1 = xk - αkgk (2.9)
Tron ñoù: xk laø veùctô troïng soá vaø ngöôõng hieän taïi
αk laø toác ñoä hoïc
gk laø gradient hieän taïi
Coù nhieàu phöông phaùp ñeå xaùc ñònh gradient gk, daãn tôùi nhieàu giaûi thuaät
truyeàn ngöôïc caûi tieán.
Tröôùc khi khaûo saùt moät soá giaûi thuaät naøy, ta ñònh nghóa baøi toaùn 1, duøng
cuøng 1 maïng neuron truyeàn thaúng nhieàu lôùp (Multi-layer feedforward neural
network), aùp duïng caùc giaûi thuaät huaán luyeän töông öùng ñeå ñeå giaûi baøi toaùn, vaø
so saùnh söï khaùc bieät giöõa caùc giaûi thuaät18.
17 hoïc coù giaùm saùt
18 söï so saùnh chæ coù yù nghóa töông ñoái treân moät öùng duïng naøo ñoù
Böôùc 1
Con1: 1 0 0 0 1 1 0 0 0 1 1 0
Con1’: 1 0 0 0 0 1 0 0 0 1 1 0
Böôùc 2
Con1’: 1 0 0 0 0 1 0 0 0 1 1 0
Con1new: 1 0 1 0 0 0 0 0 0 1 1 0
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.21
BAØI TOAÙN 1
Nhaän daïng moâ hình cuûa heä thoáng ñieàu khieån chaûo anten leäch moät goùc ø
baèng moät doøng ñieän taùc ñoäng leân DC motor, hình 2. 20 [9]. Vaán ñeà nhaän daïng
moâ hình ñoái töôïng seõ ñöôïc trình baøy ôû chöông sau.
Hình 2.20 Moâ hình ñieàu khieån chaûo anten
Phöông trình moâ taû heä phi tuyeán naøy nhö (2.10)
+−=
•
•
ux2xsin81.9
x
x
x
21
2
2
1 (2.10)
Trong ñoù x1 = ø; x2 = dø/dt; u laø löïc taùc ñoäng cuûa motor [9].
Ta söû duïng maïng neuron truyeàn thaúng 2 lôùp vôùi 3 nuùt vaøo 8 nuùt aån vaø 2
nuùt ra, hình 2.21.
Hình 2.21 Maïng neuron cho baøi toaùn 1
1 1
2 linear output
neurons
8 tansig
neurons
3 input
neurons
hidden
biases
output
biases
anglek
velocityk
forcek
anglek+1
velocityk+1
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.22
Treân hình 2.21, 3 ngoõ vaøo cuûa maïng, töông öùng nhaän 3 tín hieäu: goùc leäch,
vaän toác vaø löïc taùc ñoäng ôû thôøi ñieåm (k), ngoõ ra cuûa maïng seõ cho goùc leäch vaø
vaän toác ôû thôøi ñieåm (k+1). Döõ lieäu huaán luyeän maïng nhö hình 2.22 (chæ trình
baøy 300 maãu, laáy maãu ôû Ts = 0.05)19.
200 250 300 350 400 450 500
-10
-5
0
5
10
Input data for training
200 250 300 350 400 450 500
-1
-0.5
0
0.5
1
Desired data for training
angle
force
next velocity
velocity
next angle
Hình 2.22 Döõ lieäu huaán luyeän maïng neuron cho baøi toaùn 1 [9]
2.6.1 Giaûûi thuaäät gradient descent
Ñaây laø giaûi thuaät ñôn giaûn vaø phoå bieán nhaát ñeå huaán luyeän moät maïng
nhieàu lôùp. Giaûi thuaät naøy coù theå toùm taét nhö sau:
1. Khôûi taïo taát caû caùc troïng soá keát noái cuûa caùc neuron trong maïng
(thöôøng thì khôûi taïo ngaãu nhieân, giaù trò nhoû)
2. AÙp duïng veùctô döõ lieäu vaøo cho maïng
3. Tính toaùn ñeå xaùc ñònh ngoõ ra thöïc teá cuûa maïng
4. So saùnh vôùi veùctô döõ lieäu mong muoán (do supervisor cung caáp),
xaùc ñònh loãi
5. Lan truyeàn loãi naøy töø ngoõ ra ngöôïc veà ngoõ vaøo cuûa maïng, ñaây laø
cô sôû ñeå ñieàu chænh troïng soá
6. Ñieàu chænh caùc troïng soá cuûa maïng.
19 Döõ lieäu naøy ñöôïc trích töø taøi lieäu [9] – Neural Network Toolbox 3.0 - User Guide cuûa MatLab 5.3
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.23
Nguyeân taéc ñieàu chænh troïng soá nhö (2.11)
ijiji gww α+= (2.11)
Vôùi gi = δj pi ñöôïc goïi laø gradient.
Trong ñoù: wji laø troïng soá keát noái töø neuron thöù i ñeán neuron thöù j
α laø toác ñoä hoïc, α ∈ [0,1]
δj laø moät heä soá phuï thuoäc tính chaát cuûa neuron j
pi laø ngoõ vaøo cuûa neuron i
Neáu j laø neuron ra (output neuron), thì
( )jj
j
j atnet
f −
∂
∂=δ (2.12)
vaø neáu j laø neuron aån (hidden neuron), thì
∑ δ
∂
∂=δ
k
kkj
j
j wnet
f (2.13)
Vôùi:
jnet
f
∂
∂
laø ñaïo haøm cuûa haøm kích hoaït f.
tj laø ngoõ ra mong muoán cuûa neuron j (desired or target output)
aj laø ngoõ ra thöïc teá cuûa neuron j
wkj laø troïng soá keát noái töø neuron k tôùi neuron j
k laø neuron ôû lôùp phía tröôùc lôùp cuûa j
δk tính gioáng nhö δj, nhöng ñoái vôùi lôùp phía sau20.
# Haøm muïc tieâu - loãi bình phöông trung bình (Mean Square Error - MSE)
Giaû söû ta coù taäp maãu huaán luyeän laø
{p1,t1}, {p2,t2}, …, {pN,tN}
Trong ñoù pi laø ngoõ vaøo cuûa maïng, ti laø ngoõ ra mong muoán töông öùng. Ta
kyù hieäu taäp ngoõ vaøo laø p, veùctô ngoõ ra mong muoán laø t. Khi moãi maãu döõ lieäu
ñöa vaøo maïng, veùctô ngoõ ra thöïc teá a seõ ñöôïc so saùnh vôùi ngoõ ra mong muoán t
ñeå xaùc ñònh loãi:
ei = ti – ai (2.14)
Vôùi N maãu huaán luyeän ñöôïc ñöa vaøo maïng, MSE ñöôïc tính theo (2.15)
20 Lan truyeàn ngöôïc töø network output ñeán input thì δk ñaàu tieân chính laø δj cuûa caùc neuron ôû lôùp ra
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.24
∑
=
=
N
1i
2
ieN
1MSE (2.15)
Ngöôøi ta coøn goïi (2.15) laø haøm muïc tieâu (performance function)
# AÙp duïng Gradient Descent cho baøi toaùn 1
AÙp duïng giaûi thuaät naøy cho baøi toaùn 1, quaù trình huaán luyeän ñöôïc thöïc
hieän treân maùy tính coù caáu hình nhö sau: Mainboard ATX Pro, CPU Cyrix MII
300 MHz, 64 MB DRAM.
Sau 200 epochs, ta coù MSE = 0.1065, hình 2.23.
0 50 100 150 200
10-1
100
101
Performance is 0.106499, Goal is 0
M
S
E elapsed time: 35.43 s
Hình 2.23 Loãi cuûa giaûi thuaät Gradient Descent
Keát quaû naøy seõ ñöôïc so saùnh vôùi caùc giaûi thuaät khaùc.
2.6.2 Giaûûi thuaäät gradient descent with momentum
Nhaèm caûi tieán toác ñoä hoäi tuï cuûa giaûi thuaät Gradient Descent, ngöôøi ta ñöa
ra luaät ñieàu chænh troïng soá keát noái khaùc nhö (1.16);
jijiji www ∆+= (2.16)
)1k(wp)k(w jiijji −∆µ+αδ=∆ (2.17)
Vôùi ∆wji(k-1) laø thôøi ñieåm tröôùc ñoù cuûa ∆wji(k), Trong (2.16), µ ñöôïc goïi
laø heä soá momentum. Theo nhieàu taùc giaû, ñeå ñaït hieäu quaû huaán luyeän cao thì
toång cuûa momentum µ vaø toác ñoä hoïc α phaûi gaàn baèng 1, vaø thoâng thöôøng thì
neân choïn α ∈ (0,0.2]; µ ∈ [0.8 1).
# AÙp duïng Gradient Descent with momentum cho baøi toaùn 1
Sau 200 epochs, ta ñöôïc MSE=0.0886, hình 2.24.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.25
0 20 40 60 80 100 120 140 160 180 200
10-2
10-1
100
101
Performance is 0.0885581, Goal is 0
M
S
E
elapsed time: 36.80 s
Hình 2. 24 Loãi cuûa giaûi thuaät Gradient Descent with Momentum
Roõ raøng toác ñoä hoäi tuï coù nhanh hôn, nhöng chöa ñaùng keå.
2.6.3 Giaûûi thuaäät gradient descent with adaptive learning rate
Trong hai giaûi thuaät treân (2.6.1 & 2.6.2), toác ñoä hoïc ñöôïc giöõ laø moät haèng
soá trong suoát quaù trình huaán luyeän. Hieäu suaát cuûa giaûi thuaät phuï thuoäc raát
nhieàu vaøo vieäc choïn haèng soá toác ñoä hoïc. Neáu ta choïn quaù lôùn, quaù trình huaán
luyeän seõ hoäi tuï nhanh, nhöng giaûi thuaät coù theå dao ñoäng vaø seõ khoâng oån ñònh.
Neáu ta choïn toác ñoä hoïc quaù thaáp, thôøi gian hoäi tuï seõ raát laâu.
Ngöôøi ta ñöa ra moät giaûi thuaät khaùc, nhaèm thay ñoåi (thích nghi) toác ñoä
hoïc trong quaù trình huaán luyeän.
Nguyeân taéc thích nghi toác ñoä hoïc laø, ôû moãi thôøi kyø huaán luyeän (epoch),
caùc troïng soá keát noái vaø caùc ngöôõng ñöôïc ñieàu chænh theo toác ñoä hoïc taäp môùi,
sau ñoù caùc ngoõ ra môùi vaø loãi môùi ñöôïc tính toaùn.
Toùm taét giaûi thuaät
if (new_error - old_error) > max_perf_inc (thöôøng, max_perf_inc=1.04)
Loaïi troïng soá vaø ngöôõng môùiù
Toác ñoä hoïc = toác ñoä hoïc * lr_dec (giaûm lr, thöôøng thì lr_dec=0.7)
elseif new_error < old_error
Giöõ laïi troïng soá vaø ngöôõng môùi
Toác ñoä hoïc = toác ñoä hoïc * lr_inc (taêng lr, thöôøng thì lr_inc=1.05)
end
Thuû tuïc naøy cho pheùp taêng toác ñoä hoïc, nhöng phaûi taêng trong moät giôùi
haïn naøo ñoù ñeå traùnh tröôøng hôïp maïng baát oån (loãi raát lôùn). Tröôøng hôïp quaù trình
hoïc trôû neân baát oån thì phaûi giaûm toác ñoä hoïc.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.26
# AÙp duïng Gradient Descent with adaptive lr cho baøi toaùn 1
Sau 200 epochs, ta thu ñöôïc MSE=0.0396, hình 2.25.
0 20 40 60 80 100 120 140 160 180 200
10-2
10-1
100
101
Performance is 0.039565, Goal is 0
M
S
E
elapsed time: 36.15 s
Hình 2.25 Loãi cuûa giaûi thuaät Gradient descent with adaptive lr
Giaûi thuaät naøy coù toác ñoä hoäi tuï nhanh hôn so vôùi 2 giaûi thuaät tröôùc.
2.6.4 Giaûûi thuaäät gradient descent with momentum & adaptive learning rate
Giaûi thuaät naøy hoaøn toaøn gioáng nhö giaûi thuaät thích nghi toác ñoä hoïc
(2.6.3), ngoaïi tröø vieäc theâm vaøo heä soá momentum µ. Vieäc boå sung momentum
µ cuõng ñöôïc thöïc hieän gioáng nhö giaûi thuaät gradient descent with momentum
(2.6.2), töùc aùp duïng nguyeân taéc ñieàu chænh troïng soá keát noái (2.16) & (2.17).
# AÙp duïng Gradient Descent with m & adaptive lr cho baøi toaùn 1
Sau 200 epochs, MSE = 0.0338, keát quaû treân hình 2.26. Vieäc theâm vaøo
momentum ñaõ laøm cho toác ñoä hoäi tuï nhanh hôn, khi taêng soá thôøi kyø huaán
luyeän, ñieàu naøy môùi ñöôïc theå hieän roõ raøng hôn.
0 20 40 60 80 100 120 140 160 180 200
10-2
10-1
100
101
P f i 0 0338866 G l i 0er ormance s . , oa s
M
S
E
elapsed time: 35.65 s
Hình 2.26 Loãi cuûa giaûi thuaät Gradient descent with mc & adaptive lr
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.27
2.6.5 Giaûûi thuaäät truyeààn ngöôïïc Resilient (Resilient Backpropagation)
Ñoái vôùi caùc maïng neuron nhieàu lôùp, duøng haøm truyeàn sigmoid, do ñaëc
tröng cuûa haøm naøy laø ‘neùn’ moät ngoõ vaøo voâ haïn thaønh moät ngoõ ra höõu haïn, ñaõ
phaùt sinh moät vaán ñeà baát lôïi trong quaù trình huaán luyeän. Ñoù laø caùc gradient coù
giaù trò raát nhoû, laøm caùc troïng soá vaø ngöôõng chæ ñöôïc ñieàu chænh 1 khoaûng nhoû,
maëc duø caùc giaù trò cuûa troïng soá vaø ngöôõng hieän taïi coøn raát xa giaù trò toái öu.
Ngöôøi ta ñöa ra giaûi thuaät truyeàn ngöôïc Resilient nhaèm loaïi boû nhöõng caùc
hieäu öùng baát lôïi veà giaù trò cuûa gradient baèng caùch söû duïng caùc ñaïo haøm rieâng.
Vì chæ coù daáu cuûa ñaïo haøm môùi ñöôïc duøng ñeå xaùc ñònh höôùng caäp nhaät troïng
soá vaø ngöôõng21, coøn giaù trò cuûa ñaïo haøm khoâng aûnh höôûng ñeán vaán ñeà naøy.
Neáu giöõa 2 thôøi kyø huaán luyeän lieân tieáp (successive iteration) maø ñaïo haøm cuûa
haøm loãi theo troïng soá (
jiw
E
∂
∂ ), cuøng daáu, thì taêng troïng soá vaø ngöôõng baèng heä
soá ∆inc. Ngöôïc laïi, neáu ñaïo haøm ñoåi daáu giöõa 2 thôøi kyø huaán luyeän lieân tieáp, thì
giaûm troïng soá vaø ngöôõng baèng heä soá ∆dec. Neáu ñaïo haøm baèng zero (0), thì giöõ
nguyeân troïng soá vaø ngöôõng cuõ.
Giaûi thuaät naøy coù theå toùm taét nhö sau:
1. Khôûi taïo giaù trò nhoû cuûa step size ∆wji(0)
wji = wji(n-1) + ∆wji (n laø thôøi kyø huaán luyeän hieän taïi)
2. Thay ñoåi step size vaø caäp nhaät troïng soá
if
jiw
E
∂
∂ (n)*
jiw
E
∂
∂ (n-1) >0 (2 thôøi kyø lieân tieáp, ñaïo haøm cuøng daáu)
∆wji(n) = ∆wji(n-1)* ∆inc (thöôøng thì ∆inc=1.2)
wji(n) = wji(n-1) + ∆wji(n) (taêng troïng soá)
elseif
jiw
E
∂
∂ (n)*
jiw
E
∂
∂ (n-1) < 0 (2 thôøi kyø lieân tieáp, ñaïo haøm khaùc daáu)
∆wji(n) = ∆wji(n-1)* ∆dec (thöôøng thì ∆dec=0.5)
wji(n) = wji(n-1) + ∆wji(n) (giaûm troïng soá)
else (ñaïo haøm baèng khoâng)
wji(n) = wji(n-1) (giöõ nguyeân troïng soá cuõ)
end
21 caäp nhaät theo höôùng taêng hay giaûm troïng soá, phuï luïc B
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.28
# AÙp duïng giaûi thuaät truyeàn ngöôïc Resilient cho baøi toaùn 1
Sau 200 epochs, MSE = 0.0017, hình 2.27.
0 20 40 60 80 100 120 140 160 180 200
10-3
10-2
10-1
100
101
P f i 0 00170691 G l i 0er ormance s . , oa s
M
S
E elapsed time: 36.64 s
Hình 2.27 Loãi cuûa giaûi thuaät Resilient Backpropagation
Roõ raøng khi aùp duïng giaûi thuaät naøy, toác ñoä hoäi tuï nhanh ñaùng keå
2.6.6 Giaûûi thuaäät BFGS Quasi-Newton (BFGS quasi-Newton algorithm)
Giaûi thuaät Newton laø moät trong nhöõng giaûi thuaät gradient keát hôïp
(conjugate gradient), nhaèm taêng toác ñoä hoäi tuï cuûa quaù trình huaán luyeän.
Nguyeân taéc caäp nhaät troïng soá cuûa giaûi thuaät naøy nhö (2.18)
wji(n+1)=wji(n)-A-1(n)g(n) (2.18)
Trong ñoù g(n) laø gradient ôû thôøi kyø huaán luyeän n. A(n) laø ma traän Hessian
(ñaïo haøm caáp 2 cuûa haøm loãi theo troïng soá – [∂2E/∂wkj∂wki]) chöùa caùc giaù trò
troïng soá vaø ngöôõng hieän taïi.
Giaûi thuaät naøy coù toác ñoä hoäi tuï nhanh, nhöng laïi raát phöùc taïp trong vieäc
tính ma traän Hessian cho caùc maïng neuron truyeàn thaúng. Ngöôøi ta ñöa ra moät
phöông phaùp xaáp xæ ma traän Hessian trong moãi thôøi kyø huaán luyeän, laø giaûi
thuaät BFGS quasi-Newton, aùp duïng caùc thuaät toaùn Broyden, Fletcher, Goldfarb
vaø Shanno (BFGS) ñeå caäp nhaät troïng soá keát noái.
Giaûi thuaät naøy ñoøi hoûi quaù trình huaán luyeän phaûi löu tröõ ma traän Hessian
xaáp xæ coù kích thöôùc nxn vôùi n laø soá troïng soá vaø ngöôõng cuûa maïng. Vì vaäy khi
moät maïng coù kích thöôùc nhoû (n nhoû), noù toû ra raát hieäu quaû, coøn khi maïng coù
kích thöôùc raát lôùn thì giaûi thuaät naøy coù theå maát raát nhieàu thôøi gian.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.29
# AÙp duïng BFGS quasi-Newton cho baøi toaùn 1
Sau 200 epochs, MSE = 5,7.10-5, hình 2.28.
0 20 40 60 80 100 120 140 160 180 200
10-5
100
P f i 5 73909 005 G l i 0er ormance s . e- , oa s
M
S
E
elapsed time: 76.18 s
Hình 2.28 Loãi cuûa giaûi thuaät BFGS quasi-Newton
Maïng aùp duïng cho baøi toaùn naøy coù kích thöôùc nhoû, neân giaûi thuaät BFGS
quasi-Newton cho toác ñoä hoäi tuï raát nhanh.
2.6.7 Giaûûi thuaäät Levenberg-Marquardt (Levenberg-Marquardt algorithm)
Giaûi thuaät Levenberg-Marquardt ñöôïc thieát keá ñeå ñaït toác ñoä huaán luyeän
baäc 2 maø khoâng caàn tính ma traän Hessian. Ma traän Hessian ñöôïc xaáp xæ nhö
bieåu thöùc (2.19)
H = JTJ (2.19)
Vaø gradient ñöôïc xaùc ñònh nhö (2.20)
g = JTe (2.20)
Trong ñoù J laø ma traän Jacobian chöùa caùc ñaïo haøm baäc nhaát cuûa haøm loãi
theo troïng soá vaø ngöôõng(∂e/∂wji), e laø veùctô loãi cuûa maïng.
Giaûi thuaät naøy caäp nhaät troïng soá theo nguyeân taéc sau, (2.21):
wji(n+1)=wji(n) – [JTJ + mI]-1 JTe (2.21)
Khi heä soá m = 0, thì ñaây chính laø giaûi thuaät Newton, duøng ma traän
Hessian xaáp xæ. Khi m lôùn, noù trôû thaønh giaûi thuaät gradient descent vôùi step
size (∆ji) nhoû. Giaûi thuaät Newton cho toác ñoä hoäi tuï nhanh hôn vaø ñoä chính xaùc
cao hôn giaûi thuaät gradient descent, do ñoù giaûi thuaät Levenberg-Marquardt coù
khuynh höôùng dòch veà phía giaûi thuaät Newton, nghóa laø heä soá m luoân coù giaù trò
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.30
nhoû. Trong quaù trình huaán luyeän, noù lieân tuïc giaûm giaù trò m sau moãi thôøi kyø
huaán luyeän xong, chæ taêng m khi naøo vieäc giaûm giaù trò m gaây ra loãi lôùn hôn.
# AÙp duïng giaûi thuaät Levenberg-Marquardt cho baøi toaùn 1
Sau 75 epochs, MSE = 4,4.10-6, hình 2.29.
0 10 20 30 40 50 60 70
10-6
10-4
10-2
100
102
P f i 4 43154 006 G l i 0er ormance s . e- , oa s
M
S
E
elapsed time: 111.06 s
Hình 2.29 Loãi cuûa giaûi thuaät Levenberg-Marquardt
Giaûi thuaät naøy cho toác ñoä hoäi tuï nhanh nhaát trong taát caû caùc giaûi thuaät ñaõ
khaûo saùt. Chæ caàn 75 thôøi kyø huaán luyeän, loãi bình phöông trung bình cuûa maïng
ñaït ñeán giaù trò raát thaáp.
2.6.8 So saùùnh caùùc giaûûi thuaäät
AÙp duïng cho baøi toaùn 1, vaøi giaûi thuaät huaán luyeän tieâu bieåu ñöôïc trình
baøy treân hình 2.30.
Caàn löu yù raèng moïi söï so saùnh ñeàu coù yù nghóa töông ñoái. Thoâng thöôøng
ngöôøi ta quan taâm ñeán toác ñoä hoäi tuï, söï oån ñònh cuûa maïng sau khi huaán luyeän,
khaû naêng toång quaùt hoùa cuûa maïng ñoái vôùi taát caû caùc maãu ñaõ huaán luyeän, …
Nhìn chung hieäu quaû cuûa giaûi thuaät phuï thuoäc vaøo nhieàu yeáu toá nhö: Ñoä
phöùc taïp cuûa baøi toaùn (nhaát laø khi quan heä giöõa caùc maãu döõ lieäu vaøo vaø caùc
maãu döõ lieäu ra mong muoán duøng ñeå huaán luyeän coù möùc ñoä phi tuyeán cao), muïc
ñích söû duïng maïng (xaáp xæ haøm, nhaän daïng, …), tieâu chuaån veà loãi (error goal),
soá löôïng maãu döõ lieäu huaán luyeän, cuõng nhö kích thöôùc maïng. Trong nhieàu
tröôøng hôïp moät giaûi thuaät coù theå raát hieäu quaû cho maïng naøy nhöng laïi raát toài teä
cho maïng khaùc.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.31
0 20 40 60 80 100 120 140 160 180 200
10-6
10-5
10-4
10-3
10-2
10-1
100
101
Performance is 0.106499, Goal is 0
200 Epochs
M
ea
n
S
qu
ar
e
E
rro
r
Levenberg-Marquardt
Resilient Backpropagation
BFGS-quasi Newton
Standard GD GD with m
GD with adaptive lr
GD with m/lr
Hình 2.30 So saùnh caùc giaûi thuaät huaán luyeän tieâu bieåu
Theo nhieàu taùc giaû, qua nghieân cöùu thöïc teá, ngöôøi ta ñaõ so saùnh ñöôïc thöù
töï caùc giaûi thuaät aùp duïng toát cho caùc maïng nhaän daïng ñoái töôïng nhö baûng 2.5
(thöù töï töø toát ñeán xaáu)
Baûng 2.5 So saùnh caùc giaûi thuaät huaán luyeän
Thöù töï Kyù hieäu Giaûi thuaät
1 LM trainlm – Levenberg-Marquardt
2 BFG trainbfg – BFGS Quasi-Newton
3 RP trainrp – Resilient backPropagation
4 SCG trainscg – Scaled Conjugate Gradient
5 CGB traincgb – C.G. with Powell/Beale Restarts
6 CGF traincgf – Fletcher-Powell Conjugate Gradient
7 CGP traincgp – Polak-Ribieùre Conjugate Gradient
8 OSS trainoss – One-Step Secant
9 GDX Traingdx – Gradient Descent with m & adaptive lr
10 GDA Traingda – Gradient Descent with adaptive lr
11 GDM Traingdm – Gradient Descent with momentum
12 GD Traingd – Standard Gradient Descent
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.32
2.7 Qui trình thieát keá maïng Neuron öùng duïng
Qui trình thieát keá moät maïng neuron öùng duïng nhö hình 2.31 [2].
Hình 2.31 Qui trình thieát keá maïng neuron öùng duïng
Xaùc ñònh baøi toaùn
Xaùc ñònh caùc bieán
vaøo/ra
Thu thaäp döõ lieäu
Tieàn xöû lyù döõ lieäu
Choïn moâ hình
maïng neuron
Huaán luyeän maïng
Thöû nghieäm maïng
Ñaït ?
Tinh chænh maïng
Ñaït ?
ÖÙng duïng
Keát thuùc
Baét ñaàu
Ñaït
Khoâng
Ñaït
Khoâng
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.33
2.8 Vaøi kyõ thuaät phuï trôï
Ñeå thieát keá vaø öùng duïng maïng neuron moät caùch hieäu quaû, ñoøi hoûi ngöôøi
thieát keá phaûi coù moät soá kinh nghieäm nhaát ñònh. Sau ñaây laø vaøi kyõ thuaät phuï trôï
nhaèm giaûm bôùt nhöõng khoù khaên vöôùng maéc trong quaù trình thieát keá maïng.
2.8.1 Tieààn xöûû lyùù döõõ lieääu
Noùi chung khi möùc ñoä phöùc taïp cuûa baøi toaùn taêng leân, caàn phaûi thu thaäp
nhieàu maãu döõ lieäu huaán luyeän. Luùc ñoù vaán ñeà huaán luyeän trôû neân khoù khaên
hôn, giaûi thuaät huaán luyeän khoù hoaëc raát laâu hoäi tuï, ñaëc bieät khi söï töông quan
giöõa caùc maãu döõ lieäu coù ñoä phi tuyeán cao. Coù vaøi kyõ thuaät tieàn xöû lyù döõ lieäu
(preprocessing) nhö sau:
# Phöông phaùp chuaån hoùa döõ lieäu huaán luyeän
Tröôùc khi huaán luyeän ta coù theå chuaån hoùa döõ lieäu maãu theo moät tæ leä nhaát
ñònh sao cho döõ lieäu vaøo/ra cuûa noù naèm trong moät khoaûng giôùi haïn naøo ñoù,
thöôøng thì khoaûng naøy laø [-1 1], xem hình 2.32.
0 200 400 600 800 1000
-5
0
5
Training data before preprocessing
0 200 400 600 800 1000
-1
-0.5
0
0.5
1
Training data after preprocessing
input data
desired data
input data
desired data
Hình 2.32 Chuaån hoùa döõ lieäu maãu tröôùc khi huaán luyeän
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.34
Giaûi thuaät chuaån hoùa raát ñôn giaûn nhö (2.22), goïi p laø veùctô döõ lieäu caàn
xöû lyù, maxp vaø minp laø giaù trò cöïc ñaïi vaø cöïc tieåu töông öùng cuûa p, ps laø veùctô
döõ lieäu sau khi tieàn xöû lyù, thì:
ps = 2*(p-minp)/(maxp-minp) – 1 (2.22)
Khi ta huaán luyeän maïng vôùi taäp döõ lieäu ñaõ chuaån hoùa, thì caùc troïng soá vaø
ngöôõng seõ ñöôïc ñieàu chænh theo taäp döõ lieäu naøy. Vì vaäy khi söû duïng maïng, keát
quaû thu ñöôïc phaûi coù thao taùc haäu xöû lyù. Goïi pn laø veùctô ngoõ ra thöïc teá cuûa
maïng (ñaõ huaán luyeän xong baèng taäp döõ lieäu chuaån hoùa) khi ta aùp duïng moät
veùctô vaøo naøo ñoù, p laø veùctô döõ lieäu thu ñöôïc sau khi haäu xöû lyù, thì:
p = 0.5(pn+1)*(maxp-minp) + minp (2.23)
Vôùi minp vaø maxp laø giaù trò cöïc tieåu vaø cöïc ñaïi töông öùng cuûa döõ lieäu
trong (2.22).
# Phöông phaùp trò trung bình vaø ñoä leäch chuaån
Phöông phaùp tieàn xöû lyù thöù hai laø laøm cho taäp döõ lieäu maãu coù trung bình
baèng zero (mean = 0) vaø ñoä leäch chuaån baèng 1 (standard deviation =1), nhö
hình 2.33.
0 200 400 600 800 1000
-5
0
5
Training data before preprocessing
0 200 400 600 800 1000
-2
-1
0
1
2
Training data after preprocessing
input data
desired data
input data
desired data
Hình 2.33 Tieàn xöû lyù döïa vaøo trung bình vaø ñoä leäch chuaån
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.35
Giaûi thuaät nhö (2.24), goïi p laø veùctô döõ lieäu vaøo caàn xöû lyù, meanp vaø stdp
laø trung bình vaø ñoä leäch chuaån cuûa p (MATLAB 5.3 coù hoå trôï haøm MEAN &
STD), ps laø veùctô thu ñöôïc sau xöû lyù, thì:
ps = (p-meanp)/stdp (2.24)
Töông töï nhö phöông phaùp thöù nhaát, caàn phaûi xöû lyù keát quaû ra thöïc teá cuûa
maïng ta môùi thu ñöôïc giaù trò bình thöôøng cuûa döõ lieäu.
p = stdp*pn + meanp (2.25)
2.8.2 Khaûû naêêng toåång quaùùt hoùùa cuûûa maïïng
Moät trong caùc vaán ñeà xuaát hieän trong quaù trình huaán luyeän maïng ñoù laø söï
quaù khôùp (overfitting). Khi kieåm tra maïng baèng taäp döõ lieäu huaán luyeän thì keát
quaû cho loãi raát thaáp, nhöng khi ta aùp duïng moät taäp döõ lieäu môùi thì loãi laïi raát
lôùn. Maïng ñaõ nhôù maãu döõ lieäu huaán luyeän moät caùch chính xaùc, nhöng noù laïi
khoâng ñöôïc hoïc ñeå toång quaùt hoùa caùc tình huoáng môùi [3,9,10].
Ñeå caûi thieän vaán ñeà quaù khôùp, ngöôøi ta ñöa ra 2 phöông phaùp ñoù laø, ñònh
nghóa laïi haøm muïc tieâu vaø phöông phaùp ngöøng sôùm.
# Phöông phaùp ñònh nghóa laïi haøm muïc tieâu
Thoâng thöôøng haøm muïc tieâu ñöôïc ñònh nghóa nhö (2.15), bieåu dieãn döôùi
daïng moät toång bình phöông trung bình cuûa loãi, töùc laø
∑∑
==
−===
N
1i
2
ii
N
1i
2
i )at(N
1e
N
1MSEF (2.26)
Ñeå khaéc phuïc vaán ñeà quaù khôùp, ngöôøi ta ñònh nghóa laïi haøm muïc tieâu
baèng caùch theâm vaøo moät thaønh phaàn coù toång bình phöông trung bình cuûa troïng
soá vaø ngöôõng MSW, nhö (2.27) [3,9].
MSEreg = γMSE + (1-γ)MSW (2.27)
Trong ñoù γ laø haèng soá tæ leä, vaø
∑
=
=
n
1j
2
jwn
1MSW (2.28)
vôùi n laø soá troïng soá vaø ngöôõng cuûa maïng.
Vieäc aùp duïng haøm muïc tieâu naøy (2.27), laøm cho caùc troïng soá vaø ngöôõng
cuûa maïng coù giaù trò nhoû hôn, vaø do ñoù ñaùp öùng cuûa maïng cuõng nhaün hôn
(smoother), giaûm ñöôïc söï quaù khôùp.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.36
Nhöôïc ñieåm lôùn nhaát cuûa phöông phaùp naøy laø raát khoù xaùc ñònh haèng soá tæ
leä γ. Neáu γ quaù lôùn thì khoâng caûi thieän ñöôïc vaán ñeà quaù khôùp, coøn neáu γ quaù
nhoû, thì maïng laïi khoâng khôùp vôùi maãu huaán luyeän.
# Phöông phaùp ngöøng sôùm
Phöông phaùp naøy ñoøi hoûi chia döõ lieäu huaán luyeän thaønh 3 taäp: taäp huaán
luyeän, taäp giaùm saùt (validation) vaø taäp kieåm tra. Taäp huaán luyeän duøng ñeå ñieàu
chænh troïng soá vaø ngöôõng cuûa maïng (huaán luyeän maïng), taäp kieåm tra duøng ñeå
thöû nghieäm maïng sau khi ñaõ huaán luyeän xong. Taäp giaùm saùt cuõng coù vai troø
nhö taäp kieåm tra, nhöng noù ñöôïc aùp duïng vaøo maïng ngay trong quaù trình huaán
luyeän. Phöông phaùp ngöøng sôùm (Early stopping) yeâu caàu phaûi hieån thò loãi cuûa
maïng ñoái vôùi taäp giaùm saùt ngay sau moãi thôøi kyø huaán luyeän. Quan saùt loãi naøy,
trong quaù trình huaán luyeän noù lieân tuïc giaûm, nhöng ngay thôøi ñieåm loãi naøy baét
ñaàu taêng leân thì vaán ñeà quaù khôùp cuõng baét ñaàu xaûy ra, phaûi ngöøng huaán luyeän
ngay thôøi ñieåm ñoù.
Cuoái moãi thôøi kyø huaán luyeän cuõng neân hieån thò loãi cuûa maïng ñoái vôùi taäp
kieåm tra. Neáu giaù trò nhoû nhaát cuûa loãi cuûa maïng ñoái vôùi taäp kieåm tra khoâng
khôùp vôùi thôøi ñieåm ngöøng huaán luyeän maïng, ñöôïc quyeát ñònh do quan saùt loãi
ñoái taäp giaùm saùt, ñieàu ñoù coù nghóa laø ta ñaõ phaân chia (thaønh 3 taäp) döõ lieäu maãu
khoâng ñuùng. Caàn phaûi chia laïi taäp döõ lieäu maãu, vaø baét ñaàu laïi quaù trình huaán
luyeän.
Öu ñieåm cuûa phöông phaùp ngöøng sôùm laø vöøa giaûi quyeát ñöôïc vaán ñeà quaù
khôùp vöøa coù cô sôû ñeå keát thuùc quaù trình huaán luyeän giuùp tieát kieäm thôøi gian.
Nhöng nhöôïc ñieåm lôùn nhaát cuûa noù laø khoâng bieát phaûi chia taäp maãu nhö theá
naøo cho toái öu, phaûi chaêng vaãn duøng phöông phaùp coá höõu laø ‘thöû vaø sai’. Coù
vaøi taùc giaû cho raèng cöù huaán luyeän maïng ñaït tôùi hoäi tuï roài sau ñoù quay laïi xaùc
ñònh xem thôøi kyø huaán luyeän naøo ñaõ cho loãi thích hôïp lyù nhaát, söû duïng troïng soá
vaø ngöôõng cuûa thôøi kyø ñoù.
2.8.3 Kích thöôùùc toáái öu cuûûa maïïng
Choïn caáu truùc maïng ñuùng goùp phaàn naâng cao hieäu quaû cuûa maïng vaø giaûm
thôøi gian huaán luyeän. Neáu ta choïn maïng coù quaù nhieàu nuùt, maïng seõ raát deã bò
quaù khôùp, cuõng gioáng nhö caùc moâ hình thoáng keâ, caùc maïng neuron quaù lôùn deã
daãn ñeán tình traïng quaù thöøa tham soá, loãi thoáng keâ seõ lôùn. Neáu ta choïn maïng coù
kích thöôùc quaù nhoû chuùng seõ khoâng theå nhôù ñöôïc caùc maãu huaán luyeän, khoâng
coù khaû naêng bieåu dieãn ñöôïc söï phuï thuoäc cuûa keát quaû mong muoán.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.37
Moät yù töôûng ñôn giaûn ñeå choïn kích thöôùc maïng, nhöng deã thöïc hieän ñoù laø
tìm kieám leo ñoài (hill-climbing) baèng 1 trong 2 caùch [2,14]:
♦ Baét ñaàu töø maïng coù kích thöôùc lôùn, sau ñoù giaûm daàn xuoáng.
♦ Baét ñaàu töø maïng coù kích thöôùc nhoû, roài taêng daàn leân.
Moät kyõ thuaät khaùc coù theå aùp duïng ñeå xaùc ñònh kích thöôùc maïng laø phöông
phaùp ‘Toån thöông toái öu’, ñoù laø loaïi boû taát caû caùc keát noái coù troïng soá baèng
khoâng (0), thöïc nghieäm cho thaáy raèng baèng phöông phaùp naøy coù theå loaïi boû
ñöôïc ¾ caùc keát noái, do ñoù naâng cao ñaùng keå hieäu quaû cuûa maïng [2].
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.38
2.9 Toùm taét
Maïng neuron nhaân taïo laø moät lónh vöïc khoa hoïc roäng lôùn. Töø thaäp nieân
40 ñeán nay, noù khoâng ngöøng phaùt trieån vaø ñöôïc öùng duïng trong haàu heát caùc
lónh vöïc, töø nhöõng lónh vöïc phuïc vuï cuoäc soáng ñôøi thöôøng nhö giaûi trí, y teá, …
cho ñeán caùc öùng duïng quan troïng trong cuoäc caùch maïng khoa hoïc kyõ thuaät
nhaèm chinh phuïc khoaûng khoâng vuõ truï. Noùi nhö theá cho thaáy khoù coù theå trình
baøy heát caùc vaán ñeà veà maïng neuron, thaäm chí coøn nhieàu vaán ñeà ñang vaø caàn
tieáp tuïc nghieân cöùu.
Maëc duø söï hieåu bieát coøn keùm coûi vaø thôøi gian tieáp caän maïng neuron chöa ñuû
laâu, nhöng trong chöông naøy ngöôøi thöïc hieän ñaõ coá gaéng toång keát nhöõng gì goïi laø cô
baûn nhaát, töø nhöõng yù töôûng ban ñaàu ñeå xaây döïng moät neuron nhaân taïo cho ñeán nhöõng
kyõ thuaät nhaèm taêng cöôøng hieäu quaû cuûa moät maïng neuron nhieàu lôùp.
- Vieäc trình baøy moâ hình neuron sinh hoïc, cho thaáy yù töôûng vaø nguyeân taéc
ñeå xaây döïng moät neuron nhaân taïo, cuõng nhö söï so saùnh giöõa chuùng giuùp
hieåu roõ hôn veà hoaït ñoäng cuûa neuron nhaân taïo, laáy ñoù laøm cô sôû ñeå phaùt
trieån thaønh maïng neuron nhaân taïo (goïi taét laø maïng neuron).
- Chöông naøy cuõng ñaõ trình baøy vieäc phaân loaïi caùc maïng neuron vaø caùc giaûi
thuaät huaán luyeän chuùng. Do muïc tieâu öùng duïng cuûa ñeà taøi laø duøng maïng
neuron ñeå nhaän daïng moâ hình ñoái töôïng chöa bieát thoâng soá, neân ngöôøi thöïc
hieän ñaõ nghieâng veà phía caùc giaûi thuaät hoïc coù giaùm saùt (töùc hoïc coù thaày
cho ‘ñaùp soá’ (desired output), ñoù chính laø ngoõ ra cuûa thieát bò, noùi caùch khaùc
öùng duïng maïng neuron trong ñeà taøi naøy laø döïa vaøo caùc input/output quaù
khöù cuûa ñoái töôïng ñeå nhaän daïng moâ hình cuûa noù). Coøn caùc giaûi thuaät hoïc
khoâng giaùm saùt chæ ñöôïc trình baøy döôùi daïng giôùi thieäu cô baûn. Bôûi vì ñoái
vôùi caùc giaûi thuaät naøy, maëc duø khoâng ñoøi hoûi ngoõ ra ñuùng, nhöng noù laïi ñoøi
hoûi ngoõ vaøo phaûi mang nhieàu thoâng tin chính xaùc veà heä thoáng, trong khi ñoái
töôïng seõ nhaän daïng trong ñeà taøi khoâng cho pheùp bieát ñöôïc moät thoâng soá
naøo ñeå xaây döïng taäp döõ lieäu huaán luyeän. Vì vaäy khoù coù theå duøng phöông
phaùp hoïc khoâng giaùm saùt ñeå aùp duïng cho ñeà taøi. Tuy nhieân, hoïc khoâng
giaùm saùt laø moät kyõ thuaät ñaõ haáp daãn ngöôøi thöïc hieän ñeán möùc khoâng theå
khoâng nghieân cöùu trong thôøi gian saép tôùi, nhaát laø giaûi thuaät di truyeàn hoïc
(genetic algorithm).
- Baèng caùc thöïc nghieäm so saùnh ñaõ giuùp ngöôøi thöïc hieän coù söï choïn löïa giaûi
thuaät toát ñeå aùp duïng xuyeân suoát ñeà taøi. Ñoù laø giaûi thuaät Levenberg-
Marquardt aùp duïng cho maïng truyeàn thaúng nhieàu lôùp (Multi-layer
feedforward neural network). Töø chöông naøy veà sau, ngöôøi thöïc hieän luoân
söû duïng maïng naøy vaø giaûi thuaät huaán luyeän Levenberg-Marquardt.
Vôùi nhöõng hieåu bieát cô baûn naøy, chöông sau ta baét ñaàu öùng duïng maïng
neuron ñeå nhaän daïng moâ hình cuûa ñoái töôïng.
2
Luaän aùn Cao hoïc
Chöông 2 - Maïng neuron nhaân taïo 2.39
Taøi lieäu tham khaûo chöông 2
[1]. Marilyn McCord Nelson & W.T. Illingworth, A Practical Guide to Neural
Nets, Addison-Wesley Publishing Company, 1991.
[2]. Nguyeãn Hoaøng Phöông, Buøi Coâng Cöôøng, Nguyeãn Doaõn Phöôùc, Phan
Xuaân Minh & Chu Vaên Hyû, Heä môø vaø ÖÙng duïng, phaàn 4: Maïng Nôron, Heä
thoáng Nôron môø vaø öùng duïng (pp. 311-414), Nxb Khoa hoïc Kyõ thuaät, 1998.
[3]. Howard Demuth & Mark Beale, Neural Network ToolBox User’s Guide
Version 4.0, The MathWorks, Inc., 2000.
[4].
[5].
[6]. Leâ Minh Trung, Giaùo trình Maïng Nôron nhaân taïo, Nxb Thoáng keâ, 1999.
[7].Duc Truong Pham & Liu Xing, Neural networks for Identification,
Prediction and Control, Springer-Verlag London Limited, 3rd printing 1997.
[8]. Bernd Fritzke, Some Competitive Learning Methods, Systems Biophysics
Institute for Neural Computation, Ruhr-University Bochum, 1997.
[9]. Howard Demuth & Mark Beale, Neural Network ToolBox User’s Guide
Version 3.0, The MathWorks, Inc., 1998.
[10]. Nguyeãn Ñình Thuùc, Trí Tueä Nhaân Taïo – Maïng Nôron Phöông phaùp vaø
ÖÙng duïng, Nxb Giaùo duïc, 2000
[11]. Robert Hecht-Nielsen, NeuroComputing, Addison-Wesley Publishing
Company, 1990.
[12]. James A. Freeman, Simulating Neural Networks with Mathematica,
Addison-Wesley Publishing Company, 1994.
[13]. Helge Ritter, Thomas Martinetz & Klaus Schulten, Neural Computation
and Self-Organizing Maps, Addison-Wesley Publishing Company, 1992.
[14]. Elaine Rich & Kevin Knight, Artificial Intelligence, McGraw-Hill, Inc.,
Second edition, 1991.
2
Các file đính kèm theo tài liệu này:
- nnets_chapterfromngon_smengthesis_1174.pdf