Mạng nơron truyền thẳng và ứng dụng trong dự báo dữ liệu LUẬN VĂN THẠC SĨ KHOA HỌC Giáo viên hướng dẫn TS. Lê Hải Khôi Người thực hiện Trần Đức Minh
Nội dung 1. 2. 3. 4. 5. 6.
Giới thiệu. Các khái niệm cơ bản về mạng nơron. Mạng nơron truyền thẳng. Thu thập, Phân tích và xử lý dữ liệu. Chương trình dự báo dữ liệu. Kết luận
2
1. Giới thiệu
Mạng nơron nhân tạo xuất phát từ việc mô phỏng hoạt động của bộ não con người. Mạng nơron là các mô hình tính toán chứa các đơn vị xử lý có khả năng truyền thông với nhau bằng cách gửi các tín hiệu đến lẫn nhau thông qua các liên kết có trọng số. Có khả năng thích nghi, nghĩa là “học từ các mẫu” thay vì “lập trình”. Các ứng dụng của mạng nơron: Phân loại: tín hiệu radar; xem xét các mẫu bệnh,… Giảm nhiễu: tiếng nói, ảnh tĩnh bị nhiễu,… Dự đoán/Dự báo : lượng sử dụng, thị trường, dự đoán lượng bán,…
3
2. Các khái niệm cơ bản về mạng nơron: Mạng nơron có các đặc trưng sau:
g(aj)
zj
...
Tập các đơn vị xử lý. Một mức kích hoạt cho mỗi đơn vị. x0 w θj j0 j Các liên kết giữa các đơn vị. wj1 aj x1 Σ wjn Luật lan truyền. xn Các hàm chuyển. a = ∑ w x +θ Các đầu vào ngoài dữ liệu (độ lệch - bias). Phương pháp thu thập thông tin - Luật học. Môi trường trong đó hệ thống có thể hoạt động. n
j
ji i
j
zj = g (aj )
i= 1
4
3. Mạng nơron truyền thẳng 3.1. Cấu trúc cơ bản x0
bias
h0
x1
bias y1
h1
x2
…
…
xl Input Layer
y2
h2
w(1)ij
…
yn hm (2) HiddenLayer w jk Output Layer
Đơn vị ẩn: l
aj = ∑ w
(1)
l
x
ji i
Đơn vị đầu ra:
ak = ∑ w j =0
hj = g ( aj ) = g (∑ w(1) jixi ) i =0
i =0 m
• Bao gồm một số lớp (1 lớp vào, 1 hay nhiều lớp ẩn và 1 lớp ra). • Mỗi lớp có một số các đơn vị. • Mỗi đơn vị nhận đầu vào từ các đơn vị ở lớp trước đó và gửi các tín hiệu này đến các đơn vị ở lớp kế tiếp. • Đầu ra được biểu diễn bởi một hàm tường minh của các trọng số và độ lệch.
m
( 2)
h
kj j
yk = g 2(ak ) = g 2(∑ w j =0
( 2)
l
kj
g (∑ w(1) jixi )) i =0
5
3.2. Khả năng thể hiện
Các mạng không có các lớp ẩn chỉ có khả năng giải quyết các bài toán khả phân tuyến tính.
Các mạng nơron với một lớp ẩn có thể xấp xỉ khá tốt bất kỳ một ánh xạ hàm nào từ không gian hữu hạn một chiều sang một không gian khác.
Các mạng nơron với 2 lớp ẩn có khả năng thể hiện một đường phân chia hay xấp xỉ một ánh xạ mịn bất kỳ tới một độ chính xác bất kỳ.
6
3.3. Huấn luyện bằng thuật toán lan truyền ngược: • Đây là phương pháp thông dụng nhất để huấn luyện cho các mạng nơron truyền thẳng nhiều lớp. • Có thể áp dụng cho các mạng truyền thẳng với các hàm chuyển và các hàm lỗi khả vi. Bước 1: Lan truyền xuôi đầu vào qua mạng: a0 = p am+1 = fm+1 (Wm+1 am + bm+1 ), với m = 0, 1, ..., M – 1. a = aM Bước 2: Lan truyền độ nhậy cảm (lỗi) ngược lại qua mạng: • M
M s = − 2 F ( n ) ( t − a ) , trong đó • m T s m = F ( n m )( W m +1 ) s m +1 , với m = M – 1, ..., 2, 1. M
Bước 3: Cuối cùng, các trọng số và độ lệch được cập nhật bởi công thức sau:
(
W m ( k + 1) = W m ( k ) − α s m a m −1
Sử dụng bước đà:
)
T
b m ( k + 1) = b m ( k ) − α s m ∆Wm(k) = γ ∆Wm(k - 1) – (1 - γ ) α sm (am –1 ) T, ∆bm(k) = γ ∆bm(k - 1) - (1 - γ ) α sm .
7
4. Thu thập, Phân tích và Xử lý dữ liệu Xác định yêu cầu về dữ liệu - Dữ liệu nào có liên quan trực tiếp đến bài toán. - Dữ liệu nào có thể không liên quan. Thu thập, phân tích dữ liệu
Tiền xử lý
dữ liệu
Mạng nơron
Hậu xử lý
dữ liệu
Phân tích sơ bộ dữ liệu (Thống kê và Trực quan hóa) Kiểm tra tính hợp lệ của dữ liệu Phân hoạch dữ liệu (Huấn luyện/Kiểm tra/Kiểm định) Biến đổi Điều chỉnh giá trị về khoảng (0,1) hoặc (-1,1) Áp dụng một hàm toán học cho các giá trị (chẳng hạn hàm logarit hay bình phương) Mã hóa các biến số / Trích chọn đặc trưng. Phân loại Dự báo, … Tùy thuộc vào ứng dụng và quá trình tiền xử lý.
8
5. Chương trình Dự báo dữ liệu
Bài toán dự báo lượng sử dụng khí ga
9
5.1. Mục tiêu Dự đoán lượng sử dụng hàng giờ trong 1 đến 5 ngày cho các công ty cung cấp ga để: Đáp ứng được nhu cầu trong tương lai Tối thiểu chi phí điều hành Lập kế hoạch dự trữ.
5.2. Các nhân tố ảnh hưởng Các điều kiện thời tiết: nhiệt độ, tốc độ gió, ... Thời gian: giờ, ngày trong tuần, tháng, ngày cuối tuần. Thông tin kinh tế: giá ga, giá dầu, …
10
5.3. Mô hình dự báo 1) Dữ liệu thô Ngày 02-08-1998 02-08-1998 02-08-1998 02-08-1998 02-08-1998 02-08-1998 02-08-1998 02-08-1998
Gio
Nhiet do
Gio
Su dung
00 01 02 03 04 05 06 07
37 37 37 37 37 37 36 34
3 9 6 3 3 5 5 6
1168 1213 1316 1417 1534 1680 1819 1967
6 hiệu ứng
2) Dữ liệu sau xử lý sơ bộ 1.1. 2.2. 3.3. 4.4. 5.5. 6.6.
Nhiệt Nhiệtđộ độ Tốc Tốcđộ độgió gió Giờ Giờtrong trongngày ngày Ngày Ngàytrong trongtuần tuần Cuối Cuốituần tuần Tháng Thángtrong trongnăm năm
Nhiet do 37 37
11
5.3. Mô hình dự báo (tiếp) 3) Cấu trúc mạng bias
bias
Nhiệt độ Gió Giờ Ngày tuần
Lượng Sử dụng
…
Cuối tuần Tháng Lớp vào
Lớp ẩn
Lớp ra
Hàm Hàmchuyển chuyểncủa củacác cácđơn đơnvịvịẩn ẩnsử sửdụng dụnghàm hàmsigmoid sigmoid Hàm Hàmchuyển chuyểncho cholớp lớpraralàlàhàm hàmđồng đồngnhất nhấtg(x) g(x)==xx 12
5.4. Các đặc trưng của hệ thống
• Tìm ra số tối ưu các đơn vị trong lớp ẩn • Đánh giá ảnh hưởng của hệ số học và hệ số bước đà • Đánh giá được khả năng tổng quát hóa của mạng trong khi huấn luyện • Dự báo dữ liệu tương lai
13
5.4. Các đặc trưng của hệ thống (tiếp) 1) Xác định các tham số cho hệ thống
14
5.4. Các đặc trưng của hệ thống (tiếp) 3) Huấn luyện mạng và kiểm tra khả năng tổng quát hóa
15
5.4. Các đặc trưng của hệ thống (tiếp) 4) Dự báo tương lai
16
5.5. Phân tích kết quả Mạng được huấn luyện tốt có khả năng dự báo chính xác đến 90%. Hệ số học và hệ số bước đà có ảnh hưởng rất nhiều đến thời gian huấn luyện của mạng. Đối với đơn vị lớp ra, hàm chuyển sử dụng là sigmoid hay hàm đồng nhất không có khác biệt đáng kể. Tùy thuộc vào độ phức tạp của bài toán, chương trình có thời gian huấn luyện, số đơn vị sử dụng trong lớp ẩn khác nhau. Để chọn lựa được cấu trúc tối ưu, có thể áp dụng phương pháp Thử-sai (Trial-and-errors). …
17
5.6. Các bước thực hiện Dưới đây là các bước chính khi thực hiện thiết kế và thực thi mạng nơron cho bài toán dự báo: 1. Chọn lựa các biến. 2. Thu thập dữ liệu. 3. Tiền xử lý dữ liệu. 4. Phân chia tập dữ liệu thành các tập: huấn luyện, kiểm tra, kiểm định. 5. Xác định cấu trúc mạng: • số lớp ẩn. • số nơron trong các lớp ẩn. • số nơron đầu ra. • các hàm chuyển. 6. Xác định tiêu chuẩn đánh giá (hàm lỗi). 7. Huấn luyện mạng. 8. Thực thi trong thực tế. Trong khi thực hiện, không nhất thiết phải theo thứ tự các bước mà có thể quay lại các bước trước đó, đặc biệt là ở bước Huấn luyện và Lựa chọn các biến tham gia đầu vào.
18
6. Kết luận 1) Mạng nơron là các bộ xấp xỉ đa năng. Chúng có lợi điểm so với các cách tiếp cận truyền thống: không yêu cầu dữ liệu phải đầy đủ. 2) Chương trình Dự báo được xây dựng và áp dụng thử nghiệm cho dữ liệu lượng sử dụng khí ga (lấy trên Internet) có khả năng dự báo rất tốt. 3) Các mô hình tương tự có thể xây dựng cho các bài toán dự báo khác như: điện, nước, dự đoán thị trường, chứng khoán, lưu lượng giao thông, lượng bán của các sản phẩm,… chừng nào những mối liên hệ giữa các đầu vào và đầu ra được xác định bằng thực tế và lý thuyết. 4) Các thuật toán cải tiến có thể áp dụng để tăng cường hiệu năng của mạng. 19
XIN XIN CẢM CẢM ƠN! ƠN!
20