Tải bản đầy đủ (.pdf) (116 trang)

Tìm hiểu mạng nơ ron và ứng dụng mạng nơ ron trong kĩ thuật điều khiển

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.28 MB, 116 trang )

Bộ giáo dục và đào tạo
Trường đại học bách khoa hà nội
-----------------------------------------

Luận văn thạc sỹ khoa học

Tìm hiểu mạng nơ ron và ứng dụng mạng nơ ron trong kĩ
thuật điều khiển

Ngành: tự động hoá & điều khiển

Nguyễn thái sơn
Người hướng dẫn khoa học: pgs.ts. phan xuân minh

Hà nội 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

MỤC LỤC
Lời cam đoan……………………………………………………………
Mục lục…………………………………………………………………
Danh mục các hình vẽ…………………………………………………..
LỜI MỞ ĐẦU…………………………………………………………..
CHƯƠNG 1: MẠNG NƠ RON NHÂN TẠO………………………….

1

1.1: Mơ hình mạng nơ ron nhân tạo…………………………..

1



1.1.1: Cấu trúc một nơ ron nhân tạo………………………..

1

1.1.2: Các cấu trúc cơ bản của mạng nơ ron nhân tạo……..

4

1.2: Huấn luyện mạng………………………………………..

6

1.2.1: Nguyên tắc huấn luyện mạng………………………..

6

1.2.2: Cấu trúc và phương pháp huấn luyện trong các mạng
nơ ron tiêu biêu…………………………………………………………

8

1.2.2.1: Mạng truyền thẳng……………………………...

8

1.2.2.2: Mạng RBF………………………………………

16


1.2.2.3: Mạng tự tổ chức Kohonen……………………...

20

1.2.2.4: Mạng hồi quy…………………………………...

22

1.2.2.5: Mạng nơ ron động………………………………

26

CHƯƠNG 2: ỨNG DỤNG MẠNG NƠ RON TRONG NHẬN DẠNG
HỆ THỐNG PHI TUYẾN……………………………………………...

30

2.1: Giới thiệu……………………………………………….

30

2.2: Nhận dạng đối tượng động học phi tuyến………………

32

2.2.1: Mô tả đối tượng……………………………………..

32

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008



ĐỒ ÁN TỐT NGHIỆP CAO HỌC

2.2.2: Nhận dạng đối tượng………………………………..

33

2.2.3: Kết luận……………………………………………..

41

CHƯƠNG 3: ỨNG DỤNG MẠNG NƠ RON TRONG BÀI TỐN
ĐIỀU KHIỂN…………………………………………………………...

42

3.1: Giới thiệu……………………………………………………...

42

3.2: Điều khiển dự đốn trên mơ hình……………………………

43

3.2.1: Nhận dạng hệ thống……………………………………….

43

3.2.2: Điều khiển dự đốn dựa trên mơ hình……………………..


45

3.2.3: Khối điều khiển dự báo trên mơ hình bằng mạng nơ ron
của Matlab………………………………………………………………

47

3.3: Điều khiển NARMA-L2……………………………………...

54

3.3.1: Nhận dạng mẫu NARMA-L2……………………………..

54

3.3.2: Bộ điều khiển NARMA-L2………………………………

55

3.3.3: Khối điều khiển NARMA-L2 của Matlab………………..

57

3.4: Điều khiển theo mơ hình mẫu………………………………..

63

3.4.1: Thiết kế bộ điều khiển nơ ron theo mơ hình mẫu………..


65

3.4.2: Kết luận…………………………………………………

74

3.5: Kết luận………………………………………………………

74

KẾT LUẬN CHUNG…………………………………………………...

75

PHỤ LỤC……………………………………………………………….

76

TÀI LIỆU THAM KHẢO………………………………………………

113

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

1

CHƯƠNG 1

MẠNG NƠ RON NHÂN TẠO
1.1 MƠ HÌNH MẠNG NƠ RON NHÂN TẠO
1.1.1 Cấu trúc một nơ ron nhân tạo
Mạng nơ ron là sự tái tạo bằng kĩ thuật những chức năng của hệ thần
kinh con người. Trong q trình tái tạo, khơng phải tất cả các chức năng
của bộ não con người có đều được tái tạo, mà chỉ có những chức năng cần
thiết. Bên cạnh đó, cịn có những chức năng mới được tạo ra nhằm giải
quyết một bài toán điều khiển đã định hướng trước.
Mạng nơ ron bao gồm vô số các nơ ron được liên kết truyền thông với
nhau trong mạng. Một nơ ron chứa đựng các thành phần cơ bản:
-

Thân nơ ron được giới hạn trong một màng membran và trong cùng
là nhân. Từ thân nơ ron cịn có rất nhiều đường rẽ nhánh tạm gọi là
rễ.

-

“Bus” liên kết nơ ron này với các nơ ron khác được gọi là axon,
trên axon có các đường rẽ nhánh. Nơ ron cịn có thể liên kết với các
nơ ron khác qua các rễ. Chính vì cách liên kết đa dạng như vậy nên
mạng nơ ron có độ liên kết rất cao.

