BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法的研究_第1頁
BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法的研究_第2頁
BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法的研究_第3頁
BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法的研究_第4頁
BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法的研究_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法的研究劉彩紅資助項(xiàng)目:西安工業(yè)大學(xué)北方信息工程學(xué)院院長(zhǎng)科研基金項(xiàng)目(BXXJJ-1112)作者簡(jiǎn)介:劉彩紅(1980-),女,陜西人,碩士研究生,研究方向?yàn)槿斯ど窠?jīng)網(wǎng)絡(luò)及其應(yīng)用。Email: 手機(jī):1360 925 0662; (西安工業(yè)大學(xué)北方信息工程學(xué)院,西安)摘 要:(目的)本文針對(duì)BP算法收斂速度慢的問題,提出一種改進(jìn)的BP算法。(方法)該算法結(jié)合生物神經(jīng)元學(xué)習(xí)與記憶形成的特點(diǎn),針對(duì)特定的訓(xùn)練樣本,只激發(fā)網(wǎng)絡(luò)中的部分神經(jīng)元以產(chǎn)生相應(yīng)的輸出,而未被激發(fā)的神經(jīng)元產(chǎn)生的輸出則與目標(biāo)輸出相差較大,那么我們只需要對(duì)未被激發(fā)的神經(jīng)元權(quán)值閾值進(jìn)行調(diào)整。利用距離來度量訓(xùn)練樣本與神

2、經(jīng)元權(quán)值之間的關(guān)系,可以找到未被激發(fā)的神經(jīng)元。所以本論文提出的算法是對(duì)局部神經(jīng)元權(quán)值閾值的調(diào)整,(結(jié)果)通過實(shí)驗(yàn)表明該算法有助于加快網(wǎng)絡(luò)的學(xué)習(xí)速度。關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)算法,距離,權(quán)值閾值調(diào)整The Study of Algorithm of BP Neural NetworkLIU Cai-hong(Xian Technological University North Institute of Information Engineering ,Xian China)Abstract:The paper proposed an improved BP algorithm. Accord

3、ing to the characteristics of biological neuron in learning and memory formation, only some neurons were stimulated to produce the output for the specific training samples, while the other part of the neurons werent stimulated. There are large difference between this part of the neurons output and t

4、arget, and then we need this part neurons weight and threshold value to adjust. Use to measure the distance from the training sample and the relationship between the weights of each neuron, can find not stimulated neurons.Therefore the algorithm proposed in this paper only adjust the weight and the

5、threshold value of the local neurons, and this can accelerate the learning speed of the network.Keywords: BP Neural Network, Learning Algorithm, , Distance, Weight and Threshold Adjustment1 引言傳統(tǒng)BP算法是一種利用實(shí)際輸出與期望輸出之間的誤差對(duì)網(wǎng)絡(luò)的各層連接權(quán)值和各結(jié)點(diǎn)的閾值由后向前逐層進(jìn)行校正的一種監(jiān)督式學(xué)習(xí)方法。它根據(jù)最小二乘原理和梯度搜索技術(shù),將學(xué)習(xí)過程分為輸入樣本的正向傳播和誤差的反向傳播兩個(gè)階段

6、。輸入樣本從輸入層傳遞給隱藏層各結(jié)點(diǎn),經(jīng)過各隱藏層用激勵(lì)函數(shù)逐層處理后傳遞給輸出層,若輸出層的實(shí)際輸出與期望輸出的誤差達(dá)不到預(yù)定要求,則將誤差沿著原連接通路反向傳播,同時(shí)根據(jù)誤差來調(diào)整各層的連接權(quán)值和閾值,使實(shí)際輸出與期望輸出的誤差逐漸減小。傳統(tǒng)BP(Back Propagation)算法的性能依賴于初始條件,學(xué)習(xí)速度慢,學(xué)習(xí)過程易陷入局部極小。近年來,人們根據(jù)實(shí)際應(yīng)用的需要對(duì)傳統(tǒng)BP算法做了許多改進(jìn),主要有采用自適應(yīng)學(xué)習(xí)率、與遺傳算法結(jié)合1-2和可調(diào)隱層結(jié)構(gòu)3-4等,這些方法在一定程度上優(yōu)化了BP算法。但以往大多改進(jìn)算法,在誤差的反向傳播階段也就是訓(xùn)練的第二階段,是對(duì)所有神經(jīng)元的權(quán)值閾值都進(jìn)

