Tiểu luận tổng quan về Mối quan hệ giữa chu kỳ kinh tế và đầu tư trong nền ki...
Mạng nơron RBF và ứng dụng.pdf
1. ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Hoàng Tiến Dũng
MẠNG NƠRON RBF VÀ ỨNG DỤNG
LUẬN VĂN THẠC SĨ
HÀ NỘI – 2006
2. ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Hoàng Tiến Dũng
MẠNG NƠRON RBF VÀ ỨNG DỤNG
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC:
TS. Hoàng Xuân Huấn
HÀ NỘI – 2006
3. Trang - 2 -
MỤC LỤC
LỜI CẢM ƠN ......................................................................................................................................1
MỤC LỤC ......................................................................................................................................2
MỞ ĐẦU ......................................................................................................................................5
CHƢƠNG 1: BÀI TOÁN NỘI SUY VÀ XẤP XỈ HÀM................................................................8
1.1. Giới thiệu chung................................................................................................................8
1.2. Bài toán nội suy và xấp xỉ hàm nhiều biến ....................................................................8
1.2.1. Bài toán nội suy hàm nhiều biến ...................................................................8
1.2.2. Phương pháp k-lân_cận_gần_nhất ................................................................8
1.2.3. Bài toán xấp xỉ hàm nhiều biến...................................................................10
CHƢƠNG 2: GIỚI THIỆU MẠNG NƠRON...............................................................................12
2.1. Giới thiệu chung..............................................................................................................12
2.2. Mạng nơron tự nhiên .....................................................................................................13
2.3. Mạng nơron nhân tạo (Artificial Neural Network) ....................................................14
2.3.1. Cấu tạo của một nơron ................................................................................15
2.3.2. Ví dụ cách một nơron học ...........................................................................17
2.3.3. Cấu tạo của mạng nơron..............................................................................18
2.3.4. Quá trình học của mạng nơron....................................................................20
2.4. Luật học của mạng Nơron .............................................................................................21
2.4.1. Khái niệm luật học của mạng nơron. ..........................................................21
2.4.2. Học có giám sát ...........................................................................................21
2.4.3. Học không giám sát....................................................................................21
2.4.4. Học tăng cường ...........................................................................................21
2.5. Luật học Perceptron.......................................................................................................22
2.5.1. Mô hình tổng quát. ......................................................................................22
2.5.2. Luâ ̣t học Perceptron.....................................................................................23
2.5.3. Đặc tính hội tụ. ............................................................................................25
2.5.4. Nhận xét về thuật toán.................................................................................26
2.6. Mạng ADALINE.............................................................................................................26
2.6.1. Kiến trúc tổng quát ......................................................................................27
2.6.2. ADALINE đơn. ...........................................................................................27
2.6.3. Sai số trung bình bình phương ....................................................................28
4. Trang - 3 -
2.6.4. Thuâ ̣t toán Trung bình bình phương nhỏ nhất (Least Mean Square)..........29
2.6.5. Sự hội tụ......................................................................................................31
2.6.6. Nhận xét. .....................................................................................................31
2.7. Mạng Perceptron nhiều tầng MLP (Multi-Layer Perceptrons)................................31
2.7.1. Kiến trúc mạng ............................................................................................31
2.7.2. Huấn luyện mạng bằng thuật toán lan truyền ngược (Back-Propagation)..32
CHƢƠNG 3: MẠNG NƠRON NỘI SUY RBF (RADIAL BASIC FUNCTION).....................36
3.1. Giới thiệu .........................................................................................................................36
3.2. Mạng nội suy RBF và các vấn đề liên quan.................................................................37
3.2.1. Bài toán nội suy nhiều biến với cách tiếp cận RBF ....................................37
3.2.2. Kiến trúc mạng RBF và đặc điểm huấn luyện ............................................38
3.3. Phƣơng pháp Trung bình bình phƣơng nhỏ nhất huấn luyện mạng RBF ..............40
3.3.1. Huấn luyện đầy đủ.......................................................................................40
3.3.2. Huấn luyện nhanh........................................................................................40
3.4. Phƣơng pháp Lặp huấn luyện mạng RBF...................................................................40
3.4.1. Định lý.........................................................................................................40
3.4.2. Mô tả thuật toán...........................................................................................41
3.4.3. Đặc tính hội tụ .............................................................................................44
3.5. Ứng dụng mạng RBF .....................................................................................................45
CHƢƠNG 4: CHƢƠNG TRÌNH MÁY TÍNH THỰC NGHIỆM..............................................48
4.1. Giới thiệu chƣơng trình máy tính.................................................................................48
4.1.1. Giới thiệu.....................................................................................................48
4.1.2. Cấu hình máy tính sử dụng chương trình....................................................50
4.2. Sử dụng chƣơng trình máy tính....................................................................................50
4.2.1. Cấu trúc dữ liệu vào ....................................................................................50
4.2.2. Đọc dữ liệu vào ...........................................................................................51
4.2.3. Sinh mốc dữ liệu vào...................................................................................52
4.2.4. Huấn luyện mạng RBF với các mốc nội suy đầu vào .................................54
4.2.5. Nội suy bằng mạng RBF vừa huấn luyện ...................................................55
CHƢƠNG 5: BÀI TOÁN XẤP XỈ HÀM TRONG KHÍ TƢỢNG THỦY VĂN .......................57
5.1. Phát biểu bài toán...........................................................................................................57
5.1.1. Hoạt động thực tế ........................................................................................57
5.1.2. Đặt bài toán .................................................................................................59
5. Trang - 4 -
5.2. Một vài phƣơng pháp áp dụng......................................................................................60
5.2.1. Phương pháp địa phương.............................................................................60
5.2.2. Mạng MLP ..................................................................................................61
5.2.3. Dùng RBF và phương pháp lặp...................................................................61
5.3. Ứng dụng chƣơng trình máy tính.................................................................................61
5.3.1. Cấu trúc file dữ liệu quan trắc.....................................................................61
5.3.2. Đọc dữ liệu vào ...........................................................................................62
5.3.3. Huấn luyện mạng RBF với file số liệu quan trắc........................................63
5.3.4. Nội suy với dữ liệu nằm trên mốc lưới .......................................................64
5.4. Nhận xét ứng dụng mạng nội suy RBF ........................................................................67
KẾT LUẬN ....................................................................................................................................69
Các kết quả đạt đƣợc..................................................................................................................69
Hƣớng nghiên cứu tiếp theo.......................................................................................................69
TÀI LIỆU THAM KHẢO ....................................................................................................................71
PHỤ LỤC ....................................................................................................................................73
Môi trƣờng viết chƣơng trình....................................................................................................73
Giới thiệu một số thủ tục chính của chƣơng trình ..................................................................74
6. Trang - 5 -
MỞ ĐẦU
Sự phát triển mạnh mẽ của công nghệ thông tin trong thời gian qua đang nhanh
chóng đƣa hệ thống thông tin kỹ thuật số thay thế hệ thống thông tin văn bản cổ
truyền. Khi xử lý thông tin số, đặc biệt là khi giải quyết các bài toán kỹ thuật, ta
thƣờng gặp bài toán nội suy và xấp xỉ hàm. Mặc dù bài toán này đã đƣợc nghiên
cứu kỹ và giải quyết khá trọn vẹn từ lâu cho các hàm một biến, đến nay đối với hàm
nhiều biến vẫn còn nhiều vấn đề mở thu hút nhiều nhà nghiên cứu.
Hiện nay, các phƣơng pháp địa phƣơng và mạng nơron là hai cách tiếp cận
thông dụng để nội suy và xấp xỉ hàm nhiều biến tuy rằng việc ƣớc lƣợng sai số còn
chƣa đƣợc giải quyết trọn vẹn. Trong cách tiếp cận địa phƣơng, các phƣơng pháp k-
láng giềng gần nhất và hồi quy địa phƣơng có thời gian tính giá trị hàm tại mỗi biến
nhanh nhƣng chúng không dùng hết thông tin và với các điểm khác nhau thì thông
tin đã biết ở những điểm khác khó đƣợc sử dụng lại nên khi cần phải tính giá trị
hàm tại nhiều điểm thì rất tốn thời gian và không tiện dùng. Mạng MLP (Multilayer
Perceptron) là một công cụ mạnh nhƣng thời gian huấn luyện lâu nên không thích
hợp cho các hệ thống thời gian thực.
Một hệ thống thời gian thực có thể đƣợc hiểu nhƣ là một mô hình xử lý mà
tính đúng đắn của hệ thống không chỉ phụ thuộc vào kết quả tính toán mà còn phụ
thuộc vào thời gian đƣa ra kết quả. Bài toán thời gian thực này hầu nhƣ xuất hiện
trong mọi lĩnh vực. Trong kinh doanh, các doanh nghiệp luôn cần có những thông
tin “thời gian thực” từ thị trƣờng, từ đối tác và bạn hàng, qua đó có thể đƣa ra
những chính sách hợp lý. Trong kiểm soát giao thông, việc xác định “thời gian
thực” mật độ và lƣu lƣợng giao thông giúp cho các đơn vị sử dụng điều khiển, phân
luồng giao thông một cách hợp lý. Trong truyền thông, việc duy trì kết nối “thời
gian thực” giúp cho việc tƣơng tác giữa các hệ thống khác nhau đƣợc vận hành
đồng bộ và thực hiện đúng mục đích. Trong điều khiển tự động, việc có đƣợc thông
tin “thời gian thực” hoạt động của các thiết bị cho phép theo dõi và vận hành các
thiết bị này một cách hợp lý và hiệu quả. Có thể kể ra rất nhiều yêu cầu thực tế khác
nhau đòi hỏi các hệ thống phải đảm bảo yếu tố “thời gian thực”.
So với mạng MLP, mạng RBF có thời gian huấn luyện nhanh hơn, đặc biệt
là thuật toán huấn luyện lặp đƣợc đề xuất trong [2, 3] nên thích hợp với nhiều bài
7. Trang - 6 -
toán đòi hỏi thời gian xấp xỉ hàm ngắn nói chung và bài toán “thời gian thực” nói
riêng.
Luận văn này trình bày các nội dung sau:
Khảo cứu về mạng nơron RBF để nội suy, xấp xỉ hàm số mà chủ yếu tập
trung vào mạng nội suy và thuật toán huấn luyện.
Xây dựng phần mềm huấn luyện lặp mạng RBF làm công cụ học tập và
nghiên cứu.
Xây dựng phần mềm tính giá trị gần đúng của hàm nội suy trên lƣới đều
dựa trên tập giá trị quan trắc cho trƣớc dùng trong bài toán khí tƣợng.
Phần trọng tâm của đề tài chính là xây dựng phần mềm cho phép thực
nghiệm nội suy bằng mạng nơron RBF và bƣớc đầu thực nghiệm nó vào bài toán
khí tƣợng
Ngoài phần kết luận, các chƣơng của đề tài đƣợc trình bày nhƣ sau:
CHƢƠNG 1: BÀI TOÁN NỘI SUY VÀ XẤP XỈ HÀM
Trình bày tóm tắt các điểm cơ bản về bài toán nội suy bao gồm nội suy
hàm một biến và nội suy hàm nhiều biến.
CHƢƠNG 2: GIỚI THIỆU MẠNG NƠRON
Giới thiệu ngắn gọn về mạng nơron bao gồm kiến trúc và luật học của
Perceptron đơn, mạng ADALINE và mạng MLP.
CHƢƠNG 3: MẠNG NƠRON NỘI SUY RBF
Trình bày khảo cứu về mạng RBF và một số ứng dụng. Nội dung chính
của Phương pháp Lặp huấn luyện mạng RBF.
CHƢƠNG 4: GIỚI THIỆU CHƢƠNG TRÌNH MÁY TÍNH
Giới thiệu chương trình máy tính thực nghiệm bài toán nội suy bằng
mạng RBF được huấn luyện bằng phương pháp lặp được trình bày tại
chương 3.
CHƢƠNG 5: BÀI TOÁN XẤP XỈ HÀM TRONG KHÍ TƢỢNG
THỦY VĂN
Giới thiệu bài toán thực tế trong khí tượng thuỷ văn đòi hỏi áp dụng xấp
xỉ hàm nhiều biến. Bài toán này được đặt ra dựa trên công tác nghiên
8. Trang - 7 -
cứu, hoạt động của Khoa Khí tượng Thủy văn và Hải dương học – Đại
học KHTN – Đại học Quốc gia Hà Nội. Đồng thời giới thiệu ứng dụng
chương trình máy tính được xây dựng để nội suy giá trị theo các mốc
quan trắc.
9. Trang - 8 -
CHƢƠNG 1: BÀI TOÁN NỘI SUY VÀ XẤP XỈ HÀM
1.1. Giới thiệu chung
Nội suy và xấp xỉ hàm số là những bài toán đã đƣợc các nhà khoa học
nghiên cứu từ rất sớm. Lý thuyết về nội suy hàm số có thể ứng dụng ở rất nhiều lĩnh
vực khoa học cũng nhƣ các lĩnh vực trong cuộc sống. Bài toán nội suy là một trong
những vấn đề chính thúc đẩy các nhà khoa học trong ngành Khoa học máy tính phát
triển các mạng nơron để giải quyết bài toán này. Chƣơng này trình bày những vấn
đề cơ bản liên quan đến bài toán nội suy và xấp xỉ hàm. Bài toán xấp xỉ hàm sẽ
đƣợc trình bày rõ hơn trong Chƣơng 5 (Bài toán xấp xỉ hàm trong Khí tƣợng thủy
văn). Chƣơng này cũng giới thiệu phƣơng pháp nội suy k-lân cận gần nhất, đây là
phƣơng pháp nội suy đơn giản và hiện nay đƣợc nhiều ngƣời ƣa dùng.
Mặc dù các lý thuyết và phƣơng pháp về nội suy hàm một biến đƣợc nghiên
cứu khá đầy đủ nhƣng điều này vẫn còn rất hạn chế để áp dụng trong thực tế vì các
hàm hay gặp trong thực tế thƣờng là hàm nhiều biến.
1.2. Bài toán nội suy và xấp xỉ hàm nhiều biến
Giả sử D là một miền giới nội trong Rn
và f là một hàm liên tục xác định
trên D. Ngƣời ta chỉ mới xác định đƣợc tại N điểm x1
,x2
….xN
trong D: f(xi
) = yi
với
mọi i=1,2…,N và cần tính giá trị của f(x) tại các điểm x khác trong D.
1.2.1. Bài toán nội suy hàm nhiều biến
Để tính f(x), ta cần một hàm )
(x
xác định trên D có dạng đơn giản dễ tính
giá trị sao cho (xi
)=yi
tại mọi điểm xi
đã biết và xấp xỉ f(x) bởi (x). Khi đó các
điểm xi
đƣợc gọi là các mốc nội suy và hàm đƣợc gọi là hàm nội suy và đƣợc
chọn dƣới dạng đơn giản, dễ tính giá trị trong miền D.
1.2.2. Phƣơng pháp k-lân_cận_gần_nhất
Đây là phƣơng pháp nội suy đơn giản và hiện nay đƣợc nhiều ngƣời ƣa
dùng.
Chọn trƣớc số tự nhiên k, với mỗi D
x , ta xác định giá trị )
(x
qua giá trị
của f tại k mốc nội suy gần nó nhất.
10. Trang - 9 -
Ký hiệu z1,…,zk là k mốc nội suy gần x nhất và d(u,v) là khoảng cách của
hai điểm u,v bất kỳ trong D, khi đó )
(x
xác định nhƣ sau:
k
j
j
j z
f
x
1
)
(
)
(
Trong đó i
đƣợc xác định bởi:
k
j
j
i
i
z
x
d
z
x
d
1
1
1
)
,
(
)
,
(
Dễ thấy rằng khi x dần tới các mốc nội suy thì )
(x
xác định nhƣ trên dần
tới giá trị của f tại mốc nội suy tƣơng ứng. Tuy sai số của phƣơng pháp không đánh
giá chặt chẽ đƣợc nhƣng vẫn đƣợc ƣa dùng trong thực nghiệm.
Ta có thể nhận xét rằng phƣơng pháp k-lân_cận_gần_nhất có ƣu điểm là
cách tính toán đơn giản và dễ thực hiện, tuy nhiên trên thực tế việc xác định giá trị k
phù hợp là một vấn đề khó (phụ thuộc rất nhiều vào kinh nghiệm đánh giá bài toán
thực tế), đồng thời mỗi khi cần xác định giá trị của một điểm, phƣơng pháp này lại
tìm trong tất cả các giá trị đã biết để tìm đƣợc các mốc gần nhất, điều này đòi hỏi
chi phí tính toán nhiều.
Ta có thể xem xét một ví dụ:
Bài toán phân loại văn bản: Cho một số lớp văn bản đã đƣợc xác định
trƣớc chủ đề, nhiê ̣m vụcủa phân loa ̣i văn bản là : gán các văn bản vào một (hay một
số) lớp văn bản thích hợp dựa vào nội dung của văn bản.
Cách thực hiện: Khi cần phân loại một văn bản mới, phƣơng pháp này sẽ
tìm trong tập các văn bản đã xác định đƣợc chủ đề để tìm ra k văn bản gần nhất với
văn bản cần phân loại (k chính là chỉ số của thuật toán k-lân_cận_gần_nhất và văn
bản đƣợc đánh giá là gần nhất dựa trên tiêu chí nào đó, ví dụ mức độ tƣơng tự về
nội dung). Dùng khoảng cách giữa k điểm thu đƣợc để đánh trọng số cho chính chủ
đề của văn bản đó. Nhƣ vậy, trọng số của một chủ đề chính là tổng tất cả các
khoảng cách văn bản trong k-lân_cận_gần_nhất thu đƣợc ở trên và dễ thấy chủ đề
nào không xuất hiện trong k-lân_cận_gần_nhất sẽ có tổng trọng số bằng 0. Sau đó,
11. Trang - 10 -
các chủ đề sẽ đƣợc sắp theo mức độ trọng số giảm dần và các chủ đề có trọng số
cao sẽ đƣợc chọn là chủ đề của văn bản cần phân loại.
Cũng theo nhận xét ở phần trên, ta thấy trong ví dụ này, việc xác định chỉ
số k một cách hợp lý chỉ có thể dựa theo kinh nghiệm và rất khó để chứng minh k
đƣợc chọn là tối ƣu, hơn nữa nếu văn bản có “nhiễu” thì sẽ ảnh hƣởng lớn đến kết
quả phân loại.
1.2.3. Bài toán xấp xỉ hàm nhiều biến
Bài toán xấp xỉ hàm nhiều biến đƣợc xem là bài toán chung, tổng quát mà
trong đó cách tiếp cận nội suy là một trƣờng hợp đặc biệt. Trong bài toán nội suy
hàm nội suy phải có giá trị trùng với các giá trị tính đƣợc tại các mốc nội suy đã
biết. Khi số mốc nội suy lớn việc xác định hàm nội suy trở thành bài toán khó,
khi đó ta chấp nhận các giá trị gần đúng tại các mốc nội suy đã biết và chọn hàm có
dạng đơn giản sao cho sai số là tốt nhất.
Bài toán đƣợc nêu ra nhƣ sau:
Hàm )
(x
f
y đo đƣợc tại các điểm N
k
k
x 1
thuộc D giới nội trong n
R là
N
k
x
f
y k
k
..
1
);
(
với D
x
x
x k
n
k
k
)
,...,
( 1 và m
k
R
y .
Để xấp xỉ hàm )
(x
f ta cần tìm một hàm có dạng cho trƣớc sao cho sai số
tại các điểm đã biết là tốt nhất có thể đƣợc.
Hàm đƣợc chọn thƣờng là hàm dƣới dạng )
,...,
,
,
(
)
( 2
1 k
c
c
c
x
x
và thƣờng
đánh giá sai số tốt nhất theo cách xác định các tham số k
c
c
c ,...,
, 2
1 theo phƣơng pháp
trung bình bình phƣơng
N
i
i
i
y
x
1
2
)
(
nhỏ nhất.
Trong đó
m
j
i
j
i
j
i
i
y
x
y
x
1
2
)
)
(
(
)
(
Khi đó ta nói )
(x
là hàm xấp xỉ tốt nhất của )
(x
f theo cách tiếp cận trung
bình bình phƣơng nhỏ nhất. Về mặt hình học, đồ thị hàm )
(x
y
không đòi hỏi
phải đi qua các điểm mốc nhƣ trong phép nội suy.
Bài toán này trong nhiều trƣờng hợp sẽ rơi vào cực tiểu địa phƣơng. Để
tránh đƣợc hạn chế này ngƣời ta sẽ sử dụng phƣơng pháp lặp với các tham số đƣợc
12. Trang - 11 -
điều chỉnh (chọn lại) sau mỗi bƣớc lặp với hy vọng sẽ tìm đƣợc sai số trung bình
bình phƣơng nhỏ nhất toàn cục.
Trong nhiều trƣờng hợp khi số mốc nội suy lớn (N lớn), để giảm bớt chi phí
tính toán, thay vì tính toán với N
i ..
1
ngƣời ta có thể cho M
i ..
1
với M<N để
tính
M
i
i
i
z
f
z
1
2
)
(
)
(
nhỏ nhất, với tập M
k
k
z 1
là những điểm gần x nhất. Phƣơng
pháp này thƣờng đƣợc gọi là phƣơng pháp địa phƣơng và hàm )
,...,
,
,
( 2
1 k
c
c
c
x
đƣợc chọn theo dạng hàm tuyến tính.
13. Trang - 12 -
CHƢƠNG 2: GIỚI THIỆU MẠNG NƠRON
Chƣơng này giới thiệu tóm tắt về mạng nơron và các phƣơng pháp ứng
dụng của mạng nơron nhằm làm rõ hơn các đặc điểm thiết kế và cách huấn luyện
mạng nơron RBF.
2.1. Giới thiệu chung
Ngày nay không ai có thể phủ nhận vai trò cực kỳ quan trọng của máy tính
trong nghiên cứu khoa học kỹ thuật cũng nhƣ trong đời sống. Máy tính đã làm đƣợc
những điều kỳ diệu và giải đƣợc những vấn đề tƣởng chừng nan giải. Càng ngày
càng có nhiều ngƣời tự hỏi, liệu máy tính đã thông minh hơn con ngƣời hay chƣa?
Bí ẩn về cấu tạo cũng nhƣ hoạt động của bộ não con ngƣời luôn là đề tài để
các nhà khoa học nghiên cứu. Các nhà khoa học chỉ có thể phát hiện một cách gián
tiếp cách thức trí nhớ đƣợc tạo thành trong bộ não thông qua các thử nghiệm hành
vi.
Một máy tính, dù có mạnh đến đâu chăng nữa, đều phải làm việc theo một
chƣơng trình chính xác đã đƣợc hoạch định trƣớc bởi các chuyên gia. Bài toán càng
phức tạp thì việc lập trình càng công phu. Trong khi đó con ngƣời làm việc bằng
cách học tập và rèn luyện. Trong khi làm việc con ngƣời có khả năng liên tƣởng, kết
nối sự việc này với sự việc khác, và quan trọng hơn hết, họ có thể sáng tạo.
Do có khả năng liên tƣởng, con ngƣời có thể dễ dàng làm nhiều điều mà
việc lập trình cho máy tính đòi hỏi rất nhiều công sức. Chẳng hạn nhƣ việc nhận
dạng hay trò chơi ô chữ. Một em bé có thể tự học hỏi để nhận dạng và phân loại đồ
vật chung quanh mình, biết đƣợc cái gì là thức ăn, cái gì là đồ chơi. Một ngƣời bình
thƣờng cũng có thể đoán đƣợc vài chữ trong một ô chữ. Nhƣng thật khó mà dạy cho
máy tính làm đƣợc những việc ấy.
Từ lâu các nhà khoa học đã nhận thấy những ƣu điểm của bộ óc con ngƣời
và tìm cách mô phỏng, giả lập để thực hiện những máy tính có khả năng học tập,
nhận dạng và phân loại. Các mạng nơron nhân tạo ANN (Artificial Neural Network)
đã ra đời từ những nỗ lực đó. Mạng nơron là một lĩnh vực nghiên cứu rộng lớn và
chỉ mới phát triển mạnh khoảng 15 năm gần đây. Tuy còn xa mới đạt đƣợc sự hoàn
chỉnh nhƣ bộ óc con ngƣời nhƣng các mạng nơron nhân tạo đã đƣợc ứng dụng khá
rộng rãi và có nhiều kết quả khích lệ.
14. Trang - 13 -
Chúng ta sẽ tìm hiểu kỹ hơn về mạng nơron tự nhiên và mạng nơron nhân
tạo.
2.2. Mạng nơron tự nhiên
Công trình nghiên cứu đầu tiên để hiểu biết về hoạt động của mạng nơron
thuộc về Ramón Y Cacjál (1911). Ông ta cho rằng nơron hợp nên bộ não, hoạt động
của nó chậm hơn các thiết bị vật lý. Tuy nhiên nó tiêu tốn ít nhiên liệu hơn nhiều
trong khi kết nối khoảng 1010
và 6.1014
synapse (tiêu tốn 10-10
J/s hoạt động). So
với một máy tính tốt nhất (cần 10-6
J/s hoạt động).
Dƣới đây là cấu tạo của một nơron:
Hình 2.2.1 : Cấu tạo của một nơron tự nhiên
Các thành phần chính:
Soma là thân của nơron.
Các Dendrites là các dây mảnh, dài, gắn liền với Soma, chúng truyền
dữ liệu (dƣới dạng xung điện thế) đến cho soma xử lý. Bên trong Soma các
dữ liệu đó đƣợc tổng hợp lại. Có thể xem gần đúng sự tổng hợp ấy nhƣ là
một phép lấy tổng tất cả các dữ liệu mà nơron nhận đƣợc.
15. Trang - 14 -
Một loại dây dẫn tín hiệu khác cũng gắn với soma là các axon. Khác
với dendrites, axons có khả năng phát các xung điện thế, chúng là các dây
dẫn tín hiệu từ nơron đi các nơi khác. Chỉ khi nào điện thế trong soma vƣợt
quá một giá trị ngƣỡng nào đó (threshold) thì axon mới phát một xung điện
thế, còn nếu không thì nó ở trạng thái nghỉ.
Axon nối với các dendrites của các nơron khác thông qua những mối
nối đặc biệt gọi là synapse. Khi điện thế của synapse tăng lên do các xung
phát ra từ axon thì synapse sẽ nhả ra một số chất hoá học
(neurotransmitters); các chất này mở "cửa" trên dendrites để cho các ions
truyền qua. Chính dòng ions này làm thay đổi điện thế trên dendrites, tạo ra
các xung dữ liệu lan truyền tới các nơron khác.
Có thể tóm tắt hoạt động của một nơron nhƣ sau: nơron lấy tổng tất cả các
điện thế vào mà nó nhận đƣợc, và phát ra một xung điện thế nếu tổng ấy lớn hơn
một ngƣỡng nào đó. Các nơron nối với nhau ở các synapses. Synapse đƣợc gọi là
mạnh khi nó cho phép truyền dẫn dễ dàng tín hiệu qua các nơron khác. Ngƣợc lại,
một synapse yếu sẽ truyền dẫn tín hiệu rất khó khăn.
Các synapses đóng vai trò rất quan trọng trong sự học tập. Khi chúng ta học
tập thì hoạt động của các synapses đƣợc tăng cƣờng, tạo nên nhiều liên kết mạnh
giữa các nơron. Có thể nói rằng ngƣời nào học càng giỏi thì càng có nhiều synapses
và các synapses ấy càng mạnh mẽ, hay nói cách khác, thì liên kết giữa các nơron
càng nhiều, càng nhạy bén. Đây cũng là nguyên tắc chính để ứng dụng nó trong
việc học tập của các mạng nơron.
Mặc dù W. Mculloch và W.Pitts (1940) đề xuất mô hình nơron khá sớm
nhƣng định đề Heb (1949) mới là nền tảng lý luận cho mạng nơron.
Định đề Heb
Khi một tế bào A ở gần tế bào B, kích hoạt thƣờng xuyên hoặc lặp lại việc
làm cháy nó thì phát triển một quá trình sinh hoá ở các tế bào làm tăng tác động
này.
2.3. Mạng nơron nhân tạo (Artificial Neural Network)
16. Trang - 15 -
Mạng nơron nhân tạo là máy mô phỏng cách bộ não hoạt động thực hiện
các nhiệm vụ của nó. Một mạng nơron là bộ xử lý song song phân tán lớn nó giống
bộ não ngƣời về 2 mặt:
Tri thức đƣợc nắm bắt bởi nơron thông qua quá trình học
Độ lớn của trọng số kết nối nơron đóng vai trò khớp nối cất giữ thông
tin
2.3.1. Cấu tạo của một nơron
Mạng nơron nhân tạo đƣợc kết nối từ các đơn vị xử lý thông tin có kiến trúc
giống nhau gọi là các nơron.
Một nơron bao gồm các liên kết nhận tín hiệu vào bằng số có các trọng số
kết nối wi tƣơng ứng với tín hiệu xi, một hàm tổng và một hàm chuyển còn gọi là
hàm kích hoạt để tạo tín hiệu ra dựa trên giá trị hàm tổng và giá trị ngƣỡng .
Liên kết
Mỗi liên kết thứ i sẽ nhận giá trị vào xi tƣơng ứng và có trọng số kết nối wi
tƣơng ứng.
Trọng số kết nối
Các trọng số kết nối của mỗi đƣờng liên kết là yếu tố then chốt của nơron,
chúng sẽ đƣợc xác định tuỳ theo tập dữ liệu nhờ quá trình huấn luyện.
Hàm tổng
x2
y
xn
Hình 2.3.1 : Mô hình của một nơron
k
i
i
i x
w
s
1 )
(
s
2
||
||
x
s
x1
17. Trang - 16 -
Hàm tổng s tích hợp các trọng số kết nối với các tín hiệu vào trên các liên
kết tƣơng ứng, trƣờng hợp đơn giản nó có dạng : s=
k
i
i
i x
w
1
hoặc s=
2
w
x nhƣ là
thông tin tổng hợp từ tín hiệu vào và trọng số kết nối.
Hàm chuyển.
Hàm chuyển lấy giá trị s- và cho giá trị ra ( s- ). Hàm thƣờng có
các dạng sau:
1. Hàm ngƣỡng:
0
:
0
0
:
1
)
(
v
khi
v
khi
v
2. Hàm tuyến tính: (v)= av
4. Hàm tang
2
v
: v
v
e
e
v
1
1
)
(
18. Trang - 17 -
5. Hàm Gauss: v
e
v
)
(
2.3.2. Ví dụ cách một nơron học
Giả sử chúng ta muốn dạy nơron phân biệt chữ A và B. Khi đƣa input là A
chúng ta muốn nơron cho output là 1, còn khi input là B thì nơron phải cho output
bằng 0
Hình ảnh của hai chữ A và B có thể phân tích thành nhiều ô nhỏ nhƣ sau:
Hình 2.3.1. Biểu diễn các chữ trên ô lƣới
Ta thấy trong biểu diễn trên mỗi chữ gồm 5x10=50 ô, mỗi ô có thể có chứa
dấu x hay không chứa gì cả. Chúng ta có thể mã hóa một ô có chứa dấu x bằng số 1,
19. Trang - 18 -
và một ô trống bằng số 0. Nhƣ vậy mỗi chữ đƣợc mã hóa bằng một dãy 50 số 1 và
0. Nói cách khác, với mỗi chữ ta phải dùng 50 đƣờng truyền để đƣa 50 inputs là các
số 0, 1 vào nơron.
Bắt đầu bằng cách cho các trọng số những giá trị ngẫu nhiên, lúc này nơron
chƣa biết gì hết. Input chữ A. Nơron sẽ lấy tổng có trọng số của các inputs và so
sánh kết quả với 0. Nếu kết quả dƣơng thì output là 1, âm thì output là 0. Khả năng
nơron đoán đúng là 50%, vì các trọng số đang có giá trị hoàn toàn ngẫu nhiên. Nếu
nơron đoán đúng thì chúng ta không cần làm gì cả, nhƣng khi nơron đoán sai
(output bằng 0), thì chúng ta phải tăng các trọng số của các các inputs khác 0 lên,
sao cho lần tiếp theo tổng có trọng số sẽ vƣợt quá ngƣỡng và tạo nên output là 1.
Ngƣợc lại, khi đƣa chữ B vào và nơron đoán sai (output bằng 1), thì ta phải
giảm các trọng số của các input khác 0 xuống, sao cho lần tiếp theo tổng có trọng số
sẽ nhỏ hơn ngƣỡng và buộc nơron phải cho output bằng 0.
Nhƣ vậy, khi dạy chữ B thành công rồi thì nơron có quên đi chữ đã học
trƣớc đó là A không? Không, vì khi input là các chữ khác nhau thì nhóm các đƣờng
inputs đang hoạt động cũng khác nhau hoặc là không hoàn toàn trùng nhau. Nhớ là
chúng ta chỉ biến đổi trọng số của các inputs đang hoạt động. Chúng ta chỉ việc lập
đi lập lại quá trình dạy nhƣ trên cho tới khi nơron học thuộc bài mới thôi.
2.3.3. Cấu tạo của mạng nơron
Phần trên đã trình bày về kiến trúc của một nơron. Các nơron này sẽ kết nối
với nhau theo một quy tắc nào đó để tạo lên một mạng nơron (Mạng nơron thông
dụng nhất là mạng truyền tới). Mạng nơron thƣờng bao gồm một tầng vào gồm các
nút nhận tín hiệu bằng số, một hoặc nhiều tầng nơron ẩn và tầng nơron ra. Hình
2.3.2 mô tả một mạng nơron với 3 tầng kể cả tầng vào.
20. Trang - 19 -
Những nút hình tròn biểu diễn các nơron. Các vecto định hƣớng chỉ những
kết nối từ một nơron ở tầng định trƣớc tới những nơron khác nằm trong một tầng
khác. Mỗi một mạng nơron khác nhau sẽ có số lƣợng nơron khác nhau cũng nhƣ sự
kết nối giữa chúng là không giống nhau.
Các trọng số kết nối
Dùng cho liên kết các tầng nơron khác nhau và có vai trò quan trọng trong
hoạt động của một mạng nơron và nó cũng là sự mô tả đặc tính riêng của mỗi mạng.
Dƣới đây là hoạt động xác định trọng số kết nối có thể đƣợc thực hiện trong một
mạng nơron:
Bắt đầu với một tập các trọng số kết nối cho trƣớc và thực hiện quá
trình hoạt động của mạng.
Bắt đầu với một tập các trọng số kết nối, chạy mạng và thay đổi một
vài hay tất cả các trọng số kết nối, chạy lại mạng với tập các trọng số kết
nối mới. Lặp lại quá trình này cho tới khi đạt đƣợc một mục đích định
trƣớc.
Huấn luyện mạng
Là quá trình học để xác định các trọng số kết nối giữa các nơron đây là một
trong những công việc quan trọng nhất trong các hoạt động của mạng nơron.
Nhiễu
Tầng vào Tầng ẩn Tầng ra
Hình 2.3.2: Một mô hình của mạng nơron
21. Trang - 20 -
Nhiễu là những dữ liệu xuất hiện không mong muốn làm đảo lộn hoặc làm
chệch hƣớng các hoạt động thực tế. Một tập dữ liệu dùng để huấn luyện mạng
nơron có thể chứa đựng nhiễu trong đó, cũng nhƣ một hình ảnh có thể có những vết
đốm. Nếu ta dùng tập dữ liệu chứa nhiễu để huấn luyện mạng nơron thì kết quả thu
đƣợc sẽ rất sai khác với mạng mà chúng ta mong muốn.
Xây dựng mạng nơron
Dƣới đây là ba bƣớc để xây dựng mạng
Xây dựng kiến trúc mạng
Huấn luyện mạng
Kiểm tra mạng
Xây dựng kiến trúc mạng: Xem xét có bao nhiêu tầng mà mạng chứa đựng,
và chức năng của chúng là gì. Kiến trúc cũng cho biết có bao nhiêu kết nối đƣợc tạo
ra giữa các nơron trong mạng, và chức năng của những kết nối này để làm gì.
Huấn luyện mạng: Tại bƣớc này các trọng số kết nối giữa các nơron sẽ liên
tục thay đổi. Các trọng số sẽ liên tục thay đổi giá trị trong quá trình huấn luyện
mạng và chúng sẽ có giá trị cố định khi quá trình huấn luyện thành công.
Kiểm tra hoạt động của mạng: Đây là bƣớc cuối cùng nhƣng cũng rất quan
trọng trong quá trình xây dựng một mạng nơron. Ngƣời ta sẽ đƣa vào tập các dữ
liệu thử và chờ đợi kết quả ở đầu ra. Mạng nơron đƣợc xác định là tốt nếu nhƣ kết
quả dữ liệu ở đầu ra đúng nhƣ những gì mà ngƣời thiết kế mong đợi.
2.3.4. Quá trình học của mạng nơron
Trong số nhiều đặc tính của mạng nơron đặc tính quan trọng nhất là tự cải
tiến làm việc của nó thông qua việc học. Việc cải tiến này theo thời gian phù hợp
với một độ đo đƣợc quy định trƣớc. Mạng nơron học nhờ điều chỉnh trọng số kết
nối wi và ngƣỡng . Một cách lý tƣởng mạng có tri thức tốt hơn sau mỗi lần lặp của
quá trình học.
Có nhiều định nghĩa về sự học, ở đây ta theo định nghĩa của Mendel và Mc
Cloren (1970) : “Học là quá trình qua đó các tham số tự do của một mạng nơron
đƣợc sửa đổi thích ứng qua một quá trình tích luỹ kinh nghiệm liên tục trong một
môi trƣờng mà mạng bị tác động”.
22. Trang - 21 -
Định nghĩa thể hiện 3 đặc điểm:
Mạng nơron đƣợc kích thích bởi môi trƣờng.
Mạng nơron thay đổi nhờ tác động của các kích thích này.
Mạng nơron thay đổi theo cách mới bởi vì có thay đổi nội tại trong
cấu trúc của nó.
2.4. Luật học của mạng Nơron
2.4.1. Khái niệm luật học của mạng nơron.
Luâ ̣t học là một thủ tục sƣ̉ a đổi trọng số và khuynh hƣớng của mạng để cho
mạng có thể đảm nhận đƣợc một nhiệm vụ nào đó . Luật học có thể xem là thuật
toán đào tạo mạng.
Luật học của ANN có thể phân làm 3 loại: học có giám sát, không giám sát
và học tăng cƣờng.
2.4.2. Học có giám sát
Trong học có giám sát, ngƣời ta dựa vào một tập mẫu đào tạo:
1
1,t
p ,
2
2 ,t
p , ...,
q
q t
p , , trong đó pq là vector tín hiê ̣u vào tq là đầu ra đích tƣơng ứng để
huấn luyện mạng. Các luật học có giám sát sẽ so sánh tín hiệu ra của mạng với tín
hiệu đích của tín hiệu vào tƣơng ứng để hiệu chỉnh trọng số kết nối và các giá trị
ngƣỡng sao cho tín hiệu ra ngày càng gần với tín hiệu đích. Luật học Perceptron
thuộc loại này (sẽ đƣợc giới thiệu ở phần tiếp theo).
2.4.3. Học không giám sát.
Trong học không giám sát các trọng số và khuynh hƣớng đƣợc sửa đổi dựa
vào tín hiệu vào (lấy trong tập dữ liệu đào tạo ) mà không biết giá trị đích . Hầu hết
các thuật toán loại này là thuật toán phân cụm . Trong đó ta phân tập dữ liệu D thành
k cụm con sao cho mỗi phần tử trong cùng một cụm thì giống nhau hơn là các phần
tử khác cụm. Cách phân cụm có thể là rõ hoặc mờ, số cụm có thể biết trƣớc hoặc
không.
2.4.4. Học tăng cƣờng
Học tằng cƣờng gần giống với học có giám sát ở chỗ có thể đánh giá chất
lƣợng mạng (cho điểm) khi biết tín hiệu vào và ra của nó. Do vậy khi đƣa các tín
23. Trang - 22 -
hiệu vào và quan sát tín hiệu ra ta có thể đièu chỉnh để chất lƣợng mạng tốt dần lên.
Tuy vậy ta không biết trƣớc giá trị đich của mỗi mẫu tƣơng ứng.
2.5. Luật học Perceptron
2.5.1. Mô hình tổng quát.
Perceptron là loại mạng một tầng, dùng để phân lớp mẫu. Kiến trúc của
chúng đƣợc mô tả trong dƣới.
Trong đó hàm chuyển có thể là hàm hardlims hoặc hardlim ,
SR
S
R
w
w
w
w
W
...
...
...
...
...
1
1
11
là ma trận trọng số kết nối và b là vec tơ ngƣỡng . Ta ký hiệu
kí hiệu wi là vector hàng i của ma trận W viết thành cột ta có
iR
i
i
w
w
w ...
1
. Khi đó Ma
trận W có thể viết dƣới dạng :
T
S
T
T
w
w
w
W
...
2
1
Ta có ai=hardlim(ni)=hardlim(iwTp + bi)=
0
0
0
1
i
T
i
i
T
i
b
p
w
b
p
w
Perceptron đơn
R
W
R x 1
1
S x R
S x 1
n a
S x 1
Hình 2.5.1. Kiến trúc của Perceptron
S x 1
b
24. Trang - 23 -
Khi chỉ có 1 nơron, perceptron dùng để nhận dạng 1 mẫu hay phân hai lớp.
Nếu đầu ra có giá trị 1 thì tín hiệu vào tƣơng ứng thuộc lớp mẫu đƣợc xét còn tín
hiệu ra có giá trị 0 thì không thuộc lớp này. Chẳng hạn khi R=2 perceptron có dạng
nhƣ ở dƣới
Ta có a=hardlim(Wp+b) )=hardlim(1
wTp + b)=hardlim(w1,1p1+w1,2p2+b).
Biên quyết định: Biên quyết định là tập có n=0 , trong ví dụ này là các
diểm pR2
nằm trên đƣờng thẳng trực giao với 1
wT.
Perceptron nhiều nơron.
Khi S>1 ta có perceptron nhiều nơron. Khi đó biên quyết định của nơron
thứ i xác định bởi phƣơng trình: iwTp + bi=0. Perceptron có S nơron có thể phân
lớp đƣợc 2S
lớp .
2.5.2. Luâ ̣t ho ̣c Perceptron
Cho tâ ̣p mẫu {p1
, t1
}, {p2
,t2
},....,{pQ
,tQ
} trong đó pq
là vectơ vào và tq
là đầu
ra mong muốn tƣơng ứng. Ban đầu các trọng số và khuynh hƣớng đƣợc khởi tạo với
giá trị tuỳ ý. Sau đó thực hiện lặp: mỗi tín hiệu vào pq
trong tập:
q
Q
q
P 1
đƣợc áp
dụng cho mạng và so sánh tín hiệu ra aq với tín hiệu đích tq để điều chỉnh các trọng
số và khuynh hƣớng của mạng để mạng dần dần phân lớp đúng, cụ thể nhƣ sau:
Đối với perceptron đơn
Với mỗi tín hiệu vào p đă ̣t e=t-a .
Thƣ̣c hiê ̣n lă ̣p:
Với q=1...Q, pa(pq)
n a
Hình 2.5.2. Perceptron đơn với R=2
p1
p2
b
25. Trang - 24 -
Nếu eq=1 thì 1wnew = 1wold+p ; bnew=bold+1.
Nếu eq=-1 thì 1wnew = 1wold-p ; bnew=bold-1.
Nếu eq=0 thì 1wnew = 1wold ; bnew=bold.
Công thức tổng quát là: wnew = wold+ep bnew=bold+e
Đối với perceptron nhiều nơron.
Quy tắc huấn luyện cho perceptron đƣợc tổng quát nhƣ sau.
Đặt e= t-a.
Thực hiện lặp.
Với mỗi tín hiệu vào p trong tập mẫu tính đầu ra a tƣơng ứng và hiệu
chỉnh :
Wnew = Wold+ep ;
bnew=bold+e.
Thuật toán học perceptron đƣợc đặc tả trong phần dƣới.
Procedure học perceptron
Begin
Khởi tạo W, b;
Repeat
For q=1 to Q do
p←pq;
Tính e = t-a;
For i=1 to R do
iW ←iW + eip;
End;
End;
Until e=0 với mọi pq,
26. Trang - 25 -
End
2.5.3. Đặc tính hội tụ.
Mặc dù luật học đã nêu rất đơn giản nhƣng khá mạnh. Trƣớc khi phát biểu
và chứng minh định lý về tính hội tụ của thuật toán huấn luyện mạng, ta cần định
nghĩa về tính tách đƣợc tuyến tính chặt của tập mẫu.
Định nghĩa: Tập dữ liệu D trong Rn
gồm hai lớp C1 và C2 đƣợc gọi là tách
đƣợc tuyến tính chặt nếu tồn tại vectơ W* và khuynh hƣớng b* thoả mãn biểu thức.
2
T
1
T
C
q
:
b*
+
p
W
C
q
:
>
b*
+
p
W
*
*
Định lý: Luật học Perceptron dừng sau một số hữu hạn bƣớc nếu tập mẫu
tách đƣợc tuyến tính chặt.
Chứng minh: Ta chứng minh cho trƣờng hợp perceptron đơn với tập mẫu
gồm 2 lớp {p1
, t1
}, {p2
,t2
},....,{pQ
,tQ
}
Kí hiệu: x=
b
i
W
¦
; zq=
i
pq
nhƣ vâ ̣y: n=iwTp+b=xTz
Theo quy tắc học : x(k+1)=x(k)+z’(k) trong đó z’ (k)={z1,z2,...,zQ,-z1,-
z2,...,-zQ}
Theo giả thiết, tồn tại các trọng số và khuynh hƣớng 1W*, b* tách tập dữ
liệu thành hai lớp:
2
T
1
1
T
C
q
:
b*
+
p
W
1
C
q
:
>
b*
+
p
W
*
*
(2.5.1)
trong đó C1 là tập mà tq=1 và C2 là tập có tq=0.
(2.5.1) x* sao cho:
C2
q
:
z
*
x
C1
q
:
>
z
*
x
q
T
q
T
x*=
*
*
1
b
W
sao cho:
0
z
:
z
*
x
1
z
:
>
z
*
x
T
T
t
t
(2.5.2)
Chọn x(0)=0 Khi đó x(k)=z’(0)+z’(1)+....+z’(k-1)
27. Trang - 26 -
Tính *
x
T
x(k)= *
x
T
z’(k-1)+ ...+ *
x
T
z’(1)+ *
x
T
z’(0) k
vì *
x
T
z’(i) với q
Mă ̣t khác ( *
x
T
x(k))2 ||x*||2||x(k)||2 (Bất đẳng thƣ́ c Cauchy- Schwatz)
Nên ||x*||2||x(k)||2 k2 2 suy ra: ||x(k)||2 2
2
2
||
x*
||
k
(2.5.3)
Mă ̣t khác ta có:
||x(k)||2= (x(k-1)+z’(k-1))2=||x(k-1)||2+||z’(k-1)||2+2x(k-1) z’(k-1).
Do 2x(k-1) z’(k-1) 0 nên ||x(k)||2 ||x(k-1)||2+||z’(k-1)||2.
Bằng cách quy na ̣p ta có :
||x(k)||2
k
i
i
z
1
2
||
)
(
|| k trong đó =max ||zq||2
Kết hợp với (2.5.2) ta có k ||x(k)||2 2
2
2
||
x*
||
k
, suy ra: 2
2
||
x*
||
k nên
thuật toán học của mạng dừng sau hữu hạn bƣớc (Định lý đƣợc chứng minh).
2.5.4. Nhận xét về thuật toán
Thuật toán đơn giản và dễ sử dụng . Tuy vậy nó chỉ dùng đƣợc khi tồn ta ̣i
biên quyết đi ̣
nh tuyến tính, trong trƣờng hợp khác thuật toán không hội tụ.
Khi có k lớp, ta có thể xây dựng mạng với S nơron sao cho 2S
≥k để phân
các lớp này.
2.6. Mạng ADALINE
Phần này trình bày áp dụng phƣơng pháp học thực hiện cho mạng nơron
tuyến tính một tầng. Học Widrow-Hoff (1960) là một thể hiện của phƣơng pháp
gradient để cực tiểu hóa tổng bình phƣơng sai số. Thuật toán này quan trọng vì hai
lý do: thứ nhất, hiện nay nó đang đƣợc ứng dụng rộng rãi để xử lý tín hiệu số; thứ
hai, nó gợi mở mạng truyền tới nhiều tầng.
Bài toán đặt ra ở đây nhƣ sau: Dựa trên tập mẫu {pq,tq}q=1,...,Q , trong đó
pq là vectơ tín hiệu vào và tq là tín hiệu ra mong muốn tƣơng ứng ta xây dựng mạng
28. Trang - 27 -
nơron sao cho khi tín hiệu vào là các tín hiệu mẫu pq thì tín hiệu ra là gần với tq
nhất.
2.6.1. Kiến trú c tổng quát
Mạng ADALINE có cấu trúc tƣơng tự Perceptron chỉ khác ở hàm chuyển
tuyến tính (purelin). Mạng ADALINE tổng quát đƣợc trình bày trong dƣới.
Tín hiệu ra thứ i của mạng là:
ai = purelin(ni)= purelin(iWT
p+bi)= iWT
p+bi . (2.6.1)
Trong đó iw là hàng thứ i của ma trận W viết thành vectơ cột:
R
i
i
i
i
w
w
w
w
,
2
,
1
,
...
. (2.6.2)
Tín hiệu ra có biểu diễn tổng quát là:
a=purelin(Wp+b)= Wp+b. (2.6.3)
2.6.2. ADALINE đơn.
Để dễ hình dung, ta xét một ADALINE đơn với hai đầu vào nhƣ trong hình
dƣới.
Hình 2.6.1. Mạng ADALINE
P
R
W
R x 1
1
S x R
S x 1
n a
S x 1
S x 1
b
29. Trang - 28 -
Đầu ra của mạng là:
a = purelin(1wT
p+b) = 1wT
p+b=a= w1,1p1+w1,2p2+b (2.6.4)
Trong đó: 1w=
2
,
1
1
,
1
w
w
Khi dùng để nhận dạng mẫu thì biên quyết đi ̣
nh cho ma ̣ng này là đƣờng
thẳng biểu diễn các điểm a= w1,1p1+w1,2p2+b=0 nhƣ trong hình dƣới.
2.6.3. Sai số trung bình bình phƣơng
Giả sử có tập mẫu
i
i
Q
i
t
, 1
p
trong đó pi là mẫu tín hiệu vào và ti là tín hiệu
ra mong muốn tƣơng ứng với nó. Dƣới đây ta xét tín hiệu ra một chiều.
Kí hiệu: x=
n
w
1
và z=
1
p
ta có a=1wTp+b=xTz
n a
Hình 2.6.2. Nơron tuyến tính 2 đầu vào
p1
p2
b
-b/w1,2
-b/w1,1
Hình 2.6.3. Biên quyết định của ADALINE đơn 2 đầu vào
p1
1wT
p+b=0
a>0
a<0 p2
30. Trang - 29 -
Nếu tập mẫu đƣợc xem nhƣ là thể hiện của vectơ ngẫu nhiên thì. Sai số
trung bình bình phƣơng của mạng là:
F(x)=E(e2)=E(t-a)2=E(t- xTz)
2
(2.6.5)
Trong đó E(.) là ký hiệu kỳ vọng của biến ngẫu nhiên tƣơng ứng. F(x) có
thể xấp xỉ bằng trung bình mẫu:
Fj(x)= 2
1
)
(
1
Q
i
i
i a
t
n
. (2.6.6)
Công thức (5) có thể khai triển nhƣ sau:
E(t-a)2=E(t2-2txTz+xTzzTx) = E(t2)+2xTE(tz)+ xTE(zzT)x (2.6.7)
Đặt c =E(t2); h=E(tz) là tƣơng quan giữa vectơ vào và vectơ đích, và
R=E(zzT) là tƣơng quan của vectơ vào z ta có:
F(x)=c-2xTh+xTRx (2.6.8)
F có dạng bậc 2: F(x)= c+dTx+xTAx , (2.6.9)
trong đó: d= -2h và A=2R .
Trong trƣờng hợp này, Hessian của F là 2R. Vì ma trận tƣơng quan luôn là
xác định dƣơng hoặc nửa xác định dƣơng. Nếu R xác định dƣơng thì F có duy nhất
điểm cực tiểu toàn cục. Nếu R có giá trị riêng bằng không thì F có cực tiểu yếu hoặc
không tuỳ thuộc vào vectơ d=-2h. Ta có gradient của F là:
F(x)= ( c+dTx+xTAx)= d+Ax=-2h+2Rx. (2.6.10)
Điểm dừng của F là điểm mà gradient triệt tiêu : -2h+2Rx =0 (2.6.11)
Nếu R xác định dƣơng thì F có duy nhất cực tiểu mạnh :
x*
=R-1h. (2.6.12)
2.6.4. Thuâ ̣t toán Trung bình bình phƣơng nhỏ nhất (Least Mean
Square)
Điểm tìm cực tiểu của F có thể xác định trực tiếp nhờ tính h và R-1
để tính
x*
theo công thức (2.6.12). Tuy nhiên để tránh phải tìm R-1
ta có thể dùng thuật toán
gradient để tìm x*
. Widrow và Hoff đã chỉ ra rằng nếu các mẫu lấy ngẫu nhiên thì ở
bƣớc thứ k ta có thể ƣớc lƣợng sai số trung bình phƣơng F(x) bởi sai số ở bƣớc này:
31. Trang - 30 -
F
(x)=(t(k)-a(k))2=e2(k). (2.6.13)
Nên tại mối bƣớc lặp gradient của F đƣợc ƣớc lƣợng bởi công thức:
F
(X)= e2(k). (2.6.14)
Trong đó R phần tử đầu của e2(k) là đạo hàm theo các trọng số mạng còn
phần tử thứ (R+1) là đạo hàm theo khuynh hƣớng. Ta có:
F
(x)j=
j
w
k
e
,
1
2
)
(
=2e(k)
j
w
k
e
,
1
)
(
với k=1...R (2.6.15)
Và F
(x)R+1=
b
k
e
)
(
2
=2e(k)
b
k
e
)
(
. (2.6.16)
Ta sẽ xét các công thức (2.6.15) và (2.6.16). Trƣớc hết ta đánh giá đạo hàm
riêng của e(K) theo trọng số w1,j.
Bởi vì: e(k)=t(k)-a(k) = t(k)- 1wT
p(k)+b = t(k)-
R
i
i
j b
k
p
w
1
,
1 )
(
Nên
j
w
k
e
,
1
)
(
= -pj(k). (2.6.17)
Tƣơng tự ta có thành phần cuối cùng của gradient là :
b
k
e
)
(
= -1. (2.6.18)
Chú ý rằng pj(k) và 1 là thành phần của vectơ vào z nêu gradien của bình
phƣơng sai số có thể viết dƣới dạng:
F
(x) = e2(k)= -2e(k)z(k) (2.6.19)
Với các xấp xỉ trên thì quy tắc học theo phƣơng pháp gradient là:
xk+1 = xk+α F(x(k)).
Do (2.6.19) xk+1 = xk -+2αe(k)z(k)., (2.6.20)
hay là: 1w(k+1)= 1w(k)+2αe(k)p(k) (2.6.21)
và b(k+1)=b(k)+ 2αe(k) (2.6.22)
32. Trang - 31 -
Hai công thức trên là thuật toán trung bình bình phƣơng nhỏ nhất hay luật
học đenta của Widrow-Hoff.
Nếu có S Nơron và ma trận trọng số là W=(wi,j) thì công thức lặp là:
iw(k+1)= iw(k)+2αei(k)p(k) (2.6.23)
và bi(k+1)=bi(k)+ 2αei(k) (2.6.24)
Hay tổng quát là: W(k+1)= W(k)+2αe(k)pT
(k) (2.6.25)
và b(k+1)=b(k)+ 2αe(k), (2.6.26)
trong đó e là vectơ sai số và b là vectơ khuynh hƣớng.
2.6.5. Sƣ̣hô ̣i tụ
Trong chƣơng trƣớc ta đã chỉ ra rằng đối với các dạng bậc hai thuâ ̣t toán
gradient ổn định nếu tốc độhọc α nhỏ hơn 2/λmax trong đó λmax là giá trị riêng lớn
nhất của Hesian. Ở đây ta thay gần đúng F(x) bởi F
(x) và x(k) chỉ là hàm của z(k-
1),..., z(0). Nếu giả thiếu các vectơ mẫu vào là độc lập thống kê thì x(k) và có x(k)
cho bởi (2.6.20) hội tụ tới
x*
=R-1h khi 0< α < 1/λmax
2.6.6. Nhận xét.
ADALINE giống nhƣ Perceptron, chỉ nhận dạng đƣợc khi các tập
mẫu tách đƣợc tuyến tính
ADALINE mạnh hơn Perceptron ở chỗ nó luôn hội tụ và ổn định hơn
vì vậy nó đƣợc dùng rộng rãi hơn Perceptron.
2.7. Mạng Perceptron nhiều tầng MLP (Multi-Layer Perceptrons)
Phần này giới thiệu mạng nơron Perceptrons nhiều tầng hay còn gọi là
mạng nhiều tầng truyền tới (Feed-forward nơron network), đây là kiểu mạng dễ
dùng và thông dụng nhất hiện nay.
2.7.1. Kiến trúc mạng
Mạng nơron truyền tới nhiều tầng bao gồm các nút nhận tín hiệu vào bằng
số, một hoặc nhiều tầng nơron ẩn và tầng nơron ra trong đó tín hiệu tầng trƣớc đƣợc
đƣa tới tầng sau. Hình 2.7.1 mô tả mạng nơron 2 tầng nơron với 6 nút vào, 3 nơron
33. Trang - 32 -
tầng ẩn và 2 nơron tầng ra (ngƣời ta có thể gọi mạng nhƣ vậy là mạng 3 tầng kể cả
tầng vào).
Tầng vào
Nếu hàm đang xét có n biến thì có n+1 nút trong đó nút đầu ứng với giá trị
x0= -1và trọng số là ngƣỡng , mỗi nút còn lại ứng với một biến của đối.
Tầng ra
Mỗi một nơron ở tầng ra sẽ ứng với 1 hàm. Nếu hàm cần xét xấp xỉ có giá
trị là véc tơ M chiều thì có M nơron ở tầng ra.
Tầng ẩn
Số tầng ẩn và lƣợng nơron của mỗi tầng tuỳ thuộc vào mục đích thiết kế.
2.7.2. Huấn luyện mạng bằng thuật toán lan truyền ngƣợc (Back-
Propagation).
Huấn luyện mạng nơron là xác định các trọng số kết nối cho các liên kết
của mỗi nơron. Quá trình xác định các trọng số này gọi là quá trình huấn luyện.
Dƣới đây đề tài giới thiệu phƣơng pháp truyền ngƣợc sai số để xác định các trọng
số kết nối. Phƣơng pháp này chính là thuật toán Gradient cực tiểu hoá sai số bình
phƣơng trung bình (Least-Mean Square).
Tầng vào Tầng ẩn Tầng ra
Hình 2.7.1. Kiến trúc của mạng nơron truyền tới
34. Trang - 33 -
Ta xét một mạng 2 tầng nhƣ hình 2.7.2. Mạng này có các tín hiệu vào vô
hƣớng {x0,x1...,xn} trong đó x0 = -1. Tầng số có j nơron với tín hiệu ra của chúng là
{x0,x1...,xn} và tín hiệu z0 = -1 chuyển đến các nơron tầng ra. Tầng ra có m nơron
với đầu ra tƣơng ứng là {y1,...,ym}. Mạng này dùng để xấp xỉ hàm có giá trị véc tơ
M chiều y= (y1,...,ym) của n biến.
Giả sử ta có các giá trị của y tại các điểm x thuộc tập X với y(xk
)=dk
xk
X. Ta chia ngẫu nhiên tập X thành 2 tập: tập đào tạo Xh và tập trắc nghiệm Xt.
Thƣờng tập đào tạo có số lƣợng gấp đôi tập chác nghiệm. Quá trình huấn luyện có
thể thực hiện theo mớ hoặc theo từng dữ liệu, để đơn giản ta xét thuật toán huấn
luyện theo từng dữ liệu.
Ta xét nơron m của tầng ra có trọng số liên kết hiện thời với nơron j của
tầng ẩn là c
m
j
w , và đầu ra ym, nơron j của tầng ẩn có trọng số kết nối hiện thời với
nút vào i là c
j
i
w , . Ký hiệu 0 là hàm chuyển của nơron tầng ra và h là hàm chuyển
của nơron tầng ẩn, ta có các quy tắc học cho tầng ra và tầng ẩn nhƣ sau.
Quy tắc học của tầng ra
Cho dữ liệu (xk
, dk
), ký hiệu yk
là đầu ra của mạng tƣơng ứng với xk
ta hiệu
chỉnh các trọng số kết nối để cực tiểu hoá tổng bình phƣơng sai số của mạng:
E(w)=
L
i
k
i
k
i d
y
i
1
2
)
(
2
(2.7.1)
Hình 2.7.2. Huấn luyện mạng lan truyền ngƣợc
.
.
.
.
k
m
d
x0 = -1
x1
xi
xn
1
j
z0 = -1
m
ym
wj,m
wi,j
y1
35. Trang - 34 -
Ký hiệu new
m
j
w , là trọng số kết nối mới, là số dƣơng bé:
new
m
j
w , = c
m
j
w , + m
j
w ,
, m=1,..,L (2.7.2)
Với:
m
j
w ,
=- j
m
k
m
k
m
m
j
z
s
y
d
w
E
)
(
)
( '
0
,
(2.7.3)
Trong đó
J
i
i
m
i
m z
w
s
0
, và zj đƣợc tính bởi:
)
(
)
(
0
, j
h
n
i
j
j
i
h
j s
x
w
z
(2.7.4)
Quy tắc học của tầng ẩn
Ký hiệu new
j
i
w , là trọng số kết nối mới của nơron j với nút vào y ta có:
new
j
i
w , = c
j
i
w , + j
i
w ,
j=1,...,J (2.7.5)
Trong đó :
j
i
w ,
=
m
j
w
E
,
(2.7.6)
Ta có:
j
i
j
j
j
j
j
i w
s
s
z
z
E
w
E
,
,
(2.7.7)
với:
i
j
i
j
x
w
s
,
và )
(
'
j
h
j
j
s
s
z
(2.7.8)
và:
L
m j
m
m
k
m
L
m
m
k
m
j
j z
s
s
d
s
d
z
z
E
1
0
0
1
2
0
)
(
)
(
[
)]
(
[
2
1
L
m
m
j
m
m
k
m w
s
y
d
1
,
'
0 )
(
)
( (2.7.9)
Thay (2.7.8) và (2.7.9) vào (2.7.7) ta có:
36. Trang - 35 -
L
m
j
j
h
m
j
m
m
k
m
j
i x
s
w
s
y
d
w
1
'
,
'
0
, )
(
]
)
(
)
(
[
(2.7.10)
Thủ tục học lan truyền ngƣợc
Thủ tục học sẽ bắt đầu từ tầng ra đến tầng ẩn nhƣ sau :
Bƣớc 1: Tạo các trọng số kết nối wc
ban đầu cho mọi nơron và chọn
giá trị cho tốc độ học (có thể thay đổi theo mỗi phép lặp).
Bƣớc 2: Lấy một mẫu xk
từ tập đào tạo (có thể lấy ngẫu nhiên) và
chuyển qua mạng để đƣợc yk
.
Bƣớc 3: Kết hợp yk
với dk
để cập nhật trọng số tầng ra mới theo
(2.7.2) đến (2.7.4).
Bƣớc 4: Cập nhật trọng số tầng ẩn theo (2.7.5) và (2.7.10).
Bƣớc 5: Kiểm tra điều kiện dừng, nếu chƣa thoả mãn thì trở lại bước
2, nếu tốt thì sang bước 6 để thử kiểm tra.
Bƣớc 6: Kiểm tra dữ liệu thử nếu đạt yêu cầu thì huấn luyện xong nếu
chƣa thỉ trở lại bƣớc 1.
Quá trình huấn luyện mạng có thể rơi vào cực trị địa phƣơng nên có thể
dùng thuật toán di truyền để tìm trọng số ban đầu. Ngƣời ta cũng có thể huấn luyện
theo mớ khi đó hàm E cho bởi:
E(w)=
T
k
L
m
k
m
k
m d
y
1 1
2
)
(
Trong đó các mẫu huấn luyện đánh số từ 1 đến T và yk
là đầu ra tƣơng ứng
của mạng với đầu vào xk
.
Nhận xét:
Thuật toán lan truyền ngƣợc huấn luyện mạng truyền tới có tốc độ hội tụ
chậm.
37. Trang - 36 -
CHƢƠNG 3: MẠNG NƠRON NỘI SUY RBF (RADIAL
BASIC FUNCTION)
Mạng nơron RBF là mạng truyền tới 3 tầng (2 tầng nơron), hiện là một
công cụ hữu hiệu để nội suy và xấp xỉ hàm nhiều biến và đƣợc ứng dụng rộng rãi.
Mặc dù thời gian huấn luyện của chúng rất ngắn so với mạng MLP nhƣng các thuật
toán hiện thời vẫn xác định trọng số tầng ra bằng các phƣơng pháp sai số trung bình
bình phƣơng nhỏ nhất hoặc giải trực tiếp hệ phƣơng trình tuyến tính. Khi số mốc
nội suy lớn thì các phƣơng pháp này chậm và sai số lớn. Chƣơng này xin đƣợc trình
bày một “Thuật toán 2 pha để huấn luyện mạng nội suy RBF với hàm cơ sở
bán kính dạng Gauss” (Thuật toán này đƣợc đề xuất bởi Tiến sĩ Hoàng Xuân
Huấn và Thạc sĩ Đặng Thị Thu Hiền [2]).
3.1. Giới thiệu
Phƣơng pháp nội suy RBF (Radial Basis Function) do Powell đề xuất [7] và
đƣợc Broomhead và Low giới thiệu nhƣ là mạng nơron [7], đến nay RBF là một
công cụ hữu hiệu để nội suy và xấp xỉ hàm nhiều biến và đang đƣợc ứng dụng rộng
rãi. Phƣơng pháp này tìm hàm nội suy dƣới dạng:
0
1
)
,
(
)
( w
v
x
h
w
x
M
k
k
k
k
sao cho N
k
y
x k
k
,...,
1
;
)
(
, trong đó:
N
k
k
x 1
là tập vectơ trong không gian n-chiều (đƣợc gọi là các mốc nội suy) và
)
( k
k
x
f
y là giá trị đo đƣợc của hàm f cần nội suy; hàm thực )
,
( k
k
v
x
h
đƣợc
gọi là hàm cơ sở bán kính với tâm vk
và )
( N
M là số hàm bán kính sử dụng để xấp
xỉ hàm f ; wk và k
là các giá trị tham số cần tìm.
Tính xấp xỉ tổng quát và xấp xỉ tốt nhất của các hàm cơ sở bán kính điển
hình đã đƣợc khảo sát trong [18, 15, 16]. Trong đó dạng hàm bán kính thông dụng
nhất là hàm Gauss:
2
2
/
)
,
(
u
e
u
h
và tâm là các mốc nội suy (khi đó M=N và
k
v = k
x k
). Hàm nội suy này có ƣu điểm là tổng các bình phƣơng sai số của nó
không có cực tiểu địa phƣơng nên đến nay các thuật toán huấn luyện mạng thƣờng
theo hƣớng tìm cực tiểu sai số tổng các bình phƣơng hoặc giải trực tiếp hệ phƣơng
trình nội suy [11].
38. Trang - 37 -
3.2. Mạng nội suy RBF và các vấn đề liên quan
3.2.1. Bài toán nội suy nhiều biến với cách tiếp cận RBF
Bài toán nội suy nhiều biến.
Bài toán nội suy nhiều biến đƣợc giới thiệu chi tiết trong Chƣơng 1, sau đây
xin phát biểu tóm tắt bài toán nhƣ sau:
Xét hàm nhiều biến m
n
R
R
D
f
)
(
: cho bởi tập mẫu N
k
k
k
y
x 1
,
)
;
( m
k
n
k
R
y
R
x
sao cho N
k
y
x
f k
k
,...,
1
;
. Ta cần tìm hàm có dạng đã biết
thỏa mãn:
N
i
y
x i
i
,...,
1
;
)
(
(3.1)
Các điểm xk
sẽ đƣợc gọi là các mốc nội suy còn hàm đƣợc gọi là hàm nội
suy và đƣợc dùng để xấp xỉ hàm f trên miền D. Powell (1987) đề xuất tìm hàm nội
suy nhờ các hàm cơ sở bán kính, dƣới đây giới thiệu kỹ thuật này với các hàm
bán kính dạng Gauss.
Kỹ thuật hàm cơ sở bán kính.
Không giảm tổng quát, ta xét bài toán nội suy với M=1, và số mốc nội suy
không quá nhiều ta tìm hàm dƣới dạng sau:
N
k
k
k w
x
w
x
1
0
)
(
)
(
(3.2)
trong đó N
k
e
x
k
k
v
x
k ,...
1
)
(
2
2
/
(3.3)
với u là kí hiệu chuẩn Euclide của u và vk
gọi là tâm của hàm cơ sở bán
kính k
các tham số wk và k
cần tìm để thỏa mãn các điều kiện nội suy (3.1):
i
N
k
i
k
k
i
y
w
x
w
x
1
0
)
(
)
(
; N
i ,..,
1
(3.4)
Với mỗi k, tham số k
(còn gọi là tham số độ rộng của hàm cơ sở bán
kính) dùng để điều khiển độ rộng miền ảnh hƣởng của hàm cơ sở k
, khi
k
k
x
x
thì )
(x
k
gần triệt tiêu. Xét ma trận vuông cấp N:
39. Trang - 38 -
N
N
i
k
)
( ,
trong đó
2
2
/
, )
( k
k
i
x
x
i
k
i
k e
x
(3.5)
và các tham số k
đã chọn. Michelli [8] đã chứng minh rằng là ma trận
khả nghịch và xác định dƣơng nếu các mốc xk
khác nhau. Vì vậy, với w0 cho trƣớc
tùy ý hệ phƣơng trình (3.4) luôn tồn tại duy nhất nghiệm w1, …, wN.
Hàm bán kính dạng Gauss
Mạng RBF sử dụng phổ biến nhất đƣợc xem xét trong đề tài này là mạng
RBF sử dụng hàm bán kính dạng Gauss. Dạng tổng quát của mạng RBF Gauss cho
bởi công thức :
N
k
k
k
k v
x
w
x
1
)
(
)
(
trong đó
2
2
/
)
(
k
k
v
x
k e
x
N
i ,..,
1
(3.6)
Xét ma trận vuông cấp N:
2
2
/
||
||
,
, )
(
; k
k
i
v
x
i
k
i
k
N
N
i
k e
x
(3.7)
Michelli(1986) và Powell(1988) đã chứng minh không suy biến và xác
định dƣơng khi các i
đủ bé [9, 13]. Nói riêng, khi
i chọn thích hợp thì tồn tại
wi với i=1,...,N để cho vectơ W=(w1,...,wN)T
thoả mãn:
Y
W
(3.8)
Trong đó Y=(y1,...,yN)T
.
Trên cơ sở đó ngƣời ta đƣa ra các thuật toán nội suy và xấp xỉ hàm nhờ cực
tiểu hoá sai số trung bình bình phƣơng.
3.2.2. Kiến trúc mạng RBF và đặc điểm huấn luyện
Mạng nơron nội suy RBF dùng để nội suy hàm thực n biến
m
n
R
R
D
f
)
(
: là một mạng 3 tầng truyền tới. Tầng vào gồm n nút cho vectơ tín
hiệu vào n
R
x , tầng ẩn gồm N nơron trong đó nơron thứ k có tâm là mốc nội suy
xk
và đầu ra của nó là hàm bán kính )
(x
k
tƣơng ứng, tầng ra gồm m nơron xác
định giá trị hàm nội suy của f(x).
40. Trang - 39 -
Với tầng ẩn thì thƣờng dùng hàm tổng là hàm S=||x-w||2
, còn hàm chuyển là
hàm Gauss (v)=e-v
.
Tầng ra thì dùng hàm tổng là hàm
N
i
i
i x
w
s
1
, hàm chuyển là hàm tuyến
tính (v)=av
Có nhiều cách huấn luyện mạng RBF. Có thể tách riêng một pha để xác
định các tham số độ rộng k
của mỗi hàm bán kính và sau đó tìm các tham số wk
(phƣơng pháp 2 pha) hoặc huấn luyện 1 lần nhờ tìm cực tiểu sai số tổng các bình
phƣơng.
Nếu dùng một phƣơng pháp hai pha thì trong pha thứ hai có thể tìm các wk
nhờ một phƣơng pháp giải đúng hệ phƣơng trình (3.4) nhƣng khi số mốc lên đến
hàng trăm trở lên thì các phƣơng pháp này sai số lớn và không ổn định. Vì vậy đến
nay các trọng số của tầng ra vẫn thƣờng đƣợc tìm nhờ phƣơng pháp Gradient hoặc
biến thể của nó để cực tiểu hàm E. Hàm E không có cực tiểu địa phƣơng nên các
phƣơng pháp này hội tụ tới nghiệm của (3.4). Thực tiễn cho thấy các mạng RBF có
thời gian huấn luyện nhanh hơn MLP nhiều. Tuy vậy các phƣơng pháp tìm cực trị
hàm nhiều biến vẫn khá chậm khi số biến lớn và khó điều khiển tốc độ hội tụ, ƣớc
lƣợng sai số và song song hóa. Mặt khác, các tham số độ rộng bán kính cũng ảnh
hƣởng lớn tới chất lƣợng mạng và thời gian huấn luyện. Nếu chúng đƣợc chọn bé
thì các điểm xa tâm ít chịu ảnh hƣởng của hàm các hàm cơ sở còn ngƣợc lại thì tốc
độ hội tụ chậm.
Tầng vào Tầng ẩn Tầng ra
w1
wN
)
(x
...
...
)
(x
N
)
(x
k
)
(
1 x
wk
Hình 3.1. Kiến trúc mạng nội suy RBF cho hàm R
R
f
6
:
41. Trang - 40 -
3.3. Phƣơng pháp Trung bình bình phƣơng nhỏ nhất huấn luyện mạng RBF
Đối với bài toán ít mốc nội suy, ngƣời ta xác định các tham số i
và wk nhờ
một thuật toán tìm cực tiểu sai số trung bình bình phƣơng nhƣ sau:
N
k
k
k
y
x
E
1
2
)
)
(
( (3.9)
3.3.1. Huấn luyện đầy đủ
Tìm đồng thời các tham số i
và wk nhờ cực tiểu E bằng phƣơng pháp lan
truyền ngƣợc. Phƣơng pháp này đƣợc cải tiến với quá trình học lặp để xác định các
wk và sẽ đƣợc trình bày cụ thể ở phần tiếp theo
3.3.2. Huấn luyện nhanh
Xác định trƣớc các
i đủ bé và sau đó tìm wk nhờ cực tiểu E.
Trƣớc tiên ngƣời ta tính dựa vào công thức sau:
N
M /
1
)
2
(
1
(3.10)
Sau đó có thể tìm các wk thông qua một trong các cách huấn luyện mạng
RBF bằng cách cực tiểu hóa sai số trung bình bình phƣơng hoặc cũng có thể gải
trực tiếp nhờ ma trận giả nghịch đảo.
3.4. Phƣơng pháp Lặp huấn luyện mạng RBF
Phƣơng pháp thực hiện theo hai pha để huấn luyện mạng. Pha thứ nhất, các
bán kính k
đƣợc xác định nhờ cân bằng giữa tính tổng quát hóa của mạng và tốc
độ hội tụ của pha sau. Ở pha thứ hai, các tham số wk đƣợc xác định nhờ tìm điểm
bất động của một ánh xạ co. Thuật toán này đƣợc đề xuất bởi Tiến sĩ Hoàng Xuân
Huấn và Thạc sĩ Đặng Thị Thu Hiền [2].
Đặc tính của mạng đƣợc phát biểu trong Định lý dƣới đây là nền tảng cho
thuật toán.
3.4.1. Định lý
42. Trang - 41 -
Ta ký hiệu I là ma trận đơn vị cấp N;
N
N z
z
Z
w
w
W ...
,
...
1
1
là các vectơ
trong không gian RN
, trong đó:
zk = yk – w0, N
k
(3.11)
và đặt N
N
j
k
I
, (3.12)
thì
j
k
khi
j
k
khi
e k
k
i
x
x
j
k
:
:
0
2
2
/
, (3.13)
Khi đó hệ phƣơng trình (3.4) tƣơng đƣơng với hệ: Z
W
W
(3.14)
Với các tham số σk đã chọn và w0 tùy ý, hệ (3.4) và do đó hệ (3.14) luôn
có duy nhất nghiệm W. Về sau ta sẽ lấy w0 là trung bình cộng của các giá trị yk
:
N
k
k
y
N
w
1
0
1
(3.15)
Bây giờ với mỗi N
k , ta có hàm qk của k
xác định nhƣ sau:
N
j
j
k
k
q
1
, (3.16)
Định lý 1 (Định lý nền tảng): Hàm qk là đơn điệu tăng và với mọi số
dƣơng q<1 luôn tồn tại giá trị k
sao cho qk( k
)=q.
Chứng minh. Từ biểu thức (3.16) và chú ý tới (3.13) ta dễ dàng thấy qk là
hàm đơn điệu tăng của k
, hơn nữa ta có:
1
lim
N
qk
k
và 0
lim
0
k
q
k
(3.17)
Bởi vì qk là hàm liên tục nên với mọi q thuộc khoảng (0,1) luôn tồn tại giá
trị k
sao cho qk( k
)=q (Đpcm)
Định lý này cho thấy có thể tìm các k
để nghiệm đúng W*
của (3.14) là
điểm bất động của ánh xạ co ứng với ma trận và hệ số co là q.
3.4.2. Mô tả thuật toán
43. Trang - 42 -
Với sai số và các hằng số dƣơng 0<q<1, 0< <1 cho trƣớc, thuật toán
chúng ta gồm 2 pha để xác định các tham số k
và W*
. Trong pha thứ nhất, ta sẽ
xác định các k
để q
qk sao cho nếu thay thế k
bằng
k
thì q
qk , để cho
chuẩn của ma trận tƣơng ứng với chuẩn vectơ cho bởi (3.20) là không lớn hơn q.
Pha thứ hai tìm nghiệm gần đúng W*
của (3.14) bằng phƣơng pháp lặp đơn giản.
Thuật toán đƣợc đặc tả trong bảng dƣới.
Procedure Huấn luyện mạng RBF
Begin
For k=1 to N do
Xác định các k
để q
qk sao cho nếu thay thế k
bằng
k
thì q
qk
End
Xác định W* bằng phƣơng pháp lặp
End
Pha 1. Xác định tham số độ rộng k
Chọn trƣớc bán kính khởi tạo 0
(có thể lấy là
n
N
1
)
2
(
2
1
) và số dƣơng 1
rồi
thực hiện thủ tục lặp sau:
Khởi tạo k=1; trong khi N
k thực hiện
Bƣớc 1: Khởi tạo 0
; //khởi tạo k
Tính
N
k
j
j
x
x k
j
e
p
;
1
2
; //tính qk
Bƣớc 2: Nếu p=q thì
k ; k:=k+1; Quay trở lại Bƣớc 1
Bƣớc 3: Nếu p>q thì thực hiện điều chỉnh tham số bán kính để q
qk
và gần nhất
với q
44. Trang - 43 -
3.1.
1
;//giảm tham số bán kính
Tính
N
k
j
j
x
x k
j
e
;
1
1
2
; //tính lại qk
3.2. Nếu q
p thì
1
k ; k:=k+1; Quay trở về Bƣớc 1
3.3. Nếu p>q thì
1
và trở lại 3.1;
Bƣớc 4: Nếu p<q thì
4.1.
1
; tăng tham số bán kính;
Tính
N
k
j
j
x
x k
j
e
;
1
1
2
; Tính lại qk;
4.2. Nếu p>q thì
k ;k:=k+1; Quay trở về Bƣớc 1;
4.3. Nếu p<q thì
1
và trở lại 4.1;
Pha 2. Thuật toán xác định trọng số tầng ra.
Để tìm nghiệm W* của hệ (3.9) ta thực hiện thủ tục lặp nhƣ sau:
1. Khởi tạo W0=Z;
2. Tính W1= W0 + Z;
3. Nếu điều kiện kết thúc chƣa thỏa mãn thì gán W0:= W1 và trở lại Bƣớc 2;
4. W* W1.
Với mỗi vectơ N-chiều u, ta ký hiệu chuẩn
N
j
j
u
u
1
*
, điều kiện kết thúc
có thể chọn một trong biểu thức sau:
a)
*
0
1
1
W
W
q
q
(3.18)
45. Trang - 44 -
b)
q
q
Z
q
q
Z
q
t
ln
)
1
ln(
ln
ln
ln
)
1
(
ln
*
*
(3.19)
với t là số lần lặp
Các điều kiện dừng này đƣợc suy từ định lý về Tính hội tụ (Đƣợc trình bày
ở phần tiếp theo).
3.4.3. Đặc tính hội tụ
Với mỗi vectơ N-chiều u, ta ký hiệu chuẩn *
u cho bởi công thức :
N
j
j
u
u
1
*
(3.20)
Đinh lý sau đảm bảo Tính hội tụ và cho phép ƣớc lƣợng sai số của thuật
toán.
Định lý 2: Thuật toán trên luôn kết thúc sau hữu hạn bƣớc và đánh giá sau
là đúng
*
*
1
W
W (3.21)
Chứng minh: Trƣớc hết, từ kết luận của Định lý 1 ta dễ dàng suy ra pha thứ
nhất của thuật toán sẽ kết thúc sau hữu hạn bƣớc và q
qk với mọi k. Theo [6] thì
chuẩn *
của ma trận tƣơng ứng với chuẩn vectơ (3.20) sẽ là:
q
qk
N
k
max
*
(3.22)
Vì vậy pha hai là thủ tục tìm điểm bất động Z
u u
của ánh xạ co có hệ
số co q và xấp xỉ ban đầu u0
=0, u1
=Z. Với t bƣớc lặp ở pha 2 sẽ tƣơng ứng với t+1
bƣớc lặp Z
u k
u
k
1
của thuật toán tìm điểm bất động trong [6]. Vì vậy ta có
đánh giá:
*
1
*
0
1
1
*
*
1
1
1
Z
q
q
u
u
q
q
W
W
t
t
(3.23)
Biểu thức (3.19) tƣơng đƣơng với vế phải của (3.23) nhỏ hơn hoặc bằng ε.
Mặt khác ở bƣớc cuối của pha 2, nếu áp dụng (3.23) cho t=0; u0
=W0
; u1
=W1
; áp
dụng (3.23) cho t=0 thì ta có:
Tải bản FULL (81 trang): https://bit.ly/43xEqbk
Dự phòng: fb.com/TaiHo123doc.net
46. Trang - 45 -
*
0
1
*
*
1
1
w
w
q
q
W
W
(3.24)
Kết hợp (3.18) với (3.24) ta có (3.21). Định lý đƣợc chứng minh.
3.5. Ứng dụng mạng RBF
Trong nhiều hƣớng nghiên cứu nhằm triển khai các hệ thống thông minh,
mạng nơron đang là lựa chọn khá phổ biến. Chúng là cơ sở cho các giải pháp nhƣ
nhận dạng, tự động hoá điều khiển, trí tuệ nhân tạo...
Có thể liệt kê ra rất nhiều khía cạnh nghiên cứu và ứng dụng của mạng
nơron RBF nhƣ: Dùng các phép biến đổi để khử nhiễu và tách đối tƣợng từ ảnh thu
nhận đƣợc, sau đó đối tƣợng tách ra từ ảnh đƣợc nhận dạng nhờ một mạng nơron
RBF; Hệ thống tay máy có gắn camera để quan sát và bám mục tiêu, với phƣơng
thức điều khiển dựa trên nguyên lý tuyến tính hóa các tín hiệu ảnh phản hồi, kết hợp
với khả năng của mạng nơron RBF để làm giảm nhẹ tác động của những thành phần
ngẫu nhiên, cho phép sử dụng các tham số có độ chính xác hạn chế vào mô hình
động lực học của hệ thống theo dõi; ...
Ứng dụng mạng nơron để nhận dạng mẫu
Nhận dạng mẫu là một bài toán tổng quát, trong từng trƣờng hợp ứng dụng
cụ thể, mẫu nhận dạng có thể là ảnh, chữ viết, tiếng nói, … Trong đó ứng dụng về
nhận dạng ảnh là một khía cạnh đƣợc xem là có bƣớc tiến lớn và phổ biến rộng rãi
nhất.
Nhận dạng ảnh là một quá trình nằm trong lĩnh vực Xử lý ảnh. Xử lý ảnh là
một lĩnh vực liên quan đến nhiều ngành khoa học khác nhau, về mặt tổng quát có
thể đƣa ra một quá trình Xử lý ảnh nhƣ sau:
Tải bản FULL (81 trang): https://bit.ly/43xEqbk
Dự phòng: fb.com/TaiHo123doc.net
47. Trang - 46 -
Trong đó, đầu vào là ảnh thu đƣợc từ các thiết bị ghi ảnh, giai đoạn xử lý
ảnh bao gồm nhiều quá trình con để đƣa ra kết quả nhận dạng, kết quả nhận dạng
này sẽ đƣợc sử dụng trong các ứng dụng khác nhau với những mục đích khác nhau.
Một vài trong số rất nhiều ứng dụng sử dụng kết quả nhận dạng đó là: Nhận
dạng ảnh mặt ngƣời, ta có thể thấy rằng tại các cửa khẩu quốc tế, khi ảnh của ngƣời
xuất nhập cảnh đƣợc đọc vào thông qua máy đọc hộ chiếu, ảnh này cần phải đƣợc
nhận dạng ngay lập tức để có thể xác định ảnh thu đƣợc có nằm trong danh sách đối
tƣợng “nhạy cảm” hay không, qua đó mà cán bộ tại bục xuất nhập cảnh có những
nghiệp vụ phù hợp; Nhận dạng chữ, hiện nay, tồn tại một khối lƣợng đồ sộ các tài
liệu nhƣ sách báo cũ, thƣ từ, tƣ liệu, ... đã đƣợc in ấn hay viết tay. Nếu muốn chỉnh
sửa các tài liệu đó, trƣớc đây thƣờng sử dụng cách đánh máy lại tài liệu. Với tiến bộ
của công nghệ xử lý ảnh, ngƣời ta hoàn toàn có thể quét ảnh các tài liệu (thu nhận),
số hóa, phân tích, nhận dạng trƣớc khi lƣu trữ để phục vụ cho các mục đích khác
nhau (chỉnh sửa, tra cứu, ...).
Để đọc một đối tƣợng ảnh hay nhận biết một đối tƣợng qua ảnh, chúng ta
cần trích từ ảnh đối tƣợng các vector đặc trƣng. Vector đặc trƣng của một ảnh là
duy nhất, và từ vector đặc trƣng của một ảnh đối tƣợng, chúng ta có thể tái tạo lại
những đƣờng nét cơ bản của ảnh đó.
Ở đây chúng ta đi chi tiết vào một hệ thống nhận dạng ảnh mặt ngƣời
(Human Face Recognition System), đƣợc viết tắt là HFRS. Nhìn chung, HFRS thực
CAMERA
SCANNER
SENSOR
...
Thu nhận Trích đặc trƣng Nhận dạng
THIẾT BỊ XỬ LÝ ẢNH ỨNG DỤNG
LƢU TRỮ
HỆ QUYẾT
ĐỊNH
...
6812987