Microsoft PowerPoint Chuong04 Nhap mon DKTM ppt [Compatibility Mode] Moân hoïc Moân hoïc NHẬP MÔN ĐIỀU KHIỂN THÔNG MINHNHẬP MÔN ĐIỀU KHIỂN THÔNG MINH Giảng viên PGS TS Huỳnh Thái Hoàng Bộ môn Điều Khi[.]
Trang 1Môn học
NHẬP MƠN ĐIỀU KHIỂN THƠNG MINH
Giảng viên: PGS.TS Huỳnh Thái Hồng
Bộ mơn Điều Khiển Tự Động
Khoa Điện – Điện Tử Đại học Bách Khoa TP.HCM
Đại học Bách Khoa TP.HCM Email: hthoang@hcmut.edu.vn Homepage: http://www4.hcmut.edu.vn/~hthoang
Trang 2Chương 4
Trang 3 Khái niệm về mạng thần kinh
Nội dung
Khái niệm về mạng thần kinh
Các cấu trúc mạng và giải thuật huấn luyện
Trang 4MẠNG THẦN KINH
Trang 5Bộ não
Bộ não con người là hệ thống xử lý thông tin phức hợp, phi tuyến và song song có khả năng học, ghi
Trang 7Tế bào thần kinh sinh học
Tế bào thần kinh gồm: thân tế bào (soma), đầu dây thần kinh vào (dendrite), khớp nối (synapse), sợi
Trang 8Tế bào thần kinh
m
x x
Trang 9Hàm tích hợp ngõ vào tế bào thần kinh
net f
Trang 100
1 )
(
f if
f
if f
1 -
0
1 )
(
f if
f
if f
f f
1 0
) (
f
f f
f
a
neáu neu
1 0
1
1 )
(
f
f f
f f
a
á neáu
neu
1 neáu f 1
Trang 11Hàm tác động
ế
Hàm tuyến tính: ( purelin )
f f
a ( )
Hàm dạng S đơn cực (logistic sigmoid function - logsig )
fe
f
1
1 )
Hàm dạng S lưỡng cực (hyperbolic tangent sigmoid
f
e f
(
function - tansig )
) 1 (
Trang 12Hàm dạng S đơn cực Hàm nấc Hàm dốc bão hòa
1 0
(f)
1 0
1
1
(f)
1 0
Trang 13Ví dụ tính ngõ ra của tế bào thần kinh
; 4 0
; 8 0
; 3 0
; 4 0
; 5 0
; 1
3 2
1
3 2
w
x x
x
Giải:
Trang 14Cấu trúc mạng thần kinh
Mạng truyền thẳng 1 lớp Mạng truyền thẳng nhiều lớp
Mạng hồi qui lớp Mạng hồi qui nhiều lớp
Trang 15Các phương pháp huấn luyện mạng
Học có giám sát
Trang 16Các phương pháp huấn luyện mạng
Học có củng cố
Trang 17Các phương pháp huấn luyện mạng
Học có không giám sát
Trang 18Sơ đồ huấn luyện một tế bào thần kinh
) ( )
( )
1 ( k 1 ) ( k ) ( k )
) ( )
Trang 19 m ij j
i w x net
1
1 neáu net 0
Trang 20; 5 0
; 8 0
; 8 0
; 5 0
;
;
;
3 2
1
3 2
Trang 21Thuật toán học sửa sai huấn luyện perceptron
Thuật toán học sửa sai (Delta learning rule)
) ( )
( )
Thuật toán học sửa sai (Delta learning rule)
) ( )
()
()
(k d k y k k
r i i i i
Trang 22Thuật toán học sửa sai huấn luyện perceptron
T ( ) ( )) (
step )
) ( ) ) ( )
( ( )
( )
E
E>0 thì gán k =1, E =0 và trở lại bước 2
Trang 23Ví dụ: Huấn luyện Perceptron thực hiện cổng OR
x
Trang 24Thí dụ ứng dụng: Phát hiện viên gạch bị lỗi
Dữ liệu huấn luyện mạng:
Dữ liệu huấn luyện mạng:
Biên độ tín hiệu 475Hz
Biên độ tín hiệu 555 Hz
Chất lượng viên gạch
hiệu 475Hz hiệu 555 Hz viên gạch
Trang 25Khái niệm khả phân tuyến tính
Xét trường hợp mạng chỉ có một Perceptron Gọi tập hợp
Xét trường hợp mạng chỉ có một Perceptron Gọi tập hợpmẫu vector ngõ vào huấn luyện Perceptron là:
Trang 26x21
Trang 27Tính hội tụ của giải thuật huấn luyện Perceptron
Nếu tập dữ liệu huấn luyện Perceptron khả phân tuyến tính
Nếu tập dữ liệu huấn luyện Perceptron khả phân tuyến tínhthì giải thuật huấn luyện Perceptron hội tụ
Trang 29; 2
; 3 0
; 7 0
; 5 0
;
;
;
3 2
1
3 2
Trang 30Huấn luyện mạng Adaline
Tập dữ liệu huấn luyện mạng gồm K mẫu:
Tập dữ liệu huấn luyện mạng gồm K mẫu:
x x
x , , , ] [ 1 2
n
d d
(
k k
k d
net y
k E k
x w
) ( ) ) ( )
( ( )
( )
1 ( k i k di k yi k k
Trang 31Thuật toán Widrow
Thuật toán Widrow Hoff huấn luyện Adaline Hoff huấn luyện Adaline
Bước 1: Chọn ; gán k=1 E=0 ; khởi động ngẫu nhiên w (k)
Bước 1: Chọn ; gán k=1 , E=0 ; khởi động ngẫu nhiên wi(k)
Bước 2: Tính ngõ ra của mạng:
T ( ) ( ) )
yi wi T x
Bước 3: Cập nhật trọng số:
) ( ) ) ( )
( (
) ( )
E
Bước 4: Tính sai số tích lũy:
Bước 5: Nếu k<K thì gán k = k+1 và trở lại bước 2
Bước 5: Nếu k<K thì gán k k+1 và trở lại bước 2
Nếu k=K thì tiếp tục bước 7
Trang 32Mạng truyền thẳng nhiều lớp (MLP)
Trang 33Biểu thức ngõ ra mạng truyền thẳng 3 lớp
Tổng có trọng số tín hiệu vào tế bào thần kinh thứ q ở lớp ẩn:
Tổng có trọng số tín hiệu vào tế bào thần kinh thứ q ở lớp ẩn:
1
m T
Trang 341 0.4; 2 0.5; 3 0.3
w = w = - q =
Trang 35-Ví dụ tính ngõ ra của mạng MLP
Giải:
Giải:
Trang 36Công thức tính sai số
Sai số giữa ngõ ra của mạng và dữ liệu ra mong
Sai số giữa ngõ ra của mạng và dữ liệu ra mong muốn là hàm phụ thuộc vào trọng số của mạng:
, ( w v
1
Trang 37Thuật toán suy giảm độ dốc cập nhật trọng số
Biểu thức cập nhật trọng số lớp ra:
Biểu thức cập nhật trọng số lớp ra:
i i
k
E k
( (
))][
( )
( ( [ d k y k a net k z k
wi ( k 1 ) i ( k ) oi ( k )
Trang 38Thuật toán suy giảm độ dốc cập nhật trọng số
Biể thứ ậ hật t ố lớ ẩ
Biểu thức cập nhật trọng số lớp ẩn:
q q
k
E k
E k
E
v v
)()
((
[)())
((
))()
((d k y k a net k w k a h net q k x j k
n
iq i
o i
vq( k 1 ) q( k ) hq ( k )
Trang 39Thuật toán lan truyền ngược (Back propagation)
Bước 1: Chọn ; gán k=1 E=0 ; khởi động ngẫu nhiên trọng
Bước 1: Chọn ; gán k=1 , E=0 ; khởi động ngẫu nhiên trọng
) ( ) ( )
Trang 40Thuật toán lan truyền ngược (Back propagation)
Bước 3: (Lan truyền ngược sai số) Cập nhật trọng số:
Bước 3: (Lan truyền ngược sai số) Cập nhật trọng số:
Lớp ra: oi ( k ) [( di ( k ) yi ( k ))][ ao ( neti ( k ))]
) ( ) ( )
( )
1
) 1
( i n
Lớp ẩn:
) ( ) ( )
( )
) ( )
( )
( k k w k ah netq k
n
iq oi
q
) ( ) ( )
( )
(
[ 2
1
Bước 4: Tính sai số tích lũy:
Bước 5: Nếu k<K thì gán k = k+1 và trở lại bước 2
Bước 5: Nếu k<K thì gán k k+1 và trở lại bước 2
Nếu k=K thì tiếp tục bước 7
Bước 6: Kết thúc chu kỳ huấn luyện Nếu E thì kết thúc
Bước 6: Kết thúc chu kỳ huấn luyện Nếu E thì kết thúc Nếu E > thì gán gán k =1, E =0 và trở lại bước 2
Trang 41) (
)
(
f
f f
f
e
e e
e f
( f a f a f
Trang 42
1 1
2 )
(
f f
e e
) (
2
2 2
) 1
( )
1
( 2
1 )
1 (
2 )
(
f
f f
f
f
e
e e
e
e f
( f a2 f
2
Trang 43Ví dụ: Xấp xỉ hàm dùng mạng truyền thẳng nhiều lớp
Bài t á Xấ ỉ hà hi t ế
Bài toán: Xấp xỉ hàm phi tuyến:
) 10
Số tế bào thần kinh ở lớp ẩn là N Thí dụ này khảo sát khả
Số tế bào thần kinh ở lớp ẩn là N Thí dụ này khảo sát khả năng xấp xỉ của mạng trong 4 trường hợp N bằng 6, 8, 10,
12
Hàm kích hoạt ở lớp ẩn là tansig, ở lớp ra là tuyến tính
Trang 44Ví dụ: Xấp xỉ hàm dùng mạng truyền thẳng nhiều lớp (tt)
Tậ dữ liệ h ấ l ệ ồ 300 ẫ
Tập dữ liệu huấn luyện mạng gồm 300 mẫu
Trang 45Ví dụ: Xấp xỉ hàm dùng mạng truyền thẳng nhiều lớp (tt)
Kết quả huấn luyện mạng
Kết quả huấn luyện mạng
Trang 46Ứng dụng xấp xỉ hàm
Trang 472 1
2 1
1
2 1
2 1
Trang 48GIỚI THIỆU NEURAL NETWORKS TOOLBOX
Trang 49Các hàm cơ bản của NN Toolbox
>> mynet=newff(X D N {‘tansig’ ‘purelin’});
>> mynet newff(X,D,N,{ tansig purelin });
% khai báo mạng neuron 3 lớp
% số ngõ vào là số hàng của X; số ngõ ra là số hàng của D
% ố ở lớ ẩ là N
% số nơ ron ở lớp ẩn là N
% hàm tác động lớp ẩn là tansig, ở lớp ra là purelin
>> mynet=perceptron %khai báo một perceptron
>> mynet=train(mynet,X,D);
% huấn luyện mạng mynet với dữ liệu vào là X dữ liệu ra là D
>> mynet=perceptron %khai báo một perceptron
% huấn luyện mạng mynet với dữ liệu vào là X, dữ liệu ra là D
% số cột của X = số cột của D = số mẫu dữ liệu huấn luyện
>> Y=Y simsim(mynet,X);(mynet,X);
% tính ngõ ra của mạng mynet khi ngõ vào là X
% số cột của X là số mẫu dữ liệu cần tính