7、行修改的。針對(duì)不同的輸入,神經(jīng)網(wǎng)絡(luò)激發(fā)不同的神經(jīng)元,所以可以在訓(xùn)練的第二階段修改部分神經(jīng)元的權(quán)值閾值。但本文對(duì)此的研究目前僅限于只有一個(gè)隱層的BP神經(jīng)網(wǎng)絡(luò)。2 基于局部權(quán)值閾值調(diào)整算法的改進(jìn)思想神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的過程,實(shí)際上是根據(jù)一定的學(xué)習(xí)算法調(diào)節(jié)網(wǎng)絡(luò)中各連接權(quán)值的過程。這是因?yàn)?,神?jīng)網(wǎng)絡(luò)是通過神經(jīng)元之間的連接,來存儲(chǔ)信息或知識(shí)的6。也就是說,神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)得到的知識(shí)是存儲(chǔ)在連接權(quán)上的。并且依據(jù)生物神經(jīng)元學(xué)習(xí)與記憶形成的特點(diǎn)5,針對(duì)特定的訓(xùn)練樣本,只激發(fā)網(wǎng)絡(luò)中的部分神經(jīng)元以產(chǎn)生相應(yīng)的輸出,而未被激發(fā)的神經(jīng)元產(chǎn)生的輸出則與目標(biāo)輸出相差較大,那么我們就需要對(duì)未被激發(fā)的神經(jīng)元的權(quán)值閾值進(jìn)行調(diào)整。對(duì)于一個(gè)神

8、經(jīng)元是否被激發(fā),可以通過訓(xùn)練樣本和該神經(jīng)元權(quán)值之間的關(guān)系,來確定該神經(jīng)元是否被這些特定的訓(xùn)練樣本所激發(fā),從而可以得知網(wǎng)絡(luò)每次學(xué)習(xí)過程中需要調(diào)節(jié)哪一部分神經(jīng)元。所以本文提出的改進(jìn)BP算法中對(duì)隱層神經(jīng)元權(quán)值閾值的調(diào)整就只是對(duì)未被激發(fā)的隱層神經(jīng)元進(jìn)行調(diào)整,而不是傳統(tǒng)的BP算法需要對(duì)所有隱層神經(jīng)元進(jìn)行調(diào)整。3 提出的改進(jìn)BP算法3.1提出的算法描述本文提出的改進(jìn)BP算法具體描述如下:(1)所有的輸入層神經(jīng)元無條件為獲勝神經(jīng)元。(2)隱層的神經(jīng)元之間進(jìn)行競(jìng)爭(zhēng)??疾燧斎胂蛄亢碗[層神經(jīng)元與輸入層的權(quán)值即之間的關(guān)系,關(guān)系較遠(yuǎn)的隱層神經(jīng)元未被激發(fā)。因?yàn)殛P(guān)系較遠(yuǎn),說明神經(jīng)元記憶的內(nèi)容與輸入向量之間的差距較大,則它

9、的輸出值就會(huì)和目標(biāo)值有所偏離,所以需要調(diào)整與它相連的權(quán)值閾值,那么該神經(jīng)元就是競(jìng)爭(zhēng)獲勝的隱層神經(jīng)元。(3)所有的輸出層神經(jīng)元無條件為獲勝神經(jīng)元。對(duì)BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法進(jìn)行如下修改:針對(duì)訓(xùn)練樣本,神經(jīng)元權(quán)值閾值的調(diào)整只發(fā)生在獲勝神經(jīng)元相連的路徑上。傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)中,針對(duì)每個(gè)訓(xùn)練樣本需要對(duì)網(wǎng)絡(luò)中所有神經(jīng)元的權(quán)值閾值進(jìn)行調(diào)整。3.2 距離和相似系數(shù)訓(xùn)練樣本和神經(jīng)元權(quán)值這兩個(gè)變量之間的關(guān)系,可以通過距離和相似系數(shù)進(jìn)行度量,那么在隱含層神經(jīng)元的競(jìng)爭(zhēng)中就需要用到距離和相似系數(shù),這里加以簡(jiǎn)單介紹,具體可以參見7。要研究變量之間的關(guān)系,目前用得最多的方法有兩個(gè):一種方法是用相似系數(shù),性質(zhì)越接近的變量,它們

