Nghiên cứu ứng dụng các phương pháp học máy tiên tiến trong công tác dự báo vận hành hồ Hòa Bình - Pdf 25



I HC QUC GIA H NI
TRƯờNG ĐạI HọC CÔNG NGHệ
Phạm thị hoàng nhung Nghiên cứu ứng dụng các ph-ơng pháp
học Máy tiên tiến trong công tác dự báo
vận hành hồ hoà bình
LUậN VĂN THạC Sĩ
Chuyên ngành: Hệ thống thông tin
Mã số: 60.48.05

luận văn thạc sỹ Ng-ời h-ớng dẫn khoa học:
Gs.TS. hà quang thụy H NI - 2007 4
M
M


c
c


2.1.2 Tư tưởng chính của giải thuật di truyền 35
2.1.3 Giải thuật di truyền đơn giản 37
2.2 Ứng dụng giải thuật di truyền vào bài toán tối ưu hoá trọng số của mạng
nơ-ron nhân tạo 41
2.2.1 Xây dựng hàm giá 41
2.2.2 Mã hoá nhiễm sắc thể 41
2.2.3 Lai ghép 43 5
2.2.4 Đột biến 44
2.2.5 Thử nghiệm 44
2.2.6 Giải thuật đề xuất 49
2.3 Kết hợp giải thuật di truyền với giải thuật lan truyền ngược sai số để tối
ưu hoá trọng số mạng nơ-ron nhân tạo 51
2.3.1 Đặt vấn đề 51
2.3.2 Kết hợp giải thuật di truyền và giải thuật lan truyền ngược sai số53
Kết luận chương 55
CHƢƠNG 3 - ỨNG DỤNG MẠNG NƠ RON NHÂN TẠO VÀO VIỆC DỰ
BÁO LƢU LƢỢNG NƢỚC ĐẾN HỒ HOÀ BÌNH 56
3.1 Điều kiện địa lý, tự nhiên, khí tượng thuỷ văn lưu vực sông Đà 56
3.1.1 Vị trí địa lý 56
3.1.2 Địa hình 57
3.1.3 Điều kiện địa chất 57
3.1.4 Điều kiện thổ nhưỡng 57
3.1.5 Đặc điểm khí hậu 57
3.1.6 Đặc điểm chế độ thuỷ văn 58
3.1.7 Thống kê dữ liệu thu thập được 62
3.2 Các phương pháp dự báo 63
3.2.1 Dựa trên mô hình vật lý 63

hs
s
á
á
c
c
h
hh
h
ì
ì
n
n
h
hv
v




8
Hình 3.5 Kết quả dự báo với dữ liệu kiểm tra theo phương án 2 72
Hình 3.6 Kết quả dự báo với dữ liệu kiểm tra theo phương án 2 trên đồ thị scatter . 72
Hình 3.7 Kết quả dự báo với dữ liệu kiểm tra theo phương án 3 73
Hình 3.8 Kết quả dự báo với dữ liệu kiểm tra theo phương án 3 trên đồ thị scatter . 73 9
D
D
a
a
n
n
h
hs
s
á
á
c
c
h
hb

Bảng 3.1 Thống kê số liệu mưa thu thập được 62
Bảng 3.2 Thống kê số liệu lưu lượng thu thập được 63 10
M
M

ỞĐ
Đ


U
U
Dự báo thuỷ văn là công việc dự báo trước một cách có khoa học về trạng thái
biến đổi các yếu tố thuỷ văn trong tương lai. Đây là một ngành khoa học có nhiệm vụ
báo trước sự xuất hiện các yếu tố thủy văn trên cơ sở nghiên cứu các quy luật của
chúng. Hiện nay có rất nhiều bài toán dự báo thuỷ văn được đặt ra như dự báo dòng
chảy, dự báo mực nước, dự báo lưu lượng nước trên sông, dự báo lũ, và dự báo các
hiện tượng khác trên sông ngòi và hồ [3].
Tùy vào quan điểm phân chia mà tồn tại một số phân loại dự báo thủy văn.
Chẳng hạn, theo yêu cầu phục vụ thì có các loại dự báo như dự báo cho nông nghiệp,
dự báo cho giao thông, dự báo cho chống lũ lụt; còn theo đối tượng dự báo thì có các
loại dự báo mực nước, dự báo lưu lượng, dự báo bùn cát… Tuy nhiên, phân loại dự

