Đề tài Dùng mạng nơron và thuật toán giải di truyền để phân lớp dữ liệu

Dựbáo thuỷvănlà 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ự báo theo thời gian là một phân loại điển hình với các loại dựbáo là ngắn hạn, trung hạn, dài hạn và siêu dài hạn. Dựbáo ngắn hạn với khoảng thời gian dựbáo từmột đến ba ngày. Dựbáo trung hạn với khoảng thời gian dựbáo dài hơn dựbáo ngắn hạn nhưng tối đa không quá mười ngày. Dựbáo dài hạn có khoảng thời gian dựbáo từhơn mười ngày đến một năm. Khi thời gian dựbáo lớn hơn một năm đó là dựbáo siêu dài hạn. Thuỷvăn là một quá trình tựnhiên phức tạp, chịu tác động của rất nhiều yếu tố. Tính biến động của các yếu tốnày phụthuộc vào cảkhông gian và thời gian nên gây khó khăn rất lớn cho quá trình dựbáo, tìm ra được mối liên quan giữa các yếu tố. Thêm vào đó, do thiếu các trạm quan trắc cần thiết và thiếu sựkết hợp giữa các ngành liên quan cho nên dữliệu quan trắc thực tếthường là không đầy đủ, không mang tính chất đại diện. Yêu cầu chung mà tất cảcác bài toán dựbảo thủy văn cần phải giải quyết là làm cách nào đểcó thểphân tích và sửdụng chuỗi dữliệu có trong quá khứ đểdự đoán được giá trịtương lai. Hiện nay, có rất nhiều phương pháp dựbáo đã được đưa ra dựa trên mô hình vật lý và mô hình toán học. Trong nhiều trường hợp, kết quảnghiên cứu dựbáo thủy văn theo các mô hình nói trên đã đạt được một sốthành công đáng ghi nhận [1]. Tuy nhiên, vấn đềtìm kiếm phương pháp đủtốt, đáp ứng các yêu cầu thực tế giải quyết bài toán dựbáo thuỷvăn vẫn là nội dung nghiên cứu thời sựhiện nay. Ở trong nước, tại Viện Khí tượng Thủy văn có hàng chục công trình nghiên cứu liên quan tới dựbáo thủy văn, đặc biệt có tới 4 đềtài cấp Nhà nước [3]. Trên thếgiới, việc áp dụng các phương pháp của khai phá dữliệu (đặc biệt là các phương pháp học máy mạng neuron và kết hợp với thuật toán gene) vào dựbáo thủy văn đã trởthành nội dung nghiên cứu dựbáo thủy văn thời sựtrong thời gian gần đây [5-7,12-14, 19].

