前言:中文期刊網精心挑選了神經網絡優化方法范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。
神經網絡優化方法范文1
關鍵詞: BP神經網絡; Gauss變異; 學習率; 沖量系數; 動態調整
中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2014)06?0012?03
0 引 言
神經網絡是一個黑箱模型,它具有很強的適應能力和學習能力,在人工智能、自動控制、模式識別、信號處理、預測及評價等方面都有著越來越廣泛的應用[1?3]。目前已經提出了多種訓練算法和網絡模型,其中應用最廣泛的是前饋型神經網絡。前饋型神經網絡訓練中使用最多的方法是誤差反向傳播(Back Propagation,BP)學習算法。BP算法系統地解決了多層網絡中隱含神經元連接權的學習問題,使BP 網絡成為應用最為廣泛的一種神經網絡模型。但是BP網絡也有一些不足[4?5]。比如:收斂速度太慢問題、局部極小點問題、網絡癱瘓問題、穩定性問題、步長問題等,極大地影響了神經網絡的進一步應用。很多學者對BP 網絡進行了深入研究并提出了許多改進的模型[6?9],這些改進模型的收斂速度比標準梯度法快數十倍,但它們仍都不是普遍適用的,都有著各自的優勢或缺陷。本文結合BP網絡的訓練過程,提出一種改進的BP網絡訓練方法,將Gauss變異與改進的BP算法相結合,對學習率參數和沖量系數進行動態調整,使得權值能很好的調整。避免了傳統的BP 算法容易陷入局部極小的問題,同時可以提高BP 算法的訓練速度,降低收斂時間。
1 BP神經網絡
BP 神經網絡是一種單向傳播的多層前饋網絡[1],它包含輸入層、中間層(隱層)和輸出層,是目前應用較多的一種模型。該算法在層次型網絡結構上采用誤差逆傳播學習方式,學習過程由正向傳播和誤差逆傳播組成。算法的主要思想是把學習過程分為兩個階段:第一階段是正向傳播過程,輸入信息從輸入層經中間層逐層計算各神經元的實際輸出值,每一層神經元的狀態只對下一層神經元的狀態產生影響;第二階段是反向傳播過程,若在輸出層未能得到期望的輸出值,則逐層遞歸計算實際輸出與期望輸出之間的差值,根據此誤差修正前一層權值使誤差信號趨向最小。它通過連續不斷地在相對于誤差函數斜率下降的方向上計算網絡權值和偏差變化而逐漸逼近目標。每一次權值和誤差的變化都與網絡誤差的影響成正比。
假設神經網絡輸出層有m個神經元,若輸出層第j個神經元與中間層第i個神經元之間權值為[wij],中間層第i個神經元的輸出為[Oi],閾值為[bj],則輸出層第j個神經元的輸入總和為其上層各單元加權和:
輸出實際值為:
若輸出期望值為[yj],則網絡關于第p個樣本的誤差函數定義為:
而將網絡關于整個樣本集的全局誤差函數定義為:
BP算法采用梯度下降法調整權值,每次調整的量為:
式中:[δj=f(netj)(yj-Oj)];[α]為學習率,它決定每一次訓練中的權值變化大小。
BP算法主要的優點是簡單、易于實現。但是BP 算法有兩個致命的缺陷:首先最大的缺陷是BP算法很可能陷入局部極小值,因為通常的誤差曲面都是凸凹不平的,會有多個極值點;另一個缺陷是收斂速度慢,當采用梯度下降法時步長不容易確定,步長太長則達不到精度,甚至會發散;太小則迭代步驟增加,收斂速度慢。鑒于此,目前對BP算法的改進主要集中在兩個方面:其一是避免陷入局部極小值,一旦陷入要想辦法逃出;其二是改進迭代算法,加快收斂速度。
2 Gauss變異與改進的BP算法相結合
BP算法的不足在一定程度上都與每次權值修改程度大小有關。如果每次訓練,權值都能向全局極小值方法進行修改,那么上述問題都能得到解決。可用遺傳算法對BP算法中的學習率進行動態調整。初始時將學習率設大一些,加快算法的收斂。后期將學習率設小一些,以便可以找到全局極小值點。為了使算法的整體性能更高,采用將改進的BP算法和遺傳算法相結合。
2.1 改進的BP算法
BP網絡的訓練過程是根據樣本集對神經元之間的連接權進行調整的過程。其次,BP網絡執行的是有導師訓練。所以,其樣本集是由形如:
(輸入向量,理想輸出向量)
的向量對構成的。BP網絡接收樣本的順序會對訓練的結果有很大的影響。它更“偏愛”較后出現的樣本。如果每次循環都按照[(X1,Y1)],[(X2,Y2)],…,[(XS,YS)]所給定的順序進行訓練,在網絡“學成”投入運行后,對于與該樣本序列較后的樣本較接近的輸入,網絡所給出的輸出的精度將明顯高于與樣本序列較前的樣本較接近的輸入對應的輸出精度。所以算法應該避免“分別”、“依次”的出現。因此,不再“分別”、“依次”根據[(X1,Y1)],[(X2,Y2)],…,[(XS,YS)]對權值向量[W(1)],[W(2)],…,[W(M)]進行調整,而是用[(X1,Y1)],[(X2,Y2)],…,[(XS,YS)]的“總效果”去實施對[W(1)],[W(2)],…,[W(M)]的修改。獲取樣本集“總效果”的最簡單的辦法是取:
式中:∑表示對整個樣本集的求和;[Δpw(k)ij]代表神經元i到神經元j的連接權[w(k)ij]關于樣本[(Xp,Yp)]的調整量。
權值的本次修改要考慮上次修改的影響,以減少抖動問題。引入沖量系數[β],以將上次權值的調整量,進入當前權值的修改過程,平滑學習路徑??紤]上次修改的影響,本次權值的修改公式為[1]:
式中:[Δwij′]為上一次的修改量;[Oi]表示第i個神經元的輸出;[β]為沖量系數,通常取0~1之間的小數。因為[β]值較大時,雖能加快訓練速度,但影響精度及收斂性,太小又起不到影響本次權值修改的作用。因此,[β]的取值視具體問題由試驗確定。
上述算法較好地解決了因樣本的順序引起的精度問題和訓練的抖動問題。但是,該算法的收斂速度還是比較慢的。為了解決收斂速度問題,可以給每一個神經元增加一個偏移量來加快收斂速度。
2.2 Gauss變異調整學習率參數和沖量系數的基本思想
BP算法中,如果學習率步長、沖量系數不變,那么到后期可能由于步長太大從而不能繼續進行優化。所以步長應該進行動態調整。當權值進行調整時,可用Gauss變異生成兩個小的隨機數,并將這兩個小的隨機數作為學習率參數和沖量系數。
2.3 整體算法流程
為了避免讓算法陷入局部極小值點,將遺傳算法中群體的概念應用進來。生成N個個體,每個個體執行算法,算法運行完成后,選取最好個體中的誤差作為最小誤差。
每個個體執行的算法如下:
3 實驗及實驗結果分析
為了說明Gauss變異的有效性,將本文中的改進算法與不加入Gauss變異和群體概念的改進BP算法在收斂速度方面進行比較。采用Balance?scale數據集進行了算法驗證,該數據集的訓練樣本特征為4個,目標輸出類型有3種,本文采取200個4維樣本向量構造標準樣本空間,輸出為2維向量進行訓練,其收斂曲線對比如圖1所示。
圖1 訓練收斂曲線對比圖
圖1顯示的是迭代1 000次,算法的收斂速度。為了有可比性,初始權值設為固定值。從圖1中可以看出,加入Gauss變異后收斂速度大大提高。運行了幾個例子,都能得到這一結論。但對于不同的例子,產生的Gauss隨機數不能直接賦給學習率參數和沖量系數,還要根據不同的實際,對隨機數乘上不同的權值。這個權值是個經驗值,需要進行若干次實驗來確定一個比較優的值。
另外,用此算法對一個數據集進行分類,采用breast?cancer?wiscon數據集,訓練樣本和測試樣本根據Cross?validation[10]進行劃分。每個分區輪流作為測試樣本進行測試。由于breast?cancer?wiscon數據集比較簡單,分類屬性只有兩個值,所以只將分類屬性的值變換成0或1。BP網絡的輸出如果在[0,0.5]之間,則將屬性的值定為0;否則為1。算法參數設置如表1所示。
表1 算法參數設置
實驗結果如表2所示。
表2 實驗結果
從以上實驗結果可以得知,用Gauss變異動態調整學習率參數和沖量系數,可以加快算法的收斂速度,并且可以得到比較好的分類結果。但是,Gauss函數自變量和隨機數權值應取多大需要進行若干次實驗,才能確定一個比較好的值。
4 結 語
本文結合BP網絡的訓練過程,提出一種改進的BP網絡訓練方法,將Gauss變異與改進的BP算法相結合,對學習率參數和沖量系數進行動態調整,使權值得到很好的調整。實驗結果表明,此方法避免了傳統的BP 算法容易陷入局部極小的問題,在訓練時間和收斂速度方面均表現出更優的性能,具有比較好的實用性。
參考文獻
[1] 蔣宗禮.人工神經網絡導論[M].北京:高等教育出版社,2001.
[2] 張毅,楊建國.基于灰色神經網絡的機床熱誤差建模[J].上海交通大學學報,2011,45(11):1581?1585.
[3] 黃偉,何眸,夏暉.基于小波神經網絡的IP網絡流量預測[J].計算機科學,2011,38(10):296?298.
[4] 田景文,高美娟.人工神經網絡算法研究與應用[M].北京:北京理工大學出版社,2006.
[5] KUMAR S. Neural networks [M].北京:清華大學出版社,2006.
[6] YU X H, CHEN G A, CHENG S X. Dynamic learning rate optimization of the back propagation algorithm [J]. IEEE Transactions on Neural Networks, 1995: 6(3): 669?677.
[7] ROYCHOWDHURY P, SINGH Y P, CHANSARKAR R A. Dynamic tunneling technique for efficient training of multilayer perceptions [J]. IEEE Transactions on Neural Networks, 1999: 10(1): 48?55.
[8] 陳玉芳,雷霖.提高BP網絡收斂速率的又一種算法[J].計算機仿真,2004,21(11):74?79.
神經網絡優化方法范文2
[關鍵詞]小生境遺傳算法神經網絡股票預測
一、引言
股票和股票市場對國家企業的經濟發展起到了積極的作用,如可以為投資者開拓投資渠道,增強投資的流動性和靈活性等。但股票價格的形成機制是頗為復雜的,股票價格既受到多種因素,諸如:政治,經濟,市場因素的影響,亦受技術和投資者行為因素的影響,個別因素的波動作用都可能會影響到股票價格的劇烈波動。因此,股票價格和各影響因素之間很難直接建立明確的函數關系表達式。針對這一情況,將可有效處理非線性問題的神經網絡引入到股票價格的預測中來,但神經網絡收斂慢,易陷入局部極小點,出現振蕩,魯棒性差。所以有的學者用遺傳算法(GA)來優化神經網絡,這種神經網絡可能獲得個別的甚至局部的最優解,即GA早熟現象。本文引進能較有效地保持種群多樣性的小生境遺傳算法(NGA),采用NGA優化與用GA優化的BP網絡權值進行對比,證實了NGA的判別準確性和尋優能力。
二、小生境遺傳算法優化的神經網絡
1.BP神經網絡
反向傳播(BP)算法又稱為誤差逆傳播校正方法,它是1974年P.Werbos(哈佛大學)提出的。BP算法用來訓練多層前饋神經網絡,屬于監督學習算法。BP網絡具有結構清晰,易實現,計算功能強大等特點。因而是目前最常見,使用最廣泛的一種神經網絡。但是在實際應用中,傳統的BP算法存在以下問題:收斂速度慢;若加快收斂速度易產生振蕩;存在局部極小和平臺問題;泛化能力差;隱節點數和初始值的選取缺乏理論指導;未考慮樣本選擇對系統學習的影響等。所以很多學者提出許多改進的方法,用小生境遺傳算法優化神經網絡權值的神經網絡來預測股票價格。
2.小生境遺傳算法
小生境遺傳算法(IcheGeneticalGorihm)的基本思想是:首先比較任意兩個個體間的距離與給定值的大小,若該距離小于給定值,則比較其適應值大小。對適應值較小的個體施加一個較強的懲罰,極大地降低其適應值。也就是說,在距離L內將只有一個優良個體,從而既維護了群體的多樣性,又使得各個體之間保持一定的距離,并使得個體能夠在整個約束空間中分散開來。
3.神經網絡連接權的優化
用小生境遺傳算法可以優化神經網絡連接權,神經網絡結構,學習規則等,這里我們對神經網絡的連接權進行優化,具體步驟如下:
(1)隨機產生一組權值分布,采用某種編碼方案對該組中的每個權值(或閾值)進行編碼,進而構造出一個碼串(每個碼串代表網絡的一種權值分布),在網絡結構和學習規則已確定的前提下,該碼串就對應一個權值和閾值取特定值的一個神經網絡。
(2)對所產生的神經網絡計算它的誤差函數,從而確定其適應度函數值,誤差越大,則適應度越小。
(3)選擇若干適應度函數值最大的個體,直接遺傳給下一代。
(4)利用交叉和變異等遺傳操作算子對當前一代群體進行處理,產生下一代群體。
(5)重復(2)(3)(4),使初始確定的一組權值分布得到不斷地進化,直到訓練目標得到滿足為止。
這種由小生境遺傳算法訓練神經網絡的方法也可以稱做混和訓練法。將基于小生境遺傳算法的遺傳進化方法和基于梯度下降的反傳訓練相結合,這種訓練方法吸取兩種方法的各自特點,所以收斂速度快。
三、股票價格預測仿真
根據經驗選取輸入預測日前四天開盤價、收盤價歸一化后做為作為輸入量,輸出為第五天收盤價歸一化數值。所以,本文采用神經網絡結構為(8,5,1),即網絡的輸入層6個節點,隱含層9個節點,輸出層1個節點。本文選擇了“XDG新梅(600732)”從2006年3月14日到2006年7月1日數據進行了仿真。利用MATLAB6.5編程,取70組訓練樣本和30組測試樣本。如圖(1)表示用遺傳算法和小生境遺傳算法對神經網絡的權值進行優化時,誤差曲線變化;從圖中可以看出,小生境遺傳算法收斂速度要快;圖(2)表示股票預測值和實際值比較,從圖中可以看出,遺傳算法和小生境遺傳算法對神經網絡的權值的模型進行股票價格的預測,都能預測出股票走向趨勢,但是,后者的預測精度顯然要比前者高。
四、結束語
股票市場的不確定因素太多,股票的價格更是多種因素影響的集合體,是典型的非線性動力學問題。股票價格的中長期準確預測很難。本文建立了用小生境遺傳算來優化神經網絡模型來預測股票價格,結果表明,這種方法比單用遺傳算法優化的神經網絡收斂速度快,預測精度高。對于股票價格預測具有較好的應用價值。
參考文獻:
[1]龍建成李小平:基于神經網絡的股票市場趨勢預測[J].西安電子科技大學學報(自然科學版.2005.3(32):460-463
[2]王波張鳳玲:神經網絡與時間序列模型在股票預測中的比較[J].第27卷第6期武漢理工大學學報·信息與管理工程版.2005.9(27):69-72
神經網絡優化方法范文3
關鍵詞: 網絡異常檢測; BP神經網絡; 遺傳算法; 異常流量
中圖分類號: TN711?34; TP393 文獻標識碼: A 文章編號: 1004?373X(2016)03?0090?04
Network anomaly detection method with improved BP neural network based on GA
CUI Baocai
(Tianjin Electronic Information College, Tianjin 300350, China)
Abstract: Since the conventional BP neural network algorithm is easy to fall into local optimal solution, and the established network abnormal flow detection model has low detection efficiency and poor accuracy, an improved BP neural network algorithm based on GA is proposed, by which the network abnormal flow detection model was established. The conventional genetic algorithm in the search process often influences on the search effect because of the high fitness individual, so it is necessary to improve the conventional genetic algorithm. The hybrid encoding mode is used to optimize and correct the parameters of crossover operator, mutation operator, crossover probability and mutation probability. The experiment study for network abnormal flow data in KDD CUP99 database is conducted, and the research results show that the detection performance of the proposed method is better than that of the conventional algorithm. The improved genetic algorithm is used to synchronous optimization the network, weight and threshold of BP neural, and can avoid the problem causing by the blind selection of BP neural network structure parameter, and avoid that the BP neural network is easy to fall into the local optimal solution.
Keywords: network anomaly detection; BP neural network; genetic algorithm; abnormal flow
0 引 言
網絡異常流量類型多樣復雜,異常可能來自Alpha Anomaly異常流量、DDos異常流量、Port Scan異常流量、Network Scan異常流量、Worms異常流量以及Flash Crowd異常流量等。在大型Internet供應商以及企業網絡中對異常進行檢測具有非常大的難度。常規異常檢測具有檢測率低、誤報率高等問題,因此本文對網絡異常流量檢測方法進行深入研究[1?3]。
近年來,人們常常利用BP神經網絡建立網絡異常流量檢測模型,但是由于BP神經網絡算法存在容易陷入局部最優解,訓練時間長,效率低等問題,因此本文提出一種利用遺傳算法對BP神經網絡進行改進的方法以提高BP神經網絡算法性能[4?5]。
1 遺傳算法優化BP神經網絡模型
1.1 遺傳算法優化BP神經網絡
使用遺傳算法對BP神經網絡算法進行優化可以描述為:
式中:[E1]是BP神經網絡訓練輸出與實際樣本的總體誤差;[yi(t)]是期望的輸出;[yi(t)]是BP神經網絡的實際輸出。
BP神經網絡的實際輸出[yi(t)]表示為:
式中:[f]是輸出神經元的激勵函數;[g]是隱含層神經元的激勵函數;[wij]是BP神經網絡輸入層和隱含層節點之間的連接權值;[vit]是隱含層與輸出層節點之間的連接權值;[ξi]是過程神經元的閾值;[ηt]是輸出神經元的閾值。
權值的修正值可以用如下方法表示:
式中:[α]是動量因數;[n]是迭代次數;[η]是自適應學習率;[g(n)]是誤差函數對權值的梯度。
建立遺傳算法優化BP神經網絡的檢測模型過程如下:
步驟1:建立BP神經網絡,設定BP神經網絡的初始結構參數和函數等;
步驟2:使用遺傳算法對BP神經網絡進行參數優化,生產初始種群,通過種群優化、交叉、變異等操作對BP神經網絡的權值、閾值等進行優化;
步驟3:使用遺傳算法得到的最優權值、閾值等參數更新BP神經網絡,使用訓練數據對模型進行訓練,完成檢測模型的建立。
建立遺傳算法優化BP神經網絡的檢測模型流程如圖1所示[6?7]。
1.2 遺傳算法改進方法
常規遺傳算法在搜索過程中,往往會由于出現影響生產適應度高的個體而對遺傳算法搜索過程產生影響的現象發生,因此需要對常規遺傳算法進行改進。本文使用的方法是通過混合編碼方式進行改進,同時對交叉算子、變異算子、交叉概率[Pc]以及變異概率[Pm]等參數進行優化修正。
(1) 混合編碼方案
二進制編碼解碼的優點是操作簡便、易于實現等;實數編碼方法的優點是針對連續參數優化問題的精度高、直觀等。因此本文將兩種編碼方式進行結合,發揮其各自優點,實現對遺傳算法的改進。通過此種方法改進后,遺傳操作速度加快、全局搜索范圍增加,同時也提高了優化的精度等。
(2) 適應值函數選取
尋找使得所有進化過程網絡誤差平方和最小的網絡權值即為遺傳算法的搜索目標。遺傳算法通常的進化方向是向著適應值增加的方向發展,因此,本文通過優化得到的權值、閾值,計算得到對應神經網絡的誤差平方和,適應誤差的倒數為適應度函數。各個個體的適應值可以表示為:
網絡的目標函數表示為:
式中:[qijk]是使用第[j]個訓練數據樣本進行輸入時,第[k]個節點的輸出;[pjk]是期望網絡的輸出;[n]是訓練數據樣本數量;[m]是BP神經網絡的輸出層神經元個數;[L]為種群規模數;[i=1,2,…,L。]
(3) 選擇算子
本文使用的選取方法為排序法。排序法思想是把個體適應度的不同轉換為排序序列,適應度較大的個體被選取的概率就越大,適應度較小的個體被選取的概率就越小。針對個體按照其適應度完成升序的排序,之后按下面方法對個體的選取概率進行計算:
式中:[Pmax]是最優染色體選取概率;[n(i)]是種群中第[i]個染色體適應值的排序。
對個體使用比例選擇法進行選取。對每個個體累計選取概率[qi(i=1,2,…,L)]進行計算,在[(0,qL)]區域內生產一個隨機序列[rj(j=1,2,…,L),]該序列為升序排序,如果[qi-1
(4) 交叉算子
交叉算子對于確保優良性能得以遺傳具有重要作用。本文使用的方法是在二進制的編碼過程中,使用單點交叉法,隨機抽取2個父代串中的交叉點并交換對應子串,在交叉點的第[k]位進行交叉操作的方法為:
在進行實數編碼時,使用算數交叉法,即通過兩個個體組合成新的染色體。兩個個體[Xli]和[Llj]是通過種群隨機抽取的,交叉算子為:
式中:[Xli]和[Xlj]是交叉前的一對個體;[Xli]和[Xlj]是交叉后的一對個體;[c]是0~1的隨機數。
本文使用的這種交叉方法因為能夠得到多種組合,所以使得兩個個體的信息得到充分交換對找到全局的最佳值是有利的[9]。
(5) 變異算子
保證種群多樣性的一個主要方法就是通過變異操作。本文在二進制編碼過程中使用基本位變異操作,實數編碼過程使用非均勻變異操作。非均勻變異操作中使用的新基因值[x′k]為:
式中:[Δ(t,Ukmax-ηk)]是[0,Ukmax-ηk]范圍內的隨機數;[Δ(t,ηk-Ukmin)]是[0,ηk-Ukmin]范圍內的隨機數。
(6) 確定交叉和變異概率
交叉概率[Pc]以及變異概率[Pm]對遺傳算法的優化性能具有至關重要的作用。本文使用自適應交叉概率和變異概率以不對適應值高的個體進行破壞的同時確保種群的多樣性:
式中:[λ1,][λ2,][λ3,][λ4]為0~1的常數;[fmax]是種群中適應值的最大值;[f]是種群中適應值的平均值;[f]是較大的交叉互換適應值;[f]是變異個體的適應值。
當種群陷入局部最小值時可以將交叉概率[Pc]以及變異概率[Pm]適當增加;當種群在解空間比較分散時,可以將交叉概率[Pc]以及變異概率[Pm]適當減??;另外,對于適應度較高的個體,應減小交叉概率[Pc]以及變異概率[Pm;]對于適應度較低的個體,應增加交叉概率[Pc]以及變異概率[Pm,]這樣交叉概率[Pc]以及變異概率[Pm]會跟隨種群個體的適應度改變而變化[10]。
2 實驗分析
本文使用Mitlincoln實驗室的KDD CUP99數據庫中的網絡異常流量數據進行實驗研究。主要選取常見的Alpha Anomaly異常流量、DDos異常流量、PortScan異常流量、NetworkScan異常流量、Worms異常流量以及FlashCrowd異常流量數據各100條。對各種流量數據樣本隨機抽取50條作為訓練樣本,另外50條用于對檢測模型進行性能測試[11]。
網絡異常流量類型與主要流特征對應關系如表1所示[12]。
為了對比本文研究的GA改進BP神經網絡網絡異常流量檢測方法的性能,使用常規BP神經網絡建立同樣的檢測模型。使用Matlab建立兩種方法的檢測模型,神經網絡采用3層結構,由異常類型及異常類型對應的特征流決定了神經網絡的輸入層有6個神經元,輸出層也有6個神經元,設定學習速率為0.1。常規BP神經網絡使用隨機函數對權值、閾值進行初始化設定,而本文研究的遺傳算法優化BP神經網絡則使用經過訓練得到的最佳個體對權值、閾值進行初始化設定[13]。
兩種算法的網絡誤差平方和響應曲線如圖2所示。
可以看出,本文研究的方法通過對個體交叉概率和變異概率進行調節,相比常規BP神經網絡能夠使用更短的速度達到誤差要求,迭代步數更少,訓練速度更快,效率更高。
針對上述測試數據,使用兩種方法進行測試。使用誤報率和檢測率對網絡異常檢測方法的檢測性能進行評價:
[誤報率=被誤報為異常的正常樣本數量正常樣本總數×100%] (13)
[檢測率=檢測出異常樣本數量異常樣本總數×100%] (14)
使用兩種算法建立的檢測模型的檢測率和誤報率對比如表2所示。
從測試結果可以看出:本文研究方法針對6種異常流量的平均檢測率為95.3%,平均誤報率為4.7%;而常規BP神經網絡算法建立的檢測模型的平均檢測率僅為81.8%,平均誤報率為18.2%。本文研究方法的檢測性能要明顯優于常規算法,說明本文提出的改進型遺傳算法對BP神經網絡的結構、權值以及閾值進行同步優化,避免了盲目選擇BP神經網絡結構參數帶來的問題,避免了常規BP神經網絡容易陷入局部最優解的問題。
3 結 語
由于網絡異常流量類型多樣復雜,在大型Internet供應商以及企業網絡中對異常進行檢測具有非常大的難度,而常規異常檢測具有檢測率低、誤報率高等問題,因此本文對網絡異常流量檢測方法進行深入研究。針對BP神經網絡算法存在容易陷入局部最優解,訓練時間長,效率低等問題,本文提出一種利用遺傳算法對BP神經網絡進行改進的方法以提高BP神經網絡算法性能。本文將二進制編碼和實數編碼兩種編碼方式進行結合,發揮其各自優點,實現對遺傳算法的改進。通過此種方法改進后,遺傳操作速度加快、全局搜索范圍增加,同時也提高了優化的精度等。通過遺傳算法對BP神經網絡的權值、閾值進行優化,加快了BP神經網絡的學習速率,提高訓練效率,極大改進了BP神經網絡的逼近能力以及泛化能力。
參考文獻
[1] 王濤,余順爭.基于機器學習的網絡流量分類研究進展[J].小型微型計算機系統,2012(5):1034?1040.
[2] 姚宏林,韓偉杰,吳忠望.基于模糊相對熵的網絡異常流量檢測方法研究[J].信息安全與技術,2014(8):16?18.
[3] 趙鑫.基于NetFlow的網絡流量異常檢測技術研究[D].保定:河北大學,2014.
[4] 李洪洋.淺析網絡異常流量分析檢測研究與實現[J].網絡安全技術與應用,2013(10):63?64.
[5] 燕發文,黃敏,王中飛.基于BF算法的網絡異常流量行為檢測[J].計算機工程,2013(7):165?168.
[6] 彭基偉,呂文華,行鴻彥,等.基于改進GA?BP神經網絡的濕度傳感器的溫度補償[J].儀器儀表學報,2013(1):153?160.
[7] 行鴻彥,鄒水平,徐偉,等.基于PSO?BP神經網絡的濕度傳感器溫度補償[J].傳感技術學報,2015(6):864?869.
[8] 何嘉.基于遺傳算法優化的中文分詞研究[D].成都:電子科技大學,2012.
[9] 夏玫.BP神經網絡泛化能力改進研究[D].太原:太原科技大學,2009.
[10] 周凌翱.改進BP神經網絡在模式識別中的應用及研究[D].南京:南京理工大學,2010.
[11] 吳小花.網絡異常流量識別技術的研究[D].長春:長春工業大學,2013.
神經網絡優化方法范文4
關鍵詞:公交客流 數據修正 徑向基神經網絡
中圖分類號:TP311.13 文獻標識碼:A 文章編號:1007-9416(2012)02-0117-01
1、引言
公交優化調度是智能公交系統的重要組成部分,也是提高城市公共交通運行效率的重要手段。近些年來,我國在公交調度方面進行了大量的研究,提 出各種各樣的優化調度模型。而這些模型都是建立在公交客流數據的基礎上的,公交客流數據的準確性直接影響到公交調度優化結果。因此,為了提高公交客流數據準確性,本文提出基于RBF神經網絡的公交客流修正方法,以便為公交優化調模型提供科學的數據基礎。
2、徑向基神經網絡理論
2.1 徑向基神經網絡結構
徑向基函數神經網絡(Radial Basic Function,RBF)是多維空間插值的傳統技術,由Powell 于1985年提出,并于1989年論證了RBF神經網絡對非線性連續函數的一致逼近性能。RBF神經網絡屬于前向神經網絡類型,由三層結構組成。第一層為輸入層,由信號源點結點組成;第二層為隱藏層,隱臧結點由所描述的問題決定;第三層為輸入層,主要功能為響應輸入模式。
2.2 徑向基神經網絡的學習算法
RBF神經網絡學習算法的主要問題是求解3個有效參數,分別為基函數中心,方差和隱含層到輸出層的權值。因為RBF基函數中心選取方法不同,RBF網絡有多種學習方法。本文根據所要解決的問題,選用自組織選取中心的RBF神經網絡的學習方法。該方法分別由無導師學習過程和有導師學習階段兩部分組成。具體學習算法這里不再贅述。
3、基于徑向基神經網絡客流連續化方法
公交客流數據包括乘客到達率,下車率,斷面通過率等。本文以乘客到達率作為公交客流數據的具體例子,對其進行基于徑向基神經網絡修正。其它客流數據連續化處理方法相同。單位時間內到達的乘客人數定義為乘客到達率,但按照定義方法求得的到達率為離散點,不能反映出其隨時間連續變化的規律。為了得到更滿意的結果,故本文采用以上介紹的徑向量神經網絡進行連續化處理。
具體的處理步驟如下:
(1)首先把統計時段的中間點取值為該時段的平均值。
(2)如果計算時,初始時刻到達率出現負值,則將初始時刻的平均值取半作為實際計算值。因為首發和末發時段一般呈現上升和下降的趨勢,如果變化率較大,采用徑向基神經網絡進行處理時,有可能使初始時刻和最后時刻的到達率出現負值。
(3)運用matlab神經網絡工具箱中newrb()函數構建徑向基神經網絡,sim()進行預測仿真,得出具體的曲線。
4、實例應用
如表1所示,為江蘇省鎮江市19路車某個工作日江蘇大學中門站7:00~8:00的上車人數。
由表1計算結果可知江蘇大學中門站7:10~7:20的乘客到達率為2.9人/min,而7:00~7:10到達率卻是1人/min,7∶20~7∶30的A1站到達率為2.4人/min。因此,該站在7∶10~7∶20到達率應為單調遞升,主要表現為7∶10附近的到達率要小于2.9人/min,7∶20附近的到達率要大于2.9人/min。所以如果7∶10~7∶15時段到達率選用2.9人/min,則必將降低公交調度優化結果的準確度。因此,為了克服上述問題的不足,得到更佳理想的結果,本文采用以上所述方法對其修正,結果如圖1所示。
5、結語
本文根據城市公交客流數據所存在的問題,采用RBF神經網絡對其進行科學修正,以便為公交調度優化模型提供更加準確的數據源。并以鎮江市19 路公交車江蘇大學中門站某個工作日的客流量數據計算實例,結果表明該方法科學可行,具有更加廣闊的適用面。
參考文獻
[1]楊慶芳,魏領紅,揚兆升.公交線路調度優化模型研究[J].合肥工業大學學報,2009,32(11):1643~1645.
神經網絡優化方法范文5
關鍵詞:電阻點焊;神經網絡;消音鋸片
0序言
電阻點焊過程是一個高度非線性,既有多變量靜態疊加又有動態耦合,同時又具有大量隨機不確定因素的復雜過程。這種復雜性使得傳統方法確定最佳工藝參數存在操作復雜、精度低等缺陷。
本文通過深入研究提出了一種神經網絡優化消音鋸片電阻點焊工藝參數方法。以試驗數據為樣本,通過神經網絡,建立焊接工藝參數與焊接性能之間的復雜模型,充分發揮神經網絡的非線性映射能力。為準確預測點焊質量提高依據。在運用試驗手段、神經網絡高度非線性擬合能力結合的方式,能在很大程度上克服傳統方法的缺陷,完成網絡的訓練、檢驗和最優評價,為電阻點焊過程的決策和控制提供可靠依據。
1原理
人工神經網絡是用物理模型模擬生物神經網絡的基本功能和結構,可以在未知被控對象和業務模型情況下達到學習的目的。建立神經網絡是利用神經網絡高度并行的信息處理能力,較強的非線性映射能力及自適應學習能力,同時為消除復雜系統的制約因素提供了手段。人工神經網絡在足夠多的樣本數據的基礎上,可以很好地比較任意復雜的非線性函數。另外,神經網絡的并行結構可用硬件實現的方法進行開發。目前應用最成熟最廣泛的一種神經網絡是前饋多層神經網絡(BP),通常稱為BP神經網絡。
神經網絡方法的基本思想是:神經網絡模型的網絡輸入與神經網絡輸出的數學關系用以表示系統的結構參數與系統動態參數之間的復雜的物理關系,即訓練。我們發現利用經過訓練的模型進行權值和閾值的再修改和優化(稱之為學習)時,其計算速度要大大快于基于其他優化計算的速度。
BP神經網絡一般由大量的非線性處理單元——神經元連接組成的。具有大規模并行處理信息能力和極強的的容錯性。每個神經元有一個單一的輸出,但可以把這個輸出量與下一層的多個神經元相連,每個連接通路對應一個連接權系數。根據功能可以把神經網絡分為輸入層,隱含層(一或多層),輸出層三個部分。設每層輸入為ui(q)輸出為vi(q)。同時,給定了P組輸入和輸出樣本 ,dp(p=200)。
(6)
該網絡實質上是對任意非線性映射關系的一種逼近,由于采用的是全局逼近的方法,因而BP網絡具有較好的泛化的能力。
我們主要是利用神經網絡的非線性自適應能力,將它用于消音鋸片的電阻點焊過程。訓練過程是:通過點焊實驗獲得目標函數與各影響因素間的離散關系,用神經網絡的隱式來表達輸入輸出的函數關系,即將實驗數據作為樣本輸入網絡進行訓練,建立輸入輸出之間的非線性映射關系,并將知識信息儲存在連接權上,從而利用網絡的記憶功能形成一個函數。不斷地迭代可以達到sse(誤差平方和)最小。
我們這次做的消音金剛石鋸片電焊機,通過實驗發現可以通過采用雙隱層BP神經網絡就可以很好的反應輸入輸出參數的非線性關系。輸入神經元為3,分別對應3個電阻點焊工藝參數。輸出神經元為1,對應焊接質量指標參數。設第1隱含層神經元取為s1,第2隱含層神經元取為s2。輸入層和隱含層以及隱層之間的激活函數都選取Log-Sigmoid型函數,輸出層的激活函數選取Pureline型函數。
2點焊樣本的選取
影響點焊質量的參數有很多,我們選取點焊時的控制參數,即點焊時間,電極力和焊接電流,在固定式點焊機上進行實驗。選用鋼種為50Mn2V,Φ600m的消音型薄型圓鋸片基體為進行實驗。對需要優化的參數為點焊時間,電極力和焊接電流3個參數進行的訓練。最后的結果為焊接質量,通常以鋸片的抗拉剪載荷為指標。
建立BP神經網絡時,選擇樣本非常重要。樣本的選取關系到所建立的網絡模型能否正確反映所選點焊參數和輸出之間的關系。利用插值法,將輸入變量在較理想的區間均勻分布取值,如果有m個輸入量,每個輸入量均勻取n個值(即每個輸入量有m個水平數), 則根據排列組合有nm個樣本。對應于本例,有3個輸入量,每個變量有5個水平數,這樣訓練樣本的數目就為53=125個。
我們的實驗,是以工人的經驗為參考依據,發現點焊時間范圍為2~8s,電極力范圍為500~3000N,點焊電流范圍為5~20kA時,焊接質量比較好。我們先取點焊電流,電極力為定量,在合理的范圍內不斷改變點焊時間,得到抗拉剪載荷。如此,可以得到不同點焊電流和電極力的抗拉剪載荷。根據點焊數據的情況,我們共選用200組數據。部分測試數據如表1:
神經網絡建模的關鍵是訓練,而訓練時隨著輸入參數個數的增加樣本的排列組合數也急劇增加,這就給神經網絡建模帶來了很大的工作量,甚至于無法達到訓練目的。
3神經網絡
我們用200組訓練樣本對進行神經網絡訓練,以err_goal=0.01為目標。調用Matlab神經網絡工具箱中的函數編程計算,實現對網絡的訓練,訓練完成后便得到一個網絡模型。
程序如下:
x1=[2.1 2.5 3 3.5 4……]; %點焊時間輸入,取200組
x2=[1.3 1.5 1.9 2.1 2.3……];%電極力輸入,取200組
x3=[9 10 11 12 13……];%點焊電流輸入,取200組
y=[2756 3167 3895 3264 2877……]; %輸出量,取200組
net=newff([1 10;0.5 3;5 20],[10 10 1],{'tansig''tansig''purelin'});
%初始化網絡
net.trainParam.goal = 0.01;%設定目標值
net=train(net,[x1;x2;x3],y);%訓練網絡
figure; %畫出圖像
選取不同的s1,s2,經過不斷的神經網絡訓練,發現當s1=8,s2=6時,神經網絡可以達到要求。工具箱示意圖如下圖1。
圖 1工具箱示意圖
工具箱示意圖非常清晰地表示了本實驗的神經網絡的輸入,輸出以及訓練的過程。
神經網絡的訓練結果,如圖2所示:
圖2神經網絡的學習過程
圖中可以看出雙層網絡訓練的sse在訓練100次時,已經接近0.0001,效果較理想。
為了驗證經過訓練的網絡模型的泛化能力,在輸入變量所允許的區域內又另選多個樣本進行了計算。發現:利用BP神經網絡模型計算的測試輸出與期望輸出值相符,誤差小于2%。
在已經訓練好的網絡中找出最大值:
for i=2:10 %點焊時間選擇
for j=0.5:0.1:3%電極力選擇
fork=5:0.1:20%點焊電流選擇
a=sim(net,[i,j,k]);%仿真
ifa>n %比較仿真結果與最大值,取最大值n=a;
i(1)=i;%最大值的時間
j(1)=j;%最大值的電極力
k(1)=k; %最大值的電流
end
end
end
end
將i(1),j(1),k(1)以及n輸出,n為最大值。得到點焊時間為3.4s,電極力為12.7kN,點焊電流為11.8kA,此時的抗剪拉剪載荷為4381N,為訓練結果的最大值。將點焊時間為3.4s,電極力為12.7kN,點焊電流為11.8kA在點焊機上進行實驗,得到結果為4297N。并且通過與實際的結果相比較,發現誤差也在2%以內。
4結論
1)本文采用了插值法作為選取BP神經網絡訓練樣本的方法。并且在數據變化劇烈的地方多選取了75組數據,這樣可以得到較高精度的網絡模型,使點焊模型的可行性。
2)基于此方法建立了三個點焊參數的BP神經網絡模型,而且所建的BP模型具有較高的精度,可以很好的描述了這三個點焊參數與點焊質量的映射關系。
3)由于神經網絡模型將系統結構參數與傳統動態特性參數之間的物理關系,反映為神經網絡模型的網絡輸入與網絡輸出的數學關系,因此,在神經網絡模型上進行結構修正與優化比在其他模型上更直接,簡單與高效。
本文采用神經網絡的方法優化復合消音鋸片的點焊工藝參數,為分析點焊質量提供了很好的輔助手段。通過與以前工藝相比較,提高了點焊質量。
參考文獻
[1] 方平,熊麗云.點焊電流有效值神經網絡實時計算方法研究.[J].機械工程學報,2004(11).148-152.
神經網絡優化方法范文6
建筑工程的系統性和復雜性提升了工程造價估算的難度,基于神經網絡的工程造價估算方法能夠提升工程造價估算的準確性。本文從傳統的工程造價估算方法入手,對基于神經網絡的工程造價估算方法及其Excel實現進行研究。
【關鍵詞】神經網絡 工程造價 估算方法 Excel實現
在建筑行業不斷發展的背景中,建筑企業面臨的競爭壓力越來越大。對于建筑企業而言,通過建筑工程成本的有效控制,實現所獲經濟效益的提升能夠對自身市場競爭力的提升產生相應的促進作用。選擇合理的工程造價估算方法具有一定的必要性。
1 傳統的工程造價估算方法
應用傳統工程造價估算方法進行估算,要求建筑工程的成本函數是一個具有確定性特點的數學形式,并且這個成本函數應該是對可利用歷史數據的最佳擬合。這些要求對傳統工程造價估算方法的精確度產生了不良影響,進而對該方法的實際應用產生相應的限制。
2 基于神經網絡的工程造價控制估算方法及其Excel實現
2.1 神經網絡的優點和應用
神經網絡是由一定數量的并行處理單元組成的系統,不同處理單元的實際處理方式和連接強度是影響神經網絡功能的主要因素。在神經網絡中,不同神元之間的相互作用可以實現處理信息的目的。神經網絡具有時間連續性、高度非線性以及規模大的特點,神經網絡包含優化計算、處理知識以及聯想記憶等多種功能。神經網絡在電子科技領域中的應用主要集中在圖像和信號處理以及模式識別中。以某個500字符的代碼段為例,該代碼段可能是Python、Java或者C++。當需要通過程序的構造對該代碼段進行識別編寫時,構造神經網絡的方法更加有效。
2.2 基于神經網絡工程造價控制估算方法的合理性
神經網絡的優勢在于,它可以近似實現任意空間的數學映射。神經網絡的這種特點使得它在需要辨識數據模式的困難任務中得到了廣泛應用。神經網絡可以分別對實時數據和歷史資料進行訓練,這種特點為神經網絡在工程造價估算中的應用提供了可能。
2.3 神經網絡電子表格模擬程序
神經網絡電子表格模擬程序主要包括以下幾個步驟:
2.3.1 輸入輸出信息模塊
在該模型中,主要包含基礎基礎類型、結構類型、建造年份、工期、建址、層高、層數、內、外裝修門窗共9個輸入單元,還包含每平方米造價這一輸出單元,以及4個測試樣本和6個訓練樣本。為了將輸入單元、輸出單元的數據更好地展示出來,可以在Excel中建立一個表格。
2.3.2 輸入數據初始化
當表格構建完成之后,可以將相關數據輸入進行,為了便于神經網絡對數據進行合理處理,需要將表格中第一個模塊中的輸入數據調整至[-1,1]范圍中。當第一個模塊構造完成之后,為了簡化第二個模塊的構造時間和步驟,可以利用線性公式對第一個模塊的參數值進行合理調整,這個過程中使用的線性公式如下所示。
2.3.3 構建權重模塊I
就輸出節點、輸入節點以及隱層節點之間的數目關系而言,輸出節點與輸入節點數量之和的一般是隱層節點的實際設置數目。在權重模塊中,需要將所有的數值初始化為1.0。
2.3.4 當權重模塊I構建完成之后
需要考慮隱層節點的輸出模塊。這個步驟主要需要根據神經網絡的操作模型進行。
2.3.5 構建權重模塊II
該模塊的構建步驟與第三步中的做法相同,但在這個模塊中,需要在單一的輸出節點和隱層節點之間建立連接。
2.3.6 神經網絡的最終輸出
這個步驟與第四步類似。
2.3.7 對神經網絡的輸出值進行反調整,并對誤差進行有效計算
神經網絡輸出值的反調整范圍集中在初始賦值范圍中。
2.4 神經網絡的訓練過程
當神經網絡電子表格模擬完成之后,需要對神經網絡進行訓練,也可以將這個過程看成是權值的優化過程。由于權值優化過程具有一定的復雜性特點,因此可以將Excel中的Solver程序應用到這種預測方法中,與其他算法相比,這種算法的優勢表現為可以直接在表格中運行,簡化了操作步驟,實現該預測方法掌握難度的有效降低。運用這種預測方法進行操作可以發現,網絡運行結果滿意,應用這種預測方法的預測誤差小于0.4%。
2.5 分析參數變化對模型預測結果的敏感性
用戶通常無法確定能夠對特定工程進行精確描述的特征因素是什么,因此,為了保證模型的實用性,需要對參數變化對模型預測結果的敏感性進行有效測定。測定參數變化對模型預測結果敏感性的較為復雜,首先,用戶需要將工程中無法肯定的某一特征因素或幾個特征因素的組合選擇出來,然后使用戶選取的參數在初始值周圍逐漸變動,并將參數變動范圍控制在25%之內,為了更好地對參數對模型預測結果的敏感性進行分析,需要對樣本資料的數量進行合理控制。分析參數對模型預測結果名感性的界面如圖1所示。在實際分析過程中,需要將第一個模塊公式變為分別對多個分析資料進行計算,結合計算結果得出計算結果的標準差和平均值,并將估計成本與標準差和平均值進行比較。就平均值而言,在選定參數發生變化的情況下,可以通過敏感性分析對模塊中輸入參數的實際重要性進行有效判斷,通過不同參數的分別變化,分別對其進行敏感性分析,將所得標準差和平均值與最初估計進行比較,進而得出模塊中輸入參數的實際重要性判斷結果。
3 結論
隨著建筑企業面臨競爭壓力的不斷增大,建筑企業對建筑工程成本控制越來越重視。有效工程造價估算方法的使用可以幫助建筑企業獲得更多的經濟效益,傳統的工程造價估算方法精確度較低,基于神經網絡的工程造價估算方法可以保證工程造價估算結果的準確性。
參考文獻
[1]孫金麗,鄭立群,張世英.基于神經網絡的工程造價估算方法及其Excel實現[J].基建優化,2003(01):38-40.
[2]吳子燕.基于人工神經網絡的高校建筑工程造價預測系統的研究與應用[D].西安:西北工業大學,2006.
[3]趙欣.基于BP神經網絡的地鐵土建工程造價估算方法研究[D].北京:北京交通大學,2008.