dữ liệu và một số chuyên ngành khác để tìm ra những tri thức, bao gồm cả các thông
tin dự báo, từ những cơ sở dữ liệu lớn.
Luận văn này tập trung khảo sát một số phương pháp học máy tiên tiến, thực hiện
việc kết hợp giữa phương pháp học máy sử dụng mạng nơ-ron nhân tạo [5-7,9-20] với
giải thuật di truyền [4,8,21] và ứng dụng vào bài toán dự báo lưu lượng nước đến hồ
Hòa Bình. Luận văn tập trung khảo sát một số công trình nghiên cứu liên quan trên thế
giới [5-7, 12-14, 19]. Demetris F. Lekkas [12] cung cấp một khung nhìn phương pháp
luận về các phương pháp dự báo dòng chảy. Ibrahim Can cùng các đồng tác giả [5] và
Cristiane Medina Finzi Quintao cùng các đồng tác giả [19] công bố một số kết quả
nghiên cứu cập nhật về dự báo dòng chảy của một số dòng sông tại Thổ Nhĩ Kỳ và
Brazin. Đặc biệt, các công trình này đã cung cấp cách thức đánh giá kết quả thực
nghiệm các phương pháp dự báo thủy văn được đề cập. Các công trình nghiên cứu
khác về mạng nơ-ron nhân tạo, giải thuật di truyền và kết hợp chúng được luận văn sử
dụng để làm nền tảng khoa học cho các nghiên cứu phát triển. Luận văn đã hoàn thành
phần mềm thử nghiệm và tiến hành thực nghiệm trên bộ dữ liệu được thu thập tin cậy
thông qua hệ thống đo đạc thủy văn dọc sông Đà, nguồn nước chính chảy vào hồ Hòa
Bình. Đóng góp khoa học của luận văn là một báo cáo khoa học đã được trình bày tại
Hội thảo khoa học quốc gia Một số vấn đề chọn lọc về Công nghệ thông tin và Truyền
thông lần thứ X được tổ chức tại Đại Lải vào tháng 9/2007 với kết quả thực hiện cho
dự báo nước trước 10 ngày có chỉ số R
2
khá cao, lên tới 0.8737 [2]. Cải tiến do luận
văn đề xuất kết hợp đột biến BIASED với đột biến UNBIASED trong đó đột biến
BIASED sẽ đóng vai trò chủ đạo nhằm vượt ra khỏi cực trị địa phương (D. Montana
and L. Davis [16]) là có ý nghĩa. Các kết quả thực nghiệm cải tiến trên cho thấy mọi
tiêu chí đánh giá đều tốt lên, chỉ số R
2
nâng lên 0.8742 (so với 0.8737 [2]), sai số quân
phương là 72.28 m
3

C
H
H
Ư
Ư
Ơ
Ơ
N
N
G
G1
1-
-M
M


N
N
G
G


OT
T
R
R
U
U
Y
Y


N
NT
T
H
H


N
N
G
GN

1.1.1 Khái niệm cơ bản
Theo các nhà nghiên cứu sinh học về bộ não, hệ thống thần kinh của con người
bao gồm khoảng 100 tỷ tế bào thần kinh, thường gọi là các nơ-ron. Mỗi tế bào nơ-
ron gồm ba phần:
 Thân nơ-ron với nhân bên trong (gọi là soma), là nơi tiếp nhận hay phát ra các
xung động thần kinh.
 Một hệ thống dạng cây các dây thần kinh vào (gọi là dendrite) để đưa tín hiệu
