Hướng dẫn sử dụng matlab

32 2.7K 9
Hướng dẫn sử dụng matlab

Đ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 là dùng kỹ thuật tái tạo lại một vài chức năng tương tự bộ não con người. Việc nghiên cứu ứng dụng mạng nơ ron mở ra một hướng mới trong việc giải quyết các bài toán kỹ thuật và kinh tế, ... Trong bài toán kỹ thuật, mạng nơ ron có thể nhận dạng, điều khiển, nhận mẫu, giải quyết các bài toán tối ưu, ... và tỏ ra rất có hiệu quả. Mô hình nơ ron nhân tạo cơ bản thứ i trong mạng xây dựng dựa trên cấu trúc của nơ ron sinh học do McCulloch và Pitts đề xuất và được Rosenblatt cải tiến, gọi là perceptron [36], nó có thể có nhiều đầu vào (R đầu vào) và chỉ có một đầu ra (hình 2.1). Quan hệ giữa đầu ra và các đầu vào của nơ ron thứ i: yi = ai(qi) = ai(fi(p)), (2.1) trong đó: p - véc tơ biến đầu vào, fi - hàm tổng hợp, ai - hàm chuyển đổi, yi - biến đầu ra của nơ ron thứ i, qi = fi(p) = - tổng trọng số, wij - trọng số liên kết giữa đầu vào thứ j với nơ ron thứ i, i - ngưỡng của nơ ron thứ i (hằng số), Có nhiều dạng hàm tổng hợp fi(.) được dùng như:

