• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Hadoop的GA-BP網(wǎng)絡在山洪預測中的研究

      2016-09-07 05:51:57孫丹丹
      計算機測量與控制 2016年1期
      關鍵詞:山洪權值遺傳算法

      孫丹丹,寧 芊

      (四川大學 電子信息學院,成都 610065)

      ?

      基于Hadoop的GA-BP網(wǎng)絡在山洪預測中的研究

      孫丹丹,寧芊

      (四川大學 電子信息學院,成都610065)

      研究了山洪災害監(jiān)測預警系統(tǒng)中雨情數(shù)據(jù)的分布式存儲和分布式預測;針對采集到的水文數(shù)據(jù)急劇增長和對預測精度和預報時效的要求不斷提高,分別應用Hadoop分布式文件系統(tǒng)對數(shù)據(jù)進行分布式存儲和 MapReduce框架結合遺傳算法優(yōu)化神經(jīng)網(wǎng)絡的權值和閾值進行分布式預測;采用基于BP神經(jīng)網(wǎng)絡的多因子山洪災害雨量預測模型,結合遺傳算法能夠實現(xiàn)全局優(yōu)化特點來優(yōu)化神經(jīng)網(wǎng)絡的權值和閾值,并在數(shù)據(jù)并行處理過程中,采用了批處理和MapReduce工作流的方式,以誤差和準確率來評估預測模型,解決了神經(jīng)網(wǎng)絡在處理海量數(shù)據(jù)時訓練時間長等問題;實驗表明,該方法可以在不影響準確度的前提下,大大縮短運行時間,提高預測效率。

      Hadoop;Map-Reduce;并行計算;BP神經(jīng)網(wǎng)絡;遺傳算法

      0 引言

      山洪災害預報對于山洪災害防治有著重大的意義[1],隨著對預測精度和預報時效的要求不斷提高,采集到的相關的雨情數(shù)據(jù)資料數(shù)目增多,數(shù)據(jù)量急劇增長;另一方面,數(shù)據(jù)相關性的計算要求越來越高,從而導致傳統(tǒng)數(shù)據(jù)挖掘技術逐漸無法有效地應用于山洪數(shù)據(jù)挖掘。隨著科學技術發(fā)展,分布式技術的出現(xiàn)為更高效地處理海量雨情數(shù)據(jù)提供了可能,分布式技術已逐漸成為數(shù)據(jù)挖掘的重要組成部分。

      結合目前山洪災害預報情況,本文在開源云計算平臺hadoop[2]的基礎上,試驗一種基于MapReduce的遺傳算法優(yōu)化神經(jīng)網(wǎng)絡權值和閾值[3]的并行計算預測方法[4],一方面結合遺傳算法對BP神經(jīng)網(wǎng)絡算法的權值和閾值進行改進,克服BP算法中權值和閾值隨機生成導致訓練結果可能會陷入局部最優(yōu)、學習過程收斂速度慢的缺點;另一方面利用MapReduce并行分布式運行機制,提升預測效率,縮短訓練周期。

      1 Hadoop框架工作機制

      Hadoop[5]是一個由Apache基金會開發(fā)的分布式系統(tǒng)基礎架構,能實現(xiàn)高效的分布式計算和海量存儲,主要由分布式文件系統(tǒng)HDFS(hadoop distributed file system)和MapReduce分布式并行計算架構組成。

      1.1HDFS

      HDFS[5](hadoop distributed file system,分布式文件系統(tǒng))是Hadoop架構中的一個分布式文件管理系統(tǒng),整個Hadoop體系架構主要通過HDFS實現(xiàn)分布式存儲的底層支持。因為HDFS具有高容錯性的特點,所以它可以用來部署在低廉的硬件上。它提供高吞吐率的特性用來訪問應用程序的數(shù)據(jù),適合有海量數(shù)據(jù)集的應用程序。如圖1[5]所示,HDFS采用主從(Master/Slave)結構模型,一個HDFS集群由一個NameNode和若干個DataNode組成,其中NameNode是主節(jié)點,管理與維護文件系統(tǒng)的命名空間和調(diào)節(jié)控制客戶端對文件的訪問操作,DataNode是從節(jié)點,管理真實文件數(shù)據(jù)的存儲。

      圖1 HDFS體系結構圖

      1.2MapReduce

      MapReduce[5]是一種并行編程模型,用于海量數(shù)據(jù)集的并行計算,基于它可以將任務分發(fā)到集群上,并以一種可靠容錯的方式實現(xiàn)Hadoop的并行任務處理功能。MapReduce框架由一個JobTracker和多個TaskTracker組成,JobTracker運行在主節(jié)點,負責調(diào)度構成作業(yè)的所有任務并監(jiān)控它們的執(zhí)行情況,TaskTracker運行在每個從節(jié)點,負責執(zhí)行由主節(jié)點指派的任務。

      MapReduce模型主要有Map和Reducer兩個函數(shù)。Map主要負責對數(shù)據(jù)的分析處理,最終轉化為Key-Value的數(shù)據(jù)結構;Reduce端主要是獲取Map出來的結果,對結果進行統(tǒng)計。如圖2[5]所示,MapReduce將輸入的大規(guī)模數(shù)據(jù)集切分為若干數(shù)據(jù)塊,由Map函數(shù)以完全并行的方式處理它們并生成中間結果,這些中間結果經(jīng)過合并形成最終結果。通常,分布式文件系統(tǒng)與MapReduce框架的計算節(jié)點和存儲節(jié)點在一起,這樣可以使整個集群的網(wǎng)絡帶寬得到高效利用,允許框架在已經(jīng)存有數(shù)據(jù)的節(jié)點上高效地調(diào)度任務。

      2 基于hadoop的遺傳算法優(yōu)化神經(jīng)網(wǎng)絡權值及閾值

      本文中結合樣本數(shù)據(jù)特征,對基于hadoop的遺傳算法優(yōu)化神經(jīng)網(wǎng)絡權值及閾值,在前人基礎上[4]做了一些有效改進:1)將數(shù)據(jù)預處理、樣本訓練與驗證、測試改進為線性組合式MapReduce作業(yè)流;2)將降雨數(shù)據(jù)集分到多個Map端并行處理;3)在對樣本訓練時采用批處理[9]的方式,即網(wǎng)絡的權值和閾值的更新是在本地所有的樣本處理完之后進行的,這樣網(wǎng)絡的誤差是所有樣本的誤差和,可以獲得更精確的梯度,而且這種處理方式與樣本的輸入順序無關,可以更有利于數(shù)據(jù)的并行計算。實驗結果表明,此方法在效率和精度上都有所提高。

      整個過程分為3個階段:1)數(shù)據(jù)準備階段。對獲取的降雨數(shù)據(jù)進行預處理,定義訓練集、驗證集和測試集。2)數(shù)據(jù)訓練階段。利用遺傳算法優(yōu)化神經(jīng)網(wǎng)絡的初始權值和閾值,得到最優(yōu)后再利用神經(jīng)網(wǎng)絡算法進行訓練。3)用訓練后的權值和閾值進行驗證,評估是否滿足精度要求,若滿足則訓練結束,不滿足則繼續(xù)進行尋優(yōu)訓練。

      2.1數(shù)據(jù)預處理

      由于時間跨度大,采集到的山洪災害發(fā)生前的累計降雨量數(shù)據(jù)差異較大,因此要先對降雨樣本數(shù)據(jù)進行預處理。為了提高運行效率,本文中采用單獨的一個MapReduce任務完成對數(shù)據(jù)的歸一化操作,采用最大最小值法。歸一化公式為:

      (1)

      公式(1)中x表示某雨量數(shù)據(jù),xmax表示樣本數(shù)據(jù)中的最大值,xmin表示樣本數(shù)據(jù)的最小值,x′表示經(jīng)歸一化處理后某雨量數(shù)據(jù)。結果在輸出之前經(jīng)由反歸一化公式處理后得出預測的雨量數(shù)據(jù)。

      將歸一化后的所有樣本數(shù)據(jù)按60%、20%、20%比例輸出到3個文件中,分別做為訓練樣本,驗證樣本,測試樣本數(shù)據(jù)使用。

      2.2基于hadoop的遺傳算法優(yōu)化神經(jīng)網(wǎng)絡權值及閾值

      如圖3所示,本文中遺傳算法優(yōu)化神經(jīng)網(wǎng)絡的權值及閾值基本流程如圖3所示。

      由圖3可知,本文的總體思想是讓map端負責所在節(jié)點上本地數(shù)據(jù)的遺傳算法優(yōu)化及神經(jīng)網(wǎng)絡訓練,具體步驟為:

      先通過遺傳算法對網(wǎng)絡的權值及閾值全局尋優(yōu),經(jīng)過一定次數(shù)后用BP神經(jīng)網(wǎng)絡訓練,達到訓練精度或迭代次數(shù)后,輸出本地最優(yōu)神經(jīng)網(wǎng)絡權值及閾值,reduce端負責收集各個map端輸出的最優(yōu)權值和閾值,然后對這些權值和閾值求平均值,作為全局新的神經(jīng)網(wǎng)絡權值和閾值,然后將更新后的權值和閾值代入驗證樣本中進行測試,如果測試精度滿足條件或迭代次數(shù)達到后則結束,否則將進入下一次的mapreduce任務繼續(xù)進行遺傳算法尋優(yōu)和BP神經(jīng)網(wǎng)絡訓練。

      2.2.1map函數(shù)

      在map函數(shù)的初始化setup()函數(shù)中讀取全局權值及閾值,然后函數(shù)開始讀取需要訓練的樣本數(shù)據(jù)(為了加快總體運行速度,已單獨使用一個mapreduce任務對數(shù)據(jù)進行歸一化處理,根據(jù)本文需要采用線性mapreduce job流方式),根據(jù)結構需要分解出BP神經(jīng)網(wǎng)絡的輸入和輸出。隨機生成30組權值及閾值通過遺傳算法進行尋優(yōu),經(jīng)過一定迭代次數(shù)后將得到的優(yōu)化后的權值和閾值代入BP神經(jīng)網(wǎng)絡對本地全部數(shù)據(jù)進行訓練尋求本地最優(yōu)。當達到訓練次數(shù)或誤差滿足要求時輸出最優(yōu)的權值及閾值。

      2.2.2Reduce函數(shù)

      Reduce函數(shù)將不同map端的權值和閾值融合處理。根據(jù)key值將相同key對應的value值相加求平均,輸出最終優(yōu)化后的權值和閾值作為全局最優(yōu)。

      反復執(zhí)行多次MapReduce任務后,若精度滿足要求或達到迭代次數(shù)了,則訓練結束。

      3 實驗

      3.1多因子山洪災害雨量預測BP神經(jīng)網(wǎng)絡模型

      如圖4所示,本文借助前人建立的基于BP神經(jīng)網(wǎng)絡的多因子山洪災害雨量預測模型[8]來預測監(jiān)測站的降雨量值,并使

      圖2 MapReduce任務處理流程圖

      圖3基于MapReduce的遺傳算法優(yōu)化神經(jīng)網(wǎng)絡權值及閾值流程圖

      用遺傳算法來優(yōu)化神經(jīng)網(wǎng)絡的權值和閾值。該預測模型為:選取歷次山洪災害爆發(fā)前3個時間段(1 h,3 h,12 h)內(nèi)自動雨量監(jiān)測站采集的累計雨量值和預見期內(nèi)的降雨強度值,結合山洪實際爆發(fā)地的地質(zhì)地貌環(huán)境、土壤植被等因素,作為神經(jīng)網(wǎng)絡的輸入,以預見期內(nèi)的最大累計雨量值作為預測模型的輸出,該模型的數(shù)學表達式為:

      注:Y(i+T)表示i+T時刻的最大累計雨量的預測值,A表示災害發(fā)生地的地質(zhì)因子,B表示其地貌因子,C表示其植被因子,X(i-nj)表示i時刻前nj(j=1,2,3) 段時間內(nèi)的累計雨量值,I(i+T)表示未來T時間段內(nèi)的降雨強度值,e(i+T)為模型誤差。

      圖4 雨情預測BP模型結構圖

      3.2基于遺傳算法的BP神經(jīng)網(wǎng)絡結構

      BP神經(jīng)網(wǎng)絡雖然具有強大的自適應性,對于一些模糊的非線性問題能夠很好地構建和逼近。然而由于算法本身的局限性,它也存在著明顯的缺陷:1)初始權值和閾值是隨機生成的,收斂速度較為緩慢;2)訓練結果可能會陷入局部極小而導致得不到全局最優(yōu)。而遺傳算法是一種基于自然選擇與進化機制的隨機搜索算法,具有良好的全局搜索性。因此對于雨情的預測,本文在如圖4所示的BP神經(jīng)網(wǎng)絡基礎上,利用遺傳算法對權值和閾值進行全局尋優(yōu),從而提高網(wǎng)絡的收斂速度和算法精度。如圖5所示。

      圖5 遺傳算法優(yōu)化神經(jīng)網(wǎng)絡權值閾值結構圖

      3.3Hadoop平臺環(huán)境配置

      本實驗采用五臺 Dell 臺式機搭建集群,其中1臺作為控制節(jié)點NameNode,其余4臺作為數(shù)據(jù)節(jié)點DateNode。操作系統(tǒng)win7,配置為:雙核 CPU,主頻1.8 G,內(nèi)存 1 G,硬盤100 G。網(wǎng)絡環(huán)境為百兆局域網(wǎng)。Hadoop 版本為hadoop-1.2.1。

      3.4實驗數(shù)據(jù)

      本文以四川省崇州市26個雨量監(jiān)測站得到的山洪監(jiān)測數(shù)據(jù)為例(2014.1~2014.12)。去掉缺省值,共有9216條數(shù)據(jù),由上可知,每條數(shù)據(jù)由8個特征值組成。

      3.5結果分析

      以下從運行時間(取10次運行結果的平均值)、誤差率(取10次運行結果的平均值,以平均相對誤差率表示)及達到預測精度所迭代的次數(shù)3個方面對單機和hadoop集群實驗情況進行分析:

      3.5.1運行時間測試

      如下圖6所示,參照隱層節(jié)點數(shù)的經(jīng)驗公式[12],分別測試了當隱層節(jié)點數(shù)為2,8,15,20,25的情況下算法運行時間,其中縱坐標以分鐘為單位。

      圖6 運行時間

      3.5.2誤差率測試

      如表1所示。

      表1 誤差率與迭代次數(shù)表

      4 結論

      針本文利用基于HDFS的海量數(shù)據(jù)存儲和基于MapReduce的分布式計算實現(xiàn)了山洪預測功能。利用遺傳算法對神經(jīng)網(wǎng)絡的權值和閾值進行優(yōu)化實現(xiàn)了對監(jiān)測站降雨量的預測。通過實驗表明,與傳統(tǒng)方法相比,該方式預測的精準性和單機較為接近,預測結果與實際值都比較接近;在預測時間上,該方式大大提高了計算效率。

      [1]劉志雨,楊大文,胡健偉. 基于動態(tài)臨界雨量的中小河流山洪預警方法及其應用[J].北京師范大學學報(自然科學版) ,2010,46(3):317-321.

      [2] 張麗.基于云平臺的短時交通流預測算法設計與實現(xiàn)[D].大連:大連理工大學,2013.

      [3] 王小川,史峰,郁磊,等.MATLAB神經(jīng)網(wǎng)絡43個案例分析[M].北京:北京航空航天大學出版社,2013.

      [4] 陳春萍,查雅行,錢平,等.基于MapReduce的BP神經(jīng)網(wǎng)絡遺傳算法在非線性系統(tǒng)辨識中的研究[A].中國通信學會青年工作委員會.虛擬運營與云計算--第十八屆全國青年通信學術年會論文集(下冊)[C].北京:國防工業(yè)出版社,2013.

      [5] 陸嘉恒.Hadoop實戰(zhàn)(第2版)[M].北京:機械工業(yè)出版社,2012.

      [6] 李榮斌.基于Hadoop平臺和遺傳算法的貝葉斯網(wǎng)結構學習[D].云南:云南大學,2014.

      [7] 盧建中,程浩.改進GA優(yōu)化BP神經(jīng)網(wǎng)絡的短時交通流預測[J].合肥工業(yè)大學學報(自然科學版),2015,38(1):127-131.

      [8] 鄧成靚. 神經(jīng)網(wǎng)絡優(yōu)化及其在山洪災害預測中的應用研究[D]. 成都:四川大學,2014.

      [9] 張弦.基于數(shù)據(jù)并行的BP神經(jīng)網(wǎng)絡訓練算法[D].武漢:華中科技大學,2008.

      [10] Zhu C, Rao R. The Improved BP Algorithm Based on MapReduce and Genetic Algorithm[A]. Computer Science & Service System (CSSS), 2012 International Conference on[C]. IEEE, 2012:1567-1570.

      [11] 劉寅. Hadoop下基于貝葉斯分類的氣象數(shù)據(jù)挖掘研究[D].南京:南京信息過程大學,2012.

      [12] 吳永明,吳晟.改進的遺傳算法在神經(jīng)網(wǎng)絡結構優(yōu)化中的應用[J].微型機與應用,2011, 30(3):79-81.

      [13] 劉剛.Hadoop應用開發(fā)技術詳解[M].北京:機械工業(yè)出版社,2014.

      Study of Hadoop-based GA-BP Network in the Flash Flood Forecasting

      Sun Dandan,Ning Qian

      (College of Electronics and Information Engineering, Sichuan University, Chengdu610065, China)

      Distributed storage and Distributed prediction method for flash flood forecasting disaster forecasting system of Rainfall data is researched. Focused on the rapid growth of the collected Hydrological data and the demands for prediction accuracy and timeliness of forecasts is increasing, respectively used Hadoop distributed file system to store data and use MapReduce framework and the genetic algorithm to optimize the number of hidden layer nodes and the weights as well as the thresholds of the network to predict data. Based on multi-factor flash flood disaster rainfall BP neural network prediction model, combining the characteristics of genetic algorithm can achieve global optimization to optimize the number of hidden layer nodes and the weights as well as the thresholds of the network,and in the procedure of data parallel processing adopted the way of batch mode and MapReduce workflow, and used the error and the accuracy to evaluate the prediction model,which solve the problem of network training time when the neural network in dealing with mass data. Experiments show that this method can greatly reduce the running time without affecting the accuracy, and improve prediction efficiency.

      Hadoop; Map-Reduce; parallel computing; BP neural network;genetic algorithm

      2015-07-03;

      2015-08-25。

      孫丹丹(1992-),女,山東棗莊人,碩士研究生,主要從事云計算、智能控制方向的研究。

      1671-4598(2016)01-0187-04

      10.16526/j.cnki.11-4762/tp.2016.01.052

      TP311.11

      A

      猜你喜歡
      山洪權值遺傳算法
      一種融合時間權值和用戶行為序列的電影推薦模型
      CONTENTS
      優(yōu)雅地表達
      基于自適應遺傳算法的CSAMT一維反演
      一種基于遺傳算法的聚類分析方法在DNA序列比較中的應用
      基于權值動量的RBM加速學習算法研究
      自動化學報(2017年7期)2017-04-18 13:41:02
      基于遺傳算法和LS-SVM的財務危機預測
      遭遇暴雨山洪如何避險自救
      基于改進的遺傳算法的模糊聚類算法
      湖北省山洪溝治理思路淺析
      中國水利(2015年9期)2015-02-28 15:13:20
      通许县| 扎兰屯市| 濮阳市| 文成县| 团风县| 山西省| 乐东| 甘泉县| 靖西县| 河北省| 集安市| 连平县| 娱乐| 绥棱县| 娄烦县| 雷山县| 张家口市| 蓬溪县| 民丰县| 乌拉特前旗| 蓬安县| 湾仔区| 道真| 牡丹江市| 枞阳县| 上高县| 胶南市| 岑巩县| 河北区| 澄城县| 宾川县| 永胜县| 巴东县| 民县| 明水县| 新邵县| 安阳市| 乌拉特前旗| 汤阴县| 柳江县| 临汾市|