Nội dung chính của khóa luận là trình bày khảo cứu về mạng Neural RBF để giải quyết bài toán nội suy, xấp xỉ hàm nhiều biến sau đó ứng dụng cơ sở lý thuyết trên để xây dựng phần mềm nhận
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Lê Tiến Mười
MẠNG NEURAL RBF
VÀ ỨNG DỤNG NHẬN DẠNG CHỮ VIẾT TAY
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2009
Trang 2Lê Tiến Mười
MẠNG NEURAL RBF
VÀ ỨNG DỤNG NHẬN DẠNG CHỮ VIẾT TAY
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin Cán bộ hướng dẫn: PGS.TS Hoàng Xuân Huấn
HÀ NỘI - 2009
Trang 3Tôi muốn bày tỏ sự cảm ơn sâu sắc của mình tới thầy Hoàng Xuân Huấn, thuộc
bộ môn Khoa học máy tính, khoa Công nghệ thông tin, trường Đại học Công nghệ, ĐHQGHN Trong thời gian thực hiện khóa luận, thầy đã nhiệt tình hướng dẫn và giúp
đỡ tôi rất nhiều Ngoài thời gian tìm hiểu và cung cấp tài liệu, thầy cũng chỉ ra những vướng mắc trong qua trình làm, giúp đỡ tôi khắc phục để đạt hiệu quả cao hơn Thầy cũng đã tận tình giúp đỡ tôi có một chỗ làm việc yên tĩnh trong suốt quá trình làm khóa luận
Tôi cũng muốn bày tỏ sự cảm ơn của mình tới các các thầy, các cô trong bộ môn, cũng như các thầy, các cô trong khoa, trường đã hết sức tạo điều kiện tốt và giúp
đỡ cho tôi hoàn thành khóa luận của mình
Trang 4Mặc dù đã được nghiên cứu từ rất lâu, nhưng đến nay bài toán nội suy và xấp
xỉ hàm nhiều biến vẫn còn có rất ít công cụ toán học để giải quyết Mạng Neural nhân tạo là một phương pháp hay để giải quyết bài toán nội suy, xấp xỉ hàm nhiều biến Năm 1987 M.J.D Powell đã đưa ra một cách tiếp cận mới để giải quyết bài toán nội suy hàm nhiều biến sử dụng kỹ thuật hàm cơ sở bán kính (Radial Basis Function - RBF), năm 1988 D.S Bromhead và D Lowe đề xuất kiến trúc mạng Neural RBF và
đã trở một công cụ hữu hiệu để giải quyết bài toán nội suy và xấp xỉ hàm nhiều biến(xem [11])
Nội dung chính của khóa luận là trình bày khảo cứu về mạng Neural RBF để giải quyết bài toán nội suy, xấp xỉ hàm nhiều biến sau đó ứng dụng cơ sở lý thuyết trên
để xây dựng phần mềm nhận dạng chữ số viết tay
Trang 5MỞ ĐẦU 1
Chương 1 BÀI TOÁN NỘI SUY, XẤP XỈ HÀM SỐ VÀ MẠNG NEURAL RBF 1 1.1 PHÁT BIỂU BÀI TOÁN NỘI SUY VÀ XẤP XỈ HÀM SỐ 1
1.1.1 Bài toán nội suy 1
1.1.1.1 Nội suy hàm một biến số 1
1.1.1.2 Bài toán nội suy hàm nhiều biến 2
1.1.2 Bài toán xấp xỉ 2
1.1.3 Các phương pháp giải quyết bài toán nội suy và xấp xỉ hàm số 2
1.2 MẠNG NEURAL NHÂN TẠO 3
1.2.1 Giới thiệu mạng Neural nhân tạo 3
1.2.1.1 Mạng Neural sinh học 4
1.2.1.2 Mạng Neural nhân tạo 5
1.3 MẠNG NEURAL RBF 8
1.3.1 Giới thiệu mạng Neural RBF 8
1.3.1.1 Bài toán nội suy nhiều biến và kỹ thuật hàm cơ sở bán kính 8
1.3.1.2 Kiến trúc mạng Neural RBF 10
1.3.1.3 Ứng dụng của mạng Neural RBF 10
1.4 CÁC PHƯƠNG PHÁP HUẤN LUYỆN MẠNG NEURAL RBF 11
1.4.1 Phương pháp huấn luyện một pha 11
1.4.2 Phương pháp huấn luyện hai pha 12
1.4.3 Phương pháp huấn luyện 2 pha HDH 13
1.4.4 Phương pháp huấn luyện ba pha đầy đủ 16
1.5 KẾT QUẢ THỰC NGHIỆM 16
1.5.1 Kết quả 16
1.5.2 Nhận xét 19
Chương 2 NHẬN DẠNG CHỮ VIẾT TAY 20
2.1 NHẬN DẠNG MẪU 20
2.1.1 Nhận dạng mẫu 20
Trang 62.1.1.3 Lịch sử của lĩnh vực nhận dạng mẫu 21
2.1.1.4 Ứng dụng của nhận dạng mẫu 21
2.1.1.5 Các bài toán nhận dạng mẫu 22
2.1.1.6 Các bước xử lý trong hệ thống nhận dạng mẫu 22
2.2 BÀI TOÁN NHẬN DẠNG CHỮ VIẾT TAY 24
2.2.1 Tình hình chung về nhận dạng chữ viết tay 24
2.2.2 Giới thiệu bài toán nhận dạng chữ viết tay 24
2.2.3 Hướng giải quyết cho bài toán nhận dạng ký tự viết tay 24
2.3 CÁC PHƯƠNG PHÁP TRÍCH CHỌN ĐẶC TRƯNG CHỮ VIẾT TAY 25
2.2.1 Phương pháp trích chọn đặc trưng kết hợp biến đổi DCT và thuật toán phân tích thành phần chính PCA 25
2.2.1.1 Thuật toán PCA 26
2.2.1.2 Phương pháp trích chọn đặc trưng kết phép biến đổi DCT và thuật toán PCA 27
2.2.2 Phương pháp trích đặc trưng sử dụng Momen Legendre 28
2.2.2.1 Momen và Momen Legendre 28
2.2.2.2 Phương pháp trích chọn đặc trưng chữ viết tay bằng Momen Legendre30 2.2.3 Phương pháp sử dụng mạng Neural nhân chập(Convolution neural network) 32
2.2.3.1 Khái niệm cơ sở 32
2.2.3.2 Phương pháp trích đặc trưng sử dụng mạng Neural nhân chập 33
2.4 THỰC NGHIỆM 34
2.4.1 Kết quả 35
2.4.2 Nhận xét 35
Chương 3 CÁC PHƯƠNG PHÁP CẢI THIỆN HIỆU SUẤT CỦA MẠNG NEURAL RBF 36
3.1 CÁC PHƯƠNG PHÁP CẢI THIỆU HIỆU SUẤT CỦA MẠNG NEURAL RBF 36 3.1 CÁC PHƯƠNG PHÁP CẢI THIỆU HIỆU SUẤT CỦA MẠNG NEURAL
Trang 73.1.1.1 Tăng tập dữ liệu bằng các phép biến đổi hình học 36
3.1.2 Phương pháp học tập hợp 37
3.1.2.1 Phương pháp học tập hợp cải tiến 38
3.1.3 Phương pháp tăng tốc độ nhận dạng 39
3.1.3.1 Phương pháp bộ nhận dạng ba lớp 40
3.2 THỰC NGHIỆM 41
Chương 4 GIỚI THIỆU CHƯƠNG TRÌNH NHẬN DẠNG CHỮ SỐ VIẾT TAY VÀ TỔNG KẾT 42
4.1 GIỚI THIỆU CHƯƠNG TRÌNH NHẬN DẠNG CHỮ SỐ VIẾT TAY 42
4.1.1 Chương trình nhận dạng chữ viết tay 42
4.1.1.1 Giới thiệu chương trình 42
4.2 TỔNG KẾT VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 43
4.2.1 Tổng kết 43
4.2.1.1 Những công việc đã làm được 43
4.2.2.2 Hướng phát triển của đề tài 44
TÀI LIỆU THAM KHẢO 45
Trang 8BẢNG DANH MỤC CÁC HÌNH MINH HỌA
Hình 1: Minh họa bài toán nội suy hàm một biến 1
Hình 2: Minh họa một Neuron thần kinh sinh học 4
Hình 3: Cấu tạo một Neural nhân tạo 5
Hình 4: Đồ thị hàm ngưỡng 6
Hình 5: Đồ thị hàm tuyến tính 6
Hình 7: Đồ thị hàm tanh 6
Hình 8: Đồ thị hàm Gauss 7
Hình 9: Kiến trúc mạng Neural truyền tới 7
Hình 10: Minh họa sự ảnh hưởng của hàm bán kính 9
Hình 11: Kiến trúc của mạng RBF 10
Hình 12: Quá trình hội tụ đến giá trị cực tiểu của thuật toán Gradient 12
Hình 13: Thuật toán HDH huấn luyện mạng RBF 15
Hình 14: Các bước xử lý trong hệ thống nhận dạng mẫu 22
Hình 15 : Các bước giải quyết bài toán nhận dạng chữ viết tay 25
Hình 16: Ảnh hưởng của vector riêng, giá trị riêng lên tập dữ liệu 26
Hình 17 : Các bước thực hiện của thuật toán PCA 27
Hình 18: Các bước trích chọn đặc trưng bằng biến DCT kết hợp PCA 27
Hình 19: Biến đổi DCT và cách lấy dữ liệu theo đường zigzag 28
Hình 21: Các bước thực hiện của phương pháp trích chọn đặc trưng sử dung momen Legendre 32
Hình 22: Thao tác nhân chập 33
Hình 23: Quá trình trích chọn đặc trưng sử dụng mạng Neural nhân chập 34
Hình 24: Minh họa quá trình lấy đặc trưng bằng mạng Neuron nhân chập 34
Hình 21: Ma trận vector cho phép biến đổi Elastic 37
Hình 22: Ví dụ về phép biến đổi Elastic 37
Hình 23: Kiến trúc của phương pháp học tập hợp cải tiến 39
Hình 24: Kiến trúc của bộ nhận dạng ba lớp 40
Hình 25: Biểu đồ so sánh độ chính xác nhận dạng và thời gian huấn luyện của các phương pháp huấn luyện khác nhau 41
Hình 26: Giao diện chính của chương trình 43
Hình27: Bảng thông báo kết quả nhận dạng 43
Trang 9BẢNG DANH MỤC TỪ VIẾT TẮT
ANN Artificial neural network Mạng nơ-ron nhân tạo
DCT Discrete cosin transform Biến đổi cosin rời rạc
IDE Integrated Development
Environment Môi trường thiết kế hợp nhất
MLP Multi layer perceptron Mạng nơ-ron truyền thẳng nhiều
SVM Support Vector Machine Máy vec-tơ hỗ trợ
Trang 10Khái niệm mạng “Neural nhân tạo” xuất hiện đầu thế kỷ 20 trong thời kỳ con người
tìm cách để chế tạo ra những bộ máy có khả năng suy nghĩ, tư duy như con người Trải qua một thời gian dài phát triển và nghiên cứu thì cơ sở lý thuyết cũng như thực nghiệm về mạng Neural nhân tạo đã đạt được những kết quả rất khả quan Nhờ khả tính toán mạnh của máy tính, mạng Neural nhân tạo ngày nay là một công cụ rất tốt để giải quyết bài toán nội suy và xấp xỉ hàm nhiều biến Vì thế mạng Neural nhân tạo được sử dụng rất nhiều trong các lĩnh vực tính toán, nhận dạng mẫu cũng như trong các lĩnh vực khoa học quan trọng khác (xem [11]-chapter 4) Là một loại mạng Neural nhân tạo, mạng Neural RBF cũng là một công cụ hiệu quả để giải quyết bài toán nội suy và xấp xỉ hàm nhiều biến với điểm mạnh hơn hẳn các loại mạng Neural khác ở chỗ
nó có thời gian huấn luyện rất nhanh
Bài toán nhận dạng chữ viết tay là một bài toán quen thuộc và có ứng dụng rất lớn trong thực tế vì thế từ lâu nó đã thu hút rất nhiều người nghiên cứu Mặc dù đã đạt được những kết quả rất cao trong bài toán nhận dạng chữ viết tay (mạng Neural nhân chập đã đạt độ chính xác 99.61% trên bộ dữ liệu MNIST [8]) song ngày nay người ta vẫn tiếp tục nghiên cứu những phương pháp nhận dạng tốt hơn hướng đến dùng cho các thiết bị di động, và các bài toán thời gian thực
Từ các nhận xét trên, với lòng đam mê muốn nghiên cứu, học hỏi về kiến trúc của mạng Neural nhân tạo (cụ thể ở đây là mạng Neural RBF) qua đó ứng dụng để viết phần mềm nhận dạng chữ viết tay, được sự chỉ bảo và giúp đỡ tận tình của thầy giáo
Trang 11PGS.TS Hoàng Xuân Huấn tôi đã tiến hành thực hiện khóa luận tốt nghiệp với đề tài
“Mạng Neural RBF và ứng dụng nhận dạng chữ viết tay”
Nội dung của khóa luận sẽ đi sâu nghiên cứu những vấn đề sau:
- Khảo cứu về mạng Neural RBF
- Tìm hiểu bài toán nhận dạng chữ viết tay và các phương pháp trích chọn đặc trưng chữ viết tay
- Nghiên cứu các phương pháp cải tiến hiệu suất của mạng Neural RBF áp dụng cho bài toán nhận dạng chữ viết tay
- Tiến hành cài đặt các ứng dụng để thực hiện so sánh hiệu suất các phương pháp huấn luyện mạng Neural RBF, hiệu suất các phương pháp trích chọn giá trị đặc trưng, cài đặt các phương pháp để cải thiện hiệu suất của mạng RBF áp dụng cho bài toán nhận dạng chữ viết tay
- Tiến hành viết chương trình nhận dạng chữ số viết tay nhận dạng chữ viết tay tổng hợp tất cả các phần kiến thức đã nghiên cứu
Với mục tiêu dẫn dắt từ cơ sở lý thuyết mạng Neural RBF đến ứng dụng nhận dạng
chữ viết tay, bài khóa luận được phân thành bốn chương lớn:
+Chương 1: Bài toán nội suy, xấp xỉ hàm số và mạng Neural RBF
Chương này sẽ cung cấp những khái niệm cơ bản nhất về bài toán nội suy, xấp xỉ hàm cũng như vẽ nên bức tranh tổng quan về mạng Neural nhân tạo Phần lớn nội dung của chương này sẽ tập trung đi sâu nghiên cứu về mạng Neural RBF bao gồm kiến trúc và
các phương pháp huấn luyện mạng Phần cuối chương (1.4) giới thiệu kết quả thực
nghiệm so sánh hiệu suất các phương pháp huấn luyện mạng Neural RBF thông qua bài toán phân tích thành phần trong ống dầu
+Chương 2: Nhận dạng chữ viết tay
Phần đầu chương sẽ trình bày sơ lược về bài toán nhận dạng mẫu, ở phần tiếp theo của chương sẽ làm rõ hơn về các bước để giải quyết bài toán nhận dạng chữ viết tay Phần lớn nội dung của chương sẽ tập trung nghiên cứu các phương pháp lấy đặc trưng chữ viết tay Phần cuối chương đưa ra kết quả thực nghiệm so sánh hiệu suất các phương pháp trích chọn đặc trưng chữ viết tay khác nhau
+Chương 3: Các phương pháp tăng hiệu suất mạng Neural RBF
Trang 12Nội dung chủ yếu của chương này là giới thiệu một số phương pháp nhằm cải thiện hiệu suất mạng Neural RBF áp dụng cho bài toán nhận dạng chữ viết tay Phần đầu chương giới thiệu phương pháp làm tăng số lượng dữ liệu huấn luyện sử dụng các phương pháp biến đổi ảnh affine, elastic Tiếp đó sẽ giới thiệu phương pháp làm tăng tốc độ và độ chính xác nhận dạng bằng cách sử dụng bộ nhận dạng ba tầng Phương pháp học tập hợp (Ensemble Learning) để cải thiện độ chính xác nhận dạng cũng được
đề cập ở chương này Ở chương này tôi xin đề xuất phương pháp học tập hợp cải tiến đạt độ chính xác nhận dạng gần 98% cho bộ dữ liệu MNIST và có thời gian huấn luyện rất nhanh Ở cuối chương sẽ giới thiệu kết quả thực nghiệm so sánh hiệu suất nhận dạng của phương pháp hợp cải tiến so với các phương pháp thông thường
+Chương 4: Giới thiệu chương trình nhận dạng chữ số viết tay và kết luận
Phần đầu chương giới thiệu phần mềm nhận dạng ký tự chữ số viết tay mà tôi đã xây dựng dựa trên cơ sở tổng hợp toàn bộ nền tảng lý thuyết của bài khóa luận Cuối cùng
là phần tổng kết của khóa luận
Trang 13CHƯƠNG 1
BÀI TOÁN NỘI SUY, XẤP XỈ HÀM SỐ
VÀ MẠNG NEURAL RBF
Nội dung chương này gồm có:
1.1 Phát biểu bài toán nội suy và xấp xỉ hàm số
1.2 Mạng Neural nhân tạo
1.3 Mạng Neural RBF
1.4 Các thuật toán huấn luyện mạng Neural RBF
1.5 Kết quả thực nghiệm và đánh giá
1.1 PHÁT BIỂU BÀI TOÁN NỘI SUY VÀ XẤP XỈ HÀM SỐ
1.1.1 Bài toán nội suy
1.1.1.1 Nội suy hàm một biến số
Bài toán nội suy hàm một biến tổng quát được đặt ra như sau: Một hàm số y f x
chưa biết và chỉ xác định được tại các điểm x0 ax1K x N b với các giá trị y i = f(x i ) Ta cần tìm một biểu thức giải tích (x) để xác định gần đúng giá trị y x tại các điểm xa,bcủa hàm f(x) sao cho tại các điểm x i thì hàm số trùng với giá trị y i đã biết (với xa,bta gọi là ngoại suy) Về phương diện hình học, ta cần tìm hàm (x)
có dạng đã biết sao cho đồ thị của nó đi qua các điểm(x i ,y i ) với mọi i=0,1, ,N
Hình 1: Minh họa bài toán nội suy hàm một biến
f(x0)
f(x)
(x)
Trang 14Hàm f thường là hàm thực nghiệm hoặc các hàm khó tính giá trị hàm số nên chỉ đo
được ở các điểm nhất định Các điểm x i i N0 sẽ gọi là các mốc nội suy
1.1.1.2 Bài toán nội suy hàm nhiều biến
Xét một hàm chưa biết f D: (R n)R m và một tập huấn luyện
k, k N1; k n, k m
k
x y x R y R
sao cho f x( k) y k; k 1,N Chúng ta cần tìm một hàm số ở một dạng đã biết để thỏa mãn điều kiện nội suy đó là : (x k) y k; k 1,N
trong đó k x là các hàm đơn giản và độc lập tuyến tính
1.1.3 Các phương pháp giải quyết bài toán nội suy và xấp xỉ hàm số
Bài toán nội suy hàm một biến là một lĩnh vực nghiên cứu nghiên cứu khá quan trọng trong ngành giải tích thế kỷ 18 Đầu tiên bài toán nội suy được giải quyết bằng phương pháp sử dụng đa thức nội suy: đa thức Lagrange, đa thức Chebysev tuy nhiên khi số
Trang 15mốc nội suy lớn thì nội suy bằng đa thức thường xảy ra hiện tượng phù hợp fitting) do bậc của đa thức thường tăng theo số mốc nội suy Để giải quyết hiện tượng phù hợp trội thay vì tìm đa thức nội suy người ta chỉ tìm đa thức xấp xỉ (thường giải quyết bằng phương pháp xấp xỉ bình phương tối thiểu của Gauss ) Một phương pháp khác được đề xuất vào đầu thế kỷ 20 đó là phương pháp nội suy Spline Trong đó hàm nội suy được xác định nhờ ghép trơn các hàm nội suy dạng đơn giản (thường dùng đa thức bậc thấp) trên từng đoạn con Phương hay được áp dụng niều trong kỹ thuât Để hiểu rõ hơn về các phương pháp trên xem [1,14]
trội(over-Cùng với phát triển của các ứng dung CNTT, bài toán nội suy nhiều biến được quan tâm giải quyết và đạt nhiều tiến bộ trong khoảng 30 năm gần đây, với các cách tiếp cận như:
-Học dựa trên mẫu, bao gồm các phương pháp: k-láng giềng gần nhất với trọng số nghịch đảo khoảng cách và hồi quy trọng số địa phương
-Mạng neural truyền thẳng MLP
-Mạng neural RBF
Để rõ hơn về các phương pháp trên xem [11]
1.2 MẠNG NEURAL NHÂN TẠO
1.2.1 Giới thiệu mạng Neural nhân tạo
Bộ não con người chứa đựng những bí mật mà đến bây giờ khoa học vẫn chưa giải đáp được, chính nhờ có bộ não hoàn chỉnh mà con người đã trở thành động vật bậc cao thống trị muôn loài Đã từ lâu con người đã nghiên cứu cấu trúc đặc biệt của bộ não từ
đó ứng dụng để giải quyết những bài toán khoa học kỹ thuật Người ta đã phát hiện ra rằng bộ não con người là mạng lưới chằng chịt các Neural liên kết với nhau, đây là cơ
sở hình thành nên cấu trúc của mạng Neural nhân tạo
Về bản chất toán học thì mạng Neural nhân tạo như là một mặt trong không gian đa chiều để xấp xỉ một hàm chưa biết nào đấy Nhưng mạng Neural nhân tạo lại giống mạng Neural sinh học ở chỗ đó là khả năng có thể huấn luyện (học), đây là đặc điểm quan trọng nhất của mạng Neural nhân tạo Chính vì đặc điểm này mà mạng Neural nhân tạo có khả năng thực hiện tốt các công việc sau khi đã được huấn luyện, và đến
Trang 16khi môi trường thay đổi ta lại có thể huấn luyện lại mạng Neural nhân tạo để nó thích nghi với điều kiện mới
1.2.1.1 Mạng Neural sinh học
Mạng Neural sinh học là một mạng lưới (plexus) các Neuron có kết nối hoặc có liên quan về mặt chức năng trực thuộc hệ thần kinh ngoại biên (peripheral nervous system) hay hệ thần kinh trung ương (central nervous system)
Hình 2: Minh họa một Neuron thần kinh sinh học
Trên đây là hình ảnh của một tế bào thần kinh (Neuron thần kinh), ta chú ý thấy rằng một tế bào thần kinh có ba phần quan trọng:
-Phần đầu cũng có nhiều xúc tu (Dendrite) là nơi tiếp xúc với các với các điểm kết nối(Axon Terminal) của các tế bào thần kinh khác
-Nhân của tế bào thần kinh (Nucleus) là nơi tiếp nhận các tín hiệu điện truyền từ xúc
tu Sau khi tổng hợp và xử lý các tín hiệu nhận được nó truyền tín hiệu kết quả qua trục cảm ứng (Axon) đến các điểm kết nối (Axon Terminal) ở đuôi
-Phần đuôi có nhiều điểm kết nối (Axon Terminal) để kết nối với các tế bào thần kinh khác
Khi tín hiệu vào ở xúc tu kích hoạt nhân Neuron có tín hiệu ra ở trục cảm ứng thì Neuron được gọi là cháy Mặc dù W Mculloch và W.Pitts (1940) đề xuất mô hình mạng neural nhân tạo khá sớm nhưng định đề Heb (1949) mới là nền tảng lý luận cho mạng neural nhân tạo
Trang 17Định đề Heb: Khi một neuron (thần kinh) A ở gần neuron 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 neuron làm tăng tác động này
1.2.1.2 Mạng Neural nhân tạo
Mạng Neural nhân tạo được thiết kế để mô hình một số tính chất của mạng Neural sinh học, tuy nhiên, khác với các mô hình nhận thức, phần lớn các ứng dụng lại có bản chất
kỹ thuật Mạng Neural nhân tạo (ANN) 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 Neural 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 Neural thông qua quá trình học
-Độ lớn của trọng số kết nối Neural đóng vai trò khớp nối cất giữ thông tin
a) Cấu tạo một Neuron trong mạng Neural nhân tạo
Hình 3: Cấu tạo một Neural nhân tạo
Một neuron 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, hàm F 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 có trọng số của các giá trị đầu vào, Y là giá trị đầu ra của Neuron Ta có thể
biểu diễn một Neural nhân tạo theo công thức toán học như sau: 0
1
w
N
i i i
Trang 18Hình 5: Đồ thị hàm tuyến tính
3) Hàm sigmoid
1( )
Hình 6: Đồ thị hàm sigmoid
4) Hàm tanh
1( )1
x x
Hình 7: Đồ thị hàm tanh
Trang 19Hình 8: Đồ thị hàm Gauss
Trên thực tế thì các họ hàm sigmoid thường dùng cho mạng Neural truyền thẳng nhiều tầng MLP vì các hàm này dễ tính đạo hàm: f x'( ) f x( )(1 f x( )), trong khi đó mạng Neural RBF lại dùng hàm kích hoạt là hàm bán kính
b) Kiến trúc của mạng Neural nhân tạo
Kiến trúc của mạng Neural nhân tạo lấy
tư tưởng chính của mạng Neural sinh học
đó là sự kết nối của các Neuon Tuy
nhiên, mạng Neural nhân tạo có kiến trúc
đơn giản hơn nhiều, về cả số lượng
Neuron và cả kiến trúc mạng, trong khi ở
mạng Neural tự nhiên một Neuron có thể
kết nối với một Neuron khác bất kỳ ở
trong mạng thì ở mạng Neural nhân tạo
các Neuron được kết nối sao cho nó có
thể dễ dàng được biểu diễn bởi một mô
hình toán học nào đấy Ví dụ trong mạng
Neural truyền tới các Neuron được phân
thành nhiều lớp, các Neuron ở lớp trước
chỉ được kết nối với các Neuron ở lớp
sau
INPUT
OUTPUT HIDDEN
Hình 9: Kiến trúc mạng Neural truyền tới
c) Quá trình học
Như đã nói ở trên mạng Neural nhân tạo có khả năng huấn luyện được (học), quá trình huấn luyện là quá trình mà mạng Neural nhân tạo tự thay đổi mình dưới sự kích thích
Trang 20của môi trường (bộ dữ liệu huấn luyện) để phù hợp với điều kiện của môi trường Quá trình huấn luyện chỉ có thể được thực hiện khi mạng Neural nhân tạo đã xây dựng được kiến trúc cụ thể, và hàm kích hoạt F đã được xác định Về bản chất quá trình học
là quá trình xác định các tham số w i của các Neuron trong mạng Neural Có ba kiểu học chính, mỗi kiểu mẫu tương ứng với một nhiệm vụ học trừu tượng Đó là học có giám sát, học không có giám sát và học tăng cường Dưới đây xin nêu ra phương pháp học có giám sát các phương pháp khác xem thêm [10] – chapter 4
Học có giám sát
Trong học có giám sát, ta được cho trước một tập ví dụ gồm các cặp ( ,x y i i i, 1 ),N xX y, Y và mục tiêu là tìm một hàm f X: Y (trong lớp các
hàm được phép) khớp với các ví dụ Trên thực tế người ta thường tìm hàm f sao cho
tổng bình bình phương sai số đạt giá trị nhỏ nhất trên tập ví dụ: 2
1
( )
N
i i i
E f x y
1.3 MẠNG NEURAL RBF
1.3.1 Giới thiệu mạng Neural RBF
Hàm cơ sở bán kính được giới thiệu bởi M.J.D Powell để giải quyết bài toán nội suy hàm nhiều biến năm 1987 Ngày nay, đây là vấn đề hết sức quan trọng được nghiên cứu trong ngành giải tích số Trong lĩnh vực mạng Neural, mạng Neural RBF được đề xuất bởi D.S Bromhead và D Lowe năm 1988 cho bài toán nội suy và xấp xỉ hàm nhiều biến (xem [12])
1.3.1.1 Kỹ thuật hàm cơ sở bán kính
Bài toán nội suy hàm nhiều biến đã được giới thiệu ở phần 1.1.1.2, như đã nói ở trên
để giải quyết bài toán này D Powell đã đề xuất dạng của hàm là hàm cơ sở bán kính Dưới đây sẽ trình bày sơ lược kỹ thuật sử dụng hàm cơ sở bán kính để giải quyết bài toán nội suy hàm nhiều biến
Kỹ thuật hàm cơ sở bán kính
Không mất tính tổng quát giả sử m=1 khi đó hàm có dạng như sau :
Trang 210 1
N
k k k
k k
k k
; v k
là tâm của mỗi hàm cơ sở bán kính k; k là bán kính của k Với mỗi k thì giá trị
của bán kính k điều khiển miền ảnh hưởng của hàm bán kính k Nếu
3
k
k
x v thì giá hàm k( )x là rất nhỏ, không có ý nghĩa
Hình 10: Minh họa sự ảnh hưởng của hàm bán kính
Ví dụ như ở hình trên một vòng tròn to tượng trưng cho một hàm cơ sở bán kính, các hàm này chỉ ảnh hưởng đến các điểm bên trong bán kính của nó
Thay công thức (2) vào (1) ta được biểu diễn toán học của kỹ thuật hàm cơ sở bán kính như sau:
2 2
j k k
Trang 22Một đặc điểm rất lợi thế khi sử dụng hàm bán kính để giải quyết bài toán nội suy hàm
nhiều biến, đó là khi xét giá trị bình phương sai số 2
1
N
i i i
E x y
thì người ta đã
chứng minh được rằng E chỉ có một cực trị duy nhất Do vậy việc tìm các tham số của
các hàm cơ sở bán kính(w v k, k, k ) để cho E đạt cực tiểu sẽ được giải quyết rất nhanh
và hiệu quả
1.3.1.2 Kiến trúc mạng Neural RBF
Mạng RBF là một loại mạng Neural nhân tạo truyền thẳng gồm có ba lớp Nó bao gồm
n nút của lớp đầu vào cho vector đầu vào xR n, N neuron ẩn (giá trị của neuron ẩn
thứ k chính là giá trị trả về của hàm cơ sở bán kính k) và m neuron đầu ra
Hình 11: Kiến trúc của mạng RBF
Như đã nêu ở trên mạng RBF có thể biểu diễn bằng công thức toán học sau:
2 2
j k k
Trang 231.4 CÁC PHƯƠNG PHÁP HUẤN LUYỆN MẠNG NEURAL RBF
Huấn luyện mạng Neural RBF thực ra là quá trình tìm các tham số (w v k, k, k) của các hàm bán kính để phù hợp với bài toán nào đấy So với các mạng Neural khác mạng Neural RBF có điểm mạnh hơn hẳn đó có có thời gian huấn luyện ngắn Xét tổng bình
phương sai số 2
1
N
i i i
E x y
, do E chỉ có một cực trị duy nhất, vì thế nên việc
đi tìm điểm cực trị cho E sẽ rất nhanh chóng do không có cực trị địa phương Có rất
nhiều phương pháp huấn luyện mạng hầu hết các phương pháp này đều có đặc điểm
chung là đều có xu hướng cực tiểu hóa giá trị bình phương sai số E cho tập dữ liệu
huấn luyện Có thể chia các kiểu huấn luyện mạng RBF ra thành ba loại: huấn luyện một pha, huấn luyện hai pha và huấn luyện ba pha (huấn luyện đầy đủ) (xem [4,5])
1.4.1 Phương pháp huấn luyện một pha
Xét tập dữ liệu huấn luyện k, k N1; k n, k m
k M
(trong đó M là số hàm cơ sở bán kính, n là số Neural đầu vào) Giá trị của các tham số w k thường được tìm ra bằng các phương pháp học có giám sát như là phương pháp giả nghịch đảo hoặc phương pháp tụt dốc
Gradient Về bản chất thì hai phương pháp này đều tìm các trong số w k để giá trị bình
phương sai số E đạt cực tiểu
1) Phương pháp giả nghịch đảo
Trang 24Với tập huấn luyện k, k N1; k n, k m
x v i
Với phương pháp này, đầu tiên các tham số w k được tạo ra ngẫu nhiên sau đó các tham
số này được cập nhật bằng công thức sau :
chú ý ở đây ta xét mạng RBF có một Neural ở đầu ra Hệ
số được gọi là tốc độ học, nếu nhỏ thì giá trị của các trọng số w tiến chậm đến
điểm cực tiểu, nhưng nếu lớn thì giá trị của các trong số w thường có xu hướng dao
động quanh điểm cực tiểu, nói chung để tìm được giá trị hợp lí thì phải qua quá trình thực nghiệm Thông thường người ta vẫn chọn có giá trị nhỏ để đảm bảo quá trình lặp sẽ hội tụ về giá trị cực tiểu cho dù hơi mất thời gian
Hình 12: Quá trình hội tụ đến giá trị cực tiểu của thuật toán Gradient,
đường nét đứt ứng với giá trị lớn, đường nét liền ứng với giá trị nhỏ 1.4.2 Phương pháp huấn luyện hai pha
Với phương pháp huấn luyện hai pha thông thường các giá trị tâm v k và bán kính k
của hàm cơ sở bán kính k được tính bằng các thuật toán phân cụm như thuật toán
Trang 25phân cụm k-mean, k-mean có ngưỡng… Sau đó giá trị của các trọng số w k được tính
bằng các phương pháp giả nghịch đảo, hay tụt dốc Gradient như đã nêu ở trên
1) Thuật toán phân cụm k-mean
-Phát biểu bài toán: Cho tập dữ liệu X x x1, 2 ,x n;x iR d chúng ta cần phân tập
với i là tâm của tập S i
Về mặt toán học thì bài toán phân cụm trên thuộc loại NP-khó tuy nhiên trên thực tế thì người ta thường giải bài toán bằng phương pháp heuristic như sau:
Đầu tiền ta khởi tạo ngẫu nhiên tập 1, 2, k sau đó thực hiện vòng lặp qua hai bước sau:
x S i
x S
x S
, không mất tính tổng quát, ở đây ta
xét mạng RBF có một Neuron output (m=1), khi đó biểu diễn toán học của mạng RBF
là:
Trang 260 1
là các véc tơ trong không
gian N-chiều R N trong đó:
Mô tả thuật toán
Với sai số và các hằng số dương q, <1 cho trước, thuật toán bao 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để qk q và gần với q nhất (nghĩa là nếu thay k=k/ thì qk>q) Vì vậy, vớimọi k, chuẩn của ma trận tương ứng với chuẩn vector .* (cho bởi công thức (16) dưới đây) thuộc đoạn này Pha sau tìm nghiệm gần đúng W* của (5) bằng phương pháp lặp đơn giản Thuật toán được đặc tả trong hình 13
Trang 27Hình 13: Thuật toán HDH huấn luyện mạng RBF
Để tìm nghiệm W* của hệ (5) ta thực hiện thủ tục lặp như sau
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 ;
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
lnlnln
Xác định các k để qk q, và nếu thay k=k/ thì qk>q; // Pha 1
Tìm W* bằng phương pháp lặp đơn (hoặc phương pháp lặp Seidel); //Pha 2
End
Trang 28Biểu thức (10) tương đương với vế phải của (14) nhỏ hơn hoặc bằng Mặt khác ở bước cuối của pha 2, nếu áp dụng (14) cho t=0 ; 0 0 1 1
1.4.4 Phương pháp huấn luyện ba pha đầy đủ
Phương pháp này sử dụng phương pháp tụt dốc Gradient để tìm kiếm cả ba tham số dùng các công thức lặp dưới đây:
1 1
2w
Q J
k q q q
q j mj
k q là dữ liệu huấn luyện thứ q Để rõ hơn về phương pháp trên xem [5] Nhìn chung
phương pháp này cho kết quả huấn luyện khá tốt, song nhược điểm là thời gian huấn luyện dài nên không phù hợp với các bài toán có dữ liệu lớn
Trang 29người ta dùng tia gamma chiếu vào ống dầu để thu được các đặc trưng khác nhau đồng thời tại thời điểm đó người ta phân tích tỉ lệ dầu và nước có trong ống dầu Do tỉ lệ thành phần dầu và nước có liên quan đến các đặc trưng thu được khi chiếu tia gamma, người ta mong muốn dự đoán được thành phần dầu và nước dựa vào các đặc trưng thu được khi chiếu tia gamma vào ống dầu Bộ dữ liệu bao gồm 900 bộ dữ liệu huấn luyện
và 100 bộ dữ liệu kiểm tra Mỗi dữ liệu bao gồm 12 giá trị đầu vào (các đặc trưng thu được khi chiếu tia gamma) và 2 giá trị đầu ra (tỉ lệ dầu và nước), tất cả đều được biểu diễn bằng số thực Dữ liệu được tải từ địa chỉ:
1) Phương pháp huấn luyện 2 pha HDH(xem 1.4.3)
2) Phương pháp huấn 3 pha đầy đủ(xem 1.4.4)
3) Phương pháp huấn luyện 1 pha, sử dụng phương pháp giả nghịch đảo để tìm