You are on page 1of 20

Cơ sở hệ mờ và mạng nơ ron

Nguyễn Hoài Nam

Bộ môn Điều khiển tự động, Viện Điện, Trường Đại học Bách Khoa Hà Nội
Email: nam.nguyenhoai@hust.edu.vn
Trang cá nhân: https://sites.google.com/view/n2c

Ngày 6 tháng 5 năm 2021

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 1 / 19
Overview

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 2 / 19
Phương pháp huấn luyện mạng

Thuật toán lan truyền ngược


Phương pháp gradient
Phương pháp chỉnh hướng học

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 3 / 19
Thuật toán lan truyền ngược

Mạng nhiều lớp: Xét mạng có M lớp, R đầu vào và S M đầu ra.
Tập mẫu: Ω = {pi ; ti }, i = 1 ÷ Q, pi - đầu vào mẫu và ti - đầu ra
mẫu (đích).
Hàm mục tiêu:
Q
1 X
J= Jq → min, (1)
Q
q=1

trong đó Jq = eTq eq , eq = tq − aM M
q , aq - đầu ra tương ứng với đầu
vào pq .

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 4 / 19
Thuật toán lan truyền ngược

Phương pháp gradient

m m ∂Jq
wi,j (k + 1) = wi,j (k) − α m, (2)
∂wi,j

m : trọng số của nơ ron thứ i thuộc lớp m, liên kết với đầu ra của
wi,j
nơ-ron thứ j thuộc lớp m − 1; k: thể hiện giá trị hiện tại; k + 1: thể
hiện giá trị mới, α > 0: tốc độ học.

∂Jq
bim (k + 1) = bim (k) − α , (3)
∂bim
bim : ngưỡng của nơ-ron thứ i thuộc lớp m.

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 5 / 19
Quy tắc chuỗi

∂Jq ∂Jq ∂nim


m = (4)
∂wi,j ∂nim ∂wi,j
m

m−1
SX
nim = bim + m m−1
wi,v av , (5)
v=1

∂nim
m = ajm−1 (6)
∂wi,j
∂nim
= 1. (7)
∂bim

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 6 / 19
Độ nhạy

Độ nhạy của nơ-ron thứ i thuộc lớp m:

∂Jq
sim = (8)
∂nim
m
wi,j m
(k + 1) = wi,j (k) − αsim ajm−1 (9)
bim (k + 1) = bim (k) − αsim (10)
Wm (k + 1) = Wm (k) − αsm (am−1 )T (11)
bm (k + 1) = bm (k) − αsm , (12)
∂Jq h
∂Jq ∂Jq ∂Jq T
i
sm = = ∂n m ∂n m . . . ∂n m , (13)
∂nm 1 2 i

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 7 / 19
Độ nhạy

!
Sm
m+1 m
al + bim+1
P
∂ wi,l
m+1
∂ni l=1
=
∂nj m ∂njm

m+1
∂ajm
=wi,j
∂njm

m+1
∂f m (njm )
=wi,j
∂njm
m+1 m m
=wi,j ḟ (nj ).

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 8 / 19
Độ nhạy

∂n1m+1 ∂n1m+1 ∂n1m+1


 
∂n1m ∂n2m ... ∂nSmm
 
 ∂n2m+1 ∂n2m+1 ∂n2m+1 
∂nm+1 
∂n1m ∂n2m ... ∂nSmm
 m
= .  = Wm+1 Ḟ (nm ) (14)
 
∂nm  . .. ..
 . . .


 ∂nm+1 ∂nm+1 ∂nm+1 
S m+1 Sm+1 m+1
S
∂n1m ∂n2m ... ∂nSmm
 m m 
ḟ (n1 ) 0 ... 0
m m
m  0 ḟ (n2 ) ... 0
 
Ḟ (nm ) =  . . (15)

.. ..
 .. . . 
0 0 ... ḟ m (nSmm )

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 9 / 19
Độ nhạy

∂Jq
sm =
∂nm
 m+1 T
∂n ∂Jq
= m
∂n ∂nm+1
m ∂Jq
=Ḟ (nm )(Wm+1 )T m+1
∂n
m
=Ḟ (nm )(Wm+1 )T sm+1 .
Từ công thức này ta có thể tính được độ nhạy của các lớp lần lượt từ
lớp đầu ra ngược trở về lớp đầu vào như sau:

sM → sM−1 → ... → s2 → s1 . (16)

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 10 / 19
Độ nhạy

