神經網絡的前向傳播范例6篇

前言:中文期刊網精心挑選了神經網絡的前向傳播范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。

神經網絡的前向傳播

神經網絡的前向傳播范文1

【關鍵詞】 圖像識別技術 神經網絡識別

模式識別研究的目的是用機器來模擬人的各種識別能力―比如說模擬人的視覺與聽覺能力,因此圖像識別的目的是對文字、圖像、圖片、景物等模式信息加以處理和識別,以解決計算機與外部環境直接通信這一問題??梢哉f,圖像識別的研究目標是為機器配置視覺“器官”,讓機器具有視覺能力,以便直接接受外界的各種視覺信息。

一、圖像識別系統

一個圖像識別系統可分為四個主要部分:被識圖像、圖像信息獲取、圖像預處理、圖像特征提取、分類判決。

二、圖像識別方法

圖像識別的方法很多,可概括為統計(或決策理論)模式識別方法、句法(或結構)模式識別方法、模糊模式識別方法以及神經網絡識別方法。重點介紹神經網絡識別方法。

2.1神經網絡識別方法

2.1.1人工神經網絡的組成

人工神經網絡(簡稱ANN)是由大量處理單元經廣泛互連而組成的人工網絡,用來模擬腦神經系統的結構和功能。而這些處理單元我們把它稱作人工神經元。

2.1.2人工神經網絡的輸出

2.1.3人工神經網絡的結構

人工神經網絡中,各神經元的不同連接方式就構成了網絡的不同連接模型。常見的連接模型有:前向網絡、從輸入層到輸出層有反饋的網絡、層內有互聯的網絡及互聯網絡。

2.1.4 學習算法

1)感知器模型及其算法

算法思想:首先把連接權和閾值初始化為較小的非零隨機數,然后把有n個連接權值的輸入送入網絡中,經加權運算處理后,得到一個輸出,如果輸出與所期望的有較大的差別,就對連接權值參數按照某種算法進行自動調整,經過多次反復,直到所得到的輸出與所期望的輸出間的差別滿足要求為止。

2)反向傳播模型及其算法

反向傳播模型也稱B-P模型,是一種用于前向多層的反向傳播學習算法。

算法思想是:B-P算法的學習目的是對網絡的連接權值進行調整,使得調整后的網絡對任一輸入都能得到所期望的輸出。學習過程包括正向傳播和反向傳播。正向傳播用于對前向網絡進行計算,即對某一輸入信息,經過網絡計算后求出它的輸出結果;反向傳播用于逐層傳遞誤差,修改神經元之間的連接權值,使網絡最終得到的輸出能夠達到期望的誤差要求。

B-P算法的學習過程如下:

第一步:選擇一組訓練樣例,每一個樣例由輸入信息和期望的輸出結果兩部分組成;第二步:從訓練樣例集中取出一樣例,把輸入信息輸入到網絡中;第三步:分別計算經神經元處理后的各層節點的輸出;第四步:計算網絡的實際輸出和期望輸出的誤差;第五步:從輸出層反向計算到第一個隱層,并按照某種原則(能使誤差向減小方向發展),調整網絡中各神經元的權值;第六步:對訓練樣例集中的每一個樣例重復一到五的步驟,直到誤差達到要求時為止。

3)Hopfield模型及其學習算法

它是一種反饋型的神經網絡,在反饋網絡中,網絡的輸出要反復地作為輸入再送入網絡中,使得網絡具有了動態性,因此網絡的狀態在不斷的改變之中。

算法思想是:

(a) 設置互連權值

其中xis是s類樣例的第i個分量,它可以為1或0,樣例類別數為m,節點數為n。

(b) 未知類別樣本初始化。 Yi(0)=Xi 0≤i≤n-1

其中Yi(t)為節點I在t時刻的輸出,當t=0時,Yi(0)就是節點I的初始值,Xi為輸入樣本的第I個分量。

(c) 迭代直到收斂

神經網絡的前向傳播范文2

[關鍵詞]無線傳感器,路由,BP神經網絡

中圖分類號:TN929.5 文獻標識碼:A 文章編號:1009-914X(2015)41-0243-01

1.概述

近年來,微電子機械系統、無線通訊和數字化電子領域快速發展,使得開發出用于短距離通信的低能耗、低成本、多功能傳感器節點成為可能。這些節點能感知環境,數據處理和通訊[1]?;趥鞲衅鞴濣c協作的傳感器網絡提升了應用領域與能量,傳感器網絡是傳統傳感器研究的重大改進。

傳感器網絡有廣泛的應用領域,可以用于監控和收集分布式區域中的各種目標和信息。圖1展示了一個經典的WSNs,該領域主要是設計一個有效的路由算法,增進通訊連通能力,目標是減少能量消耗、延長傳感器網絡的生命周期。與能量消耗相關的論文研究成功近年來不斷涌現。

2.無線傳感器路由問題建模

一個大的傳感器網絡由很多簇組成。傳感器節點并不直接發送數據,而是在一個簇中由一個中心節點(Sink)完成數據收集工作。但是,由于發射信號限制,一個傳感器節點只能和它發射半徑之內的其它節點相連,本文的內容就是針對一個簇之內的信息收集工作展開的。

S是所有傳感器節點的集合,E是一個節點的連接集合。是簇中的一個節點,代表著在節點u和v之間傳輸 1k的數據需要消耗的能量,本文使用如下無線通訊模型:接收1KB的數據包消耗傳感器節點 1k的電能,發送放大器的能量消耗與距離相關,節點(u, v)之間用C(u, v)代表[2]。信息收集路徑從sink節點開始,完成信息收集之后返回到同一節點,代表著一個完整的路徑,so是sink節點。路由的能量消耗按如下公式定義:

D 代表傳輸數據的大小,是一個動態值。

3.基于BP神經網絡的數據融合模型

反向傳播網絡(BP網絡)是前向神經網絡中最重要的一種,該網絡的監督學習算法采用誤差反向傳播算法。該算法[3]的學習過程主要有兩個:信號的正向傳播與誤差的反向傳播。主要是通過修正各層神經元的權值,使得總的誤差信號最小。近幾年,,研究人員開展了很多基于神經網絡的無線傳感器網絡數據融合方面的研究工作。實驗結果表明,把BP神經網絡應用傳感器數據融合中,可以大大降低傳送數據的特征維數,提高無線網絡的數據融合效率。

3.1 BP神經網絡

BP網絡是利用BP算法的前向型神經網絡,其是在多層感知器的基礎上增加了反向傳播信號,可以較好地處理非線性的數據信息,具有較好的泛化能力,廣泛地應用在系統模型辨識、預測或控制。

BP神經網絡中的神經元模型中的激發函數通常選用非線性的Sigmoid函數:

只有當系統特性在正負區間變化時,激發函數選擇對稱的Sigmoid函數,又稱為雙曲函數:

BP神經網絡的網絡結構由輸入層、輸出層和隱層組成,其中隱層可以有多層,不過最常用還是單隱層的三層BP網絡。

3.2 BP神經網絡權值調整規則

BP網絡的學習過程是就將誤差反向傳播并修正網絡權值直到網絡的總誤差最小。定義BP神經網絡的輸入輸出模型對應的系統誤差函數為:

利用梯度最速下降法解析如何調整連接權值使誤差函數E最小。

BP神經網絡訓練過程[4]:當確定網絡結構后,始對BP神經網絡進行訓練。BP神經網絡的學習是由信號的正向傳播與誤差的反向傳播兩個過程組成的,在正向傳播時,輸入樣本信號從輸入層進入網絡,通過隱層處理最后傳送給輸出層,如果輸出結果與期望值不符,則把誤差進行反向傳播,根據上面的權值調整系數調整權值的變化,直到網絡輸出層的輸出結果滿足要求為止。

4.基于BP神經網絡的 路由仿真實驗

無線傳感器網絡與神經網絡在有些地方很類似,比如無線傳感器網絡中的傳感器節點具有感知數據處理信息的能力,相當于神經網絡中的神經元;無線傳感器網絡節點之間通過一定的規則傳遞信息,則相當于連接神經元的突觸。神經網絡算法與無線傳感器網絡中應用的數據融合技術有相同的功能,即通過一定的規則對大量的數據進行運算處理,從而得到反映這些數據特征的結果。因此,可以把神經網絡算法應用到無線傳感器網絡中實現數據的融合。