Các rễ của nơ ron được chia thành hai loại: loại nhận thông tin từ nơ ron
khác qua axon, gọi là rễ đầu vào và loại đưa thông tin qua axon tới các nơ
ron khác, gọi là rễ đầu ra. Một nơ ron có thể có nhiều rễ đầu vào, nhưng chỉ
có một rễ đầu ra. Bởi vậy nếu xem nơ ron như một khâu điều khiển thì nó
chính là khâu có nhiều đầu vào, một đầu ra (MISO). Một tính chất rất cơ
bản của mạng nơ ron sinh học là các đáp ứng theo kích thích có khả năng
thay đổi theo thời gian. Các đáp ứng có thể tăng lên, giảm đi hoặc hoàn

toàn biến mất. Qua các nhánh axon liên kết tế bào nơ ron này với các nơ
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

2

ron khác, sự thay đổi trạng thái của một nơ ron cũng sẽ kéo theo sự thay
đổi trạng thái của những nơ ron khác và do đó là sự thay đổi của tồn bộ
mạng nơ ron. Việc thay đổi trạng thái của mạng nơ ron có thể thực hiện qua
một q trình “dạy” hoặc do khả năng “học” tự nhiên.
Sự thay thế những tính chất này bằng một mơ hình tốn học tương
đương được gọi là mạng nơ ron nhân tạo. Mạng nơ ron nhân tạo có thể
được chế tạo bằng nhiều cách khác nhau, vì vậy trong thực tế tồn tại rất
nhiều kiểu mạng nơ ron nhân tạo.

Hình 1.1: Mơ hình một nơ ron nhân tạo khơng có trọng số

Hình 1.2: Mơ hình một nơ ron nhân tạo có trọng số

Đại lượng đầu vào vô hướng p được truyền thông qua một đường dây có
hệ số trọng w. Tích số wp là đối số của hàm truyền f, tạo nên đầu ra vô
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

3


hướng a. Nơ ron ở hình 2 có hệ số bias b, có vai trị giống như một trọng số
nhưng đầu vào cố định bằng 1. Cả w và b đều là các tham số vơ hướng có
thể thay đổi được của một nơ ron. Ý tưởng trung tâm của mạng nơ ron là có
thể điều chỉnh các thông số này để thu được các hành vi theo u cầu. Vì
thế chúng ta có thể huấn luyện mạng nơ ron để thực hiện một công việc cụ
thể hoặc mạng nơ ron sẽ tự điều chỉnh thông số để đạt được kết quả như ý
muốn.
Ở đây, f là hàm truyền, trong đó có 3 loại thường dùng, như sau:
a) Hàm truyền Hard-limit

Hình 1.3: Hàm truyền Hard-lim

Hàm truyền Hard-limit giới hạn đầu ra của một nơ ron hoặc bằng 0 nếu
đối số đầu vào n nhỏ hơn 0; hoặc bằng 1 nếu n lớn hơn hoặc bằng 0. Hàm
truyền này được sử dụng trong mạng Perceptron.
b) Hàm truyền tuyến tính

Hình 1.4: Hàm truyền tuyến tính

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

4

Các mạng nơ ron của loại này thường được dùng như là các bộ xấp xỉ tuyến
tính.
c) Hàm truyền sigmoid


Hình 1.5: Hàm truyền sigmoid

Hàm truyền này thường được dùng trong các mạng nơ ron lan truyền
ngược.
1.1.2 Các cấu trúc cơ bản của mạng nơ ron nhân tạo
Liên kết các đầu vào và ra của nhiều nơ ron với nhau ta được một mạng
nơ ron. Việc ghép nối các nơ ron trong mạng với nhau có thể theo một
nguyên tắc bất kỳ nào đó. Ở một mạng, các nơ ron được phân biệt với nhau
thông qua vị trí của nó trong mạng, cụ thể là:
-

Nhóm nơ ron đầu vào (input layer) là những nơ ron nhận thơng tin
từ mơi trường bên ngồi vào trong mạng. Chúng có vị trí ngồi
cùng “bên trái” và được nối với các nơ ron khác trong mạng từ (rễ)
đầu ra.

-

Nhóm nơ ron được các nơ ron khác trong mạng kết nối tới thông
qua (rễ) đầu vào được gọi là nơ ron đầu ra (output layer). Những nơ
ron đầu ra có vị trí ngồi cùng “bên phải” và có nhiệm vụ đưa tín
hiệu của mạng ra bên ngồi.

-

Những nơ ron cịn lại khơng thuộc hai nhóm trên được gọi là nơ
ron bên trong (hidden layer).

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008



ĐỒ ÁN TỐT NGHIỆP CAO HỌC

5

Như vậy, một mạng nơ ron cũng có chức năng của một hệ truyền đạt và
xử lý tín hiệu từ đầu vào đến đầu ra của mạng. Các nơ ron trong một mạng
thường được chọn cùng một loại, chúng được phân biệt với nhau qua véc tơ
hàm trọng số w.
Một mạng nơ ron được chia thành các lớp, mỗi lớp bao gồm nhiều nơ
ron có cùng một chức năng trong mạng.

Hình 1.6: Mạng nơ ron ba lớp truyền thẳng

