Giớithiệu Giớithiệu
• Các mạng nơronđơngiản dùng cho phân loạimẫu
• Kếthợpmẫu • Kếthợpmẫu
•Cácmạng cạnh tranh
• Lýthuyếtcộnghưởngthíchnghi • Lýthuyếtcộnghưởngthíchnghi
•Mạng lan truyềnngược
Lô í h ờ à ơ lô í h ờ • Lôgíchmờvàmạng nơronlôgíchmờ
•Mộtsốứng dụng trong xửlý tín hiệu
2 Các mạng nơron đơn giản dùng cho p
40 trang |
Chia sẻ: Mr Hưng | Lượt xem: 739 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu 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, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
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
Các file đính kèm theo tài liệu này:
- mnn_mang_phan_loai_2012a_mk_1622.pdf