pdf94 trang | Chia sẻ: vietpd | Lượt xem: 1827 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Đề tài Dùng mạng nơron và thuật toán giải di truyền để phân lớp dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Lời cảm ơn Em xin bày tỏ lòng biết ơn sâu sắc tới GS.TS. Hà Quang Thụy, thày đã hướng dẫn, chỉ dạy tận tình để em hoàn thành luận văn này. Em xin chân thành cảm ơn các thày, cô giáo khoa Công nghệ thông tin - Trường Đại học công nghệ - Đại học Quốc gia Hà nội đã truyền thụ kiến thức cho em trong suốt quá trình học tập vừa qua. Tôi cũng xin cảm ơn cơ quan, bạn bè đồng nghiệp, gia đình và những người thân đã cùng chia sẻ, giúp đỡ, động viên, tạo mọi điều kiện thuận lợi để tôi hoàn thành nhiệm vụ học tập và cuốn luận văn này. Hà nội, ngày 09 tháng 11 năm 2007 Học viên Phạm Thị Hoàng Nhung 4 Mục lục Lời cảm ơn............................................................................................................... i Mục lục .............................................................................................................. 4 Danh sách hình vẽ.................................................................................................. 7 Danh sách bảng biểu ............................................................................................. 9 MỞ ĐẦU ............................................................................................................ 10 CHƯƠNG 1 - MẠNG NƠ-RON NHÂN TẠO TRUYỀN THẲNG NHIỀU LỚP.................................................................................................... 13 1.1 Giới thiệu về mạng nơ-ron nhân tạo.......................................................... 13 1.1.1 Khái niệm cơ bản................................................................................ 13 1.1.2 Mô hình mạng nơ-ron nhân tạo.......................................................... 15 1.1.3 Khả năng ứng dụng của mạng nơ-ron nhân tạo ................................. 18 1.2 Mạng nơ-ron lan truyền thẳng nhiều lớp................................................... 19 1.2.1 Mạng perceptron một lớp ................................................................... 19 1.2.2 Mạng perceptron nhiều lớp ................................................................ 22 1.2.3 Một số vấn đề cần chú ý khi sử dụng mạng MLP.............................. 30 Kết luận chương .............................................................................................. 33 CHƯƠNG 2 - 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 ....................................................... 34 2.1 Giới thiệu giải thuật di truyền ................................................................... 34 2.1.1 Giới thiệu............................................................................................ 34 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.1 Ứ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á .............................................................................. 42 2.2.2 Mã hoá nhiễm sắc thể ......................................................................... 42 2.2.3 Lai ghép .............................................................................................. 43 5 2.2.4 Đột biến .............................................................................................. 44 2.2.5 Thử nghiệm ........................................................................................ 45 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 ...................... 57 3.1 Điều kiện địa lý, tự nhiên, khí tượng thuỷ văn lưu vực sông Đà .............. 57 3.1.1 Vị trí địa lý.......................................................................................... 57 3.1.2 Địa hình .............................................................................................. 58 3.1.3 Điều kiện địa chất............................................................................... 58 3.1.4 Điều kiện thổ nhưỡng......................................................................... 58 3.1.5 Đặc điểm khí hậu................................................................................ 58 3.1.6 Đặc điểm chế độ thuỷ văn .................................................................. 59 3.1.7 Thống kê dữ liệu thu thập được.......................................................... 63 3.2 Các phương pháp dự báo........................................................................... 64 3.2.1 Dựa trên mô hình vật lý...................................................................... 64 3.2.2 Dựa trên mô hình toán........................................................................ 66 3.2.3 Hướng tiếp cận mới ............................................................................ 67 3.3 Một số chỉ tiêu đánh giá kết quả dự báo.................................................... 67 3.4 Dự báo lưu lượng đến hồ Hoà Bình trước 10 ngày................................... 68 3.4.1 Phần mềm xây dựng ........................................................................... 68 3.4.2 Số liệu sử dụng ................................................................................... 69 3.4.3 Các tham số ........................................................................................ 70 3.4.4 Các phương án dự báo........................................................................ 70 Kết luận chương .............................................................................................. 75 KẾT LUẬN .......................................................................................................... 76 6 TÀI LIỆU THAM KHẢO .................................................................................. 78 PHỤ LỤC 80 Phụ lục A - Giới thiệu về phần mềm dự báo................................................... 80 Phụ lục B - Mẫu học thử nghiệm so sánh các phương pháp lai ghép và đột biến............................................................................................................ 85 Phụ lục C - Số liệu học và kiểm tra trong bài toán dự báo lưu lượng nước đến hồ Hoà Bình .............................................................................................. 86 7 Danh sách hình vẽ Hình 1.1 Cấu tạo của tế bào nơ-ron sinh học............................................................. 14 Hình 1.2 Mô hình nơ-ron nhân tạo............................................................................. 14 Hình 1.3 Mạng nơ-ron nhân tạo chỉ có một nút và có sự phản hồi............................ 16 Hình 1.4 Mạng nơ-ron truyền thẳng một lớp............................................................. 16 Hình 1.5 Mạng nơ-ron truyền thẳng nhiều lớp .......................................................... 17 Hình 1.6 Mạng nơ-ron hồi quy một lớp.................................................................... 17 Hình 1.7 Sự khác nhau giữa hồi quy tuyến tính và mạng nơ-ron ............................. 19 Hình 1.8 Mạng perceptron một lớp............................................................................ 20 Hình 1.9 Thực hiện hàm XOR bằng mạng MLP ....................................................... 22 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ố........................................................................................................ 23 Hình 1.11 Sai số E được xét là hàm của trọng số W ................................................. 25 Hình 1.12 Minh họa về ý nghĩa của quán tính trong thực tế..................................... 30 Hình 1.13 Hàm sigmoid g(x) = 1/(1+e-x) .................................................................. 30 Hình 1.14 Nội suy hàm y = sin(x/3) + v, 0≤ x ≤ 20 sử dụng MLP............................ 32 Hình 2.1 Sự sinh sản đơn giản phân bố các chuỗi con cháu nhờ sử dụng bánh xe roulette với các khe hở tỷ lệ với độ thích nghi................................................... 38 Hình 2.2 Lưu đồ thuật toán của giải thuật di truyền đơn giản ................................... 41 Hình 2.3 Mã hoá nhị phân trọng số theo phương pháp GENITOR ........................... 43 Hình 2.4 Ví dụ về phương pháp mã hoá trọng số bằng số thực................................. 43 Hình 2.5 Lai ghép nút (crossover-nodes)................................................................... 44 Hình 2.6 Kết hợp giải thuật di truyền và giải thuật lan truyền ngược sai số ............. 54 Hình 3.1: Bản đồ phân bố các trạm trên sông Đà ...................................................... 61 Hình 3.2 Mô hình dự báo dựa trên công nghệ học máy............................................. 67 Hình 3.3 Giao diện chính của phần mềm thử nghiệm ............................................... 69 Hình 3.3 Kết quả dự báo với dữ liệu kiểm tra theo phương án 1 .............................. 71 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.. 72 Hình 3.5 Kết quả dự báo với dữ liệu kiểm tra theo phương án 2 .............................. 73 8 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.. 73 Hình 3.7 Kết quả dự báo với dữ liệu kiểm tra theo phương án 3 .............................. 74 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.. 74 9 Danh sách bảng biểu Bảng 2.1 Các chuỗi của bài toán mẫu và các giá trị thích nghi.....................................38 Bảng 2.2 So sánh các phương pháp đột biến.................................................................45 Bảng 2.3 So sánh các phương pháp lai ghép.................................................................46 Bảng 2.4 Kết quả thử nghiệm so sánh GA và BP với ngưỡng sai số 0.0005................48 Bảng 2.5 Kết quả thử nghiệm với giải thuật đề xuất .....................................................50 Bảng 2.6 Kết quả thử nghiệm so sánh GA’ và BP với ngưỡng sai số 0.0005 ..............52 Bảng 2.7 So sánh khả năng hội tụ của mạng khi sử dụng hai phương pháp học GA’ và BP với sai số dừng lặp khác nhau..........................................................................53 Bảng 2.8 Kết quả thử nghiệm giải thuật kết hợp GA’ và BP với ngưỡng sai sô 0.0005 ...............................................................................................................................54 Bảng 3.1 Thống kê số liệu mưa thu thập được..............................................................63 Bảng 3.2 Thống kê số liệu lưu lượng thu thập được .....................................................64 10 MỞ ĐẦ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ự báo theo thời gian là một phân loại điển hình với các loại dự báo là ngắn hạn, trung hạn, dài hạn và siêu dài hạn. Dự báo ngắn hạn với khoảng thời gian dự báo từ một đến ba ngày. Dự báo trung hạn với khoảng thời gian dự báo dài hơn dự báo ngắn hạn nhưng tối đa không quá mười ngày. Dự báo dài hạn có khoảng thời gian dự báo từ hơn mười ngày đến một năm. Khi thời gian dự báo lớn hơn một năm đó là dự báo siêu dài hạn. Thuỷ văn là một quá trình tự nhiên phức tạp, chịu tác động của rất nhiều yếu tố. Tính biến động của các yếu tố này phụ thuộc vào cả không gian và thời gian nên gây khó khăn rất lớn cho quá trình dự báo, tìm ra được mối liên quan giữa các yếu tố. Thêm vào đó, do thiếu các trạm quan trắc cần thiết và thiếu sự kết hợp giữa các ngành liên quan cho nên dữ liệu quan trắc thực tế thường là không đầy đủ, không mang tính chất đại diện. Yêu cầu chung mà tất cả các bài toán dự bảo thủy văn cần phải giải quyết là làm cách nào để có thể phân tích và sử dụng chuỗi dữ liệu có trong quá khứ để dự đoán được giá trị tương lai. Hiện nay, có rất nhiều phương pháp dự báo đã được đưa ra dựa trên mô hình vật lý và mô hình toán học. Trong nhiều trường hợp, kết quả nghiên cứu dự báo thủy văn theo các mô hình nói trên đã đạt được một số thành công đáng ghi nhận [1]. Tuy nhiên, vấn đề tìm kiếm phương pháp đủ tốt, đáp ứng các yêu cầu thực tế giải quyết bài toán dự báo thuỷ văn vẫn là nội dung nghiên cứu thời sự hiện nay. Ở trong nước, tại Viện Khí tượng Thủy văn có hàng chục công trình nghiên cứu liên quan tới dự báo thủy văn, đặc biệt có tới 4 đề tài cấp Nhà nước [3]. Trên thế giới, việc áp dụng các phương pháp của khai phá dữ liệu (đặc biệt là các phương pháp học máy mạng neuron và kết hợp với thuật toán gene) vào dự báo thủy văn đã trở thành nội dung nghiên cứu dự báo thủy văn thời sự trong thời gian gần đây [5-7,12-14, 19]. Khai phá dữ liệu là một trong những lĩnh vực nghiên cứu của khoa học máy tính hiện nay đang được phát triển rất mạnh mẽ. Nó kết hợp giữa học máy, công nghệ cơ sở 11 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 mạng neuron [5-7,9-20] với thuật toán gene [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ề phương pháp mạng nơron, thuật toán gene 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ố R2 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ố R2 nâng lên 0.8742 (so với 0.8737 [2]), sai số quân phương là 72.28 m3/s (so với 76.10 m3/s [2]). Nội dung chính của luận văn được tổ chức thành 3 chương có nội dung được mô tả như dưới đây. Chương I. Mạng nơ-ron nhân tạo truyền thẳng nhiều lớp. Chương này trình bày những lý thuyết cơ bản về mạng nơ-ron nhân tạo, tập trung nghiên cứu mạng truyền thẳng nhiều lớp. Chương này cung cấp một cách nhìn tổng quát nhất, và những vấn đề về quá trình huấn luyện mạng và thuật toán học của mạng mà tập trung chủ yếu vào thuật toán lan truyền ngược sai số. Chương II. 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. Chương này trình bày về lý thuyết của giải thuật di truyền và khả năng ứng dụng của giải thuật này kết hợp với thuật toán lan truyền ngược sai số nhằm đạt tới một kết quả tốt hơn đối với bài toán tối ưu trọng số mạng nơ-ron nhân tạo. 12 Chương III. Ứ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. Chương này giới thiệu sơ lược về bộ dữ liệu sử dụng, các phương pháp đánh giá kết quả dự báo và tập trung vào thử nghiệm các phương pháp để dự báo lưu lượng nước đến hồ Hoà Bình trước mười ngày, từ đó đánh giá được khả năng ứng dụng các phương pháp học máy đã trình bày trong dự báo chuỗi thời gian, cụ thể là dự báo lưu lượng. Phần kết luận tổng kết những kết quả đã đạt được của luận văn và hướng phát triển nghiên cứu tiếp theo. Phần phụ lục giới thiệu về phần mềm dự báo và hướng dẫn cách thức cơ bản sử dụng phần mềm. 13 CHƯƠNG 1 - MẠNG NƠ-RON NHÂN TẠO TRUYỀN THẲNG NHIỀU LỚP Mạng nơ-ron nhân tạo được coi là một công cụ mạnh để giải quyết các bài toán có tính phi tuyến, phức tạp và đặc biệt trong các trường hợp mà mối quan hệ giữa các quá trình không dễ thiết lập một cách tường minh. Có nhiều loại mạng nơ-ron khác nhau trong đó mạng nơ-ron truyền thẳng nhiều lớp là một trong những mạng nơ-ron thông dụng nhất. Đã có nhiều nghiên cứu sử dụng mạng nơ-ron truyền thẳng nhiều lớp trong bài toán dự báo [5][7], [10], [14] và đã chứng tỏ đây là hướng tiếp cận rất hiệu quả. Trong chương này chúng ta sẽ tìm hiểu những kiến thức về mạng nơ-ron nhân tạo, mạng nơ-ron truyền thẳng nhiều lớp và khả năng ứng dụng của chúng trong bài toán dự báo. 1.1 Giới thiệu về mạng nơ-ron nhân tạo 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 mm2 • Đầ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 104 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à