Hình 1.6 là mơ hình của một mạng nơ ron ba lớp. Mạng có R đầu vào
p1, p2,..., pn và S đầu ra a31, a32, ..., a3S. Các tín hiệu đầu vào được đưa đến S
nơ ron đầu vào, các nơ ron này làm thành lớp đầu vào của mạng (input
layer). Đầu ra của các nơ ron này được đưa đến đầu vào của các nơ ron tiếp
theo, các nơ ron này không trực tiếp tiếp xúc với môi trường xung quanh và
làm thành lớp trung gian trong mạng (hidden layer). Đầu ra của các nơ ron
này được đưa đến các nơ ron đưa tín hiệu ra mơi trường bên ngồi, thuộc
lớp các nơ ron đầu ra (output layer).
Mạng nơ ron mà ở đó khơng tồn tại bất kỳ một mạch hồi tiếp nào kể cả
hồi tiếp nội lẫn hồi tiếp từ đầu ra trở về đầu vào, được gọi là mạng truyền
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

6


thẳng (feedforward network). Ngược lại, mạng có đường phản hồi từ đầu ra
của một nơ ron tới đầu vào của nơ ron cùng lớp hoặc thuộc lớp phía trước
có tên gọi là mạng hồi tiếp (feedback network).
Mạng nơ ron bao gồm một hay nhiều lớp trong (lớp trung gian) được
gọi là mạng MLP (multilayer perceptrons network). Cịn mạng chỉ có một
lớp, vừa là lớp vào vừa là lớp trung gian và cũng là lớp ra thì mạng đó có
tên là mạng một lớp.
Mạng nơ ron ln có cấu trúc ghép nối hồn tồn, tức là bất cứ một nơ
ron nào trong mạng cũng được nối với một hoặc vài nơ ron khác. Trong
trường hợp các nơ ron trong mạng có khâu tạo chức năng đáp ứng là khâu
tuyến tính, tính phi tuyến chỉ nằm ở khâu tạo chức năng ra thì việc mắc nối
tiếp các nơ ron trong mạng khơng cịn ý nghĩa nữa và lúc đó ta hồn tồn
có thể thay thế mạng nơ ron nhiều lớp thành mạng nơ ron một lớp.
1.2 HUẤN LUYỆN MẠNG
1.2.1 Nguyên tắc huấn luyện mạng
Huấn luyện mạng là công việc xác định các véc tơ trọng số w i có trong
từng nơ ron của mạng sao cho mạng nơ ron có khả năng tạo ra các đáp ứng
đầu ra mong muốn (giống như tín hiệu ra của một hệ thống) khi cùng được
kích thích bằng một lượng thơng tin đầu vào của hệ thống đó. Như vậy, có
thể xem việc huấn luyện mạng là tạo ra cho mạng khả năng của một thiết bị
xấp xỉ thông tin.
Để huấn luyện, người ta cho tác động vào mạng hàng loạt kích thích x(k)
, k = 1, 2, ... có khả năng lặp lại trong quá trình mạng làm việc. Những tác
~ (k )

động này được gọi là kích thích mẫu. Các giá trị y tương ứng tại đầu ra
-

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008



ĐỒ ÁN TỐT NGHIỆP CAO HỌC

7

của mạng được so sánh với đáp ứng mẫu y

(k )

cho trước. Các phần tử của

-

những véc tơ trọng số w i I = 1, 2, …, n có trong tất cả n nơ ron của mạng
được hiệu chỉnh theo từng bước huấn luyện sao cho tổng các sai lệch
Ek = e

(k )
-

2

2

~ (k )

= y - y
-


(k )

là nhỏ nhất. Như vậy, thực chất việc huấn luyện

-

mạng chính là q trình giải bài tốn tối ưu tham số và để thực hiện được
bài toán tối ưu tham số này, phải xây dựng được phiến hàm mục đích mơ tả
rõ ràng sai lệch. Hình 1.7 mơ tả ngun lý huấn luyện một mạng nơ ron.

Hình 1.7: Nguyên tắc huấn luyện mạng

Có hai phương pháp huấn luyện mạng là phương pháp học có giám sát
và học khơng có giám sát.
Trong phương pháp học có giám sát, khi các đầu vào tác động vào
mạng, đầu ra của mạng sẽ được so sánh với các mục tiêu. Khi đó, ta sẽ sử
dụng luật huấn luyện để điều chỉnh trọng số và bias của mạng để đưa đầu ra
của mạng về gần với mục tiêu.

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

8

Trong phương pháp học không có giám sát, trọng số và bias của mạng
được chỉnh định tương ứng với đầu vào của mạng mà thôi, khơng có các
đầu ra mục tiêu.
1.2.2 Cấu trúc và phương pháp huấn luyện trong các mạng Nơ ron tiêu

biêu
1.2.2.1 Mạng truyền thẳng
Mạng truyền thẳng là kiểu mạng nơ ron nhân tạo đầu tiên và đơn giản
nhất. Trong cấu trúc này, thông tin sẽ chỉ di chuyển theo một chiều, thẳng,
từ các nút đầu vào, thông qua các nút ẩn (nếu có) đến nút đầu ra, khơng có
các chu trình hay vịng nào trong mạng.
a. Mạng Perceptron một lớp
* Cấu trúc

