CH NG 1 : M N GN RON VÀ QUÁ TRèNH HC C AM N GN RON
2.3 Minh ha th ut toỏn
2.3.3.4. Thủ tục huấn luyện mạng, HUANLUYENVUOTKHE()
Trong th t М nƠв Мú m t Яũng lặp Нo…аhile, mỗi Яũng lặp lƠ m t b М lặp trong quп trỡnh luв n m ng. M t trong hai в u t k t thỳМ Яi М huấn luв n m ng lƠ, n u giп tr hƠm m М tiờu đ t t i sai s epsilon=0.06, hoặМ s b М lặp Я t quп 3000 lần lặp. N u в u t th nhất th a mƣn thỡ m ng đ М huấn luв n бong ЯƠ sẵn sƠng Мho ng i Нựng s Н ng m ng, Мũn n u gặp в u t th hai thỡ Мoi nh Яi М huấn luв n m ng b thất b i.
HUANLUYENVUOTKHE()s g i TINHBUOCHOCVUOTKHE() mỗi m t lần lặp
đ Мú đ М b М h М Я t khe, sau đú BUOCLAP() s đ М g i đ lan truв n ti n, tớnh toпn đầu ra. M t th t М DIEUCHINHTRONGSO() s đ М g i ti p ngaв sau đú đ đi u Мhỉnh МпМ tr ng s l p ẩn ЯƠ l p ra Нựa ЯƠo thụng tin Я sai s đầu ra so Я i t p m u đớМh Мựng Я i b М h М Я t khe.
Trong gúi phần m m Мũng đ a thờm hai th t М, m t lƠ
HUANLUYENCODINH(), th t М nƠв s huấn luв n m ng Я i b М h М Мh n М đ nh
lƠ 0.2 ЯƠ th hai lƠ HUANLUYENGIAMDAN() Я i b М h М giảm Нần tớnh theo Мụng th М (2.20) đ giỳp ta so sпnh Я i МпМh huấn luв n theo b М h М tớnh theo nguвờn lý Я t khe. M М 2.3.4.2 trong Мh ng nƠв s th ng kờ 20 lần luв n m ng Я i ba th t М nƠв. _ _ * _ _ a so buoc lap b c toc do hoc (2.20) Trong đú a, b, М lƠ МпМ hằng s . 2.3.4. K t qu ch y ch ng trỡnh vƠ so sỏnh 2.3.4.1. Chạy chương trỡnh
Sau khi l p trỡnh bằng Visual C++, Мh в Мh ng trỡnh, Мhỳng ta Мần lựa Мh n m t trong ba ph ng пn từ bƠn phớm: М, g, Я t ng ng Я i Яi М lựa Мh n b М h М М đ nh (Яi t tắt lƠ М), b М h М giảm Нần theo Мụng th М (2.20) (Яi t tắt lƠ g), haв b М h М Я t khe tớnh theo thu t toпn Я t khe bằng th t М
70
TINHBUOCHOCVUOTKHE() (Яi t tắt lƠ Я) đ М s Н ng đ luв n m ng. CпМh th М
nh p từ bƠn phớm đ lựa Мh n b М h М đ М mụ tả ngaв sau đơв:
LUA CHON LOAI BUOC HOC
CO DINH: c, GIAM DAN: g, NGUYEN LY VUOT KHE: v v [enter]
Quп trỡnh luв n m ng bắt đầu, n u quп trỡnh tỡm ki m b tr ng s m ng thất b i thỡ Мh ng trỡnh s thụng bпo rằng quп trỡnh luв n m ng thất b i, Мũn n u Яi М luв n m ng thƠnh Мụng thỡ Мh ng trỡnh s Мho Мhỳng ta bi t s b М lặp М a quп trỡnh luв n m ng; k t quả М a hai ma tr n tr ng s l p ẩn ЯƠ l p ra ЯƠ вờu Мầu Мhỳng ta đ a ЯeМ-t б đầu vào đ ki m tra m ng. CпМh th М nh p ЯeМ-t б từ bƠn phớm nh sau (g m Мú 7 hƠng, mỗi hƠng 5 giп tr ; giп tr hoặМ 0 hoặМ lƠ 1), Яớ Н ta nh p mƣ М a s 6 0 0 1 1 0 0 1 0 0 0 1 0 0 0 0 1 1 1 1 0 1 0 0 0 1 1 0 0 0 1 0 1 1 1 0 VƠ Мhỳng ta Мh Мơu trả l i М a m ng. *******************************************
* CHUONG TRINH HUAN LUYEN MANG NO-RON * * BUOC HOC TINH THEO NGUYEN LY VUOT KHE * *******************************************
DANG HUAN LUYEN MANG THEO BUOC VUOT KHE... MANG DA DUOC HUAN LUYEN XONG SAU: 34 BUOC LAP! MA TRAN TRONG SO LOP AN MTTSLA[slnrlv][slnrla]:
71 -0.714510 -0.330939 +0.718113 -0.010856 +1.041344 +0.203121 -0.493358 -0.615304 +1.198389 +1.225473 +0.680735 +0.133827 -1.207137 -0.042108 +1.715010 +0.013734 -0.783505 +0.020761 +0.770050 -0.108593 +0.823171 -1.643064 +1.088796 -1.139771 -0.177110 +0.773920 +0.239387 -1.654652 +0.578060 -0.869230 +0.727297 -0.028404 +0.788829 -1.379023 -1.399395 +0.630254 +0.221009 -0.569163 +0.697461 +1.071346 -0.596292 -0.348468 -0.012247 +0.122078 +1.245557 -1.321880 -0.141454 -0.235088 +2.864328 +1.306939 +0.129423 +0.415885 -0.756748 +0.563398 +0.069821 +0.516451 +0.032283 +0.209667 -0.963300 -0.187824 +1.728189 -0.967244 -1.690552 -0.385068 -0.347820 +1.109388 +0.452760 -0.649945 -1.479361 -0.492071 -0.545680 +0.580958 -0.643666 -0.058043 +0.681030 -0.139105 +0.502492 -0.103526 -0.416014 +1.761168 -0.466114 +1.729941 +0.325881 +0.715679 -0.409421 -0.666974 +1.983714 +0.425334 -0.192603 +1.008505 -0.766750 +0.952648 -0.091599 -0.618372 +0.769775 +0.390731 -0.222322 -1.175726 -0.874193 -0.480719 +0.303599 -0.226470 +0.460789 -0.324308 -0.687494 -0.466552 -0.199729 +0.305401 -0.112127 -0.616490 -1.078721 +0.571089 +1.299650 -0.068734 +0.194324 -1.218586 +1.362693 +0.992297 +1.284863 +0.102053
72 -0.601627 +0.353629 +1.566376 -0.162777 -1.226421 +0.335808 +0.359233 -0.639406 +1.286489 -0.565971 +0.091049 +0.309190 -0.607970 -0.996621 +0.297518 -0.203598 +0.343273 +0.885806 -1.437262 +0.819597 -0.382919 +0.682280 +0.220937 +0.767746 -2.170041 +0.120224 +0.210313 +0.441168 +0.792983 -1.223393 +0.468991 +0.842258 -1.504078 +0.576556 +0.084106 -0.352618 -1.862809 +0.389202 +1.284403 +0.617516 -0.908492 -1.645394 +1.693434 -0.538605 +0.292108 +0.802787 +1.271673 -0.906446 +1.124133 -0.188477
MA TRAN TRONG SO LOP RA MTTSLR[slnrla][slnrlr]:
+2.951620 -4.526521 -3.790868 -2.230710 -1.738504 -2.769717 +1.312588 -4.664436 -2.827789 +2.371747 -0.364274 +2.201062 -3.916823 -3.320487 -4.069728 -1.782830 -4.044702 +3.170280 -4.158247 -3.187445 -6.282814 +0.281494 -1.669756 +1.434243 +1.132807 -2.987375 -3.486474 -0.478021 -4.107324 +4.076324 -1.912957 -2.763546 -3.092701 +1.134861 +2.352585 -5.310641 +3.295428 +0.162167 -2.746308 -2.727656 -2.506175 -2.950514 +0.563975 +2.650147 -2.085773 -2.361584 -0.225960 -4.947299 +3.709565 -3.014404 FINISH.
73
2.3.4.2. So sỏnh cỏc phương ỏn
Chỳng ta s lần l t luв n m ng theo ba ph ng пn, ph ng пn th nhất lƠ b М h М М đ nh bằng 0.2, ph ng пn th hai lƠ b М h М giảm Нần (bắt đầu từ giп tr 1) sau mỗi b М lặp theo Мụng th М (2.20), ph ng пn th ba lƠ b М h М tớnh theo nguвờn lý Я t khe. Mỗi ph ng пn, Мhỳng ta th luв n 20 lần Мho m t t p h s luв n m ng. K t quả Мho ta bảng 2.2.
V i b М h М М đ nh, ta thấв rằng s b М lặp Мần Мú đ m ng đ М huấn luв n thƠnh Мụng lƠ rất l n, trung bỡnh lƠ 10000 Мhu kỳ, nguвờn nhơn Мú th Нo b М h М Мh n lƠ bц (0.2). Tuв nhiờn, n u th Мh n b М h М l n h n (0.3) thỡ k t quả lƠ s lần luв n m ng thất b i nhi u h n. Nh trong bảng 2.2 th ng kờ thỡ đƣ bảв lần thất b i trong tổng s 20 lần luв n m ng Я i b М h М lƠ 0.2.
V i b М h М tớnh theo Мụng th М (2.20) thỡ ba lần thất b i, s b М lặp đ luв n m ng thƠnh Мụng khп ổn đinh, tuв nhiờn Мhỳng ta Мũng thấв rằng, theo bảng 2.2 đƣ th ng kờ thỡ Я i b М h М tớnh theo nguвờn lý Я t khe, t М đ h i t Мao h n Я i trung bỡnh 37 b М lặp ta đƣ luв n m ng бong, s lần thất b i khi luв n m ng Мũng đ М giảm đi.
M t nh М đi m М a ph ng пn tớnh b М h М Я t khe lƠ Мhi phớ th i gian đ mпв tớnh б lý tớnh toпn b М h М trong mỗi b М lặp l n Нo ta đ nh nghĩa hằng s FD=1-e4 nh , thu t toпn s phải lặp nhi u lần đ thoпt kh i đi u ki n nƠв (b М 2 М a thu t toпn Я t khe). Tuв nhiờn, Я tổng Мhi phớ th i gian luв n m ng thỡ l i Мú l i h n.
74
Bảng 2.2: Tập hồ sơ mẫu đầu vào {0 1 2 3 4 5 6 7 8 9}
T B c h c c đ nh 0.2 B c h c gi m d n t 1 B c v t khe 1 Thất b i Thất b i Thất b i 2 7902 (b М lặp) 3634 (b М lặp) 23 (b М lặp) 3 7210 2416 50 4 12370 2908 34 5 Thất b i 2748 31 6 9700 3169 42 7 Thất b i 2315 43 8 10073 2375 33 9 11465 Thất b i 34 10 8410 2820 33 11 10330 2618 32 12 Thất b i 2327 39 13 Thất b i 3238 44 14 9652 2653 Thất b i 15 11980 2652 31 16 12607 Thất b i 53 17 Thất b i 2792 31 18 8165 2322 42 19 10130 2913 42 20 Thất b i 2689 33 T n g k t TB: 10000 b c l p, 7 th t b i/20 Trung bỡnh: 2740 b c l p, 3 th t b i/20 TB: 37 b c l p, 2 th t b i/20
75
Bảng 2.3: Tập hồ sơ mẫu đầu vào { a b c d e g h i k l}
T B c h c c đ nh 0.2 B c h c gi m d n t 1 B c v t khe 1 11212 (b М lặp) Thất b i 41 (b М lặp) 2 Thất b i 3735 (b М lặp) 28 3 8211 2436 49 4 11365 2868 34 5 8871 2848 35 6 Thất b i Thất b i 26 7 Thất b i 2341 33 8 11120 2165 36 9 10129 2769 35 10 8860 3220 32 11 9816 2210 32 12 Thất b i 2727 37 13 9712 3018 Thất b i 14 Thất b i 2571 44 15 10010 2541 37 16 11368 3186 33 17 Thất b i 2146 39 18 10923 Thất b i 32 19 Thất b i 2923 45 20 Thất b i 2678 31 T n g k t TB: 10133 b c l p, 8 th t b i/20 Trung bỡnh: 2728 b c l p, 3 th t b i/20 TB: 36 b c l p, 1 th t b i/20
76
2.4. K t lu n ch ng 2
Trong Мh ng 2, tпМ giả đƣ gi i thi u Я m t thu t toпn m i đ tỡm b М h М, phự h p Мho mặt lỗi Мú Н ng khe lƠ thu t toпn Я t khe. Đ Мú th tỡm đ М l i giải t i u Мho bƠi toпn s Н ng m ng n ron Мú mặt lỗi Н ng lũng khe, tпМ giả đƣ đ a ra mụ hỡnh k t h p thu t toпn Я t khe ЯƠ lan truв n ng М. Đú lƠ М s đ МƠi đặt thƠnh Мụng th t М huấn luв n m ng theo ph ng phпp Я t khe k t h p Я i kỹ thu t lan truв n ng М đi tỡm b tr ng s t i u. Đ Мh ng minh Мho đ бuất nƠв tпМ giả đƣ đ a ra m t Яớ Н Я nh n Н ng Мh Яi t taв ЯƠ Мú sự so sпnh gi a b М h М Я t khe Я i МпМ b М h М khпМ th ng haв đ М s Н ng trong Toolboб М a Matlab. CпМ k t quả mụ ph ng Мho thấв sự đỳng đắn М a đ бuất nƠв.
77
CH NG 3: Đ XU T MỌ HèNH K T H PGI I THU T DI TRUY N
VÀ THU T TOÁN V T KHE Đ C I TI N QUÁ TRèNH H C C A
M NG N RONMLP Cị M T L I Đ C BI T
Túm tắt: Trong chương này, tỏc giả sẽ trỡnh bày về việc ng dụng giải thuật di truyền để tỡm bộ trọng số khởi tạo ban đầu và vấn đề cài đặt thuật toỏn này kết hợp với thuật toỏn vượt khe nhằm nõng cao khả năng và tốc độ hội tụ trong quỏ trỡnh luyện mạng nơron.
3.1. Đặt Яấn đ
3.2. Luв n m ng n ronk t h p thu t toпn Я t khe ЯƠ giải thu t Нi truв n 3.3. Áp Н ng mụ hỡnh k t h p giải thu t Нi truв n ЯƠ thu t toпn Я t khe trong quп trỡnh luв n m ng n ron ЯƠo bƠi toпn nh n Н ng
3.4. K t lu n Мh ng 3
3.1. Đ t v n đ
Trong quп trỡnh luв n m ng n ron, hai в u t ảnh h ng m nh m đ n Яi М tỡm đ М b tr ng s t i u М a m ng lƠ b М h М ЯƠ ЯeМ-t kh i t o tr ng s ban đầu. Trong МпМ nghiờn М u nhằm Мải thi n thu t toпn, ng i tath ng tỡm МпМh thaв đổi b М h М đ Мho phцp Мú th Я t qua nh ng МựМ tr đ a ph ng. Khụng Мú m t giп tr b М h М бпМ đ nh nƠo Мho МпМ bƠi toпn khпМ nhau. V i mỗi bƠi toпn, b М h М th ng đ М lựa Мh n bằng thựМ nghi m theo ph ng phпp th ЯƠ sai, hoặМ s Мú b М h М phự h p Я i từng Н ng bƠi toпn riờng bi t. V i bƠi toпn mƠ mặt lỗi Мú Н ng lũng khe, Мh ng 2 đƣ đ бuất Яi М s Н ng thu t toпn Я t khe đ tỡm b М h М phự h p Я i mặt lỗi Н ng nƠв. Cũn m t nhơn t khпМ lƠ b tr ng s kh i t o ban đầu, nú Мú ảnh h ng М th th nƠo đ n k t quả М a luв n m ng n ron, đặМ bi t khi mặt lỗi Мú Н ng lũng khe. Đ đпnh giп nhơn t nƠв, tпМ giả th đi luв n m ng n ron trong m t s tr ng h p sau:
78
3.1.1. Kh o sỏt đ h i t c a quỏ trỡnh luy n m ng n ron bằng kỹ thu t lan
truy n ng c nguyờn th y v i cỏc b kh i t o tr ng s ban đ u khỏc
nhau.
Kỹ thu t lan truв n ng М đơв lƠ lan truв n ng М lỗi trong m ng, hƠm lỗi th ng Мh n lƠ hƠm mƠ nú t i thi u hoп đ М sai s trung bỡnh bỡnh ph ng. CпМh th М hi u Мhỉnh tr ng s М a thu t toпn lƠ ng М h ng Я i ЯeМt GraНient М a hƠm sai s trung bỡnh bỡnh ph ng. Đ i Я i m ng n ron nhi u l p thỡ hƠm sai s trung bỡnh bỡnh ph ng th ng ph М t p ЯƠ Мú nhi u МựМ tr М М b . CпМ giп tr kh i t o М a МпМ tr ng s ảnh h ng rất m nh đ n l i giải Мu i Мựng. N u МпМ tr ng s đ М kh i t o Я i giп tr l n thỡ ngaв từ đầu tổng tớn hi u ЯƠo đƣ Мú giп tr tuв t đ i l n ЯƠ lƠm Мho đầu ra М a m ng Мhỉ đ t 2 giп tr 0 ЯƠ 1. Đi u nƠв lƠm Мho h th ng s b tắМ t i m t МựМ ti u М М b hoặМ t i m t Яựng bằng phẳng nƠo đú gần ngaв đi m бuất phпt. CпМ tr ng s nƠв th ng đ М kh i t o bằng nh ng s ng u nhiờn nh . Theo nghiờn М u М a Wessels ЯƠ BarnarН [42], thỡ Яi М kh i t o МпМ tr ng s liờn k t wij nờn trong ph m Яi 3 ki,3 ki v i ki lƠ s liờn k t М a МпМ n ron j t i n ron i.
Hi n naв, b Мụng М Neural Netаork Toolboб đƣ tớМh h p sẵn m t s thu t toпn luв n m ng ЯƠ b М h М khпМ nhau đ Мhỳng ta lựa Мh n; Мũn b tr ng s ban đầu ph М Я Мho quп trỡnh luв n m ng đ ulấв ng u nhiờn trong m t khoảng nƠo đú.
Đ thấв rừ đ М sự ảnh h ng М a ЯeМ-t kh i t o tr ng s ban đầu đ n đ h i t М a quп trỡnh luв n m ng n ronta бцt hai Яớ Н sau:
a). Xột hệ thống phi tuyến tĩnh cần nhận dạng cú mụ hỡnh toỏn học như sau:
y(u) = 0.6 sin(.u) + 0.3 sin(3..u) + 0.1 sin (5..u)
Chỳng ta phпt tớn hi u u(k) = sin(2.k/250) ЯƠo h th ng trờn ЯƠ đo tớn hi u ra в(k). S Н ng b m u (u(k),в(k)) nƠв đ luв n m ng.
M ng n ronđ М Нựng lƠ m ng truв n thẳng 3 l p, Мú m t đầu ЯƠo, m t đầu ra. L p nh p Мú 8 neural, l p ẩn Мú 8 neural, l p ra Мú 1 neural, hƠm kớМh ho t М a Мả 3 l p đ u lƠ hƠm tansig. Sai s Мho phцp đ luв n m ng thƠnh Мụng lƠ 10-5. Ta s Н ng kỹ thu t lan truв n ng М Я i b М h М М đ nh bằng 0.2.
79
G i IW1,1lƠ ma tr n tr ng s l p nh p, ma tr n Мú 1 hƠng 8 М t. G i LW2,1 là ma tr n tr ng s l p ẩn, ma tr n Мú 8 hƠng, 8 М t. G i LW3,2 lƠ ma tr n tr ng s l p ra, ma tr n Мú 8 hƠng, 1 М t. V i mỗi lần luв n m ng khпМ nhau t М Я i b tr ng s ban đầu [IW1,1, LW2,1, LW3,2] lựa Мh n ng u nhiờn khпМ nhau Мhỳng ta l i thu đ М m t b tr ng s t i u khпМ nhau, s kỷ nguвờn luв n m ng (KNLM) Мũng khпМ nhau. C th : Bảng 3.1 TT KNLM Sai s (10-6) TT KNLM Sai s (10-6) 1 66 9.8065 8 24 9.9681 2 11 5.8464 9 45 9.1789 3 28 9.8923 10 62 9.5743 4 22 9.4931 11 55 9.2574 5 46 9.9981 12 37 9.6842 6 29 9.9062 13 29 7.1969 7 207 9.5439 14 60 9.2586
Căn М ЯƠo bảng 3.1 ta thấв Я i m t thu t toпn khụng đổi, Мấu trỳМ, tham s М a m ng Мh n nh nhau thỡ k t quả М a quп trỡnh luв n m ng ph thu М ЯƠo b kh i t o tr ng s ban đầu.
b). Xột hệ thống động học phi tuyến cần nhận dạng cú mụ hỡnh toỏn học như
sau:
y = 0.00005 - 0.05y - 0.0005u ậ 0.5uy
Chỳng ta phпt m t tớn hi u ng u nhiờn Мú gi i h n Я biờn đ từ 0 đ n 2L/seМ Я i th i gian lấв m u lƠ 0.1s ЯƠo h th ng trờn ЯƠ đo tớn hi u ra. Lấв t p m u ЯƠo, ra nƠв đ luв n m ng, Tổng th i gian đặt lƠ 100 s, do đú s t o ra đ М 1000 b m u ЯƠo ra Н i Н ng m t mảng Н li u.
Cấu trỳМ m ng n ronđ М Мh n nh sau:
M ng g m Мú hai l p: L p vào cú 4 n ron, hƠm kớМh ho t lƠ hƠm tansig; l p ra cú 1 n ron, hƠm kớМh ho t lƠ hƠm purelin.
80 IW1,1lƠ ma tr n tr ng s l p nh p, ma tr n Мú 1 hƠng 4 М t.