Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 95 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
95
Dung lượng
1,67 MB
Nội dung
ĐỀ ÁN Đề tài " Mạng nơ-ron nhân tạo truyền thẳng nhiều lớp " L L ờ ờ i i c c ả ả m m ơ ơ n 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 M ụ ụ c c l l ụ ụ c 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 D D a a n n h h s s á á c c h h h h ì ì n n h h v 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 D D a a n n h h s s á á c c h h b b ả ả n n g g b b i i ể ể u 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 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ự 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ố 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 /s (so với 76.10 m 3 /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. [...]... xử lý, do đó ta nói mạng chỉ có một lớp) Loại mạng này còn được gọi là mạng perceptron một lớp Mỗi nơ-ron đầu ra có thể nhận tín hiệu từ các đầu vào x1, x2, …, xm để tạo ra tín hiệu đầu ra tương ứng Lớp vào Các lớp ẩn Lớp ra Hình 1.5 Mạng nơ-ron truyền thẳng nhiều lớp (Multil-layer feedforward network) Trong mạng nơ-ron truyền thẳng nhiều lớp, lớp nhận tín hiệu vào của mạng gọi là lớp vào (input layer),... 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... kết giữa các nơ-ron , trọng số của các liên kết đó và hàm chuyển tại mỗi nơ-ron Các hình vẽ dưới đây thể hiện các cách kết nối khác nhau 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 Hình 1.4 Mạng nơ-ron truyền thẳng một lớp 17 (Single-layer feedforward network) Mạng nơ-ron truyền thẳng một lớp là loại mạng chỉ có lớp nơ-ron đầu vào và một lớp nơ-ron đầu ra (thực chất lớp nơ-ron đầu... 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 đó,... 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à... hoặc của lớp trước đó Mạng feedback có chu trình khép khín gọi là mạng quy hồi (recurrent network) Hình 1.6 Mạng nơ-ron hồi quy một lớp 18 c Các luật học của mạng nơ-ron nhân tạo Như đã được đề cập ở phần đầu luật học là một trong ba yếu tố quan trọng tạo nên một mạng nơ-ron nhân tạo Có hai vấn đề cần học đối với mỗi mạng nơ-ron nhân tạo đó là học tham số (parameter learning) và học cấu trúc (structure... Liên kết trong mạng nơ-ron nhân tạo Mạng nơ-ron nhân tạo gồm các nơ-ron và liên kết có trọng số giữa chúng ANN tạo nên một hệ thống xử lý thông tin làm việc trên cơ sở phỏng theo cách làm việc của hệ thống các nơ-ron trong bộ não con người Tuy nhiên, trong bộ não của con người, các tế bào nơ-ron liên kết với nhau chằng chịt và tạo nên một mạng lưới vô cùng phức tạp Các loại mạng nơ-ron nhân tạo được xác... hiệu ra của mạng được đưa ra từ lớp ra (output layer) Các lớp ở giữa lớp vào và lớp ra gọi là các lớp ẩn Trong mạng truyền thẳng (feedforward network) không có nút nào mà đầu ra của nó là đầu vào của một nút khác trên cùng lớp với nó hoặc lớp trước Mạng có phản hồi (feedback network) là mạng mà đầu ra của một nơ-ron có thể trở thành đầu vào của nơ-ron trên cùng một lớp hoặc của lớp trước đó Mạng feedback... 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... đế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 . - 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. đâ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. Mạng nơ-ron truyền thẳng một lớp 17 (Single-layer feedforward network) Mạng nơ-ron truyền thẳng một lớp là loại mạng chỉ có lớp nơ-ron đầu vào và một lớp nơ-ron đầu ra (thực chất lớp nơ-ron