Hình 1.8: Cấu trúc mạng Perceptron một lớp

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

9

Cấu trúc mạng nơ ron sớm nhất là mạng Perceptron một lớp do Frank
Rosenblatt phát minh năm 1957, chỉ bao gồm một lớp đơn các nút đầu ra;
các đầu vào được nối trực tiếp với đầu ra thông qua một loạt các trọng số.
Tổng của trọng số và các đầu vào được tính trên các nút, nếu giá trị này
vượt ngưỡng (thường là 0) và nơ ron sẽ nhận giá trị là 1; ngược lại, nơ ron
sẽ nhận giá trị là -1.
* Thuật toán huấn luyện
Các perceptron được huấn luyện bằng một thuật toán học đơn giản gọi
là luật Delta. Phương pháp này tính tốn các sai lệch giữa đầu ra thực tế với
bộ số đầu ra theo mẫu, và sử dụng nó để điều chỉnh các trọng số, vì thế đây
là cách thực hiện theo kiểu ngược hướng gradient.
Cụ thể:

Với nơ ron thứ j có hàm kích hoạt g(x) thì luật Delta cho trọng số thứ i của
nơ ron thứ j (wji) được tính như sau:
D w ji = a (t j - y j ) g ' (h j ) xi (1.1)

Trong đó a là hằng số gọi là tốc độ học (learning rate), g(x) là hàm kích
hoạt của nơ ron, tj đầu ra mục tiêu, yj là đầu ra thực tế và xi là đầu vào thứ i.
hj =

å

xi w ji và y j = g (h j ) . (1.2)

Chứng minh:
Sai lệch cho một Perceptron với j đầu ra được tính như sau:
E=

å
j

1
(t j - y j ) 2 (1.3)
2

Trong trường hợp này, ta muốn di chuyển qua một “không gian trọng số”
của nơ ron (không gian bao gồm tất cả các giá trị có thể có của tất cả các
trọng số của nơ ron) tương ứng với gradient của hàm sai lệch. Để làm điều

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008



ĐỒ ÁN TỐT NGHIỆP CAO HỌC

10

đó, ta đi tìm đạo hàm riêng của sai lệch tương ứng với từng trọng số. Đối
với trọng số thứ i, đạo hàm riêng được viết như sau:
1
1
¶ ( (t j - y j ) 2 ) ¶ ( (t j - y j ) 2 ) ¶ y
¶E
j
2
2
} (1.4)
=
=
¶ w ji
¶ w ji
¶y j
¶ w ij

= - (t j - y j )
= - (t j - y j )

¶y j
¶ w ij
¶y j ¶hj
¶ h j ¶ w ij

Vì đẩu ra yj của nơ ron là hàm kích hoạt của nơ ron g() tác dụng lên đẩu

vào hj nên ta có thể viết lại phương trình như sau:
= - (t j - y j ) g ' (h j )

¶hj
¶ w ij

(1.5)

Ta sẽ viết lại hj dưới dạng tổng của tất cả k trọng số của mỗi trọng số wjk
nhân với đẩu vào xk tương ứng:
'

= - (t j - y j ) g (h j )

¶ (å xk w jk )
k

¶ w ij

(1.6)

Vì ta chỉ quan tâm đến trọng số thứ i rõ ràng ta có:
¶ xi w ji
¶ w ij

= xi (1.7)

Chúng ta sẽ có phương trình cuối cùng cho gradient như sau:
¶E
= - (t j - y j ) g ' (h j ) xi (1.8)

¶ w ji

Với phương pháp ngược hướng gradient, chúng ta đã biết mỗi khi trọng số
thay đổi sẽ tỉ lệ với gradient; bằng cách chọn hằng số a (0< a <1) và bỏ đi
dấu âm sẽ cho phép ta di chuyển trọng số theo chiều ngược với chiều
gradient để làm giảm thiểu sai lệch. Khi đó, ta thu được điều phải chứng
minh.
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

11

Luật Delta thường được dùng dưới dạng đơn giản hơn cho một
Perceptron với hàm kích hoạt tuyến tính như sau:
D w ji = a (t j - y j ) xi (1.9)

Các trọng số sẽ được cập nhật sau mỗi lần có đầu vào tác động theo luật
như sau:
w( j )' = w(j)+a (t-y)x(j) (1.10)

b) Mạng Perceptron nhiều lớp
* Cấu trúc
Mạng nơ ron này bao gồm nhiều lớp, thường kết nối với nhau theo kiểu
truyền thẳng. Mỗi nơ ron trong một lớp được nối trực tiếp với các nơ ron ở
lớp kế tiếp. Trong rất nhiều ứng dụng, mạng nơ ron này sử dụng hàm
truyền sigmoid làm hàm kích hoạt.
Các mạng truyền thẳng thường có một hoặc nhiều lớp ẩn với các nơ ron
sigmoid, theo sau là lớp đầu ra với các nơ ron tuyến tính. Mạng nhiều lớp