實驗中,設置傳感器節點數目為 100,200,300,400 和 500。傳感器網絡環境是一個 200m*200m 的空間[5-6]。令傳輸數據的大小為 1KB,發射半徑分別為 20m 和 30m。實驗結果是 50 次運行的平均值。圖2 和圖 3現實了算法在不同數據集上最有解的變化趨勢,從中可以看出能量的逐步變化,并且,圖 3 的能量消耗更小,因為發射半徑較大。

5.結論

本文利用BP神經網絡模型解決無線傳感器網絡路由問題,實驗中,采用了不同規模的網絡實驗數據,并同該領域其它經典算法進行比較,驗證了本文所提方法在該領域的有效性。下一步的可針對模型在大規模數據集上表現沒有中小規模優秀的問題方面展開。

參考文獻

[1]張重毅,適用于無線傳感器網絡的移動路由算法[D]. 吉林: 吉林大學計算機科學與技術學院, 2007.

[2] 李鳳保,李凌.無線傳感器網絡技術綜述[J]. 儀器儀表學報, 2005,26(3):559-561.

[3] Shih E, Cho S, Ickes N, Min R, Sinha A, Wang A, Chandrakasan A. Physical layer driven protocol and algorithm design forenergy-efficient wireless sensor networks[C]. Proceedings of the ACM MobiCom 2001, Rome: ACM Press, 2001, 272-286.

[4] 唐勇,周明天,張欣.無線傳感器網絡路由協議研究進展[J]. 軟件學報,2006,17(3):410-421.

神經網絡的前向傳播范文3

關鍵詞:神經網絡;BP算法;網絡模型

中圖分類號:TP183

1 BP網絡的定義

誤差反向傳播算法(Error Back Propagation,EBP,簡稱BP)在于利用輸出層的誤差來估計輸出層的直接前導層的誤差,再用這個誤差估計更前一層的誤差。如此下去,就獲得了所有其他各層的誤差估計。這樣就形成了將輸出表現出的誤差沿著與輸入信號傳送相反的方向逐級向網絡的輸入端傳遞的過程。因此,人們就又將此算法稱為向后傳播算法,簡稱BP算法。使用BP算法進行學習的多層前向網絡稱為BP網絡。雖然這種誤差估計本身的精度會隨著誤差本身的“向后傳播”而不斷降低,但它還是給多層網絡的訓練提供了十分有效的辦法。所以,多年來該算法受到了廣泛的關注。BP網絡應用廣泛,學習采用最小均方差,由輸入層、若干隱層和輸出層構成,它是一種典型的前饋網絡。

圖1 三層神經網絡模型

常用的BP網絡是三層前向網絡(如圖1所示),即:輸入層、中間層和輸出層。它的學習分為以下幾個過程:由每個神經元網絡的輸入節點經中間層向輸出層的一個正向傳播,若網絡的實際輸出與期望輸出有誤差,將這個誤差經輸出層到中間層再傳給輸入層調整權值再學習的一個逆傳播。通過不斷的學習,最后的輸出要在誤差范圍之內。

2 BP算法的基本思想

BP算法的基本思想歸結如下:BP網絡對于輸入信號,通過輸入層傳播到隱含層,經過激勵函數的作用,再將隱含層的輸出作為輸出層的輸入傳播到輸出層,最后輸出結果。對于每一個輸入樣本,神經網絡的實際輸出與目標輸出不可能完全一樣,兩者之間必然會有一定的誤差,定義均方差為:

3 BP算法的學習過程及兩種改進算法的思想

學習是人工神經網絡最重要的一個特點,學習的目的在于能對任何一個樣本的輸入通過調整相關參數輸出期望的結果。學習的方法可以從以下幾步闡述:第一步,向神經網絡模型輸入一系列樣本,每一個樣本都有包含輸入和期待的輸出兩部分,把采集到的樣本向神經網絡輸入后,先由第一個隱層進行相關計算然后逐層向下一層傳遞,直到傳至輸出層。第二步,將輸出的結果與期望輸出的結果做比較,如果誤差不能滿足要求,就按原來的路徑逐層返回,神經網絡的自學習能力這時候就要發揮作用了,它要根據誤差的結果對權值、閥值做適當修改,再從第一個隱層開始重復的計算傳遞,直到輸出的結果滿足要求。

本文論述的算法都是以三層網絡結構出發進行討論的。

BP算法的改進主要集中在兩個方面:其一是避免陷入局部極小值,一旦陷入要想辦法逃出;其二是改進迭代算法,加快收斂速度,較常用的方法是共軛梯度法、Levenberg-Marquardt法等。

