王磊 王汝涼 曲洪峰 玄揚(yáng)
摘要:針對傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)收斂速度慢且容易陷入局部極小值的缺點(diǎn),通過實(shí)驗(yàn)對其進(jìn)行分析并提出可以提高算法快速性和有效性的改進(jìn)方法。介紹了BP神經(jīng)網(wǎng)絡(luò)的工作原理、基本流程、算法應(yīng)用領(lǐng)域和在該領(lǐng)域下的優(yōu)缺點(diǎn),以及改進(jìn)方法的具體步驟與改進(jìn)后的優(yōu)勢。最后通過仿真實(shí)驗(yàn)驗(yàn)證了改進(jìn)算法的有效性。
關(guān)鍵詞:神經(jīng)網(wǎng)絡(luò);BP神經(jīng)網(wǎng)絡(luò);BP算法;
DOIDOI:10.11907/rjdk.161429
中圖分類號:TP312
文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2016)005-0038-03
0 引言
人工神經(jīng)網(wǎng)絡(luò)是一種模擬人腦神經(jīng)網(wǎng)絡(luò),實(shí)現(xiàn)對信息并行處理的數(shù)學(xué)模型。該網(wǎng)絡(luò)具有并行處理信息、容錯性與非線性能力強(qiáng)等優(yōu)點(diǎn)[1]。神經(jīng)網(wǎng)絡(luò)一般由多個簡單的神經(jīng)元經(jīng)過復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)組合在一起,可解決非線性問題。BP神經(jīng)網(wǎng)絡(luò)是神經(jīng)網(wǎng)絡(luò)中應(yīng)用最為廣泛的算法之一,其結(jié)構(gòu)簡單、易于理解,采用信息的正向傳播和誤差的反向傳播。BP神經(jīng)網(wǎng)絡(luò)的非線性映射能力非常出色,使該網(wǎng)絡(luò)可以處理任意的非線性函數(shù)。但是傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)也存在收斂速度慢、穩(wěn)定性差、具有極小值等缺點(diǎn),很多學(xué)者對其進(jìn)行了改進(jìn),但是大多以犧牲效率為代價(jià)。
文獻(xiàn)[2]提出的改進(jìn)方法是通過學(xué)習(xí)率自適應(yīng)來加快收斂速度,雖然改進(jìn)后的算法可以在速度上得到提高,但并不能解決存在極小值問題;文獻(xiàn)[3]和文獻(xiàn)[4]提出通過尋求最佳學(xué)習(xí)因子來改變權(quán)值,雖然加快了收斂速度,但是也沒有解決極小值問題;文獻(xiàn)[5]提出的改進(jìn)方法是增加極限學(xué)習(xí)機(jī),使網(wǎng)絡(luò)具有較好的泛化能力,但是降低了收斂速度。
針對以上問題,本文提出動態(tài)修正權(quán)值和動態(tài)增加隱含層層數(shù)的改進(jìn)方法。傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)只是誤差的反向傳播,通過誤差來修正各層權(quán)值,使網(wǎng)絡(luò)更加穩(wěn)定。本文在此基礎(chǔ)上采用了動態(tài)增加隱含層層數(shù)的方法,使網(wǎng)絡(luò)具有更好的健壯性,并避免了極小值問題。通過改進(jìn)可以使網(wǎng)絡(luò)快速達(dá)到穩(wěn)定狀態(tài),具有較好的收斂效果,避免了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)需要多次修改網(wǎng)絡(luò)結(jié)構(gòu)的情況,減少了學(xué)習(xí)時(shí)間。因此,改進(jìn)后的算法具有較快的收斂速度。
1 BP神經(jīng)網(wǎng)絡(luò)方法
BP神經(jīng)網(wǎng)絡(luò)又稱為誤差反向傳播神經(jīng)網(wǎng)絡(luò),由輸入層、隱含層、輸出層及各層之間的連接權(quán)值組合成功能強(qiáng)大的網(wǎng)絡(luò)結(jié)構(gòu)[6]。BP網(wǎng)絡(luò)由于其結(jié)構(gòu)特性可以模擬任意非線性輸入輸出關(guān)系,操作簡單,因此得到了廣泛應(yīng)用。其學(xué)習(xí)規(guī)則是最速下降法,通過實(shí)際輸出與期望輸出之間的誤差反向傳播,來調(diào)整各層連接權(quán)值和閾值,使網(wǎng)絡(luò)具有更好的健壯性,且網(wǎng)絡(luò)的誤差平方和最小。其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
2 BP神經(jīng)網(wǎng)絡(luò)方法改進(jìn)
2.1 傳統(tǒng)BP網(wǎng)絡(luò)缺點(diǎn)
傳統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)簡單、應(yīng)用廣泛,是神經(jīng)網(wǎng)絡(luò)中最受歡迎的應(yīng)用之一,但其仍然存在一些不足,具體如下:①網(wǎng)絡(luò)收斂速度慢;②容易陷入極小值狀態(tài);③泛化能力差。
2.2 BP神經(jīng)網(wǎng)絡(luò)改進(jìn)
通過對傳統(tǒng)BP算法的分析,本文在誤差反向傳播修改各層權(quán)值的基礎(chǔ)上,提出了根據(jù)誤差大小動態(tài)增加隱含層層數(shù)的改進(jìn)。具體改進(jìn)方法如下:
(1)初始網(wǎng)絡(luò)只選擇單隱含層,并且隱含層的網(wǎng)絡(luò)節(jié)點(diǎn)個數(shù)通以過下的計(jì)算公式得到。其中,n表示隱含層節(jié)點(diǎn)數(shù),ni表示輸入神經(jīng)元個數(shù),n0表示輸出神經(jīng)元個數(shù),a表示1~10之間的常數(shù)。
2.3 改進(jìn)后的優(yōu)點(diǎn)
改進(jìn)后的優(yōu)點(diǎn)包括:①避免了算法易于陷入極小值的情況,使網(wǎng)絡(luò)輸出更加穩(wěn)定;
②可以增加網(wǎng)絡(luò)收斂速度,使更快地達(dá)到預(yù)期結(jié)果;
③使網(wǎng)絡(luò)具有更廣泛的應(yīng)用范圍,且泛化能力得到明顯提高。
3 實(shí)驗(yàn)仿真及結(jié)果對比
經(jīng)過2 000組樣本數(shù)據(jù)實(shí)驗(yàn)對比之后(見表1),發(fā)現(xiàn)改進(jìn)算法的結(jié)果比改進(jìn)前具有明顯優(yōu)勢,具體分析如下:①改進(jìn)前迭代次數(shù)接近500,而改進(jìn)后迭代次數(shù)不到300,比改進(jìn)前減少了近一倍。很明顯,改進(jìn)后的算法可以有效提高神經(jīng)網(wǎng)絡(luò)收斂速度,使網(wǎng)絡(luò)可以快速達(dá)到預(yù)期的輸出值;②經(jīng)過大量實(shí)驗(yàn)驗(yàn)證,改進(jìn)后的算法沒有出現(xiàn)極小值情況,但是改進(jìn)前的算法在經(jīng)過800組實(shí)驗(yàn)后出現(xiàn)了一次極小值情況,可見改進(jìn)算法對于避免網(wǎng)絡(luò)收斂極小值比較有效;③據(jù)實(shí)驗(yàn)統(tǒng)計(jì),改進(jìn)前的數(shù)據(jù)識別率為70%,改進(jìn)后達(dá)到98.3%。可見改進(jìn)后算法的識別率明顯提高,對樣本有很好的分類,有助于對數(shù)據(jù)的有效挖掘。
4 結(jié)語
本文首先介紹了BP神經(jīng)網(wǎng)絡(luò)的工作原理,分析了傳統(tǒng)網(wǎng)絡(luò)的優(yōu)缺點(diǎn),并根據(jù)存在的部分缺點(diǎn)提出了改進(jìn)思路,最后通過實(shí)驗(yàn)對比改進(jìn)前后的一些數(shù)據(jù),顯示了改進(jìn)后的優(yōu)勢。通過算法的改進(jìn),可以明顯地提高網(wǎng)絡(luò)精度,使網(wǎng)絡(luò)有很好的輸出,對于復(fù)雜樣本集具有很好的非線性映射。在今后的應(yīng)用中,還將發(fā)現(xiàn)新的問題并對該算法繼續(xù)完善優(yōu)化。
參考文獻(xiàn):
[1]劉毅娟.人工神經(jīng)網(wǎng)絡(luò)概述[J].電子測試,2015(6):74-75.
[2]劉載文,等.過程神經(jīng)元網(wǎng)絡(luò)學(xué)習(xí)算法及軟測量方法的研究[J].系統(tǒng)仿真學(xué)報(bào),2007, 19(70):1456-1459.
[3]王益群,等.神經(jīng)網(wǎng)絡(luò)軟測量模型中全共軛梯度算法研究[J].機(jī)械工程學(xué)報(bào),2005, 41(6): 97-101.
[4]WANG YIQUN, et al.Appraising and improving on the training algorithm of neural network in the soft measurement system of dynamic flow[C].ICFP.HangZhou, China, 2005:102-108.
[5]HUANG GUANG-BIN, CHEN LEI,CHEE-KHEONG SIEW.Universal approximation using incremental constructive feedforwardnet works with random hidden nodes[J].IEEE Transactions on Neural Networks,2006,17(4):879-892.
[6]樊振宇.BP神經(jīng)網(wǎng)絡(luò)模型與學(xué)習(xí)算法[J].軟件導(dǎo)刊,2011(7): 66-68.
[7]尤樹華.基于神經(jīng)網(wǎng)絡(luò)的強(qiáng)化學(xué)習(xí)研究概述[J].電腦知識與技術(shù),2012(10):6782-6786.
[8]劉毅娟.人工神經(jīng)網(wǎng)絡(luò)概述[D].唐山:華北理工大學(xué),2015.
[9]武美先.BP神經(jīng)網(wǎng)絡(luò)及其改進(jìn)[D].太原:太原科技大學(xué),2005.
(責(zé)任編輯:黃 健)
Abstract:For the disadvantages that traditional BP neural network is slow convergence speed and easily trapped in local minima shortcomings, the article analyzes it through the experiment and puts forward improved method that can improve the quickness and the effectiveness of algorithm.This paper systematically introduces the working principle and the basic process of BP neural network , application field of the algorithm and the advantages and disadvantages under it,finally validates the effectiveness of the improved algorithm through the simulation experiment.
Key Words: Neural Network;BP Algorithm;Classification; Prediction