Luận án Mạng nơron và quá trình học của mạng nơron
2013
Luận án Tiến sĩ Kỹ thuật
MỤC LỤC
MỞ ĐẦU............................................................................................................................... 7
1.1.1. Mạng nơron và các phƣơng pháp học ......................................................................... 12
1.1.2. Đánh giá các nhân tố của quá trình học....................................................................... 13
1.1.2.1. Khởi tạo các trọng số ................................................................................................ 13
1.1.2.2. Bước học α .............................................................................................................. 13
1.1.2.3. Hằng số quán tính .................................................................................................... 14
14
1.2.1. Nhận dạng hệ thống .................................................................................................... 14
1.2.2. Nhận dạng hệ thống sử dụng mạng nơron................................................................... 16
1.3. Mặt lỗi đặc biệt khi luyện mạng nơron.................................................................... 19
1.3.1. Mặt lỗi đặc biệt khi luyện mạng nơron ....................................................................... 19
1.3.2. Ví dụ về bài toán dẫn đến mặt lỗi đặc biệt ................................................................... 20
22
1.4.1. Ví dụ với mạng nơron có mặt lỗi bình thƣờng ............................................................ 22
1.4.2. Ví dụ với mạng nơron có mặt lỗi đặc biệt .................................................................... 25
26
1.5.3. Bàn luận ...................................................................................................................... 37
1.6. Kết luận chƣơng 1....................................................................................................... 38
............................................................................................................................................. 40
2.1. Thuật toán vƣợt khe .................................................................................................. 40
2.1.1. Đặt vấn đề .................................................................................................................. 40
2.1.2. Tính hội tụ và điều kiện tối ƣu..................................................................................... 41
2.1.3. Thuật toán vƣợt khe.................................................................................................... 46
2.1.3.1. Giới thiệu ................................................................................................................. 47
2.1.3.2. Nguyên lý vượt khe.................................................................................................... 48
1
2013
Luận án Tiến sĩ Kỹ thuật
2.1.3.3. Xác định bước vượt khe............................................................................................. 51
2.1.3.4. Ví dụ ........................................................................................................................ 54
2.3 Minh họa thuật toán .................................................................................................... 58
2.3.1. Công tác chuẩn bị........................................................................................................ 58
2.3.1.1. Điều chỉnh trọng số lớp ra ........................................................................................ 59
2.3.1.2. Điều chỉnh trọng số lớp ẩn......................................................................................... 60
2.3.2. Cấu trúc mạng............................................................................................................. 62
2.3.3. Các thƣ viện và hàm mạng .......................................................................................... 64
2.3.3.1. Thư viện ................................................................................................................... 64
2.3.3.2. Hàm khởi tạo trọng số ............................................................................................... 66
2.3.3.3. Thủ tục tính bước học vượt khe ................................................................................ 67
2.3.3.4. Thủ tục huấn luyện mạng, HUANLUYENVUOTKHE() ............................................ 69
2.3.4. Kết quả chạy chƣơng trình và so sánh ........................................................................ 69
2.3.4.1. Chạy chương trình ................................................................................................... 69
2.3.4.2. So sánh các phương án.............................................................................................. 73
2.4. Kết luận chƣơng 2....................................................................................................... 76
TOÁN VƢỢT KHE ĐỂ CẢI TIẾN QUÁ TRÌNH HỌC CỦA MẠNG NƠRON MLP
CÓ MẶT LỖI ĐẶC BIỆT ................................................................................................ 77
3.1. Đặt vấn đề ................................................................................................................... 77
nguyên thủy với các bộ khởi tạo trọng số ban đầu khác nhau .............................................. 77
trình luyện mạng nơron ................................................................................................... 83
3.2.1. Đặt vấn đề ................................................................................................................... 83
3.2.2. Thuật toán .................................................................................................................. 87
trình luyện mạng nơron vào bài toán nhận dạng ........................................................... 91
3.4. Kết luận chƣơng 3...................................................................................................... 94
2
2013
Luận án Tiến sĩ Kỹ thuật
CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ ............................................................................... 99
TÀI LIỆU THAM KHẢO............................................................................................... 100
PHỤ LỤC 1....................................................................................................................... 106
3
2013
Luận án Tiến sĩ Kỹ thuật
DANH MỤC BẢNG BIỂU, HÌNH VẼ
Bảng 3.4. So sánh GA và BP với sai số là 0.1 .....................................................85
Hình 1.2: Mô hình nhận dạng cơ bản..................................................................18
Hình 1.3. Mặt sai số dạng lòng khe .....................................................................19
Hình 1.4: Kỷ nguyên luyện mạng ví dụ 1.............................................................24
nhau (traingd, traingdm, traindx, trainda) ..........................................................26
Hình 2.2: Hàm khe ...............................................................................................48
Hình 2.3: Xác định bước vượt khe v ..................................................................50
Hình 2.5: Bước lặp k = 1 .....................................................................................55
MLP......................................................................................................................90
4
2013
Luận án Tiến sĩ Kỹ thuật
CÁC TỪ VIẾT TẮT
ADLINE
ANN
BP
ADAptive Linear Neural, mạng tuyến tính thích nghi đơn lớp
Artificial Neural Network, mạng nơron nhân tạo
BackPropagation, lan truyền ngƣợc
BPTT
LDDN
LMS
BackPropagation -Through-Time, lan truyền ngƣợc xuyên tâm
Layered Digital Dynamic Network, mạng nơron động
Least Mean Square, trung bình bình phƣơng nhỏ nhất
Neural NetworkS, mạng nơron
NNs
RTRL
SDBP
Real-Time Recurrent Learning, thuật học hồi qui thời gian thực
Steepest Descent BackPropagation, kỹ thuật lan truyền ngƣợc
giảm dốc nhất
OBP
Optical BackPropagation, kỹ thuật lan truyền ngƣợc “tốc độ
ánh sáng”
VLBP
Variable Learning rate BackPropagation algorithm, kỹ thuật
lan truyền ngƣợc với tốc độ học thay đổi.
MLP
GA
MultiLayer Perceptron, mạng truyền thẳng nhiều lớp
Genetic Algorithms, giải thuật di truyền
5
2013
Luận án Tiến sĩ Kỹ thuật
LỜI CAM ĐOAN
Tôi xin cam đoan luận án này là công trình nghiên cứu khoa học của tôi và không
trùng lặp với bất cứ công trình khoa học nào khác. Các số liệu trình bày trong luận
án đã đƣợc kiểm tra kỹ và phản ánh hoàn toàn trung thực. Các kết quả nghiên cứu
do tác giả đề xuất chƣa từng đƣợc công bố trên bất kỳ tạp chí nào đến thời điểm này
ngoài những công trình của tác giả.
Ngày 14 tháng 10 năm 2013
Tác giả luận án
Nguyễn Thị Thanh Nga
6
2013
Luận án Tiến sĩ Kỹ thuật
MỞ ĐẦU
Trong rất nhiều lĩnh vực nhƣ điều khiển, tự động hóa, công nghệ thông tin…,
nhận dạng đƣợc đối tƣợng là vấn đề mấu chốt quyết định sự thành công của bài
toán. Phần lớn các đối tƣợng trong thực tế đều là phi tuyến với độ phi tuyến khác
nhau.
Mạng nơron có khả năng xấp xỉ các hàm phi tuyến một cách đầy đủ và chính
xác, nó đƣợc sử dụng tốt cho các mô hình động học phi tuyến. Điều quan trọng là
thuật lan truyền ngƣợc tĩnh và động của mạng nơron đƣợc sử dụng để hiệu chỉnh
các tham số trong quá trình nhận dạng. Cơ sở toán học của việc khẳng định rằng
mạng nơron là công cụ xấp xỉ vạn năng các hàm số liên tục dựa trên các định lý
Stone – Weierstrass và Kolmogorov[15].
Việc sử dụng định lý Stone – Weierstrass để chứng minh khả năng xấp xỉ
của mạng noron đã đƣợc các tác giả Hornik et al., Funahashi, Cotter, Blum đƣa ra
từ năm 1989. Các mạng nơron thỏa mãn định lý Stone – Weierstrass có thể kể đến
là mạng lƣợng giác, mạng hai lớp với hàm kích hoạt sigmoid, mạng hai lớp với hàm
kích hoạt McCulloch – Pitts(MC - P) và mạng với hàm cơ sở xuyên tâm(RBF)[16],
[17], [18], [19].
Việc sử dụng định lý Kolmogorov để biểu diễn chính xác hàm liên tục và
đƣa ra sơ đồ mạng nơron tƣơng ứng đã đƣợc Hecht - Nielsen và Lorentz công
bố[20], [21], [22].
Mạng nơron là một trong những công cụ nhận dạng tốt nhất vì các đặc trƣng
sau: Khả năng học từ kinh nghiệm (khả năng đƣợc huấn luyện), khả năng xử lý
song song với tốc độ xử lý nhanh, khả năng học thích nghi, khả năng khái quát hoá
cho các đầu vào không đƣợc huấn luyện, ví dụ dựa vào cách học mạng có thể sẽ tiên
đoán đầu ra từ đầu vào không biết trƣớc [23], [24].
Hiện nay, một công cụ phần mềm đƣợc ứng dụng rất hiệu quả trong các lĩnh
vực về điều khiển, tự động hóa, công nghệ thông tin đó là Matlab. Khi sử dụng bộ
công cụ Neural Network Toolbox, chúng ta có thể luyện mạng để nhận dạng đƣợc
một số đối tƣợng tuyến tính và phi tuyến. Bộ công cụ cung cấp cho chúng ta một số
7
2013
Luận án Tiến sĩ Kỹ thuật
phƣơng pháp luyện mạng nơron, trong đó kỹ thuật lan truyền ngƣợc đƣợc ứng dụng
rộng rãi hơn cả. Ở đó chúng ta có thể lựa chọn các bƣớc học khác nhau phục vụ cho
quá trình luyện mạng nhƣ: Traingd (Basic gradient descent), Traingdm (Gradient
descent with momentum), Traingdx (Adaptive learning rate), Trainbfg (BFGS
quasi- Newton)...
Một nhƣợc điểm khi dùng mạng nơron là chƣa có phƣơng pháp luận chung khi
thiết kế cấu trúc mạng cho các bài toán nhận dạng và điều khiển mà phải cần tới
kiến thức của chuyên gia. Mặt khác khi xấp xỉ mạng nơron với một hệ phi tuyến sẽ
khó khăn khi luyện mạng vì có thể không tìm đƣợc điểm tối ƣu toàn cục... Vậy, tồn
tại lớn nhất gặp phải là tìm nghiệm tối ƣu toàn cục, đặc biệt áp dụng cho các bài
toán lớn, các hệ thống điều khiển quá trình.
Giải thuật di truyền (Genetic Algorithms-GA) đƣợc biết đến nhƣ một giải thuật
tìm kiếm dựa trên học thuyết về chọn lọc tự nhiên và nó cho phép ta đạt đƣợc tới
cực trị toàn cục. Thực ra, GA thuộc lớp các thuật toán xác suất, nhƣng lại rất khác
những thuật toán ngẫu nhiên vì chúng kết hợp các phần tử tìm kiếm trực tiếp và
ngẫu nhiên. Khác biệt quan trọng giữa phƣơng pháp tìm kiếm của GA và các
phƣơng pháp tìm kiếm khác là GA duy trì và xử lý một tập các lời giải (quần thể) -
tất cả các phƣơng pháp khác chỉ xử lý một điểm trong không gian tìm kiếm. Chính
vì thế, GA mạnh hơn các phƣơng pháp tìm kiếm hiện có rất nhiều. [25], [26].
Hiện nay, việc nghiên cứu các thuật toán tìm nghiệm tối ƣu toàn cục khi luyện
mạng nơron đã đƣợc một số tác giả nghiên cứu áp dụng [27], [28], [29]. Tuy nhiên
khi sử dụng mạng nơron để xấp xỉ một số đối tƣợng phi tuyến mà mặt lỗi sinh ra có
dạng lòng khe [28], việc huấn luyện mạng gặp rất nhiều khó khăn.
Nội dung đề tài sẽ đi nghiên cứu một thuật toán tìm điểm tối ƣu toàn cục trong
quá trình luyện mạng nơron bằng thuật toán vƣợt khe có sự kết hợp với giải thuật di
truyền.
Mục tiêu
- Đề xuất mô hình kết hợp thuật toán vƣợt khe và giải thuật di truyền để huấn
luyện mạng nơron.
8
2013
Luận án Tiến sĩ Kỹ thuật
- Xây dựng bộ công cụ phần mềm để luyện mạng nơron cho một số bài toán
có mặt lỗi đặc biệt, làm cơ sở bổ sung vào Neural Toolbox Matlab.
Nội dung chính
- Nghiên cứu lí thuyết về mạng nơron và quá trình học của mạng nơron.
- Nghiên cứu lí thuyết về thuật toán vƣợt khe và xây dựng thuật toán tính bƣớc
học vƣợt khe.
- Xây dựng thuật toán huấn luyện mạng nơron bằng kỹ thuật lan truyền ngƣợc
kết hợp với thuật toán vƣợt khe.
- Đề xuất thuật toán huấn luyện mạng nơron bằng kỹ thuật lan truyền ngƣợc có
sử dụng giải thuật di truyền kết hợp với thuật toán vƣợt khe.
- Viết và cài đặt chƣơng trình huấn luyện mạng nơron trên C++.
- Viết và cài đặt chƣơng trình huấn luyện mạng nơron trên Matlab.
Phƣơng pháp nghiên cứu
Sử dụng cả nghiên cứu lý thuyết, thực nghiệm mô phỏng trên máy tính.
*. Nghiên cứu lý thuyết:
- Tập trung nghiên cứu vấn đề mạng nơron là gì và ứng dụng của mạng nơron
trong nhận dạng. Nghiên cứu những khó khăn tồn tại khi luyện mạng nơron với mặt
lỗi đặc biệt có dạng lòng khe.
- Nghiên cứu giải bài toán tối ƣu tĩnh mà hàm mục tiêu có dạng đặc biệt –
dạng lòng khe. Với hàm mục tiêu này bằng các phƣơng pháp thông thƣờng, ví dụ
nhƣ phƣơng pháp gradient không tìm đƣợc cực tiểu, còn thuật toán vƣợt khe có thể
vƣợt qua đƣợc lòng khe để đến điểm tối ƣu.
- Nghiên cứu sự ảnh hƣởng giá trị ban đầu khi giải bài toán tối ƣu tĩnh bằng
phƣơng pháp số, đặc biệt khi hàm mục tiêu có dạng lòng khe. Giá trị ban đầu ảnh
hƣởng lớn tới tính hội tụ và thời gian tính nghiệm tối ƣu.
- Nghiên cứu giải thuật di truyền, và ứng dụng của nó trong quá trình tìm
nghiệm tối ƣu toàn cục.
9
2013
Luận án Tiến sĩ Kỹ thuật
- Đề xuất mô hình kết hợp thuật toán vƣợt khe và giải thuật di truyền để luyện
mạng nơron có mặt lỗi đặc biệt.
Cơ sở toán học chính gồm lý thuyết về khả năng xấp xỉ vạn năng của mạng
nơron với đối tƣợng phi tuyến có hàm số liên tục là dựa trên các định lý Stone –
Weierstrass và Kolmogorov; khả năng tìm ra đƣợc vùng chứa cực trị toàn cục của
giải thuật di truyền nhờ cơ chế tìm kiếm trải rộng, ngẫu nghiên và mang tính chọn
lọc tự nhiên; khả năng tìm đến đƣợc cực trị toàn cục của thuật toán tối ƣu vƣợt khe
khi hàm phi tuyến có dạng khe.
*. Nghiên cứu thực nghiệm: Mô phỏng trên máy tính bằng cách sử dụng:
- Bộ công cụ sẵn có trong Toolbox của Matlab.
- Viết chƣơng trình trên C++.
- Viết chƣơng trình trên Matlab
để thực hiện quá trình luyện mạng nơron với mặt lỗi dạng đặc biệt. Đánh giá sự hội
tụ để minh chứng cho những kết luận trong phần lý thuyết.
Bố cục của luận án
Luận án chia làm 3 chƣơng
Chƣơng 1 trình bày tổng quan về mạng nơron, quá trình học của mạng
nơron, đánh giá các nhân tố của quá trình học. Giới thiệu về mặt lỗi đặc biệt trong
quá trình luyện mạng nơron, mặt lỗi có dạng lòng khe, những bài toán dẫn đến mặt
lỗi có dạng lòng khe. Sử dụng bộ công cụ Neural Network Toolbox để nhận dạng
một số đối tƣợng có hàm mục tiêu dạng thông thƣờng và dạng đặc biệt. Tóm tắt về
tình hình nghiên cứu trong và ngoài nƣớc, từ đó làm xuất phát điểm cho nội dung
nghiên cứu của các chƣơng tiếp theo.
Chƣơng 2 trình bày một thuật toán tối ƣu áp dụng cho các hàm mục tiêu
dạng khe gọi là thuật toán vƣợt khe. Để giải quyết bài toán nhận dạng đối tƣợng phi
tuyến mà sinh ra hàm mục tiêu dạng khe, tác giả đề xuất việc áp dụng thuật toán
vƣợt khe tính bƣớc học vƣợt khe trong quá trình học của mạng nơron. Để minh
chứng cho hiệu quả của bƣớc học vƣợt khe, tác giả lấy một ví dụ về nhận dạng chữ
10
2013
Luận án Tiến sĩ Kỹ thuật
viết tay và chọn hàm kích hoạt là hàm sigmoid do đặc điểm hàm này sinh ra mặt sai
số có dạng lòng khe. Ví dụ sẽ đƣợc luyện mạng với các phƣơng pháp cập nhật bƣớc
học khác nhau. Cuối chƣơng sẽ có đánh giá hiệu quả của các phƣơng pháp này.
Chƣơng 3, tác giả đƣa ra các ví dụ về luyện mạng nơron trên những đối
tƣợng có mức độ phi tuyến khác nhau với bộ trọng số khởi tạo khác nhau để thấy sự
ảnh hƣởng của bộ khởi tạo trọng số đến kết quả luyện mạng, từ đó đề xuất mô hình
kết hợp giải thuật di truyền và thuật toán vƣợt khe trong quá trình luyện mạng
nơron. Trong mô hình, giải thuật di truyền làm nhiệm vụ tìm kiếm bộ trọng số khởi
tạo tối ƣu, khoanh vùng chứa cực trị toàn cục để tiến hành luyện mạng nơron theo
kỹ thuật lan truyền ngƣợc có sử dụng bƣớc học vƣợt khe đã đề xuất từ chƣơng 2.
11
2013
Luận án Tiến sĩ Kỹ thuật
CHƢƠNG 1
MẠNG NƠRON VÀ QUÁ TRÌNH HỌC CỦA MẠNG NƠRON
Tóm tắt: Trong rất nhiều lĩnh vực như điều khiển, tự động hóa, công nghệ
thông tin…, vấn đề nhận dạng được đối tượng là vấn đề mấu chốt quyết định sự
thành công của bài toán. Mạng nơron có khả năng xấp xỉ các hàm phi tuyến một
cách đầy đủ và chính xác, nó được sử dụng tốt cho các mô hình động học phi tuyến.
Tuy nhiên trong quá trình học của mạng nơron, một số nhân tố sẽ có ảnh hưởng
mạnh mẽ đến độ hội tụ của bài toán, đặc biệt khi bài toán có dạng lòng khe.
Chương 1 sẽ đưa ra mặt lỗi đặc biệt khi luyện mạng nơron và có những đánh giá về
sự ảnh hưởng của các nhân tố trong quá trình luyện mạng đến kết quả cuối cùng
của bài toán nhận dạng thông qua một số ví dụ đặc trưng. Từ đó làm xuất phát
điểm cho hướng đi của luận án.
1.1. Giới thiệu về mạng nơron và quá trình học của mạng nơron
1.1.1. Mạng nơron và các phƣơng pháp học
Mạng nơron nhân tạo, Artificial Neural Network (ANN) gọi tắt là mạng
nơron, neural network, là một mô hình xử lý thông tin phỏng theo cách thức xử lý
thông tin của các hệ nơron sinh học. Nó đƣợc tạo lên từ một số lƣợng lớn các phần
tử (gọi là phần tử xử lý hay nơron) kết nối với nhau thông qua các liên kết (gọi là
trọng số liên kết) làm việc nhƣ một thể thống nhất để giải quyết một vấn đề cụ thể.
Một mạng nơron nhân tạo đƣợc cấu hình cho một ứng dụng cụ thể (nhận
dạng mẫu, phân loại dữ liệu,...) thông qua một quá trình học từ tập các mẫu huấn
luyện. Về bản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các
nơron sao cho giá trị hàm lỗi là nhỏ nhất.
Có ba phƣơng pháp học phổ biến là học có giám sát (supervised learning),
học không giám sát (unsupervised learning) và học tăng cƣờng (Reinforcement
learning). Học có giám sát là phƣơng pháp học đƣợc sử dụng phổ biến nhất và
trong đó tiêu biểu nhất là kỹ thuật lan truyền ngƣợc.
12
2013
Luận án Tiến sĩ Kỹ thuật
Những kiến thức cơ sở về mạng nơron, quá trình học của mạng nơron, kỹ
thuật lan truyền ngƣợc sẽ đƣợc tác giả giới thiệu trong phụ lục 1.
Ở đây, tác giả xin đƣa ra một số đánh giá về các nhân tố trong quá trình học
của mạng nơron.
1.1.2. Đánh giá các nhân tố của quá trình học
1.1.2.1.
Khởi tạo các trọng số
Kỹ thuật lan truyền ngƣợc hội tụ đến một giải pháp mà nó tối thiểu hoá đƣợc
sai số trung bình bình phƣơng vì cách thức hiệu chỉnh trọng số và hệ số bias của
thuật toán là ngƣợc hƣớng với vectơ Gradient của hàm sai số trung bình bình
phƣơng đối với trọng số. Tuy nhiên, đối với mạng MLP thì hàm sai số trung bình
bình phƣơng thƣờng phức tạp và có nhiều cực trị cục bộ, vì thế các phép lặp huấn
luyện mạng có thể chỉ đạt đƣợc đến cực trị cục bộ của hàm sai số trung bình bình
phƣơng mà không đạt đến đƣợc cực trị tổng thể. Các giá trị khởi tạo của các trọng
số ảnh hƣởng rất mạnh đến lời giải cuối cùng. Các trọng số này thƣờng đƣợc khởi
tạo bằng những số ngẫu nhiên nhỏ. Việc khởi tạo tất cả các trọng số bằng nhau sẽ
làm cho mạng học không tốt. Nếu các trọng số đƣợc khởi tạo với giá trị lớn thì ngay
từ đầu tổng tín hiệu vào đã có giá trị tuyệt đối lớn và làm cho hàm sigmoid chỉ đạt 2
giá trị 0 và 1. Điều này làm cho hệ thống sẽ bị tắc ngay tại một cực tiểu cục bộ hoặc
tại một vùng bằng phẳng nào đó gần ngay tại điểm xuất phát. Giá trị khởi tạo ban
đầu của các trọng số trên lớp thứ l của mạng sẽ đƣợc chọn ngẫu nhiên nhỏ trong
khoảng [-1/n, 1/n], trong đó n là số trọng số nối tới lớp l. Do bản chất của giải thuật
học lan truyền ngƣợc sai số là phƣơng pháp giảm độ lệch gradient nên việc khởi tạo
các giá trị ban đầu của các trọng số các giá trị nhỏ ngẫu nhiên sẽ làm cho mạng hội
tụ về các giá trị cực tiểu khác nhau. Nếu gặp may thì mạng sẽ hội tụ đƣợc về giá trị
cực tiểu tổng thể.
1.1.2.2.
Bước học α
Một nhân tố khác ảnh hƣởng đến hiệu lực và độ hội tụ của giải thuật lan
truyền ngƣợc sai số là bƣớc học α. Không có một giá trị xác định nào cho các bài
toán khác nhau. Với mỗi bài toán, bƣớc học thƣờng đƣợc lựa chọn bằng thực
nghiệm theo phƣơng pháp thử và sai. Giá trị α lớn làm tăng tốc quá trình hội tụ.
13
2013
Luận án Tiến sĩ Kỹ thuật
Điều này không phải lúc nào cũng có lợi vì nếu ngay từ đầu ta đã cho là mạng
nhanh hội tụ thì rất có thể mạng sẽ hội tụ sớm ngay tại một cực tiểu địa phƣơng gần
nhất mà không đạt đƣợc độ sai số nhƣ mong muốn. Tuy nhiên, đặt giá trị bƣớc học
quá nhỏ thì mạng sẽ hội tụ rất chậm, thậm chí mạng có thể vƣợt đƣợc qua các cực
tiểu cục bộ và vì vậy dẫn đến học mãi mà không hội tụ. Do vậy, việc chọn hằng số
học ban đầu là rất quan trọng. Với mỗi bài toán ta lại có phƣơng án chọn hệ số học
khác nhau. Nhƣ vậy, khi một quá trình huấn luyện theo kỹ thuật lan truyền ngƣợc
hội tụ, ta chƣa thể khẳng định đƣợc nó đã hội tụ đến phƣơng án tối ƣu. Ta cần phải
thử với một số điều kiện ban đầu để đảm bảo thu đƣợc phƣơng án tối ƣu.
1.1.2.3.
Hằng số quán tính
Tốc độ học của giải thuật làm truyền ngƣợc sai số có thể dao động khi hằng
số học lớn. Một phƣơng pháp thƣờng dùng cho phép sử dụng hằng số học lớn là
thêm thành phần quán tính vào các phƣơng trình hiệu chỉnh các trọng số. Ngoài ra,
hằng số quán tính ngăn cản sự thay đổi đột ngột của các trọng số theo hƣớng khác
với hƣớng mà lời giải đang di chuyển đến. Mặt trái của việc sử dụng thành phần
quán tính là chúng ta phải tăng đáng kể bộ nhớ của máy tính gần nhƣ gấp đôi để lƣu
trữ các giá trị hiệu chỉnh ở chu kỳ trƣớc.
1.2. Nhận dạng hệ thống sử dụng mạng nơron
1.2.1. Nhận dạng hệ thống
1.2.1.1. Tại sao phải nhận dạng
Bài toán nhận dạng là một vấn đề đặt lên hàng đầu trong nhiều các lĩnh vực khác
nhau nhƣ: điện tử y sinh, điện tử viễn thông, hệ thống điện, tự động hóa và điều
khiển… Ví dụ nhƣ: nhận dạng vân tay, nhận dạng ký tự, ảnh, tiếng nói, phát hiện và
chẩn đoán bệnh... Xét trong lĩnh vực tự động hóa và điều khiển, nhận dạng hệ thống
là một trong những công việc đầu tiên phải thực hiện, nó quyết định chất lƣợng và
hiệu quả của công việc điều khiển hệ thống. Tuy ra đời muộn nhƣng nhận dạng đã
phát triển rất nhanh và đã có những thành tựu vƣợt bậc. Nguyên nhân của sự phát
triển vƣợt bậc đó một phần từ yêu cầu thực tế, song có lẽ phần chính là nhờ có
14
2013
Luận án Tiến sĩ Kỹ thuật
những hỗ trợ tích cực của các ngành khoa học có liên quan nhƣ tin học, các công cụ
tính toán mềm nói chung và mạng nơron nói riêng…
Ví dụ 1: Thiết kế rô bốt giúp ngƣời khiếm thị trong học tập và sinh hoạt.
Hiện nay, robot đƣợc coi nhƣ tâm điểm của cuộc cách mạng lớn sau Internet. Để
thiết kế và chế tạo đƣợc rô bốt, ta cần có các tri thức của toán học, cơ học, vật lý,
điện tử, lý thuyết điều khiển, khoa học tính toán và nhiều tri thức khác. Tại Việt
Nam, nghiên cứu phát triển rô bốt đã có những bƣớc tiến đáng kể trong thời gian
vừa qua. Nhiều đơn vị trên toàn quốc thực hiện các nghiên cứu cơ bản và nghiên
cứu ứng dụng về rô bốt nhƣ Trung tâm Tự động hoá, Đại học Bách Khoa Hà Nội;
Viện Điện tử, Tin học, Tự động hoá thuộc Bộ Công thƣơng; Đại học Bách khoa
TP.HCM; Viện Khoa học và Công nghệ quân sự, Học viện Kỹ thuật Quân sự, Viện
Cơ học; Viện Công nghệ thông tin thuộc Viện KHCNVN. Các nghiên cứu hiện nay
tập trung nhiều vào vấn đề xử lý ngôn ngữ tự nhiên, nhận dạng và tổng hợp tiếng
nói, chữ viết tay đặc biệt là tiếng Việt.
Ví dụ 2: Xét bài toán điều khiển theo nguyên tắc phản hồi nhƣ trên hình 1.1:
Đối tƣợng
điều khiển
w(t)
e(t)
y(t)
u(t)
Bộ điều khiển
-
Hình 1.1: Điều khiển theo nguyên tắc phản hồi đầu ra
Muốn thiết kế đƣợc bộ điều khiển hệ kín cho đối tƣợng có đƣợc chất lƣợng
nhƣ mong muốn thì phải hiểu biết về đối tƣợng, tức là cần phải có một mô hình toán
học mô tả đối tƣợng. Không thể điều khiển đối tƣợng khi không hiểu biết hoặc hiểu
sai lệch về nó. Kết quả thiết kế bộ điều khiển phụ thuộc rất nhiều vào mô hình mô tả
đối tƣợng. Mô hình càng chính xác, chất lƣợng của việc điều khiển càng cao.
Nhƣ vậy, nhận dạng là cần thiết cho việc ra quyết định tự động và hỗ trợ con
ngƣời ra quyết định.
Việc xây dựng mô hình cho đối tƣợng cần nhận dạng đƣợc gọi là mô hình hóa.
Ngƣời ta thƣờng phân chia các phƣơng pháp mô hình hóa ra làm hai loại:
15
2013
Luận án Tiến sĩ Kỹ thuật
- Phƣơng pháp lý thuyết.
- Phƣơng pháp thực nghiệm.
Phƣơng pháp lý thuyết là phƣơng pháp thiết lập mô hình dựa trên các định luật
có sẵn về quan hệ vật lý bên trong và quan hệ giao tiếp với môi trƣờng bên ngoài
của đối tƣợng. Các quan hệ này đƣợc mô tả theo quy luật lý – hóa, quy luật cân
bằng, ... dƣới dạng những phƣơng trình toán học.
Trong các trƣờng hợp mà sự hiểu biết về những quy luật giao tiếp bên trong
đối tƣợng với môi trƣờng bên ngoài không đƣợc đầy đủ để có thể xây dựng đƣợc
một mô hình hoàn chỉnh, nhƣng ít nhất từ đó có thể cho biết các thông tin ban đầu
về dạng mô hình thì tiếp theo ngƣời ta phải áp dụng phƣơng pháp thực nghiệm để
hoàn thiện nốt việc xây dựng mô hình đối tƣợng trên cơ sở quan sát tín hiệu vào u(t)
và ra y(t) của đối tƣợng sao cho mô hình thu đƣợc bằng phƣơng pháp thực nghiệm
thỏa mãn các yêu cầu của phƣơng pháp lý thuyết đề ra. Phƣơng pháp thực nghiệm
đó đƣợc gọi là nhận dạng hệ thống.
1.2.2. Nhận dạng hệ thống sử dụng mạng nơron
1.2.2.1. Khả năng sử dụng mạng nơron trong nhận dạng
Xét trƣờng hợp đối tƣợng phi tuyến có độ phức tạp cao, nếu sử dụng phƣơng
pháp giải tích thông thƣờng để nhận dạng sẽ rất khó khăn, thậm chí không thực hiện
đƣợc do sự hiểu biết nghèo nàn về đối tƣợng. Vì vậy các nhà khoa học đã đƣa ra ý
tƣởng là sử dụng công cụ tính toán mềm nhƣ hệ mờ, mạng nơron, đại số gia tử để
xấp xỉ - chính là nhận dạng đối tƣợng. Các tài liệu [15], [23], [24] chỉ ra rằng, mạng
nơron là một trong những công cụ hữu hiệu để nhận dạng mô hình đối tƣợng. Bằng
phƣơng pháp này ta không biết đƣợc mô hình toán thực sự của đối tƣợng nhƣng
hoàn toàn có thể dùng kết quả xấp xỉ để thay thế đối tƣợng.
Vì tính phi tuyến của các mạng nơron (hàm kích hoạt phi tuyến), chúng đƣợc
dùng để mô tả các hệ thống phi tuyến phức tạp. Cybenko đã chứng minh rằng một
hàm liên tục có thể xấp xỉ tuỳ ý bằng một mạng truyền thẳng với chỉ một lớp ẩn.
Mạng nơron là một trong những công cụ nhận dạng tốt nhất vì các đặc trƣng
sau: Khả năng học từ kinh nghiệm (khả năng đƣợc huấn luyện), khả năng khái quát
16
2013
Luận án Tiến sĩ Kỹ thuật
hoá cho các đầu vào không đƣợc huấn luyện, ví dụ dựa vào cách học mạng có thể sẽ
tiên đoán đầu ra từ đầu vào không biết trƣớc.
Mạng nơron có khả năng xấp xỉ các hàm phi tuyến một cách đầy đủ và chính
xác, nó đƣợc sử dụng tốt cho các mô hình động học phi tuyến. Điều quan trọng
đƣợc sử dụng là thuật truyền ngƣợc tĩnh và động của mạng nơron, nó đƣợc sử dụng
để hiệu chỉnh các tham số trong quá trình nhận dạng.
Nền tảng cho tính xấp xỉ hàm của mạng nơron nhiều lớp là định lý
Kolmgorov và định lý Stone – Weierstrass. Các mạng nơron nhân tạo đƣa ra những
lợi thế qua việc học sử dụng phân loại và xử lý song song, điều này rất phù hợp với
việc dùng trong nhận dạng.
1.2.2.2. Mô hình nhận dạng hệ thống sử dụng mạng nơron
Khi xét một bài toán điều khiển, trƣớc tiên ta cần phải có những hiểu biết về
đối tƣợng: số đầu vào, số đầu ra, các đại lƣợng vật lý vào ra, dải giá trị của chúng,
quy luật thay đổi của các đại lƣợng trong hệ hay mô hình toán học cơ bản của nó,…
Tuy nhiên không phải đối tƣợng nào hay hệ nào cũng cung cấp đƣợc đầy đủ các
thông tin nhƣ trên cũng nhƣ xây dựng đƣợc mô hình thực từ những thông tin ấy.
Việc nhận dạng là việc đầu tiên và quan trọng để việc điều khiển đạt chất lƣợng
mong muốn. Khi thông số của đối tƣợng là cần thiết để việc điều khiển đạt chất
lƣợng mong muốn. Khi thông số của đối tƣợng tự thay đổi trong quá trình làm việc
(đối tƣợng phi tuyến) và có tính động học thì việc nhận dạng theo chúng sẽ phức tạp
hơn nhiều so với đối tƣợng có thông số bất biến.
Nhận dạng thƣờng chia ra làm: nhận dạng mô hình và nhận dạng tham số.
Nhận dạng mô hình là quá trình xác định mô hình của đối tƣợng và thông số
trên cơ sở đầu vào và đầu ra của đối tƣợng.
Mô hình thu đƣợc sau khi nhận dạng gọi là tốt nếu nó thể hiện đƣợc đúng đối
tƣợng. Nhƣ vậy có thể sử dụng mô hình thay cho đối tƣợng để dự báo, kiểm tra và
điều khiển. Mạng nơron đƣợc luyện để mô hình hóa quan hệ vào ra của đối tƣợng.
Nhƣ vậy quy trình nhận dạng mô hình có bản chất là thuật toán luyện mạng.
17
2013
Luận án Tiến sĩ Kỹ thuật
Cấu trúc mạng nơron giải bài toán nhận dạng mô hình rất đa dạng, tùy thuộc vào
từng bài toán cụ thể.
Nhận dạng tham số chính là huấn luyện mạng. Mô hình cơ bản của mạng
nơron đƣợc luyện để mô phỏng hành vi của đối tƣợng giống nhƣ mô hình truyền
thống đƣợc biểu diễn trên Hình 1.2
Đối tƣợng
u
-
ˆ
y
Mạng nơron
Hình 1.2: Mô hình nhận dạng cơ bản
ˆ
Tín hiệu sai số e y y là cơ sở cho quá trình luyện mạng. Mạng nơron ở
đây có thể là mạng nhiều lớp hoặc các dạng khác và có thể sử dụng nhiều thuật
luyện mạng khác nhau.
1.2.2.3. Nhận dạng hệ thống sử dụng mạng nơron
Nhƣ vậy nhận dạng hệ thống cần hai giai đoạn đó là lựa chọn mô hình và tối
ƣu tham số. Đối với mạng nơron dựa vào nhận dạng lựa chọn số nút ẩn, số lớp ẩn
(cấu trúc của mạng) tƣơng đƣơng với mô hình lựa chọn. Mạng có thể đƣợc huấn
luyện theo kiểu giám sát với kỹ thuật lan truyền ngƣợc, dựa vào luật học sai số hiệu
chỉnh. Tín hiệu sai số đƣợc lan truyền ngƣợc qua mạng. Kỹ thuật lan truyền ngƣợc
sử dụng phƣơng pháp giảm gradient để xác định các trọng của mạng vì vậy tƣơng
đƣơng với tối ƣu tham số. Mạng nơron đƣợc huấn luyện để xấp xỉ mối quan hệ giữa
các biến.
Mạng nơron đƣợc huấn luyện để tối thiểu hàm sai số. Mạng đƣợc huấn luyện
để tối thiểu sai số bình phƣơng giữa đầu ra của mạng và đầu vào hệ thống, xác định
một hàm truyền ngƣợc. Trong kiểu nhận dạng này đầu ra của mạng hội tụ về đầu
vào hệ sau khi huấn luyện, vì vậy mạng đặc trƣng cho hàm truyền ngƣợc của hệ.
Phƣơng pháp nhận dạng khác cần phải hƣớng đầu ra hệ thống tới đầu ra của mạng.
Trong kiểu này mạng đặc trƣng cho hàm truyền thẳng của hệ thống.
18
2013
Luận án Tiến sĩ Kỹ thuật
Giả sử các hàm phi tuyến để mô tả hệ thuộc lớp hàm đã biết trong phạm vi
quan tâm thì cấu trúc của mô hình nhận dạng phải phù hợp với hệ thống. Với giả
thiết các ma trận trọng của mạng nơron trong mô hình nhận dạng tồn tại, cùng các
điều kiện ban đầu thì cả hệ thống và mô hình có cùng lƣợng ra với bất kỳ lƣợng
vào xác định. Do đó quá trình nhận dạng thực chất là điều chỉnh tham số của mạng
nơron dựa vào sai lệch giữa các giá trị đầu ra của hệ thống và của mô hình.
1.3. Mặt lỗi đặc biệt khi luyện mạng nơron
1.3.1. Mặt lỗi đặc biệt khi luyện mạng nơron
Trong quá trình nỗ lực thoát ra khỏi các cực tiểu yếu, cực tiểu cục bộ và
những mong muốn giảm chi phí thời gian thực hiện của máy tính khi tìm kiếm
nghiệm tối ƣu thì vấn đề nghiên cứu đặc điểm của các mặt lỗi thƣờng đƣợc chọn
làm xuất phát điểm cho việc cải tiến hay đề xuất các thuật học mới. Khi nói về
mạng nơron thì huấn luyện chất lƣợng mạng đƣợc nhắc đến nhiều hơn cả (loại học
có giám sát). Điều này liên quan đến hàm chất lƣợng của mạng và dẫn đến khái
niệm mặt chất lƣợng mạng. Đôi khi chúng ta còn gọi mặt chất lƣợng bằng những
thuật ngữ khác: mặt sai số, mặt thực thi, mặt lỗi.
Hình 1.3 mô tả một mặt sai số,
có một vài điều đặc biệt cần chú ý đối
với mặt sai số này đó là độ dốc biến đổi
một cách mạnh mẽ trên không gian
tham số. Vì lý do đó, nó sẽ khó để mà
lựa chọn một tốc độ học phù hợp cho
thuật toán giảm dốc nhất. Trong một vài
vùng của mặt sai số thì rất phẳng, cho
phép tốc độ học lớn, trong khi các vùng
khác độ dốc lớn, yêu cầu một tốc độ
Hình 1.3: Mặt sai số dạng lòng khe
học nhỏ. Có thể ghi nhận rằng có thể sẽ
không đáng ngạc nhiên lắm đối với các
vùng phẳng của mặt sai số bởi một lý do chúng ta dùng hàm truyền sigmoid cho
mạng. Hàm sigmoid rất hay đƣợc sử dụng trong mạng nơron bởi đặc điểm của nó
19
2013
Luận án Tiến sĩ Kỹ thuật
(bị chặn, đơn điệu tăng, khả vi) thích nghi với các kỹ thuật tối ƣu kinh điển, hàm
này có đặc điểm là rất phẳng đối với các đầu vào lớn.
1.3.2. Ví dụ về bài toán dẫn đến mặt lỗi đặc biệt
§Æc ®iÓm khe cña c¸c bµi to¸n tèi u ho¸ trong ngµnh nhiÖt[28]
Do ®Æc thï cña ®èi t îng nhiÖt, c¸c bµi to¸n tèi u ho¸ trong ngµnh nhiÖt th êng cã
hµm môc tiªu lµ phi tuyÕn, kh«ng liªn tôc, kh«ng kh¶ vi, cã tÝnh chÊt khe râ rÖt. Sau
®©y ta xÐt cô thÓ h¬n tÝnh chÊt khe vµ ®é khe cña hµm cùc tiÓu ho¸:
Gi¶ sö J(x) cã ®¹o hµm bËc 2 t¹i x ta cã:
2 J(x)
x1x1
2 J(x)
x1xn
........
2
J(x)
2 J(x)
....
....
....
(1.1)
x x
i
j
nn
2 J(x)
xnx1
2 J(x)
xnxn
........
Ma trËn nµy cßn gäi lµ Hessian: H(x) 2J(x). Gi¶ sö H(x) x¸c ®Þnh d ¬ng vµ cã
c¸c gi¸ trÞ riªng s¾p xÕp theo thø tù gi¶m dÇn: 1(x) 2(x) .... n(x) > 0.
NÕu x¶y ra:
1(x) >> n(x)
(1.2)
th× J(x) sÏ thay ®æi chËm theo 1 h íng nhÊt ®Þnh vµ thay ®æi rÊt nhanh theo h íng
vu«ng gãc víi nã. Khi ®ã c¸c mÆt møc cña hµm sè bÞ kÐo dµi theo h íng thay ®æi
chËm vµ vÏ ra trong mÆt c¾t hai chiÒu h×nh ¶nh 1 khe suèi hÑp n»m gi÷a 2 d·y nói
song song. Tõ ®ã mµ cã tªn lµ hµm khe – hµm cã tÝnh khe râ rÖt.
Møc ®é kÐo dµi c¸c mÆt møc quyÕt ®Þnh ®é khe cña hµm môc tiªu. §Ó râ h¬n
vÒ ®é khe, tr íc hÕt ta xÐt hµm bËc 2:
n
A
J(x) = 0,5x, x + b, x + c, x E .
(1.3)
A
Trong ®ã: – ma trËn x¸c ®Þnh d ¬ng, b – vÐc t¬ h»ng, c – h»ng sè.
A
A
Theo (1.1), Hessian cña (1.3) lµ H(x) = . Gi¶ sö cã c¸c gi¸ trÞ riªng 1
A
2 .... n > 0. §é íc ®Þnh cña hµm bËc 2 ® îc x¸c ®Þnh lµ: ( ) = 1 / n.
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Luận án Mạng nơron và quá trình học của mạng nơron", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- luan_an_mang_noron_va_qua_trinh_hoc_cua_mang_noron.pdf