BP網絡學習過程收斂速度慢的因素有兩方面:(1)學習率s和勢態因子α在訓練中值不變。BP網絡實際就是優化計算中的梯度下降法,利用輸出的誤差作為對權值、閥值調整的參考,目的是確保最終的輸出誤差最小。考慮到算法的收斂性,學習率s必須小于某一固定上界。BP網絡中的學習率s和慣性因子α在訓練過程中為一固定值。這一限制決定了BP網絡的收斂速度不可能很快。(2)學習過程中出現“假飽和”。實際輸出和期望輸出的誤差產生以后,通過調整網絡訓練的權值,不斷學習后這種誤差應該越來越小,如果多次學習后誤差沒有減小,經過一段時間后,誤差才下降,稱這種現象為學習過程中的“假飽和”。在BP網絡中,初始權值、閾值一般是在一個范圍內人為確定的。若作為網絡輸入的神經元的個數與閾值差別較大,考慮到神經元具有飽和非線性特征,那么神經元的實際輸出只有兩種結果:極大值或極小值。當輸出層接收到的神經元的總輸入進入到飽和區,且實際輸出與目標輸出相互矛盾,就是“假飽和”。這時對權值作大的修改才行,而實際上,由于此時導數值趨近于零,導數權值修改量很小。導致學習速度下降。對中間層的神經元也是一樣。學習一旦進入“假飽和”狀態,很難退出這種“假飽和”狀態,可能需要一定的時間,有時可能會陷入僵局,要重新開始網絡訓練。

傳統的BP算法主要的優點是簡單、易于實現。但是BP算法有兩個不可克服的缺陷:(1)BP算法很可能陷入局部極小值;(2)收斂速度慢。

像熱導氣體分析儀這類的儀器經常會用于一些惡劣而又危險的環境中,且要求其測量周期短暫,所以系統需要較強的抗震蕩學習網絡。基于熱導傳感器測量的主要因素,提出一種新的BP網絡學習算法,對學習因子進行模糊自適應調節,這樣系統能夠快速、準確地將干擾因素與熱導傳感器的原始測量值進行擬合,有效減小測量誤差。這種模糊自適應算法思想一樣可用于發電機匝間短路故障的在線檢測。

4 結束語

通過以上對BP算法的學習與分析總結如下:(1)傳統的BP算法采用最小均方差的學習方式,是使用最廣泛的網絡,可用于語言綜合、語言識別、自適應控制等,它是一種典型的前饋網絡,優點是簡單、易于實現,缺點是可能陷入局部極小值、收斂速度慢。(2)BP算法的改進主要集中在兩個方面:其一是避免陷入局部極小值,一旦陷入要想辦法逃出;其二是改進迭代算法,加快收斂速度。(3)多層前饋神經網絡學習過程中,對學習因子進行模糊自適應調節,自動調節步長、勢態因子、可以明顯地提高收斂速度和誤差精度。在一些特殊領域的應用取得較好的效果。從目前已有的研究成果來看,設計的模糊自適應算法有良好的研究方向。

參考文獻:

[1]黃麗.BP神經網絡算法改進及應用研究[D].重慶師范大學圖書館,2007.

[2]劉彩紅.BP神經網絡學習算法的研究[D].重慶師范大學圖書館,2006.

[3]王建梅,覃文忠.基于L-M算法的BP神經網絡分類器[J].武漢大學學報,2005(10):928-931.

神經網絡的前向傳播范文4

【關鍵詞】BP算法;SA算法;人工神經網絡;梯度下降;教學質量評價

1.引言

教學質量評價是一個復雜的人性化過程,傳統的評價方法無法體現評價指標和評價結論之間的邏輯關系,如常用的各項指標得分加權求和的方法就存在著用線性簡化非線性,指標權重的確定較為主觀化等問題。因此,為獲得良好的教學質量評價成效,建立科學的評價模型具有重要的意義。

BP神經網絡是使用BP算法進行訓練的多層前向神經網絡,具有極強的非線性映射能力,且網絡結構規則,訓練算法成熟,因此在工程領域得到了廣泛的應用。但是,傳統BP算法存在易陷入誤差的局部極小,無法收斂到全局最優解的固有缺陷。

本文引入模擬退火算法(SA算法)改進BP算法的全局尋優能力,給出了SA-BP融合算法的具體步驟,并應用于教學質量評價模型的構建,應用結果表明該模型相對傳統BP神經網絡具有更高的精確度。

2.BP神經網絡

BP神經網絡是由輸入層、輸出層、一個或多個隱層組成的多層前向網絡,一個典型的單隱層的BP神經網絡如圖1所示。

設網絡的輸入為,隱層神經元的輸出為,網絡的實際輸出為,網絡的期望輸出為,n、r、m分別為輸入層、隱層、輸出層的節點數。輸入層到隱層的權值為,閾值為,隱層到輸出層的權值為,閾值為,i、j、k為輸入層、隱層、輸出層對應的節點編號,網絡的激活函數為。

BP神經網絡的運行分為兩個過程:

(1)信號的前向傳播,輸入信號依次通過隱層和輸出層,隱層的輸出為:

,輸出層的輸出即為網絡實際輸出,計算式為:

(2)誤差的反向傳播,期望輸出與網絡實際輸出差值就是誤差信號,單個訓練樣本輸出層瞬時誤差為:

,所有訓練樣本的總體平均誤差為:

,在線學習使用作為權值調整的目標函數,批量學習使用作為權值調整的目標函數。BP神經網絡使用誤差梯度下降法調整權值,權值調整量為,通過該式推導得出輸出層的權值調整計算式為,局域梯度定義為,其中,為輸出層節點k的誘導局部域,即節點k所有輸入與權值的乘積;隱層的權值調整計算式為,局域梯度定義為:

通過上述兩個過程的交替迭代進行,網絡權值最終會收斂到誤差的一個極值點。

3.SA-BP融合算法

3.1 SA算法概述

BP算法中梯度下降是一種“貪心”策略,它的每一步都會在局部誤差下降最快的方向進行權值調整,而BP神經網絡的誤差曲面高度復雜,通常存在多個極值點,導致BP算法易陷入誤差局部極小。SA算法是一種典型的全局尋優算法,源于對金屬退火過程的模擬,金屬原子在高溫狀態下會進行激烈的無序運動,經過逐漸冷卻,這種運動會不斷趨向于較低的能量狀態,最終到達可能的全局能量最低狀態,退火過程能量狀態的概率分布由如下關系確定:,其中為處于能量狀態E時的概率,T為絕對溫度,k為Boltzmann系數。SA算法中能量趨于最低狀態的特性能為BP算法加入了全局搜索能力,此時SA算法的能量函數等效于BP算法中的誤差函數,SA算法的作用是引入參數的隨機擾動,使權值調整有機會脫離誤差局部極小區域,最終以較高概率收斂到誤差的全局最小。

3.2 SA-BP融合算法具體步驟

SA-BP融合算法的具體步驟如下:

(1)設BP神經網絡初始權值為,退火過程的初始高溫為,停止溫度為,溫度衰減函數為,馬爾科夫鏈長度為;

(2)使用BP算法對網絡進行一次訓練,求出當前狀態下的各層權值,使用的權值調整公式為,動量項為動量系數與前一時刻權值修正量的乘積,它記憶了前一時刻權值的調整方向;

(3)用訓練樣本計算權值下的輸出誤差;

(4)為網絡各層所有的權值上加上一個很小的隨機擾動,使網絡各層權值變為,權值調整公式為:;

(5)用訓練樣本計算權值下的輸出誤差;

(6)計算,若,則接受狀態;否則,產生[0,1]之間均勻分布的隨機數,計算概率,若,接受,否則,接受;

(7)將當前權值作為新的,循環執行上述(4)~(6)步次,獲得權值;

(8)使用溫度衰減函數降溫,將當前權值作為初始權值,循環執行(2)~(7)步,直到溫度降至預設的停止溫度。

(9)此時得到的權值即為最終的BP神經網絡參數。

4.應用實例

教學質量評價模型采用單隱層的網絡結構,選擇了4個評價指標作為網絡的輸入,分別為“內容選擇”、“教態”、“邏輯性”、“教學方法”;將每個指標分為5檔,分別為:很好、較好、中等、較差、很差;評價結論作為網絡的輸出,分為4檔,分別為優秀、良好、中等、差等。用二進制數對評價指標和評價結論的檔位編碼。通過發放調查表,共采集到90組樣本數據,其中60組作為訓練數據,30組作為測試數據。

