ĐẠI HỌC QUỐC GIA HÀ NỘI
KHOA CÔNG NGHỆ
DƯƠNG THĂNG LONG
MỘT SỐ QUY TRÌNH HUẤN LUYỆN MẠNG NƠRON
VÀ ỨNG DỤNG XẤP XỈ HÀM SỐ
LUẬN VĂN THẠC SỸ
Người hướng dẫn: PGS.TSKH. Bùi Công Cường
Hà nội - 2004
MỤC LỤC
Chương 1- Giới thiệu mạng nơron nhân tạo 1
1.1. Giới thiệu mạng nron nhân tạo 1
1.1.1. Giới thiệu nron sinh học 1
1.1.2. Mô hình nron một đầu vào 2
1.1.3. Mô hình nron nhiều đầu vào 4
1.2- Kiến trúc mạng nron nhân tạo 5
1.2.1. Mô hình một lớp nron (Layer) 5
1.2.2. Mô hình nhiều lớp nron (Multiple Layer) 6
1.2.3. Mô hình mạng nron có phn hồi (reccurent networks) 8
1.3- Ứng dụng của mạng nron nhân tạo 10
1.4- Một số vấn đề liên quan 11
1.4.1. Đầu vào và đầu ra của mạng 11
1.4.2. Tập dữ liệu huấn luyện và kiểm tra 12
1.4.3. Ưu nhược điểm của mạng nron 12
Chương 2- Đảm bảo toán học cho luyện mạng 14
2.1- Các mặt hiệu suất và điểm tối ưu 14
2.1.1. Chuỗi Taylor 15
2.1.2. Trường hợp véct 16
2.1.3. Hướng của đạo hàm 17
2.1.4. Các điểm cực tiểu 19
2.1.5. Các điều kiện cần cho sự tối ưu 21
2.1.6. Hàm bậc hai 23
2.2. Tìm kiếm điểm tối ưu 27
2.2.1. Phương pháp xuống dốc từng bước 28
2.2.2. Phương pháp Newton 33
2.2.3. Phương pháp liên hợp gradient 34
Chương 3- Một số phương pháp huấn luyện mạng nron 39
3.1. Mạng Perceptron và quy tắc học Perceptron 39
3.1.1. Kiến trúc perceptron 39
3.1.2. Quy tắc học perceptron 40
3.1.3. Xét sự hội tụ của thuật toán học 41
3.1.4. Minh hoạ 44
3.1.5. Những hạn chế của luật học perceptron 45
3.2. Thuật toán học Widrow-Hoff 46
3.2.1. Mạng ADALINE 47
3.2.2. Sai số bình phưng trung bình 48
3.2.3. Thuật toán LMS 51
3.2.4. Phân tích sự hội tụ 53
3.2.5. Minh hoạ 54
3.3. Thuật toán lan truyền ngược (the back propagation algorithms) 57
3.3.1. Giới thiệu mạng perceptron nhiều lớp 58
3.3.2. Bài toán phân lớp các đối tượng 59
3.3.3. Bài toán xấp xỉ hàm 60
3.3.4. Thuật toán lan truyền ngược 62
3.3.5. Sự thay đổi tốc độ học 68
3.4. Học liên hợp ( associative learning ) 69
3.4.1. Mô hình nron liên hợp đn gin 70
3.4.2. Luật học Hebb 72
3.4.3. Luật học Kohonen 72
3.5. Học cạnh tranh ( competitive learning ) 73
2.5.1. Mô hình một lớp nơron cạnh tranh 73
3.5.2. Học cạnh tranh 73
3.6. Kết luận 73
Chương 4- Xây dựng mạng nơron để xấp xỉ hàm phi tuyến 75
4.1. Xây dựng mạng nron theo hướng loại bỏ - Destructive learning 76
4.1.1. Giới thiệu 76
4.1.2. Thuật toán huấn luyện mạng và loại bỏ dư thừa 77
4.2. Xây dựng mạng nron theo hướng thêm vào - Constructive learning 80
4.2.1. Không gian trạng thái 81
4.2.2. Trạng thái xuất phát 82
4.2.3. Trạng thái kết thúc 82
4.2.4. Chiến lược tìm kiếm 83
4.2.5. Thuật toán xây dựng mạng theo phưng pháp constructive 87
4.3. Một thuật toán kết hợp giữa hai phưng pháp trên 88
4.4. Kết qu thử nghiệm 91
4.4.1. Thử nghiệm đối với hàm F1 92
4.4.2. Thử nghiệm đối với hàm F2 94
4.4.3. Thử nghiệm đối với hàm F3 96
4.5. Phụ lục - đoạn chưng trình chính của thuật toán TT2 98
4.5.1. Thuật toán TT1 98
4.5.2. Thuật toán TT2 102
LỜI MỞ ĐẦU
Sự phát triển và ứng dụng Công nghệ tin học vào trong cuộc sống ngày
càng rộng rãi và đem lại những lợi ích to lớn cho xã hội. Các nghiên cứu và tìm
kiếm công nghệ mới nhằm nổ lực hơn nữa đem lại các kết quả tốt đẹp hơn. Một
trong những nghiên cứu và ứng dụng công nghệ mới đó là cố gắng bắt chước
cách làm việc của bộ não người, tức là xây dựng các chương trình cho máy tính
làm việc giống với khả năng (tuy nhiên một phần nào đó) của con người.
Khái niệm về mạng nơron đầu tiên được đề xuất bởi Warren McCulloch và
Walter Pitts vào những năm 1940. Năm 1950, mạng nơron nhân tạo đầu tiên là
perceptron được đề xuất bởi Frank Rosenblatt, sau đó Bernard Widrow và Ted
Hoff giới thiệu một thuật toán học sử dụng để luyện mạng nơron tuyến tính thích
nghi (có cấu trúc và khả năng tương tự perceptron). Năm 1970 Teuvo Kohonen
và James Anderson đã phát triển các mạng nơron mới thực hiện như những bộ
nhớ, Stephen Grossberg cũng đã đề xuất mạng nơron tự tổ chức. Đặc biệt là kết
quả công bố của David Rumelhart và James McClelland về thuật toán lan truyền
ngược để luyện mạng nơron perceptron nhiều lớp, được phát triển vào những
năm 1980, đã đem lại nhiều kết quả mới trong nghiên cứu và ứng dụng mạng
nơron. Đến nay mạng nơron đã tìm thấy được rất nhiều ứng dụng, như phân lớp
mẫu, nhận dạng, xấp xỉ hàm, hồi quy,….
Để ứng dụng mạng nơron chúng ta cần thực hiện: thứ nhất xây dựng một
cấu trúc mạng thật hợp lý để giải quyết vấn đề đặt ra, thứ hai chọn một giải pháp
luyện mạng thích hợp. Tuy nhiên trong thực tế có nhiều vấn đề khó có thể thu
thập được các thông tin cho việc xây dựng một cấu trúc mạng nơron hợp lý,
cũng như bộ não con người, chủ yếu được hình thành quá trình học, do đó việc
xây dựng một cấu trúc mạng cũng phải được thông qua việc huấn luyện.
Trong khuôn khổ bản luận văn tốt nhiệp này, chúng tôi sẽ trình bày một số
vấn đề về mạng nơron bao gồm luyện tham số, luyện cấu trúc và ứng dụng vào
một bài toán xấp xỉ hàm.
chương 1
Giới thiệu mạng nơron nhân tạo
1.1. Giới thiệu mạng nơron nhân tạo
Mạng nơron nhân tạược xây dựng trên cơ sở thừa kế mạng nơron sinh học bao gồm cấu trúc và sự
hoạộẽ xem xét tổng quan về cấu trúc và sự hoạộng của mạng nơron sinh
học.
1.1.1. Giới thiệu nơron sinh học
ết bộ ười chứựng khoảng 1011 các nơron liên kết với nhau ở mức cao,
khoảng 104 liên kết tới một nơron. Mỗi nơron có ba thành phần chính gồm: dendrites (vòi thu nhận tín
hiệu), cell body (nhân nơron), axon (trục chuyển tín hiệu). Vòi nhận tín hiệể nhận các tín
hiệưa vào trong nhân của nơron. Nhân có nhiệm vụ tổng hợp các tín hiệược thu nhận từ các vòi
và kích hoạt nó, nếu vượt một ngưỡệu sẽ ược chuyển tới axon và truyềến các
nơron khác. Khớp nối giữa axon của một nơron với vòi của nơron khác gọi là synapse.
Hình 1.1- Sơ ồ mạng nơron sinh học
Khi mới sinh ra bộ ười có cấơn giảược hoàn thiện bởi việc học của con
ngườệc thiết lập các liên giữa các nơron lại vớể biểu diễn tri thức của con người có
ược, từ ử lý các thông tin khác.
Mạng nơron nhân tạo không tiếp cận theo cách liên kết phức tạp củườểm
chính tương tự ựng các khốều là những phầơn giảược kết nối với
nhau ở mức cao; liên kết giữa các nơrịnh chứủa mạng.
1.1.2. Mô hình nơron mộầu vào
Nơron có mộầược biểu diễn như ầu vào p sẽ nhân với trọng số liên kếưa vào
bộ tổng, thêm mộầu vào bằng 1 nhân vớộ lệưa vào bộ tổng. Kết quả ầu ra là z sẽ qua hàm
kích hoạể ầu ra của nơ
Hình 1.2- Nơron mộầu vào
p - tín hiệầu vào của nơron
w - trọng số liên kết giữầu vào p tới nơron
b - ộ hiệu chỉộ lệưỡng trong nơron sinh học
z - tổng tín hiệầu vào cùng vớộ lệch b
f - hàm kích hoạt của nơron
a - tín hiệu ra của nơron
Kết quả ầu ra của nơược tính như sau:
(1.3)
Ví dụ: trọng số liên kếầộ lệch b=-1.5 thì
(1.4)
Kết quả ầu ra sẽ phụ thuộc vào việc lựa chọn hàm kích hoạộ lệch b xem như một trọng số liên
kết vớầu vào luôn là 1, tuy nhiên nếu không cần thiết thì chúng ta có thể bỏ
Trọng số ộ lệch b là những tham số có thể ều chỉnh trong quá trình học của nơron, việc thay
ổi này sẽ ược giới thiệu qua một số phương pháp học của mạng nơron ở chương sau.
Hàm kích hoạt có thể là tuyến tính hoặc phi tuyếược chọn sao cho thoả ột số tiêu
chuẩn của vấề mà nơron cần giải quyết. Một số hàm kích hoạt thường dùng thể hiện trong bảng
sau.
Tên hàm Diễn giải: a=f(z) Ký hiệu
Hard Limit
hardlim
Symmetrical Hard Limit
hardlims
Linear a=f(z)=z purelin
Saturating Linear
sarlin
Symmetric Sarturating Linear
sarlins
Log-Sigmoid
logsig
Hyperbolic Tangent Sigmoid
tansig
Positive Linear
poslin
Competitive
compet
1.1.3. Mô hình nơron nhiềầu vào
Một nơron thực chất sẽ có nhiềầu vào qua các liên kết, với một nơầu vào p1, p2, , pR,
mỗầu vào sẽ qua một liên kết có trọng số là w1,1, w1,2, , w1,R của ma trận trọng số W.
Hình 1.5- Nơron nhiềầu vào
Nơộ lệổầu vào (net) của nó sẽ là z:
(1.6)
Hay viết dưới dạng ma trận ta có:
(1.7)
ận trọng số W cho một nơron nên nó chỉ có một dòng. Kết quả ầu ra của mạược
tính là:
(1.8)
ỉ số liên kết của ma trận trọng số theo cách thông thường, chỉ số ầu là liên kế,
chỉ số sau là liên kết nguồn. Ví dụ ta viếọng số liên kết tới nơron thứ 1 từ nơron
thứ 3.
Chúng ta có thể minh hoạ nơron nhiềầu vào bằng hình vẽ sau:
Hình 1.9- Nơron nhiềầu vào
1.2- Kiến trúc mạng nơron nhân tạo
Mạng nơron sinh học có kiến trúc rất phức tạp, các liến kết giữa các nơron rất nhiều (mỗi nơron có
khoảng 104 liến kết tới các nơối với mạng nơron nhân tạo ta chỉ xét loại mạng truyền
thẳng là chủ yếu, tức là các nơược chia thành lớp và xếp theo thứ tự mỗi lớp, các nơron ở lớp
trước kết nối trực tiếp tới các nơron ở lớp kề sau.
1.2.1. Mô hình một lớp nơron (Layer)
Một lớp có S nơược biểu diễn như hình 1.10, mỗi nơron sẽ liên kếầủ vớầu vào pi vì
thế ma trận trọng số liên kết sẽ có kích thước S x R.
Hình 1.10- Một lớp S nơron
Một lớp nơron sẽ gồm có một ma trận trọng số W, các bộ tổng, véctơ ộ lệch b, hàm kích hoạt và
véctơ ầầu vào của lớp nơể ầu ra của một lớp nơron khác (lớp
kề trước).
Số nơron trong lớp sẽ ộc lập với) số ầu vào (R?S). Hàm kích hoạt của các nơron trong lớp
người ta thường dùng chung một hàm, tuy nhiên ta có thể xây dựng lớp mà các nơron có hàm kích
hoạt khác nhau.
Ma trận trọng số liên kết của một lớp nơược biểu diễn như sau:
(1.11)
Một lớp có S nơầu vào có thể ược minh hoạ bởi hình sau:
Hình 1.12- Một lớp S nơron
1.2.2. Mô hình nhiều lớp nơron (Multiple Layer)
Bằng cách liên kết nhiều lớp nơron lại vớể tạo thành một mạng nơron nhân tạo. Lớầu tiên
ta gọi là lớp vào - Input layer, lớp cuối cùng gọi là lớp ra - Output layer, các lớp trong gọi là lớp ẩn -
Hidden layer. Các nơron ở lớp sau sẽ liên liên kết với các nơron ở lớp kề trước, trừ lớp vào.
Hình 1.13- Mạng nơron truyền thẳng nhiều lớp
Kết quả ầu ra chi tiết như sau :
(1.14)
Ta gọi mạng trên là mạng nơron truyền thẳng nhiều lớp (Feedforward Neuron Network), các nơron ở
lớp trước kết nối tới các nơron ở lớp sau, không có nơron ở lớp sau nối ngược sang lớp trước.
Mỗi lớp i (i=1, 2, ) có số nơron trong lớp là si và ma trận liên kết với lớp trước là Wi có kích thước Si x
Si-1.
Mạng nơron nhiều lớp mạnh hơn mạng một lớp. Ví dụ mạng nơron hai lớp có lớầu là sigmoid và
lớp sau là linear có thể huấn luyệể xấp xỉ các hàm tu ý rất tốt. Mạng một lớượều
này.
Quá sớể ến việc lựa chọn cấu trúc cho mạng nơron. Số nút vào, số ược lựa chọn dựa
vào cấề cần thực hiện. Ví thế nếu số biến vào là 3 thì số nút vào của mạng là 3, nếu số biến ra là 7
thì số nút ra của mạng phải là 7. Cuốặc trưng mong muốn ở ầu ra giúp chúng ta lựa chọn
hàm kích hoạt cho kết quả ra. Nếầu ra là -1 hoặc 1 thì sử dụng hàm symmetrical hard limit. Vì vậy
kiến trúc của mạng một lớịặc tả vấề, bao gồm số nút vào, số ặc
trưầu ra.
ối với mạng nhiều hơn 2 lớp chúng ta sẽ ịược trực tiếp số nơron cần trong lớp ẩn từ
vấề. Thực tế có 3 vấề có thể dự ố nơron ẩn thích hợp cần trong lớp ẩột mảng
ược nghiên cứu rấộng hiện nay.
ư vấề số lớp, hầu hết các mạược sử dụng chỉ có 3 lớp. Từ 4 lớp trở ược sử
dụng.
Chúng ta có thể chọn mạộ lệch (bias) hoặộ lệưa lại cho mạng nhiều biếổi và
chúng ta sẽ thấy mạộ lệch sẽ hoạộng mạnh và hiệu quả hơn. Ví dụ một nơron không có ộ
lệch khi mộầu vào p là 0 thì tổng tín hiệu của nơron sẽ ều này không mong muốn và có thể
ược bằng việc sử dụộ lệch.
1.2.3. Mô hình mạng nơron có phản hồi (reccurent networks)
Trước hết chúng ta xét một số khốơn giản. Khối thứ nhất là bộ trễ ược giới thiệu trong hình sau.
Hình 1.15- Bộ trễ
ầu ra của bộ trễ ược tính từ ầu vào u(t) theo công thức a(t)=u(t-1). Vì vậầu ra sẽ bị trễ một
bước, ở thờểầầu là a(0).
Thứ 2 xét bộ tích hợược sử dụng trong mạng hồi quy thời gian liên tục như hình vẽ sau.
Hình 1.16- Bộ tích hợp
Một mạng hồi quy là mạng có tín hiệu phản hồi, một số ược nối tớự khác
biệể mà chúng ta phải xem xét so với mạng hoàn toàn truyền tới, không có liên kết ngược.
Một mạng hồi quy với thời gian rời rạc sẽ ược biểu diễn như hình sau.
Hình 1.17- Mạng nơron hồi quy
Trong mạng này véctơ p cung cấều kiện khởi tạầu ra của mạược tính từ
ầu ra trướ
a(1) = satlins(W.a(0)+b) , a(2) = satlins(W.a(1)+b) ,
Mạng nơron hồi quy có tiềạnh hơn mạng truyền tới và có thể ưa ra các ứng xử thời gian.
1.3- ứng dụng của mạng nơron nhân tạo
Mạng nơron nhân tạược ứng dụng thành công và rộềực như ều khiển,
viễn thông, chẩọầu khí, tài chính và một số ực khác. Các ứng dụng này có
thể chia thành các nhóm chính sau: thứ nhất là các bài toán phân lớầu vào
ược ấịnh tới một trong các lớp hoặc nhóm phân biệt, thứ hai là các vấề xấp xỉ và hồi quy
ột ánh xạ liên tục từ ầu vào tới một hoặc nhiềầu ra; thứ ba là các bài
toán tối ưu hóa; thứ tư ối sánh mẫu; và cuối cùng là bộ nhớ liên hợp.
Một số ví dụ cho vấề phân lớp bao gồm nhận dạng chữ, nhận dạng người nói, cân bằng kênh tính
hiệu số và nhận dạối tượng. Trong trường hợp này mạng nơron có một hoặc nhiều nút ra rời rạc
và thường là giá trị nhị phân. Ví dụ ể cân bằng kênh tín hiệu số sử dụng mạng nơron (loại bỏ nhiễu và
tiếng ồn trên kênh truyềầu ra nhị phân trở thành các bít trong việc cấu trúc lạhiệu số.
Mặt khác nhiều ứng dụng bao gồm cả thiết lập một ánh xạ hàm phi tuyến giữa các nút vào và nút ra. Ví
dụ trong các hệ ều khiển như ều khiển rô bốt, ước lượng rủi ro trong bảo hiểều khiển các
phầử dụng thích nghi của mắt, dự báo tỷ giá hốền tệ
Các vấề phân lớp và hồi quy thường sử dụng kiến trúc mạng nơron nhiều lớể huấn luyện
mạng nơron thường chúng ta sử dụng thuật toán lan truyền ngược và lựa chọn các mạng hàm cơ sở
xuyên tâm RBF (Radial Basic Function) cho các vấề trên. Thuật toán lan truyền ngượịược
các trọng số ộ lệch của mỗi nút bằng cách sử dụng thủ tục xuống dốc những kiến trúc của mạng
ổi. Thông thường mạược huấn luyện với một số các nút ẩược chọn và hiệu quả
ượối với một tập thẩịể ịnh số lượng nút ẩn tối ưu. Việc này cần nhiều sự
ỉ một phần nhỏ không gian các mạng có thể ượới mạể tìm các
lựa chọn tối ưu của các hàm cơ sở cho việc phủ và phân bố ặc trên dữ liệọng
tương tự.
1.4- Một số vấề liên quan
ầầu ra của mạng
Các ứng dụng mạng nơron trải rộng từ những trường hợầu vào tới các nơron là riêng biệt,
ến các trường hợp sử dụng các nhóm nơể biểu diễn các giá trị của nhữặc trưng chắc
chắn của mộối tượng.
Việc lựa chọầu vào cho mạng nơron thông thườầu vào có thể ược tiền
xử lý, như là lượng hóa và lọc các dữ liệu. Trong một số trường hợp có các công cụ toán học trợ giúp
lựa chọầể thêm vào các giả thiếể lựa chọầu vào cho phù hợp.
Rõ ràng những hạn chế trong các hệ thốườối với một ứng dụng cụ thể sẽ hạn chế tập các
ầu vào có thể. Hơn nữa số lượng tiền xử lý cần thiết sẽ ảnh hưởến lựa chọầu vào.
Ví dụ trong việc nhận dạng các chữ số, một lựa chọn có thể là mỗi chữ số ượận
nhị phân 11x8, hoặc chuyển nó thành véctơ nhị phân 88x1.
Thông thường sự ánh xạ ầu vào tớầu ra của mạng nơổi khi có một số ổi hoặc
chênh lệch trong các yêu cầầu vào. Vì thế mạng nơron cho thấy sự bất biến khi một số ầu vào
ổi. Mộự phản ứng giốược mong muốối với một lớp hoặc
tậầu vào. Những sự ổi này chịu nhiềễu. Ví dụ con
người có thể nhận ra chữ in hoặc chữ viết tay với các kích thước và hướng khác nhau. Chúng ta không
thể thiết lập một cái máy làm việc chính xác như thế ược.
Lựa chọầu ra song song với việc lựa chọầu vào và hầu như phụ thuộc vào từng ứng dụng cụ thể.
1.4.2. Tập dữ liệu huấn luyện và kiểm tra
Giả sử rằng một lượng thông tin chắc chắết trước, như là tập các ánh xạ mẫu vào/ra hoặc chỉ
có các mầập dữ liệu huấn luyện và tập dữ liệu kiểịột hệ
thống mong muốn cho việc xây dựng mạng nơron. Xuất phát từ một mạng nơượịnh
cấu trúc theo những dự kinh nghiệm chuyên gia, hoặc một cấu trúc bất k, sử dụng tập huấn
luyệể huấn luyện mạng nơron thực hiệược yêu cầặt ra. Sau khi huấn luyện
xong hoặc trong quá trình chúng ta sử dụng tập kiểể ểm tra sự họộng
hiệu quả của mạng nơron.
1.4.3. Ưu nhượểm của mạng nơron
Xét dướộ tính toán chúng ta thấy mạng nơron là một mô hình tính toán mới, nó có những thuận
lợới việc tính toán truyền thống.
Ưểm
- Thừa kế việc tính toán song song
- Có thể loại bỏ các khuyếểm sai bởi vì cơ chế song song
- Có thể ược thiết kế ể thích nghi
- Cầặểm mô tả vấề
- Khả ấp xỉ rất tốt các hàm phức tạp
Nhượểm
- Không có các quy tắc hoặc nguyên tắc thiết kế rõ ràng cho mọi ứng dụng
- Không có cách tổể ự hoạộng bên trong mạng
- Việc huấn luyện có thể rất khó hoặc không thực hiệược
- Khó dự ệu quả tương lai của mạng nơron
Tóm lại, việc lựa chọn và xây dựng một mạng nơron ứng dụể giải quyết các vấề trong thực tiễn
là một công việc rất quan trọng. Có thể ịnh kiến trúc mạng trướử dụng tập dữ liệu
huấn luyện mạể sao cho mạng nơược hoạộúng và hiệu quảể trong
quá trình huấn luyện chúng ta xác ịnh cấu trúc mạng cho hợẽ trình bày một số
phương pháp huấn luyện mạng nơron.
chương 2
ảm bảo toán học cho luyện mạng
2.1- Các mặt hiệu suấểm tối ưu
Trong phần này trình bày một số cơ sở cho kỹ thuật huấn luyện mạng nơron gọi là học hiệu suất
(performance learning). Có một số lớp các luật học mạng khác nhau, bao gồm học liên hợp và học cạnh
tranh. Học hiệu suất là một lớp quan trọố mạượều chỉể tối ưu hiệu
suất họộng của mạng. Hiệu suấượộặc trưng thực hiện
(performance index function), ta gọi tắt là hàm hiệu suấẽ trình bày cơ sở cho việc phát triển
của việc học hiệu suất mạng. Mục tiêu chính của phần này là nghiên cứu các bề mặt của hàm hiệu
suất, ta gọi tắt là mặt hiệu suấể ịều kiện cho việc tồn tạểm cựu tiểu và cựại
của bề mặt hiệu suấần sau sẽ xem xét các thủ tụể ịểm cực tiểu và cựại.
Có hai bước trong tiến trình tối ưu này. Bướầu phải ịnh hàm hiệu suất là như thế nào, tức là
ịộ ịnh lượng của hiệu suất mạược gọi là chỉ số hiệu suấộ ẽ càng nhỏ khi
mạng hoạộng tốt và càng lớn khi mạng hoạộng tồi. Trong phần này xem như ỉ số hiệu
suất, còn việc lựa chọn nó sẽ xem xét ở phần sau.
Bước thứ hai là tìm kiếm không gian tham số ều chỉnh trọng số ộ lệể giảm chỉ số hiệu suất.
Trong phần này sẽ ặc tính của các mặt hiệu suất và một số ều kiệể ảm bảo sẽ có
mộểm cực tiểu.
2.1.1. Chuỗi Taylor
Ta nói rằng chỉ số hiệu suất mà chúng ta muốn cực tiểượưa ra bằố
vô hướng chúng ta cầều chỉnh. Giả sử chỉ số hiệu suất là một hàm giải tích, vì thế tất cả ạo hàm
củều tồn tại. Nó có thể ược biểu diễn bởi sự mở rộng chuỗểm x* như
sau:
(2.1)
Chúng ta sẽ sử dụng chuỗi Taylor mở rộể xấp xỉ chỉ số hiệu suất bằng việc giới hạn sự mở rộng tới
một số hữu hạn các số hạng. Ví dụ, xét hàm sau:
F(x)=cos(x) (2.2)
Mở rộng chuỗi Taylor của F(x) xung quanh x* = 0 là
(2.3)
Xấp xỉ ến số hạng thứ 0 của F(x) là:
(2.4)
Xấp xỉ ến số hạng thứ 2 là:
(2.5)
Xấp xỉ ến số hạng thứ 4 là:
(2.6)
Hình vẽ sau cho thấy sự xấp xỉ này.
Hình 2.7- Hàm cos(x) và chuỗi Taylor mở rộng
Từ hình vẽ trên chúng ta thấy tất cả các xấp xỉ là chính xác nếu x là rất gần với x* = 0. Tuy nhiên khi x
dịch ra xa so với x* thì chỉ những xấp xỉ tới số hạng cao mới chính xác. Xấp xỉ tới số hạng thứ 2 có
khoảng chính xác lớn hơn thứ 0, và xấp xỉ tới số hạng thứ 4 có khoảng chính xác lớn hơn thứ 2. Công
thức (2.1) cho chúng ta thấều này.
Chúng ta sử dụng xấp xỉ chuỗi Taylor củặc trưng thực hiệể xem xét hình dạng củặc
trưng thực hiện trong lân cậểm tối ưu có thể.
2.1.2. Trường hợp véctơ
ặc trưng thực hiện của mạng nơron không phải là một giá trị vô hướng x. Nó sẽ là một
hàm của tất cả các trọng sốộ lệch của mạng. Vì vậy chúng ta cần mở rộng chuỗi Taylor tới các hàm
nhiều biến. Xét hàm n biến sau.
(2.8)
Chuỗi Taylor cho sự mở rộểm x* là:
(2.9)
Công thức ở trên rất kồng kềnh, do vậy ta có thể viết dưới dạng ma trận như sau:
(2.10)
ượịư sau:
(2.11)
và là ma trậượịư sau:
(2.12)
Véctơ Gradient và ma trận Hessian là rất quan trọể chúng ta hiểu về các mặt hiệu quả. Phần tiếp
theo sẽ ủa 2 khái niệm này.
2.1.3. Hướng củạo hàm
Thành phần thứ i của gradient, , là ạo hàm bậc nhất củặc trưng thực hiện F theo trục xi.
Thành phần thứ ường chéo chính của ma trậạo hàm bậc 2 củặc trưng
thực hiện F theo trụặt p là véctơ theo hướạo hàm của F, theo hướạo hàm p
này ta có thể ạo hàm bậc nhất bởi công thức sau:
(2.13)
ạo hàm bậc 2 theo p có thể ược tính bởi công thứ sau:
(2.14)
Ví dụ min hoạ: xét hàm sau
Giả sử chúng ta muốn biếạo hàm của F tạểm theo hướng . Tính gradient tạược:
(2.15)
ạo hàm theo hướược tính là:
(2.16)
Vì thế hàm này có hệ số góc bằng 0 theo hướng p từ ểm x*. Chúng ta thấy rằị
hướạo hàm ở công thức (2.13), tử số là tích trong giữa véctơ hướng và gradient. Vì thế bất k
hướng nào mà trực giao với gradient sẽ có hệ số góc bằng 0.
Hệ số lớn nhất xẩy ra khi tích trong của véctơ hướng và gradient là lớn nhấều này xẩy ra khi véctơ
hướng giống với véctơ gradient. Chúng ta thấều này trong hình vẽ sau, ở ườồng
mức có 5 véctơ bắầu từ ểm x* và tới các hướng khác nhau, tạểm cuối của mỗi véctơ hiển thị
hướạo hàm bậc nhấạo hàm bậc nhất lớn nhất theo hướng củạo hàm bằng 0 theo
hướng trực giao với gradient.
Hình 2.17- Hàm bậc 2 và các hướạo hàm của ví dụ
ểm cực tiểu
Mụủa việc học hiệu suất là tối thiểặc trưng thực hiện của mạng nơron. Trong phần này
chúng ta sẽ ịểm tối ưu. Giả sử rằểm tối ưểm cực tiểu củặc trưng thực
hiệịựểm cựại.
ịểm cực tiểu mạnh
iểểm cực tiểu mạnh của hàm F(x) nếu tồn tại một giá trị vô hướng có với mọi và .
Nói cách khác, nếu chúng ta chuyển từ mộểm cực tiểu mạột khoảng theo bất k hướng nào
thì hàm sẽ
ịểm cực tiểu toàn cục
iểểm cực tiểu toàn cục duy nhất của hàm F(x) nếu với mọi .
Với mộểm cực tiểu x*, hàm có thể nhỏ hơn F(x*) ở một số ểm lân cận ngoài x*. Và ta gọ
ểm cực tiểịa phương. Tạểm cực tiểu toàn cục hàm sẽ luôn nhỏ hơn ở tất cả ểm khác
trong không gian tham số.
ịểm cực tiểu yếu
iểểm cực tiểu yếu của hàm F(x) nếu nó không phải là một cực tiểu mạnh và tồn tại một giá
trị vô hướng có với mọi và .
Khi chuyển từ mộểm cực tiểu yếu theo các hướng thì hàm có thể ể là không thay
ổi.
Ví dụ xét hàm hai biến sau:
(2.18)
ược hiển thị trên hình vẽ sau:
Hình 2.19- Ví dụ về ểm ổịnh và cực tiểu
Chúng ta thấểm cực tiểu mạnh là: (-0.42, 0.42) và (0.55, -ểm cực tiểu toàn cục là
(0.55, -0.55).
Có mộặc trưng khác củạểm (-0.13, 0.13), ta gọểểm yên ngựa bởi hình
dáng bề mặt trong lân cận củểặc trưược biểu thị ườểm yên ngựa
ểm cựạịa phương, nhưường trực giao vớườểm yên ngựểm cực tiểu
ịa phương.
Ví dụ xét hàm sau và trên hình vẽ cho ta thấượểm cực tiểu yếểường thẳng
(2.20)
Hình 2.21- Ví dụ ểm cực tiểu yếu
ều kiện cần cho sự tối ưu
ịượểm tối ưểm cực tiểu toàn cục, bây giờ ta sẽ xem xét một số ều
kiện thoả ểm như vậy. Một lần nữa sử dụng chuổi Taylor mở rộể ưều kiện
này.
(2.22)
(2.23)
iều kiện thứ nhất:
Nếu là rất nhỏ thì các số hạng cao trong công thức (2.22) sẽ ể và chúng ta có thể xấp xỉ
hàm như sau:
(2.24)
iểm x* là mộểm cực tiểu có thểẽ ần (hoặc ít nhất là không giảm) nếu
ều này xẩy ra khi số hạng thứ 2 trong công thức (2.24) không âm, tức là
(2.25)
Tuy nhiên, nếu số hạng này là dương,
(2.26)
thì ta có
(2.27)
Nhưột sự mâu thuẩn khi x* là mộểm cực tiểu. Vì vậy công thứ
thức (2.26) ắt phải sai, chỉ một trường hợ
(2.28)
ều nàới mọi , chúng ta có
(2.29)
Vì vậy gradient phải bằng 0 tạểm cực tiểều kiệầu cần thiết cho x* là mộểm cực
tiểịa phươểm thỏứược gọểm ổịnh.
iều kiện thứ 2:
Giả sử chúng ta có mộểm ổịnh x*. Khi gradient của F(x) bằng 0 tại tất cả ểm ổịnh, chuổi
Taylor mở rộng sẽ là
(2.30)
Như ỉ ểm này trong một lân cận nhỏ củểỏ
và F(x) có thể ược xấp xỉ bởi 2 số hạng ầu trong công thức (2.30). Vì vậy mộểm cực tiểu mạnh sẽ
tồn tại tạểm x* nếu
(2.31)
iềới mọỏi ma trậịnh dươịột ma trận A là
ịnh dương nếu
(2.23)
với véctơ z bất k. Nó là nửịnh dương nếu
(2.32)
với véctơ z bất k. Chúng ta có thể kiểều kiện này bằng việc kiểm tra các trị riêng của ma
trậếu tất cả các trị riêng là dương thì ma trậịnh dương. Nếu tất cả các trị riêng là
không âm thì ma trận là nửịnh dương.
Một ma trậịnh dươều kiện thứ ủ ể tồn tại mộểm cực tiểu mạnh. Nó
không phải là mộều kiện cần. Một cực tiểu vẩn có thể mạnh nếu số hạng thứ 2 của chuổi Taylor
bằng 0, nhưng số hạng thứ 3 là dương. Vì thế ều kiện cần thứ 2 cho một cực tiểu mạnh là ma trận
Hessian nửịnh dương.
Vậy có thể kết luậều kiện cần cho x* là cực tiểu mạnh hoặc yếu của F(x) là:
và nửịnh dương (2.33)
iều kiệủ cho x* là mộiểm cực tiểu mạnh của F(x) là:
ịnh dương (2.34)
2.1.6. Hàm bậc hai
Chúng ta thấy rằng một dạng hàm phổ biến củặc trưng thực hiệạng hàm bậều này
ởi vì hàm bậc 2 xuất hiện trong nhiều ứng dụng, nhưất nhiều hàm có thể ược xấp
xỉ bởi hàm bậc 2 trong lân cận nhỏặc biệểm gần cực tiểịa phương. Với lý do này chúng
tôi muốn trình bày một số ặc trưng của hàm bậc 2.
Dạng tổng quát của một hàm bậc 2 là
(2.35)
ậối xứng. (Nếu ma trậối xứng chúng ta có thể chuyển về dạối
xứng)
ể tìm gradient của hàm này, chúng ta sẽ sử dụặc trưng sau của gradient:
(2.36)
ột véctơ hằng số và
(vớối xứng) (2.37)
Chúng ta có thể tính gradient của hàm F(x):
(2.38)
và tương tự chúng ta có thể thấy ma trận Hessian là
(2.39)
Tất cả ạo hàm bậc cao hơn của hàm bậều bằng 0. Vì thế 3 số hạầu của chuỗi Taylor mở
rộng (trong công thức (2.22)) cho ta một biểu diễn chính xác của hàm này. Chúng ta có thể nói rằng tất
cả các hàm toán học có ứng xử bậc hai trong một lân cận nhỏ.
Chúng ta sẽ xem xét dạng tổng quát của hàm bậc 2. Chúng ta có thể nói nhiều về dạng của hàm bằng
cách quan sát các trị riêng và véctơ tơ riêng của ma trận Hessian. Xét một hàm bậc 2 có mộểm ổn
ịnh ở gốc và giá trị của nó bằng 0:
(2.40)
Dạng của hàm bậc 2 này có thể thấy rõ hơn nếu chúng ta thực hiện mộổi cơ sở. Chúng ta
muốn sử dụng véctơ riêng của ma trận Hessian A như là các véctơ cơ sở mớối xứng, các
véctơ riêng của nó sẽ là trực giao lẫềếu chúng ta tạo một ma trận với các
véctơ riêng tương ứng là các cột, sẽ là
(2.41)
ảo của ma trận sẽ giống với ma trận chuyển vị
(2.42)
(giả sử rằẩn hóa các véctơ riêng)
Nếu chúng ta thực hiện mộổi cơ sở, các véctơ riêng là các véctơ cơ sở, ma trận A mới sẽ là
(2.43)
ị riêng của A. Chúng ta có thể viết công thức này dưới dạng
(2.44)
Chúng ta sử dụng khái niệm hướạể giảật lý của các trị riêng và véctơ riêng
của A, và giảịnh dạng của bề mặt của hàm bậc 2.