Sai số tuyệt đối (Mean Absolute Error): 1 1 n ˆ i i i MAE Q Q n = = ∑ − (3.5) Trong đó: o ˆ i Q: Giá trị tính toán tại thời điểm i. o Qi: Giá trị thực đo tại thời điểm i.
Tuy các chỉ số (3.3)-(3.5) là trực quan và dễ dàng tính toán song trong nhiều trường hợp khi dung lượng dữ liệu lớn hay dữ liệu có độ biến động cao thì các chỉ số
này trở nên quá thô sơ. D.R. Legates và G.J. McCabe Jr. [12] trình bày về chỉ số hiệu quả - E (Coefficient of Efficiency) và chỉ số xác định - R2 (Coefficient of Determination) tuy có độ phức tạp tính toán cao hơn song khắc phục được các hạn chế của các chỉ số (3.3)-(3.5): ( ) ( ) 2 1 2 1 ˆ 1 n i i i n i i Q Q E Q Q = = − = − − ∑ ∑ (3.6) ( )( ) ( ) ( ) 2 1 2 2 1 1 ˆ ˆ ˆ ˆ n i i i n n i i i i Q Q Q Q R Q Q Q Q = = = − − = − − ∑ ∑ ∑ (3.7)
Các chỉ số E và R2 có thể được dùng theo cách kết hợp hoặc riêng rẽ. Phương pháp tốt là phương pháp nhận được giá trị của các chỉ số này lớn.
Trong nghiên cứu của mình, chúng tôi sử dụng hai chỉ số: chỉ số sai số căn quân phương - RMSE và chỉ số xác định - R2đểđánh giá độ chính xác của dự báo.
3.4 Dự báo lưu lượng đến hồ Hoà Bình trước 10 ngày 3.4.1 Phần mềm xây dựng 3.4.1 Phần mềm xây dựng
Để có thể thử nghiệm các phương án học khác nhau đối với mạng nơ-ron nhân tạo như đề cập ở chương 2 và thử nghiệm các phương án dự báo dòng chảy, chúng tôi đã xây dựng một phần mềm mô phỏng mạng nơ-ron truyền thẳng sử dụng thuật toán học lan truyền ngược sai số kết hợp với giải thuật di truyền. Giao diện của chính
của phần mềm như trên hình 3.3. Chi tiết về phần mềm này được trình bày trong phụ
lục A.
Phần mềm được xây dựng bằng ngôn ngữ Visual Basic 6.0, không sử dụng thư
viện đặc biệt nào. Các giải thuật lan truyền ngược sai số, giải thuật di truyền được lập trình từđầu.
Cấu hình của hệ thống yêu cầu để có thể cài đặt được phần mềm là: - Tốc độ CPU tương đương Pentium 4 trở lên.
- Dung lượng RAM 256MB trở lên.
- Dung lượng đĩa cứng còn trống trên 20 MB.
Hình 3.3 Giao diện chính của phần mềm thử nghiệm
3.4.2 Số liệu sử dụng
Chúng tôi sử dụng số liệu từ năm 1964 đến năm 2002 tại trạm đo Tạ Bú trên sông Đà, trạm đo lưu lượng gần hồ Hoà Bình nhất (xem mục 3.1.7). Số liệu này
được đo trong mùa cạn từ tháng Mười Hai năm trước đến tháng Năm năm sau. Bộ
dữ liệu được chia làm hai phần:
- Phần dữ liệu học (training set): Từ cuối năm 1964 đến đầu năm 1995 có tổng cộng 480 mẫu học.
- Phần dữ liệu kiểm tra (test set): Từ cuối năm 1995 đến đầu năm 2002 tổng cộng có 90 mẫu kiểm tra.
3.4.3 Các tham số
a. Các tham số của mạng nơ-ron
- Kiến trúc mạng: chúng tôi sử dụng mạng nơ-ron lan truyền thẳng ba lớp: lớp vào, lớp ẩn và lớp ra. Trong đó lớp vào là đầu vào của các tham số phục vụ cho việc dự báo. Lớp ra chỉ có một nơ-ron, giá trị đầu ra của nơ-ron này chính là lưu lượng nước cần dự báo.
- Hàm kích hoạt được sử dụng là hàm sigmoid (hình 1.13).
b. Các tham số học
- Sử dụng phương pháp học kết hợp giữa giải thuật di truyền có cải tiến và giải thuật lan truyền ngược sai số nhưđã đề cập trong phần 2.4.
- Giá trị trọng sốđược khởi tạo ngẫu nhiên trong khoảng (-3, 3). - Với giải thuật di truyền: o Số lượng quần thể: 100 o Sử dụng lai ghép nút, đột biến nút o Xác suất lai: 0.3 o Xác suất đột biến BIASED: 0.1 o Xác suất đột biến UNBIASED: 0.03 - Với giải thuật lan truyền ngược sai số:
o Hằng số học: 0.3
o Không sử dụng hằng số quán tính.
3.4.4 Các phương án dự báo
Việc thử nghiệm được tiến hành với 3 phương án dự báo dòng chảy đến hồ Hoà Bình trước 10 ngày như đã được chúng tôi trình bày trong [1]. Trong nghiên cứu
được trình bày trong [1], chúng tôi sử dụng mạng nơ-ron truyền thẳng với phương pháp học dựa trên giải thuật lan truyền ngược sai số. Trong phần này, chúng tôi thử
nghiệm các phương án dự báo đó với mạng nơ-ron sử dụng phương pháp học kết hợp giữa giải thuật di truyền cải tiến và giải thuật lan truyền ngược sai số như đã trình bày trong chương 2 phần 2.4 để so sánh với các kết quả trong [1].
a. Phương án 1
Trong phương án này việc dự báo lưu lượng nước tương lai trước 10 ngày Q(t+10) dựa vào các lưu lượng nước tại thời điểm hiện tại và quá khứ. Chúng tôi sử
dụng ba giá trị lưu lượng làm đầu vào của mạng gồm: - Lưu lượng nước hiện tại: Q(t)
- Lưu lượng nước trước đó 10 ngày: Q(t-10) - Lưu lượng nước trước đó 20 ngày: Q(t-20)
Q t( +10)= f Q t Q t( ( ), ( −10), (Q t−20)) (3.6) Ta sẽ dùng mạng nơ-ron để học được mối quan hệ này. Kết quả sau khi học, các chỉ số dự báo với dữ liệu kiểm tra (test set):
- Sai số căn quân phương RMSE = 102.60 m3/s - Chỉ số R2 = 0.7703
(Kết quả dự báo dùng mạng nơ-ron sử dụng phương pháp lan truyền ngược sai số trình bày trong [1]: RMSE = 110.49 m3/s, R2 = 0.7509)
0 200 400 600 800 1000 1200 1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 Mẫu thử L ư u l ượ ng ( m 3 /s) Thực tế Dự báo
Thực tế R2 = 0.7703 0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200 D ự bá o
Hình 3.4 Kết quả dự báo với dữ liệu kiểm tra theo phương án 1 trên đồ thị
scatter
b. Phương án 2
Theo các nghiên cứu thuỷ văn, dữ liệu về mưa trên lưu vực cũng ảnh hưởng rất lớn đến lưu lượng nước trong tương lai. Việc dự báo cần cả thông số về lượng mưa tại thời điểm hiện tại và lượng mưa trong quá khứ (do ảnh hưởng đến trữ lượng nước ngầm). Trong phương án này, dự báo lưu lượng nước tương lai trước 10 ngày Q(t+10) không những chỉ dựa vào các lưu lượng nước quá khứ và hiện tại
(Q t Q t( ), ( 10), (− Q t−20)) như phương án 1 mà còn phụ thuộc vào lượng mưa trong quá khứ và hiện tại tại lưu vực đó (X t X t( ), ( −10), (X t−20)).
Q t( +10)= f Q t Q t( ( ), ( −10), (Q t−20), ( ), (X t X t−10), (X t−20)) (3.7) Chúng tôi đã tiến hành cho mạng nơ-ron học mối quan hệ này và cho kết quả dự
báo chính xác hơn phương án 1.
Kết quả với dữ liệu kiểm tra:
- Sai số căn quân phương RMSE = 99.76 m3/s - Chỉ số R2 = 0.7902
(Kết quả dự báo dùng mạng nơ-ron sử dụng phương pháp lan truyền ngược sai số trình bày trong [1]: RMSE = 103.22 m3/s, R2 = 0.7866)
0 200 400 600 800 1000 1200 1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 Mẫu thử L ư u l ượ ng ( m 3 /s) Thực tế Dự báo
Hình 3.5 Kết quả dự báo với dữ liệu kiểm tra theo phương án 2
Thực tế R2 = 0.7902 0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200 D ự bá o
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
c. Phương án 3
Chúng tôi nhận thấy ngoài các yếu tố nhưđã nêu trong phương án 2, lưu lượng nước trong 10 ngày tới còn phụ thuộc vào lưu lượng nước của ngày hiện tại Qng(t) và lượng mưa tại ngày hiện tại Xng(t) (khác với Q(t) và X(t) là giá trị lưu lượng và lượng mưa trung bình trong 10 ngày). Do đó:
Kết quả với dữ liệu kiểm tra:
- Sai số căn quân phương RMSE = 72.28 m3/s - Chỉ số R2 = 0.8742
(Kết quả dự báo dùng mạng nơ-ron sử dụng phương pháp lan truyền ngược sai số trình bày trong [1]: RMSE = 76.10 m3/s, R2 = 0.8737)
(Toàn bộ số liệu học và kiểm tra được trình bày trong phụ lục C)
0 200 400 600 800 1000 1200 1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 Mẫu thử L ư u l ượ ng ( m 3/s) Thực tế Dự báo
Hình 3.7 Kết quả dự báo với dữ liệu kiểm tra theo phương án 3
Thực tế R2 = 0.8742 0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200 D ự bá o
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ị
Độ chính xác của phương án dự báo này cao hơn nhiều so với hai phương án trên chứng tỏ nhận xét trên là đúng. Lưu lượng nước của ngày hiện tại Qng(t) và lượng mưa tại ngày hiện tại Xng(t) ảnh hưởng rất nhiều đến lưu lượng nước trong 10 ngày tới.
Kết luận chương
Chương chương này chúng ta đã ứng dụng mạng nơ-ron nhân tạo vào việc dự
báo dòng chảy đến hồ Hoà Bình trước 10 ngày. Thuật toán học của mạng nơ-ron
được sử dụng đó là sự kết hợp giữa giải thuật di truyền cải tiến và giải thuật lan truyền ngược sai số như đã đề cập trong chương 2. Việc thử nghiệm dự báo được tiến hành với ba phương án. Trong các phương án thử nghiệm với giải thuật học kết hợp luôn cho kết quả tốt hơn so với phương pháp học chỉ sử dụng giải thuật lan truyền ngược sai số mà chúng tôi đã thử nghiệm trong [1]. Trong đó, phương án thử
nghiệm thứ 3 cho kết quả tốt nhất: chỉ số đạt R2 = 0.8742. Đối với dự báo trước 10 ngày đây là một kết quả khả quan.
K
KẾTẾT LLUUẬNẬN
Luận văn định hướng nội dung nghiên cứu vào mạng neuron nhân tạo, thuật toán gene, mô hình kết hợp giữa phương pháp học máy mạng neuron với thuật toán gene,
đề xuất cải tiến 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.
Các đóng góp khoa học của luận văn
1. Hệ thống hóa các nội dung cơ bản về mạng neuron nhân tạo và thuật toán gene.
2. Nghiên cứu các phương pháp kết hợp giải thuật di truyền với giải thuật lan truyền ngược sai số nhằm đạt tới một kết quả trọn vẹn của bài toán tối ưu trọng số mạng nơ-ron nhân tạo.
3. Trong mô hình kết hợp giải thuật di truyền với giải thuật lan truyền ngược sai số, luận văn đã đề xuất cải tiến việc kết hợp giữa đột biến BIASED và
đột biến UNBIASED (với xác suất đột biến rất nhỏ) để tránh những trường hợp mạng rơi vào cực tiểu cục bộ. Kết quả thử nghiệm được tiến hành với bài toán XOR cho thấy rằng cải tiến này là hiệu quả.
4. Xây dựng phần mềm dự báo lưu lượng nước về hồ Hòa Bình triển khai phương pháp kết hợp mạng neuron với thuật toán gene với cải tiến nói trên. Kết quả thực nghiệm dự báo lưu lượng đến hồ Hoà Bình trước 10 ngày có chỉ số R2 đạt 0.8742, sai số RMSE = 72.28 m3/s. Đây là một kết quả cao trong dự báo dòng chảy trước 10 ngày.
Nội dung nghiên cứu của luận văn đã được công bố trong một báo cáo khoa học tại Hội nghị 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 tại Đại Lải vào tháng 9/2007 [2].
Hướng phát triển
Những kết quả nghiên cứu khả quan vềứng dụng mạng nơ-ron nhân tạo với hai thuật toán học là lan truyền ngược sai số và giải thuật di truyền trong bài toán dự báo lưu lượng nước đến hồ Hoà Bình đã chứng tỏ rằng đây là một mô hình có thể ứng dụng hiệu quả đối với bài toán này. Tuy nhiên, một câu hỏi đặt ra là: Liệu các phương pháp học máy khác như Support Vector Machine (SVM), Decision Tree... có thu được những kết quả tốt hơn hay không? Đã có nhiều nghiên cứu trên thế giới thành công khi sử dụng các phương pháp này trong bài toán dự báo chuỗi thời gian. Vì vậy, một trong những hướng phát triển tiếp theo của đề tài là nghiên cứu, cải tiến và thử nghiệm các phương pháp học máy tiên tiến khác để có thể nâng cao được kết quả dự báo và thời gian dự báo.
Tuy nhiên, chúng tôi cũng nhận ra rằng, sựđầy đủ hay không của tập số liệu đầu vào ảnh hưởng rất lớn đến kết quả dự báo. Ví dụ, trong dự báo thuỷ văn dài hạn, những yếu tố như đặc điểm khí hậu, hình thái thời tiết... ảnh hưởng rất lớn đến độ
chính xác và thời gian dự báo. Vì thế, đồng hành với hướng phát triển trên, chúng tôi sẽ tiến hành thu thập số liệu khí tượng trên lưu vực này để thử nghiệm và đánh giá kết quả dự báo.
T
TÀÀI I LLIIỆỆUU TTHHAMAM KKHHẢOẢO
[1]. Lê Văn Nghinh, Bùi Công Quang, Hoàng Thanh Tùng (2006), Mô hình toán thuỷ văn, Nhà xuất bản xây dựng.
[2]. Phạm Thị Hoàng Nhung, Hà Quang Thụy (2007), Nghiên cứu, sử dụng mạng nơ-ron nhân tạo trong dự báo lưu lượng nước đến hồ Hoà Bình trước 10 ngày, Hội thảo 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, Đại Lải, Vĩnh Phúc, 9/2007.
[3]. Viện Khí tượng Thủy văn. Danh sách các đề tài, dự án nghiên cứu khoa học công nghệ. http://www.imh.ac.vn/c_tt_chuyen_nganh/ce_detai_duan/.
[4]. Thomas Back (1996), Evolutionary Algorithm in Theory and Practice, Oxford University Press.
[5]. Ibrahim Can, Cahit Yerdelen, Ercan Kahya1 (2007), Stochastic modeling of Karasu River (Turkey) using the methods of Artificial Neural Networks,
Proceeding of the AGU Hydrology Days 2007, March 19 - March 21, 2007, Colorado State University, Fort Collins, Colorado, USA, 138-144.
[6]. Paulin Coulibaly, Francois Anctil, and Bernard Bobee (2001), Multivariate
Reservoir Inflow Forecasting Using Temporal Neural Networks, Journal of
Hydrologic Engineering, 6(5), 367-376.
[7]. Oscar R. Dolling, Eduardo A. Varas (2002), Artificial neural networks for
stream flow prediction, Journal of Hydraaulic research, 40(5), 547-554.
[8]. D.E. Goldberg (1989), Genetic Algorithm in Search, Optimization and
Machine Learning, Addison Wesley, Reading, MA.
[9]. J. Hertz, A. Krogh, and R.G. Palmer. (1991), Introduction to the Theory of
Neural Computation, New York: Addison-Wesley.
[10]. Ismail Kilinş, Kerem Ciğizouğlu (2005), Reservoir Management Using
Artificial Neural Networks, 14th. Reg. Directorate of DSI (State Hydraulic
Works), Istanbul, Turkey.
[11]. Steve Lawrence and C. Lee Giles (2000), Overfitting and Neural Networks:
Conjugate Gradient and Backpropagation, International Joint onference on
Neural Networks, Como, Italy, July 24–27, 114–119, 2000.
[12]. D.R. Legates, G.J. McCabe Jr. (1998), Evaluating the Use of "Goodness-of-
Fit" Measures in Hydrologic and Hydroclimatic Model Validation; Water
Resour. Res. 1998WR900018, 35(1): 233.
[13]. Demetris F. Lekkas (2002), Development and Comparison of Data-Based
Flow Forecasting Methods, PhD Thesis, Department of Civil and
Environmental Engineering, Imperial College of Science, Technology and Medicine, London.
[14]. Lekkas D.F., Onof C (2005), Improved flow forecasting using artificial
neural networks, 9th International Conference on Environmental and
[15]. Chin-Teng Lin, C.S. George Lee (1996), Neural fuzzy systems: a neuro- fuzzy synergism to intelligent systems, Prentice-Hall Inc.
[16]. D. Montana and L. Davis (1989), Training feedforward neural networks
using genetic algorithms, In Proceedings of the Eleventh International Joint
Conference on Artificial Intelligence, 762-767, Morgan Kaufmann, San Mateo, CA.
[17]. Nelson, M.C. and Illingworth, W.T. (1991), A Practical Guide to Neural
Nets, Reading, MA: Addison-Wesley.
[18]. L.Wessels, E.Barnard (1992), Avoiding False Local Minima by Proper
Initialization of Connections, IEEE Trans. on Neural Networks.
[19]. Cristiane Medina Finzi Quintao, Walmir Matos Caminhas, Selenio Rocha Silva, Bruno Rabelo Versiani (2004), Neo Fuzzy Neuron and its
applications to Prediction flood and wind in Brazil, Workshop on
Modelling and Control for Participatory Planning and Managing Water Systems, September 29-October 1, 2004 (Poster), Venice, Italia.
[20]. D.E. Rumelhart; G.E. Hinton and R.J. Williams (1986), Learning internal representations by error propagation, Rumelhart, D.E. et al. (eds.): Parallel distributed processing: Explorations in the microstructure of cognition (Cambridge MA.: MIT Press), 318-362.
[21]. D. Whitley, T. Starkweather et C. Bogart (1990), Genetic algorithms and
neural networks: optimizing connections and connectivity, in: Parallel
P
PHHỤỤ LLỤỤC C
Phụ lục A - Giới thiệu về phần mềm dự báo 1. Cấu trúc file dữ liệu học và kiểm tra
Các file dữ liệu học có phần mở rộng là pat, các file dữ liệu kiểm tra là tst. Hai loại file này được lưu dưới dạng text, có cấu trúc như hình dưới. Trong đó dòng đầu tiên là 3 tham số của dữ liệu theo thứ tự:
- Sốđầu tiên là số lượng mẫu học (p) - Số thứ hai là sốđầu vào của mạng (i) - Số thứ ba là sốđầu ra của mạng (o)
Các dòng tiếp theo là các số liệu học, trên mỗi dòng có i số liệu đầu vào và o số