使用SA-BP融合算法對網絡進行訓練,網絡初始權值設為0,學習率設為0.02,動量系數設為0.7,初始高溫為100,溫度衰減率為0.95,停止溫度為1.0×10-3,馬爾科夫鏈長度為20。與帶動量項的傳統BP算法進行對比,實驗結果如表1所示。

從實驗結果可知,SA-BP融合算法相對于傳統BP算法訓練誤差更小,測試誤差更小,但迭代次數更多,這說明了SA-BP融合算法的能收斂到更小的誤差極值點,因而能更好的表達輸入與輸出之間的對應關系,但搜索的隨機性更強而導致收斂速度更慢。這些結果與我們最初的設想基本一致。在選擇最佳隱層神經元數時,我們還發現SA-BP融合算法相對所需的隱層神經元數更多,這也說明了SA-BP融合算法具有更強的計算能力。

5.結束語

SA-BP融合算法引入模擬退火原理,使BP神經網絡具備了一定的全局尋優能力,能有效地解決BP算法易陷入局部極小,致使網絡訓練誤差增大,實際應用時性能不佳的問題。將SA-BP融合算法用于教學質量評價模型的構建,實驗結果證明SA-BP融合算法相對于傳統BP算法訓練誤差和測試誤差更小。但SA-BP融合算法也存在著收斂速度更慢的問題,該問題可能是由于SA算法在極值搜索過程中引入了更多的隨機性導致,需要在進一步的研究中加以解決。

參考文獻

[1]D.E.Rumelhart,G.E.Hinton,R.J.Williams.Learning representations by back-propagation errors[J].Nature,1986(323):533-536.

[2]S.Kirkpatrick,C.D.Gelatt,M.P.Vecchi.Optimization by simulated annealing[J].Science,1983(220):671-680.

[3]賈麗會,張修如.BP算法分析與改進[J].計算機技術與發展,2006(10):101-103.

[4]潘昊,張華偉,高美鈴.基于SA-BP算法的主減速器品質診斷研究[J].武漢理工大學學報,2011(1):1-4.

神經網絡的前向傳播范文5

關鍵詞:BP算法 訓練樣本 小車自動尋徑

中圖分類號:TP273.3 文獻標識碼:A 文章編號:1007-9416(2013)07-0102-02

1 引言

隨著生產技術的發展和自動化程度的提高,在自動化領域中,許多復雜性操作或對人體有害的工作都由機器自動完成,為了實現這一工作,機器就必須具有智能性。

人工神經網絡是由人工神經元(簡稱神經元)互連組成的網絡,以大規模模擬并行處理為主,具有很強的魯棒性和容錯性自學習能力,是一個大規模自適應非線性動力系統;具有集體運算的能力。多層前向神經網絡(BP網絡)是神經網絡結構形式中應用較多的自學設計方法之一。BP算法可以通過已知數據訓練網絡模型,應用于對未知數據的預測[3]。因此能很好的應用于小車自動尋徑,使小車具有智能性。

2 BP算法神經網絡

BP神經網絡(Back-Propagation networks)包括三個層次:輸入層、隱含層、輸出層[2]。

2.1 BP算法流程簡述

BP神經網絡的本質是誤差反向傳輸的多層前饋網絡,BP算法的基本思想是,學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播時,先自行對權重進行初始化,輸入樣本從輸入層傳入,經各隱層逐層處理后,傳向輸出層,如圖1為BP神經網絡模型[3],若輸出層的實際輸出與期望的輸出(理想輸出)不符,則轉入誤差的反向傳播階段。

2.2 隱層神經元個數的確定

一般情況下,隱層神經元個數是根據網絡收斂性能的好壞來確定的,在總結大量網絡結構的基礎上,在單隱層神經網絡中,得出以下經驗公式:

其中,為輸入層神經元個數,為輸出層神經元個數。

3 創建BP神經網絡模型

3.1 問題描述

隨機的繪制一張彩色地圖,地圖中有各種顏色的建筑和一條貫穿的公路(白色),引入BP神經網絡,使該小車具有一定的智能,可以自動地判斷前方是否為公路,進而沿著公路從地圖的一端走到另一端。本次實驗所用的地圖如圖2所示(地圖及小車由本人按照一定的比例用電腦的畫圖工具所畫):

3.2 地圖及小車圖片的灰度化