tới nhân nơ-ron. Các dây thần kinh vào tạo thành một lưới dày đặc xung
quanh thân nơ-ron, chiếm diện tích khoảng 0,25 mm
2

 Đầu dây thần kinh ra (gọi là sợi trục axon) phân nhánh dạng hình cây, có thể
dài từ một cm đến hàng mét. Chúng nối với các dây thần kinh vào hoặc trực
tiếp với nhân tế bào của các nơ-ron khác thông qua các khớp nối (gọi là
synapse). Thông thường mỗi nơ-ron có thể có từ vài chục cho tới hàng trăm
ngàn khớp nối để nối với các nơ-ron khác. Có hai loại khớp nối, khớp nối
kích thích (excitatory) sẽ cho tín hiệu qua nó để tới nơ-ron còn khớp nối ức
chế (inhibitory) có tác dụng làm cản tín hiệu tới nơ-ron. Người ta ước tính
mỗi nơ-ron trong bộ não của con người có khoảng 10
4
khớp nối (hình 1.1)
Chức năng cơ bản của các tế bào nơ-ron là liên kết với nhau để tạo nên hệ thống
thần kinh điều khiển hoạt động của cơ thể sống. Các tế bào nơ-ron truyền tín hiệu
cho nhau thông qua các dây thần kinh vào và ra, các tín hiệu đó có dạng xung điện
và được tạo ra từ các quá trình phản ứng hoá học phức tạp. Tại nhân tế bào, khi điện 14
thế của tín hiệu vào đạt tới một ngưỡng nào đó thì nó sẽ tạo ra một xung điện dẫn tới
trục dây thần kinh ra. Xung này truyền theo trục ra tới các nhánh rẽ và tiếp tục




(1.1)
Trong đó g là hàm kích hoạt (còn gọi là hàm chuyển) có dạng là hàm bước nhảy,
nó đóng vai trò biến đổi từ thông tin đầu vào thành tín hiệu đầu ra



i
x
1

x
2

x
m

w
1

w
i2

