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

  • Số trang: 94 |
  • Loại file: PDF |
  • Lượt xem: 15 |
  • Lượt tải: 0
nhattuvisu

Đã đăng 26946 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI 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Ü HÀ NỘI - 2007 ĐẠI HỌC QUỐC GIA HÀ NỘI 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 Ngµnh: C«ng nghÖ th«ng tin 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À NỘI - 2007 4 Mục lục Lời cảm ơn .......................................................................................................... 3 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.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 3.2.2 Dựa trên mô hình toán ............................................................... 65 3.2.3 Hướng tiếp cận mới ................................................................... 66 3.3 Một số chỉ tiêu đánh giá kết quả dự báo ................................................ 66 3.4 Dự báo lưu lượng đến hồ Hoà Bình trước 10 ngày ................................ 67 3.4.1 Phần mềm xây dựng .................................................................. 67 3.4.2 Số liệu sử dụng .......................................................................... 68 3.4.3 Các tham số ............................................................................... 69 3.4.4 Các phương án dự báo ............................................................... 69 Kết luận chương ......................................................................................... 74 KẾT LUẬN ....................................................................................................... 75 6 TÀI LIỆU THAM KHẢO ................................................................................ 77 PHỤ LỤC .......................................................................................................... 79 Phụ lục A - Giới thiệu về phần mềm dự báo ............................................... 79 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 ............................................................................................................ 84 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......................................................................................... 85 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 .................................. 40 Hình 2.3 Mã hoá nhị phân trọng số theo phương pháp GENITOR .......................... 42 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ố............. 53 Hình 3.1. Bản đồ phân bố các trạm trên sông Đà (dấu chấm đỏ) ............................. 60 Hình 3.2 Mô hình dự báo dựa trên công nghệ học máy ........................................... 66 Hình 3.3 Giao diện chính của phần mềm thử nghiệm ............................................. 68 Hình 3.3 Kết quả dự báo với dữ liệu kiểm tra theo phương án 1 ............................. 70 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 . 71 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 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.05 ................... 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 .............. 51 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 ....................................................................... 52 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 ........................................................... 62 Bảng 3.2 Thống kê số liệu lưu lượng thu thập được ................................................... 63 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 bốn đề 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 sử dụng mạng nơ-ron nhân tạo và kết hợp với giải thuật di truyền) 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]. 11 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ở 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ố 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 trong đó 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 12 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. 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à 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 truyền tới các nơ-ron khác. Hình 1.1 Cấu tạo của tế bào nơ-ron sinh học Với mục đích tạo ra một mô hình tính toán phỏng theo cách làm việc của nơ-ron trong bộ não con người, vào năm 1943, các tác giả McCulloch và Pitts [15] đã đề xuất một mô hình toán cho một nơ-ron như sau: w1 x 1 x . i2. 2 x m .  w  i wm Hình 1.2 Mô hình nơ-ron nhân tạo Trong mô hình này, một nơ-ron sẽ nhận các tín hiệu vào xi với các trọng số tương ứng là wi , tổng các thông tin vào có trọng số là m w x j 1 ij j Thông tin đầu ra ở thời điểm t+1 được tính từ các thông tin đầu vào như sau:   out (t  1)  g   wij x j (t )  i    (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 1 g( f )   0 Nếu f > 0 Nếu f  0 (1.2) 15 Như vậy, out = 1 (ứng với việc nơ-ron tạo tín đầu ra) khi tổng các tín hiệu vào lớn hơn ngưỡng i , còn out = 0 (nơ-ron không tạo tín hiệu ở đầu ra) khi tổng các tín hiệu vào nhỏ hơn ngưỡng i. Trong mô hình nơ-ron của McCulloch và Pitts, các trọng số wij 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 wij 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 đó . Một nơ-ron thứ i trong mạng thường có hàm f i ở dạng tuyến tính như sau : m fi  neti   wij x j  i (1.3) j 1 Thao tác thứ hai trong mỗi nơ-ron là tính giá trị đầu ra tương ứng với giá trị đầu vào f thông qua hàm kích hoạt hay còn gọi là hàm chuyển g(f) (hàm kích hoạt). Một số hàm chuyển thường được sử dụng:  Hàm bước nhảy 16 1  g( f )   0  khi f 0 khi f 0 (1.4)  Hàm dấu  1  g ( f )  sgn( f )    1  khi khi f 0 f 0 (1.5)  Hàm sigmoid g( f )  1 1  e  f g( f )  hoặc 2 1 1  e  f (1.6) b. 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 định bởi cách liê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 x y 1 1 x 2 x . . . y 2 y m n Hình 1.4 Mạng nơ-ron truyền thẳng một lớp (Single-layer feedforward network) 17 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 vào không có vai trò 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. y x 1 1 x y . . . 2 x m Lớp vào . . . . . . . . . Các lớp ẩn Lớp ra 2 y n 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), nó thường không thực hiện việc chuyển đổi thông tin mà chỉ làm chức năng nhận tín hiệu. Tín 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 có chu trình khép khín gọi là mạng hồi quy (recurrent network) x y 1 1 x 2 x . . . y 2 y m n 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 learning). Học tham số là việc thay đổi trọng số của các liên kết giữa các nơ-ron trong một mạng, còn học cấu trúc là việc điều chỉnh cấu trúc của mạng bao gồm thay đổi số lớp nơ-ron, số nơ-ron của mỗi lớp và cách liên kết giữa chúng. Hai vấn đề này có thể được thực hiện đồng thời hoặc tách biệt. Về mặt phương pháp học, có thể chia ra làm ba loại: học có giám sát hay còn gọi là học có thầy (supervised learning), học tăng cường (reinforcement learning) và học không có giám sát hay còn gọi là học không có thầy ( unsupperviced learning). 1.1.3 Khả năng ứng dụng của mạng nơ-ron nhân tạo Đặc trưng của mạng nơ-ron nhân tạo là khả năng học và xử lý song song. Nó có thể gần đúng mối quan hệ tương quan phức tạp giữa các yếu tố đầu vào và đầu ra của các quá trình cần nghiên cứu và khi đã học được thì việc kiểm tra độc lập thường cho kết quả tốt. Sau khi đã học xong, mạng nơ-ron nhân tạo có thể tính toán kết quả đầu ra tương ứng với bộ số liệu đầu vào mới. Về mặt cấu trúc, mạng nơ-ron nhân tạo là một hệ thống gồm nhiều phần tử xử lý đơn giản cùng hoạt động song song. Tính năng này của ANN cho phép nó có thể được áp dụng để giải các bài toán lớn. Về khía cạnh toán học, theo định lý Kolmogorov, một hàm liên tục bất kỳ f(x1, x2,.. , xn ) xác định trên khoảng In ( với I =[0,1]) có thể được biểu diễn dưới dạng: 2 n 1 n j 1 i 1 f ( x)    j ( ij ( xi )) (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. 19 Hồi qui tuyến tính Y = a1 X + a 2 Xấp xỉ bằng mạng nơron Y=f(X, a1, …. , an) Hình 1.7 Sự khác nhau giữa hồi quy tuyến tính và mạng nơ-ron Với những đặc điểm đó, mạng nơron nhân tạo đã được sử dụng để giải quyết nhiều bài toán thuộc nhiều lĩnh vực của các ngành khác nhau. Các nhóm ứng dụng mà mạng nơ-ron nhân tạo đã được áp dụng rất có hiệu quả là:  Bài toán phân lớp: Loại bài toán này đòi hỏi giải quyết vấn đề phân loại các đối tượng quan sát được thành các nhóm dựa trên các đặc điểm của các nhóm đối tượng đó. Đây là dạng bài toán cơ sở của rất nhiều bài toán trong thực tế: nhận dạng chữ viết, tiếng nói, phân loại gen, phân loại chất lượng sản phẩm,…  Bài toán dự báo: Mạng nơ-ron nhân tạo đã được ứng dụng thành công trong việc xây dựng các mô hình dự báo sử dụng tập dữ liệu trong quá khứ để dự đoán số liệu trong tương lai. Đây là nhóm bài toán khó và rất quan trọng trong nhiều ngành khoa học.  Bài toán điều khiển và tối ưu hoá: Nhờ khả năng học và xấp xỉ hàm mà 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. Outi = 1 nếu neti   0 nếu neti <  với neti = wijxj là tổng thông tin đầu vào của nơ-ron i 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 : w x ij j  i Trong đó wij là trọng số liên kết từ nơ-ron j tới nơ-ron i , xj là đầu vào từ nơ-ron j, và  là ngưỡng của nơ-ron i. Trong trường hợp trái lại đối tượng sẽ được phân vào lớp B. Việc huấn luyện mạng dựa trên phương pháp học có giám sát với tập mẫu học là {(x , d(k))}, k= 1,2, …, p .Trong đó d(k) = [d1(k), d2(k), …, dn(k)]T là đầu ra quan sát được tương ứng với đầu vào x(k) = [x1(k), x2(k), …, xm(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) = [y1(k), y2(k), …, yn(k)]T sẽ bằng với đầu ra của mẫu học d(k) (k) m yi( k )  g ( wiT x ( k ) )  g ( wij x (jk ) )  di( k ) với i=1, 2, …, n ; k = 1,2 , …, p (1.8) j 1 Đầu ra mong muốn Đầu ra tính toán w11 x1 y1 d e y2 w12 e2 x2 wn1 w1m xm =-1 wn2 wnm . . . yn . . . d e n ` 1 d2 1 (w1m = 1 , w2m = 2 , wnm = n ) Hình 1.8 Mạng perceptron một lớp n 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) và d(k) Các bước tiến hành :  Xác định ngẫu nhiên bộ trọng số.  Với mỗi mẫu học (x(k), d(k)) , k=1,2, …, p thực hiện các bước: o Tính giá trị y(k) theo công thức o Xác định sai số i tại nơ-ron i: i = di – yi , trong đó di là giá trị đầu ra quan sát được và yi là giá trị đầu ra tính toán tại nơ-ron thứ i o Tính wij là số gia của trọng số wij (trọng số liên kết giữa đầu vào j tới nơ-ron i) theo công thức: wij =ixj trong đó  là tốc độ học (0<<1) o Hiệu chỉnh wij(t+1) = wij(t) + wij =wij(t) +i(t)xj(t) trong đó wij(t+1) là trọng số sau khi điều chỉnh ở lần học tại thời điểm t Rosenblatt đã chứng minh rằng quá trình học của mạng Perceptron sẽ hội tụ tới bộ trọng số W, biểu diễn đúng các mẫu học với điều kiện là các mẫu này biểu thị các điểm rời rạc của một hàm khả tách tuyến tính nào đó (f: Rn  R được gọi là khả tách tuyến tính nếu các tập {F-1(xk)}, với xk thuộc miền trị của f, có thể tách được với nhau bởi các siêu phẳng trong không gian Rn ). Năm 1969, Minsky và Papert đã chứng minh một cách chặt chẽ rằng lớp hàm thể hiện sự phụ thuộc giữa đầu vào và đầu ra có thể học bởi mạng Perceptron một lớp là lớp hàm khả tách tuyến tính. Khả tách tuyến tính là trường hợp tồn tại một mặt siêu phẳng để phân cách tất cả các đối tượng của một lớp này với một lớp khác, ví dụ mộ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 n w x i 1 ij j  i 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).
- Xem thêm -