由于Matlab默認為rgb模式打開圖片,故為了更簡單的解決問題,必須對圖片進行灰度處理,處理之后地圖及小車分別為520*1100和20*25維矩陣。

3.3 地圖及小車圖片的二值化

為了BP網絡更好的收斂,需對相應圖片進行二值化處理,如圖3所示。由于本次實驗公路為白色,小車為黑色。故將地圖中除公路以外的部分的像素值置為0,公路上的像素值置為255,小車的像素值置為255。

所以,在小車的“眼里”,世界是黑白的。如下圖:

3.4 小車的視野

小車必須有一定的視野,可以“看到”前方的路況,否則當小車發現情況不妙準備轉彎的時候就已經撞到路邊了。本次實驗取的小車的視野為小車前方和左右方30像素范圍,這樣小車可以“預感到”自己前方和左右方向上的路況,進而及早調整方向。

3.5 訓練BP神經網絡

訓練樣本作為BP網絡的輸入數據集,對于網絡的訓練具有重要的作用[4],本文建立單隱層BP神經網絡,訓練樣本選取為小車在地圖上某個方位的對應位置的差矩陣,共20個樣本,其中10個是對的樣本(即小車在公路上),10個為錯的樣本(即小車的車體不完全在路面上)。這樣輸入的樣本矩陣的大小即為小車圖片對應的像素矩陣的大小,為20*25,故輸入層神經元個數取為500。輸出層只有兩種情況,在公路上為對,不在公路上為錯,故輸出層神經元個數為2。

由式(2)可得隱層神經元的個數為42,選取誤差精度10-4,初始學習速率0.5,初始權值為(-1,1)區間內隨機值。

經過245次訓練以后,總體期望誤差達到了給定范圍,網絡訓練過程中的誤差變化曲線[15]如圖4所示。

4 實驗結果

所有算法均在MATLAB R2009a中運行,微機配置為Core Processor 4000+2.10GHz,內存為2G。

用前面選出的訓練樣本對BP神經網絡進行訓練,訓練之后小車即具有了一定的智能,可以識別前方和左右方的路況,實驗結果表明,小車可以很好的沿著公路從地圖的一側行駛到另一側。

5 結論

通過對BP神經網絡訓練后,小車可以正確地沿著公路地圖的一側行駛到另一側,說明BP神經網絡可以很好地應用于路徑識別和自動駕駛領域。

參考文獻

[1] 楊國才,王建峰,王玉昆.基于Web的遠程自學型教學系統的設計與實現[J].計算機應用, 2000,20(4):61-63.

[2] 安淑芝.數據倉庫與數據挖掘[M].北京:清華大學出版社, 2005:100-101.

[3] 蔡自興,徐光佑.人工智能及其應用[M].北京:清華大學出版社, 2003.

神經網絡的前向傳播范文6

關鍵詞 神經網絡;BP;優化算法

中圖分類號:TP183 文獻標識碼:A 文章編號:1671-7597(2014)13-0066-01

1 人工神經網絡模型

人工神經網絡簡稱ANN,它是一種將人類大腦的組織結構和運行機制作為其研究基礎來模擬人類大腦內部結構和其智能行為的處理系統。人工神經網絡中的神經元細胞將其接收到的所有信號進行處理,如加權求和等操作,進行操作后經軸突輸出。

2 人工神經網絡的分類

2.1 前饋型神經網絡

前饋型神經網絡通過對其網絡中的神經元之間的連接關系進行復合映射,因此這種網絡模型具有非常強的非線性處理的能力。如圖1所示,在這里前饋型神經網絡模型被分為三層,分別為輸入層、輸出層和隱含層,一般常用的前饋型神經網絡有BP神經網絡、RBF神經網絡、自組織神經網絡等。

圖1 前向神經網絡模型

2.2 反饋型神經網絡

反饋型神經網絡其結構,在這個模型中我們假設網絡總的神經元個數為N,則每個神經元節點都有N個輸入值及一個輸出值,每個神經元節點都如此,節點之間相互聯系。現在被大量使用的反饋型神經網絡一般有離散Hopfield神經網絡模型、Elman神經網絡模型等等。

3 BP神經網絡

3.1 BP神經網絡簡介