.
Trong mô hình nơ-ron của McCulloch và Pitts, các trọng số w
ij
thể hiện ảnh
hưởng của khớp nối trong liên kết giữa nơ-ron j (nơ-ron gửi tín hiệu) và nơ-ron i
(nơ-ron nhận tín hiệu). Trọng số w
ij
dương ứng với khớp nối kích thích, trọng số âm
ứng với khớp nối ức chế còn w
ij
bằng 0 khi không có liên kết giữa hai nơ-ron. Hàm
chuyển g ngoài dạng hàm bước nhảy còn có thể chọn nhiều dạng khác nhau và sẽ
được đề cập ở các phần sau.
Thông qua cách mô hình hoá đơn giản một nơ-ron sinh học như trên, McCulloch
và Pitts đã đưa ra một mô hình nơ-ron nhân tạo có tiềm năng tính toán quan trọng.
Nó có thể thực hiện các phép toán lô-gíc cơ bản như AND, OR và NOT khi các
trọng số và ngưỡng được chọn phù hợp. Sự liên kết giữa các nơ-ron nhân tạo với các
cách thức khác nhau sẽ tạo nên các loại mạng nơ-ron nhân tạo (Artificial Neural
Network - ANN) với những tính chất và khả năng làm việc khác nhau.
1.1.2 Mô hình mạng nơ-ron nhân tạo
Như đã được giới thiệu, mạng nơ-ron nhân tạo là một hệ thống xử lý thông tin
được xây dựng trên cơ sở tổng quát hoá mô hình toán học của nơ-ron sinh học và
phỏng theo cơ chế làm việc của bộ não con người. Mạng nơ-ron nhân tạo được thể
hiện thông qua ba thành phần cơ bản: mô hình của nơ-ron, cấu trúc và sự liên kết
giữa các nơ-ron, phương pháp học được áp dụng cho mạng nơ-ron.
a. Các phần tử xử lý
Việc xử lý thông tin tại mỗi nơ-ron có thể xem là gồm hai phần: xử lý tín hiệu
vào (input) và đưa tín hiệu ra (output). Tương ứng với phần vào của mỗi nơ-ron là
một hàm tương tác (interaction) f, hàm này kết hợp các thông tin truyền tới nơ-ron và
tạo thành thông tin đầu vào tổng hợp (gọi là net input) của nơ-ron đó .

)(
fkhi
fkhi
fg
(1.4)
 Hàm dấu








01
01
)sgn()(
fkhi
fkhi
ffg
(1.5)
 Hàm sigmoid
f
e
fg




1


.
.
.
x
1x
2x
my
1y
2y
n


.
.
.

x
1x
2x
my
1y
2y
nx
1.
.
.

y
1y
2y
nLớp vào

Các lớp ẩn

Lớp ra
18
c. Các luật học của mạng nơ-ron nhân tạo

21
11
( ) ( ( ))
nn
j ij i
ji
f x x





(1.7)
trong đó : 
j
, 
ij
là các hàm liên tục một biến. 
ij
là hàm đơn điệu, không phụ thuộc
vào hàm f. Mặt khác, mô hình mạng nơ-ron nhân tạo cho phép liên kết có trọng số
các phần tử phi tuyến (các nơ-ron đơn lẻ) tạo nên dạng hàm tổng hợp từ các hàm
thành phần. Do vậy, sau một quá trình điều chỉnh sự liên kết cho phù hợp (quá trình
học), các phần tử phi tuyến đó sẽ tạo nên một hàm phi tuyến phức tạp có khả năng
xấp xỉ hàm biểu diễn quá trình cần nghiên cứu. Kết quả là đầu ra của nó sẽ tương tự
với kết quả đầu ra của tập dữ liệu dùng để luyện mạng. Khi đó ta nói mạng nơ-ron
nhân tạo đã học được mối quan hệ tương quan đầu vào - đầu ra của quá trình và lưu
lại mối quan hệ tương quan này thông qua bộ trọng số liên kết giữa các nơ-ron. Do
đó, mạng nơ-ron nhân tạo có thể tính toán trên bộ số liệu đầu vào mới để đưa ra kết
quả đầu ra tương ứng.

mạng nơ-ron nhân tạo đã được sử dụng trong nhiều hệ thống điều khiển tự
động cũng như góp phần giải quyết những bài toán tối ưu trong thực tế.
Tóm lại, mạng nơ-ron nhân tạo được xem như là một cách tiếp cận đầy tiềm
năng để giải quyết các bài toán có tính phi tuyến, phức tạp và đặc biệt là trong tình
huống mối quan hệ bản chất vật lý của quá trình cần nghiên cứu không dễ thiết lập
tường minh.
1.2 Mạng nơ-ron lan truyền thẳng nhiều lớp
1.2.1 Mạng perceptron một lớp
Mạng perceptron một lớp do F.Rosenblatt đề xuất năm 1960 [15] là mạng truyền
thẳng chỉ một lớp vào và một lớp ra không có lớp ẩn. Trên mỗi lớp này có thể có 20
một hoặc nhiều nơ-ron. Mô hình mạng nơ-ron của Rosenblatt sử dụng hàm ngưỡng
đóng vai trò là hàm chuyển. Do đó, tổng của các tín hiệu vào lớn hơn giá trị ngưỡng
thì giá trị đầu ra của nơ-ron sẽ là 1, còn trái lại sẽ là 0.

Ngay từ khi mạng Perceptron một lớp được đề xuất nó đã được sử dụng để giải
quyết bài toán phân lớp. Một đối tượng sẽ được nơ-ron i phân vào lớp A nếu
Tổng thông tin đầu vào :
ij j i
wx




Trong đó w
ij
là trọng số liên kết từ nơ-ron j tới nơ-ron i , x
j

2
(k)
, …, x
m
(k)
]
T
(với m là số đầu vào, n là
số đầu ra và p là cặp mẫu đầu vào - đầu ra dùng cho việc học). Như vậy chúng ta
mong rằng sau quá trình học, đầu ra tính toán được y
(k)
= [y
1
(k)
, y
2
(k)
, …, y
n
(k)
]
T
sẽ
bằng với đầu ra của mẫu học d
(k)