10、的相似系數(shù)的絕對(duì)值越接近1,而彼此無關(guān)的變量,它們的相似系數(shù)的絕對(duì)值接近于零。另一種方法是將一個(gè)向量看作P維空間的一個(gè)點(diǎn),并在空間定義距離,距離越近的點(diǎn)歸為一類,距離較遠(yuǎn)的點(diǎn)歸為不同的類。但相似系數(shù)和距離有各種各樣的定義,而這些定義與變量的類型關(guān)系極大。由于實(shí)際問題中,遇到的指標(biāo)有的是定量的(如長(zhǎng)度、重量等),有的是定性的(如性別、職業(yè)等),因此將變量(指標(biāo))的類型按間隔尺度、有序尺度和名義尺度這三種尺度來劃分。不同類型的變量,在定義距離和相似系數(shù)時(shí),其方法有很大的差異,使用時(shí)必須注意。對(duì)于間隔尺度的距離,可以通過明氏(Minkowski)距離公式來度量。對(duì)相似系數(shù)這里不再作介紹。明氏(Min

11、kowski)距離 當(dāng)時(shí) 即絕對(duì)距離當(dāng)時(shí) 即歐氏距離當(dāng)時(shí) 即切比雪夫距離當(dāng)變量的測(cè)量值相差懸殊時(shí),采用明氏距離并不合理,常需要先對(duì)數(shù)據(jù)標(biāo)準(zhǔn)化,然后用標(biāo)準(zhǔn)化后的數(shù)據(jù)計(jì)算距離。明氏距離特別是歐式距離,是人們較為熟悉的也是使用最多的距離。但明氏距離存在不足之處,主要表現(xiàn)在兩個(gè)方面:一,它與各指標(biāo)的量綱有關(guān);第二,它沒有考慮指標(biāo)之間的相關(guān)性。另外還有馬氏(Mahalanobis)距離、蘭氏(Canberra)距離,和明氏距離一樣,它們的定義都是適用于間隔尺度變量的,如果變量是有序尺度或名義尺度時(shí),也有一些定義距離的方法。具體應(yīng)用時(shí),要注意根據(jù)變量的類型選擇合適的度量公式。本文的實(shí)驗(yàn)中用到的數(shù)據(jù)沒有量綱

12、的差距,并且也都只有一兩個(gè)指標(biāo),所以選用歐氏距離作為度量公式。3.3 提出算法的訓(xùn)練過程基于局部權(quán)值閾值調(diào)整的BP算法,是在傳統(tǒng)BP算法的第二階段加入了隱層神經(jīng)元的競(jìng)爭(zhēng),權(quán)值閾值的調(diào)整就只發(fā)生在與獲勝神經(jīng)元相連弧線的路徑上。改進(jìn)算法的具體步驟如下:1對(duì)權(quán)系數(shù)置初值。對(duì)各層的權(quán)系數(shù)置一個(gè)較小的非零隨機(jī)數(shù),但其中。2輸入一個(gè)樣本,以及對(duì)應(yīng)期望輸出。3計(jì)算各層的輸出對(duì)于第k層第i個(gè)神經(jīng)元的輸出,有: , , 4計(jì)算學(xué)習(xí)誤差(1)計(jì)算輸入向量和隱層神經(jīng)元與輸入層的權(quán)值即之間的距離,距離較大的隱層神經(jīng)元就為競(jìng)爭(zhēng)獲勝的神經(jīng)元。(2)求各層的學(xué)習(xí)誤差。對(duì)于輸出層有km,有對(duì)于隱層,僅計(jì)算獲勝神經(jīng)元的學(xué)習(xí)誤差

