Mạng nơron nhân tạo(neural network) và chuỗi thời gian

16 347 0
Mạng nơron nhân tạo(neural network) và chuỗi thời gian

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mạng n¬ron nhân tạo(Neural network) và chuỗi thời gian (Artificial neural network and time series) 1 Tại sao lại là “mạng” Có một cách giải các bài toán phức tạp là dùng “bổ đề” “chia nhỏ ra và để xử lý” Nghĩa là khi nghiên cứu một hệ khá phức tạp người ta thường phân tích hệ đó thành nhiều hệ con phần tư, nhiều phần tử đơn giản hơn để đẽ tìm hiểu hơn Tuy nhiên, nhiều phần tử, yếu tố đơn giản lại tạo thành m ột h ệ th ống ph ức tạp, và lý thuyết mạng chính là cách tiếp cận dễ đạt được điều đó 2 Mạng là gì ? Có nhiều loại mạng khác nhau nhưng chóng đều đặc trưng bởi hai cấu thành : một tập các nút và một tập các quan hệ, kết nối giữa các nút Nút có thể là một đơn vị tính toán Nút nhận đầu vào(input), x ử lý đầu v ào v à cho đầu ra(output) Quá trình xử lý có thể rất đơn giản ch¶ng hạn chỉ l à c ộng các đầu vào, cũng có thể cực kỳ phức tạp (m ột nút cũng có th ể chính l à c ả m ột mạng …) Các kết nối xác định bằng luồng thông tin giữa các nút, luồng thông tin đó có thể là một chiều, khi thông tin chỉ truyền đi theo một hướng và là hai chiều khi truyền theo cả hai hướng (thuận và ngược) Nhưng tương tác giữa các nút thông qua kết nối đã cho một dáng đi ệu toàn cục của mạng, điều mà khi nghiên cứu riêng rẽ từng phần tư của mạng không thể phát hiện ra được, tính toàn cục của dáng điệu đó gọi là tính trồi lên của mạng, của hệ thống và chính điều này làm cho m ạng tr ở thành m ột công c ụ nghiên cứu rất hiệu quả 3 Mạng nhân tạo và mạng n¬ron nhân tạo ANN Có một loại mạng được coi là loại mạng phức tạp nhất, đó l à m ạng th ần kinh(neural network) của con người Từ 1943[1] Mc Culloh và Pitts và sau đó nhiều nhà khoa học thuộc nhiều ngành khác nhau đã tìm cách mô ph ỏng m ạng thần kinh, và gọi là mạng n¬ron nhân tạo(atificial networks), viết g ọn là ANN; từ nay trở đi, trong bài này, khi nói mạng thì được hiểu là ANN 3.1 Tế bào nơ r«n.[2] Tín hiệu được truyền đi từ n¬r«n này sang n¬r«n khác của n¬r«n thông qua các khớp(synapse), khớp là đơn vị đóng vai trò trung gian trong tương tác gi ữa các n¬r«n Khi trạm điểm khớp, nếu tín hiệu đủ mạnh, nghĩa là tín hiệu đó vượt qua một ngưỡng nào đó thì tín hiệu đó được truyền qua m ột kh ớp khác c ủa mạng n¬r«n khác, còn nếu tín hiệu không đủ m ạnh, không v ượt qua m ột ngưỡng nào đó thì tín hiệu bị dừng tại khớp đó Thông thường m ột khớp l àm việc dưới dạng biến đổi một tín hiệu điện thành m ột tín hi ệu hoá v à sau đó tr ở thành một tín hiệu điện và theo thuật ngữ của điện thì m ột ph ần t ư nh ư th ế được gọi là một thiết bị có hai cổng không nghịch(nonreciprocal two-ports device) Theo Arbib[3], hệ óc con người, tức là trung tâm của hệ thần kinh được mô hình hoá là một mạng n¬r«n, là một hệ thống gồm 3 khối(xem hình vẽ) S Kích thích Tiếp nhận R Mạng n¬r«n NN 1 Hiệ u qu¶ E Re Đáp ứng Hình vẽ Tín hiệu kích thích(stimulus) từ cơ thể con người hay từ môi tr ường bên ngoài qua khớp tiếp nhận R(Reciptor) và khối này biến đổi những tín hi ệu kích thích đó thành những xung điện để truyền thông tin đến khối m ạng n¬r«n NN(Neural Net), khối này xử lý và ra những quyết định dưới dạng các xung điện và chuyển các xung điện sang khối hiệu quả E(Effeetor), khối E này lại biến các xung điện do NN tạo ra thành các đáp ứng Re (Response) để thể hiện dưới dạng các đầu ra(output) của hệ 3.2 Mô hình toán học của một n¬r«n Một n¬r«n là một đơn vị xử lý thông tin, là cơ sở của thao tác của một mạng n¬r«n Hình vẽ dưới đây mô tả n¬r«n thứ k là một mô hình cơ bản của m ột ANN theo mô hình do Mc Culloh và Pitts đề xướng gọi là mô hình MC Độ lệch bk so với ngưỡng x0 Tín hiệu x1 vào Hàm kích hoạt ∑ Bộ tổng ϕ(•) y k Ra xm Trong mô hình MP này có 3 yếu tố cơ sở : Một tập các khớp có phần tư đặc trưng bởi m ột tr ọng s ố( đặc tr ưng cho cường độ hay độ dài của khớp), cụ thể là một tín hiệu x j tại đầu vào của khớp j dưới kết nối với n¬r«n thứ k bởi trọng số Wkj ; ( j = 1, m ) 1) Một “thiết bị” bộ tổng(addu,∑) cộng các tín hiệu x j sau khi đã được liên kết với các trọng số Wkj do các khớp tiếp nhận, dĩ nhiên kích hoạt này có dạng một tổ hợp tuyến tính Ngoài ra tại n¬r«n thứ k còn có một độ lệch bk có t¸cdông nâng cao hay hạ thấp đầu vào của khối E phụ thuộc vào bk dương hay âm 2) Một “thiết bị” hoạt kích(Activation function, ϕ) để giới hạn biên độ của đầu vào của một n¬r«n, thường được hạn chế trong khoảng [-1,1] ho ặc [0,1] Vậy, với n¬r«n thứ k, ta có 2 m u k := ∑ wkj x j + bk (3.2.1) j =1 hay, nếu coi bk là một tín hiệu x0 ≡ 1 , thì ta có thể biểu diễn m u k := ∑ wkj x j ; (3.2.2) x0 := 1; wk 0 := bk j =1 Cuối cùng, với mô hình MP, ta có : m u k := ∑ wkj x j y k =ϕ (u k ) ; Trong đó 1 ϕ(u)= (3.3.3) j =1 u≥0 0 (3.2.4) u u j 1 j≠k yk = (3.5.6) 0 nếu khác đi trong đó u k đã được định nghĩa ở phần trước, xem (3.2.3) Ngoài ra nếu gọi wkj là trọng số khớp kết nối nút n¬r«n j với n¬r«n k, thì được giả thiết thêm ∑w kj =1 ∀k j Luật học δ đây là ∆wkj = η là tốc độ học (3.5.7) η ( x j − wk j ) nếu n¬r«n k thắng nếu n¬r«n k thua 0 (3.5.8) • BL Luật này xuất phát từ cơ học thống kê được Achkey (1985) v à Hinton Sejrowski (1986) đề nghị xuất phát từ các thiết bị được gọi là máy Boltzmann, là một thiết bị có ANN có cấu trúc đệ qui và hoạt động theo 2 chế độ, chẳng h ạn, thiết bị ở chế độ “ON” kÝ hiệu trạng thái +1, chế độ “ OF ”, tr ạng thái-1 Thi ết bị đặc trưng bởi một hàm năng lượng E định nghĩa bởi E := − 1 ∑∑ wkj xk x j 2 j k j ≠ k trong đó x j là trạng thái của n¬r«n j, wkj là trọng số kết nối kết nối n¬r«n j với n¬r«n k ; j ≠ k chứng tỏ rằng không có n¬r«n nào trong thiết bị được t ự ph ản h ồi Thiết bị này thao tác bằng chọn ngẫu nhiên m ột tiến hi ệu, ch ẳng h ạn x k tại một bước nào đó trong quá trình học rồi trượt trạng thái sang − x k với một “ nhiệt độ” T nào đó với xác suất 8 P( x k → − x k ) = tắc 1 1 + exp( − ∆E k / T ) Luật này cũng lặp cho đến khi thiết bị đạt được cân bằng nhiệt hạ theo qui + − ∆wkj = η( ρ kj − ρ kj ) với + ρ kj là tương quan giữa các trạng thái j và k với ANN ở chế độ có đi ều kiện − ràng buộc, ρ kj là tương quan ở chế độ tự do Trong ANN người ta cũng phân biệt 2 kiểu học ch ủ yếu : học có thầy (learning with a teacher ) cũng được coi là học có giám sát (supervised) Ki ểu học này là kiểu học trong đó các tri thức được hiểu dưới d ạng đầu v ào (x) - đầu ra (d) , với x và d đã biết, khi đó yêu cầu học là điều chỉnh tr ọng số w sao cho x − d đạt mức nhỏ nhất có thể Dưới đây là sơ đồ minh hoạ kiểu học có thầy: Môi trường Thầy Đáp ứng mong muốn §/ thực tế Hệ thống học Tín hiệu lỗi + Σ Học không có thầy (learning without teacher) hoặc tự học (self – learning) đây là kiểu học trong đó ANN chỉ biết đầu vào (x) còn đầu ra mong muốn cũng chưa biết Khi đó, về nguyên tắc, phải tạo ra một chỉ tiêu tốt và thuật toán học dẫn đến việc điều chỉnh các trọng số w sao cho đạt được m ột “t ổn th ất” ít nhất Sơ đồ của loại học này có dạng Môi trường Véc tơ mô tả trạng thái môi trường Hệ thống luật học 3.6 Tối ưu không ràng buộc Một trong những thuật toán cơ bản của các luật h ọc l à thuật toán truyền ngược và nguồn gốc của bài toán này là thuật toán tìm lời giải tối ưu của bài toán tối ưu không ràng buộc Ta xét một hàm tổn thất ξ ( w) ,w ∈ R m , giả sử ξ ( w) khả vi đối với véc tơ w, bài toán là cực tiểu hoá ξ ( w) đối với w Với giả thiết khả vi của ξ ( w) , véc tơ gradient của ξ ( w) :  ∂ξ ∂ξ ∂ξ  ∇ξ ( w) :=    ∂w1 ∂w2 ∂wn  9 t và dĩ nhiên  ∂ ∂ ∂  ∇ :=    ∂w1 ∂w2 ∂wn  t ý tưởng của phương pháp lặp giảm (iterative descent) là xuất phát t ừ m ột giá trị ban đầu w(0), tạo ra một dãy các véc t ơ tr ọng s ố w(1), w(2) sao cho hàm tổn thất giảm dần, nghĩa là (*) ξ ( w( n + 1) ) < ξ ( w( n ) ) trong đó w(n) là giá trị của véc tơ tr ọng số tại b ước th ứ n, w(n+1) l à giá tr ị m ới cập nhật Chúng ta “hi vọng” rằng thuật toán này sẽ hội tụ đến m ột nghiệm optimel * w , và dưới đây nêu một vài phương pháp giảm(Giảm???) 3.6.1 Phương pháp giảm nhanh nhất (DNN) Để cho gọn ta kÝ hiệu (3.6.1) g := ∇ξ ( w) khi đó phương pháp giảm nhanh nhất ta tìm véc t ơ trọng số, ta cho ξ ( w) giảm theo hướng nhanh nhất, nghĩa là theo hướng ngược với véc tơ gradient g, vì th ế thuật toán giảm nhanh nhất sẽ được mô tả bởi (3.6.2) w( n − 1) = w( n ) − ηg ( n ) trong đó η > 0 là một hằng số, được gọi là tham số tốc độ học, g ( n ) là véc tơ gradient tính tại điểm w( n ) , nói khác đi luật học này theo kiểu hiệu chỉnh (3.6.3) ∆w( n ) := w( n + 1) − w( n ) = −ηg ( n ) hay w( n + 1) = w( n ) − ηg ( n ) Bây giờ ta sẽ chứng minh rằng thuật toán điều chỉnh trọng số w cho trên thoả mãn điều kiện (*) Thật vậy, theo giả thiết ξ ( w) khả vi, do đó khai triển Taylor lân cận w( n ) để xấp xỉ ξ ( w( n + 1) ) ta được (3.6.4) ξ ( w( n + 1) ) = ξ ( w( n ) ) + g t ( n ) ∆w( n ) với η đủ bé, thay giá trị của ∆w( n ) vào biểu thức trên ta được ξ ( w( n +1) ) = ξ ( w( n ) ) −ηg t ( n ) g ( n ) = ξ ( w( n ) ) − η g ( n ) 2 (3.6.5) và điều đó chứng tỏ rằng với tốc độ học η > 0 thì hàm tổn thất ξ ( w( n ) ) giảm dần theo thuật toán đã giới thiệu trên Phương pháp giảm nhanh nhất hội tụ chậm đến lời giải t ối ưu w* H ơn n ữa thuật toán này phụ thuộc nhiều vào giá trị η 3.6.2 Phương pháp Newton (N) ý tưởng cơ bản của phương pháp Newton là dùng khai triển Taylor đến cấp hai, nghĩa là viết: ∆ξ ( w( n ) ) = ξ ( w( n + 1) ) − ξ ( w( n ) ) = g t ∆w( n ) + 1 ∆w t ( n ) H ( n ) ∆w( n ) 2 trong đó H ( n ) là ma trận hệ số của ξ ( w) , nghĩa là 10 (3.6.6)  ∂ 2ξ  2  ∂w1 2  ∂ξ 2 H ( n ) = ∇ ξ ( w) =  ∂w ∂w  22 1  ∂ξ  ∂wn ∂w1  ∂ 2ξ ∂w1∂w2 ∂ 2ξ 2 ∂w2 ∂ 2ξ ∂wn ∂w2 ∂ 2ξ ∂w1∂wn ∂ 2ξ ∂w2 ∂wn ∂ 2ξ 2 ∂wn Từ biểu diễn ∆ξ ( w( n ) ) trên suy ra ( Xem (3.6.6) )          (3.6.7) g ( n ) + H ( n ) ∆w( n ) = 0 hay ∆w( n ) = − H −1 ( n ) g ( n ) hay w( n + 1) = w( n ) − H −1 ( n ) g ( n ) Phương pháp Newton đòi hỏi H ( n ) phải xác định dương, điều (3.6.8) (3.6.9) (3.6.10) mà không phải tại bước lặp nào cũng có thể có được, vì thế cũng đã có nh ững cải ti ến ([15],[16]) 3.6.3 Phương pháp Gauss—Newton (G—N) Phương pháp này áp dụng với hàm tổn thất có dạng tổng của bình phương các sai số 1 n 2 ξ( w) := − ∑e ( i ) 2 i =1 Trong đó e( i ) là một hàm chỉnh véc tơ w ; khi đã cho một điểm w( n ) , ta có thể tuyến tính hóa sự phụ thuộc của e(i) đối với w bằng cách viết  ∂ e( i )  ( w − w( n) ) e′( i, w) := e( i ) +  ∂ w  w= w( n )   t , i = 1,2, , n hay, dưới dạng ma trận là: e′( n, w) = e( n ) + J ( n ) ( w − w( n ) ) (3.6.12) với e( n ) := [e(1), e( 2 ), , e( n )] t trong đó J ( n ) là ma trận Jacobi cấp n của e( n ) :  ∂e(1)  ∂w 1   ∂e(2)  J (n) :=  ∂w1 •   •  ∂e(n)  ∂w 1  ∂e(1) ∂w2 ∂e(2) ∂w2 • • ∂e(n) ∂w2 • • • • • • • • • • ∂e(1)  ∂wn   ∂e(2)  ∂wn  •   •  ∂e(n)  ∂wn   (3.6.13) Ta thấy rằng ma trận J(n) chính là ma trận chuyển vị của ma tr ận gradient, ∇e( n ) với 11 ∇e( n ) := [ ∇e(1) , ∇e( 2 ) , , ∇e( n ) ] Nh thế công thức cập nhật của w( n + 1) là 2 1 w( n + 1) = arg min  e′( n, w)  w 2  Mặt khác từ biểu thức biểu diễn e′( n, w) ở trên suy ra 1 e ′( n, w) 2 2 = 1 e( n ) 2 2 + e t ( n ) J ( n ) ( w − w( n ) ) + (3.6.14) 1 ( w − w( n ) ) t J t ( n ) J ( n ) ( w − w( n ) ) 2 Lấy đạo hàm biểu thức trên đối với w và cho tích trên , ta được (3.6.15) (3.6.16) J t ( n ) e( n ) − J t ( n ) J ( n ) ( w − w( n ) ) = 0 Giải phương trình trên đối với w và dùng biểu thức của w( n + 1) ở trên ta được [3] ( w( n + 1) = w( n ) − J t ( n ) J ( n ) ) −1 J t ( n ) e( n ) (3.6.17) Và đó chính là dạng công thức của phương pháp G—N Khác với phương pháp N, phương pháp G—N không đòi hỏi phải biết ma trận Hess của hàm tổn thất ξ ( n ) nhưng phương pháp này lại đòi hỏi ma trận J t ( n ) J ( n ) phải khả đảo và điều đó dẫn đến là rank ( J ( n ) ) phải bằng n , dĩ nhiên, điều này cũng không dễ 3.6.4 Lọc tuyến tính bình phương nhỏ nhất (linear leastsquare filter(LLSF)) Nh tên gọi, phương pháp này có hai đặc trưng phân biệt Thứ nhất, các n¬r«n đơn độc phải được thiết lập theo kiểu tuyến tính, giống nh biểu thức (3.2.1), thứ hai hàm tổn thất dùng để thiết k ế lọc ph ải l à t ổng bình ph ương các sai sót Nh thế với véc tơ sai sót e( n ) : t e( n ) := d ( n ) −[ x(1), x ( 2 ), , x( n )] w( n ) (3.6.18) := d ( n ) − X ( n ) e( n ) Trong đó d ( n ) là véc tơ đáp ứng mong muốn n chiều t (3.6.19) d ( n ) := [ d (1) , d ( 2 ) , , d ( n ) ] Còn X( n ) là ma trận dữ liệu cấp n : t (3.6.20) X ( n ) := [ x(1) , x( 2 ) , , x( n ) ] Lấy đạo hàm đối với w( n ) biểu thức e( n ) ta được ma trận gradient : (3.6.21) ∇e( n ) = − X t ( n ) Tương ứng, ma trận Jacobi của e( n ) là J ( n) = − X ( n) Khi đó biểu thức (3.6.17) sẽ có dạng: ( ) X ( n ) ( d ( n) − X ( n) w( n ) ) = ( X ( n) X ( n) ) X ( n) d ( n) X ( n ) := ( X ( n ) X ( n ) ) X ( n ) w( n + 1) = w( n ) + X t ( n ) X ( n ) −1 t Nếu đặt − −1 t t t −1 t 12 (3.6.22) (3.6.23) thì công thức cuối cùng sẽ là w( n + 1) = X − ( n ) d ( n ) (3.6.24) 3.6.5 Thuật toán trung bình bình phương nhỏ nhất(least –meansquare algorithm LMS) Thuật toán LMS dựa vào việc dùng các giá trị tức thời của hàm tổn th ất ξ ( w) : 1 ξ ( w) := e 2 ( n ) 2 trong đó e( n ) là sai sót của tín hiệu đo được tại thời điểm n Lấy đạo hàm ξ ( w) đối với w , được: ∂ξ ( w) ∂e( n ) = e( n ) ∂w ∂w (3.6.25) Vì thuật toán LMS thực hiện với n¬r«n có dạng tuyến tính(3.2.1) nên (3.6.26) e( n ) = d ( n ) − x t ( n ) w( n ) ∂e( n ) = − x( n ) ∂w ∂ξ ( w) = − x ( n ) e( n ) và (3.6.27) ∂w( n ) Nếu dùng biểu thức − x( n ) e( n ) nh là một xấp xỉ của véc tơ gradient nghĩa do đó là (xem (3.6.1)) : g ( n ) := x( n ) e( n ) (3.6.28) Bây giờ, dùng công thức tương tự ( 3.6.3) ta được : ˆ ˆ w( n +1) = w( n ) −ηx ( n )e( n ) trong đó, nh thường lệ η là tốc độ học (3.6.29) 4 Thuật toán lan truyền ngược BA (Backpropagation algolrithm) 4.1 ý tưởng của phương pháp Thuật toán BA [17] được dùng rộng rãi trong các ANN có nhiều tầng và có hướng tiến, nghĩa là ANN được tổ chức thành nhiều tầng và luôn chuyển tín hiệu “về phía trước” và sau đó các sai sót được truyền về sau Như đã biết trong ANN thì các n¬r«n chuyên nhận tín hiệu đầu vào là tầng đầu vào và đầu ra của các ANN được thực hiện bởi các nơ ron thuộc tầng đầu ra Ngoài ra có th ể có một hay nhiều tầng khuất trung gian ở giữa tầng đầu vào và tầng đầu ra Thu ật toán BA được dùng cho các luật học có thầy, ý tưởng của thuật toán l à t ại m ỗi bước tính toán trọng số khớp w( n ) tính sai sót giữa đầu ra thực tế và đầu ra mong muốn và ANN sẽ “học” sao cho sai sót được giảm dần đến mức có thể Hàm kích hoạt (activation function) của ANN trong thuật toán BA l à m ột tổng có trọng số, nghĩa là tại n¬r«n thứ k , với đầu vào t wkj x0 : ∆ = 1 và trọng số khớp x = ( x 0 , x1 , , x j , , x m ) ; ( wk := ( wk1 , wk 2 , wkj , wkm ) ) (4.1.1) thì hàm kích hoạt Ak ( x, wk ) sẽ là : m Ak ( x, wk ) := ∑ wkj x j wk 0 := bk j =0 13 x := ( x 0 , x1 , , x m ) t (4.1.2) (xem các biểu thức từ ( 3.2.1) đến ( 3.2.3) ) Hàm kích hoạt chỉ phụ thuộc các đầu vào và các trọng s ố N ếu h àm đầu ra chỉ là hàm đồng nhất (đầu ra = kích hoạt) thì n¬r«n được g ọi l à n¬r«n tuy ến tính, và dĩ nhiên loại n¬r«n này có nhiều hạn chế Có m ột loại hàm đầu ra thông dụng: hàm signoide, có dạng ( 3.2.6 ) , cụ thể là: Ok ( x, wk ) := 1 1+ e (4.1.3) − Ak ( x , wk ) 1 Dĩ nhiên Ok ( ,) rất gần 1 khi Ak ( ,) lấy giá trị dương khá lớn, bằng khi 2 Ak ( ,) lấy giá trị không và rất gần số không Khi Ak ( ,) lấy các giá trị âm và có trị tuyệt đối khá lớn chúng ta cũng thấy rằng hàm đầu ra Ok này chỉ phụ thuộc hàm kích hoạt và do đó, rốt cuộc y − chỉ phụ thuộc các giá trị đầu vào và các trọng số tương ứng Bây giờ lưu ý mục đích của quá trình học của chúng ta chờ đợi ở n¬r«n k là sao cho đạt được một đầu ra mong muốn d k ứng với đầu ra thực tế làOk , do vậy ta định nghĩa hàm sai sót đối với đầu ra tại nơ ron k là: 2 (4.1.4) E k ( x, wk , d k ) := ( Ok ( x, wk ) − d k ) Nh thế, tổng các sai sót ở mọi nơ ron ở tầng ra sẽ đơn giản là: E ( x,, d ) := 1 2 ∑[ Ok ( x, wk ) − d k ] k 2 (4.1.5) Nhiệm vụ của thuật toán BA là tìm các w sao cho biểu thức sai sót ( 4.1.5) đạt giá trị min Và muốn thế, theo công thức ( 3.6.3) ta phải tính ∇E , để dùng công thức dạng: ∂E ∆wkj := wkj ( n + 1) − wkj ( n ) = η (4.1.6) ∂wkj Tuy nhiên, vì E phụ thuộc qua O và O phụ thuộc A nên rốt cuộc ta phải dùng công thức tính đạo hàm hàm phức hợp ∂E ∂E ∂Ok ∂Ak = ∂wkj ∂Ok ∂Ak ∂wkj (4.1.7) và dĩ nhiên từ ( 4.1.5) ta có: ∂E = ( Ok − d k ) ∂Ok Từ ( 4.1.3) suy ra: (4.1.8) {( ∂Ok = 1 + e − Ak ∂Ak = = ) −1 e − Ak }′ = ( − 1)(1 + e = (1 + e ) − Ak 2 1 + e − Ak − 1 (1 + e ) − Ak 2 1 1 − − Ak 1+ e 1 + e − Ak ( ) 14 2 = ) (1 + e )′ − Ak − 2 − Ak 2 ∂Ok 1  1  = − − Ak −A  ∂Ak 1 + e 1+ e k  = Ok − Ok2 = Ok (1 − Ok ) Bây giờ, từ ( 4.1.2) suy ra: ∂Ak = xj ∂wkj (4.1.9) (4.1.10) Cuối cùng, từ ( 4.1.8) − ( 4.1.10) và ( 4.1.7 ) suy ra ∂E = ( Ok − d k ) Ok ( 1 − Ok ) x j ∂wkj Và cuối cùng thuật toán BA được thể hiện dưới dạng: ∆wkj := wkj ( n + 1) − wkj ( n ) = −η ( Ok − d k ) Ok (1 − Ok ) x j (4.1.11) (4.1.12) trong đó η > 0 là một tham số dương đặc trưng “tốc độ học” 4.2 Chú ý 1 Khi dùng công thức ( 4.1.12) nhất thiết phải có giá trị khởi đầu wkj ( 0) , (ứng với n =0) khi đó, về nguyên tắc, nếu không có thông tin tiên nghi ệm v ề wkj ( 0 ) thì phải giả thiết wkj ( 0 ) lấy một giá trị ngẫu nhiên nào đó, và cũng về nguyên tắc, không nhất thiết phải biết luật xác xuất hay các đặc tr ưng ng ẫu nhiên Tuy nhiên khi dùng tiếp cận ANN vào các ngành khác nhau thì các giá trị wkj ( 0) thường được coi là kết quả tính toán của một phương pháp nào đó [20] và người ta dùng tiếp cận ANN để làm tốt hơn kết quả tính toán đã có 2 Như đã nói á phần 4.1, công thức ( 4.1.12) dùng để tính, điều chỉnh các trọng số wkj trong các ANN có 2 tầng: một tầng đầu vào và m ột tầng đầu ra Bây giờ chúng ta bàn đến việc dùng ( 4.1.12) khi ANN có 3 tầng: một tầng đầu vào, một tầng đầu ra và một tầng khuất Chẳng hạn, ta mu ốn đi ều ch ỉnh tr ọng s ố của tầng trước, tạm gọi là vij thì việc đầu tiên là phải tính làm sao cho sai sót không những phụ thuộc trọng số mà còn phụ thuộc các đầu vào của tầng tr ước, và muốn thế chúng ta chỉ cần đổi x j và wkj trong ( 4.1.9) , ( 4.1.11) và ( 4.1.12) , tuy nhiên chúng ta cũng phải biết sai sót phụ thuộc vào việc điều chỉnh vij như thế nào, và như thế dẫn đến: ∆vij := vij ( n + 1) − vij ( n ) = −η ∂E ∂vij (4.2.1) ∂E ∂E ∂x j = ∂vij ∂x j ∂vij (4.2.2) trong đó, dĩ nhiên : ∂E = ( O − d k ) Ok (1 − Ok ) wkj ∂x j và cuối cùng, tương tự ( 4.1.9) và ( 4.1.10) 15 (4.2.3) ∂x j ∂v ji = x j (1 − x j )v ji (4.2.4) Rốt cuộc, ta có: ∆v ji := v ji ( n + 1) − v ji ( n ) = ( v k − d k ) Ok (1 − Ok ) wkj x j (1 − x j )v ji ( n ) Nguyễn hồ quỳnh Mạng n¬r«n nhân tạo và chuỗi thời gian (artificirl neural network and times reries) khoa toán ứng dụng Trường đại học bách khoa hà nội -2003 16 ... phù hợp với tốn phi tuyến • Có cấu trúc ánh xạ vào-ra Với cấu trúc ánh xạ vào-ra nên ANN sử dụng triệt để thuật tốn học có thày nghĩa dùng ánh xạ vào-ra để điều chỉnh đầu cho đáp ứng với đầu mong... dùng ánh xạ vào để điều chỉnh đầu cho trọng số khớp đạt giá trị ổn định (vì khơng biết đầu mong muốn) • Tính thích nghi Hoạt động chất ANN dùng luật học để điều chỉnh theo diễn biến thời gian trọng... nhất(least –meansquare algorithm LMS) Thuật tốn LMS dựa vào việc dùng giá trị tức thời hàm tổn th ất ξ ( w) : ξ ( w) := e ( n ) e( n ) sai sót tín hiệu đo thời điểm n Lấy đạo hàm ξ ( w) w , được: ∂ξ (

Ngày đăng: 15/05/2015, 11:35

Từ khóa liên quan

Mục lục

  • Nguyễn hồ quỳnh

Tài liệu cùng người dùng

Tài liệu liên quan