( ) ( ) ( ) ( )
1
( ) ( )
m


y
n

w
11

w
12

w
1m

w
n1

w
n2

w
nme
1

d
1

Đầu ra tính toán

)
Out
i
=
1 nếu net
i
 
0 nếu net
i
< 
với net
i
=

w
ij
x
j
là tổng thông tin
đầu vào của nơ-ron i 21
Để bắt đầu quá trình luyện mạng, các trọng số được gán giá trị ngẫu nhiên trong
khoảng [-3, 3]. Sau đó hiệu chỉnh các trọng số cho phù hợp với mẫu học để làm giảm
sai số giữa y
(k)

w
ij
là số gia của trọng số w
ij
(trọng số liên kết giữa đầu vào j tới
nơ-ron i) theo công thức:

w
ij
=

i
x
j
trong đó  là tốc độ học (0<<1)
o Hiệu chỉnh w
ij
(t+1)
= w
ij
(t)
+

w
ij
=w
ij
(t)
+


mặt phẳng sẽ phân chia không gian ba chiều thành hai vùng riêng biệt. Mở rộng ra,
nếu có n đầu vào , n>2 thì công thức
1
n
ij j i
i
wx




tạo nên một siêu phẳng có n-1
chiều trong không gian n chiều, nó chia không gian đó thành hai nửa. Trong nhiều
bài toán thực tế đòi hỏi chia các vùng của các điểm trong một siêu không gian thành
các lớp riêng biệt. Loại bài toán này gọi là bài toán phân lớp. Bài toán phân lớp có
thể giải quyết bằng cách tìm các tham số thích hợp cho một siêu phẳng để nó có thể
chia không gian n chiều thành các vùng riêng biệt.
Với tính chất của như đã nêu trên, mạng perceptron một lớp có thể mô tả các
hàm logic như AND, OR và NOT. Tuy nhiên nó không thể hiện được hàm XOR.
Như vậy chứng tỏ mô hình perceptron một lớp không thể giải quyết bài toán này.
Vấn đề này sẽ được giải quyết bằng mô hình mạng nơ-ron perceptron nhiều lớp
(Multilayer Perceptron - MLP). 22
1.2.2 Mạng perceptron nhiều lớp
Mạng perceptron nhiều lớp (Multilayer Perceptron –MLP) còn được gọi là mạng
truyền thẳng nhiều lớp là sự mở rộng của mô hình mạng perceptron với sự bổ sung
thêm những lớp ẩn và các nơ-ron trong các lớp ẩn này có hàm chuyển (hàm kích
hoạt) dạng phi tuyến. Mạng MLP có một lớp ẩn là mạng nơ-ron nhân tạo được sử

1
X
1

X
2

-0,5
1,5
-1
1
-1
1
1
-1,5
1
Y=X
1
XOR X
2

X
1

X
2-0,5+x
1

(k)
) thuật toán lan truyền ngược sai số thực
hiện hai giai đoạn sau:
 Giai đoạn thứ nhất, mẫu đầu vào x
(k)
được truyền từ lớp vào tới lớp ra, và ta
có kết quả đầu ra tính toán được là y
(k)
.
 Giai đoạn tiếp theo, tín hiệu lỗi được tính toán từ sự khác nhau giữa đầu ra
quan sát được d
(k)
với đầu ra tính toán y
(k)
sẽ được lan truyền ngược lại từ lớp
ra đến các lớp trước để điều chỉnh các trọng số của mạng. Để làm ví dụ ta xét
mạng truyền thẳng có một lớp ẩn dưới đây, đối với các mạng có kích thước
lớn hơn thì thao tác cũng tương tự.
Mạng nơ-ron được xét có m nơ-ron ở lớp vào, l nơ-ron trong lớp ẩn và n nơ-ron
ở lớp ra. Đường kẻ liền thể hiện luồng tín hiệu được truyền từ đầu vào tới đầu ra còn
các đường kẻ nét đứt thể hiện luồng tín hiệu lỗi được truyền ngược trở lại từ đầu ra.

Hình 1.10 Lan truyền tín hiệu trong quá trình học theo phương pháp lan truyền
ngược sai số
Chúng ta xét một cặp đầu vào - đầu ra để luyện mạng (x,d), để đơn giản chúng ta
bỏ ký hiệu mũ k thể hiện số thứ tự của cặp mẫu này trong bộ mẫu dùng để luyện
mạng. Khi đưa vào đầu vào x, nơ-ron thứ q trong lớp ẩn sẽ nhận tín hiệu vào của
mạng là:

x
1

x
j

x
m

y
1

y
i

y
n

Lớp vào
Lớp ẩn
Lớp ra
v
qj

w
iq

z
q


1 1 1
()
l l m
i iq q iq qj j
q q j
net w z w g v x
  

  
(1.11)
Và cuối cùng, đầu ra của nơ-ron i trên lớp ra sẽ là:

1 1 1
( ) ( ) ( ( ))
l l m
i i iq q iq qj j
q q j
y g net g w z g w g v x
  
  
  
(1.12)
Công thức trên cho biết quá trình lan truyền tín hiệu từ đầu vào qua lớp ẩn tới
đầu ra. Tiếp theo chúng ta xét tín hiệu lỗi được lan truyền ngược lại từ lớp ra. Trước
hết, đối với mỗi cặp giá trị vào – ra chúng ta xây dựng một hàm giá như sau:

 
2
2

E
/d
W
là dương 25

Hình 1.11 Sai số E được xét là hàm của trọng số W
Bằng biểu thức, chúng ta có thể biểu diễn phương pháp giảm gradient như sau:


w= w
(new)
– w
(old)
= -

.

E/

w (1.14)
Ở đây  là hằng số dương xác định tốc độ giảm giá trị của w, còn dấu âm chỉ
chiều giảm gradient.
Áp dụng phương pháp giảm gradient đối với các trọng số liên kết giữa các nơ-
ron trong lớp ẩn tới các nơ-ron của lớp ra ta có:

iq
iq

   



     

   

  

   

(1.16)
Trong đó 
oi
là tín hiệu sai số và chỉ số oi có nghĩa là nút thứ i trong trên lớp ra.
Tín hiệu sai số được tính như sau:

   
'( )
i
oi i i i
i i i
y
EE
d y g net
net y net


     

w
= tan  >
0
tan 
< 0
E
W 26
Để điều chỉnh trọng số của các liên kết giữa lớp vào tới lớp ẩn ta cũng sử dụng
phương pháp giảm gradient và lấy đạo hàm theo các biến trung gian như đã áp ở
trên. Xét liên kết giữa nơ-ron thứ j ở lớp vào và nơ-ron thứ q trên lớp ra:

q q q
qj
qj q qj q q qj
net z net
E E E
v
v net v z net v
  
          
  
  
      
          
     
          
          

i
v d w g net x x
 


  


(1.20)
Trong đó

hq
là tín hiệu lỗi của nơ-ron thứ q trong lớp ẩn và được định nghĩa như
sau:

 
1
'
n
q
hq q oi iq
i
q q q
z
EE
g net w
net z net




Trong đó “output_i ” là đầu ra của nơ-ron i và “ input_j ” là đầu vào của nơ-ron
j, 
i
là tín hiệu học được định nghĩa trong công thức (4.10)
Từ các phân tích trên, thuật toán lan truyền ngược sai số được xây dựng như
sau:
Xét một mạng nơ-ron truyền thẳng có Q lớp, q = 1, 2, …, Q, và gọi net
i
và y
i

tín hiệu vào và ra của nơ-ron thứ i trong lớp q. Mạng này có m đầu vào và n đầu ra.
Đặt
q
w
ij
là trọng số của liên kết từ nơ-ron thứ j trong lớp q-1 tới nơ-ron thứ i trong
lớp q.

Trích đoạn Tư tưởng chính của giải thuật di truyền Giải thuật di truyền đơn giản Mã hoá nhiễm sắc thể
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status