với các hàm truyền phi tuyến sẽ cho phép mạng học các quan hệ tuyến tính
và phi tuyến giữa các véc tơ đầu vào và đầu ra. Lớp đầu ra tuyến tính sẽ trả
kết quả ngồi khoảng từ -1 đến +1. Mặt khác, nếu ta muốn khống chế đầu
ra của mạng (ví dụ trong khoảng từ 0 đến 1), ta có thể sử dụng hàm truyền
sigmoid ở đầu ra (ví dụ như hàm logsig).

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

12

Hình 1.9: Mạng Perceptron nhiều lớp

* Thuật toán huấn luyện
Mạng nơ ron nhiều lớp sử dụng rất nhiều phương pháp huấn luyện,
nhưng phổ biến nhất vẫn là phương pháp lan truyền ngược. Nội dung cơ
bản của phương pháp như sau: từ một mẫu học cụ thể x ( k ) , y ( k ) và các trọng
-

-

số đã có của mạng, chẳng hạn như w ( k ) , v ( k ) ở mạng hai lớp, người ta xác
-

-

~ (k )


định đầu ra thực y . Sau đó, trên cơ sở so sánh với mẫu học y ( k ) , các trọng
-

-

số của lớp nơ ron đầu ra, ví dụ w ( k ) được hiệu chỉnh thành w ( k + 1) . Tiếp tục,
-

-

từ trọng số mới w ( k + 1) người ta lại hiệu chỉnh trọng số của các nơ ron thuộc
-

lớp phía trước, ví dụ như v ( k ) thành v ( k + 1) . Cứ như vậy cho đến trọng số của
-

-

lớp nơ ron đầu vào.
Ta xét tổng quát mạng nhiều lớp truyền thẳng với m đầu vào xj, j = 1, 2,
~

…, m và n đầu ra y i , i = 1, 2, …, n gồm Q lớp với mỗi lớp có np nơ ron, p =
1, 2, …, Q. Gọi cip, zip, p = 1, 2, …, Q là đối số hàm a (.) cũng như đầu ra
của nơ ron thứ i thuộc lớp p trong mạng. Ký hiệu wijp, j = 1, 2, …, np-1; i =
1, 2, …, np là trọng số chuyển zjp-1 thành zip. Như vậy thì:
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


N TT NGHIP CAO HC


13

ổm p

p p- 1 ữ

z = a (c ) = a ỗ
w
z
ồ ij j ứữữữ (1.11)


ố j= 1
p
i

p
i

~

zj0 = xj, n0 = m, ziQ = y i và nQ = n.
Giả sử mạng đang có các trọng số wijp(k) và một mẫu học x ( k ) , y ( k ) . Thuật
-

-

toán lan truyền ngược xác định trọng số mới wijp(k+1) cho mạng Perceptron
nhiều lớp như trên sẽ gồm:

- Đặt zj0 = xj, n0 = m và nQ = n
- Tính cip(k) và zip lần lượt cho p = 1, 2, ..., Q bằng cách ứng với mỗi giá trị
của p ta lại thực hiện lần lượt cho i = 1, 2, ..., np theo:
n p- 1
p(k )
i

c

=

å

w ijp ( k ) z jp- 1 và zip = a (cip ( k ) )

j= 1

da
- Tính dQi = éêëyi( k ) - ziQ ùúû Q với i = 1, 2, …, n
dc
i

- Thực hiện ngược hướng lần lượt theo p = Q, Q - 1, ..., 1 các bước:
a) w ijp ( k + 1) = wij( k ) + sdpi z jp- 1 với j = 1, 2, …, np-1 và i = 1, 2, …, np
b) Nếu p > 1 thì tính với i = 1, 2, ..., np-1
c) Mạng Adeline
* Cấu trúc
ADALINE được viết tắt từ Adaptive Linear Neuron, sau được gọi là
Adaptive Linear Element. Mạng Adaline tương tự như mạng Perceptron,
nhưng hàm truyền của nó tun tính hơn dạng hard-limit. Điều này cho

phép các đầu ra của mạng được nhận bất cứ giá trị nào, trong khi đầu ra của
Perceptron chỉ có thể nhận giá trị 0 hoặc 1.

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

14

Hình 1.10: Mạng Adaline

* Phương pháp huấn luyện
Về phương pháp huấn luyện, với mạng Adaline, ta dùng phương pháp
bình phương tối thiểu LMS.
Giả sử ta có:
~

T

yi = w x =
- i -

m

å

w ij x j (1.12)

j= 1


ổ~ ử
ỗỗ y1 ữ
ổx1 ử
ổw i1 ử

ỗỗ ữ
ỗỗ ữ

~




trong ú: x = ỗỗ ữữữ, y i = ỗỗỗ ữữữ, w = ỗỗ ữữữ, i = 1, 2,, n (x l u vo, y l u ra)
ỗỗ ữ
- i
ỗỗ ữ
ỗỗ~ ữ



ỗốxm ữ
ỗốw im ứ


ỗỗy ữ

ố nứ


Nhim v huấn luyện mạng là xác định các trọng số wij, i = 1, 2, ..., n ; j =
1, 2, ..., m để tại bước điều khiển thứ k bất kỳ ln có đáp ứng đầu ra
ỉ~ ( k ) ử
ỗỗ y ữ

~
ỗỗ 1 ữ

(k )

ng vi tỏc ng x ( k ) =
y = ỗỗ ữ

ỗỗ


ỗỗ~ ( k ) ữ

ỗốy n ữ


ổx1( k ) ử

ỗỗ

ỗỗ ữ

u vo c ging nh mu

ỗỗ



(
k
)
ỗỗốxm ữ


Nguyn Thỏi Sn - Cao học ĐKTĐ 2006 – 2008


N TT NGHIP CAO HC

15

ổ (k ) ữ

ỗỗ y ữ
ỗỗ 1 ữ


mong mun, tc l cú :
y ( k ) = ỗỗ ữ

ỗỗ


ỗỗ ( k ) ữ

ỗy n ÷

è
ø
(k )

~ (k )

Ek = y - y
-

2

2
(k )

T

= y - w x

-

ổw11
ỗỗ
ỗỗw
(k )
Ek = y - ỗỗ 21
ỗỗ
ỗỗ
ỗốw n1

-


(k )

đ min (1.13)

- i -

2

w12 w1m ử


2

w 22 w 2 m ữ
(k )
(k )
(k )


=
đ min (1.14)
x
y
x
W
÷
 
 ÷
÷

÷
÷
÷
w n 2  w nm ø

{

}

Giả sử ta đã có tất cả p mẫu học x ( k ) , y ( k ) , k = 1, 2, …, p. Khi đó điều kiện
-

-

(1.14) cho tất cả p bước sẽ tương đương với:
2

1 p
1 p é (k )
(k ) ù
E = å Ek = å êy - W x ú ® min (1.15)
êú
2 k= 1
2 k= 1 ë
û

và từ đây ta suy ra được với một khoảng cách bước tìm s cố định cho trước:
D w ij = - s

p

¶E
T (k ) (k )
= så é
yi( k ) - w x ù
x (1.16)
ê
ú
- i ë
ûj
¶ w ij
k= 1

Nhược điểm của công thức trên để hiệu chỉnh trọng số wij là phải có ngay

{

}

một lúc tồn bộ p mẫu học x ( k ) , y ( k ) . Nhằm khắc phục, Widnow năm 1962
-

-

đã đề nghị sử dụng dạng cải biên của nó tại bước học thứ k thành:
T (k ) (k ) ù (k )
(k )
D w ij ( k ) = s é
) x úx j (1.17)
êyi - (w
- i

ë
û

trong đó (w T )( k ) = (w i(1k ) , w i(2k ) ,..., w im( k ) ) . Với giá trị gia tăng D w ij ( k ) trên ta sẽ
T

- i

thu được sự hiệu chỉnh trọng số wij(k+1) tại bước thứ k + 1 từ các giá trị đã
có là wij(k) ở ngay bước thứ k trước đó một cách đơn giản như sau:
w ij( k + 1) = w ij( k ) + D w ij ( k ) (1.18)

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

16

1.2.2.2 Mạng RBF (Radial Basis Function)
Mạng RBF là một công cụ mạnh để nội suy trong không gian nhiều
chiều. RBF được ứng dụng trong rất nhiều mảng của mạng nơ ron, ở đó
chúng có thể thay thế cho các lớp ẩn có sử dụng hàm sigmoid trong mạng
Perceptron nhiều lớp.
a) Cấu trúc mạng
* Mơ hình nơ ron

Hình 1.11: Nơ ron RBF

Ta có thể thấy biểu thức cho đầu vào của nơ ron radbas khác so với

những nơ ron khác. Ở đây, đầu vào cho hàm truyền radbas là chiều dài véc
tơ giữa véc tơ trọng số w và véc tơ đầu vào p, sau đó nhân với bias b.
Hàm truyền của nơ ron radial basis là:
2

radbas (n) = e- n (1.19)

Đồ thị của hàm truyền như sau:

Hình 1.12: Đồ thị hàm truyền radbas
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

17

Hàm truyền radbas có giá trị tối đa là 1 khi đầu vào của nó là 0. Khi khoảng
cách giữa w và p giảm xuống thì đầu ra sẽ tăng lên. Vì thế, nơ ron radial
basis giống như một thiết bị dò, sẽ sinh ra giá trị 1 khi mà w giống p. Bias b
đóng vai trò giúp thay đổi độ nhạy của nơ ron.
* Mơ hình mạng
Mạng RBF bao gồm ba lớp: một lớp đầu vào, một lớp ẩn radial basis và
một lớp đầu ra tuyến tính. Hàm radial basis thường được chọn là Gaussian.

Hình 1.13: Mạng RBF

Nguyên tắc hoạt động của mạng như sau: Nếu ta cho véc tơ đầu vào tác
động lên mạng, thì mỗi nơ ron radial basis sẽ cho giá trị đầu ra tuỳ thuộc
vào mức độ gần của véc tơ đầu vào so véc tơ trọng số của mỗi nơ ron.

Cụ thể: nếu nơ ron radial basis có véc tơ trọng số khác với véc tơ đầu vào
thì đầu ra sẽ tiến tới 0. Những giá trị này chỉ có tác động nhỏ đến đầu ra
của mạng. Ngược lại, nếu véc tơ trọng số gần với véc tơ đầu vào thì đầu ra
sẽ tiến tới 1. Trong trường hợp đó, thì các trọng số ở lớp thứ hai sẽ chuyển
giá trị này đến các nơ ron tuyến tính ở lớp thứ hai. Trong thực tế, nếu chỉ
có một nơ ron radial basis có đầu ra là 1, cịn tất cả các đầu ra cịn lại có giá
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

18

trị là 0 (hoặc gần với 0) thì đầu ra của lớp tuyến tính sẽ là trọng số đầu ra
của nơ ron chủ động. Tuy nhiên, đây chỉ là một trường hợp rất hiếm gặp.
Mạng RBF có ưu điểm là khơng bị điểm cực tiểu cục bộ như mạng
Perceptron nhiều lớp. Đó là vì chỉ những thơng số được hiệu chỉnh trong
q trình học mới là ánh xạ tuyến tính từ lớp ẩn cho đến lớp đầu ra. Sự
tuyến tính đảm bảo rằng đường cong sai lệch là dạng bình phương và vì thế
chỉ có một điểm cực tiểu đơn.
Tuy nhiên, nó cũng có nhược điểm là địi hỏi hàm radial basis phải có
độ bao phủ tốt đối với không gian đầu vào. Các trọng tâm của RBF được
xác định dựa theo sự phân bố của dữ liệu đầu vào, chứ không dựa theo
nhiệm vụ dự báo. Vì thế, các nguồn biểu thị có thể bị lãng phí trong vùng
khơng gian đầu vào nhưng khơng liên quan đến nhiệm vụ học. Cách thức
phổ biến là liên kết từng điểm dữ liệu với trọng tâm riêng của nó, mặc dù
điều này có thể khiến hệ thống tuyến tính được giải quyết tại lớp cuối cùng
khá rộng, và đòi hỏi các kĩ thuật co ngắn.
b) Huấn luyện mạng
Với cấu trúc như trên của mạng RBF, ta sẽ có phương trình của đầu ra y

của mạng như sau:
N

y( p) =

å

ai r ( p - ci ) (1.20)

i= 1

trong đó: N là số nơ ron của lớp ẩn, ci là véc tơ trung tâm của nơ ron thứ i
và ai là các trọng số của nơ ron tuyến tính đầu ra. Ở dạng cơ bản, tất cả đầu
vào đều nối với mỗi nơ ron ở lớp ẩn. Hàm cơ bản có dạng Gaussian:
2
r ( p - ci ) = exp é
- b p - ci ù
(1.21)
ê
ú
ë
û

Các hàm cơ bản Gaussian là dạng cục bộ theo nghĩa:

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC


19

lim r ( p - ci ) = 0 (1.22)

xđƠ

Trong mng RBF, cú ba thụng số được hiệu chỉnh để huấn luyện mạng: các
véc tơ trung tâm ci, các trọng số đầu ra wi, và các thông số bề rộng RBF bi .
Đối với một số nhiệm vụ, cần xác định hàm mục tiêu và chọn các thơng số
để tối thiểu hố giá trị của nó. Hàm mục tiêu phổ biến nhất là hàm tối thiểu
bình phương:
2

