Mỗi bộ phận kể trên đều có khả năng giải quyết một số vấn đề chuyên biệt, tuy nhiên sự kết hợp của hai hay nhiều kỹ thuật trên để tạo ra các hệ thống lai đã giải quyết được những vấn đề
Trang 1Mục lục ii
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ LÔGIC MỜ - HỆ MỜ 4
1 LÝ THUYẾT TẬP MỜ 4
1.1 Tập mờ 4
1.2 Các phép toán trên tập mờ 6
1.2.1 Phép phủ định 6
1.2.2 Phép hợp hai tập mờ 6
1.2.3 Phép giao hai tập mờ 6
1.2.4 Luật De Morgan 7
1.2.5 Phép kéo theo 8
2 CÁC QUAN HỆ MỜ VÀ SUY LUẬN XẤP XỈ, SUY DIỄN MỜ 9
2.1 Các quan hệ mờ 9
2.2 Suy luận xấp xỉ và Suy diễn mờ 9
3 HỆ MỜ 11
3.1 Bộ mờ hoá: 11
3.2 Hệ luật mờ: 12
3.3 Động cơ suy diễn: 12
3.4 Bộ giải mờ: 13
3.5 Ví dụ minh hoạ: 14
CHƯƠNG 2: MẠNG NEURAL NHÂN TẠO 16
1 GIỚI THIỆU VỀ MẠNG NEURAL 16
2 KIẾN TRÚC MẠNG NEURAL NHÂN TẠO 18
2.1 Kiến trúc Neural 18
Trang 2Mục lục iii
2.2 Mạng neural nhân tạo 20
2.3 Mạng truyền thẳng nhiều tầng Back Propagation 22
2.3.1 Kiến trúc mạng 22
2.3.2 Cơ chế hoạt động và phương thức học mạng 23
2.3.3 Thuật toán Back Propagation 25
2.3.4 BackPropagation với cơ chế cập nhật tham số Online và Batching 27
2.3.5 BackPropagation với Momentum 27
CHƯƠNG 3: THUẬT GIẢI DI TRUYỀN 28
1 THUẬT GIẢI DI TRUYỀN VÀ THUYẾT TIẾN HOÁ SINH HỌC 28
2 TÍNH CHẤT QUAN TRỌNG CỦA THUẬT GIẢI DI TRUYỀN 28
3 CÁC TOÁN TỬ DI TRUYỀN 30
3.1 Toán tử chọn lựa - Selection 30
3.2 Toán tử lai ghép - Crossover 31
3.3 Toán tử đột biến – Mutation 32
3.4 Hàm thích nghi - Fitness Function 33
4 CÁCH THỨC ÁP DỤNG THUẬT GIẢI DI TRUYỀN 34
5 HUẤN LUYỆN MẠNG NEURAL BẰNG THUẬT GIẢI DI TRUYỀN 36
CHƯƠNG 4: XÂY DỰNG MÔ HÌNH HỆ MỜ, HỆ MỜ NEURON DỰ ĐOÁN TỈ GIÁ HỐI ĐOÁI 37
1 TỈ GIÁ HỐI ĐOÁI 37
2 XÂY DỰNG HỆ MỜ 38
2.1 Dữ liệu đầu vào và tiền xử lý dữ liệu 38
2.2 Mờ hoá bộ dữ liệu 39
2.3 Xây dựng các luật mờ 41
2.4 Xây dựng động cơ suy diễn và phương thức giải mờ 44
2.5 Điều chỉnh các thông số của hệ mờ 45
2.6 Tối ưu hoá hệ luật mờ 49
3 HỆ MỜ NEURAL – NEURON FUZZY SYSTEM 51
3.1 Lý do tích hợp giữa hệ mờ và mạng neural 51
Trang 3Mục lục iv
3.2 Hệ mờ Neuro – NFS (Neuron Fuzzy Systems) 53
3.2.1 Hệ mờ neuro là gì? 53
3.2.2 Kiến trúc của NFS 54
3.2.3 Nguyên tắc hoạt động và cơ chế học của NFS 55
3.2.4 Học cấu trúc và thông số của NFS 57
CHƯƠNG 5: CÁC KẾT QUẢ THỬ NGHIỆM 67
1 Chương trình thử nghiệm 68
1.1 Nguồn dữ liệu 68
1.2 Mạng Neural 69
1.3 Hệ mờ neuron – Neuron Fuzzy System 69
1.4 Đào tạo và thử nghiệm 70
1.4.1 Mạng Neural 70
1.4.2 Hệ mờ neuron 71
2 Nhận xét 72
KẾT LUẬN 73
CÁC KẾT QUẢ LIÊN QUAN ĐÃ CÔNG BỐ 75
PHỤ LỤC : MINH HOẠ TẬP SỐ LIỆU THỬ NGHIỆM 76
TÀI LIỆU THAM KHẢO 79
Trang 4Tôi xin trân thành cảm ơn Phó Giáo sư, Tiến sỹ Khoa học Bùi Công Cường
đã vạch hướng nghiên cứu mới, tận tình giúp đỡ, chỉ bảo và tạo mọi điều kiện thuận lợi để tôi hoàn thành luận án
Tôi xin cám ơn tất cả các thầy giáo, cô giáo đã tham gia giảng dậy giúp đỡ tôi trong suốt quá trình học tập nâng cao trình độ kiến thức tại Trường Đại học Quốc Gia Hà Nội, cũng như các thầy giáo, cô giáo tại Trường Đại học Bách Khoa Hà Nội và toàn bộ các thầy giáo, cô giáo đã nâng đỡ và chỉ bảo tôi từ những con chữ đầu tiên
Tôi xin trân thành cảm ơn đến bố mẹ, anh chị em trong gia đình, bạn bè, đồng nghiệp cùng các tổ chức đã tạo điều kiện giúp đỡ và động viên tôi trong suốt quá trình học tập, nghiên cứu hoàn thành luận án
Tuy nhiên, vì điều kiện thời gian và khả năng có hạn do đó bản luận án này không thể tránh khỏi những thiếu sót Tôi rất mong các thầy, các cô cùng toàn thể các bạn đồng nghiệp chỉ dẫn cho Tôi xin trân thành cảm ơn
Trang 5Danh mục các ký hiệu, chữ viết tắt vi
DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT
DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT
AI Trí tuệ nhân tạo
ANN Mạng Neural Nhân tạo
APE Average percenage error
DSS Desison Support System - Hệ hỗ trợ quyết định
ES Expert System - Hệ chuyên gia
FNHS Fuzzy Neuron Hybird System – Hệ lai mờ, neural
FNN Fuzzy Neural Network - Mạng Neural mờ
GA Genetic Algorithms - Thuật giải di truyền
MAE Mean Absolute Error
NFS Neuron Fuzzy System - Hệ mờ neural
RMSE Root Mean Square Error
SSE Standart square error
Trang 6Danh mục các hình vẽ, đồ thị vii
DANH MỤC CÁC HÌNH VẼ
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1: Hàm liên thuộc của tập mờ “x gần 1” 5
Hình 1.2: Một số dạng hàm liên thuộc của tập mờ: 5
Hình 1.3: Hợp của hai tập mờ 6
Hình 1.4: Giao của hai tập mờ 7
Hình 1.5: Cấu hình cơ bản của hệ mờ 11
Hình 1.6: Minh hoạ kết quả tính và các phương pháp giải mờ 15
Hình 2.1: Kiến trúc cơ bản của Neural 18
Hình 2.2 : Cây phân loại các mạng neural nhân tạo 21
Hình 2.3: Mô hình mạng neural Perception ba tầng 22
Hình 3.1: Minh hoạ toán tử lai ghép 32
Hình 3.2: Minh hoạ các phương pháp đột biến gene 33
Hình 3.3: Sơ đồ khối thuật giải di truyền 35
Hình 4.1: Đồ thị hàm liên thuộc biểu diễn các tập mờ 41
Hình 4.2: Kiến trúc và nguyên tắc hoạt động của mô hình hệ mờ 44
Hình 4.3: Kiến trúc của NFS 54
Trang 7Danh mục các bảng viii
DANH MỤC CÁC BẢNG
DANH MỤC CÁC BẢNG
Bảng 1.1: Các cặp T-chuẩn và T-đối chuẩn 7
Bảng 1.2: Một số phép kéo theo mờ thông dụng 8
Bảng 2.1: Danh sách các hàm chuyển thông dụng 19
Bảng 2.2: Neural biểu diễn các hàm lôgic cơ bản (AND, OR, NOT) 20
Bảng 4.1: Hệ số điều chỉnh của các loại tiền tệ dùng cho việc tiền xử lý 39
Bảng 4.2: Phân đoạn các tập mờ vào không gian dữ liệu vào/ra 40
Bảng 4.3: Hàm liên thuộc của các tập mờ 41
Bảng 4.4: Xây dựng luật mờ từ bộ mẫu dữ liệu số 43
Trang 8Mỗi bộ phận kể trên đều có khả năng giải quyết một số vấn đề chuyên biệt, tuy nhiên sự kết hợp của hai hay nhiều kỹ thuật trên để tạo ra các hệ thống lai đã giải quyết được những vấn đề rất phức tạp hoặc chưa từng xảy ra trước đây Đặc biệt, mạng neural mờ - Fuzzy neural Network (FNN), hệ mờ neuron – Neuron Fuzzy Systems (NFS) đã tạo ra một sự bùng nổ với các nghiên cứu nhằm trang bị các phương pháp luận thông minh với các khả năng học tốt hơn FNN đã được ứng dụng thành công trong các hệ thống điều khiển phi tuyến tính [13,14,17,19,20,55], hệ thống nhận dạng và phân loại mẫu [15,21,22,27,48], các hệ thống xấp xỉ, các mô hình dự báo [12,28,29] [32,38,39,40,41,42,44,52]
Sự kết hợp của các lĩnh vực kể trên có thể được coi là một sự kết hợp thông minh và hoàn hảo của các công cụ hiện đại Bởi vì sự kết hợp giữa chúng đã đem lại những hiệu quả to lớn của chúng trong nhiều lĩnh vực của cuộc sống Lô gic mờ và mạng neural có những thuộc tính tính toán riêng làm cho chúng phù hợp hoặc không với các vấn đề trong thực tế Ví như, mạng
Trang 9Ở Việt Nam cho đến nay cũng có rất nhiều công trình nghiên cứu về vấn đề này [1,2,4,6,11] Tuy vậy cũng còn có rất nhiều điều để mở, và việc này cần có sự đầu tư thích đáng, tìm tòi, thực nghiệm trên cơ sở những thành tựu về lý thuyết và kinh nghiệm sẵn có trên thế giới, đồng thời áp dụng vào thực tế
Mục đích, đối tượng và nội dung của luận văn
Trong khuôn khổ luận văn này, trên những cơ sở những thành tựu đã có trên thế giới và trong nước tôi sẽ trình bày tổng quan các nghiên cứu lý thuyết
về các Hệ mờ, mạng neural nhân tạo và thuật giải di truyền, đồng thời xây dựng Hệ Neural mờ di truyền để dự đoán về tỉ giá hối đoái của đồng Việt
Nam với một số ngoại tệ mạnh trên thế giới Luận văn gồm có phần mở đầu, kết luật và 05 chương đề cập tới các nội dung chính như sau:
Chương 1: Tổng quan về Lôgic mờ - Hệ mờ nghiên cứu các cơ sở của
lý thuyết tập mờ, các quan hệ mờ và suy luận xấp xỉ, suy diễn mờ, cấu hình cơ bản và các thành phần của một hệ mờ
Chương 2: Mạng Neural Nhân tạo nghiên cứu các cơ sở của Neural nhân tạo, mạng neural nhân tạo: kiến trúc, thuật học
Trang 10Phần mở đầu 3
Chương 3: Thuật giải Di truyền nghiên cứu mối quan hệ với thuyết tiến hoá sinh học, các tính chất quan trọng, các toán tử, cách thức áp dụng của thuật giải di truyền, phương thức áp dụng để huấn luyện mạng neural
Chương 4: Xây dựng mô hình hệ mờ, hệ mờ neuron dự đoán tỉ giá
hối đoái Trên cơ sở các nghiên cứu các công cụ trên, phần này trình
bày chi tiết về các phương pháp xây dựng mô hình hệ mờ, hệ mờ Neuron: cấu hình, bộ dữ liệu, thuật học, các phương pháp tối ưu vào bộ
dữ liệu cụ thể (tỉ giá hối đoái của đồng Việt nam với một số ngoại tệ khác)
Chương 5: Các kết quả thử nghiệm trình bày chương trình thử nghiệm
mô hình và kết quả phân tích
Ý nghĩa khoa học và thực tiễn của đề tài:
Trong xu thế chung của sự phát triển ngày này, việc áp dụng những công
cụ hiện đại của toán học và tin học vào việc giải quyết các vấn đề kinh tế ngày càng trở nên cấp thiết Các quy trình tính toán mềm: hệ mờ, mạng neural, thuật giải di truyền là các công cụ rất hiện đại, đã được ứng dụng rất nhiều vào các bài toán trong thực tiễn, đặc biệt là các bài toán trong các hệ thống thông tin thường phải làm việc với các thông tin bất động và cấu trúc không được xác định tường minh Việc nghiên cứu và ứng dụng các công nghệ thông minh nhân tạo vào lĩnh vực kinh tế nhất là các lĩnh vực mang tính nhạy cảm cao như thị trường chứng khoán, thị trường ngoại hối trở nên hết sức có
ý nghĩa bởi vì ngoài các kinh nghiệm và trình độ sẵn có thì các thông tin từ các hệ trợ giúp, phân tích và dự đoán là một trong những vấn đề hết sức quan trọng và cần thiết cho các nhà kinh tế, quản lý và hoạch định chiến lược kinh doanh
Trang 11Chương I: Tổng quan về Lôgic mờ 4
CHƯƠNG 1
TỔNG QUAN VỀ LÔGIC MỜ - HỆ MỜ
Trong những năm cuối thập kỷ 20, một ngành khoa học mới đã được hình thành và phát triển mạnh mẽ đó là hệ mờ - Fuzzy System Đây là hệ thống làm việc với môi trường không hoàn toàn xác định, với các tham số, các chỉ tiêu kinh tế - kỹ thuật, các dự báo về môi trường sản xuất kinh doanh chưa, hoặc khó có thể xác định một cách thật rõ ràng, chặt chẽ Năm 1965 Giáo sư Lofti A Zadeh - Đại học California, Mỹ là người đầu tiên tấn công vào một lĩnh vực khoa học rất mới mẻ này, và thực sự là người khai sinh một ngành khoa học mới là “Lý thuyết Tập mờ” và là tiền đề vững chắc để phát triển Lôgic mờ và các hệ thống mờ sau này
1 LÝ THUYẾT TẬP MỜ
1.1 Tập mờ
Tập vũ trụ U là một tập hợp khác rỗng, một tập mờ F xác định trên tập hợp U là một hàm số xác định trên U: : U → [0,1] F
function) của tập mờ F Mỗi phần tử x U xác định một giá trị F( x) [0,1]
gọi là mức độ thuộc của x trong tập mờ F Tập vũ trụ U được gọi là cơ sở của tập mờ F
Ví dụ 1.1: Hàm liên thuộc của tập mờ F “tập các số thực gần 1” được
định nghĩa như sau: ( ) (x1)2
Trang 12Chương I: Tổng quan về Lôgic mờ 5
Hình 1.1: Hàm liên thuộc của tập mờ “x gần 1”
Ví dụ 1.2: Một số dạng hàm liên thuộc liên tục khác:
)0),,
max(min(
),,,(
b c
x c a b
a x c
b a x Triangle
1,max(min(
),,,,(
c d
x d a b
a x d
c b a x Trapezoid
c x
e c x Gaussian
c b a x Bell
21
1)
,,,(
Trang 13Chương I: Tổng quan về Lôgic mờ 6
Cho Ω là không gian nền A, B là hai tập mờ trên Ω với hàm thuộc
tập mờ trên Ω với hàm thuộc cho bởi biểu thức:
Ví dụ 1.3: Hình biểu diễn phép hợp của hai tập mờ
Ví dụ 1.4: Hình biểu diễn phép giao của hai tập mờ
Trang 14Chương I: Tổng quan về Lôgic mờ 7
Hình 1.4: Giao của hai tập mờ
1.2.4 Luật De Morgan
Cho T là t-chuẩn, S là t-đối chuẩn, n là phép phủ định chặt Khi đó bộ
ba (T,S,n) là một bộ ba De Morgan nếu:
Với phép phủ định n(x)=1-x, chúng ta có một số cặp t-chuẩn và t-đối
1y xif),min(
),(mino x y x y
1 y x if ) , max(
) , (
1y)max(x,if
),min(
),
0 y) min(x, if ) , max(
) ,
Z
6
0,))(
1((
.)
y x y
x
) 1 ( 1
) 2 ( )
y x y
x y x H
Trang 15Chương I: Tổng quan về Lôgic mờ 8
1.2.5 Phép kéo theo
Cho (T, S, n) là một bộ ba De Morgan với n là phép phủ định mạnh, phép kéo theo ls(x,y) hay x y được xác định trên khoảng [0, 1]2 được định nghĩa bằng biểu thức sau đây:
y xif 1
y x
y x
y xif
1
y x
Trang 16Chương I: Tổng quan về Lôgic mờ 9
2 CÁC QUAN HỆ MỜ VÀ SUY LUẬN XẤP XỈ, SUY DIỄN MỜ
2.1 Các quan hệ mờ
Các quan hệ mờ là cơ sở dùng để tính toán và suy diễn (suy luận xấp xỉ) mờ Đây là một trong những vấn đề quan trọng trong các ứng dụng mờ đem lại hiệu quả lớn trong thực tế, mô phỏng được một phần suy nghĩ của con người Chính vì vậy mà các phương pháp mờ được nghiên cứu và phát triển mạnh mẽ Tuy nhiên chính do lôgic mờ mở rộng từ lôgic đa trị, do đó đã nảy sinh ra rất nhiều các quan hệ mờ từ các toán tử kéo theo, nhiều cách hợp thành của các quan hệ mờ, nhiều cách định nghĩa các toán tử T-chuẩn, T-đối chuẩn, cũng như các phương pháp mờ hoá, khử mờ khác nhau… Sự đa dạng này đòi hỏi người ứng dụng phải tìm hiểu kỹ để chọn phương pháp thích hợp nhất cho ứng dụng của mình
2.2 Suy luận xấp xỉ và Suy diễn mờ
Suy luận xấp xỉ - hay còn gọi là suy luận mờ - đó là quá trình suy ra những kết luận dưới dạng các mệnh đề mờ trong điều kiện các quy tắc, các luật, các dữ liệu đầu vào cho trước cũng không hoàn toàn xác định
Trong giải tích toán học chúng ta sử dụng mô hình sau để lập luận:
Trang 17Chương I: Tổng quan về Lôgic mờ 10
Gọi U là không gian nền – không gian tất cả các hàm số Ví dụ: U = { g:
R → R} A là tập các hàm khả vi, B là tập các hàm liên tục Xét hai mệnh đề sau: P = „g є A‟ và Q = „g є B‟ Khi đó ta có:
Để giải bài toán này chúng ta sẽ phải thực hiện qua các bước sau:
1 Rời rạc hoá các hàm liên thuộc của các tập mờ
2 Xác định độ liên thuộc tại các điểm rời rạc
3 Lựa chọn các quan hệ mờ
4 Xây dựng ma trận hợp thành R(A,B)(u,v)
Tính B‟ theo công thức B‟ = A‟ o R(A,B)(u,v)
Trang 18Chương I: Tổng quan về Lôgic mờ 11
3 HỆ MỜ
Kiến trúc cơ bản của một hệ mờ gồm 04 thành phần chính: bộ mờ hoá, hệ
luật mờ, động cơ suy diễn mờ và bộ giải mờ như hình 1.5 dưới đây:
Hình 1.5: Cấu hình cơ bản của hệ mờ
Không làm mất tính tổng quát ở đây ta chỉ xét hệ mờ nhiều đầu vào, một
đầu ra ánh xạ tập compac S Rn vào R Các thành phần của hệ mờ được
miêu tả như sau:
3.1 Bộ mờ hoá:
Thực hiện việc ánh xạ từ không gian đầu vào S vào các tập mờ xác định
trong S được cho bởi hàm thuộc : S [0,1] Bộ phận này có chức năng
chính dùng để chuyển 1 giá trị rõ x thành 1 giá trị mờ trong X S (U: U
không gian nền) Có hai phương pháp mờ hóa như sau:
(Fuzzy Inference Engine)
Các tập mờ
Đầu ra rõ Đầu vào rõ
Trang 19Chương I: Tổng quan về Lôgic mờ 12
+ Singleton fuzzifier: Tập mờ A với xi, và hàm liên thuộc được định
nghĩa như sau:
x xif )
+ Non- Singleton fuzzifier: Với các hàm liên thuộc nhận giá trị lớn nhất
là 1 tại x=xi và giảm dần từ 1 đến 0 với các giá trị dịch chuyển x=xi
3.2 Hệ luật mờ:
Gồm nhiều mệnh đề dạng
IF <tập các điều kiện được thoả mãn> THEN <tập các hệ quả>
Giả sử hệ luật gồm M luật Rj (j = 1 M) dạng:
R j : IF x 1 is A 1 j and x 2 is A 2 j and … x n is A n j THEN y is B j ,
Trong đó xi (i = 1 n) là các biến đầu vào hệ mờ , y là biến đầu ra của hệ mờ - các biến ngôn ngữ, Aij và Bj là các tập mờ trong các tập đầu vào X và các tập đầu ra Y - các giá trị của biến ngôn ngữ (ví dụ: “nhỏ”, “trung bình”, “lớn”,
i A
và j
B
hệ mờ từ các tập mờ đầu vào X = X1 x X2 x …x Xn tới các tập mờ đầu ra Y
3.3 Động cơ suy diễn:
Đây là bộ phận lôgic đưa ra quyết định sử dụng hệ mờ để thực hiện ánh
xạ từ các tập mờ trong không gian đầu vào S thành tập mờ trong không gian đầu ra R
Khi Rl là một quan hệ mờ, thì Rl có thể là một tập con của tích Decart
Y}
y X,x :y)}
,x
{(
Y
x
vậy quan hệ Rl là một hàm ánh xạ từ tập mờ trong X tới tập mờ trong Y, A1j
x A2j x …x Ajn Bj được gọi là một động cơ suy diễn mờ
Trang 20Chương I: Tổng quan về Lôgic mờ 13
Giả sử A là một tập mờ trong S, và là đầu vào của bộ suy diễn Khi đó
mỗi luật Rl tạo ra một tập mờ Bl trong Y như sau:
với * là một toán tử T_chuẩn được định nghĩa trong bảng 1.1 Quan hệ Rj
được định nghĩa thông qua hàm liên thuộc sau:
(y)
* μ ) (x μ T
(y) )*μ
(x )* *μ (x
)*μ (x μ
,y) x (
*μ μ
,y) x ( μ
j A
n i
j B n j n A j
A j
A
j B j n x xA j xA j A j
B j n x xA j xA j A j
2 2
1 1
2 1 2
)*μ (x μ ) x
(
i X
n i n n X X
X x
) (x μ ) (x μ (y)
μ
(y)
* μ ) (x μ T ) (x μ T
y x μ
x
y x x
y
n j n A n
n X n X n x
i j A i
i X i X x j
B
j B i
j A
n i i
i X
n i U x
j B j n x xA j xA j A Ax
U x
j R Ax
U x j
B
*sup
*
*
*sup
*
*sup
),(
*)(sup
),(
*)(sup
)(
1 1
1 1 1
2 1
Đây là một ánh xạ từ các tập mờ trong R thành các giá trị rõ trong R
Có nhiều phép giải mờ, với mỗi ứng dụng sẽ có một phương thức giải mờ
Trang 21Chương I: Tổng quan về Lôgic mờ 14
khác nhau tuỳ thuộc yêu cầu của ứng dụng Dưới đây sẽ liệt kê một số phương thức giải mờ thông dụng:
+ Phương pháp độ cao:
)(
)()
(
j M
i B j
j M
)*μ (x μ y
n A A
A
j j B
j j
2
1 1
/)()
(
j j M
i B j
j j M
)()
(
1
1
i N
i N
c
y
y y
)()
i A i j
n i
i M
n i j
x T
x T
c x
Trang 22Chương I: Tổng quan về Lôgic mờ 15
nghiệm với hai giá trị đầu vào là x1 = 3 và x2 = 5, sử dụng dạng T_chuẩn MIN
(T(x,y) = min(x,y)) tính được tổng hợp của các tập mờ phía IF và THEN hình
(d) Sử dụng T_đối chuẩn cho tất cả đầu ra như hình (e)
Giải mờ theo các công thức (1.40) – (1.44) ta được:
7368.20.2
0.80.9
0.2x50.8x3
4.0/9.0
0.2x5/0.20.8x3/0.2
4.0/29.0
2 2
2
2 2
0.80.9
0.2x4.84360.8x3
0068.2
Trang 23Chương II: Mạng Neural Nhân tạo 16
CHƯƠNG 2
MẠNG NEURAL NHÂN TẠO
Mạng Neural nhân tạo - Artificial Neural Network là sự tái tạo bằng kỹ thuật những chức năng của hệ thần kinh con người với vô số các Neural được liên kết truyền thông với nhau trong mạng hay nói cách khác đó là một hệ thống xử lý bằng máy tính bao gồm rất nhiều các phần tử xử lý được kết nối với nhau theo một cấu trúc mô phỏng nguyên lý hoạt động của bộ não con người
1 GIỚI THIỆU VỀ MẠNG NEURAL
Mô phỏng sinh học, đặc biệt là mô phỏng neural thần kinh là một ước muốn từ lâu của nhân loại Với khoảng 15 tỷ neural ở não người, mỗi neural
có thể nhận hàng vạn tín hiệu từ các khớp thần kinh và được coi là một cơ chế sinh học phức tạp nhất
Não người có khả năng giải quyết những vấn đề như: nghe, nhìn, nói, hồi
ức thông tin, phân biệt các mẫu mặc dù dữ kiện bị méo mó, thiếu hụt Não thực hiện những nhiệm vụ như vậy bởi có những phần tử gọi là neural, não phân bố việc xử lý cho hàng tỷ neural có liên quan, điều khiển liên lạc giữa các neural Neural không ngừng nhận và truyền thông lẫn nhau Cơ chế hoạt động của neural bao gồm: Tự liên kết, tổng quát hoá và tự tổ chức, chúng liên kết với nhau thành mạng, mỗi mạng gồm hàng vạn các phần tử neural khác nhau, mỗi phần tử neural có khả năng liên kết với hàng nghìn các neural khác Lịch sử của quá trình nghiên cứu và phát triển của mạng neural nhân tạo
có thể được chia thành 4 giai đoạn như sau:
Trang 24Chương II: Mạng Neural Nhân tạo 17
+ Giai đoạn 1: Giai đoạn này có thể được tính từ nghiên cứu của
William năm 1890 về tâm lý học với sự liên kết các neural thần kinh Năm
1940 McCulloch và Pitts đã cho biết: neural có thể được mô hình hoá như thiết bị ngưỡng (giới hạn) để thực hiện các phép tính lôgic Cũng thời gian đó Wiener đã xét các mối liên quan giữa nguyên lý phản hồi và chức năng bộ não
+ Giai đoạn 2: Xuất phát từ những năm 60 của thế kỷ 20, gần như đồng
thời một số mô hình Neural hoàn hảo hơn đã được đưa ra đó là mô hình:
- Perceptron của Robenbltt
- Adaline của Widrow
- Ma trận học của Steinbuck
Trong đó mô hình Perceptron rất được quan tâm vì nguyên lý đơn giản, nhưng nó cũng có hạn chế vì chỉ dùng được cho các hàm lô gic đơn giản Còn Adline là mô hình tuyến tính, tự chỉnh, được dùng rộng rãi trong điều khiển thích nghi, tách nhiễu vẫn phát triển và ứng dụng cho đến nay
+ Giai đoạn 3: Xuất phát từ những năm 80 của thế kỷ 20, những đóng
góp lớn cho mạng neural trong giai đoạn này phải kể đến Grossberg, Kohonen, Rumelhart và Hofield Đóng góp lớn của Hofield gồm hai mạng phản hồi: rời rạc và liên tục Đặc biệt, ông đã dự kiến nhiều khả năng tính toán lớn của mạng mà một neural không có được khả năng đó Cảm nhận đó
đã được Rumelhart, Hinton và Williams đề xuất thuật toán sai số truyền ngược (Backprogation) nổi tiếng để huấn luyện mạng neural nhiều lớp nhằm giải bài toán mà các mạng khác không thực hiện được
+ Giai đoạn 4: Xuất phát từ năm 1987 cho đến ngày nay, hàng năm
thế giới đều mở hội nghị toàn cầu chuyên ngành mạng neural IJCNN
Trang 25Chương II: Mạng Neural Nhân tạo 18
(International Joint Conference on Neural Networks) Hàng loạt lĩnh vực
khác nhau như kỹ thuật tính, tối ưu, sinh học, y học, thống kê, giao thông, hoá học… đã đóng góp nhiều công trình nghiên cứu và ứng dụng mạng neural vào lĩnh vực của mình
2 KIẾN TRÚC MẠNG NEURAL NHÂN TẠO
Mạng Neural nhân tạo bao gồm các nút (đơn vị xử lý, Neural) được nối với nhau bởi các liên kết Neural Mỗi liên kết kèm theo một trọng số nào đó, đặc trưng cho đặc tính kích hoạt/ức chế giữa các Neural
Có thể xem các trọng số là phương tiện để lưu giữ thông tin dài hạn trong mạng neural và nhiệm vụ của quá trình huấn luyện (học) mạng là cập nhật các trọng số khi có thêm thông tin về các mẫu học, hay nói một cách khác, các trọng số được điều chỉnh sao cho dáng điệu vào ra của nó mô phỏng hoàn toàn phù hợp với môi trường đang xem xét
Trong mạng, một số Neural được nối với môi trường bên ngoài như các đầu ra, đầu vào
2.1 Kiến trúc Neural
Hình 2.1: Kiến trúc cơ bản của Neural
Mỗi Neural được nối với các Neural khác và nhận được các tín hiệu sj từ các Neural đó với các trọng số wj Tổng các thông tin vào có trọng số là:
Net =∑ g out
Hàm vào Hàm kích Đầu ra hoạt
Trang 26Chương II: Mạng Neural Nhân tạo 19
Đây là thành phần tuyến tính của Neural Hàm kích hoạt g (còn gọi là
hàm chuyển – transfer function) đóng vai trò biến đổi từ Net sang tín hiệu đầu
Đây là thành phần phi tuyến của Neural Một số hàm thường dùng trong
0 xif0)
0 xif )
1x0if
x
0 xif 0)
1x0if
x
-1 xif 1)
(x
g
e x
1
1)
(
1
2)
x
e x
g
e e
e e x
0 xif )
(
x x g
all
max x
h neuron witif
)
(x
g
Bảng 2.1: Danh sách các hàm chuyển thông dụng
Trang 27Chương II: Mạng Neural Nhân tạo 20
Ở đây ngưỡng đóng vai trò làm hàm tăng tính thích nghi và khả năng tính toán của mạng neural
Các hàm lôgic cơ bản AND, OR, NOT được biểu diễn thông qua các neural sau:
5.1
Bảng 2.2: Neural biểu diễn các hàm lôgic cơ bản (AND, OR, NOT)
2.2 Mạng neural nhân tạo
Mạng neural là hệ thống bao gồm nhiều phần tử xử lý đơn giản (neural) hoạt động song song Tính năng của hệ thống này tuỳ thuộc vào cấu trúc của
hệ, các trọng số liên kết neural và quá trình tính toán tại các neural đơn lẻ Mạng neural có thể học từ dữ liệu mẫu và tổng quát hoá dựa trên các dữ liệu mẫu học
Trong mạng neural các neural đón tín hiệu vào gọi là các neural vào và các neural đưa thông tin ra gọi là neural ra
Trang 28Chương II: Mạng Neural Nhân tạo 21
Các neural liên kết với nhau để tạo thành mạng neural nhân tạo Có nhiều cách liên kết để tạo ra các loại mạng neural khác nhau, do đó có nhiều cách để phân loại các mạng neural:
+ Dựa vào số lượng tầng có trong mạng ta phân thành:
- Mạng 1 tầng (Single Layer)
- Mạng nhiều tầng (Multi Layer)
+ Dựa vào đường truyền tín hiệu trong mạng ta phân thành:
- Mạng truyền thẳng (Feed-forward network)
- Mạng phản hồi (Recurrent network)
- Mạng tự tổ chức (Self-organization network)
Trong mỗi lớp mạng lại có nhiều mạng với tên gọi và các đặc trưng khác nhau Một kiểu phân loại điển hình được biểu diễn như hình dưới đây:
Hình 2.2 : Cây phân loại các mạng neural nhân tạo
MẠNG NEURAL NHÂN TẠO
Nhiều
tầng
Một tầng
Brain State-in Box
Máy Boltz-man
field
Hop-Ánh xạ đặc trưng
ART
cep-tion
Per-line
Ada-Cohen Gross-berg
Mc Culloch Pitts
Back
Propa-gation
Trang 29Chương II: Mạng Neural Nhân tạo 22
2.3 Mạng truyền thẳng nhiều tầng Back Propagation
Với mạng truyền thẳng một tầng thì việc phân tích các bài toán trên thực
tế phức tạp gặp phải rất nhiều khó khăn, với mạng một tầng có thể có một số
đầu vào mạng không có khả năng nhận biết Liên kết một số tầng cho khả
năng ánh xạ phi tuyến phức tạp giữa các đầu vào và các đầu ra Khả năng đó
có thể sử dụng để phân lớp hoặc mô tả các quan hệ phi tuyến phức tạp giữa
các lớp Mạng hai tầng có khả năng ánh xạ các hàm trong vùng lồi Mạng một
hoặc hai tầng nói chung dễ phân tích Mạng ba tầng hoặc nhiều tầng có khả
năng mô tả được mọi hàm phi tuyến Theo Cybenco thì bất kỳ hàm phi tuyến
nào cũng có thể xấp xỉ tuỳ ý trên một tập Compact bằng mạng neural truyền
thẳng gồm hai tầng ẩn với độ phi tuyến cố định
Trang 30Chương II: Mạng Neural Nhân tạo 23
Một mạng có thể có nhiều tầng Mỗi tầng có một ma trận trọng số W, một vector ngưỡng (bias) b, và một vector đầu vào p
S1 neural ở tầng vào, S2 neural ở tầng ẩn và S3 neural ở tầng ra Một biến vào tại bias luôn nhận giá trị 1 cho mỗi neural
Trong mô hình mạng trên thì số neural đầu vào của tầng sau luôn là số neural đầu ra của tầng trước đó
2.3.2 Cơ chế hoạt động và phương thức học mạng
2.3.2.1 Cơ chế hoạt động
Mạng neural có hai chế độ hoạt động:
Lan truyền tiến – Feedforward: Với một bộ mẫu dữ liệu vào được lan
truyền vào trong mạng để nhận được các giá trị đầu ra
Với mỗi nút đầu ra thứ k, giá trị kích hoạt được tính dựa trên giá trị đầu vào của nH nút ở tầng ẩn theo công thức:
j
t k kj j k
kj j
)
d
kj k
Trang 31Chương II: Mạng Neural Nhân tạo 24
Học – Learning: Học quá trình sử dụng các bộ mẫu dữ liệu để huấn luyện
mạng nhằm làm thay đổi các tham số của mạng sao cho giá trị đầu ra thu được từ mạng gần nhất với giá trị mà chúng ta mong đợi
2.3.2.2 Học mạng neural - Network Learning
Gọi tk là giá trị đầu ra mong muốn thứ k và zk là giá trị nhận được từ mạng neural với k = 1, …, c và w là các giá trị trọng số của mạng Khi đó dựa trên nguyên tắc lỗi bình phương nhỏ nhất – Mean Square Error ta có sai số trong quá trình huấn luyện mạng:
t w
J
1
2 2
2
1)(
2
1)
Luật học BackPropagation dựa trên nguyên tắc giảm gradient Với một
bộ dữ liệu mẫu D yêu cầu học các tham số w sao cho tổng lỗi dưới đây là nhỏ
c
k k k
z t Sum
1
2)(
kj
k k
net w
net net
J w
k
k k
k
net
z z
J net
Trang 32Chương II: Mạng Neural Nhân tạo 25
j j
net net
y y
J w
c
j
k k
k k
k
c
k k k k
c
j j
w net f z t y
net net
z z t
y
z z t z
t y
)(')(
.)
(
)(
)(
1
)(
kj j
Trang 33Chương II: Mạng Neural Nhân tạo 26
1 ( )
*)()(' 1
1)
e x
3 Lặp cho đến khi thoả mãn điều kiện dừng
3.1 Với mỗi mẫu <X,T> trong bộ mẫu huấn luyện
3.1.1 Lan truyền tiến trong mạng
1 Với mỗi giá trị đầu vào X tính giá trị đầu ra ou của tất cả các neural trong mạng
Trang 34Chương II: Mạng Neural Nhân tạo 27
2.3.4 BackPropagation với cơ chế cập nhật tham số Online và Batching
Cơ chế cập nhật trọng số theo phương thức Online Mode đã được thể hiện ở trong thuật toán 2.3.3 ở trên, các tham số được cập nhật ngay sau mỗi một bộ dữ liệu mẫu của tập huấn luyện được truyền vào mạng
Ngoài ra, phương thức Batching Mode, các tham số chỉ được cập nhật một lần duy nhất sau khi toàn bộ các mẫu của tập huấn luyện đã được truyền qua mạng theo công thức sau:
wji (t+1) = wji (t)+ ∆wji (t) = wji (t) +
m k
với k là số mẫu của tập huấn luyện và ∆wjik(t) là bước giảm của mẫu thứ k
Khi tỉ lệ học rất nhỏ thì hai phương thức này là tương đương nhau
2.3.5 BackPropagation với Momentum
Từ các công thức cập nhật trọng số ở trên ta thấy: Nếu tỉ lệ học là lớn, thì quá trình học diễn ra nhanh nhưng có thể có nhiều dao động, ngược lại quá trình học diễn ra chậm hơn nhưng sẽ không có dao động Để dung hoà và khắc phục hiện tượng này, một đại lượng mới 0,1được thêm vào công
thức cập nhật trọng số gọi là momentum Khi đó công thức cập nhật trọng số
sẽ là:
wji (t+1) = wji (t)+ ∆wji (t) + ∆wji (t-1) (2.31)
Trang 35Chương III: Thuật giải di truyền 28
CHƯƠNG 3
THUẬT GIẢI DI TRUYỀN
1 THUẬT GIẢI DI TRUYỀN VÀ THUYẾT TIẾN HOÁ SINH HỌC
Thuật giải di truyền – Genetic Algorithms (GA) do D.E Goldberg đề xuất, được L.Davis và Z Michalevicz phát triển Thuật giải di truyền, cũng như các thuật toán tiến hoá nói chung, được bắt nguồn từ ý niệm tiến hoá để tồn tại và phát triển trong tự nhiên với quan niệm cho rằng: quá trình tiến hoá
tự nhiên là quá trình hoàn hảo nhất, hợp lý nhất, và tự nó đã mang tính tối ưu Quan niệm này được xem như là một tiên đề đúng, không chứng minh được, nhưng phù hợp với thực tế khách quan Quá trình tiến hoá thể hiện tính tối ưu
ở chỗ: thế hệ sau bao giờ cũng tốt hơn (phát triển hơn, hoàn thiện hơn) thế hệ trước Tiến hoá tự nhiên được duy trì nhờ hai quá trình: sinh sản và chọn lọc
tự nhiên Xuyên suốt quá trình tiến hoá tự nhiên, các thế hệ mới luôn được sinh ra để bổ sung thay thế thế hệ cũ Cá thể nào phát triển hơn, thích ứng hơn với môi trường sẽ được tồn tại Cá thể nào không thích ứng được với môi trường sẽ bị đào thải Sự thay đổi môi trường là động lực thúc đẩy quá trình tiến hoá Ngược lại, tiến hoá cũng tác động trở lại góp phần làm thay đổi môi trường
2 TÍNH CHẤT QUAN TRỌNG CỦA THUẬT GIẢI DI TRUYỀN
Thuật giải di truyền là phương thức giải quyết vấn đề bắt chước lỗi hành
xử của con người để sinh tồn và phát triển Nó giúp ta tìm ra giải pháp tối ưu hay tốt nhất trong điều kiện thời gian và không gian cho phép Các thuật toán này có đặc điểm là tìm kiếm song song trong không gian trạng thái so với tìm
kiếm point – by – point của kỹ thuật tối ưu thông thường Việc tìm kiếm song
Trang 36Chương III: Thuật giải di truyền 29
song được lưu trữ bằng việc giữ lại một tập hợp các giải pháp có thể phục vụ cho việc tìm kiếm tối ưu gọi là một quần thể Mỗi thực thể trong quần thể đó
là một chuỗi các biểu tượng – symbol và là một sự trình bày trừu tượng cho
một giải pháp Các biểu tượng được gọi là các gene và mỗi chuỗi biểu tượng được gọi là một nhiễm sắc thể - chromosome
Thuật giải di truyền có các tính chất quan trọng sau:
1 Thuật giải di truyền lập luận có tính chất ngẫu nhiên để tìm giải pháp tối ưu cho các vấn đề phức tạp Tuy nhiên đây là hình thức ngẫu nhiên
có hướng dẫn bởi trị số thích nghi Chính hàm số thích nghi là vật chỉ đường cho GA tìm ra giải pháp tối ưu trong muôn ngàn giải pháp có thể có
2 Vấn đề thích hợp nhất cho GA là tìm điều kiện tối ưu Tối ưu đây không nhất thiết phải là tuyệt đối, nhưng có thể chỉ là tương đối trong hoàn cảnh và thời gian cho phép
3 GA là lý thuyết thích hợp cho những trường hợp phải tìm kiếm Nếu chúng ta phải tìm giải pháp trong trăm ngàn đáp số thì GA là kỹ thuật phải được lựa chọn trước nhất Trước đây phương pháp “trèo núi”
(hill climbing) là phương pháp rất thích hợp, tuy nhiên thường cung
cấp giải pháp có tính chất địa phương thay vì toàn diện như GA
4 Một trong những bước quan trọng và khó khăn nhất là tìm hàm số
thích nghi (fitness function) Hàm số thích nghi phải có liên hệ trực
tiếp đến vấn đề phải giải quyết Ví dụ đối với vấn đề đầu tư, hàm số thích nghi có thể là lợi nhuận thu được do đầu tư, cũng có thể là tiền lời tích luỹ sau một thời gian nhất định
5 GA và ANN đều thuộc vào nhóm khoa học trí tuệ nhân tạo, tuy nhiên
GA lập luận dựa theo sự tiến hoá và xét vấn đề ở tầm mức của gene và
Trang 37Chương III: Thuật giải di truyền 30
nhiễm sắc thể, khác với ANN dựa trên các kinh nghiệm và cách giải quyết vấn đề mà bộ óc con người thường dùng Muốn giải quyết vấn
đề, ANN phải tạo ra một mạng lưới gồm các neural chứa trong các lớp nhận tin, lớp cho kết quả và các lớp trung gian Muốn cho kết quả chính xác, ANN phải có một mạng lưới tối ưu Làm thế nào để chọn một cách tối ưu số lớp, số neural trong mỗi lớp, hệ số huấn luyện và các chi tiết khác? GA sẽ giúp giải quyết vấn đề này
3.1 Toán tử chọn lựa - Selection
Toán tử chọn lọc là thao tác xử lý trong đó mỗi cá thể được bảo lưu cho vòng tạo sinh tiếp theo sau đó tuỳ thuộc vào giá trị hàm thích nghi của nó Đây là một phiên bản mô tả quá trình chọn lọc tự nhiên Giá trị hàm thích nghi được xác định đối với mỗi cá thể trong quần thể, giá trị này càng lớn thì
cá thể được coi là hợp lý Xử lý chọn lọc các cá thể cha mẹ được hình thành theo mô hình tái tạo quay trên vòng tròn (roulette weel) Vòng quay của chúng có những kích cỡ khác nhau ứng với những giá trị hợp lý của các cá thể Đây là kỹ thuật lựa chọn cha mẹ trên vòng tròn quay (roulette weel parent selection) Mỗi khi cần tạo ra một con cháu, sẽ thực hiện một lần quay trên vòng tròn trọng số nhằm sản sinh ra ứng cử viên cho việc tái sản xuất
Kỹ thuật này có thể thực hiện theo các bước sau:
thể và gọi nó là tổng thích nghi (Total Fitness)
Trang 38Chương III: Thuật giải di truyền 31
thích nghi
với độ thích nghi của các thành viên quần thể trước đấy lớn hơn
hoặc bằng n
3.2 Toán tử lai ghép - Crossover
Toán tử chọn lọc nhằm tạo ra những cá thể tồn tại tốt nhất nhưng nó không tạo ra cá thể mới Tuy nhiên, trong tự nhiên các con sẽ thừa hưởng di truyền những đặc tính tốt của cả cha và mẹ Toán tử lai ghép sẽ tác động trên
cả hai cá thể cha, mẹ để tạo ra các con lai tốt Chúng được tác động lên cặp cá
thể cha mẹ được chọn với xác suất lai ghép P cross Xác suất này cho chúng ta
số lượng P cross *(kích cỡ quần thể) nhiễm sắc thể được dùng cho hoạt động lai
ghép
Với mỗi nhiễm sắc thể trong quần thể:
1 Phát sinh một số ngẫu nhiên r є [0,1]
2 Nếu r < P cross chọn nhiễm sắc thể để lai ghép
Sau đó ta kết hợp các nhiễm sắc thể được chọn một cách ngẫu nhiên:
Mỗi cặp nhiễm sắc thể, chúng ta có thể phát sinh một số ngẫu
nhiên pos từ miền [1 L] (L là tổng số bit trong nhiễm sắc thể) Số pos báo hiệu vị trí của điểm lai ghép Ví dụ lai ghép cặp nhiễm sắc
thể cha mẹ sau:
Trang 39Chương III: Thuật giải di truyền 32
Vị trí lai ghép NST 1
NST 2
Con lai 1
Con lai 2
Hình 3.1: Minh hoạ toán tử lai ghép
3.3 Toán tử đột biến – Mutation
Các toán tử đột biến nhằm tạo ra những thông tin mới trong quần thể lai tại các vị trí gene nào đó và ngăn chặn hiện tượng cự đại cục bộ trong quần
*(số gene trên 1 nhiễm sắc thể)*(kích cỡ quần thể) Mỗi gene đều có cơ hội
đột biến như nhau và được xử lý theo cách sau đây:
Với mỗi nhiễm sắc thể trong quần thể và mỗi gene trong nhiễm sắc thể:
1 Phát sinh một số ngẫu nhiên r є [0,1]
2 Nếu r < P mu tiến hành đột biến tại gene đó
Lặp lại các thao tác này cho đến khi các cá thể con cháu của chúng tăng trưởng tới kích cỡ mong muốn của quần thể
Phương thức biến đổi gene trong quá trình đột biến có thể thực hiện theo nhiều cách như hình 3.2a: gene đột biến được biến đổi ngẫu nhiên thành
1 gene bất kỳ nào đó trong nhiễm sắc thể; hình 3.2b: gene đột biến được biến
dung với 1 gene khác trong nhiễm sắc thể:
Trang 40Chương III: Thuật giải di truyền 33
3.4 Hàm thích nghi - Fitness Function
Như đã đề cập ở các phần trên, để so sánh lựa chọn trong quá trình tiến hoá người ta cần tới một sự đánh giá các lựa chọn đó bằng cách sử dụng hàm thích nghi (Fitness) để tính hệ số thích nghi cho từng giải pháp Căn cứ trên
hệ số này để thực hiện sự tạo sinh (reproduction) và biến hoá các giải pháp và
là căn cứ cho việc tìm các giải pháp mới và loại bỏ những giải pháp yếu kém Hàm thích nghi dùng để ánh xạ giá trị hàm mục tiêu sang giá trị thích nghi và điều chỉnh độ thích nghi
Với bài toán tối ưu cần cực tiểu một hàm đánh giá g(x) ta định nghĩa hàm thích nghi dạng:
Cg(x) if )()
X