24 Chương 2: Mạng nơ ron và ứng dụng trong điều khiển 2.1 Cấu trúc và luật học của mạng nơ ron 2.1.1 Mô hình một nơ ron nhân tạo Mạng nơ ron nhân tạo là dùng kỹ thuật tái tạo lại một vài chức năng tương tự bộ não con người. Việc nghiên cứu ứng dụng mạng nơ ron mở ra một hướng mới trong việc giải quyết các bài toán kỹ thuật và kinh tế, . Trong bài toán kỹ thuật, mạng nơ ron có thể nhận dạng, điều khiển, nhận mẫu, giải quyết các bài toán tối ưu, . và tỏ ra rất có hiệu quả. Mô hình nơ ron nhân tạo cơ bản thứ i trong mạng xây dựng dựa trên cấu trúc của nơ ron sinh học do McCulloch và Pitts đề xuất và được Rosenblatt cải tiến, gọi là perceptron [36], nó có thể có nhiều đầu vào (R đầu vào) và chỉ có một đầu ra (hình 2.1). Quan hệ giữa đầu ra và các đầu vào của nơ ron thứ i: y i = a i (q i ) = a i (f i (p)), (2.1) trong đó: p - véc tơ biến đầu vào, f i - hàm tổng hợp, a i - hàm chuyển đổi, y i - biến đầu ra của nơ ron thứ i, q i = f i (p) = i R 1j jij p.w θ− ∑ = - tổng trọng số, w ij - trọng số liên kết giữa đầu vào thứ j với nơ ron thứ i, p 1 . p R -1 a i q i y i W i1 W i1 W iR W iR . . θ i Hỡnh 2.1 Mụ hình nơ ron thứ i. 25 θ i - ngưỡng của nơ ron thứ i (hằng số), Có nhiều dạng hàm tổng hợp f i (.) được dùng như: . Hàm tổng hợp tuyến tính: (hàm này rất hay được dùng) f i (p) = i R 1j jij p.w θ− ∑ = , (2.2) . Hàm bậc hai (Quadratic function): f i (p) = i R 1j 2 jij p.w θ− ∑ = , (2.3) . Ngoài ra còn có các hàm hình bán cầu, hàm đa thức, v. v . Với mục đích đơn giản, thực tế thường chọn hàm tổng hợp tuyến tính. Hàm chuyển đổi a(.) cũng có rất nhiều dạng được dùng, ví dụ một vài dạng hàm cơ bản như sau: . Hàm chuyển đổi tuyến tính (Liner function): a(q) = q, (2.4) . Hàm dấu (hàm ngưỡng: threshold function): a(q) = sgn(q) =    <− ≥ 0 q nÕu 0 q nÕu 1 1 (2.5) . Hàm sigmoid một cực (Unipolar sigmoid function): a(q) = q. e1 1 λ− + (2.6) . Hàm sigmoid hai cực (Bipolar sigmoid function): a(q) = 1 e1 2 q. − + λ− (2.7) v. v . 2.1.2 Mô hình mạng nơ ron nhân tạo Mô hình mạng nơ ron được hình thành từ việc liên kết các nơ ron với nhau theo một nguyên tắc nào đó. Có rấtnhiều oại mạng và việc phân loại mạng cũng có nhiều cách: - Theo số lớp: có mạng nơ ron một lớp, mạng nơ ron nhiều lớp. 26 - Theo cấu trúc liên kết giữa đầu vào và đầu ra: có mạng nơ ron truyền thẳng, mạng nơ ron hồi quy. - Theo tính chất làm việc: có mạng tĩnh (static network) và mạng động (dynamic network). v. v . Phần tử gây trễ (TDL: Tapped Delay Line) là phần tử có tín hiệu ra của nó bị trễ một khoảng thời gian so với tín hiệu vào, có hai tham số trễ là thời gian trễ (bước) và bậc trễ. Phần tử này được sử dụng để lấy tín hiệu quá khứ (hình 2.2) và nó là yếu tố để tạo ra các đơn vị nơ ron động lực học (Dynamic Neural Units) và mạng động lực học trong hệ thống rời rạc (mạng động). Quan hệ vào - ra như sau: q(t) = w.p(t-i.ô), (2.8) với w là trọng số của TDL, i là bậc trễ, i = 0, 1, ., n, ô là thời gian trễ một bậc. Một số liên kết cơ bản của mạng nơ ron được trình bày trên hình 2.3. Mạng một lớp truyền thẳng (single-layer feedforward network): Các nơ ron cùng nhận đồng thời tín hiệu vào như nhau và có chức năng giống nhau tạo thành một lớp của mạng nơ ron, số nơ ron trong một lớp chính là số đầu ra của lớp đó. Mạng nơ ron chỉ có một lớp gọi là mạng nơ ron một lớp. Với mạng nơ ron một lớp truyền thẳng (ví dụ có R đầu vào, S đầu ra), ma trận trọng số W sẽ có S hàng, R cột. Trong đó phần tử w ij là trọng số liên kết giữa nơ ron thứ i và đầu vào thứ j, có các hàm tổng hợp f i , hàm chuyển đổi a i (các hàm này thường chọn giống nhau cho mỗi lớp: a i = a, f i = f). Quan hệ vào - ra có dạng sau (hình 2.3a): y = a(f(x)), (2.9) trong đó: y = [y 1 , y 2 , ., y S ] T là véc tơ biến tín hiệu ra, TDL p(t) q(t) Hình 2.2 Phần tử TDL 27 x = [x 1 , x 2 , ., x S ] T là véc tơ tín hiệu vào. Mạng nhiều lớp truyền thẳng (multi-layers feedforward network): Gồm nhiều lớp (N lớp) ghép liên tiếp với nhau, đầu ra của lớp này được nối với đầu vào của lớp ngay sau nó. Lớp đầu tiên là lớp vào (input layer) có R đầu vào, S 1 đầu ra. w 1,1 w 1,R w 2,R w S,R x 1 x 2 . x R y 1 y 2 . y S x 1 x 2 . x R y 1 y 2 . y S Lớp v o Là ớp ẩn Lớp ra a) b) x 1 x 2 . x R y 1 y 2 . y S x 1 x 2 . x R y 1 y 2 . y S c) d) y 1 y 2 . y S x 1 x 2 . x R e) Hình 2.3 Một số dạng liên kết của mạng. a) mạng một lớp truyền thẳng, b) mạng nhiều lớp truyền thẳng, c) nút tự hồi quy, d) mạng một lớp hồi quy, e) mạng nhiều lớp hồi quy. 28 Lớp cuối cùng là lớp ra (output layer) có S N-1 đầu vào, S N ( gọi tắt là S) đầu ra. Giữa chúng có thể có một số lớp cũng nối liên tiếp nhau gọi là các lớp ẩn (hidden layers), chúng đóng vai trò trung gian trong mạng, không tiếp xúc trực tiếp với bên ngoài. Mỗi lớp ẩn (ví dụ lớp thứ k) có S k-1 đầu vào, S k đầu ra. Các nơ ron trong một lớp được nối theo cấu trúc ghép nối hoàn toàn, nghĩa là mỗi nơ ron sẽ được nối với tất cả các tín hiệu vào của lớp đó và các nơ ron trong cùng lớp có cấu trúc liên kết hoàn toàn giống nhau. Quan hệ vào - ra của mạng có dạng sau (hình 2.3b): y S = a N (f N (a N-1 ( .(a 1 (f 1 (x))) .))), (2.10) trong đó: y S = [y 1 , y 2 , ., y S ] T là véc tơ biến tín hiệu ra, a k , f k (k=1, ., N) hàm kích hoạt và hàm tổng hợp của lớp thứ k. Mạng nơ ron hồi quy (recurrent network): Mạng nơ ron hồi quy còn gọi là mạng phản hồi (feedback network), là loại mạng mà tín hiệu ra của nơ ron được phản hồi ngược về làm tín hiệu vào cho các nơ ron lớp trước nó hoặc cùng lớp đó tạo thành các vòng kín (hình 2.3d, e). Tín hiệu phản hồi có thể có phần tử TDL. Loại mạng này sẽ được xem xét kỹ ở phần sau, đó là mạng nơ ron hồi quy cục bộ. 2.1.3 Các luật học Việc “học” của mạng nơ ron là để tìm được chính xác giá trị ma trận trọng số liên kết W của các nơ ron và xác định được cấu trúc cụ thể của mạng để giải quyết được bài toán cụ thể. Có hai kiểu học là học cấu trúc và học thông số: - Học cấu trúc (Structure learning): Xác định cấu trúc của mạng bao gồm số lượng nút (nơ ron) trong mỗi lớp và giá trị của các ma trận trọng số W của mạng (số lớp không thay đổi). 29 - Học thông số (Parameter learning): Tìm được chính xác giá trị của các ma trận trọng số W ứng với cấu trúc (cố định) của mạng nơ ron đã cho. Có ba phương pháp học: . Học có giám sát (Supervised learning): Tín hiệu giám sát là những thông tin mong muốn d được cung cấp từ bên ngoài mà đầu ra y của mạng nơ ron cần phải đạt được (hình 2.4 a). . Học củng cố (Reinforcement learning): Thông tin cung cấp từ bên ngoài d (tín hiệu củng cố) mang tính định hướng cho quá trình học (cho biết tín hiệu ra của mạng đúng hay sai) (hình 2.4 b). . Học không giám sát (Unsupervised learning): Quá trình học không có bất kỳ thông tin nào từ bên ngoài để giám sát, đó là quá trình tự cấu trúc của mạng. Mạng phải tự xác định các cặp dữ liệu mẫu (dữ liệu vào, ra), các tính chất, các mối quan hệ để tạo được ma trận W mong muốn (hình 2.4 c). Dạng chung của luật học thông số là xác định giá trị cần điều chỉnh ∆W i cho véc tơ trọng số W i : Với mạng rời rạc: ∆W i (t) = η.r.x(t), (2.11) Trong đó: η là số dương xác định tốc độ học (hằng số học), r là tín hiệu học, r = f r (W i , x, d i ). (2.12) Lúc đó giá trị véc tơ trọng số tại thời điểm (t+1) là: W i (t+1) = W i (t) + η.f r (W i , x(t), d i ).x(t). (2.13) Với mạng liên tục: = dt )t(dW i η.r.x(t), (2.14) Có nhiều thuật toán học để xác định ∆W i (t) được đưa ra. Một trong những thuật toán học có giám sát cho mạng nơ ron được Widrow-Hoff đề nghị là thuật toán “giảm gradient” (gradient descent), sử dụng cực tiểu sai lệch trung bình bình phương bằng việc thêm vào các trọng số liên kết mạng một giá trị theo hướng ngược với hướng tức thời của gradient. Thuật toán sử 30 dụng phương pháp sai lệch trung bình bình phương nhỏ nhất (LMS: Least Mean Squares) hoặc gọi là phương pháp delta. Hàm chi phí chuẩn sử dụng trong mạng nơ ron, sai lệch trung bình bình phương, của thuật toán này là định nghĩa một hàm đạt cực tiểu E như sau: E = ∑ = − l N 1n 2L nn ))k(y)k(d( 2 1 → min, (2.15) ở đây: d n (k) là đầu ra mong muốn thứ n tại thời điểm t và L là số lớp. 2.1.4 Mạng nơ ron hồi quy cục bộ ở đây chúng ta quan tâm đến mạng nơ ron hồi quy cục bộ (Local Recurrent Neural Networks: LRNN) có cấu trúc như hình 2.5: Mạng có R tín hiệu vào, S tín hiệu ra và có thể gồm nhiều lớp ẩn (gọi là: lớp vào, các lớp ẩn và lớp ra): x Khối phát tín hiệu sai lệch e d y Mạng nơ ron W x y Mạng nơ ron W Khối phát tín hiệu nhận xét e d x y Mạng nơ ron W (a) (c) (b) Hình 2.3 Các phương pháp học của NN (b) Hình 2.4 Các phương pháp học của mạng nơ ron. LW 1,1 IW 1,1 IW S1,R LW S2,S1 y 1 y 2 . y S x 1 x 2 x R TDL IW 1,R IW S1,1 lớp v o các là ớp ẩn lớp ra Hình 2.5 Cấu trúc mạng nơ ron. TDL TDL 31 Lớp vào có R tín hiệu vào (véc tơ x), Lớp ẩn thứ i (i = 1, ., n-1) có S i nơ ron hồi quy và có lấy tín hiệu quá khứ qua khối trễ TDL, Lớp ra có S n nơ ron và truyền thẳng tín hiệu cho S đầu ra (véc tơ y), S=S n . Hàm chuyển đổi cho các lớp có thể giống nhau hoặc khác nhau, tuy nhiên nếu hai lớp kề nhau có hàm chuyển đổi tuyến tính thì không cần thiết do có thể thay bằng một lớp tuyến tính để giảm bớt độ phức tạp của mạng khi thiết kế. Hàm tổng hợp cho các lớp là hàm tuyến tính. Hàm truyền của mạng có dạng (2.16): Lớp ẩn thứ nhất: ))jk(Y.WL)k(X.IW(a)k(Y 1 1q 1j 1 1 j 11 1 θ+−+= ∑ = (2.16a) . Lớp ẩn thứ p: ))jk(Y.WL)k(Y.LW(a)k(Y p q 1j p p j1p pi p p θ+−+= ∑ = − (2.16b) . Lớp ẩn thứ n (lớp ra): ))k(Y.LW(a)k(YY n 1n nn n θ+== − (2.16c) Trong đó: IW 1 ma trận trọng số lớp vào, q i bậc trễ của lớp thứ i, tương ứng ma trận trọng số L j W i , j = 1, 2, ., q i , L j W i các ma trận trọng số của lớp ẩn thứ i hồi quy, LW i ma trận trọng số truyền thẳng. Nhờ khả năng “học” mà mạng được sử dụng để nhận dạng rất hiệu quả các hệ thống có mức độ phi tuyến cao và sau đó xây dựng các luật thích hợp để điều khiển hệ thống theo ý muốn. Thuật toán học của LRNN là thuật toán “giảm gradient” còn gọi là phương pháp delta, là phương pháp ứng dụng cho mạng một lớp, được mở rộng bằng cách thêm hằng số động lượng (momentum) và tổng quát hoá bằng 32 cách sử dụng lan truyền ngược sai lệch (backpropagation) để ứng dụng cho mạng nhiều lớp và mạng hồi quy (Gradient Descent with Momentum Backpropagation: GDMB). Thuật toán học “giảm gradient” (GDMB) ứng dụng rất tốt cho mạng nơ ron để giải quyết nhiều bài toán thực tế kỹ thuật, nhất là các bài toán nhận dạng và điều khiển hệ thống với thông số chưa biết. Với thuật toán này, giá trị ∆W i (t) có thể xác định theo (2.17), ∆W i (t) = mc.∆W i (t-1) + (1-mc).η. f r (W i , x, d i ).x(t), (2.17) trong đó: mc (momentum constant) là hằng số động lượng, (0 < mc < 1). Sự ổn định của phương pháp lan truyền ngược sai lệch được bảo đảm bằng định lý sau: Định lý ổn định của luật học RBP: Nếu giả thiết mạng nơ ron lan truyền ngược hồi quy (mạng RBP: Recurrent Back-Propagation) với phương trình mô tả: i y  τ = -yi +         + ∑ i j iij xywa (2.18a) sẽ tồn tại trạng thái ổn định: y i = a(h i ) =         + ∑ i j iij xywa , (2.18b) thoả mãn 0y i =  , thì mạng lan truyền ngược sai lệch (mạng EBP: Error Back- Propagation) tương ứng của nó mô tả theo phương trình: i p ppipii Ezw)h(azz + ′ +−=τ ∑  (2.19a) cũng có trạng thái ổn định như mô tả: i p ppipi Ezw)h(az = ′ − ∑ . (2.19b) Nói cách khác, nếu phương trình (2.18b) là trạng thái ổn định của (2.18a), thì phương trình (2.19b) là trạng thái ổn định của (2.19a). Chứng minh: xem [36] 33 Để tìm hiểu thuật toán học chi tiết, ta xét một nơ ron thứ i trong lớp ẩn thứ p từ (2.16b) bỏ qua chỉ số i và ký hiệu L cho đơn giản như hình 2.6: ))jk(Y.W)k(Y.W(a)k(Y p qi 1j pj1pp θ+−+= ∑ = − . (2.20) Tham số của vế phải gồm ba thành phần là ngưỡng θ p và X p (k) = )k(Y.W 1p − đóng vai trò tín hiệu vào từ lớp p - 1, X p ph (k)= ∑ = − qi 1j pj )jk(Y.W đóng vai trò tín hiệu phản hồi về từ lớp p, Mục tiêu của mạng học là điều chỉnh W, j W và θ p sao cho hàm chi phí E theo (2.15) đạt giá trị nhỏ nhất. Từ (2.20) để đơn giản, chỉ xét truyền ngược của tín hiệu X p và θ p thì Y p (k) sẽ có dạng như (2.21): )n(a)Y.W(a)k(Y p1ppp =θ+= − . (2.21) Lấy đạo hàm riêng của E (2.15) theo W và θ p và hiệu chỉnh trọng số và ngưỡng tại bước lặp thứ k + 1 theo công thức sau: p j,i p j,i p j,i W E )k(W)1k(W ∂ ∂ η−=+ , (2.22) p i p i p i E )k()1k( θ∂ ∂ η−θ=+θ , (2.23) ở đây E là hàm gián tiếp của các trọng số, do đó sử dụng luật dây chuyền thông qua biến trung gian n dạng: W )W(n x n )n(f W ))W(n(f ∂ ∂ ∂ ∂ = ∂ ∂ . (2.24) j W Σ a(.) W i θ p Y p-1 (k) X p (k) X p ph (k) n(k) Y p (k) Hình 2.6 Một nơ ron hồi quy. . (gradient descent), sử dụng cực tiểu sai lệch trung bình bình phương bằng việc thêm vào các trọng số liên kết mạng một giá trị theo hướng ngược với hướng tức thời. toán sử 30 dụng phương pháp sai lệch trung bình bình phương nhỏ nhất (LMS: Least Mean Squares) hoặc gọi là phương pháp delta. Hàm chi phí chuẩn sử dụng

Ngày đăng: 13/08/2013, 08:45

Hình ảnh liên quan

2.1.1 Mô hình một nơ ron nhân tạo - Hướng dẫn sử dụng matlab

2.1.1.

Mô hình một nơ ron nhân tạo Xem tại trang 1 của tài liệu.
Hình 2.3 Một số dạng liên kết của mạng. - Hướng dẫn sử dụng matlab

Hình 2.3.

Một số dạng liên kết của mạng Xem tại trang 4 của tài liệu.
LRNN) có cấu trúc như hình 2.5: Mạng có R tín hiệu vào, S tín hiệu ra và  có thể gồm nhiều lớp ẩn (gọi là: lớp vào, các lớp ẩn và lớp ra): - Hướng dẫn sử dụng matlab

c.

ó cấu trúc như hình 2.5: Mạng có R tín hiệu vào, S tín hiệu ra và có thể gồm nhiều lớp ẩn (gọi là: lớp vào, các lớp ẩn và lớp ra): Xem tại trang 7 của tài liệu.
Hình 2.3 Các phươ (b) ng pháp học của NN Hình 2.4 Các ph ương pháp học của mạ ng n ơ  ron. - Hướng dẫn sử dụng matlab

Hình 2.3.

Các phươ (b) ng pháp học của NN Hình 2.4 Các ph ương pháp học của mạ ng n ơ ron Xem tại trang 7 của tài liệu.
Bài toán nhận dạng hệ thống theo mô hình mẫu gồm hai thành phần chính là lựa chọn mô hình nhận dạng và phương pháp hiệu chỉnh các tham số dựa trên cơ sở sai lệch e(k) giữa tín hiệu ra của mô hình và tín hiệu ra của hệ thống cần nhận dạng. - Hướng dẫn sử dụng matlab

i.

toán nhận dạng hệ thống theo mô hình mẫu gồm hai thành phần chính là lựa chọn mô hình nhận dạng và phương pháp hiệu chỉnh các tham số dựa trên cơ sở sai lệch e(k) giữa tín hiệu ra của mô hình và tín hiệu ra của hệ thống cần nhận dạng Xem tại trang 16 của tài liệu.
Bảng 2.1  1 (m)  m (kg) J (Kgm 2 ) - Hướng dẫn sử dụng matlab

Bảng 2.1.

1 (m) m (kg) J (Kgm 2 ) Xem tại trang 19 của tài liệu.
Việc dạy mạng được tiến hành với 3142 mẫu học từ mô hình hệ thống, cập nhật trọng số theo thuật toán “giảm gradient” có cải tiến GDMB. - Hướng dẫn sử dụng matlab

i.

ệc dạy mạng được tiến hành với 3142 mẫu học từ mô hình hệ thống, cập nhật trọng số theo thuật toán “giảm gradient” có cải tiến GDMB Xem tại trang 21 của tài liệu.
Hình 2.13a) lớp ẩn có 15 nơ ron - Hướng dẫn sử dụng matlab