13、,i為獲勝神經(jīng)元。 5修正局部權(quán)系數(shù)和閥值只調(diào)整與獲勝神經(jīng)元相連弧線的權(quán)值和閥值 其中: 6當(dāng)求出了各層各個(gè)權(quán)系數(shù)之后,可按給定品質(zhì)指標(biāo)判別是否滿足要求。如果滿足要求,則算法結(jié)束;如果未滿足要求,則返回(3)執(zhí)行。這個(gè)學(xué)習(xí)過程,對(duì)于任一給定的樣本和期望輸出都要執(zhí)行,直到滿足所有輸入輸出要求為止。3.4 討論圖1 隱層神經(jīng)元競(jìng)爭(zhēng)示意圖提出算法的局部調(diào)節(jié)性可用圖1簡(jiǎn)單說明,圖1中,灰色隱層神經(jīng)元是獲勝神經(jīng)元,每一次學(xué)習(xí)過程對(duì)學(xué)習(xí)誤差、權(quán)值的調(diào)節(jié)量以及權(quán)值的調(diào)節(jié)就只是對(duì)圖中實(shí)線相連的部分,虛線的部分就不做調(diào)節(jié)。原BP算法在每一次輸入輸出之后更新網(wǎng)絡(luò)的所有權(quán)值,每次都需調(diào)整從輸入層到隱層的(n+1)N

14、個(gè)連接權(quán)和隱層到輸出層的(N1)m個(gè)連接權(quán)。設(shè)p為選擇的隱節(jié)點(diǎn)數(shù)(1pN)。用改進(jìn)的訓(xùn)練算法對(duì)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí),每次僅需調(diào)整輸入層到隱層的(n+1)p個(gè)連接權(quán)和隱層到輸出層的(p1)m個(gè)連接權(quán)。提出訓(xùn)練算法在每次輸入輸出之后,僅需更新選擇的隱單元參數(shù)。4 仿真實(shí)驗(yàn)在本節(jié),我們進(jìn)行仿真實(shí)驗(yàn),用本章提出的算法和傳統(tǒng)的BP算法進(jìn)行對(duì)比。給出兩個(gè)例子:第一個(gè)是函數(shù)逼近的例子,第二個(gè)是三分類的例子。4.1 函數(shù)逼近的例子本實(shí)例用函數(shù)逼近問題來評(píng)價(jià)提出的算法的性能??紤]如下Hermit多項(xiàng)式的逼近問題: 訓(xùn)練樣本產(chǎn)生方式如下:樣本數(shù)為N=100,其中樣本輸入服從區(qū)間內(nèi)的均勻分布,樣本輸出為,為添加的噪聲,服從

15、均值為0,標(biāo)準(zhǔn)差為0.1的正態(tài)分布。產(chǎn)生的目標(biāo)函數(shù)和一組訓(xùn)練樣本(即圖中的“+”)如圖2所示。本實(shí)驗(yàn)中的訓(xùn)練樣本只有一個(gè)指標(biāo),所以選用度量訓(xùn)練樣本和神經(jīng)元權(quán)值之間關(guān)系的距離公式為:構(gòu)建的網(wǎng)絡(luò)結(jié)構(gòu)為:1個(gè)輸入節(jié)點(diǎn),10個(gè)隱節(jié)點(diǎn)和1個(gè)輸出節(jié)點(diǎn)。學(xué)習(xí)率為0.003,用一組較小的隨機(jī)數(shù)初始化提出算法的網(wǎng)絡(luò)和傳統(tǒng)BPNN的權(quán)值。用期望輸出和實(shí)際輸出的差的平方和,作為訓(xùn)練誤差和泛化誤差。圖2 網(wǎng)絡(luò)訓(xùn)練結(jié)果圖兩種算法的學(xué)習(xí)誤差曲線,如圖3所示。 傳統(tǒng)BP算法 提出的算法圖3 學(xué)習(xí)誤差變化曲線圖表1 提出的算法性能(函數(shù)逼近的例子)Table 1 Performance of the prposed algo

