資源描述:
《提高bp神經網絡學習速率的算法研究》由會員上傳分享,免費在線閱讀,更多相關內容在學術論文-天天文庫。
1、提高BP神經網絡學習速率的算法研究 摘要:BP(BackPropagation)神經網絡是一種按誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伨W絡。本文針對BP神經網絡學習速率低、收斂速度慢的問題進行研究,介紹了標準的BP算法和提高收斂速度的動量因子法和變步長法,對比實驗結果明顯,旨在為研究BP神經網絡學習速率提供參考?! £P鍵詞:BP神經網絡動量因子法變步長法學習速率 1.引言 人工神經網絡(ArtificialNeuralNetworks,ANN)是通過對人腦神經元建模、聯(lián)結模擬生物腦或世界系統(tǒng)的網絡模型,是一種具有學習、記憶和模式識別等智能信息處理功能的人工系統(tǒng)。通常研究和使用的十種神經
2、網絡模型中,人們較多用的是Hopfield網絡、BP網絡、Kohonen網絡和ART網絡模型。其中的BP神經網絡是基于反向傳播(BackPropagation)的網絡,也是神經網絡領域中研究最多、應用最廣的網絡模型。它采用最小均方差的學習方式,可用于函數(shù)逼近及語言綜合、識別和自適應控制等?! ?.標準BP神經網絡算法4 BP算法作為前饋網絡的主要學習算法,對神經網絡的推廣應用起了舉足輕重的促進作用。標準的BP網絡,優(yōu)化計算的方法很多,比較典型的是采用一階梯度法,即最速下降法。在BP神經網絡訓練中,主要是針對一定的輸入,所得到的輸出是否與期望輸出接近,即誤差的代價函數(shù)達到最小。其簡
3、單的實現(xiàn)步驟為:(1)通過網絡輸入反向傳播;(2)通過網絡將敏感性反向傳播;(3)使用近似均方誤差的BP算法更新權值和偏置值?! 藴实腂P算法因具有簡單、易行、計算量小及并行性強等優(yōu)點,是目前神經網絡訓練采用最多、最成熟的訓練算法。由于BP網絡中待尋優(yōu)的參數(shù)太多,往往導致算法收斂速度慢。對于復雜問題,訓練過程需迭代幾千、幾萬次才能收斂到期望的精度。因此,標準的BP網絡在很大程度上實用性不強,尤其對于實時性很強的系統(tǒng)而言。 3.BP算法的改進 BP多層前饋網絡已成為神經網絡的重要模型之一,但實際上的BP多層前饋網絡并不是利用標準的BP算法對網絡進行訓練的,而是對BP算法進行了啟
4、發(fā)式改進?! 。?)增加動量因子法 BP算法的神經網絡的誤差曲面具有不同的區(qū)域有不同的誤差改變率的特點。假若開始訓練的學習速率較高,那么算法的收斂速度可能很快。但當?shù)M入的區(qū)域包含極小點時,此時算法發(fā)散,來回振蕩,收斂不到極小值點。如果用平均改變參數(shù)的方法進行軌跡的過濾,就可以對震蕩進行平滑并可產生穩(wěn)定的軌跡。當動量濾波器的參數(shù)得到了改變,獲取反向傳播的動量,使用了動量項,可以在保證算法較為穩(wěn)定的前提下,在網絡訓練進入局部最小值時產生一個繼續(xù)向前的正向斜率運動,使得搜索能夠跳出較淺的峰值;當網絡搜索位于誤差曲面平坦區(qū)的區(qū)域時,該方法能夠較快地提高訓練速度?! 。?)變步長法4
5、 變步長法通過調整網絡訓練的學習率,故也稱為可變學習速率的方法。BP算法中對連接權值的調整,取決于兩個因子,即學習速率和梯度。其中通過調整學習速率提高算法收斂收率的方法,是當前認為最簡單、有效的方法。學習率不能隨意選取,選得太小,收斂會變慢;選得太大,可能調整過多,使得算法振蕩或發(fā)散。所以,在對學習率進行調整時,一般遵循的準則是:首先檢查修正值,看該值是否明顯降低了誤差。如果降低了,則學習率的值選取偏小,可以作為對學習率調整的參考;否則,學習率值調整過大,就應該對該值進行減小。增加可變速率參數(shù)后,得到改進的BP算法如下: ?、偃绻麄€訓練集上的均方誤差權值在更新后增加的,且該值超過
6、了預設的某個百分數(shù),如:1%~5%,則不對權值進行更新。學習速率被乘以一個大于零且小于1的因子,并且動量系數(shù)被設置為0?! 、谌绻秸`差在權值更新后變小了,則接受權值更新。學習速度將被乘以一個大于1的因子。假若學習率被設置為0,則恢復之原來的值?! 、廴绻秸`差的增長變小,則權值更新被接受,但學習速度保持不變。如果學習率過去被設置為0,則恢復到以前的值。 4.實驗結果 分別對目標誤差為0.001的網絡訓練。實驗結果如下: ?。?)采用標準BP網對樣本進行訓練,迭代次數(shù)近5000次尚未收斂?! 。?)采用增加動量法,迭代375次,學習過程收斂?! 。?)采用變步長法,迭代17
7、28次收斂。4 由此可見,未改進的標準BP學習算法存在收斂速度慢的缺陷;改進后的BP學習算法都從不同程度上提高了算法的收斂速度,訓練的次數(shù)大大減小了。對BP算法采用啟發(fā)式改進措施后,明顯提高了學習速度?! ?.結語 BP神經網絡最強大的應用之一就是函數(shù)逼近,即從訓練樣本出發(fā),對未知函數(shù)進行非線性逼近。由于網絡的拓撲結構直接影響網絡對函數(shù)的逼近能力和效果,因此,在實際應用中,應根據(jù)具體問題,選擇一個合適的網絡結構。BP網絡的學習算法屬于全局逼近的算法,具有較強的泛化