Hình 2.13a.

lớp ẩn có 15 nơ ron Xem tại trang 22 của tài liệu.
Hình 2.13. Kết quả nhận dạng.c) lớp ẩn có 29 nơ ron - Hướng dẫn sử dụng matlab

Hình 2.13..

Kết quả nhận dạng.c) lớp ẩn có 29 nơ ron Xem tại trang 23 của tài liệu.
Sơ đồ nguyên lý điều khiển như hình 2.14. - Hướng dẫn sử dụng matlab

Sơ đồ nguy.

ên lý điều khiển như hình 2.14 Xem tại trang 25 của tài liệu.
Sơ đồ nguyên lý điều khiển như hình 2.15. - Hướng dẫn sử dụng matlab

Sơ đồ nguy.

ên lý điều khiển như hình 2.15 Xem tại trang 26 của tài liệu.
Hình 2.17a) lớp ẩn có 25 nơ ron - Hướng dẫn sử dụng matlab

Hình 2.17a.

lớp ẩn có 25 nơ ron Xem tại trang 29 của tài liệu.
- Sử dụng mạng ba lớp 4x30x4 có sai lệch nhỏ (hình 2.17b) so với mạng 4x25x4 (hình 2.17a) có số nơ ron lớp ẩn nhỏ hơn - Hướng dẫn sử dụng matlab

d.

ụng mạng ba lớp 4x30x4 có sai lệch nhỏ (hình 2.17b) so với mạng 4x25x4 (hình 2.17a) có số nơ ron lớp ẩn nhỏ hơn Xem tại trang 30 của tài liệu.
2.3.4.2 Nhận xét kết quả mô phỏng - Hướng dẫn sử dụng matlab

2.3.4.2.

Nhận xét kết quả mô phỏng Xem tại trang 30 của tài liệu.

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan