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

Mạng rơron thích nghi nhờ anfis và ứng dụng

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 (975.11 KB, 60 trang )

Số hóa bởi trung tâm học liệu

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG




PHẠM THỊ HƢỜNG




MẠNG NƠRON THÍCH NGHI MỜ ANFIS
VÀ ỨNG DỤNG
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01




LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH




Ngƣời hƣớng dẫn khoa học: PGS.TS Lê Bá Dũng



Thái Nguyên, 2013



Số hóa bởi trung tâm học liệu

i
LỜI CẢM ƠN
Để hoàn thành chƣơng trình cao học và viết luận văn này, tôi đã nhận đƣợc
sự hƣớng dẫn, giúp đỡ và góp ý nhiệt tình của quý thầy cô trƣờng Đại học Công
nghệ thông tin và Truyền thông. Đăc biệt là những thầy cô ở Viện công nghệ thông
tin Hà Nội đã tận tình dạy bảo cho tôi suốt thời gian học tập tại trƣờng.
Tôi xin gửi lời cảm ơn sâu sắc đến PGS.TS Lê Bá Dũng đã dành nhiều thời
gian và tâm huyết hƣớng dẫn tôi hoàn thành luận văn này.
Mặc dù tôi đã có nhiều cố gắng hoàn thiện luận văn bằng tất cả năng lực của
mình, tuy nhiên không thể tránh khỏi những thiếu sót, rất mong nhận đƣợc sự đóng
góp quí báu của quí thầy cô và các bạn.
Tôi xin chân thành cảm ơn!

Số hóa bởi trung tâm học liệu

ii
LỜI CAM ĐOAN
Tôi xin cam đoan tất cả các nội dung của luận văn này hoàn toàn đƣợc hình
thành và phát triển từ quan điểm của chính cá nhân tôi, dƣới sự hƣớng dẫn chỉ bảo
của PGS.TS Lê Bá Dũng. Các số liệu kết quả có đƣợc trong luận văn tốt nghiệp là
hoàn toàn trung thực.
Học viên

Phạm Thị Hƣờng

Số hóa bởi trung tâm học liệu


iii
MỤC LỤC
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
MỤC LỤC iii
DANH MỤC CÁC TỪ VIẾT TẮT vi
DANH MỤC CÁC HÌNH VẼ v
MỞ ĐẦU 1
Chƣơng 1: TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO VÀ HỆ MỜ 2
1.1 Cấu trúc và mô hình mạng nơron 2
1.1.1 Mô hình một nơron sinh học 2
1.1.2 Cấu trúc và mô hình của một nơron nhân tạo 3
1.2 Cấu tạo và phƣơng thức làm việc của mạng nơron 5
1.2.1 Mạng nơron một lớp 8
1.2.2 Mạng nơron truyền thẳng nhiều lớp 9
1.2.3 Mạng nơron phản hồi 9
1.2.4 Mạng nơron hồi quy 9
1.2.5 Mạng Hopfield 9
1.2.6 Mạng BAM 11
1.3. Các luật học 12
1.3.1 Học có giám sát 12
1.3.2 Học không có giám sát 12
1.3.3 Học củng cố 13
1.4 Thuật toán lan truyền ngƣợc 14
1. 5 Hệ mờ và mạng nơron 20
1.5.1 Kiến trúc của hệ mờ tổng quát 20
1.5.2 Sự kết hợp giữa logic mờ và mạng nơron 26
1.6 Kết luận 28
Chƣơng 2: MÔ HÌNH MẠNG ANFIS VÀ KHẢ NĂNG ỨNG DỤNG 29
2.1 Hệ suy diễn mờ dựa trên mạng thích nghi 29


Số hóa bởi trung tâm học liệu

iv
2.1.1 Các mô hình kết hợp giữa hệ mờ và mạng nơron 29
2.1.2. Luật mờ if then và hệ thống suy diễn mờ 29
2.1.3 Mạng thích nghi 32
2.1.4 Cấu trúc của ANFIS 33
2.2 Thuật toán ANFIS 35
2.2.1 Thuật toán học lan truyền ngƣợc 35
2.2.2. Thuật toán học lai 35
2.3. Khả năng ứng dụng của mạng ANFIS 37
Chƣơng 3: ỨNG DỤNG MÔ HÌNH ANFIS TRONG BÀI TOÁN PHÂN TÍCH
ĐÁNH GIÁ DỰ BÁO CÁC CHỈ SỐ KINH TẾ VÀ THỬ NGHIỆM 38
3.1 Bài toán dự báo chứng khoán 38
3.1.1 Một số khái quát cơ bản về thị trƣờng tài chính 38
3.1.2. Sự cần thiết của việc dự báo giá chứng khoán 40
3.1.3 Phân tích chứng khoán 40
3.1.4 Xác định giá mở cửa của thị trƣờng chứng khoán 41
3.2 Ứng dụng của mạng ANFIS trong việc dự báo chỉ số chứng khoán 42
3.2.1 Xây dựng mô hình hệ thống 42
3.2.2 Vấn đề xác định các quan hệ dữ liệu 42
3.2.3. Biến đổi và tiền xử lý dữ liệu 44
3.3 Chƣơng trình thử nghiệm 45
3.3.1 Các chức năng của chƣơng trình 45
3.3.2 Giao diện chƣơng trình 46
3.3.3 Đánh giá kết quả thực hiện chƣơng trình 50
KẾT LUẬN 51
TÀI LIỆU THAM KHẢO 52



Số hóa bởi trung tâm học liệu

v
DANH MỤC CÁC TỪ VIẾT TẮT

ANN
Artificial Neural Network
Mạng nơron nhân tạo
ANFIS
Adaptive Neuro Fuzzy Insference System
Hệ suy luận mờ
PE
Processing Element
Phần tử xử lý
MLP
Multilayer Perceptrons
BAM
Bidirectional Associative Memory
MIMO
Multi Input Multi Output
Nhiều đầu vào – nhiều đầu ra
MISO
Multi Inpus Single Output
Nhiều đầu vào – một đầu ra
BP
Back Propagation
Lan truyền ngƣợc
LSE
Least Square Error

Ƣớc lƣợng sai số bình phƣơng tối thiểu
TTCK
Thị trƣờng chứng khoán
DIIA
Chỉ số trung bình ngành công nghiệp
TSE
Chỉ số tổng hợp
NYSE
Chỉ số tổng hợp thị trƣờng chứng khoán New York
ASE
Chỉ số tổng hợp thị trƣờng chứng khoán Hoa Kỳ


Số hóa bởi trung tâm học liệu

vi
DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Một nơron sinh học 2
Hình 1.2. Sự liên kết các nơron 3
Hình 1.3 Mô hình một nơron nhân tạo 3
Hình 1.4 Đồ thị các dạng hàm truyền 5
Hình 1.5 Mạng nơron ba lớp 6
Hình 1.6 Một số dạng mạng nơron 8
Hình 1.7 Cấu trúc của mạng Hopfield 10
Hình 1.8 Cấu trúc của BAM 11
Hình 1.9 Học có giám sát 12
Hình 1.10 Học không có giám sát 13
Hình 1.11 Học củng cố 13
Hình 1.12: Mạng 3 lớp lan truyền ngƣợc 14
Hình 1.13 Kiến trúc của hệ mờ tổng quát 20

Hình 1.14 Hệ mờ nhiều đầu vào một đầu ra 21
Hình 1.15 Hàm thuộc hệ mờ một đầu vào một luật 23
Hình 1.16 Hàm thuộc hệ mờ hai đầu vào một luật 24
Hình 1.17 . Mô hình hệ mờ - nơ ron 27
Hình 2.1 Hệ suy diễn mờ 30
Hình 2.2 Mạng thích nghi 32
Hình 2.3. Cấu trúc của ANFIS 33
Hình 3.1 Ví dụ đồ thị biểu diễn chỉ số VNINDEX trong một ngày 42
Hình 3.2 Giao diện chƣơng trình 46
Hình 3.3 Nhập dữ liệu 46
Hình 3.4 Cấu hình cho fis 47
Hình 3.5 Các tham số huấn luyện 47
Hình 3.6 Kết quả kiểm tra 48
Hình 3.7 Lựa chọn hiển thị 49
Hình 3.8. Thông số ANFIS 49

Số hóa bởi trung tâm học liệu

1
MỞ ĐẦU
Ngày nay các mạng noron nhân tạo (ANN) đã đƣợc ứng dụng thành công,
các nhà khoa học và các kĩ sƣ trong những năm gần đây đã có nhiều nghiên cứu ứng
dụng trong việc xấp xỉ hàm, nhận dạng và điều khiển, xử lý ảnh, dự đoán chuỗi
thời gian …
Các hệ mờ - noron và các công cụ thống kê là các phƣơng pháp khác
nhau đƣợc sử dụng dự đoán các chỉ số kinh tế, tài chính. Các mạng noron chứa
một số lƣợng lớn các tham số đầu vào cho phép việc học bên trong các quan hệ
không tuyến tính hiện tại trong chuỗi thời gian, tăng cƣờng khả năng dự báo.
ANN đã đƣợc ứng dụng thành công cho việc dự báo tài chính và chỉ số thị
trƣờng quan trọng.

Dự báo giá chứng khoán luôn luôn là đối tƣợng thu hút sự quan tâm của nhà
đầu tƣ và các chuyên gia phân tích. Tuy nhiên, việc tìm thời điểm ra tốt nhất đề mua
hay bán vẫn còn là công việc rất khó khăn bởi vì có rất nhiều yếu tố ảnh hƣởng tới
chứng khoán. Trong những năm gần đây, thị trƣờng chứng khoán và các thƣơng gia
đã tin tƣởng và sử dụng các hệ thống thông minh khác nhau, trong đó ANN và hệ
suy diễn mờ - noron (ANFIS) cũng đƣợc ứng dụng trong lĩnh vực này.
Các phần mềm tính toán đƣợc ứng dụng trong dự báo chứng khoán và các
phần mềm này sử dụng số lƣợng các đầu vào, nhƣ chỉ số kĩ thuật, các yếu tố định
tính, các ảnh hƣởng chính trị, dự báo thị trƣờng chứng khoán tự động và phân tích
các chiều hƣớng .
Trong Luận văn này, em sử dụng ANFIS trong việc dự báo chỉ số thị trƣờng
chứng khoán, Luận văn bao gồm các nội dung sau:
Chƣơng 1:Tổng quan về mạng Nơron nhân tạo và hệ mờ
Chƣơng 2: Mô hình mạng ANFIS và khả năng ứng dụng
Chƣơng 3:Ứng dụng mô hình Anfis trong bài toán phân tích, đánh giá, dự báo
các chỉ số kinh tế và thử nghiệm.


Số hóa bởi trung tâm học liệu

2
Chƣơng 1
TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO VÀ HỆ MỜ
1.1 Cấu trúc và mô hình mạng nơron
1.1.1 Mô hình một nơron sinh học
Phần tử xử lý cơ bản của một mạng nơron sinh học là một nơron, phần tử
này có thể chia làm bốn thành phần cơ bản nhƣ sau: dendrites, soma, axon, và
synapses.
- Dendrites: là phần nhận tín hiệu đầu vào.
- Soma: là hạt nhân.

- Axon: là phần dẫn ra tín hiệu xử lý.
- Synapses: là đƣờng tín hiệu điện hóa giao tiếp giữa các nơron.
Kiến trúc cơ sở này của bộ não con ngƣời có một vài đặc tính chung. Một
cách tổng quát, thì một nơron sinh học nhận đầu vào từ các nguồn khác nhau, kết
hợp chúng lại với nhau, thực thi tổ hợp phi tuyến chúng để cho ra kết quả cuối cùng
ở đầu ra. Hình 1.1 chỉ ra mối quan hệ giữa bốn phần tử của một nơron sinh học.


Hình 1.1 Một nơron sinh học
Một nơron sinh học chỉ có một số chức năng cơ bản nhƣ vậy, ta nhận thấy
khả năng xử lý thông tin của nó là rất yếu. Để có đƣợc khả năng xử lý thông tin
hoàn hảo nhƣ bộ não con ngƣời, thì các nơron phải kết hợp và trao đổi thông tin với
nhau. Ta hình dung sơ đồ liên kết, và trao đổi thông tin giữa hai nơron nhƣ hình 1.2.

Số hóa bởi trung tâm học liệu

3

Hình 1.2. Sự liên kết các nơron
1.1.2 Cấu trúc và mô hình của một nơron nhân tạo
Mô hình toán học của một nơron nhân tạo đƣợc đề xuất bởi McCulloch và
Pitts, thƣờng đƣợc gọi là nơron M-P, ngoài ra nó còn đƣợc gọi là phần tử xử lý và
đƣợc ký hiệu là PE (Processing Element).
Mô hình nơron có m đầu vào x
1
, x
2
, , x
m
, và một đầu ra y

i
nhƣ sau:

Hình 1.3 Mô hình một nơron nhân tạo
Giải thích các thành phần cơ bản:
- Tập các đầu vào: Là các tín hiệu vào của nơron, các tín hiệu này thƣờng
đƣợc đƣa vào dƣới dạng một vector m chiều.
- Tập các liên kết (các trọng số): Mỗi liên kết đƣợc thể hiện bởi một trọng
số (thƣờng đƣợc gọi là trọng số liên kết). Trọng số liên kết giữa tín hiệu

Số hóa bởi trung tâm học liệu

4
vào thứ j cho nơron i thƣờng đƣợc ký hiệu là w
ij
. Thông thƣờng các trọng
số này đƣợc khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và đƣợc cập
nhật liên tục trong quá trình học mạng.
- Bộ tổng (Hàm tổng): Thƣờng dùng để tính tổng của tích các đầu vào với
trọng số liên kết của nó.
- Ngƣỡng: Ngƣỡng này thƣờng đƣợc đƣa vào nhƣ một thành phần của hàm truyền.
- Hàm truyền: Hàm này dùng để giới hạn phạm vi đầu ra của mỗi nơron. Nó
nhận đầu vào là kết quả của hàm tổng và ngƣỡng đã cho. Thông thƣờng,
phạm vi đầu ra của mỗi nơron đƣợc giới hạn trong đoạn [0,1] hoặc [-1,1].
Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến.
Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệm của
ngƣời thiết kế mạng.
- Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa một
đầu ra.
Về mặt toán học, cấu trúc của một nơron i đƣợc mô tả bằng cặp biểu thức sau:


)(
iii
netfy



j
n
j
iji
xwnet



1
(1.1)
trong đó: x
1
, x
2
, …x
m
là các tín hiệu đầu vào, còn w
i1
, w
i2
,…,w
im
là các trọng số kết

nối của nơron thứ i, net
i
là hàm tổng, f là hàm truyền,
i

là một ngƣỡng, y
i
là tín
hiệu đầu ra của nơron.
Nhƣ vậy, tƣơng tự nhƣ nơron sinh học, nơron nhân tạo cũng nhận các tín
hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích
thu đƣợc rồi gửi kết quả đến hàm truyền), và cho một tín hiệu đầu ra (là kết quả của
hàm truyền).
 Hàm truyền có thể có các dạng sau:
- Hàm bƣớc






00
01
xkhi
xkhi
y
(1.2)
- Hàm giới hạn chặt (hay còn gọi là hàm bƣớc)

Số hóa bởi trung tâm học liệu


5






01
01
)sgn(
xkhi
xkhi
xy
(1.3)
- Hàm bậc thang









00
10
11
)sgn(
xkhi

xkhix
xkhi
xy
(1.4)
- Hàm ngƣỡng đơn cực
x




e
y
1
1
với λ>0 (1.5)
- Hàm ngƣỡng hai cực
1
1
2



 x

e
y
với λ>0 (1.6)

 Đồ thị các dạng hàm truyền đƣợc biểu diễn nhƣ sau:


Hình 1.4 Đồ thị các dạng hàm truyền
1.2 Cấu tạo và phƣơng thức làm việc của mạng nơron
Dựa trên những phƣơng pháp xây dựng nơron đã trình bày ở mục trên, ta có
thể hình dung mạng nơron nhƣ là một hệ truyền đạt và xử lý tín hiệu. Đặc tính
truyền đạt của nơron phần lớn là đặc tính truyền đạt tĩnh.

Số hóa bởi trung tâm học liệu

6
Khi liên kết các đầu vào/ra của nhiều nơron với nhau, ta thu đƣợ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ể là theo một nguyên tắc
bất kỳ. Vì mạng nơron là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân biệt
các loại nơron khác nhau, các nơron có đầu vào nhận thông tin từ môi trƣờng bên
ngoài khác với các nơron có đầu vào đƣợc nối với các nơron khác trong mạng,
chúng đƣợc phân biệt với nhau qua vector hàm trọng số ở đầu vào w.
Nguyên lý cấu tạo của mạng nơron bao gồm nhiều lớp, mỗi lớp bao gồm
nhiều nơron có cùng chức năng trong mạng. Hình 1.5 là mô hình hoạt động của một
mạng nơron 3 lớp với 8 phần tử nơron. Mạng có ba đầu vào là x
1
, x
2
, x
3
và hai đầu
ra y
1
, y
2
. Các tín hiệu đầu vào đƣợc đƣa đến 3 nơron đầu vào, 3 nơron này làm
thành lớp đầu vào của mạng. Các nơron trong lớp này đƣợc gọi là nơron đầu vào.

Đầu ra của các nơron này đƣợc đƣa đến đầu vào của 3 nơron tiếp theo, 3 nơron này
không trực tiếp tiếp xúc với môi trƣờng bên ngoài mà làm thành lớp ẩn, hay còn gọi
là lớp trung gian. Các nơron trong lớp này có tên là nơron nội hay nơron ẩn. Đầu ra
của các nơron này đƣợc đƣa đến 2 nơron đƣa tín hiệu ra môi trƣờng bên ngoài. Các
nơron trong lớp đầu ra này đƣợc gọi là nơron đầu ra.

Hình 1.5 Mạng nơron ba lớp
Mạng nơron đƣợc xây dựng nhƣ trên là mạng gồm 3 lớp mắc nối tiếp nhau đi
từ đầu vào đến đầu ra. Trong mạng không tồn tại bất kỳ một mạch hồi tiếp nào. Một
mạng nơron có cấu trúc nhƣ vậy gọi là mạng một hƣớng hay mạng truyền thẳng
một hƣớng (Feed forward network), và có cấu trúc mạng ghép nối hoàn toàn (vì bất

Số hóa bởi trung tâm học liệu

7
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). Mạng
nơron bao gồm một hay nhiều lớp trung gian đƣợc gọi là mạng Multilayer
Perceptrons) (MLP-Network).
Mạng nơron khi mới đƣợc hình thành thì chƣa có tri thức, tri thức của mạng
sẽ đƣợc hình thành dần dần sau một quá trình học. Mạng nơron đƣợc học bằng cách
đƣa vào những kích thích, và mạng hình thành những đáp ứng tƣơng ứng, những
đáp ứng tƣơng ứng phù hợp với từng loại kích thích sẽ đƣợc lƣu trữ. Giai đoạn này
đƣợc gọi là giai đoạn học của mạng. Khi đã hình thành tri thức mạng, mạng có thể
giải quyết các vấn đề một cách đúng đắn. Đó có thể là vấn đề ứng dụng rất khác
nhau, đƣợc giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầu
vào của mạng và các đáp ứng đầu ra.
 Nếu nhiệm vụ của một mạng là hoàn chỉnh hoặc hiệu chỉnh các thông tin thu
đƣợc không đầy đủ hoặc bị tác động của nhiễu. Mạng nơron kiểu này đƣợc
ứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng cụ thể là
nhận dạng chữ viết.

 Nhiệm vụ tổng quát của một mạng nơron là lƣu giữ động các thông tin. Dạng
thông tin lƣu giữ này chính là quan hệ giữa các thông tin đầu vào và các đáp
ứng đầu ra tƣơng ứng, để khi có một kích thích bất kỳ tác động vào mạng,
mạng có khả năng suy diễn và đƣa ra một đáp ứng phù hợp. Đây chính là
chức năng nhận dạng theo mẫu của mạng nơron. Để thực hiện chức năng
này, mạng nơron đóng vai trò nhƣ một bộ phận tổ chức các nhóm thông tin
đầu vào, và tƣơng ứng với mỗi nhóm là một đáp ứng đầu ra phù hợp. Nhƣ
vậy, một nhóm bao gồm một loại thông tin đầu vào và một đáp ứng đầu ra.
Các nhóm có thể đƣợc hình thành trong quá trình học, và cũng có thể không
hình thành trong quá trình học.
Hình 1.6 là một số liên kết đặc thù của mạng nơron. Nơron đƣợc vẽ là các
vòng tròn xem nhƣ một tế bào thần kinh, chúng có các mối liên hệ đến các nơron
khác nhờ các trọng số liên kết. Tập hợp các trọng số liên kết này sẽ lập thành các
ma trận trọng số tƣơng ứng.

Số hóa bởi trung tâm học liệu

8
1.2.1 Mạng nơron một lớp
Mỗi một nơron có thể phối hợp với các nơron khác tạo thành một lớp các
trọng số. Mạng một lớp truyền thẳng nhƣ hình 1.6a. Một lớp nơron là một nhóm các
nơron mà chúng đều có cùng trọng số, nhận cùng một tín hiệu đầu vào đồng thời.
Trong ma trận trọng số, các hàng là thể hiện nơron, hàng thứ j có thể đặt
nhãn nhƣ một vector w
j
của nơron thứ j gồm m trọng số w
ji
. Các trọng số trong cùng
một cột thứ j (j=1,2, ,n) đồng thời cùng nhận một tín hiệu đầu vào x
j

.
w
j
= [w
j1
, w
j2
, , w
jm
]
Tại cùng một thời điểm, vector đầu vào x = [x
1
, x
2
, , x
n
] có thể là một nguồn
bên ngoài là cảm biến hoặc thiết bị đo lƣờng đƣa tới mạng.

(a) Mạng truyền thẳng một lớp (b) Mạng hồi tiếp một lớp

(c) Mạng truyền thẳng nhiều lớp

(d) Mạng nơron hồi quy
Hình 1.6 Một số dạng mạng nơron

Số hóa bởi trung tâm học liệu

9
1.2.2 Mạng nơron truyền thẳng nhiều lớp

Mạng nơron nhiều lớp (Hình 1.6.c) có các lớp đƣợc phân chia thành 3 loại
sau đây:
 Lớp vào là lớp nơron đầu tiên nhận tín hiệu vào x
i
(i = 1, 2, , n). Mỗi tín
hiệu x
i
đƣợc đƣa đến tất cả các nơron của lớp đầu vào. Thông thƣờng, các
nơron đầu vào không làm biến đổi các tín hiệu vào x
i
, tức là chúng không có
các trọng số hoặc không có các loại hàm chuyển đổi nào, chúng chỉ đóng vai
trò phân phối các tín hiệu.
 Lớp ẩn là lớp nơron sau lớp vào, chúng không trực tiếp liên hệ với thế giới
bên ngoài nhƣ các lớp nơron vào/ra.
 Lớp ra là lớp nơron tạo ra các tín hiệu ra cuối cùng.
1.2.3 Mạng nơron phản hồi
Mạng nơron phản hồi là mạng mà đầu ra của mỗi nơron đƣợc quay trở lại
nối với đầu vào của các nơron cùng lớp nhƣ hình 1.6b
1.2.4 Mạng nơron hồi quy
Mạng nơron phản hồi có thể thực hiện đóng vòng đƣợc gọi là mạng nơron
hồi quy nhƣ hình 1.6d. Mạng nơron hồi quy có trọng số liên kết đối xứng nhƣ mạng
Hopfield, mạng luôn hội tụ về trạng thái ổn định (Hình 1.6.b). Mạng BAM thuộc
nhóm mạng nơron hồi quy, gồm 2 lớp liên kết 2 chiều, không đƣợc gắn với tín hiệu
vào/ra. Nghiên cứu mạng nơron hồi quy mà có trọng số liên kết không đối xứng, thì
sẽ gặp phải vấn đề phức tạp nhiều hơn so với mạng truyền thẳng và mạng hồi quy
có trọng số liên kết đối xứng.
1.2.5 Mạng Hopfield
Mạng Hopfield là mạng phản hồi một lớp, đƣợc chỉ ra trong hình 1.6.b. Cấu
trúc chi tiết của nó đƣợc thể hiện trong hình 1.7 Khi hoạt động với tín hiệu rời rạc, nó

đƣợc gọi là mạng Hopfield rời rạc, và cấu trúc của nó cũng đƣợc gọi là mạng hồi quy.

Số hóa bởi trung tâm học liệu

10

Hình 1.7 Cấu trúc của mạng Hopfield
Nhƣ mạng Hopfield đã vẽ ở trên, ta thấy nút có một đầu vào bên ngoài x
j

một giá trị ngƣỡng
j

(j = 1,2, n). Một điều quan trọng cần nói ở đây là mỗi nút
không có đƣờng phản hồi về chính nó. Nút đầu ra thứ j đƣợc nối tới mỗi đầu vào
của nút khác qua trọng số w
ij
, với i

j, (i = 1,2, ,n), hay nói cách khác w
ii
= 0, (với
i = 1,2, ,n).
Một điều quan trọng nữa là trọng số của mạng Hopfield là đối xứng, tức là
w
ij
= w
ji
, (với i,j = 1,2, ,n). Khi đó, luật cập nhật cho mỗi nút mạng là nhƣ sau:
,sgn

1
)()1(















n
ij
j
i
k
jij
k
i
xywy


i = 1,2, ,n (1.7)
Luật cập nhật trên đƣợc tính toán trong cách thức không đồng bộ. Điều này

có nghĩa là, với một thời gian cho trƣớc, chỉ có một nút mạng cập nhật đƣợc đầu ra
của nó. Sự cập nhật tiếp theo trên một nút sẽ sử dụng chính những đầu ra đã đƣợc
cập nhật. Nói cách khác, dƣới hình thức hoạt động không đồng bộ của mạng, mỗi
đầu ra đƣợc cập nhật độc lập.
Có sự khác biệt giữa luật cập nhật đồng bộ và luật cập nhật không đồng bộ.
Với luật cập nhật không đồng bộ thì sẽ chỉ có một trạng thái cân bằng của hệ (với

Số hóa bởi trung tâm học liệu

11
giá trị đầu đã đƣợc xác định trƣớc). Trong khi đó, với luật cập nhật đồng bộ thì có
thể làm mạng hội tụ ở mỗi điểm cố định hoặc một vòng giới hạn.
1.2.6 Mạng BAM
Mạng BAM bao gồm hai lớp và đƣợc xem nhƣ là trƣờng hợp mở rộng của
mạng Hopfield. Ở đây ta chỉ xét mạng rời rạc, vì nó đơn giản và dễ hiểu.

Hình 1.8 Cấu trúc của BAM
Khi mạng nơron đƣợc tích cực với giá trị đầu vào của vector tại đầu vào của
một lớp, mạng sẽ có hai mẫu trạng thái ổn định, với mỗi mẫu tại đầu ra của nó là
một lớp. Tính động học của mạng thể hiện dƣới dạng tác động qua lại giữa hai lớp.
Cụ thể hơn, giả sử một vector đầu vào x đƣợc cung cấp cho đầu vào của lớp nơron
y. Đầu vào đƣợc xử lý và truyền tới đầu ra của lớp y nhƣ sau:
y‟ = a(wx) ;











jiji
xway
'
; với i = 1,2, ,n (1.8)
Ở đó a(.) là hàm truyền, vector y‟ bây giờ lại nuôi trở lại lớp nơron X và tạo
nên đầu ra nhƣ sau:
x‟ = a(w
T
y‟);









n
i
iijj
ywax
1
; với j = 1,2, ,m (1.9)
Sau đó x‟ nuôi trở lại đầu vào của lớp y và tạo ra hàm y‟‟ theo phƣơng trình
(1.8). Quá trình này cứ tiếp tục, bao gồm các bƣớc nhƣ sau:
y

(1)
= a(wx
(0)
) (truyền thẳng lần thứ nhất)
x
(2)
= a(w
(T)
y
(1)
) (truyền ngƣợc lần thứ nhất)

Số hóa bởi trung tâm học liệu

12
y
(3)
= a(wx
(2)
) (truyền thẳng lần thứ hai)
x
(4)
= a(w
(T)
y
(3)
) (truyền ngƣợc lần thứ hai) (1.10)


y

(k-1)
= a(wx
(k-2)
) (truyền thẳng lần thứ k/2)
x
(k)
= a(w
(T)
y
(k-1)
) (truyền ngƣợc lần thứ k/2)
Chú ý rằng trạng thái cập nhật trong phƣơng trình (1.10) là đồng bộ theo
phƣơng trình (1.8) và (1.9). Trạng thái cập nhật cũng có thể không đồng bộ theo
phƣơng trình (1.8) và (1.9) với các nút i, j đƣợc chọn tự do. Ngƣời ta đã chỉ ra rằng,
hệ thống ổn định cho cả hai chế độ đồng bộ và không đồng bộ. Tuy nhiên, chế độ
đồng bộ sẽ làm cho hệ thống hội tụ nhanh hơn nhiều.
1.3. Các luật học
1.3.1 Học có giám sát
Mạng đƣợc cung cấp một tập mẫu học {(x, d)} theo nghĩa x là các tín
hiệu vào thì kết quả đúng của hệ phải là d. Ở mỗi lần học, vector tín hiệu vào x
đƣợc đƣa vào mạng, sau đó so sánh sự sai khác giữa các kết quả ra đúng d với
kết quả tính toán Y. Sai số này đƣợc dùng để hiệu chỉnh lại các trọng số liên kết
trong mạng quá trình cứ tiếp tục cho đến khi thỏa mãn một tiêu chuẩn nào đó.
Có 2 cách sử dụng tập mẫu học: hoặc dùng các mẫu lần lƣợt hết mẫu này đến
mẫu khác, hoặc sử dụng đồng thời tất cả các mẫu cùng một lúc.






Hình 1.9 Học có giám sát
1.3.2 Học không có giám sát
Trong kỹ thuật học này, sẽ không có sự hồi tiếp từ môi trƣờng để cho biết
tín hiệu ra yêu cầu của mạng nên nhƣ thế nào, hoặc chúng có đúng chƣa giống
nhƣ học có giám sát, nói chung mạng nơron phải tự nó phát hiện ra bất cứ mối
tín hiệu lỗi
Đầu ra
mong
muốn
Đầu ra
thực tế
Mạng
ANN
Tạo tín
hiệu lỗi

Số hóa bởi trung tâm học liệu

13
liên hệ có liên quan có thể tồn tại trong dữ liệu vào (chẳng hạn nhƣ : các mẫu,
các đặc trƣng, các quy tắc, sự tƣơng quan) và chuyển mối liên hệ đã phát hiện
này sang đầu ra. Mạng học với cơ chế này gọi là mạng tự tổ chức. Thí dụ, mạng
nơron học không thầy có thể cho chúng ta biết một mẫu đầu vào mới đồng dạng
nhƣ thế nào với mẫu đặc trƣng đã thấy trong quá khứ.





Hình 1.10 Học không có giám sát

1.3.3 Học củng cố





Hình 1.11 Học củng cố
Tín hiệu tăng cƣờng có thể lấy từ môi trƣờng bên ngoài, nhƣng tín hiệu này
không đƣợc đầy đủ mà chỉ có tính chất kiểm tra quá trình tốt hay xấu. Học củng cố
cũng là một dạng của học có giám sát, bởi vì mạng vẫn nhận một số tín hiệu từ bên
ngoài. Nhƣng tín hiệu phản hồi chỉ mang tính chất đánh giá hơn là mạng tính chất
chỉ dẫn. Nó cho biết mức độ tốt hay xấu của một đầu ra cụ thể . Tín hiệu củng cố
bên ngoài thƣờng đƣợc xử lý bằng máy phát tín hiệu đánh giá để tạo ra nhiều hơn
nữa các thông tin tín hiệu đánh giá, sau đó dùng để điều chỉnh các trọng số với mục
đích đạt đƣợc tín hiệu đánh giá tốt hơn.
đầu vào
Đầu ra thực tế
Mạng ANN
Tín hiệu
hiệu chỉnh
Tín hiệu
tăng cƣờng
Đầu ra
thực tế
Mạng
ANN
Tạo tín hiệu
hiệu chỉnh

Số hóa bởi trung tâm học liệu


14
1.4 Thuật toán lan truyền ngƣợc
Lan truyền ngƣợc là một phƣơng pháp cho phép xác định tập trọng số tốt
nhất của mạng để giải một bài toán đã cho. Việc áp dụng phƣơng pháp lan truyền
ngƣợc là một quá trình lặp đi lặp lại nhiều lần hai tiến trình chính: lan truyền tiến để
thực hiện ánh xạ và lan truyền ngƣợc sai số để cập nhật các trọng số. Các trọng số
của mạng là các hệ số của mô hình. Phƣơng pháp giảm gradient đƣợc dùng để cập
nhật những hệ số này sao cho giảm thiểu đƣợc sai số của mô hình.
Xét lớp mạng 3 lớp nhƣ hình (1.12)


Hình 1.12: Mạng 3 lớp lan truyền ngược
Thuật toán: Đầu tiên ta cho lan truyền thẳng suốt trong mạng, qua các phần tử
nơron và đƣợc tiếp tục với các hàm kích hoạt của phần tử nơron. Các mạng đƣợc nghiên
cứu cùng với thuật toán học lan truyền ngƣợc đƣợc gọi là mạng lan truyền ngƣợc.
Huấn luyện các cặp vào/ra.
{(x
(k)
, d
(k)
)}, k = 1,2, ,p
Thuật toán cung cấp một thủ tục cho việc thay đổi các vector trọng số trong
mạng, đầu ra của mạng đƣợc lan truyền ngƣợc trở lại lớp đầu vào cho đúng các
mẫu. Cơ sở cho việc cập nhật các trọng số là phƣơng pháp độ dốc Gradient.
Với cặp vào ra (x
(k)
, d
(k)
), thuật toán lan truyền ngƣợc thực hiện các bƣớc

nhƣ sau:

Số hóa bởi trung tâm học liệu

15
Đầu tiên, mẫu x
(k)
đƣợc lan truyền từ lớp đầu vào qua các lớp ẩn đi đến lớp
đầu ra có kết quả là y
(k)
. Sau đó, sai số giữa y
(k)
và d
(k)
đƣợc lan truyền ngƣợc trở lại
từ lớp đầu ra tới lớp đầu vào để cập nhật trọng số. Hình (1.12) diễn giải thuật toán
lan truyền ngƣợc. Kết quả có thể mở rộng sang mạng nơron nhiều lớp.
Trên hình (1.12) có m phần tử nơron đầu vào, l phần tử nơron ở lớp ẩn, và n
phần tử nơron ở lớp đầu ra. Đƣờng nét liền diễn tả lan truyền thẳng của các tín hiệu,
đƣờng nét đứt diên tả lan truyền ngƣợc của các sai số. Đầu tiên huấn luyện vào cặp
vào/ra ký hiệu (x,d) để cho đơn giản ta bỏ chỉ số k. Khi một mẫu đầu vào x đƣợc
đƣa vào thì các phần tử trong mạng sẽ đƣợc tính nhƣ sau:
Đầu vào phần tử q của lớp ẩn sẽ đƣợc tính theo phƣơng trình:
j
m
j
qjq
xvnet




1
(1.11)
Phƣơng trình đầu ra của q sẽ là:
()( anetaz
qq


j
m
j
qj
xv

1
) (1.12)
Đầu vào phần tử thứ i của lớp đầu ra sẽ là:
)(
111
j
m
j
qj
l
q
iqq
l
q
iqi
xvawzwnet




(1.13)
Phƣơng trình đầu ra của phần tử nơron thứ i sẽ là:
))(.()()(
111
j
m
j
qj
l
q
iqq
l
q
iqii
xvawazwanetay



(1.14)
Các chỉ số trên đƣợc tính toán cho sự lan truyền tiến của các tín hiệu đầu vào
xuyên suốt qua các lớp mạng nơron. Trƣớc khi ta đề cập đến các tín hiệu sai số của
sự lan truyền ngƣợc, ta sẽ định nghĩa một hàm mục tiêu nhƣ sau:
 
2
1 1
2
11

2
2
1
)(
2
1
)(
2
1
)(
 
 

















n

i
l
q
qiqi
n
i
ii
n
i
ii
zwadnetadydwE
(1.15)
Sau đó, theo phƣơng pháp độ dốc Gradient, các trọng số nối giữa lớp ẩn và
lớp đầu ra đƣợc cập nhật bởi
iq
w
, và nó đƣợc tính theo công thức sau:

iq
iq
w
E
w




(1.16)

Số hóa bởi trung tâm học liệu


16
Sử dụng các công thức (1.13-1.15) và thay đổi luật với
iq
w
E


, ta có:
  
 
qoiqiii
iq
i
i
i
i
i
i
iq
zznetayd
w
net
net
net
net
y
y
E
w






































 )('
(1.17)
Trong đó,
oi

là tín hiệu sai số, chỉ số dƣới thứ hai là điểm thứ i trong lớp
đầu ra. Sai số tín hiệu đƣợc định nghĩa bởi:
  
)('
iii
i
i
ii
oi
netayd
net
y
y
E
net
E























(1.18)
Trong đó, net
i
là đầu vào của phần tử nơron thứ i trong lớp đầu ra và
i
i
i
net
neta
neta




)(
)('
.
Bây giờ ta phải tính đầu ra z
q
của lớp ẩn:
Với trọng số nối giữa đầu vào và các lớp ẩn, ta sử dụng thay đổi luật cùng
phƣơng pháp độ dốc Gradient, ta cập nhật trọng số để kết nối giữa phần tử thứ j của
lớp đầu vào với phần tử thứ q của lớp ẩn. Khi đó:

































































qj
q
q
q
qqj
q
qqj
qj
v
net
net
z
z
E
v
net

net
E
v
E
v

(1.19)
Từ công thức (1.15), thì mỗi sai số [d
i
-y
i
], với i=1,2, ,n là một hàm của z
q
.
Đánh giá thay đổi luật ta có:
 
 
jq
n
i
iqiiiqj
xnetawnetaydv ).('.).('.
1




(1.20)
Sử dụng công thức (1.18), ta có thể viết lại công thức (1.28) nhƣ sau:


 
jhqjq
n
i
iqoiqj
xxnetawv 



).('
1
(1.21)
Ở đây,
hq

là sai số tín hiệu của phần tử thứ q của lớp ẩn và đƣợc định nghĩa
nhƣ dƣới đây:
iq
n
i
oiq
q
q
qq
hq
wneta
net
z
z
E

net
E



























1

)('

(1.22)
Trong đó, net
q
là đầu vào phần tử thứ q của lớp ẩn.

Số hóa bởi trung tâm học liệu

17
Tín hiệu sai số của một phần tử trong lớp ẩn khác so với tín hiệu sai số của
một phần tử trong lớp đầu ra, nhƣ đã đƣợc chỉ ra trong công thức (1.22) và (1.18).
Do có sự khác nhau này, nên các thủ tục cập nhật các trọng số trên đƣợc gọi là luật
học delta tổng quát. Chúng ta xem xét công thức (1.22), sai số tín hiệu
hq

của phần
tử lớp ẩn q có thể đƣợc xác định trong các mẫu của các tín hiệu sai số
oi

của các
phần tử ở lớp ra thứ i (y
i
) cung ứng. Các hệ số là các trọng số đƣợc sử dụng cho lan
truyền thẳng, nhƣng ở đây chúng truyền các tín hiệu sai số (
oi

) ngƣợc trở lại, đó
chính là các đƣờng nét đứt trong hình (1.12). Điều này đã chứng tỏ đƣợc đặc điểm
quan trọng của thuật toán lan truyền ngƣợc – luật cập nhật cục bộ, đây chính là tính

toán trọng số thay đổi dựa vào sự kết nối, và chúng ta chỉ cần giá trị ở hai đầu của
kết nối này.
Sự đạo hàm ở trên có thể dễ dàng mở rộng cho mạng có nhiều hơn một lớp
ẩn, bằng cách sử dụng chuỗi luật liên tiếp. Trong trƣờng hợp chung, với số lớp tùy
ý, thì sự lan truyền ngƣợc đƣợc cập nhật luật ở dạng sau:
jinputioutputjiij
xxw



(1.23)
Ở đây, (output-i) và (input-j) quy vào hai đầu của sự kết nối từ phần tử thứ j
tới phần tử thứ i, x
j
là đầu vào cuối cùng kích hoạt từ một phần tử lớp ẩn, hoặc từ
một đầu vào bên ngoài. Ngoài ra,
i

là tín hiệu học đƣợc định nghĩa bởi công thức
(1.18) với đầu ra hoặc lớp cuối cùng của các trọng số kết nối, và đƣợc định nghĩa
bởi công thức (1.22) cho tất cả các lớp khác. Khi hàm sigmoid lƣỡng cực đƣợc sử
dụng làm hàm kích hoạt, đồng thời sử dụng (1.18) và (1.22) ta có hàm y đƣợc xác
định nhƣ sau:
1
1
1
)( 


net

e
netay

Khi đó ta có:
 
)1(
2
1
)(1
2
1)(
)('
22
yneta
net
neta
neta 





 
iioi
ydy  )1(
2
1
2

(1.24)


iq
n
i
oihq
wz



1
2
)1(
2
1

(1.25)

Số hóa bởi trung tâm học liệu

18
Thuật toán lan truyền ngƣợc
Xem xét một mạng với Q lớp lan truyền ngƣợc, q=1,2, ,Q; với
q
net
i

q
y
i


lần lƣợt là đầu vào và đầu ra của khối trong lớp thứ q. Mạng có m nơron đầu vào, l
nơron ở lớp ẩn, và n nơron đầu ra. Với
q
w
ij
là trọng số nối từ
q-1
w
j
đến
q
y
i
.
Đầu vào: các cặp huấn luyện {x
(k)
, d
(k)
| k=1,2, ,p}, ở đó giá trị đầu vào của
phần tử cuối cùng bằng -1, tức là
1
)(
1


k
m
x
.
Bƣớc 0 (Đặt giá trị ban đầu)

- Lựa chọn bƣớc tính (Hằng số học) 0<η<1 và E
max
(sai số lớn nhất
cho phép).
- Chọn các trọng số ban đầu nối từ phần tử thứ j của lớp (q – 1) đến phần tử
thứ i của lớp q là
q
w
ij
có giá trị nhỏ và ngẫu nhiên.
- Cho sai số E = 0 và k = 1.
Bƣớc 1 (Vòng lặp huấn luyện)
Áp dụng mẫu vào thứ k, cho lớp đầu vào q=1. Khi đó ta có:
q
y
i
=
1
y
i
= x
i
(k)
cho tất cả các i = 1,2,3,…,m. (1.26)
Bƣớc 2 (Lan truyền thẳng)
Lan truyền tín hiệu thẳng xuyên suốt mạng sử dụng công thức (1.35) cho mỗi
i và q cho tới khi các đầu ra của lớp đầu ra
Q
y
i

đƣợc thực hiện.
).()(
1



j
j
q
ij
q
i
q
i
q
ywanetay
(1.27)
Bƣớc 3 (Đo lƣờng sai số đầu ra)
Tính toán giá trị sai lệch và tín hiệu sai lệch
i
Q

cho lớp đầu ra nhƣ sau:

EydE
i
Q
n
i
k

i



2
1
)(
)(
2
1
; (1.28)
)'().(
)(
i
Q
i
Qk
ii
Q
netayd 

(1.29)

×