1986年,Rumelhant和McCelland提出了BP神經網絡的一般模型,BP神經網絡是一種具有多層網絡的反向傳播學習算法。BP神經網絡模型的基本思想是:整個過程主要由信號的正向傳播和誤差的反向傳播兩個過程組成。目前,BP神經網絡的應用范圍為數據壓縮、數據分類、預測分析和模式識別等領域。

3.2 BP神經網絡的結構

如圖2所示,這里是BP神經網絡的一種模型結構,在這種模型結構中輸入信號量為m,具有隱含層的數量為j,輸出信號量為q的模型結構。

BP神經網絡一般具有一個或多個隱含層單元,其差別主要體現在激活函數的不同。針對BP神經網絡所使用的激活函數一

圖2 BP神經網絡模型結構

般采用S型對數函數或者采用正切激活函數,而輸出層則一般采用線性函數作為激活函數。

3.3 BP神經網絡的改進方法

BP神經網絡作為當今對研究電力負荷預測應用最多的一種神經網絡,但標準的BP神經網絡算法存在的一些缺陷,這里就對一些經常使用的典型改進方法進行描述。

1)增加動量項。在一般的BP神經網絡算法中,其模型中的各層權值在進行更新的過程中,是按照t時刻誤差曲線進行梯度下降方式進行調整的,在這里并沒有考慮其之間的梯度下降的方向,如果使用這種方式進行調整則會造成訓練的過程不穩定,容易發生振蕩,導致收斂過程緩慢的結果。因此有些學者就為了使網絡訓練的速度提高,收斂過程加快,就在一般網絡模型的權值更新環節添加了一個動量項因子即:

(1)

在這個式子中,W表示BP神經網絡中每一層的權值矩陣,O則表示神經網絡中每一層的輸出向量矩陣,α則被稱為該神經網絡的動量系數因子,其取值范圍在0到1之間,在該網絡在進行訓練的過程中,如果其誤差梯度網線出現了局部極小值現象,雖然在這里的第一項會趨摟于零,但是這一項,

這樣就會使該訓練過程避免了限入局部極小值區域的形勢,從而加快了其訓練速度,使該神經網絡收斂速度加快,因此這種帶有動量項因子的BP神經網絡算法應用到了很多的BP網絡中。

2)學習速度的自適應調節方法。學習速度η在一個標準的BP神經網絡中是以一個常數出現的我們也稱為之步長,而在實際的運算過程中,很難找到一個數值作為最優學習速度。我們從誤差曲面圖形中可以看出,當曲面中區域處于一個平坦區域時,我們需要設置一個比較大的η值,使它能夠跳出這個平坦的區域;而當曲面中的區域處于變化比較很大的區域時,這時的η的數值我們又需要將其進行減小或者增大操作。自適應調整學習速度η則可以根據網絡的總誤差來進行自我調整,在網絡經過多次調整后,如果E總繼續上升,則表明這里的調整是無效的,且η=βη, ;而經常調整這里的E總下降了,則表明這里的調整是有效果的,且η=αη,。

3)引入陡度因子(防止飽和)。在網絡訓練的過程中,由于其誤差曲面具有平坦區,當處于這個區域時,由于S型激活函數有飽和特性,促使權值的調整速度放慢,從而影響了調整的速度。在訓練的過程中,如果算法調整進入了這個區域,我們可以減小神經元的輸入量,使其輸出值迅速脫離激活函數的飽和區域,這里誤差函數的數值則會隨之發生改變,其權值的調整也就脫離了該平坦區。想要實現以上思路則需要在激活函數中引入一個陡度因子λ。

(2)

當趨近于0時,而數值較大時,調整其進入誤差曲面中的平坦區,此時λ的值應選擇大于1的數值;而當調整脫離平坦區域后,再設置λ大于1,使激活函數能夠恢復到原始數值。

4 總結

綜上所述,設計一個人工神經網絡應用到實際問題中,可以歸結為網絡自身權值參數的學習與合理的設計網絡拓撲結構這兩大類優化問題。由于人工神經網絡的訓練是一個非常復雜的問題,使用傳統的學習算法進行訓練則要花費很長的時間,BP算法用到了梯度下降法,才只能在一定范圍內找到合適的參數值及其模型結構。因此,為了更好的提高神經網絡的泛化能力,及將網絡拓撲結構設計的更加合理,大量關于神經網絡的優化算法相繼產生。

參考文獻

亚洲精品一二三区-久久