Chúng ta biết rằng kinh nghiệm của chuyên gia có thể được xác định thôngqua các luật mờ, dữ liệu thống kê có thể được dùng để huấn luyện mạng nơ ron.Việc kết hợp 2 khả năng này sẽ tạo ra
Trang 1LỜI CAM ĐOAN
Tôi xin cam đoan:
Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn củathầy Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng và trung thực
về tên tác giả, tên công trình, thời gian và địa điểm công bố
Tôi xin chịu hoàn toàn trách nhiệm về sự trung thực của luận văn và với mọisao chép không hợp lệ, hay gian trá
Tác giả luận văn
Trang 2LỜI CẢM ƠN
Trước hết em xin gửi lời cảm ơn chân thành các thầy cô của trường Đại họcCông nghệ thông tin và truyền thông – Đại học Thái Nguyên, các thầy cô của ViệnCông nghệ thông tin – Viện Hàn lâm Khoa học và Công nghệ Việt Nam đã tận tìnhgiảng dạy cũng như t ạo mọi điều kiện cho em học tập và nghiên cứu trong thời gianvừa qua
Em xin gửi lời cám ơn tới thầy giáo TS Phạm Thanh Hà, người đã tận tìnhhướng dẫn, động viên và giúp đỡ em thực hiện luận văn ngay từ những bước đầutiên đến khi hoàn thành
Tôi xin cảm ơn các đồng nghiệp và người thân đã động viên, giúp đỡ tôi trongquá trình nghiên cứu và thực hiện luận văn này
Do thời gian có hạn và vốn kiến thức còn hạn chế, chắc chắn luận văn khôngthể tránh khỏi những thiếu sót Em rất mong nhận được những ý kiến đóng góp củathầy cô và các bạn để luận văn này được hoàn thiện hơn
Xin trân trọng cảm ơn!
Thái Nguyên, tháng 4 năm 2016
Trang 3Mục lục
LỜI CAM ĐOAN i
DANH MỤC HÌNH VẼ 4
MỞ ĐẦU 5
1 Đặt vấn đề 5
2 Đối tượng và phạm vi nghiên cứu 6
3 Hướng nghiên cứu của đề tài 6
4 Phương pháp nghiên cứu 6
5 Ý nghĩa khoa học của đề tài 6
CHƯƠNG 1 7
LOGIC MỜ VÀ MẠNG NƠ RON 7
1.1 Logic mờ 7
1.1.1 Biến ngôn ngữ 7
1.1.2 Mệnh đề mờ 8
1.1.3 Các mệnh đề hợp thành 10
1.1.4 Kéo theo mờ (Luật if – then mờ) 11
1.1.5 Lược đồ lập luận xấp xỉ 13
1.2 Mạng nơron truyền thẳng và giải thuật huấn luyện 19
1.2.1 Cấu trúc và mô hình của mạng nơron 19
1.2.2 Phân loại cấu trúc mạng nơ ron 23
1.2.3 Các luật học 25
1.2.4 Mạng nơ ron truyền thẳng 26
Chương 2 35
HỆ LAI MỜ - NƠRON 35
2.1 Sự kết hợp giữa logic mờ và mạng nơron 35
2.1.1 Khái niệm 35
2.1.2 Cấu trúc chung của hệ mờ - nơron 36
2.2 Biểu diễn luật If-Then theo cấu trúc mạng nơron 38
2.3 Nơron mờ 39
2.4 Huấn luyện mạng nơron mờ 41
2.5 Phân loại kết hợp mạng nơ ron và logic mờ 42
2.5.1 Neuro-Fuzzy Systems (NFS) 42
2.5.2 Fuzzy Neural Network (FNN) 48
Chương 3 50
XÂY DỰNG HỆ MỜ - NƠ RON 50
DỰ BÁO TĂNG TRƯỞNG PHƯƠNG TIỆN GIAO THÔNG ĐƯỜNG BỘ 50
3.1 Sự ra đời của một mô hình dự báo 50
3.2 Sử dụng công cụ Anfis trong Matlab để thiết kế hệ mờ - nơron 51
3.2.1 Kiến trúc và hoạt động của ANFIS 51
3.2.2 Công cụ Anfis trong Matlab để thiết kế hệ mờ - nơron 52
3.3 Dữ liệu thống kê và dự báo 58
KẾT LUẬN 69
TÀI LIỆU THAM KHẢO 70
Trang 44 Hình 1.4 Một mạng nơ ro n đơn giản gồm hai nơ ron 19
7 Hình 1.7 Các hàm kích hoạt: (a) hàm bước nhẩy; (b) hàm dấu; (c)
hàm dốc; (d) hàm sigmoid đơn cực; (e) hàm sigmoid lưỡng cực 23
10 Hình 1.15 Mạng truyền thẳng ba lớp lan truyền ngược sai số 30
13 Hình 2.7 Cấu trúc của một mạng NFS thường gặp 43
15 Hình 3.4 Biểu đồ số người chết vì tai nạn giao thông đường bộ 60
16 Hình 3.5 Kiến trúc hệ mờ dự báo tăng trưởng phương tiện ô tô 62
19 Hình 3.8 Kết quả hồi tưởng dữ liệu mẫu của hệ thống 63
22 Hình 3.11 Kiến trúc hệ mờ dự báo tăng trưởng phương tiện xe máy 65
23 Hình 3.12 Dữ liệu huấn luyện cho hệ mờ nơ ron 66
Trang 5MỞ ĐẦU
1 Đặt vấn đề
Lý thuyết tập mờ và logic mờ là cơ sở toán học cho việc nghiên cứu, phát triểncác phương pháp lập luận khác nhau, được gọi là phương pháp lập luận xấp xỉ(approximate reasoning method), để mô phỏng cách thức con người lập luận Trênthực tế lý thuyết tập mờ và logic mờ là công cụ hữu hiệu giúp chúng ta giải quyếtnhiều bài toán có thông tin mờ không đầy đủ
Mạng nơ ron bao gồm các nơ ron được liên kết với nhau bằng các trọng sốtheo một cấu trúc xác định Mạng nơ ron có thể được huấn luyện để thực hiện cácnhiệm vụ khác nhau Quá trình huấn luyện sẽ thiết lập bộ trọng số cho các liên kếtgiữa các nơ ron trong mạng
Mạng nơ ron nhân tạo được chia ra làm nhiều loại, trong đó người ta quan tâmnhiều đến cấu trúc mạng nơ ron và giải thuật huấn luyện, về cấu trúc có thể chia racác loại mạng như mạng nơ ron một lớp, nhiều lớp, mạng nơ ron hồi quy, mạng nơron truyền thẳng
Trong những năm gần đây xu hướng kết hợp mạng nơ ron nhân tạo với logic
mờ đang được quan tâm, với sự kết hợp này người ta hi vọng khai thác và tích hợpđược những khả năng tiềm tàng của 2 lĩnh vực
Hệ mờ nơ ron là một sự kết hợp giữa logic mờ và và khả năng học của mạng
nơ ron Một trong những sự kết hợp đó mà hệ mờ nơ ron thích nghi (ANFIS Adaptive neuro fuzzy inference system) Hệ thống này có khả năng tối ưu hóa hệ
-mờ dựa trên các mẫu có sẵn
Bài toán dự báo là một trong những vấn đề được giới chuyên môn quan tâm.Việc dự báo thông thường được tiến hành dựa trên các số liệu thống kê và kinhnghiệm của chuyên gia [2]
Chúng ta biết rằng kinh nghiệm của chuyên gia có thể được xác định thôngqua các luật mờ, dữ liệu thống kê có thể được dùng để huấn luyện mạng nơ ron.Việc kết hợp 2 khả năng này sẽ tạo ra một hệ thống có thể dự báo chính xác
Và đó cũng là lý do đ ể luận văn chọn đề tài: Hệ lai mờ - nơ ron và ứng dụng trong dự báo
Trang 62 Đối tượng và phạm vi nghiên cứu
- Các khái niệm cơ bản liên quan đến tập mờ, logic mờ, hệ mờ
- Các khái niệm cơ bản liên quan đến mạng nơ ron
- Nghiên cứu bài toán dự báo một số chỉ tiêu kinh tế xã hội
- Xây dựng hệ mờ - nơ ron hỗ trợ dự báo một số chỉ tiêu kinh tế xã hội
3 Hướng nghiên cứu của đề tài
- Nghiên cứu lý thuyết tập mờ, logic mờ, hệ mờ
- Nghiên cứu mạng nơ ron, hệ mờ - nơ ron
- Xây dựng hệ mờ - nơ ron hỗ trợ dự báo một số chỉ tiêu kinh tế xã hội
4 Phương pháp nghiên cứu
- Nghiên cứu lý thuyết kết hợp với cài đặt thực nghiệm
5 Ý nghĩa khoa học của đề tài
Hệ thống được các kiến thức về tập mờ, logic mờ, mạng nơ ron, các lĩnhvựng ứng dụng
Cài đặt thử nghiệm giải quyết bài toán thực tế: Xây dựng Hệ mờ - nơ ron hỗtrợ dự báo một số chỉ tiêu kinh tế xã hội
Trang 7CHƯƠNG 1 LOGIC MỜ VÀ MẠNG NƠ RON 1.1 Logic mờ
1.1.1 Biến ngôn ngữ
Xét một biến nhận giá trị trong một miền giá trị nào đó, chẳng hạn “nhiệt độ”
có thể nhận giá trị số là 1C, 2C,… là các giá trị chính xác Khi đó với một giá trị
cụ thể gán vào biến sẽ giúp chúng ta xác định được tính chất, quy mô của biến.Ngoài ra chúng ta còn biết được những thông tin khác liên quan đến biến đó
Ví dụ chúng ta hiểu là không nên chạm tay trần vào vật có “nhiệt độ” là 80 C trởlên Nhưng trong thực tế thì chúng ta thường nói “không nên chạm vào vật có nhiệt
độ cao” chứ ít khi nói “không nên chạm vào vật có nhiệt độ là 80 C trở lên”
Thực tế là lời khuyên đầu thì có ích hơn bởi vì nếu nhận đư ợc lời khuyên sauthì ta dễ bị ngộ nhận là có thể chạm tay vào vật có nhiệt độ là 79C trong khi đó vật
có nhiệt độ 80C trở lên thì không
Nhưng vấn đề đặt ra là nếu nghe theo lời khuyên đầu thì ta có thể xác địn h rõ
là nhiệt độ bằng bao nhiêu thì có thể chạm tay vào? Câu trả lời là tuỳ vào ý kiến củatừng người Với nhiệt độ là 60C thì có người cho là cao trong khi người khác thìkhông
Tuy các ý kiến là khác nhau nhưng có một điều chắc chắ n là khi giá trị củabiến nhiệt độ càng tăng thì càng dễ dàng được chấp nhận là “cao” Như vậy nếu xéthàm cao nhận biến nhiệt độ và trả về tỷ lệ ý kiến đồng ý là “cao” thì cao sẽ làhàm thuộc của tập mờ “nhiệt độ cao ” trên vũ trụ “nhiệt độ”
Biến nhiệt độ có thể nhận giá trị “cao” là một giá trị của ngôn ngữ tự nhiênnên nó được gọi là một biến ngôn ngữ (linguistic variable)
Trang 8Hình 1.1 Hàm thuộc của tập mờ “nhiệt độ cao”
Khái niệm biến ngôn ngữ đã được Zadeh đ ưa ra năm 1973 như sau:
Một biến ngôn ngữ được xác định bởi bộ (x, T, U, M) trong đó: x là tên biến,
T là tập các từ là các giá trị ngôn ngữ tự nhiên mà x có thể nhận, U là miền các giátrị vật lý mà x có thể nhận, M là luật ngữ nghĩa, ứng mỗi từ trong T v ới một tập mờ
30
Trang 9trong đó x là ký hiệu một đối tượng nằ m trong một tập các đối tượng nào đó (hay nói cách khác, x là một giá trị trên miền U), còn P là một tính chất nào đó của các đối tượng trong miền U Chẳng hạn, các mệnh đề.
Một mệnh đề mờ phân tử cũng có dạng tương tự như (1 13), chỉ có điều ở đây
P không phải là một tính chất chính xác, mà là một tính chất không rõ ràng, mờ.
Chẳng hạn, các mệnh đề “tốc độ là nhanh”, “áp suất là cao” “nhiệt độ là thấp”,…làcác mệnh đề mờ Chúng ta có định nghĩa sau
Trong đó, x là biến ngôn ngữ, còn t là một giá trị ngôn ngữ của x.
Theo định nghĩa biến ngôn ngữ, từ t trong (1.3) được xác định bởi một tập mờ
A trên vũ trụ U Do đó, chúng ta còn có thể định nghĩa mệnh đề mờ phân tử là phát
Trang 10Ví dụ: Giả sử P(x) là mệnh đề mờ “tuổi là trẻ” Giả sử tập mờ A = “tuổi trẻ”được cho trong hình 2.3 và µA(45) = 0,73 Khi đó mệnh đề mờ “tuổi 45 là trẻ” cógiá trị chân lý là 0,73.
Hình 1.3 Tập mờ “tuổi trẻ”
1.1.3 Các mệnh đề hợp thành
Cũng như trong logic kinh điển, từ các mệnh đề mờ phân tử, bằng cách sửdụng các kết nối logic: ∧ (and), ∨ (or), (not) chúng ta sẽ tạo ra các mệnh đề mờhợp thành
Giả sử mệnh đề rõ P(x) được minh hoạ như tập con rõ A trong vũ trụ U, (cần lưu ý rằng, điều đó có nghĩa là Truth( P(x)) = 1⇔x∈A), và mệnh đề rõ Q(y) được minh hoạ như tập con rõ B trong V Từ bảng chân lý của các phép toán ∧ (and), ∨
(or),(not) trong logic cổ điển chúng ta suy ra:
+ Mệnh đề P(x) được minh hoạ như tập rõ A
+ Mệnh đề P(x)∧Q(y) được minh hoạ như quan hệ rõ A×B trên U×V.
+ Mệnh đề P(x)∨Q(y) được minh hoạ như quan hệ rõ ( A×V)∪(U×B).
Chuyển sang logic mờ, giả sử rằng P(x) là mệnh đề mờ được minh hoạ như tập mờ A trên U và Q(y) là mệnh đề được minh hoạ như tập mờ B trên V Tổng quát
hoá từ các mệnh đề rõ, chúng ta xác định như sau:
+ Mệnh đề mờP(x) được minh hoạ như phủ định mờ A của tập mờ A:
))(()(x C A x
Trong đó, C là hàm phần bù Khi C là hàm phần bù chuẩn ta có :
tuổi1
7045
30
Trang 11),
),
B
1.1.4 Kéo theo mờ (Luật if – then mờ)
Trước hết, chúng ta xét phép kéo theo trong logic cổ điển Giả sử P(x) và Q(y)
là các mệnh đề được minh hoạ như các tập rõ A và B trên U và V tương ứng.
Từ bảng chân lý của phép kéo theo trong logic cổ điển, chúng ta suy ra rằng,
mệnh đề P(x)⇒Q(y) được minh hoạ như quan hệ rõ trên U×V:
)()
if “nhiệt độ cao” then “áp suất lớn”
if “tốc độ nhanh” then “ma sát lớn”
Trang 12Một vấn đề đặt ra là chúng ta cần hiểu ngữ nghĩa của (1.14) như thế nào? Xétmột kéo theo mờ sau đây.
Trong đó, P(x) là mệnh đề mờ được minh hoạ như tập mờ A trên U và Q(y) là mệnh đề mờ được minh hoạ như tập mờ B trên V.
Chúng ta có thể hiểu được kéo theo mờ (1.16) như là một quan hệ mờ R trên U
× V được xác dịnh bởi (1.12) hoặc (1.13) nhưng các phép toán đó là các phép toán
Với C là hàm phần bù, S là toán tử S – norm, T là toán tử T – norm
Kéo theo mờ (1.14) được minh hoạ như quan hệ mờ R với hàm thuộc xác định bởi (1.17) hoặc (1.18), ứng với mỗi cách lựa chọn các hàm C, S, T chúng ta nhận được một quan hệ mờ R minh hoạ cho kéo theo mờ
Rõ ràng kéo theo mờ (1.15) đượ c minh hoạ bởi rất nhiều các quan hệ mờ khácnhau, sau đây là một số kéo theo mờ quan trọng:
Kéo theo Dienes – Rescher
Trong (1.17), nếu thay S bởi phép toán lấy max và C bởi hàm phần bù chuẩn,chúng ta nhận được quan hệ mờ R với hàm thuộc:
Kéo theo Lukasiewicz
Nếu sử dụng phép hợp Yager với w = 1 thay cho S và C là phần bù chuẩn thì
từ (1.18) chúng nao nhận được quan hệ mờ R với hàm thuộc:
µR(x, y) = min(1, 1 -µA(x) +µB(y)) (1.20)
Kéo theo Zadeh
Trang 13Trong (1.18), nếu sử dụng S là max, T là min và C là hàm phần bù chuẩn,chúng ta nhận được quan hệ mờ R với hàm thuộc
R(x, y) = max(1-A(x), min(A(x),B(y))) (1.21)
Trên đây chúng ta hiểu kéo theo mờ P(x)⇒Q(y) như quan hệ mờ R được xác
định bởi (1.17), (1.18) Cách hiểu như thế là sự tổng quát hoá trực tiếp ngữ nghĩacủa kéo theo cổ điển
Tuy nhiên, chúng ta cũng có thể hiểu: Kéo theo mờ P(x)⇒Q(y) chỉ có giá trị chân lý lớn khi cả P(x) và Q(y) đều có giá trị chân lý lớn, tức là chúng ta có thể minh hoạ kéo theo mờ (1.14) như là quan hệ mờ R được xác định là tích đề các mờ của A và B.
Từ đó chúng ta xác định được hàm thuộc của quan hệ mờ R
với T là toán tử T – norm
Kéo theo Mamdani
Trong (1.23), nếu sử dụng T là phép toán lấy min hoặc tích đại số, ta có:
R (x, y)=min(A (x),B (y)) (1.24)
Kéo theo mờ (1.14) được hiểu như một quan hệ mờ R với hàm thuộc được xácđịnh bởi (1.12) hoặc (1.13) được gọi là kéo t heo Mamdani Kéo theo Mamdaniđược sử dụng rộng rãi nhất trong các hệ mờ
Trang 14Tiền đề 1 biểu thị mối quan hệ giữa hai đại lượng X và Y, với X nhận giá trị trong U và Y nhận giá trị trong V Lược đồ lập luận (a) được gọi là luật modus
ponens tổng quát (generalized modus ponens) Nó khác quy luật modus ponens kinh
điển ở chỗ sự kiện “X là A’” trong Tiền đề 2 không trùng với sự kiện trong phần
“nếu” hay tiền tố của Tiền đề 1
Như chúng ta biết, ngữ nghĩa của mệnh đề nếu-thì có thể được biểu thị bằng
một quan hệ mờ R trên U× V Nó được xác định dựa trên tập mờ A trên U và tập
mờ B trên V và dựa trên ngữ nghĩa của phép kép theo mờ.
R = Impl(A, B) = A →* B Khi đó: B’ = A’ o R
Trong đó o là phép hợp thành max-min (max-min composition) Và phương pháp
lập luận xấp xỉ này được gọi là phương pháp suy luận hợp thành.
Nếu ta thay phép min∧bằng một phép t-norm T nào đó, ta có quy tắc suy luận hợp thành max-T được ký hiệu là o T, cụ thể ta có:
B’ (v’) =∨u’U T(A’ (u’),R (u’, v’)),∀v’∈V
Trang 15Mô hình mờ là một tập các luật có dạng mệnh đề dạng “If…then…”, trong
đó phần “If” được gọi là tiền đề còn phần “then” được gọi là phần kết luận Mô hình
If X1 = A11 and and Xm = A1n then Y = B1
If X1 = A21 and and Xm = A2n then Y = B2
If X1 = Am1 and and Xm = Amn then Y = Bm
Ở đây X1, X2, …, Xm và Y là các biến ngôn ngữ, Aij, Bi (i = 1,…, m; j = 1,…, n) là các giá trị ngôn ngữ tương ứng.
(1.26) còn được gọi là mô hình mờ đơn điều kiện và (1.27) được gọi là môhình mờ đa điều kiện, ngoài ra (1.27) còn được gọi là bộ nhớ mờ liên hợp (FuzzyAssociate Memory - FAM) vì nó biểu diễn tri thức của chuyên gia trong lĩnh vựcứng dụng nào đó đang được xét
Phương pháp lập luận mờ đa điều kiện
Trên cơ sở lý thuyết tập mờ và logic mờ như đã đ ề cập ở phần trên, cácphương pháp lập luận xấp xỉ đã được phát triển mạnh mẽ và tìm được những ứng
Trang 16dụng thực tiễn quan trọng Một số trong những phương pháp lập luận như vậy làphương pháp lập luận mờ nhằm giải quyết bài toán lập luận mờ:
Cho trước mô hình mờ ở dạng (1.26) hoặc (1.27) Khi đó ứng với các giá trị(hoặc giá trị mờ,hoặc giá trị thực) của các biến đầu vào đã cho, hãy tính giá trị củabiến đầu ra Y
Dựa trên cách tiếp cận của lý thuyết tập mờ, các phương pháp lập luận mờ đađiều kiện nói chung dựa trên ý tưởng sau:
Ngữ nghĩa của các giá trị ngôn ngữ của các biến ngôn ngữ trong mô hình mờđược biểu thị bằng các tập mờ
Kết nhập các đầu vào của các luật mờ trong mô hình (nếu n > 1) để chuyển
mô hình mờ về mô hình đơn điều kiện
Từ các luật mờ dạng if – then xây dựng quan hệ mờ tương ứng bằng cácphép kéo theo
Xây dựng quan hệ mờ tổng hợp bằng cách lấy giao hoặc hợp các quan hệ
Dữ liệu đầu vào của bài toán lập luận có thể là các giá trị rõ Vì vậy cần phải
mờ hoá (fuzzier) để chuyển các dữ liệu số đầu vào thành các tập mờ để quá trìnhlập luận mờ có thể thao tác được
Mờ hoá là quá trình biến đổi một vector x=(x1,x2,…,xn)∈ U ⊆ Rn thành
một tập mờ A’ trên U A’ sẽ là đầu vào cho bộ suy diễn mờ Mờ hoá phải thoả cáctiêu chuẩn sau:
Điểm dữ liệu x phải có độ thuộc cao vào A’
Trang 17Vector x thu nhận từ môi trường ngoài có thể sai lệch do nhiễu nên A’ phảiphản ánh được tính gần đúng của dữ liệu thực.
Hiệu quả tính toán: đơn giản cho các tính toán trong bộ suy diễn Sau đây làmột số phương pháp mờ hoá thông dụng
Sau đây chúng ta sẽ xem xét 3 phương pháp mờ hóa quan trọng, đó là mờhóa cá thể, mờ hóa tam giác và mờ hóa Gauss
Mờ hoá đơn trị: Mỗi điểm dữ liệu x được xem như một tập mờ đơn trị tức làtập mờ A có hàm thuộc xác định như sau:
i
i i
Mờ hoá Gauss: Mỗi giá trị xi được biểu diễn thành một số mờ A’i Tập A’ là
tích đề-các của các A’ với ai>0:
( )
2
'
i i i i
u x a i
Trang 18Dữ liệu đầu ra của bài toán lập luận mờ ở dạng các tập mờ sẽ được giải mờ(defuzzier) chuyển thành giá trị số.
Giải mờ (hay còn gọi là khử mờ) là quá trình xác định một điểm y từ một tập
mờ trên B’ trên V (B’ là đầu ra của bộ suy diễn mờ ) Giải mờ phải thoả các tiêuchuẩn sau:
+ Điểm y là đại diện tốt nhất cho B’ Trực quan y là điểm có độ thuộc caonhất vào B’ và ở trung tâm tập giá đỡ của B’
+ Hiệu quả tính toán nhanh
+ Tính liên tục, khi B’ thay đổi ít thì y cũng thay đổi ít
Sau đây là một số phương pháp giải mờ thông dụng, đó là phương pháp lấymax, phương pháp lấy trọng tâm và phương pháp trung bình trọng tâm
Phương pháp lấy max: Phương pháp này chọn y là điểm có độ thuộc cao nhấtvào B’, cụ thể:
+ Đầu tiên ta xác định tập rõ :
( )' sup ' ( )
y là điểm cực biên (lớn nhất hoặc nhỏ nhất).
y là trung điểm của H.
Phương pháp khử mờ lấy max có ưu điểm là tính toán đơn giản và dễ càiđặt
Phương pháp lấy trọng tâm: Phương pháp này chọn y là điểm trọng tâm củatập B’, cụ thể :
' ( ) / ' ( )
y=∫v v dv ∫ v dv
Phương pháp lấy trung bình tâm: Vì B’ thường là hợp hoặc giao của m tập
mờ thành phần do vậy ta có thể tính gần đúng giá trị y là bình quân có trọng số của
Trang 19tâm m tập mờ thành phần Giả sử xi và hi là tâm và độ cao của tập mờ thành phần B’ i ta có:
Phương pháp trung bình tâm có ưu điểm là kết quả đầu ra y có xét đến ảnh
hưởng của tất cả các luật tương tự như phương pháp trọng tâm nhưng độ phức tạptính toán ít hơn
1.2 Mạng nơron truyền thẳng và giải thuật huấn luyện
1.2.1 Cấu trúc và mô hình của mạng nơ ron
Mạng nơ ron là sự tái tạo bằng kỹ thuật những chức năng của hệ thần kinh conngười Trong quá trình tái tạo không phải tất cả các chức năng của bộ não con ngườiđều được tái tạo, mà chỉ có những chức năng cần thiết Bên cạnh đó còn có nhữngchức năng mới được tạo ra nhằm giải quyết một bài toán định trước
Mạng nơ ron bao gồm vô số các nơ ron được liên kết truyền thông với nhautrong mạng, hình 1.4 là một phần của mạng nơ ron bao gồm hai nơ ron
Hình 1.4 Một mạng nơ ron đơn giản gồm hai nơ ron.
axon được nối với rễ đầu vào của nơ ron 2
Rễ đầu ra của nơ ron 1
được nối với axon
Chiều thông tin Nhân
axon
Trang 20Nơ ron còn có thể liên kết với các nơ ron khác qua các rễ Chính vì cách liênkết đa dạng như vậy nên mạng nơ ron có độ liên kết rất cao.
Các rễ của nơ ron được chia làm hai loại: loại nhận thông tin từ nơ ron khác
qua axon, ta gọi là rễ đầu vào và loại đưa thông tin qua axon tới nơ ron khác gọi là
rễ đầu ra Một nơ ron có thể có nhiều rễ đầu vào, nhưng chỉ có một rễ đầu ra nhưvậy có thể xem nơ ron là mô hình nhiều đầu vào một đầu ra (hình 1.5)
Một tính chất rất cơ bản của mạng nơ ron sinh học là các đáp ứng theo kíchthích có khả năng thay đổi theo thời gian Các đáp ứng có thể tăng lên, giảm đi hoặchoàn toàn biến mất Qua các nhánh axon liên kết tế bào nơ ron này với các nơ ronkhác, sự thay đổi trạng thái của một nơ ron cũng kéo theo sự thay đổi trạng thái củanhững nơ ron khác và do đó làm thay đổi toàn bộ mạng nơ ron Việc thay đổi trạng
thái của mạng nơ ron có thể thực hiện qua một quá trình “dạy” hoặc do khả năng
“học” tự nhiên.
Sự thay thế những tính chất này bằng một mô hình toán học tương đươngđược gọi là mạng nơ ron nhân tạo Mạng nơ ron nhân tạo có thể được xây dựng theonhiều cách khác nhau, vì vậy trong thực tế có nhiều kiểu mạng nơ ron
Mô hình nơ ron có m đầu vào x 1 , x 2 , x m và một đầu ra y (hình 1.5), mô hình
này gồm có ba thành phần cơ bản:
+ Các kích thích đầu vào của tế bào nơ ron có thế năng tác động vào màng
membran khác nhau được biểu diễn qua trọng số w i , i = 1, , m tương ứng với
cường độ kích thích của từng đầu vào Các kích thích đầu vào được thực hiện qua
bộ tổng f(.), đó là giá trị đo kích thích đầu vào tác động vào tế bào nơ ron.
Hình 1.5 Mô hình của một nơ ron
y
x1
x2
.
x n
Nơron
Trang 21+ Đầu ra của bộ tổng được đưa đến bộ đáp ứng ặ), bộ này không chỉ có chức
năng tạo ra đáp ứng tức thời mà còn có khả năng lưu giữ các đáp ứng theo thời gian.+ Nơ ron bị kích thích trong thời gian thế năng của màng membran vượt quá
ngưỡng Quan hệ này được thực hiện nhờ hàm ặ), nó có chức năng xác định phụ thuộc của tín hiệu ra y vào các kích thích đầu vàọ
Cách thành lập nơ ron nhân tạo như vậy tạo ra một độ tự do trong thiết kế Việc
lựa chọn phép cộng tín hiệu đầu vào và đáp ứng ặ) sẽ cho ra các kiểu mạng nơ ron
nhân tạo khác nhau và tương ứng là các mô hình mạng khác nhaụ
Hình 1.6 Cấu trúc của một nơ ron
Theo hình 1.6 thì tín hiệu đầu ra y ilà:
01
f khi
f khi f
Trang 22Trong đóvà w ijlà bán kính và tâm của hình cầu.
+ Hàm đa thức (Polynomial function):
i
k k x
j j x k x j x m
Trong đó w ijk là trọng số kết nối phần tử j và k đến phần tử i;j vàklà các hệ
số thực không đổi, ở đâyi là ngưỡng đặt vào phần tử nơ ron thứ i.
0 1
f if
f if f
0 1
sgn
f if
f if f
1 0
1 1
f if
f if f
f if f
+ Hàm sigmoid đơn cực (Unipolar sigmoid function):
e f
Trang 23+ Hàm sigmoid lưỡng cực (Bipolar sigmoid function):
Hình 1.7 là đồ thị của các hàm nói trên
1.2.2 Phân loại cấu trúc mạng nơ ron
Hình 1.7 Các hàm kích hoạt: (a) hàm bước nhẩy; (b) hàm dấu; (c) hàm
dốc; (d) hàm sigmoid đơn cực; (e) hàm sigmoid lưỡng cực
y 2
Trang 24Hình 1.10 Mạng nơ ron nhiều lớp.
Trong ma trận trọng số, các hàng thể hiện các nơ ron, mỗi hàng thứ j có thể đặt nhãn như một véc tơ w j của nơ ron thứ j gồm m trọng số w ji
Các trọng số trong cùng một cột thứ j (j = 1, 2, , n) đồng thời cùng nhận một tín hiệu đầu vào x j:
Tại cùng một thời điểm, véc tơ đầu vào:
có thể là một nguồn bên ngoài đưa tới mạng
1.2.2.2 Mạng nơron truyền thẳng nhiều lớp
Mạng nơ ron nhiều lớp (hình 1.10) được phân chia thành 3 loại:
- Lớp vào là lớp nơ ron đầu tiên nhận tín hiệu vào x i Mỗi tín hiệu x iđược đưađến tất cả các nơ ron của lớp đầu vào, chúng được phân phối trên các trọng số đúngbằng số nơ ron của lớp này Thông thường, các nơ ron đầu vào không làm biến đổi
các tín hiệu vào x i,tức là chúng không có các trọng số hoặc không có các loại hàmchuyển đổi nào, chúng chỉ đóng vai trò phân phối các tín hiệu và không đóng vai tròsửa đổi chúng
- Lớp ẩn là lớp nơ ron dưới lớp vào, chúng không trực tiếp liên hệ với thế giớibên ngoài như các lớp nơ ron vào và ra
- Lớp ra là lớp nơ ron tạo các tín hiệu ra cuối cùng
Trang 25Để làm được việc trên, mạng nơ ron sử dụng các trọng số điều chỉnh, với
nhiều phương pháp học khác nhau có thể tính toán gần đúng ma trận W cần tìm đặc
trưng cho mạng Có 2 phương pháp học:
- Học có giám sát (Supervised Learning): Là quá trình học có tín hiệu chỉ đạobên ngoài d (hình 1.11)
- Học không có giám sát (Unsupervised Learning): Là quá trình học không cótín hiệu chỉ đạo từ bên ngoài (hình 1.12)
Dạng tổng quát của luật học trọng số của mạng nơ ron cho biết là gia số của
véc tơ w ilàw i tỷ lệ với tín hiệu học r và tín hiệu đầu vào x(t):
là một số dương còn gọi là hằng số học, xác định tốc độ học, r là tín hiệu
học, nó phụ thuộc :
Từ (1.41) ta thấy véc tơ trọng số w i = [w i1 , w i2 , , w im]Tcó số gia tỷ lệ với tín
hiệu vào x và tín hiệu học r Véc tơ trọng số ở thời điểm (t+1) được tính như sau:
w i (t+1) = w i (t) +f r (w i (t), x(t), d(t)) x(t) (1.43)
x
y Mạng
Nơron
Tín hiệu sai lệch
Hình 1.11 Học có giám sát.
ron
Hình 1.12 Học không giám sát.
Trang 26Phương trình liên quan đến sự biến đổi trọng số trong mạng nơ ron rời rạc vàtương ứng với sự thay đổi trọng số trong mạng nơ ron liên tục theo biểu thức:
( )
( )t x r dt
t
i
dw
với ặ) là hàm kích hoạt Tóm lại trong luật Hebb tín hiệu lỗi r đơn giản là
đầu ra của nơ ron hiện thờị
1.2.4 Mạng nơ ron truyền thẳng
Trong phần này chúng ta sẽ nghiên cứu mạng một lớp và mạng nhiều lớptruyền thẳng với luật học có giám sát
Trang 271.2.4.1 Mạng Perceptron một lớp đơn
Hình 1.13 Mạng perceptron đơn
Hình 1.13 là một ví dụ về một mạng perceptron đơn Cho các véc tơ mẫu đầu
ra d (k) = [d 1 (k) , d 2 (k) , …, d n (k)]T tương ứng với các véc tơ mẫu đầu vào đầu vào là x (k)=
[x 1 (k) , x 2 (k) , …, x m (k)]T , k = 1, …, p trong đó m là số đầu vào, n là số đầu ra, p là số cặp
mẫu
Đầu ra thực tế theo cấu trúc:
k i m
j
k j ij k
T i k
Mạng một lớp perceptron được dùng để phân lớp và xấp xỉ các hàm, tuy nhiên
nó phụ thuộc vào dữ liệu mẫu của bài toán, bài toán XOR là một ví dụ (không cómạng perceptron tương ứng) Để giải quyết điều đó người ta đưa ra một cấu trúc
đầu ra thực tế đầu ra mong muốn
Trang 28mạng truyền thẳng nhiều lớp, ví dụ sau sẽ minh chứng điều đó: Xét bài toán XOR,với các mẫu đầu vào và đầu ra mong muốn.
d x
Rõ ràng bốn mẫu vào này không thể phân chia tuyến tính trong không gianđầu vào Để phân chia tập mẫu này ta phải sử dụng đến hai đường thẳng như hình1.14(a):
Hình 1.14 Mạng perceptron đa lớp cho bài toán XOR
Như vậy mỗi không gian con bao gồm các mẫu các mẫu của các lớp tương ứng củabài toán, hai đường thẳng được chọn là:
Trang 29Ta sử dụng hai nơ ron để thực hiện việc trên và các đầu ra tương ứng củachúng là:
d
Sự thay đổi của các mẫu huấn luyện trong không gian ảnh thể hiện trong hình
1.14(b), các mẫu x(1), x(4) trở nên trùng khớp trong không gian ảnh, nhờ đó có thểtiến hành quá trình phân lớp tuyến tính Đường biên chia ba mẫu trên thành 2 lớp có
thể chọn tuỳ ý, ví dụ z 1 - z2- 0.5 = 0 Đây chính là đầu vào của nơ ron ở tầng xuất,
và đầu ra tương ứng là: y = Sign(z 1 - z2- 0.5)
Cuối cùng ta có mạng nơ ron 3 lớp (hình 1.14(c)) để giải bài toán phân lớpXOR như đã đề cập
1.2.4.3 Mạng nơ ron MLP và thuật toán huấn luyện lan truyền ngược sai số
Thuật toán học lan truyền ngược là một thuật toán huấn luyện cho mạngtruyền thẳng nhiều lớp Mạng nơ ron sử dụng thuật toán huấn luyện này được gọi làmạng BP (Back Propagation Network)
2
12
1
,
Trang 30Trong đó: m - số rơ ron đầu ra; d k j - thành phần thứ j của véc tơ ra mong muốn d k, yk j - thành phần thứ j của véc tơ ra ykdo lan truyền đầu vàoxk.
Hình 1.15 Mạng truyền thẳng ba lớp lan truyền ngược sai số
Các hàm sai số này lần lượt được tối thiểu trong không gian các trọng số Giá
trị hàm sai số E k đối với một mẫu được tính toán dựa trên giá trị các trọng số hiệntại
Các giá trị trọng số này sau đó được hiệu chỉnh và trở thành các giá trị trọng
số hiện tại để tính giá trị hàm sai số tiếp theo E k+1
Dễ nhận thấy, cách làm này có khả năng tạo ra sự dao động trong quá trìnhhiệu chỉnh các trọng số Kết quả hiệu chỉnh hiện tại có thể làm hỏng kết quả hiệuchỉnh ở các lần trước đó
Giải pháp thay thế là xây dựng một hàm sai số duy nhất bằng cách tích luỹ các
Trang 31+ Trước tiên ta xét lan truyền tín hiệu qua từng lớp mạng: lớp nhập, lớp ẩn vàlớp xuất.
Giả sử tín hiệu đưa vào mạng nơ ron x = (x 1 , x 2 , …, x m ) với m là số nơ ron trong lớp nhập, l là số nơ ron trong lớp ẩn và n là số nơ ron trong lớp xuất Các nơ
ron trong lớp nhập nhận và truyền tín hiệu sang lớp ẩn Đầu vào các nơ ron (nút)trong lớp ẩn thứ nhất có dạng:
∑
=
j j qj
)(
l
q q iq
Đầu ra của nút i ở lớp xuất nhận được:
)) (
( ) (
q iq i
i
d w
)(
2
1)]
([2
1)(
2
1)
Theo phương pháp giảm gradient, trọng số liên kết giữa lớp ẩn và lớp xuấtđược điều chỉnh như sau:
Trang 32iq iq
w
E w
i i
i iq
i i
i i
w
net net
y y
trong đó oi là tín hiệu sai số, i là số thứ tự của nút i của lớp xuất, tín hiệu sai
số được định nghĩa như sau:
)]
('][
i i i i
net
y y
E net
với net i là tổng vào của nơ ron thứ i của lớp xuất và a'(net i)=∂a(net i)/net i
Trọng số liên kết giữa lớp ẩn và lớp nhập cũng được điều chỉnh theo phươngpháp giảm gradient, như sau:
q q qj
q q
qj qj
v
net net
z z
E v
net net
E v
i i
Từ đó:
j hq n
i
j q iq
q q q
net
z z
E net
E
1
)(
Khi hàm kích hoạt là hàm sigmoid các công thức trên trở thành:
Trang 331(2
i i i
1
2
)1(2
Ở trên các trọng số được điều chỉnh theo từng mẫu đơn, gọi là learning step.
Sau khi các mẫu được đưa vào hết thì một thời kỳ (epoch) Các thời kỳ huấn luyệnđược tiếp tục cho đến khi đạt tới điều kiện dừng của mạng
Sau đây ta viết thuật toán, thuật toán này được viết cho một mạng truyền thẳng
tổng quát có Q lớp.
Algorithm BP: Back-propagation Learning Rule [1]
Xét mạng nơ ron với Q lớp lan truyền thẳng, q = 1,2, …,Q và q net i và q y i làđầu vào và đầu ra của nơ ron thứ i trong lớp q tương ứng
Mạng có m nút nhập, n nút xuất Gọiq w ij là trọng số liên kết từ nơ ron j lớp
q-1 đến nơ ron i lớp q.
Input: Tập mẫu huấn luyện {(x (k) , d (k) )}, k = 1,2, …, p
Bước 0 (khởi tạo):
Bước 2 (Lan truyền thẳng tín hiệu):
Lan truyền thẳng tín hiệu qua mạng theo công thức:
q i
q
y w f
net a
y
1
1
)(
Bước 3 (Tính sai số đầu ra): tính sai số và tín hiệu sai số Qicho lớp xuất:
Trang 34(d y ) E E
n
i
i Q k
= ∑
=
2 1
) (
2
1
( ) ( i)
Q i Q k i i
Q
net a y
q
w net
a
1
1 1
1
)
Bước 5 (Lặp một chu kỳ): kiểm tra tập dữ liệu huấn luyện đã quay hết một vòng.
Nếu k < p thì k = k+1 và quay lại bước 1;
Trường hợp khác về bước 6
Bước 6 (Kiểm tra tín hiệu sai số): kiểm tra tín hiệu sai số,
Nếu E < Emaxthì kết thúc vòng luyện và đưa ra bộ trọng số cuối cùng;
Trường hợp khác cho E = 0, k = 1 và quay lại bước 1 tiến hành chu kỳ luyện
mới
End BP
Thuật toán trên là phương pháp huấn luyện gia tăng (incremental training) khiđiều chỉnh trọng số, nghĩa là các trọng số được điều chỉnh n gay sau khi có một mẫuluyện Một phương pháp khác là luyện dạng gói (batch training), ở đó các trọng sốchỉ thay đổi sau khi đã có tất cả các mẫu luyện
Trang 35Chương 2
HỆ LAI MỜ - NƠRON 2.1 Sự kết hợp giữa logic mờ và mạng nơron
2.1.1 Khái niệm
Khi khảo sát mạng nơron và lôgíc mờ, ta thấy mỗi loại đều có điểm mạnh,điểm yếu riêng của nó
Đối với logic mờ, ta dễ dàng thiết kế một hệ thống mong muốn chỉ bằng các
luật Nếu - thì (If-Then) gần với việc xử lý của con người Với đa số ứng dụng thì
điều này cho phép tạo ra lời giải đơn giản hơn, trong khoảng thời gian ngắn hơn.Thểm nữa, ta dễ dàng sử dụng những hiểu biết của mình về đối tượng để tối ưu hệthống một cách trực tiếp
Tuy nhiên, đi đôi với các ưu điểm hệ điều khiển mờ còn tồn tại một số khuyếtnhư việc thiết kế và tối ưu hóa hệ logic mờ đòi hỏi phải có một số kinh nghiệm vềđiều khiển đối tượng, đối với những người mới thiết kế lần đầu điều đó hoàn toànkhông đơn giản Mặt khác còn hàng loạt những câu hỏi khác đặt ra cho người thiết
kế mà nếu chỉ dừng lại ở tư duy logic mờ thì hầu như chưa có lời giải, ví dụ: Số tập
mờ trong mỗi biến ngôn ngữ cần chọn bao nhiêu là tôi ưu? Hình dạng các tập mờ thếnào? Vi trí mỗi tập mờ ở đâu? Việc kết hợp các tập mờ như thế nào? Trọng số củamỗi luật điều khiển bằng bao nhiêu? Nếu như tri thức cần đưa vào hệ được thể hiệndưới dạng các tập dữ liệu (điều này thường gặp khi thu thập và xử lý dữ liệu để nhận
dạng đối tượng) thì làm thế nào?
Đối với mạng nơron, chúng có một số ưu điểm như xử lý song song nên tốc độ
xử lý rất nhanh; Mạng nơron có khả năng học hỏi; Ta có thể huấn luyện mạng để
xấp xỉ một hàm phi tuyến bất kỳ, đặc biệt khi đã biết một tập dữ liệu vào/ra Song
nhược điểm cơ bản của mạng nơron là khó giải thích rõ ràng hoạt động của mạngnơron như thế nào Do vậy việc chỉnh sửa trong mạng nơron rất khó khăn
Hai tiêu chí cơ bản trợ giúp cho người thiết kế ở logic mờ và ở mạng nơronthể hiện trái ngược nhau (bảng 2.1)