K t (w) = [y (t ) - j ( p (t ), w ] (1.23)

Ta có thể thấy, hàm chỉ phụ thuộc vào các trọng số. Tối thiểu hố hàm mục
tiêu bằng cách chọn các trọng số thích hợp.
* Phép nội suy
Mạng RBF có thể được sử dụng để nội suy một hàm y:  n ®  khi các giá
trị của hàm đó được xác định trên một số điểm hữu hạn: y(pi) = bi, i = 1, 2,
…, N. Đưa các điểm pi đã biết đến trọng tâm của các hàm radial basis và
đánh giá những giá trị của hàm trên các điểm tương tự gij = r ( p j - pi ), các
trọng số được tính từ phương trình sau:
ég11
ê
êg 21
ê
ê
ê
êg

ë N1

g12
g 22

gN 2

 g1N ùéw1 ù éb1 ù
úê ú ê ú
 g 2 N úêw 2 ú êb2 ú
úê ú= ê ú (1.24)
ú ê ú
  úê
úê  ú ê ú
ú ê ú
 g NN úê
ûëw N û ëbN û

Nếu các điểm pi là khác biệt thì các trọng số w có thể được tính theo
phương trình đại số tuyến tính đơn giản:
w = G - 1b (1.25)

* Xấp xỉ hàm
Phương pháp huấn luyện thường được thực hiện theo hai giai đoạn: đầu
tiên là cố định bề rộng và các điểm trọng tâm và sau đó là đến các trọng số.
-

Huấn luyện các trọng tâm của hàm: Các trọng tâm của hàm có thể
được lấy mẫu ngẫu nhiên giữa các đầu vào hoặc thu được nhờ thuật


Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

20

tốn học bình phương tối thiểu trực giao (Orthogonal Least Square
Learning Algorithm). Bề rộng của RBF thường được cố định đến
giá trị tỉ lệ với khoảng cách dài nhất giữa các trọng tâm được chọn.
-

Giả nghịch đảo cho các trọng số tuyến tính: Sau khi các trọng tâm
ci được cố định, các trọng số làm tối thiểu hố sai lệch tại đầu ra
được tính tốn với phương pháp giả nghịch đảo tuyến tính:
w = G + b (1.26)

trong đó các đầu vào của G là những giá trị của hàm radial basis
tính tốn tại các điểm pi: gij = r ( p j - ci ) . Sự tồn tại của hàm tuyến
tính này chứng tỏ rằng, khơng giống mạng Perceptron nhiều lớp,
mạng RBF có duy nhất một điểm cực tiểu cục bộ (khi các trọng tâm
đã được cố định).
-

Phương pháp huấn luyện ngược hướng gradient của các trọng số
tuyến tính: Một thuật tốn huấn luyện nữa là ngược hướng gradient.
Trong phương pháp này, các trọng số được điều chỉnh tại mỗi bước
bằng cách dịch chuyển chúng theo hướng đối diện với gradient của
hàm mục tiêu.
w(t + 1) = w(t ) - J


d
H t (w) (1.27)
dw

trong đó J là tốc độ học, H t (w) = Kt (w) + l St (w) .
Trong trường hợp huấn luyện các trọng số tuyến tính, ai, thuật tốn
trở thành :
ai (t + 1) = ai (t ) + J [y (t ) - j ( p (t ), w ]r ( p (t ) - ci

) (1.28)

1.2.2.3 Mạng tự tổ chức Kohonen
Mạng tự tổ chức (Self-organizing map) được Teuvo Kohonen phát
minh, theo dạng học không giám sát. Một bộ các nơ ron nhân tạo học để
Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

21

sắp xếp các điểm trong không gian đầu vào phối hợp với không gian đầu
ra. Khơng gian đầu vào có thể có kích thước và cấu trúc khác với không
gian đầu ra và mạng tự tổ chức sẽ bảo quản điều này.
a) Cấu trúc mạng
Cấu trúc này giống như mạng cạnh tranh nhưng khơng có bias. Hàm truyền
cạnh tranh cho ra giá trị 1 với thành phần đầu ra a1i tương ứng với i* - nơ
ron ”giành thắng lợi ”. Tất cả các thành phần đầu ra khác trên a1 đều nhận
giá trị 0.


Hình 1.14: Mạng tự tổ chức

Như hình trên ta thấy, mạng tự tổ chức bao gồm các nơ ron, mỗi nơ ron có
một véc tơ trọng số có kích thước tương tự như kích thước của các véc tơ
đầu vào. Các nơ ron sắp xếp theo một khoảng cách đều đặn trong một lưới
hình chữ nhật hoặc hình lục giác. Bản đồ tự tổ chức mơ tả một q trình
sắp xếp từ khơng gian đầu vào có kích thước cao hơn cho đến không gian
thấp hơn. Thủ tục đặt một véc tơ từ khơng gian dữ liệu lên trên bản đồ
chính là việc tìm một nơ ron có véc tơ đầu vào gần nhất với véc tơ từ
không gian dữ liệu và đặt toạ độ bản đồ của nơ ron này vào véc tơ của
chúng ta.

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


ĐỒ ÁN TỐT NGHIỆP CAO HỌC

22

b) Phương pháp huấn luyện
Quá trình học trong mạng tự tổ chức diễn ra cho mỗi véc tơ trong một
thời điểm, không phụ thuộc vào việc mạng được huấn luyện trực tiếp hay
được huấn luyện kiểu thích nghi.
Việc huấn luyện sử dụng phương pháp học cạnh tranh. Khi một ví dụ
huấn luyện được đưa vào mạng, mạng sẽ tính tốn khoảng cách Ơclit của
tất cả các véc tơ trọng số. Nơ ron có véc tơ trọng số gần với đầu vào nhất sẽ
được gọi là BMU (Best Matching Unit). Các trọng số của BMU và các nơ
ron gần với nó được điều chỉnh tiến về véc tơ đầu vào. Biên độ của sự thay
đổi sẽ giảm dần theo thời gian và theo khoảng cách từ BMU. Cơng thức để

cập nhật cho nơ ron có véc tơ trọng số Wv(t) là :
Wv(t + 1) = Wv(t ) + q(v, t )a (t )( D(t ) - Wv(t )) (1.29)

trong đó a (t ) là hệ số học và D(t) là véc tơ đầu vào. Hàm lân cận q(v, t ) phụ
thuộc vào khoảng cách giữa BMU và nơ ron v. Ở dạng đơn giản nhất, hàm
nhận giá trị 1 cho tất cả các nơ ron đủ gần với BMU và bằng 0 với các nơ
ron còn lại; nhưng thông thường hàm Gaussian sẽ được chọn. Bất kể là
dạng nào thì hàm lân cận cũng rút ngắn lại theo thời gian. Quá trình này
được lặp lại mỗi khi có một véc tơ đầu vào tác động.
1.2.2.4 Mạng hồi quy
Đối lập với các mạng truyền thẳng, mạng hồi quy có hai hướng dịng
chảy dữ liệu. Trong khi mạng truyền thẳng truyền dữ liệu một cách tuyến
tính từ đầu vào cho tới đầu ra thì mạng hồi quy cịn có thể truyền dữ liệu từ
các giai đoạn xử lý sau cho đến giai đoạn xử lý trước.
a) Mạng Elman
* Cấu trúc

Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008


×