Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/ DANH MỤC CÁC TỪ VIẾT TẮT ANN Artificial Neural Network Mạng nơron nhân tạo ANFIS Adaptive Neuro Fuzzy Insference System Hệ suy luận
Trang 1Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: PGS.TS Lê Bá Dũng
Thái Nguyên, 2013
Trang 2Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
LỜI CẢM ƠN
Để hoàn thành chương trình cao học và viết luận văn này, tôi đã nhận được
sự hướng dẫn, giúp đỡ và góp ý nhiệt tình của quý thầy cô trường Đại học Công nghệ thông tin và Truyền thông Đăc biệt là những thầy cô ở Viện công nghệ thông tin Hà Nội đã tận tình dạy bảo cho tôi suốt thời gian học tập tại trường
Tôi xin gửi lời cảm ơn sâu sắc đến PGS.TS Lê Bá Dũng đã dành nhiều thời gian và tâm huyết hướng dẫn tôi hoàn thành luận văn này
Mặc dù tôi đã có nhiều cố gắng hoàn thiện luận văn bằng tất cả năng lực của mình, tuy nhiên không thể tránh khỏi những thiếu sót, rất mong nhận được sự đóng góp quí báu của quí thầy cô và các bạn
Tôi xin chân thành cảm ơn!
Trang 3Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
LỜI CAM ĐOAN
Tôi xin cam đoan tất cả các nội dung của luận văn này hoàn toàn được hình thành và phát triển từ quan điểm của chính cá nhân tôi, dưới sự hướng dẫn chỉ bảo của PGS.TS Lê Bá Dũng Các số liệu kết quả có được trong luận văn tốt nghiệp là hoàn toàn trung thực
Học viên
Phạm Thị Hường
Trang 4Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
MỤC LỤC
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
MỤC LỤC iii
DANH MỤC CÁC TỪ VIẾT TẮT vi
DANH MỤC CÁC HÌNH VẼ v
MỞ ĐẦU 1
Chương 1: TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO VÀ HỆ MỜ 2
1.1 Cấu trúc và mô hình mạng nơron 2
1.1.1 Mô hình một nơron sinh học 2
1.1.2 Cấu trúc và mô hình của một nơron nhân tạo 3
1.2 Cấu tạo và phương thức làm việc của mạng nơron 5
1.2.1 Mạng nơron một lớp 8
1.2.2 Mạng nơron truyền thẳng nhiều lớp 9
1.2.3 Mạng nơron phản hồi 9
1.2.4 Mạng nơron hồi quy 9
1.2.5 Mạng Hopfield 9
1.2.6 Mạng BAM 11
1.3 Các luật học 12
1.3.1 Học có giám sát 12
1.3.2 Học không có giám sát 12
1.3.3 Học củng cố 13
1.4 Thuật toán lan truyền ngược 14
1 5 Hệ mờ và mạng nơron 20
1.5.1 Kiến trúc của hệ mờ tổng quát 20
1.5.2 Sự kết hợp giữa logic mờ và mạng nơron 26
1.6 Kết luận 28
Chương 2: MÔ HÌNH MẠNG ANFIS VÀ KHẢ NĂNG ỨNG DỤNG 29
2.1 Hệ suy diễn mờ dựa trên mạng thích nghi 29
Trang 5Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
2.1.1 Các mô hình kết hợp giữa hệ mờ và mạng nơron 29
2.1.2 Luật mờ if then và hệ thống suy diễn mờ 29
2.1.3 Mạng thích nghi 32
2.1.4 Cấu trúc của ANFIS 33
2.2 Thuật toán ANFIS 35
2.2.1 Thuật toán học lan truyền ngược 35
2.2.2 Thuật toán học lai 35
2.3 Khả năng ứng dụng của mạng ANFIS 37
Chương 3: ỨNG DỤNG MÔ HÌNH ANFIS TRONG BÀI TOÁN PHÂN TÍCH ĐÁNH GIÁ DỰ BÁO CÁC CHỈ SỐ KINH TẾ VÀ THỬ NGHIỆM 38
3.1 Bài toán dự báo chứng khoán 38
3.1.1 Một số khái quát cơ bản về thị trường tài chính 38
3.1.2 Sự cần thiết của việc dự báo giá chứng khoán 40
3.1.3 Phân tích chứng khoán 40
3.1.4 Xác định giá mở cửa của thị trường chứng khoán 41
3.2 Ứng dụng của mạng ANFIS trong việc dự báo chỉ số chứng khoán 42
3.2.1 Xây dựng mô hình hệ thống 42
3.2.2 Vấn đề xác định các quan hệ dữ liệu 42
3.2.3 Biến đổi và tiền xử lý dữ liệu 44
3.3 Chương trình thử nghiệm 45
3.3.1 Các chức năng của chương trình 45
3.3.2 Giao diện chương trình 46
3.3.3 Đánh giá kết quả thực hiện chương trình 50
KẾT LUẬN 51
TÀI LIỆU THAM KHẢO 52
Trang 6Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
DANH MỤC CÁC TỪ VIẾT TẮT
ANN
Artificial Neural Network Mạng nơron nhân tạo ANFIS Adaptive Neuro Fuzzy Insference System
Hệ suy luận mờ
Phần tử xử lý
Nhiều đầu vào – nhiều đầu ra
Nhiều đầu vào – một đầu ra
Lan truyền ngược
Ước lượng sai số bình phương tối thiểu
Trang 7Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Một nơron sinh học 2
Hình 1.2 Sự liên kết các nơron 3
Hình 1.3 Mô hình một nơron nhân tạo 3
Hình 1.4 Đồ thị các dạng hàm truyền 5
Hình 1.5 Mạng nơron ba lớp 6
Hình 1.6 Một số dạng mạng nơron 8
Hình 1.7 Cấu trúc của mạng Hopfield 10
Hình 1.8 Cấu trúc của BAM 11
Hình 1.9 Học có giám sát 12
Hình 1.10 Học không có giám sát 13
Hình 1.11 Học củng cố 13
Hình 1.12: Mạng 3 lớp lan truyền ngược 14
Hình 1.13 Kiến trúc của hệ mờ tổng quát 20
Hình 1.14 Hệ mờ nhiều đầu vào một đầu ra 21
Hình 1.15 Hàm thuộc hệ mờ một đầu vào một luật 23
Hình 1.16 Hàm thuộc hệ mờ hai đầu vào một luật 24
Hình 1.17 Mô hình hệ mờ - nơ ron 27
Hình 2.1 Hệ suy diễn mờ 30
Hình 2.2 Mạng thích nghi 32
Hình 2.3 Cấu trúc của ANFIS 33
Hình 3.1 Ví dụ đồ thị biểu diễn chỉ số VNINDEX trong một ngày 42
Hình 3.2 Giao diện chương trình 46
Hình 3.3 Nhập dữ liệu 46
Hình 3.4 Cấu hình cho fis 47
Hình 3.5 Các tham số huấn luyện 47
Hình 3.6 Kết quả kiểm tra 48
Hình 3.7 Lựa chọn hiển thị 49
Hình 3.8 Thông số ANFIS 49
Trang 8Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
MỞ ĐẦU
Ngày nay các mạng noron nhân tạo (ANN) đã được ứng dụng thành công, các nhà khoa học và các kĩ sư trong những năm gần đây đã có nhiều nghiên cứu ứng dụng trong việc xấp xỉ hàm, nhận dạng và điều khiển, xử lý ảnh, dự đoán chuỗi thời gian …
Các hệ mờ - noron và các công cụ thống kê là các phương pháp khác nhau được sử dụng dự đoán các chỉ số kinh tế, tài chính Các mạng noron chứa một số lượng lớn các tham số đầu vào cho phép việc học bên trong các quan hệ không tuyến tính hiện tại trong chuỗi thời gian, tăng cường khả năng dự báo ANN đã được ứng dụng thành công cho việc dự báo tài chính và chỉ số thị trường quan trọng
Dự báo giá chứng khoán luôn luôn là đối tượng thu hút sự quan tâm của nhà đầu tư và các chuyên gia phân tích Tuy nhiên, việc tìm thời điểm ra tốt nhất đề mua hay bán vẫn còn là công việc rất khó khăn bởi vì có rất nhiều yếu tố ảnh hưởng tới chứng khoán Trong những năm gần đây, thị trường chứng khoán và các thương gia
đã tin tưởng và sử dụng các hệ thống thông minh khác nhau, trong đó ANN và hệ suy diễn mờ - noron (ANFIS) cũng được ứng dụng trong lĩnh vực này
Các phần mềm tính toán được ứng dụng trong dự báo chứng khoán và các phần mềm này sử dụng số lượng các đầu vào, như chỉ số kĩ thuật, các yếu tố định tính, các ảnh hưởng chính trị, dự báo thị trường chứng khoán tự động và phân tích các chiều hướng
Trong Luận văn này, em sử dụng ANFIS trong việc dự báo chỉ số thị trường chứng khoán, Luận văn bao gồm các nội dung sau:
Chương 1:Tổng quan về mạng Nơron nhân tạo và hệ mờ
Chương 2: Mô hình mạng ANFIS và khả năng ứng dụng
Chương 3:Ứng dụng mô hình Anfis trong bài toán phân tích, đánh giá, dự báo
các chỉ số kinh tế và thử nghiệm
Trang 9Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Chương 1
TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO VÀ HỆ MỜ
1.1 Cấu trúc và mô hình mạng nơron
1.1.1 Mô hình một nơron sinh học
Phần tử xử lý cơ bản của một mạng nơron sinh học là một nơron, phần tử này có thể chia làm bốn thành phần cơ bản như sau: dendrites, soma, axon, và synapses
- Dendrites: là phần nhận tín hiệu đầu vào
- Soma: là hạt nhân
- Axon: là phần dẫn ra tín hiệu xử lý
- Synapses: là đường tín hiệu điện hóa giao tiếp giữa các nơron
Kiến trúc cơ sở này của bộ não con người có một vài đặc tính chung Một cách tổng quát, thì một nơron sinh học nhận đầu vào từ các nguồn khác nhau, kết hợp chúng lại với nhau, thực thi tổ hợp phi tuyến chúng để cho ra kết quả cuối cùng
ở đầu ra Hình 1.1 chỉ ra mối quan hệ giữa bốn phần tử của một nơron sinh học
Hình 1.1 Một nơron sinh học
Một nơron sinh học chỉ có một số chức năng cơ bản như vậy, ta nhận thấy khả năng xử lý thông tin của nó là rất yếu Để có được khả năng xử lý thông tin hoàn hảo như bộ não con người, thì các nơron phải kết hợp và trao đổi thông tin với nhau Ta hình dung sơ đồ liên kết, và trao đổi thông tin giữa hai nơron như hình 1.2
Trang 10Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Hình 1.2 Sự liên kết các nơron 1.1.2 Cấu trúc và mô hình của một nơron nhân tạo
Mô hình toán học của một nơron nhân tạo được đề xuất bởi McCulloch và Pitts, thường được gọi là nơron M-P, ngoài ra nó còn được gọi là phần tử xử lý và được ký hiệu là PE (Processing Element)
Mô hình nơron có m đầu vào x1, x2, , xm, và một đầu ra yi như sau:
Hình 1.3 Mô hình một nơron nhân tạo
Giải thích các thành phần cơ bản:
- Tập các đầu vào: Là các tín hiệu vào của nơron, các tín hiệu này thường được đưa vào dưới dạng một vector m chiều
- Tập các liên kết (các trọng số): Mỗi liên kết được thể hiện bởi một trọng
số (thường được gọi là trọng số liên kết) Trọng số liên kết giữa tín hiệu
Trang 11Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
vào thứ j cho nơron i thường được ký hiệu là wij Thông thường các trọng
số này được khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học mạng
- Bộ tổng (Hàm tổng): Thường dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó
- Ngưỡng: Ngưỡng này thường được đưa vào như một thành phần của hàm truyền
- Hàm truyền: Hàm này dùng để giới hạn phạm vi đầu ra của mỗi nơron Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho Thông thường, phạm vi đầu ra của mỗi nơron được giới hạn trong đoạn [0,1] hoặc [-1,1] Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệm của người thiết kế mạng
- Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa một đầu ra
Về mặt toán học, cấu trúc của một nơron i được mô tả bằng cặp biểu thức sau:
y i f(net i i) và j
n j ij
Như vậy, tương tự như nơron sinh học, nơron nhân tạo cũng nhận các tín hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu được rồi gửi kết quả đến hàm truyền), và cho một tín hiệu đầu ra (là kết quả của hàm truyền)
01
x khi
x khi
y (1.2)
- Hàm giới hạn chặt (hay còn gọi là hàm bước)
Trang 12Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
01
)sgn(
x khi
x khi x
10
11
)sgn(
x khi
x khi
x
x khi x
- Hàm ngưỡng hai cực
11
1.2 Cấu tạo và phương thức làm việc của mạng nơron
Dựa trên những phương pháp xây dựng nơron đã trình bày ở mục trên, ta có thể hình dung mạng nơron như là một hệ truyền đạt và xử lý tín hiệu Đặc tính truyền đạt của nơron phần lớn là đặc tính truyền đạt tĩnh
Trang 13Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Khi liên kết các đầu vào/ra của nhiều nơron với nhau, ta thu được một mạng nơron, việc ghép nối các nơron trong mạng với nhau có thể là theo một nguyên tắc bất kỳ Vì mạng nơron là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân biệt các loại nơron khác nhau, các nơron có đầu vào nhận thông tin từ môi trường bên ngoài khác với các nơron có đầu vào được nối với các nơron khác trong mạng, chúng được phân biệt với nhau qua vector hàm trọng số ở đầu vào w
Nguyên lý cấu tạo của mạng nơron bao gồm nhiều lớp, mỗi lớp bao gồm nhiều nơron có cùng chức năng trong mạng Hình 1.5 là mô hình hoạt động của một mạng nơron 3 lớp với 8 phần tử nơron Mạng có ba đầu vào là x1, x2, x3 và hai đầu
ra y1, y2 Các tín hiệu đầu vào được đưa đến 3 nơron đầu vào, 3 nơron này làm thành lớp đầu vào của mạng Các nơron trong lớp này được gọi là nơron đầu vào Đầu ra của các nơron này được đưa đến đầu vào của 3 nơron tiếp theo, 3 nơron này không trực tiếp tiếp xúc với môi trường bên ngoài mà làm thành lớp ẩn, hay còn gọi
là lớp trung gian Các nơron trong lớp này có tên là nơron nội hay nơron ẩn Đầu ra của các nơron này được đưa đến 2 nơron đưa tín hiệu ra môi trường bên ngoài Các nơron trong lớp đầu ra này được gọi là nơron đầu ra
Hình 1.5 Mạng nơron ba lớp
Mạng nơron được xây dựng như trên là mạng gồm 3 lớp mắc nối tiếp nhau đi
từ đầu vào đến đầu ra Trong mạng không tồn tại bất kỳ một mạch hồi tiếp nào Một mạng nơron có cấu trúc như vậy gọi là mạng một hướng hay mạng truyền thẳng một hướng (Feed forward network), và có cấu trúc mạng ghép nối hoàn toàn (vì bất
Trang 14Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
cứ một nơron nào trong mạng cũng được nối với một hoặc vài nơron khác) Mạng nơron bao gồm một hay nhiều lớp trung gian được gọi là mạng Multilayer Perceptrons) (MLP-Network)
Mạng nơron khi mới được hình thành thì chưa có tri thức, tri thức của mạng
sẽ được hình thành dần dần sau một quá trình học Mạng nơron được học bằng cách đưa vào những kích thích, và mạng hình thành những đáp ứng tương ứng, những đáp ứng tương ứng phù hợp với từng loại kích thích sẽ được lưu trữ Giai đoạn này được gọi là giai đoạn học của mạng Khi đã hình thành tri thức mạng, mạng có thể giải quyết các vấn đề một cách đúng đắn Đó có thể là vấn đề ứng dụng rất khác nhau, được giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầu vào của mạng và các đáp ứng đầu ra
Nếu nhiệm vụ của một mạng là hoàn chỉnh hoặc hiệu chỉnh các thông tin thu được không đầy đủ hoặc bị tác động của nhiễu Mạng nơron kiểu này được ứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng cụ thể là nhận dạng chữ viết
Nhiệm vụ tổng quát của một mạng nơron là lưu giữ động các thông tin Dạng thông tin lưu giữ này chính là quan hệ giữa các thông tin đầu vào và các đáp ứng đầu ra tương ứng, để khi có một kích thích bất kỳ tác động vào mạng, mạng có khả năng suy diễn và đưa ra một đáp ứng phù hợp Đây chính là chức năng nhận dạng theo mẫu của mạng nơron Để thực hiện chức năng này, mạng nơron đóng vai trò như một bộ phận tổ chức các nhóm thông tin đầu vào, và tương ứng với mỗi nhóm là một đáp ứng đầu ra phù hợp Như vậy, một nhóm bao gồm một loại thông tin đầu vào và một đáp ứng đầu ra Các nhóm có thể được hình thành trong quá trình học, và cũng có thể không hình thành trong quá trình học
Hình 1.6 là một số liên kết đặc thù của mạng nơron Nơron được vẽ là các vòng tròn xem như một tế bào thần kinh, chúng có các mối liên hệ đến các nơron khác nhờ các trọng số liên kết Tập hợp các trọng số liên kết này sẽ lập thành các
ma trận trọng số tương ứng
Trang 15Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
1.2.1 Mạng nơron một lớp
Mỗi một nơron có thể phối hợp với các nơron khác tạo thành một lớp các trọng số Mạng một lớp truyền thẳng nhƣ hình 1.6a Một lớp nơron là một nhóm các nơron mà chúng đều có cùng trọng số, nhận cùng một tín hiệu đầu vào đồng thời
Trong ma trận trọng số, các hàng là thể hiện nơron, hàng thứ j có thể đặt nhãn nhƣ một vector wj của nơron thứ j gồm m trọng số wji 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 xj
Trang 16Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
1.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.6.c) có các lớp được phân chia thành 3 loại sau đây:
Lớp vào là lớp nơron đầu tiên nhận tín hiệu vào xi (i = 1, 2, , n) Mỗi tín hiệu xi được đưa đến tất cả các nơron của lớp đầu vào 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 xi, tức là chúng không có các trọng số hoặc không có các loại hàm chuyển đổi nào, chúng chỉ đóng vai trò phân phối các tín hiệu
Lớp ẩn là lớp nơron sau lớp vào, chúng không trực tiếp liên hệ với thế giới bên ngoài như các lớp nơron vào/ra
Lớp ra là lớp nơron tạo ra các tín hiệu ra cuối cùng
1.2.3 Mạng nơron phản hồi
Mạng nơron phản hồi là mạng mà đầu ra của mỗi nơron được quay trở lại nối với đầu vào của các nơron cùng lớp như hình 1.6b
1.2.4 Mạng nơron hồi quy
Mạng nơron phản hồi có thể thực hiện đóng vòng được gọi là mạng nơron hồi quy như hình 1.6d Mạng nơron hồi quy có trọng số liên kết đối xứng như mạng Hopfield, mạng luôn hội tụ về trạng thái ổn định (Hình 1.6.b) Mạng BAM thuộc nhóm mạng nơron hồi quy, gồm 2 lớp liên kết 2 chiều, không được gắn với tín hiệu vào/ra Nghiên cứu mạng nơron hồi quy mà có trọng số liên kết không đối xứng, thì
sẽ gặp phải vấn đề phức tạp nhiều hơn so với mạng truyền thẳng và mạng hồi quy
có trọng số liên kết đối xứng
1.2.5 Mạng Hopfield
Mạng Hopfield là mạng phản hồi một lớp, được chỉ ra trong hình 1.6.b Cấu trúc chi tiết của nó được thể hiện trong hình 1.7 Khi hoạt động với tín hiệu rời rạc, nó được gọi là mạng Hopfield rời rạc, và cấu trúc của nó cũng được gọi là mạng hồi quy
Trang 17Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Hình 1.7 Cấu trúc của mạng Hopfield
Như mạng Hopfield đã vẽ ở trên, ta thấy nút có một đầu vào bên ngoài xj và một giá trị ngưỡng j(j = 1,2, n) Một điều quan trọng cần nói ở đây là mỗi nút không có đường phản hồi về chính nó Nút đầu ra thứ j được nối tới mỗi đầu vào của nút khác qua trọng số wij, với ij, (i = 1,2, ,n), hay nói cách khác wii = 0, (với
i = 1,2, ,n)
Một điều quan trọng nữa là trọng số của mạng Hopfield là đối xứng, tức là
wij = wji, (với i,j = 1,2, ,n) Khi đó, luật cập nhật cho mỗi nút mạng là như sau:
, sgn
1
) ( )
1 (
i k j ij k
y i = 1,2, ,n (1.7)
Luật cập nhật trên được tính toán trong cách thức không đồng bộ Điều này
có nghĩa là, với một thời gian cho trước, chỉ có một nút mạng cập nhật được đầu ra của nó Sự cập nhật tiếp theo trên một nút sẽ sử dụng chính những đầu ra đã được cập nhật Nói cách khác, dưới hình thức hoạt động không đồng bộ của mạng, mỗi đầu ra được cập nhật độc lập
Có sự khác biệt giữa luật cập nhật đồng bộ và luật cập nhật không đồng bộ Với luật cập nhật không đồng bộ thì sẽ chỉ có một trạng thái cân bằng của hệ (với
Trang 18Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
giá trị đầu đã được xác định trước) Trong khi đó, với luật cập nhật đồng bộ thì có thể làm mạng hội tụ ở mỗi điểm cố định hoặc một vòng giới hạn
1.2.6 Mạng BAM
Mạng BAM bao gồm hai lớp và được xem như là trường hợp mở rộng của mạng Hopfield Ở đây ta chỉ xét mạng rời rạc, vì nó đơn giản và dễ hiểu
Hình 1.8 Cấu trúc của BAM
Khi mạng nơron được tích cực với giá trị đầu vào của vector tại đầu vào của một lớp, mạng sẽ có hai mẫu trạng thái ổn định, với mỗi mẫu tại đầu ra của nó là một lớp Tính động học của mạng thể hiện dưới dạng tác động qua lại giữa hai lớp
Cụ thể hơn, giả sử một vector đầu vào x được cung cấp cho đầu vào của lớp nơron
y Đầu vào được xử lý và truyền tới đầu ra của lớp y như sau:
x
1
; với j = 1,2, ,m (1.9) Sau đó x‟ nuôi trở lại đầu vào của lớp y và tạo ra hàm y‟‟ theo phương trình (1.8) Quá trình này cứ tiếp tục, bao gồm các bước như sau:
y(1) = a(wx(0)) (truyền thẳng lần thứ nhất)
x(2) = a(w(T)y(1)) (truyền ngược lần thứ nhất)
Trang 19Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
y(3) = a(wx(2)) (truyền thẳng lần thứ hai)
x(4) = a(w(T)y(3)) (truyền ngược lần thứ hai) (1.10)
hệ thống ổn định cho cả hai chế độ đồng bộ và không đồng bộ Tuy nhiên, chế độ đồng bộ sẽ làm cho hệ thống hội tụ nhanh hơn nhiều
1.3 Các luật học
1.3.1 Học có giám sát
Mạng được cung cấp một tập mẫu học {(x, d)} theo nghĩa x là các tín hiệu vào thì kết quả đúng của hệ phải là d Ở mỗi lần học, vector tín hiệu vào x được đưa vào mạng, sau đó so sánh sự sai khác giữa các kết quả ra đúng d với kết quả tính toán Y Sai số này được dùng để hiệu chỉnh lại các trọng số liên kết trong mạng quá trình cứ tiếp tục cho đến khi thỏa mãn một tiêu chuẩn nào đó
Có 2 cách sử dụng tập mẫu học: hoặc dùng các mẫu lần lượt hết mẫu này đến mẫu khác, hoặc sử dụng đồng thời tất cả các mẫu cùng một lúc
Hình 1.9 Học có giám sát 1.3.2 Học không có giám sát
Trong kỹ thuật học này, sẽ không có sự hồi tiếp từ môi trường để cho biết tín hiệu ra yêu cầu của mạng nên như thế nào, hoặc chúng có đúng chưa giống như học có giám sát, nói chung mạng nơron phải tự nó phát hiện ra bất cứ mối
mong muốn
Đầu ra thựctế
Mạng ANN
Tạo tín hiệu lỗi
Trang 20Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
liên hệ có liên quan có thể tồn tại trong dữ liệu vào (chẳng hạn như : các mẫu, các đặc trưng, các quy tắc, sự tương quan) và chuyển mối liên hệ đã phát hiện này sang đầu ra Mạng học với cơ chế này gọi là mạng tự tổ chức Thí dụ, mạng nơron học không thầy có thể cho chúng ta biết một mẫu đầu vào mới đồng dạng như thế nào với mẫu đặc trưng đã thấy trong quá khứ
Hình 1.10 Học không có giám sát 1.3.3 Học củng cố
Hình 1.11 Học củng cố
Tín hiệu tăng cường có thể lấy từ môi trường bên ngoài, nhưng tín hiệu này không được đầy đủ mà chỉ có tính chất kiểm tra quá trình tốt hay xấu Học củng cố cũng là một dạng của học có giám sát, bởi vì mạng vẫn nhận một số tín hiệu từ bên ngoài Nhưng tín hiệu phản hồi chỉ mang tính chất đánh giá hơn là mạng tính chất chỉ dẫn Nó cho biết mức độ tốt hay xấu của một đầu ra cụ thể Tín hiệu củng cố bên ngoài thường được xử lý bằng máy phát tín hiệu đánh giá để tạo ra nhiều hơn nữa các thông tin tín hiệu đánh giá, sau đó dùng để điều chỉnh các trọng số với mục đích đạt được tín hiệu đánh giá tốt hơn
đầu vào
Đầu ra thựctế Mạng ANN
Tín hiệu hiệu chỉnh
Tín hiệu tăngcường
Đầu ra thựctế
Mạng ANN
Tạo tín hiệuhiệu chỉnh
Trang 21Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
1.4 Thuật toán lan truyền ngược
Lan truyền ngược là một phương pháp cho phép xác định tập trọng số tốt nhất của mạng để giải một bài toán đã cho Việc áp dụng phương pháp lan truyền ngược là một quá trình lặp đi lặp lại nhiều lần hai tiến trình chính: lan truyền tiến để thực hiện ánh xạ và lan truyền ngược sai số để cập nhật các trọng số Các trọng số của mạng là các hệ số của mô hình Phương pháp giảm gradient được dùng để cập nhật những hệ số này sao cho giảm thiểu được sai số của mô hình
Xét lớp mạng 3 lớp như hình (1.12)
Hình 1.12: Mạng 3 lớp lan truyền ngược
Thuật toán: Đầu tiên ta cho lan truyền thẳng suốt trong mạng, qua các phần tử nơron và được tiếp tục với các hàm kích hoạt của phần tử nơron Các mạng được nghiên cứu cùng với thuật toán học lan truyền ngược được gọi là mạng lan truyền ngược
Huấn luyện các cặp vào/ra
{(x(k), d(k))}, k = 1,2, ,p
Thuật toán cung cấp một thủ tục cho việc thay đổi các vector trọng số trong mạng, đầu ra của mạng được lan truyền ngược trở lại lớp đầu vào cho đúng các mẫu Cơ sở cho việc cập nhật các trọng số là phương pháp độ dốc Gradient
Với cặp vào ra (x(k)
, d(k)), thuật toán lan truyền ngược thực hiện các bước như sau:
Trang 22Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Đầu tiên, mẫu x(k)
được lan truyền từ lớp đầu vào qua các lớp ẩn đi đến lớp đầu ra có kết quả là y(k) Sau đó, sai số giữa y(k)
và d(k) được lan truyền ngược trở lại
từ lớp đầu ra tới lớp đầu vào để cập nhật trọng số Hình (1.12) diễn giải thuật toán lan truyền ngược Kết quả có thể mở rộng sang mạng nơron nhiều lớp
Trên hình (1.12) có m phần tử nơron đầu vào, l phần tử nơron ở lớp ẩn, và n phần tử nơron ở lớp đầu ra Đường nét liền diễn tả lan truyền thẳng của các tín hiệu, đường nét đứt diên tả lan truyền ngược của các sai số Đầu tiên huấn luyện vào cặp vào/ra ký hiệu (x,d) để cho đơn giản ta bỏ chỉ số k Khi một mẫu đầu vào x được đưa vào thì các phần tử trong mạng sẽ được tính như sau:
Đầu vào phần tử q của lớp ẩn sẽ được tính theo phương trình:
j m j qj
1
) (1.12) Đầu vào phần tử thứ i của lớp đầu ra sẽ là:
) (
1 1
1
j m j qj l
q iq q
l q iq
(
) (
) (
1 1
1
j m
j qj l
q iq q
l
q iq i
2
2
1 ) ( 2
1 ) (
2
1 )
q iq i
n i
i i
n i
i
d w
Sau đó, theo phương pháp độ dốc Gradient, các trọng số nối giữa lớp ẩn và lớp đầu ra được cập nhật bởi w iq, và nó được tính theo công thức sau:
iq iq
w
E w
Trang 23Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Sử dụng các công thức (1.13-1.15) và thay đổi luật với
i i
i i
i i
w
net net
net net
y y
net
y y
E net
net
net a
Bây giờ ta phải tính đầu ra zq của lớp ẩn:
Với trọng số nối giữa đầu vào và các lớp ẩn, ta sử dụng thay đổi luật cùng phương pháp độ dốc Gradient, ta cập nhật trọng số để kết nối giữa phần tử thứ j của lớp đầu vào với phần tử thứ q của lớp ẩn Khi đó:
q q
qj q q
qj qj
v
net net
z z
E v
net net
E v
iq i i
iq oi
q q
q
net
z z
E net
Trong đó, netq là đầu vào phần tử thứ q của lớp ẩn
Trang 24Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Tín hiệu sai số của một phần tử trong lớp ẩn khác so với tín hiệu sai số của một phần tử trong lớp đầu ra, như đã được chỉ ra trong công thức (1.22) và (1.18)
Do có sự khác nhau này, nên các thủ tục cập nhật các trọng số trên được gọi là luật học delta tổng quát Chúng ta xem xét công thức (1.22), sai số tín hiệu hq của phần
tử lớp ẩn q có thể được xác định trong các mẫu của các tín hiệu sai số oi của các phần tử ở lớp ra thứ i (yi) cung ứng Các hệ số là các trọng số được sử dụng cho lan truyền thẳng, nhưng ở đây chúng truyền các tín hiệu sai số (oi) ngược trở lại, đó chính là các đường nét đứt trong hình (1.12) Điều này đã chứng tỏ được đặc điểm quan trọng của thuật toán lan truyền ngược – luật cập nhật cục bộ, đây chính là tính toán trọng số thay đổi dựa vào sự kết nối, và chúng ta chỉ cần giá trị ở hai đầu của kết nối này
Sự đạo hàm ở trên có thể dễ dàng mở rộng cho mạng có nhiều hơn một lớp
ẩn, bằng cách sử dụng chuỗi luật liên tiếp Trong trường hợp chung, với số lớp tùy
ý, thì sự lan truyền ngược được cập nhật luật ở dạng sau:
j input i output j
1 1
1 )
1 ) ( ) (
net
net a net
Trang 25Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Thuật toán lan truyền ngược
Xem xét một mạng với Q lớp lan truyền ngược, q=1,2, ,Q; với q
neti và qyilần lượt là đầu vào và đầu ra của khối trong lớp thứ q Mạng có m nơron đầu vào, l nơron ở lớp ẩn, và n nơron đầu ra Với q
wij là trọng số nối từ q-1wj đến qyi Đầu vào: các cặp huấn luyện {x(k)
, d(k) | k=1,2, ,p}, ở đó giá trị đầu vào của phần tử cuối cùng bằng -1, tức là (k)1 1
m
Bước 0 (Đặt giá trị ban đầu)
- Lựa chọn bước tính (Hằng số học) 0<η<1 và Emax (sai số lớn nhất cho phép)
- Chọn các trọng số ban đầu nối từ phần tử thứ j của lớp (q – 1) đến phần tử thứ i của lớp q là q
wij có giá trị nhỏ và ngẫu nhiên
Lan truyền tín hiệu thẳng xuyên suốt mạng sử dụng công thức (1.35) cho mỗi
i và q cho tới khi các đầu ra của lớp đầu ra Q
yi được thực hiện
).(
q i q
y w a
net a
Bước 3 (Đo lường sai số đầu ra)
Tính toán giá trị sai lệch và tín hiệu sai lệch Qi cho lớp đầu ra như sau:
E y
d
n i
)(
2
1
)'(
)
( i(k) Q i Q i
i Q
net a y
d
Trang 26Số hóa bởi trung tâm học liệu http://lrc.tnụedụvn/
Trong đó: Qi là tín hiệu sai lệch của nơron thứ i cho lớp ra Q; là đạo hàm của hàm truyền ặ) theo tổng trọng số của phần tử i của lớp đầu ra là
)()'(
i Q i
Q
net d
da net
Bước 4 (lan truyền ngược sai số)
Các sai số lan truyền ngược với mục đích để cập nhật các trọng số và tính toán các tín hiệu sai lệch q 1icho các lớp xử lý:
j
q i
q ij
w w
j j
q ji q i q i q
w net
1 '( 1 ) ; với q=Q,Q-1, ,2 (1.31) Trong đó:
- là sai lệch tại thời điểm tính của giá trị trọng số liên kết cập nhật mới
và cũ, liên kết từ phần tử thứ j của lớp q-1 đến phần tử i của lớp q
- là giá trị trọng số liên kết cập nhật mới từ phần tử thứ j của lớp (q-1) đến phần tử i của lớp q
- là giá trị trọng số liên kết cũ từ phần tử thứ j của lớp (q-1) đến phần
Bước 6 (Kiểm tra tổng sai số)
Kiểm tra sự khác nhau giữa tổng sai số và sai số cho phép:
- Nếu tổng sai số nhỏ hơn sai số cho phép (tức là E<Emax) thì kết thúc quá trình huấn luyện, và ghi lại các giá trị trọng số cuối cùng
Trang 27Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
- Trái lại, thì lại gán E=0, k=1 và bắt đầu một quá trình huấn luyện mới bằng cách nhảy tới bước 1
1 5 Hệ mờ và mạng nơron
1.5.1 Kiến trúc của hệ mờ tổng quát
Một hệ mờ tiêu biểu có kiến trúc như hình vẽ
Hình 1.13 Kiến trúc của hệ mờ tổng quát
Thành phần trung tâm của hệ mờ là cơ sở luật mờ (fuzzy rule base) Cơ sở luật mờ bao gồm các luật mờ if-then biểu diễn tri thức của chuyên gia trong lĩnh vực nào đó Trong trường hợp một hệ điều khiển mờ cụ thể thì cơ sở luật mờ chính
là tri thức và kinh nghiệm của các chuyên gia trong việc điều khiển khi chưa áp dụng hệ mờ
Thành phần quan trọng kế tiếp là bộ suy diễn mờ (fuzzy inference engine) Nhiệm vụ của bộ phận này là kết hợp các luật trong cơ sở luật mờ,áp dụng vào tập
mờ đầu vào theo các phương pháp suy diễn mờ để xác định tập mờ đầu ra
Dữ liệu đầu vào của hệ điều khiển mờ là các tín hiệu do các bộ phận cảm biến môi trường cung cấp sau khi đã số hoá nên có tính chất rõ (khái niệm rõ ở đây
có nghĩa là các tín hiệu đó không phải là các tập mờ, chứ không có nghĩa là các tín hiệu không có nhiễu) Vì vậy cần phải có bộ mờ hoá (fuzzier) để chuyển các dữ liệu số đầu vào thành các tập mờ để bộ suy diễn mờ có thể thao tác được
Dữ liệu đầu ra của bộ suy diễn mờ ở dạng các tập mờ sẽ được bộ giải mờ (defuzzier) chuyển thành tín hiệu số trước khi truyền đến các cơ quan chấp hành như tay máy, công tắc, van điều khiển,…
Cơ sở luật mờ
Bộ suy diễn mờ
Bộ mờ hoá
Bộ giải
mờ
Đầu vào (số)
Đầu vào (tập mờ)
Tham khảo luật mờ
Đầu ra (tập mờ)
Đầu ra (số)
Trang 28Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Do các dữ liệu đầu vào và đầu ra được số hoá nên ta chỉ cần xem xét các hệ
mờ làm việc với các biến số Trường hợp tổng quát, hệ mờ nhận một vector n chiều
ở đầu vào và cho ra một vector m chiều ở đầu ra Hệ mờ như thế được gọi là hệ mờ nhiều đầu vào – nhiều đầu ra (MIMO) Nếu m bằng 1, ta có hệ mờ nhiều đầu vào – một đầu ra (MISO) Một hệ mờ nhiều đầu vào – nhiều đầu ra có thể phân tích thành nhiều hệ nhiều đầu vào – một đầu ra Do đó ta chỉ cần tìm hiểu kỹ về hệ mờ nhiều đầu vào – một đầu ra với các biến số Khi chỉ nói về hệ mờ nhiều – một thì ta sẽ ngầm hiểu là một hệ mờ nhiều đầu vào – một đầu ra với các biến số Ký hiệu
R V R U
, trong đó U i là miền xác định của các biến vào i, i=1 n và
V là miền giá trị của biến ra y, ta có mô hình hệ mờ nhiều đầu vào – một đầu ra như hình vẽ
Hình 1.14 Hệ mờ nhiều đầu vào một đầu ra
a) Cơ sở luật mờ
Cơ sở luật mờ của hệ mờ n đầu vào – một đầu ra gồm m luật if-then mờ có dạng:
If “x1 là Ak1” và “x2 là Ak2” và … và “xn là Akn” then “y là Bk” , k=1 m (*)
Trong đó k là chỉ số của luật (luật thứ k trong tập luật), xi là các biến đầu vào, Aki là các tập mờ trên Ui (i=1 n), y là biến đầu ra và Bk là tập mờ trên V (k=1 m)
n
U
x
Hệ mờ nhiều đầu vào – một đầu ra
Trang 29Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Các luật mờ dạng (*) được gọi là các luật if-then mờ chuẩn tắc Các luật mờ không chuẩn tắc có thể biến đổi để đưa về dạng chuẩn tắc tương đương
Có nhiều phương pháp để xác định các luật mờ để đưa vào cơ sở luật mờ Các phương pháp thông dụng là nhờ các chuyên gia trong lĩnh vực áp dụng, hoặc từ quan sát, thực nghiệm thống kê để có được các tập dữ liệu mẫu đầu vào và ra tương ứng, từ đó dùng các kỹ thuật khai mỏ dữ liệu để rút ra các luật
Cho A, A‟, B lần lượt là các tập mờ trên vũ trụ X, X, Y Luật if A then B được thể hiện như một quan hệ mờ R=AB trên XY Khi đó tập mờ B‟ suy ra từ A‟ được xác định bởi:
'
B
(y) = max {min [A'(x), R(x,y)]} (1.32)
Trường hợp một đầu vào và một luật
Trang 30Số hóa bởi trung tâm học liệu http://lrc.tnu.edu.vn/
Hình 1.15 Hàm thuộc hệ mờ một đầu vào một luật
Trường hợp hai đầu vào và một luật
Đây là trường hợp luật được phát biểu “Nếu x là A và y là B thì z là C”
Luật: Nếu x là A và y là B thì z là C
Sự kiện: x là A‟ và y là B‟
-
Kết luận: z là C‟
Luật mờ với điều kiện có 2 mệnh đề như trên có thể biểu diễn ở dạng AxB
=> C Suy luận tương tự trường hợp một đầu vào và một luật ta có: