Một thuật toán về huấn luyện mạng Neural Networks trên cơ sở phương pháp Conjugate Gradient
BẢN TÓM TẮT
Mạng Neuron nhân tạo có cấu trúc gồm nhiều neuron nằm trong các lớp khác nhau. Tín hiệu
ở lớp vào và lớp ra liên hệ với nhau qua các neuron trung gian nằm trên một hay một số lớp ẩn
thông qua ma trận trọng số mạng. Quá trình huấn luyện mạng, hay còn gọi là quá trình học của
mạng trong học gíam sát bao hàm việc điều chỉnh, cập nhật ma trận trọng số sao cho ứng với tâp
tín hiệu vào xác định, tín hiệu ra của mạng tiệm cận tới giá trị mong muốn. Một trong những vấn
đề cần quan tâm trong huấn luyện mạng, đặc biệt trong huấn luyện trực tuyến là tốc độ hội tụ
của quá trình huấn luyện. Trong nghiên cứu này, chúng tôi xây dựng một thuật toán mới (TT*)
được xây dựng trên cơ sở phương pháp Conjugate Gradient, theo đó, bước dịch chuyển tại mỗi
vòng lặp trong [1],[2],[3] được điều chỉnh bởi một hệ số hiệu chỉnh nhằm đưa bước dịch chuyển
trọng số tiến gần hơn điểm cực tiểu theo hướng dịch chuyển cận tối ưu đã xác định. Kết quả thí
nghiệm kiểm chứng cho thấy nếu ma trận trọng số của mạng không lớn, sử dụng thuật toán
TT* có tốc độ hội tụ cao hơn thuật toán [1],[2],[3].
n đúng tới đạo hàm bậc hai tại các điểm lân cận của X0 như sau: - Dạng đúng: 00 0 ( ) ( ) | ( )Tr X XF X F X E X X== + ∇ − + 0 2 0 0 1 ( ) | ( ) 2! T X X 2X X F X X= R− ∇ − + (14) - Dạng gần đúng: 00 0 ( ) ( ) | ( )T X XF X F X E X X== + ∇ − + 0 2 0 1 ( ) | ( 2! T X X 0 )X X F X X=− ∇ − (15) trong đó, 3 ).(.)[()( ! ξEXXXXR TT 2002 3 1 ∇−∇−= )].( 0XX − và ξ là một điểm nằm trong khoảng X và X0 thì các điểm cực trị của hai hàm F(X) và Fr(X) không trùng nhau. Chứng minh: Từ (15) ta có: T 0 0[ F (X )( )]+F X∇ =∇ ∇ − X 20 0 1 . [( ) F(X )( 2 T 0 )]X X X∇ − ∇ − X ) = 0 0 2 0| | .(X X X XF F X X= =∇ −∇ + X=X= ∂ ∂ ∂ ∂ ∂ ∂ ở đây: XT = [x1 x2 xk] ; 0 01 02 0k[x x ...x ] TX = ∇ 00 1 2 k ( ) [ F/ x , F/ x ,..., F/ x ]|TF X 0 0 2 2 2 2 1 1 2 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1 2 | k X X k k k k X X F F F x x x x x F F F F x x x x x F F F x x x x x = = ⎡ ∂ ∂ ∂⎢ ∂ ∂ ∂ ∂ ∂⎢⎢ ∂ ∂ ∂⎢∇ = ∂ ∂ ∂ ∂ ∂⎢⎢⎢ ⎥⎢ ⎥∂ ∂ ∂⎢ ⎥∂ ∂ ∂ ∂ ∂⎣ L L M M O M L ⎤⎥⎥⎥⎥⎥⎥ ⎦ ) 0 0 Để F(X) đạt cực trị tại X ta phải có 0F∇ = 0 0 2 0| | .(X X X XF F X X= =⇔ ∇ +∇ − = 0 2 1 0 ( | ) |X X XX X F F − =⇔ = − ∇ ∇ X= X∇ ∇ − (16) X là điểm cực trị của F(X) trong (15) Tương tự: ∇ = Tr 0 0[ F (X )( )]+rF X = 0 0 2 0 2| | .( )X X X XF F X X= =∇ +∇ − +∇R (17) Thay X từ (16) vào (17) ta có: 0 |r X XF F =∇ = ∇ + 0 0 0 2 2 1 2| .( | ) | )X X X X X XF F F − = = = R∇ −∇ ∇ +∇ 2 1 0 0 0 2 ( | ) | | 0 X X X XX X F F R −= == − ∇ ∇= ∇ ≠ nghĩa là điểm cực trị X ở (16) của phương trình (15) không phải là điểm cực trị của hàm Fr(X) ở (14): điều phải chứng minh. 1.2 Nhận xét Trong thuật toán Conjugate Gradient của [1],[2],[3] đã trình bày ở mục II chúng ta thấy rằng: Bước dịch chuyển nα ở (13) là nghiệm của phương trình (6), trong đó E(W) là hàm gần đúng tới đạo hàm bậc 2 của khai triển Taylor hàm sai số gốc Er(W) ở (3). Vì vậy, nếu theo bước nα trên hướng pn chúng ta chỉ mới nhận được giá trị cực tiểu của hàm gần đúng E(W). Mặt khác, dựa vào bổ đề 1.1 ta thấy điểm cực trị hàm khai triển E(W) không phải là điểm cực trị của hàm gốc Er(W), nghĩa là nα tính theo [1],[2],[3] chưa phải là bước tối ưu, theo đó chúng ta nhận được cực tiểu của hàm sai số gốc Er(W) ở (3). Thực tế, bước dịch chuyển tối ưu: nop n nα α α= + ∆ (18) trong đó nα∆ là số gia và nop n nα α α= + ∆ phải được xác định từ hàm gốc Er(W) hoặc từ hàm khai triển dạng (14) của giá trị sai lệch. Sự sai lệch của bước dịch chuyển là yếu tố làm chậm tốc độ hội tụ của thuật toán [1], [2], [3]. Trong bài báo này chúng tôi trình bày phương pháp gần đúng xác định nα∆ làm cơ sở để xây dựng thuật toán mới có tốc độ hội tụ cao hơn. 1.3 Xác định nα∆ 20 r 0 0 2. [( ) F (X )( )]+ RTX X X X∇ − ∇ − ∇ Giả sử hàm sai số đã xác định ở Wn có gn, pn, chúng ta cần tìm điểm cực trị Wn+1 theo hướng pn. Quá trình phải thực hiện theo hai bước: - Từ Wn xác định điểm Wn* bằng cách dịch chuyển theo hướng pn, bước dịch chuyển nα 1 2 4 nn T n n T n n pAp pg−=α - Tiếp tục dịch chuyển theo hướng pn ,bước dịch chuyển nα∆ được xác định từ (19). *( ) | 0 n n nW W p n E W αα = +∆ ∂ =∂∆ (19) * * * 2 * ( ) | . . . ( ) | . . . n n T T nW W n n n T T n n nW W E W p n n g p p E W p p A p α = = ∇∆ = − = −∇ (20) là số gia của bước dịch chuyển theo hướng pn, theo đó chúng ta tiêm cận gần hơn tới điểm cực trị của hàm gốc Er(W) theo hứong pn. Như vậy, bước dịch chuyển tối ưu tại Wn là: nop n nα α α= + ∆ * * . . . T T n n n n nop T T n n n n n n g p g p g A p p A p α = − − (21) Từ đó, chúng ta có thuật toán xác định trọng số như sau: 2. Thuật toán TT* - Bước 1: Cho điểm xuất phát W0, hướng dịch chuyển đầu tiên là hướng âm (-) của gradient tại W0, p0= -g0 - Bước 2: Tại điểm Wn, tính gn, nβ , An. Xác định hướng dịch chuyển pn: 1.n n n np g pβ −= − + - Bước 3: Xác định bước dịch chuyển: 2 ( ) | . . . ( ) | . . . n n T T W W n n n n T n W W n n E W p T n g p p E W p p A p α = = ∇= − = −∇ Cực tiểu hóa theo hướng pn nhằm xác định điểm trung gian W*n W*n = Wn + nα pn - Bước 4: Tại điểm W*n, tính g*n, A*n. Xác định số gia nα∆ của bước dịch chuyển: * * * 2 * ( ) | . . . ( ) | . . . n n T T nW W n n n T T n n nW W E W p n n g p p E W p p A p α = = ∇∆ = − = −∇ Cực tiểu hóa theo hướng pn nhằm xác định điểm Wn+1 Wn+1 = W*n + nα∆ pn Nếu thuật toán chưa hội tụ, quay lại bước 2. IV. THÍ NHIỆM KIỂM CHỨNG Trong phần này, chúng tôi sử dụng hai thuật toán TT* và [1] để huấn luyện mạng mạng 5- 5-1 ANN (hình 3) nhận dạng vector đặc trưng của ảnh theo hàm sai số tự tương quan (hình 2): một vấn đề đã được nghiên cứu trong nhận dạng ảnh [12], liên quan mật thiết với lĩnh vực kỹ thuật robot. Trong thí nghiệm, vector đặc trưng của ảnh và bốn vector vclj như sau: v={1,2,1,0,1}; vcl1={1,1,2,1,0}; vcl2={0,1,1,2,1}; vcl3={1,0,1,1,2}; vcl4={2,1,0,1,1} Khảo sát hàm sai số của mạng E(w) ứng với tất cả các mẩu huấn luyện và tín hiệu ra của mạng ứng với từng mẩu huấn luyện (v,vcl1,2,3,4-tclj), j=0,1,,4. Kết quả cho thấy tốc độ hội tụ (giá trị trung bình của số vòng lặp) theo TT* nhanh hơn [1], đồng thời tín hiệu ra của mạng theo TT* ổn định hơn theo [1]. (từ hình 4 đến hình 9) 5 { }1 2, ,..., mv v v v= 1 ...... vcl vcl SHIFT A B 2 1 ( ) m i i i tclj a b = = −∑ tclj Hình 2. Hu v0; vclk(i,j) H { } { } 1 1 1 2 , ,..., 2 , ,..., ... m m m m m v v v v v v − − − = = tclj(W) NEURAL NETWORKS (Cậ nhật trọng số) je ấn luyện mạng neuron- dùng hàm sai số ự tương quan- để nhận dạng vector đặc trưng của ản . 0ijω b5 n5 n4 n3 n2 b1 ∑ ∑ ∑ ∑ ∫ ∫ ∫ ∫ ∫ Lớp phi tuyến n1 ∑ ình 3. Mạng 5-5-1 sử dụng trong thí ngh h ω ω ω iệ p t m yˆ 121 111ω 141 131 151ω n b12 ∑ / Lớp tuyến tính. Hàm truyền purelin(n) kiểm chứng 6 Hình 5. Tín hiệu ra của mạng, hàm sai Hình 4. Tín hiệu ra của mạng, hàm sai lệch 5 Hình 6. Tín hiệu ra của mạng, hàm sai lệch tcl1(W) theo 2 thuật toán. Mẩu huấn luyện vào-ra P1={v,vcl1,2,3,4-tcl1=2} ình 7. Tín hiệu ra của mạng, hàm sai lệch t Hình 8. Tín hiệu ra của mạng, hàm sai lệch tv(W) theo 2 thuật toán. Mẩu huấn luyện vào-ra P3={v,vcl1,2,3,4-tcl3=2.4495} Hình 9. Tín hiệu ra của mạng, hàm sai lệch tv(W) theo 2 thuật toán. Mẩu huấn luyện H cl2(W) theo 2 thuật toán. Mẩu huấn luyện vào-ra P2={v,vcl1,2,3,4-tcl2=2.4495} lệch tv(W) theo 2 thuật toán. Mẩu huấn luyện vào-ra P0={v,vcl1,2,3,4-tcl0=0} E(W)= 2 1 1 5 jj e = ∆∑ ứng với 2 thuật toán vào-ra P4={v,vcl1,2,3,4-tcl4=2} 7 TÀI LIÊU THAM KHẢO V. KẾT LUẬN Trong nghiên cứu này, chúng tôi đã xây dựng một thuật toán mới (TT*) về huấn luyện ANN có số vòng lặp trung bình nhỏ hơn thuật toán Conjugate Gradient trong [1],[2],[3]. Điều này có ý nghĩa trong việc huấn luyện mạng neuron trực tuyến Online trong nhiều ứng dụng về nhận dạng và điều khiển trong môi trường động. Về mặt toán học chúng ta thấy tính chặt chẽ của thuật toán TT* thể hiện ở thành phần, ý nghĩa và vai trò của nα∆ trong thuật tóan: * * * 2 * ( ) | . . . ( ) | . . . n n T T nW W n n n T T n n nW W E W p g p n np E W p p A p α = = ∇∆ = − = −∇ - Nếu nα là bước tối ưu: khi đó Wn* là điểm cực trị của Er(W) (hình 2) và do đó từ (6), (7) (đã được chứng minh trong [1],[2]) suy ra =0, nghĩa là * .Tng pn nα∆ =0 và nop nα α= . - Nếu nα không phải là bước tối ưu: Lý luận tương tự như trên, suy ra 0nα∆ ≠ và do đó nop n nα α α= + ∆ là bước tối ưu hướng quá trình khảo sát tới tiệm cận với điểm cực trị theo hướng pn ở vòng lặp thứ n. Thực tế, trong huấn luyện mạng 1-5-1 (A=16x16) và 5-5-1 (A=36x36) chúng tôi nhận thấy những vòng lặp đầu tiên thường 0nα∆ ≠ . Sự tham gia của nα∆ đã làm tăng tốc độ hội tụ của thuật tóan. Xét về số vòng lặp trung bình trong huấn luyện mạng, TT* có giá trị nhỏ hơn đáng kể so với [1] tuy nhiên xét về thời gian huấn luyện, sử dụng thuật toán TT* chỉ nhanh hơn [1] khi mạng có ma trận trọng số không lớn. Nếu mạng có ma trận trọng số lớn, TT* không nhanh hơn [1] mặc dù số vòng lặp ít hơn. Đây là vấn đề đặt ra cho nghiên cứu tiếp theo của chúng tôi nhằm tăng phạm vi ứng dụng của TT*. 1. Syed Muhammad Aqil Burney, Tahseen Ahmed Jilani, Cemal Ardil. 2004. A comparison of First and Second Order Training Algorithms for Artificial Neural Networks. International Journal of Computational Intelligence. Volume 1 number 3, 2004 ISSN: 1304-4508. 2. Ajith Abraham. 2003. Meta Learning Evolutionary Artificial Neural Networks. www.ElsevierComputerScience.com Powered by Science @ Director. Neurocomputing 56 (2004) 1-38. www.Elsevier.com/locate/neucom. 3. Prof. Matin Hagan of Oklahoma State University, Demuth, Beale . Neural Networks Design. ISBN 0-9717321-0-8. 4. Bogdan M. Wilamowski, M. O nder Efe. An Algorithm for Fast Convergence in Training Neural Networks. 2001. IEEE. && 5. Deniz Erdogmus, Jose C.Principe. Generalized Information Potential Criterion for Adaptive System Training. 2002. IEEE. 6. Nikolaos Ampazis, Stavros J. Perantonis. Two Highly Efficient Second-Order Algorithms for Training Feedforward Networks. 2002.IEEE. 9. Segio Lima Netto and Panajotis Agatholis. Efficient Lattice Realizations of Adaptive IIR Algorithms. IEEE 1998. 10. Ryan Mukai, Victor A. Vilnrotter. Adaptive Acquisition and Tracking for Deep Space Array Feed Antennas. 2002 IEEE. VOL 13.NO.5. September 2002. 11. Neural Networks for Robotic Control. Theory and Application. A.M.S. Zalzala and A.S. Morris. Britain 1996. 12. Nguyễn Đức Minh. Điều khiển Robot Scorbot dùng thị giác máy tính. Luận văn Thạc sĩ. Mã số ĐKKT-K13-009. Đại học 04. Bách khoa TP. HCM. 20 8
File đính kèm:
- mot_thuat_toan_ve_huan_luyen_mang_neural_networks_tren_co_so.pdf