∂Jq
siM =
∂niM
T 
∂ tq − aq tq − a q
=
∂niM
P M 2 (17)
∂ Sj=1 tj − aj
=
∂niM
∂a
= − 2(ti − ai ) Mi .
∂ni
M
sM = −2Ḟ (nM )(tq − aq ). (18)

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 11 / 19
Thuật toán lan truyền ngược
Quá trình khởi tạo mạng: Chọn giá trị ban đầu cho các tham số.
Quá trình lan truyền thuận
a0 = p, (19)
am+1 =fm+1 (Wm+1 am + bm+1 ), ∀ m = 0, 1, ..., M − 1. (20)
a = aM . (21)
Quá trình lan truyền ngược độ nhạy
M
sM = −2Ḟ (nM )(t − a), (22)
m
sm =Ḟ (nm )(Wm+1 )T sm+1 , ∀ m = M − 1, ..., 2, 1. (23)
Quá trình cập nhật các tham số của mạng
Wm (k + 1) = Wm (k) − αsm (am−1 )T (24)
bm (k + 1) = bm (k) − αsm (25)
Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 12 / 19
Ví dụ

Xấp xỉ hàm số sau


π
y = 1 + cos( x)
4
với −2 ≤ x ≤ 2.
Chọn mạng có cấu trúc gồm 2 lớp, lớp 1 có hàm truyền là logsig và lớp
2 có hàm truyền purelin.
Đầu vào mẫu thứ i:

xi = −2 + 4i/(Q − 1), với i = 0, 1, 2..., Q − 1. (26)

Đầu ra mẫu tương ứng với xi là:


π 
yi = 1 + cos xi . (27)
4

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 13 / 19
Ví dụ
Mẫu thứ nhất là: x1 = −2, y1 = 1.
Khởi tạo mạng: w1 = [1 1]T , b1 = [2 2]T , w2 = [1 1], b 2 = −1
và tốc độ học là α = 0.1.
Quá trình lan truyền thuận: a0 = −2,
a1 =f1 (w1 a0 + b1 )
   
1 2
=logsig (−2) +
1 2 (28)
   
0 0, 5
=logsig =
0 0, 5

a2 =f 2 (w2 a1 + b 2 )
 
0, 5
=purelin([1 1] − 1) (29)
0, 5
=0
Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 14 / 19
Ví dụ

Quá trình lan truyền ngược:


∂a ∂a
a = purelin(n) → ∂n = 1, a = logsig(n) → ∂n = a(1 − a).
Sai lệch là: e = y1 − a2 = 1.
Độ nhạy của lớp 2:

s2 = − 2ḟ 2 (n2 )(t − a2 )


(30)
=−2
Độ nhạy của lớp 1:
2
s1 =Ḟ (n2 )(w2 )T s2

0, 25 0
 
1

−0, 5
 (31)
= (−2) =
0 0, 25 1 −0, 5

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 15 / 19
Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 16 / 19
Quá trình cập nhật các tham số của mạng.

w1 (1) =w1 (0) − αs1 a0


(32)
     
1 −0, 5 0, 9
= − 0.1 (−2) =
1 −0, 5 0, 9

b1 (1) =b1 (0) − αs1


(33)
     
2 −0, 5 2, 05
= − 0.1 =
2 −0, 5 2, 05
w2 (1) =w2 (0) − αs2 (a1 )T
      (34)
= 1 1 − 0.1(−2) 0, 5 0, 5 = 1, 1 1, 1
b 2 (1) =b 2 (0) − αs2
= − 1 − 0.1(−2) (35)
= − 0, 8

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 16 / 19
Ví dụ
2

1.8

1.6

1.4

1.2

y
0.8

0.6

0.4

0.2

0
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x

Hình 1: Đầu ra mạng với bộ tham số ban đầu.

2.2

1.8

1.6
y

1.4

1.2

1
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x

Nguyễn Hoài Nam Hình 2: Đầu raFuzzy


mạng sau khi huấn luyện
and Network Ngày 6 tháng 5 năm 2021 17 / 19
Phương pháp gradient ngẫu nhiên - Stochastic
Gradient Descent (SGD)

Cho hàm mục tiêu F (x), trong đó x là véc tơ các tham số (trọng số,
ngưỡng). Tìm nghiệm tối ưu x∗ sao cho F (x∗ ) → min.

Công thức lặp


xk+1 = xk − α∇F , (36)
trong đó xk là véc tơ tham số hiện tại, xk+1 là véc tơ tham số mới ở lần
lặp thứ k, ∇F = ∂F là véc tơ gradient, và α > 0 là tốc độ học.

∂x x=xk

Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 18 / 19
Phương pháp SGD với hệ số chỉnh hướng học1

xk+1 = xk − α∇F + γ(xk − xk−1 ), (37)


trong đó γ > 0 là hệ số chỉnh hướng học.

1
[2] Murphy, K. P. Machine Learning: A Probabilistic Perspective. The MIT Press,
Cambridge, Massachusetts, 2012.
Nguyễn Hoài Nam Fuzzy and Network Ngày 6 tháng 5 năm 2021 19 / 19

You might also like