Bài giảng Mạng nơron và ứng dụng trong xử lý tín hiệu - Các mạng nơron đơn giản dùng cho phân loại mẫu - Nguyễn Công Phương
Tóm tắt Bài giảng Mạng nơron và ứng dụng trong xử lý tín hiệu - Các mạng nơron đơn giản dùng cho phân loại mẫu - Nguyễn Công Phương: .... # 1 1 1 1 1 VD2 . # . # . . . # . . # # 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 . . . # . . . # 1 1 1 1 1 1, 1, 1, 1,1; 1,1, 1,1, 1; 1, 1,1, 1, 1; 1,1, 1,1, 1;1, 1, 1, 1,1 . # # # . # . . . # 1 1 1 1 1 1 1 1 ... 5 Lặp lại các bước 2, 3, 4 cho tất cả cặp đầu vào & đầu ra của bộ huấn luyện ế ố ế Các mạng nơron đơn giản dùng cho phân loại mẫu 22 Bước 6 Lặp lại các bước 2, 3, 4, 5 cho đ n khi các trọng s không bi n thiên nữa Perceptron (3) x1 x2 b t VD1 x1t x2t αt net y w1 w2 b 1 1 1 1 1 0 1 –1 0 0 0... Bước 2 Đặt giá trị cho các nơron đầu vào xi = si Bước 3 Tính giá trị của nơron đầu ra Bước 4 Chỉnh trọng số i inet b w x wi(mới) = wi(cũ) + α(t – net)xi ; b(mới) = b(cũ) + α(t – net) ; Bước 5 Lặp lại các bước 2, 3, 4 cho tất cả cặp đầu vào & đầu ra của bộ huấn luyện Bước 6 Lặp lại các b...
Nguyễn Công Phương Mạng nơron và ứng dụng trong xử lý tín hiệu Các mạng nơron đơn giản dùng cho phân loại mẫu Nội dung • Giới thiệu • Các mạng nơron đơn giản dùng cho phân loại mẫu • Kết hợp mẫu • Các mạng cạnh tranh • Lý thuyết cộng hưởng thích nghi • Mạng lan truyền ngược Lô í h ờ à ơ lô í h ờ• g c m v mạng n ron g c m • Một số ứng dụng trong xử lý tín hiệu 2Các mạng nơron đơn giản dùng cho phân loại mẫu Nội dung • Giới thiệu • Mạng Hebb • Perceptron • Adaline • Madaline 3Các mạng nơron đơn giản dùng cho phân loại mẫu Giới thiệu (1) 1 X1 b Y w1 1 0 ( ) nÕu Õ net f net Xi wi 1 0n u i i i net net b w x Xn wn Các mạng nơron đơn giản dùng cho phân loại mẫu 4 xGiới thiệu (2) 2 2 b w 1 b w b 1x0 1 1 0 ( ) 1 0 nÕu nÕu net f net net net b w x w x YX1 w1 1 1 2 2 X2 w2 1 1 2 2 0b w x w x 1w b Các mạng nơron đơn giản dùng cho phân loại mẫu 5 2 1 2 2 x x w w Giới thiệu (3) 2x x1 x2 y 2 9 1 3 5 1 1 2270 18; 15 b w w 6 8 1 12 3 1 15b 7 15 –1 8 11 –1 12 14 –1 2w 14 6 –1 1 0 ( ) nÕu nety f net 1x0 18b w 1 2 1 0 270 15 18 nÕu net net x x 8 5 270 15 8 18 5 60 x x net 1 y Các mạng nơron đơn giản dùng cho phân loại mẫu 6 11 2 , . . 1 211, 7 270 15.11 18.7 21 x x net 1y Giới thiệu (4) 2x 15b 2w 1 2270 18; 15 b w w 1 2540 30; 36 b w w 1x0 18b w 1 21 0,056; 0,067 b w w Các mạng nơron đơn giản dùng cho phân loại mẫu 7 1 Giới thiệu (5) x1 x2 y x1 x2 y 2 9 1 3 5 1 6 8 1 2 9 –1 3 5 –1 6 8 1 12 3 1 7 15 –1 – 12 3 –1 7 15 1 8 11 –1 12 14 –1 14 6 –1 8 11 1 12 14 1 14 6 1 1 0 ( ) 1 0 nÕu nÕu net y f net net 1 0 ( ) 1 0 nÕu nÕu net y f net net Các mạng nơron đơn giản dùng cho phân loại mẫu 8 1 2270 15 18 net x x 1 2270 15 18 net x x Giới thiệu (6) 2x 1x0 Các mạng nơron đơn giản dùng cho phân loại mẫu 9 Giới thiệu (7) 1 X1 b Y w1 1 0 ( ) nÕu Õ net f net Xi wi 1 0n u i i i net net b w x Xn wn 0 i ib w xBiên giới: Các mạng nơron đơn giản dùng cho phân loại mẫu 10 i Nội dung • Giới thiệu • Mạng Hebb • Perceptron • Adaline • Madaline 11Các mạng nơron đơn giản dùng cho phân loại mẫu Mạng Hebb (1) Bước 1 Khởi tạo tất cả các trọng số wi = 0 (i = 1 tới n) B ớ 2 Đặt iá t ị h á đầ àư c g r c o c c nơron u v o xi = si Bước 3 Đặt giá trị cho nơron đầu ra y = t Bước 4 Chỉnh trọng số wi(mới) = wi(cũ) + xiy (i = 1 tới n) Chỉnh bias b(mới) = b(cũ) + y Bước 5 Lặp lại các bước 2, 3, 4 cho tất cả cặp đầu vào & đầu ra của bộ huấn luyện Các mạng nơron đơn giản dùng cho phân loại mẫu 12 Mạng Hebb (2) x1 x2 b y x1y x2y w1 w2 b VD1 1 1 1 1 1 0 1 0 0 0 0 1 1 0 + 1 = 1 0 + 1 = 1 0 + 1 = 1 0 0 1 + 0 = 1 1 + 0 = 1 1 + 0 = 1 0 1 1 0 0 0 1 0 0 0 1 + 0 = 1 1 + 0 = 1 1 + 0 = 1 0 0 1 + 0 = 1 1 + 0 = 1 1 + 0 = 1 Bước 1 wi = 0 (i = 1 tới n) Bước 2 xi = si Bước 3 y = t 1 0( ) nÕu netf net Bước 4 wi(mới) = wi(cũ) + xiy (i = 1 tới n) b(mới) = b(cũ) + y Bước 5 Lặp lại các bước 2, 3, 4 1 2 0 0 1 nÕu net net x x Các mạng nơron đơn giản dùng cho phân loại mẫu 13 Mạng Hebb (3) x1 x2 b y x1y x2y w1 w2 b VD1 1 1 1 1 1 0 1 –1 0 0 0 1 1 0 + 1 = 1 0 + 1 = 1 0 + 1 = 1 –1 0 1 – 1 = 0 0 + 1 = 1 1 – 1 = 0 0 1 1 –1 0 0 1 –1 0 –1 0 + 0 = 0 1 – 1 = 0 0 – 1 = –1 0 0 0 + 0 = 0 0 + 0 = 0 –1 – 1 = –2 Bước 1 wi = 0 (i = 1 tới n) Bước 2 xi = si Bước 3 y = t 1 0( ) nÕu netf net Bước 4 wi(mới) = wi(cũ) + xiy (i = 1 tới n) b(mới) = b(cũ) + y Bước 5 Lặp lại các bước 2, 3, 4 1 2 1 0 2 0 0 nÕu net net x x Các mạng nơron đơn giản dùng cho phân loại mẫu 14 Mạng Hebb (4) x1 x2 b y x1y x2y w1 w2 b VD1 1 1 1 1 1 –1 1 –1 0 0 0 1 1 0 + 1 = 1 0 + 1 = 1 0 + 1 = 1 –1 1 1 – 1 = 0 1 + 1 = 2 1 – 1 = 0 –1 1 1 –1 –1 –1 1 –1 1 –1 0 + 1 = 1 2 – 1 = 1 0 – 1 = –1 1 1 1 + 1 = 2 1 + 1 = 2 –1 – 1 = –2 Bước 1 wi = 0 (i = 1 tới n) Bước 2 xi = si Bước 3 y = t 1 0( ) nÕu netf net Bước 4 wi(mới) = wi(cũ) + xiy (i = 1 tới n) b(mới) = b(cũ) + y Bước 5 Lặp lại các bước 2, 3, 4 1 2 1 0 2 2 2 nÕu net net x x Các mạng nơron đơn giản dùng cho phân loại mẫu 15 Mạng Hebb (5) # . . . # 1 1 1 1 1 VD2 . # . # . . . # . . # # 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 . . . # . . . # 1 1 1 1 1 1, 1, 1, 1,1; 1,1, 1,1, 1; 1, 1,1, 1, 1; 1,1, 1,1, 1;1, 1, 1, 1,1 . # # # . # . . . # 1 1 1 1 1 1 1 1 1 1 # . . . # # . . . # . # # # . 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Các mạng nơron đơn giản dùng cho phân loại mẫu 16 1,1,1,1, 1;1, 1, 1, 1,1;1, 1, 1, 1,1;1, 1, 1, 1,1; 1,1,1,1, 1 Mạng Hebb (6) # . . . # (1) [1, 1, 1, 1,1, 1,1, 1,1, 1, 1, 1,1, 1, 1, 1,1, 1,1, 1,1, 1, 1, 1,1] x (1) VD2 . # . # . . . # . . . # . # . (0) [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]w 1y (0) 0b # . . . # (1) (0) (1) (1) [1, 1, 1, 1,1, 1,1, 1,1, 1, 1, 1,1, 1, 1, 1,1, 1,1, 1,1, 1, 1, 1,1] yw w x (1) (0) (1) 0 1 1 b b y . # # # . # . . . # (2) [ 1,1,1,1, 1,1, 1, 1, 1,1,1, 1, 1, 1,1,1, 1, 1, 1,1, 1,1,1,1, 1] x (2) 1 y # . . . # # . . . # . # # # . (2) (1) (2) (2) [2, 2, 2, 2,2, 2,2,0,2, 2, 2,0,2,0, 2, 2,2,0,2, 2,2, 2, 2, 2,2] yw w x (2) (1) (2) 1 1 0 b b y Các mạng nơron đơn giản dùng cho phân loại mẫu 17 Mạng Hebb (7) 1 0 ( ) 1 0 nÕu nÕu net f net net VD2 25 1 [2, 2, 2, 2,2, 2,2,0,2, 2, 2,0,2,0, 2, 2,2,0,2, 2,2, 2, 2, 2,2] i iinet w x w # . . . . . # . # . . . # . . [1, 1, 1, 1, 1, 1,1, 1,1, 1, 1, 1,1, 1, 1, 1,1, 1,1, 1,1, 1, 1, 1,1] x 40net . # . # . # . . . # 1f # # # # . # . . . # # . . . # [1,1,1,1, 1,1, 1, 1, 1,1,1, 1, 1, 1,1,1, 1, 1, 1,1, 1,1,1,1, 1] x 40 net Các mạng nơron đơn giản dùng cho phân loại mẫu 18 # . . . # . # # # . 1 f Mạng Hebb (8) x1 x2 x3 y VD3 (1, 1,1) 3x ( 1,1,1) (1,1,1) 1 1 1 1 1 1 –1 –1 1 –1 1 –1 –1 1 1 –1 1x 2x (1,1, 1) 1 0 ( ) nÕu net f net 1 0 2 nÕu net net Các mạng nơron đơn giản dùng cho phân loại mẫu 19 Nội dung • Giới thiệu • Mạng Hebb • Perceptron • Adaline • Madaline 20Các mạng nơron đơn giản dùng cho phân loại mẫu Perceptron (1) 1 X1 b Y w1 Xi wi 1 ( ) 0 nÕu nÕu net f net net Xn wn 1 nÕu net ( ) ( )íi ò t Các mạng nơron đơn giản dùng cho phân loại mẫu 21 m ci i iw w x Perceptron (2) Bước 1 Khởi tạo tất cả các trọng số wi = 0; α = 1; Bước 2 Đặt giá trị cho các nơron đầu vào xi = si B ớ 3 Tí h iá t ị ủ đầư c n g r c a nơron u ra 1 ; 0 nÕu nÕu i i net net b w x y net Bước 4 Chỉnh trọng số Nếu y ≠ t w (mới) = w (cũ) + αtx ; b(mới) = b(cũ) + αt ; 1 nÕu net i i i Nếu y = t wi(mới) = wi(cũ) ; b(mới) = b(cũ) ; Bước 5 Lặp lại các bước 2, 3, 4 cho tất cả cặp đầu vào & đầu ra của bộ huấn luyện ế ố ế Các mạng nơron đơn giản dùng cho phân loại mẫu 22 Bước 6 Lặp lại các bước 2, 3, 4, 5 cho đ n khi các trọng s không bi n thiên nữa Perceptron (3) x1 x2 b t VD1 x1t x2t αt net y w1 w2 b 1 1 1 1 1 0 1 –1 0 0 0 1 1 1 0 0 1 1 1 –1 0 –1 2 1 0 1 0 0 1 1 –1 0 0 1 –1 0 –1 –1 1 1 0 0 –1 0 0 –1 –1 –1 0 0 –1 1 0,5nÕu i inet b w x net x1t x2t αt net y w1 w2 b 0 0 –1 0 0,5 0,5 1 0,5 nÕu nÕu y net net Nếu y ≠ t : w (mới) = w (cũ) + αtx 1 1 1 –1 –1 1 1 0 –1 0 –1 1 1 0 1 –1 0 –1 –1 0 –1 0 0 –2 Các mạng nơron đơn giản dùng cho phân loại mẫu 23 i i i b(mới) = b(cũ) + αt 0 0 –1 –2 –1 0 0 –2 Perceptron (4) x1 x2 b t VD1 x1t x2t αt net y w1 w2 b 1 1 1 1 1 0 1 –1 0 0 0 1 1 1 0 0 1 1 1 –1 0 –1 2 1 0 1 0 0 1 1 –1 0 0 1 –1 0 –1 –1 1 1 0 0 –1 0 0 –1 –1 –1 0 0 –1 1 0,5nÕu i inet b w x net x1t x2t αt net y w1 w2 b 0 0 –1 0 0,5 0,5 1 0,5 nÕu nÕu y net net Nếu y ≠ t : w (mới) = w (cũ) + αtx 1 1 1 –1 –1 2 3 –4 –1 0 –1 –2 –1 2 3 –4 0 –1 –1 –1 –1 2 3 –4 Các mạng nơron đơn giản dùng cho phân loại mẫu 24 i i i b(mới) = b(cũ) + αt 0 0 –1 –4 –1 2 3 –4 Perceptron (5) x1 x2 b t VD1 x1t x2t αt net y w1 w2 b 1 1 1 1 1 –1 1 –1 0 0 0 1 1 1 0 0 1 1 1 –1 1 –1 1 1 0 2 0 –1 1 1 –1 –1 –1 1 –1 1 –1 –1 2 1 1 1 –1 1 1 –1 –3 –1 1 1 –1 1 0,5nÕu i inet b w x net x1t x2t αt net y w1 w2 b 1 1 –1 0 0,5 0,5 1 0,5 nÕu nÕu y net net Nếu y ≠ t : w (mới) = w (cũ) + αtx 1 1 1 1 1 1 1 –1 –1 1 –1 –1 –1 1 1 –1 1 –1 –1 –1 –1 1 1 –1 Các mạng nơron đơn giản dùng cho phân loại mẫu 25 i i i b(mới) = b(cũ) + αt 1 1 –1 –3 –1 1 1 –1 Perceptron (6) # . . . # . # . # . . # # # . # . . . # # . . . . . # . # . # # # # . # . . . # # . . . # . # . # . # . . . # . # . # . . . # . . . # . # . # . . . # # . . . # # . . . # . # # # . . . # . . . # . # . # . . . # # . . . # # . . . # . # # # . . . # . . . . # . . . . # . . . . . . . . . # . . . . # . . X1 Y1w1,1 wi,1w1j Xi w25,1 Yjwij w1,mwi,mw25,j Các mạng nơron đơn giản dùng cho phân loại mẫu 26 X25 Ymw25,m Perceptron (7) • Nếu có một bộ trọng số w* sao cho đầu ra của mạng đúng với giá mục tiêu, thì dù xuất phát từ bất kỳ bộ trọng số w nào, thuật toán huấn luyện perceptron cũng luôn hội tụ về một bộ trọng số, mà với bộ trọng số này, giá trị đầu ra đúng với mọi giá trị mục tiêu, và bộ trọng số này thu đ t ột ố b ớ lặ hữ hược rong m s ư c p u ạn Các mạng nơron đơn giản dùng cho phân loại mẫu 27 Nội dung • Giới thiệu • Mạng Hebb • Perceptron • Adaline • Madaline 28Các mạng nơron đơn giản dùng cho phân loại mẫu Adaline (1) 1 X1 b Y w1 Xi wi Xn wn Các mạng nơron đơn giản dùng cho phân loại mẫu 29 Adaline (2) Bước 1 Khởi tạo tất cả các trọng số & hệ số học α Bước 2 Đặt giá trị cho các nơron đầu vào xi = si Bước 3 Tính giá trị của nơron đầu ra Bước 4 Chỉnh trọng số i inet b w x wi(mới) = wi(cũ) + α(t – net)xi ; b(mới) = b(cũ) + α(t – net) ; Bước 5 Lặp lại các bước 2, 3, 4 cho tất cả cặp đầu vào & đầu ra của bộ huấn luyện Bước 6 Lặp lại các bước 2, 3, 4, 5 cho đến khi sự thay đổi trọng số lớn nhất trong ốbước 4 nhỏ hơn một sai s cho trước Các mạng nơron đơn giản dùng cho phân loại mẫu 30 Adaline (3) x1 x2 t VD1 1 1 1 1 0 –1 4 2[ ( ) ( ) ( )]e x i w x i w w t i 0 1 –1 0 0 –1 1 1 2 2 0 1i 1 2 02; 2; 2,5w w w Các mạng nơron đơn giản dùng cho phân loại mẫu 31 Adaline (4) x1 x2 t VD2 1 1 1 1 –1 –1 4 2[ ( ) ( ) ( )]e x i w x i w w t i –1 1 –1 –1 –1 –1 1 1 2 2 0 1i 1 2 00,5; 0,5; 0,5w w w Các mạng nơron đơn giản dùng cho phân loại mẫu 32 Adaline (5) x1 x2 t VD3 1 1 1 1 –1 1 4 2[ ( ) ( ) ( )]e x i w x i w w t i –1 1 1 –1 –1 –1 1 1 2 2 0 1i 1 2 00,5; 0,5; 0,5w w w Các mạng nơron đơn giản dùng cho phân loại mẫu 33 Adaline (6) 2 2 1 ( ) n i i i e t net t x w 2( ) 2( )e net I I I t net t net x w w ( )I Iw t net x Các mạng nơron đơn giản dùng cho phân loại mẫu 34 Adaline (7) 2 1 ( ) m j j j e t net 2 2 1 ( ) ( ) m j j J J jIJ IJ IJ e t net t net w w w 2( ) 2 n n J J J J i iJ i iJ nett net t x w x w 1 1 2( ) i iIJ IJ J J I w w t net x Các mạng nơron đơn giản dùng cho phân loại mẫu 35 ( )IJ J J Iw t net x Nội dung • Giới thiệu • Mạng Hebb • Perceptron • Adaline • Madaline 36Các mạng nơron đơn giản dùng cho phân loại mẫu Madaline (1) 1 1 X1 w11 b1 b3 Z1 Y v1w12 w21 v2Z2 X2 w22 1 b2 1 0 ( ) 1 0 nÕu nÕu x f x x Các mạng nơron đơn giản dùng cho phân loại mẫu 37 Madaline (2) Bước 1 Khởi tạo: v1 = 0,5; v2 = 0,5; b3 = 0,5; tất cả các trọng số còn lại và hệ số học α lấy các giá trị ngẫu nhiên nhỏ Bước 2 Đặt giá trị cho các nơron đầu vào xi = si Bước 3 Tính giá trị đầu vào cho các adaline ẩn: z vao = b + w x + w x ; z vao = b + w x + w x_ 1 1 11 11 21 2 _ 2 2 12 1 22 2 Bước 4 Tính giá trị đầu ra của các adaline ẩn: z1 = f(z_vao1); z2 = f(z_vao2); Bước 5 Tính giá trị đầu ra của mạng: y vao = b + v z + v z ; y = f(y vao);_ 3 1 1 2 2 _ Bước 6 Tính sai số & cập nhật trọng số: Nếu t = y: không cập nhật trọng số Nếu t = 1: cập nhật trọng số cho adaline ẩn ZJ có đầu vào gần 0 nhất b (mới) = b (cũ) + α(1 – net ); w (mới) = w (cũ) + α(1 – net )x ;j j J iJ iJ J i Nếu t = –1:cập nhật tất cả các trọng số cho các adaline ẩn Zk có đầu vào dương bk(mới) = bk(cũ) + α(–1 – netk); wik(mới) = wik(cũ) + α(–1 – netk)xi Bước 7 Lặp lại các bước từ 2 – 6 cho tất cả các véctơ huấn luyện Bước 8 Lặp lại các bước từ 2 – 7 cho đến khi các trọng số ngừng thay đổi (hoặc thay đổi ít Các mạng nơron đơn giản dùng cho phân loại mẫu 38 hơn một ngưỡng cho trước), hoặc nếu số lần lặp bằng một giá trị cho trước Madaline (3) x1 x2 t VD 11 21 10,2; 0,1; 0,3w w b 1 1 –1 1 –1 1 12 22 2 1 2 3 0,1; 0,3; 0,4 0,5; 0,5; 0,5; 0,5 w w b v v b –1 1 1 –1 –1 –1 1 21; 1x x 1_ 0,3 0,2 0,1 0,6 0 4 0 1 0 3 0 7 z vao 2_ , , , ,z vao 1 1 2 2( _ ) 1; ( _ ) 1z f z vao z f z vao _ 0,5 0,5 0,5 1,5y vao ( _ ) 1y f y vao Các mạng nơron đơn giản dùng cho phân loại mẫu 39 1 1 2 0t y Madaline (4) x1 x2 t VD 11 21 10,2; 0,1; 0,3w w b 1 1 –1 1 –1 1 12 22 2 1 2 3 0,1; 0,3; 0,4 0,5; 0,5; 0,5; 0,5 w w b v v b 0 6; 0 7z vao z vao –1 1 1 –1 –1 –1 1 2_ , _ , 11 21 1 12 22 2 0,6; 0,7; 0,5 0,75; 0,55; 0,45 w w b w w b 1 1 1( ) ( ) ( 1 _ ) 0,3 0,5( 1 0,6) 0,5 míi còb b z vao 2 2 2( ) ( ) ( 1 _ ) 0,4 0,5( 1 0,7) 0,45 míi còb b z vao 11 11 1 1( ) ( ) ( 1 _ ) 0,2 0,5( 1 0,6)1 0,6 míi còw w z vao x ( ) ( ) ( 1 )míi còw w z vao x 12 12 2 2( ) ( ) ( 1 _ ) 0,1 0,5( 1 0,7)1 0,75 míi còw w z vao x ( ) ( ) ( 1 )míi còw w z vao x Các mạng nơron đơn giản dùng cho phân loại mẫu 40 21 21 1 2_ 0,1 0,5( 1 0,6)1 0,7 22 22 2 2_ 0,3 0,5( 1 0,7)1 0,55
File đính kèm:
- bai_giang_mang_noron_va_ung_dung_trong_xu_ly_tin_hieu_cac_ma.pdf