16、rithm(approximation problem)學(xué)習(xí)算法 Learning method收斂時(shí)間 Total time of convergence(s)訓(xùn)練次數(shù)Number of itreations泛化誤差Generaralization eror傳統(tǒng)BP算法 BP algorithm27.016141140.1461提出算法improved algorithm17.6861330.0667從圖2、圖3和表1可以看出,提出算法的收斂速度比傳統(tǒng)BP算法要快。訓(xùn)練時(shí),設(shè)定的固定訓(xùn)練次數(shù)為:20000,最小誤差為:0.85,傳統(tǒng)BP算法收斂的次數(shù)是14114,提出算法的收斂次數(shù)是6133

17、,是傳統(tǒng)BP算法收斂速度的2.3倍。并且提出算法的泛化誤差也要小一些。4.2 三分類的例子這是一個(gè)兩概念(一個(gè)三角形和一個(gè)矩形)學(xué)習(xí)的例子,是Cohn三角形概念學(xué)習(xí)例子的推廣,是一個(gè)典型的多分類例子。在范圍內(nèi)隨機(jī)產(chǎn)生200個(gè)均勻分布的樣本,如圖44所示。規(guī)定三角形內(nèi)的樣本屬于類(“+”),矩形內(nèi)的樣本屬于類(“”),其余樣本屬于類(“”)。用一個(gè)2輸入3輸出的3層BP網(wǎng)對(duì)3類樣本進(jìn)行學(xué)習(xí),網(wǎng)絡(luò)的隱節(jié)點(diǎn)數(shù)選為10。令類樣本的目標(biāo)輸出為,類樣本的目標(biāo)輸出為,類樣本的目標(biāo)輸出為。本實(shí)驗(yàn)中的訓(xùn)練樣本只有兩個(gè)指標(biāo),選用度量訓(xùn)練樣本和神經(jīng)元權(quán)值之間關(guān)系的距離公式為:學(xué)習(xí)參數(shù)設(shè)置如下:神經(jīng)網(wǎng)絡(luò)隱層和輸出層采

18、用標(biāo)準(zhǔn)Sigmoidal激活函數(shù),學(xué)習(xí)率為0.1,目標(biāo)誤差為0.05,初始權(quán)值和偏移值取-0.1,0.1內(nèi)隨機(jī)值。圖4 應(yīng)用提出算法的網(wǎng)絡(luò)訓(xùn)練結(jié)果圖表2 提出的算法性能(三分類的例子)Table 2 Performance of the prposed algorithm(Three classification)學(xué)習(xí)算法Learning method收斂時(shí)間 Total time of convergence(s)訓(xùn)練次數(shù)Number of itreations泛化誤差Generaralization eror傳統(tǒng)BP算法BP algorithm21.75972390.0738提出算法imp

19、roved algorithm14.38129560.0544青綠色線:傳統(tǒng)BP算法黑色線: 提出的算法圖5 學(xué)習(xí)誤差變化曲線圖從圖5和表2可以看出,提出算法的收斂速度比傳統(tǒng)BP算法要快。訓(xùn)練時(shí),設(shè)定的固定訓(xùn)練次數(shù)為:10000,最小誤差為:0.05。傳統(tǒng)BP算法收斂的次數(shù)是7239,提出算法的收斂次數(shù)是2956,是傳統(tǒng)BP算法收斂速度的2.4倍。并且提出算法的泛化誤差也要小一些。5 結(jié)論 本文提出了一種改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法,即基于局部權(quán)值和閾值調(diào)整的BP算法,并且通過函數(shù)逼近和三分類的實(shí)驗(yàn)與傳統(tǒng)的BP算法來進(jìn)行對(duì)比。由實(shí)驗(yàn)結(jié)果我們可以得出以下結(jié)論:基于局部權(quán)值和閾值調(diào)整的BP算法可以提

20、高三層BP網(wǎng)絡(luò)的收斂速度,但對(duì)大型網(wǎng)絡(luò)有待進(jìn)一步的實(shí)驗(yàn)和研究。參考文獻(xiàn):1 Ang JH, Tan KC, Al-Mamun A. Training neural networks for classification using growth probability-based evolution J.Neurocomputing (S0925-2312), 2008, 71(16-18): 3493-3508.2 Ling SH, Lam HK, Leung FHF, Lee YS. An Improved Genetic-Algorithm-Based Neural-Tuned Neural Network J. I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論