林浩宇
(福州大學 物理與信息工程學院,福建 福州 350000)
BP(Back Propagation,BP)神經網絡在生活中的應用處處可見,如數字識別系統的設計、PID參數的整定值、函數逼近以及模式識別的應用,都可以基于BP神經網絡展開[1]。BP算法具有精確性高等優(yōu)點,但是也存在收斂速度慢、易陷入局部極小問題的缺點[2]。遺傳算法(Genetic Algorithm,GA)作為生物智能算法的一種,基于生物進化理論基礎發(fā)展而來,是一種自適應性的算法,能夠對一個數據空間進行全局部優(yōu),而且在收斂性方面也有一定的優(yōu)越性[3]。本文將遺傳算法與BP神經網絡算法巧妙地結合在一起,利用遺傳算法對BP神經網絡進行權值與閾值求解,并進行優(yōu)化處理,從而得到權值和閾值的最優(yōu)解,使BP神經網絡結構的穩(wěn)定性大幅度提升[4-5]。
在理論研究方面,朱苗苗等人將BP神經網絡和遺傳算法結合形成一種交互式算法[1];在日常的生活應用中,徐星等人基于遺傳算法優(yōu)化的BP網絡對礦井的水質進行了分析[6];在對未來數據走勢預測領域,謝夢蝶、秦江濤通過遺傳算法優(yōu)化的BP神經網絡實現了對股指進行預測及研究[7];謝文強通過遺傳算法優(yōu)化的BP網絡對鋰離子電池剩余容量進行預測[8]。這些涉及日常生活各個領域的實驗及實踐有力地證明了遺傳算法優(yōu)化的BP網絡具有很強的實用性,也展現了遺傳算法的高效性與可利用性。
在數據云集的時代,BP神經網絡在生活中的應用處處可見。它可以對事物的未來變化過程進行預判,從而成為趨勢預測領域的有力工具之一。它利用構建相對應的模型,通過過去產生的數據隨時間推移變化的規(guī)律,對數據未來的趨勢進行預測[9]。但是,傳統BP神經網絡存在收斂速度慢等缺點,有一定的局限性,而遺傳算法優(yōu)化的BP神經網絡,能很好地彌補傳統BP神經網絡的這一缺點。優(yōu)化后的BP神經網絡具有適應性強、網絡穩(wěn)定度高的優(yōu)勢。
遺傳算法GA是一種生物智能優(yōu)化算法。它實質上是一種全局搜索尋找最優(yōu)值的技術。遺傳算法針對對隨機產生的可能結果,在這些結果中選擇一定量的可能解作為一個種群,根據相應的規(guī)則,即自然遺傳學的選擇及交叉變異等方法,通過種群的迭代,得到最優(yōu)解。在種群迭代的過程中,需要對個體適應度的大小進行比較,按照優(yōu)勝劣汰以及適者生存的原理,逐漸搜索得到一個最優(yōu)解,最終得到一個新的解集的群體。這個解集即需要解決的問題的最理想的解[10-11]。
遺傳算法解決實際問題的步驟如下[12],流程如圖1所示。
圖1 遺傳算法流程圖
(1)初始化。通過遺傳算法參數編碼在N個樣本中隨機選擇,確定一個初始種群P(0),形成一個可行解的集合。
(2)個體評估。把初始的種群P(0)導入目標函數,然后算出樣本中各種群的適應度。
(3)結束條件判斷。給定一個初始條件,判斷算法結束條件,如滿足條件直接跳到至步驟(8)。
(4)選擇運算。對目標群體采用優(yōu)勝劣汰、適者生存的法則,選擇出大量優(yōu)良個體。
(5)變異運算。通過變異概率對目標個體進行變異運算。
(6)交叉運算。通過交叉概率對目標個體進行交叉運算。
(7)經過變異、交叉隨機運算,如果得到由N個新個體構成的下一個群體P(t+1)轉至步驟(2),反之轉至步驟(4)。
(8)進化個體。得到函數中適應度最高的一個個體,這個個體即該問題的最理想的解,結束運算。
BP神經網絡雖然操作簡單、實用性強,在數據預測和圖像分割領域有很大優(yōu)勢,但也難免存在一些問題,如收斂速度慢、算法穩(wěn)定性較差、容易落入局部極小值等。而遺傳算法在全局搜索方面表現出色,通過遺傳算法得到BP神經網絡權值和閾值優(yōu)化求解,就可以得到穩(wěn)定的網絡結構,在圖像分割處理、數據計算以及趨勢預測方面都有較好的完善和改進,是值得一做的優(yōu)化方案。
為了充分發(fā)揮遺傳算法和BP神經網絡兩者的優(yōu)勢,本文通過遺傳算法對BP神經網絡進行改進優(yōu)化,優(yōu)勢互補。具體步驟如下[13-14],流程如圖2所示。
圖2 遺傳算法優(yōu)化的BP網絡流程圖
(1)初始化:對整個種群進行初始化處理,利用參數編碼生成N個個體,這N個個體形成新的初始種群,然后對種群數進行計算,確定染色體長度和范圍,給出理想的誤差值。
(2)適應度計算:計算出適應度f,公式如下。
式中:yi為網絡期望的輸出,oi為實際的輸出值,SE為誤差平方和函數。
(3)交叉運算:步驟(2)計算出適應度f,通過優(yōu)勝劣汰的原則,篩選出優(yōu)良個體,對其進行交叉運算。即選擇第k個染色體ak和第i個染色體ai,在第j位的交叉運算方式如下。
式中:b∈[0,1]。
(4)變異運算,第i個個體在第j個基因進行變異運算公式如下。
式中:amax和amin分別為染色體aij的上下界,f(g)=r(1-g/Gmax);g為進行到當前的迭代次數,Gmax為進化的最多次數,r∈[0,1]。
(5)評估:對種群中個體的適應度進行計算并計算誤差。
(6)判斷是否滿足終止的條件,如果滿足,轉至步驟(7),反之轉至步驟(3)。
(7)得到BP網絡最優(yōu)的權值和閾值。
(8)對BP網絡進行校正,調整各層參數。
(9)計算BP網絡的誤差,如果誤差在要求的范圍內,則結束整個過程。反之轉至步驟(7),繼續(xù)校正網絡參數。
(10)得到優(yōu)化后的數據,對網絡空間和映射關系進行保存。
為了驗證該優(yōu)化的網絡的實用性,以礦井通風量為研究對象Data0,通過總回風巷的通風量、瓦斯、煤塵、溫度和濕度等數據對最優(yōu)礦井通風量進行計算。需要注意的是,總回風巷的氣流量等于回風巷和掘進工作面氣流量之和,具體數據如表1所示。
根據表1的數據,繪制出各因素對應下的通風量之間的三位曲面圖,如圖3至圖8所示。
表1 某總回風巷的數據點
由圖3至圖8可以看出,不同變量對通風量影響是不同的,可能由工程中間間斷作業(yè)造成。采用GA-BP網絡對通風量最優(yōu)值進行預測,經過初始化、適應性函數、選擇、交叉、變異等操作后,得到相關的適應度曲線,最后輸出優(yōu)化過后神經網絡的預測值及誤差值,如圖9至圖11所示。
圖3 某總回風巷煤塵、瓦斯與通風量之間的關系圖
圖8 某總回風巷濕度、溫度與通風量之間的關系圖
圖9 總回風巷預測誤差分析
圖4 某總回風巷濕度、瓦斯與通風量之間的關系圖
圖5 某總回風巷溫度、瓦斯與通風量之間的關系圖
圖6 某總回風巷溫度、煤塵與通風量之間的關系圖
圖7 某總回風巷濕度、煤塵與通風量之間的關系圖
根據圖11,得出GA-BP預測與回歸總回風巷預測的誤差比較如表2所示。
圖10 總回風巷最優(yōu)通風量預測
圖11 GA-BP預測與回歸預測總回風巷誤差比較
表2 GA-BP預測與回歸總回風巷預測的誤差比較表
由圖9至11可以得知,GA-BP網絡系統進行全域搜索,得到通風量的最優(yōu)條件是:瓦斯0.5%,煤塵6.5 g·m-3,溫度16.5 ℃,濕度12.5%RH,預測的最優(yōu)風速為4.158 4 m·s-1。由此可以得出,所得到的預測結果相較于回歸分析法誤差更小,預測結果更平滑,數值更精確,在一定程度上具有一定的魯棒性和泛化能力。
本文的實驗充分證明了遺傳算法優(yōu)化BP神經網絡的可行性,即利用遺傳算法極其強大的全域搜索能力,確定BP神經網絡的最優(yōu)權值和閾值,使計算預測性能大幅度提升。實驗得出的結論也很好地印證了提出這一改進算法的初衷,即要求在誤差可控制的范圍內提高BP網絡算法的穩(wěn)定性。
作為研究者,要清楚地認識到,遺傳算法與BP網絡結合只是一個進步的開端。接下來,研究者還需要去做多次實驗來進一步提高該算法的穩(wěn)定性和實際操作性,需要不斷降低預測誤差。既然這個優(yōu)化算法在初步試驗中被證明其具有可行性,應該將這種思維應用到更多算法中,更高效、更穩(wěn)定地實現數據預測的優(yōu)化。