bp神经网络的训练方法,一文搞定bp神经网络
BP人工神經網絡方法
(一)方法原理人工神經網絡是由大量的類似人腦神經元的簡單處理單元廣泛地相互連接而成的復雜的網絡系統。理論和實踐表明,在信息處理方面,神經網絡方法比傳統模式識別方法更具有優勢。
人工神經元是神經網絡的基本處理單元,其接收的信息為x1,x2,…,xn,而ωij表示第i個神經元到第j個神經元的連接強度或稱權重。
神經元的輸入是接收信息X=(x1,x2,…,xn)與權重W={ωij}的點積,將輸入與設定的某一閾值作比較,再經過某種神經元激活函數f的作用,便得到該神經元的輸出Oi。
常見的激活函數為Sigmoid型。
人工神經元的輸入與輸出的關系為地球物理勘探概論式中:xi為第i個輸入元素,即n維輸入矢量X的第i個分量;ωi為第i個輸入與處理單元間的互聯權重;θ為處理單元的內部閾值;y為處理單元的輸出。
常用的人工神經網絡是BP網絡,它由輸入層、隱含層和輸出層三部分組成。BP算法是一種有監督的模式識別方法,包括學習和識別兩部分,其中學習過程又可分為正向傳播和反向傳播兩部分。
正向傳播開始時,對所有的連接權值置隨機數作為初值,選取模式集的任一模式作為輸入,轉向隱含層處理,并在輸出層得到該模式對應的輸出值。每一層神經元狀態只影響下一層神經元狀態。
此時,輸出值一般與期望值存在較大的誤差,需要通過誤差反向傳遞過程,計算模式的各層神經元權值的變化量。這個過程不斷重復,直至完成對該模式集所有模式的計算,產生這一輪訓練值的變化量Δωij。
在修正網絡中各種神經元的權值后,網絡重新按照正向傳播方式得到輸出。實際輸出值與期望值之間的誤差可以導致新一輪的權值修正。正向傳播與反向傳播過程循環往復,直到網絡收斂,得到網絡收斂后的互聯權值和閾值。
(二)BP神經網絡計算步驟(1)初始化連接權值和閾值為一小的隨機值,即W(0)=任意值,θ(0)=任意值。(2)輸入一個樣本X。
(3)正向傳播,計算實際輸出,即根據輸入樣本值、互聯權值和閾值,計算樣本的實際輸出。
其中輸入層的輸出等于輸入樣本值,隱含層和輸出層的輸入為地球物理勘探概論輸出為地球物理勘探概論式中:f為閾值邏輯函數,一般取Sigmoid函數,即地球物理勘探概論式中:θj表示閾值或偏置;θ0的作用是調節Sigmoid函數的形狀。
較小的θ0將使Sigmoid函數逼近于閾值邏輯單元的特征,較大的θ0將導致Sigmoid函數變平緩,一般取θ0=1。
(4)計算實際輸出與理想輸出的誤差地球物理勘探概論式中:tpk為理想輸出;Opk為實際輸出;p為樣本號;k為輸出節點號。
(5)誤差反向傳播,修改權值地球物理勘探概論式中:地球物理勘探概論地球物理勘探概論(6)判斷收斂。若誤差小于給定值,則結束,否則轉向步驟(2)。
(三)塔北雅克拉地區BP神經網絡預測實例以塔北雅克拉地區S4井為已知樣本,取氧化還原電位,放射性元素Rn、Th、Tc、U、K和地震反射構造面等7個特征為識別的依據。
構造面反映了局部構造的起伏變化,其局部隆起部位應是油氣運移和富集的有利部位,它可以作為判斷含油氣性的諸種因素之一。
在該地區投入了高精度重磁、土壤微磁、頻譜激電等多種方法,一些參數未入選為判別的特征參數,是因為某些參數是相關的。
在使用神經網絡方法判別之前,還采用K-L變換(Karhaem-Loeve)來分析和提取特征。S4井位于測區西南部5線25點,是區內唯一已知井。
該井在5390.6m的侏羅系地層獲得40.6m厚的油氣層,在5482m深的震旦系地層中獲58m厚的油氣層。
取S4井周圍9個點,即4~6線的23~25點作為已知油氣的訓練樣本;由于區內沒有未見油的鉆井,只好根據地質資料分析,選取14~16線的55~57點作為非油氣的訓練樣本。
BP網絡學習迭代17174次,總誤差為0.0001,學習效果相當滿意。以學習后的網絡進行識別,得出結果如圖6-2-4所示。
圖6-2-4塔北雅克拉地區BP神經網絡聚類結果(據劉天佑等,1997)由圖6-2-4可見,由預測值大于0.9可得5個大封閉圈遠景區,其中測區南部①號遠景區對應著已知油井S4井;②、③號油氣遠景區位于地震勘探所查明的托庫1、2號構造,該兩個構造位于沙雅隆起的東段,其西段即為1984年鉆遇高產油氣流的Sch2井,應是含油氣性好的遠景區;④、⑤號遠景區位于大澇壩構造,是yh油田的組成部分。
自學bp神經網絡要有什么基礎??
rbsci。
簡介:BP(BackPropagation)網絡是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播算法訓練的多層前饋網絡,是目前應用最廣泛的神經網絡模型之一。
BP網絡能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網絡的權值和閾值,使網絡的誤差平方和最小。
BP神經網絡模型拓撲結構包括輸入層(input)、隱層(hidelayer)和輸出層(outputlayer)摘要:BP神經網絡算法是在BP神經網絡現有算法的基礎上提出的,是通過任意選定一組權值,將給定的目標輸出直接作為線性方程的代數和來建立線性方程組,解得待求權,不存在傳統方法的局部極小及收斂速度慢的問題,且更易理解。
關鍵詞:固定權值;gauss消元法;BP算法人工神經網絡(artificialneuralnetworks,ANN)系統是20世紀40年代后出現的,它是由眾多的神經元可調的連接權值連接而成,具有大規模并行處理、分布式信息存儲、良好的自組織自學習能力等特點,在信息處理、模式識別、智能控制及系統建模等領域得到越來越廣泛的應用。
尤其誤差反向傳播算法(ErrorBack-propagationTraining,簡稱BP網絡)可以逼近任意連續函數,具有很強的非線性映射能力,而且網絡的中間層數、各層的處理單元數及網絡的學習系數等參數可根據具體情況設定,靈活性很大,所以它在許多應用領域中起到重要作用。
近年來,為了解決BP神經網絡收斂速度慢、不能保證收斂到全局最小點,網絡的中間層及它的單元數選取無理論指導及網絡學習和記憶的不穩定性等缺陷,提出了許多改進算法。
1傳統的BP算法簡述BP算法是一種有監督式的學習算法,其主要思想是:輸入學習樣本,使用反向傳播算法對網絡的權值和偏差進行反復的調整訓練,使輸出的向量與期望向量盡可能地接近,當網絡輸出層的誤差平方和小于指定的誤差時訓練完成,保存網絡的權值和偏差。
具體步驟如下:(1)初始化,隨機給定各連接權[w],[v]及閥值θi,rt。
(2)由給定的輸入輸出模式對計算隱層、輸出層各單元輸出bj=f(■wijai-θj)ct=f(■vjtbj-rt)式中:bj為隱層第j個神經元實際輸出;ct為輸出層第t個神經元的實際輸出;wij為輸入層至隱層的連接權;vjt為隱層至輸出層的連接權。
dtk=(ytk-ct)ct(1-ct)ejk=[■dtvjt]bj(1-bj)式中:dtk為輸出層的校正誤差;ejk為隱層的校正誤差。
(3)計算新的連接權及閥值,計算公式如下:vjt(n+1)=vjt(n)+琢dtkbjwij(n+1)=wij(n)+茁ejkaikrt(n+1)=rt(n)+琢dtkθj(n+1)=θj(n)+茁ejk式中:琢,茁為學習系數(0<琢<1,0<茁<1)。
(4)選取下一個輸入模式對返回第2步反復訓練直到網絡設輸出誤差達到要求結束訓練。
傳統的BP算法,實質上是把一組樣本輸入/輸出問題轉化為一個非線性優化問題,并通過負梯度下降算法,利用迭代運算求解權值問題的一種學習方法,但其收斂速度慢且容易陷入局部極小,為此提出了一種新的算法,即高斯消元法。
BP神經網絡(誤差反傳網絡)
雖然每個人工神經元很簡單,但是只要把多個人工神經元按一定方式連接起來就構成了一個能處理復雜信息的神經網絡。采用BP算法的多層前饋網絡是目前應用最廣泛的神經網絡,稱之為BP神經網絡。
它的最大功能就是能映射復雜的非線性函數關系。
對于已知的模型空間和數據空間,我們知道某個模型和他對應的數據,但是無法寫出它們之間的函數關系式,但是如果有大量的一一對應的模型和數據樣本集合,利用BP神經網絡可以模擬(映射)它們之間的函數關系。
一個三層BP網絡如圖8.11所示,分為輸入層、隱層、輸出層。它是最常用的BP網絡。理論分析證明三層網絡已經能夠表達任意復雜的連續函數關系了。只有在映射不連續函數時(如鋸齒波)才需要兩個隱層[8]。
圖8.11中,X=(x1,…,xi,…,xn)T為輸入向量,如加入x0=-1,可以為隱層神經元引入閥值;隱層輸出向量為:Y=(y1,…,yi,…,ym)T,如加入y0=-1,可以為輸出層神經元引入閥值;輸出層輸出向量為:O=(o1,…,oi,…,ol)T;輸入層到隱層之間的權值矩陣用V表示,V=(V1,…,Vj,…,Vl)T,其中列向量Vj表示隱層第j個神經元的權值向量;隱層到輸出層之間的權值矩陣用W表示,W=(W1,…,Wk,…,Wl)T,其中列向量Wk表示輸出層第k個神經元的權值向量。
圖8.11三層BP網絡[8]BP算法的基本思想是:預先給定一一對應的輸入輸出樣本集。學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。
正向傳播時,輸入樣本從輸入層傳入,經過各隱層逐層處理后,傳向輸出層。若輸出層的實際輸出與期望的輸出(教師信號)不符,則轉入誤差的反向傳播。
將輸出誤差以某種形式通過隱層向輸入層逐層反傳,并將誤差分攤給各層的所有神經元,獲得各層的誤差信號,用它們可以對各層的神經元的權值進行調整(關于如何修改權值參見韓立群著作[8]),循環不斷地利用輸入輸出樣本集進行權值調整,以使所有輸入樣本的輸出誤差都減小到滿意的精度。
這個過程就稱為網絡的學習訓練過程。當網絡訓練完畢后,它相當于映射(表達)了輸入輸出樣本之間的函數關系。
在地球物理勘探中,正演過程可以表示為如下函數:d=f(m)(8.31)它的反函數為m=f-1(d)(8.32)如果能夠獲得這個反函數,那么就解決了反演問題。
一般來說,難以寫出這個反函數,但是我們可以用BP神經網絡來映射這個反函數m=f-1(d)。
對于地球物理反問題,如果把觀測數據當作輸入數據,模型參數當作輸出數據,事先在模型空間隨機產生大量樣本進行正演計算,獲得對應的觀測數據樣本,利用它們對BP網絡進行訓練,則訓練好的網絡就相當于是地球物理數據方程的反函數。
可以用它進行反演,輸入觀測數據,網絡就會輸出它所對應的模型。BP神經網絡在能夠進行反演之前需要進行學習訓練。訓練需要大量的樣本,產生這些樣本需要大量的正演計算,此外在學習訓練過程也需要大量的時間。
但是BP神經網絡一旦訓練完畢,在反演中的計算時間可以忽略。要想使BP神經網絡比較好地映射函數關系,需要有全面代表性的樣本,但是由于模型空間的無限性,難以獲得全面代表性的樣本集合。
用這樣的樣本訓練出來的BP網絡,只能反映樣本所在的較小范圍數據空間和較小范圍模型空間的函數關系。對于超出它們的觀測數據就無法正確反演。
目前BP神經網絡在一維反演有較多應用,在二維、三維反演應用較少,原因就是難以產生全面代表性的樣本空間。
BP神經網絡方法
。
人工神經網絡是近幾年來發展起來的新興學科,它是一種大規模并行分布處理的非線性系統,適用解決難以用數學模型描述的系統,逼近任何非線性的特性,具有很強的自適應、自學習、聯想記憶、高度容錯和并行處理能力,使得神經網絡理論的應用已經滲透到了各個領域。
近年來,人工神經網絡在水質分析和評價中的應用越來越廣泛,并取得良好效果。在這些應用中,縱觀應用于模式識別的神經網絡,BP網絡是最有效、最活躍的方法之一。
BP網絡是多層前向網絡的權值學習采用誤差逆傳播學習的一種算法(ErrorBackPropagation,簡稱BP)。在具體應用該網絡時分為網絡訓練及網絡工作兩個階段。
在網絡訓練階段,根據給定的訓練模式,按照“模式的順傳播”→“誤差逆傳播”→“記憶訓練”→“學習收斂”4個過程進行網絡權值的訓練。
在網絡的工作階段,根據訓練好的網絡權值及給定的輸入向量,按照“模式順傳播”方式求得與輸入向量相對應的輸出向量的解答(閻平凡,2000)。
BP算法是一種比較成熟的有指導的訓練方法,是一個單向傳播的多層前饋網絡。它包含輸入層、隱含層、輸出層,如圖4-4所示。
圖4-4地下水質量評價的BP神經網絡模型圖4-4給出了4層地下水水質評價的BP神經網絡模型。同層節點之間不連接。
輸入信號從輸入層節點,依次傳過各隱含層節點,然后傳到輸出層節點,如果在輸出層得不到期望輸出,則轉入反向傳播,將誤差信號沿原來通路返回,通過學習來修改各層神經元的權值,使誤差信號最小。
每一層節點的輸出只影響下一層節點的輸入。
每個節點都對應著一個作用函數(f)和閾值(a),BP網絡的基本處理單元量為非線性輸入-輸出的關系,輸入層節點閾值為0,且f(x)=x;而隱含層和輸出層的作用函數為非線性的Sigmoid型(它是連續可微的)函數,其表達式為f(x)=1/(1+e-x)(4-55)設有L個學習樣本(Xk,Ok)(k=1,2,…,l),其中Xk為輸入,Ok為期望輸出,Xk經網絡傳播后得到的實際輸出為Yk,則Yk與要求的期望輸出Ok之間的均方誤差為區域地下水功能可持續性評價理論與方法研究式中:M為輸出層單元數;Yk,p為第k樣本對第p特性分量的實際輸出;Ok,p為第k樣本對第p特性分量的期望輸出。
樣本的總誤差為區域地下水功能可持續性評價理論與方法研究由梯度下降法修改網絡的權值,使得E取得最小值,學習樣本對Wij的修正為區域地下水功能可持續性評價理論與方法研究式中:η為學習速率,可取0到1間的數值。
所有學習樣本對權值Wij的修正為區域地下水功能可持續性評價理論與方法研究通常為增加學習過程的穩定性,用下式對Wij再進行修正:區域地下水功能可持續性評價理論與方法研究式中:β為充量常量;Wij(t)為BP網絡第t次迭代循環訓練后的連接權值;Wij(t-1)為BP網絡第t-1次迭代循環訓練后的連接權值。
在BP網絡學習的過程中,先調整輸出層與隱含層之間的連接權值,然后調整中間隱含層間的連接權值,最后調整隱含層與輸入層之間的連接權值。實現BP網絡訓練學習程序流程,如圖4-5所示(倪深海等,2000)。
圖4-5BP神經網絡模型程序框圖若將水質評價中的評價標準作為樣本輸入,評價級別作為網絡輸出,BP網絡通過不斷學習,歸納出評價標準與評價級別間復雜的內在對應關系,即可進行水質綜合評價。
BP網絡對地下水質量綜合評價,其評價方法不需要過多的數理統計知識,也不需要對水質量監測數據進行復雜的預處理,操作簡便易行,評價結果切合實際。
由于人工神經網絡方法具有高度民主的非線性函數映射功能,使得地下水水質評價結果較準確(袁曾任,1999)。
BP網絡可以任意逼近任何連續函數,但是它主要存在如下缺點:①從數學上看,它可歸結為一非線性的梯度優化問題,因此不可避免地存在局部極小問題;②學習算法的收斂速度慢,通常需要上千次或更多。
神經網絡具有學習、聯想和容錯功能,是地下水水質評價工作方法的改進,如何在現行的神經網絡中進一步吸取模糊和灰色理論的某些優點,建立更適合水質評價的神經網絡模型,使該模型既具有方法的先進性又具有現實的可行性,將是我們今后研究和探討的問題。
什么是BP神經網絡?
。
BP算法的基本思想是:學習過程由信號正向傳播與誤差的反向回傳兩個部分組成;正向傳播時,輸入樣本從輸入層傳入,經各隱層依次逐層處理,傳向輸出層,若輸出層輸出與期望不符,則將誤差作為調整信號逐層反向回傳,對神經元之間的連接權矩陣做出處理,使誤差減小。
經反復學習,最終使誤差減小到可接受的范圍。具體步驟如下:1、從訓練集中取出某一樣本,把信息輸入網絡中。2、通過各節點間的連接情況正向逐層處理后,得到神經網絡的實際輸出。
3、計算網絡實際輸出與期望輸出的誤差。4、將誤差逐層反向回傳至之前各層,并按一定原則將誤差信號加載到連接權值上,使整個神經網絡的連接權值向誤差減小的方向轉化。
5、対訓練集中每一個輸入—輸出樣本對重復以上步驟,直到整個訓練樣本集的誤差減小到符合要求為止。
BP人工神經網絡
人工神經網絡(artificialneuralnetwork,ANN)指由大量與自然神經系統相類似的神經元聯結而成的網絡,是用工程技術手段模擬生物網絡結構特征和功能特征的一類人工系統。
神經網絡不但具有處理數值數據的一般計算能力,而且還具有處理知識的思維、學習、記憶能力,它采用類似于“黑箱”的方法,通過學習和記憶,找出輸入、輸出變量之間的非線性關系(映射),在執行問題和求解時,將所獲取的數據輸入到已經訓練好的網絡,依據網絡學到的知識進行網絡推理,得出合理的答案與結果。
巖土工程中的許多問題是非線性問題,變量之間的關系十分復雜,很難用確切的數學、力學模型來描述。
工程現場實測數據的代表性與測點的位置、范圍和手段有關,有時很難滿足傳統統計方法所要求的統計條件和規律,加之巖土工程信息的復雜性和不確定性,因而運用神經網絡方法實現巖土工程問題的求解是合適的。
BP神經網絡模型是誤差反向傳播(BackPagation)網絡模型的簡稱。它由輸入層、隱含層和輸出層組成。
網絡的學習過程就是對網絡各層節點間連接權逐步修改的過程,這一過程由兩部分組成:正向傳播和反向傳播。
正向傳播是輸入模式從輸入層經隱含層處理傳向輸出層;反向傳播是均方誤差信息從輸出層向輸入層傳播,將誤差信號沿原來的連接通路返回,通過修改各層神經元的權值,使得誤差信號最小。
BP神經網絡模型在建立及應用過程中,主要存在的不足和建議有以下四個方面:(1)對于神經網絡,數據愈多,網絡的訓練效果愈佳,也更能反映實際。
但在實際操作中,由于條件的限制很難選取大量的樣本值進行訓練,樣本數量偏少。(2)BP網絡模型其計算速度較慢、無法表達預測量與其相關參數之間親疏關系。
(3)以定量數據為基礎建立模型,若能收集到充分資料,以定性指標(如基坑降水方式、基坑支護模式、施工工況等)和一些易獲取的定量指標作為輸入層,以評價等級作為輸出層,這樣建立的BP網絡模型將更準確全面。
(4)BP人工神經網絡系統具有非線性、智能的特點。
較好地考慮了定性描述和定量計算、精確邏輯分析和非確定性推理等方面,但由于樣本不同,影響要素的權重不同,以及在根據先驗知識和前人的經驗總結對定性參數進行量化處理,必然會影響評價的客觀性和準確性。
因此,在實際評價中只有根據不同的基坑施工工況、不同的周邊環境條件,應不同用戶的需求,選擇不同的分析指標,才能滿足復雜工況條件下地質環境評價的要求,取得較好的應用效果。
神經網絡BP模型
一、BP模型概述誤差逆傳播(ErrorBack-Propagation)神經網絡模型簡稱為BP(Back-Propagation)網絡模型。
PallWerbas博士于1974年在他的博士論文中提出了誤差逆傳播學習算法。完整提出并被廣泛接受誤差逆傳播學習算法的是以Rumelhart和McCelland為首的科學家小組。
他們在1986年出版“ParallelDistributedProcessing,ExplorationsintheMicrostructureofCognition”(《并行分布信息處理》)一書中,對誤差逆傳播學習算法進行了詳盡的分析與介紹,并對這一算法的潛在能力進行了深入探討。
BP網絡是一種具有3層或3層以上的階層型神經網絡。上、下層之間各神經元實現全連接,即下層的每一個神經元與上層的每一個神經元都實現權連接,而每一層各神經元之間無連接。
網絡按有教師示教的方式進行學習,當一對學習模式提供給網絡后,神經元的激活值從輸入層經各隱含層向輸出層傳播,在輸出層的各神經元獲得網絡的輸入響應。
在這之后,按減小期望輸出與實際輸出的誤差的方向,從輸入層經各隱含層逐層修正各連接權,最后回到輸入層,故得名“誤差逆傳播學習算法”。
隨著這種誤差逆傳播修正的不斷進行,網絡對輸入模式響應的正確率也不斷提高。
BP網絡主要應用于以下幾個方面:1)函數逼近:用輸入模式與相應的期望輸出模式學習一個網絡逼近一個函數;2)模式識別:用一個特定的期望輸出模式將它與輸入模式聯系起來;3)分類:把輸入模式以所定義的合適方式進行分類;4)數據壓縮:減少輸出矢量的維數以便于傳輸或存儲。
在人工神經網絡的實際應用中,80%~90%的人工神經網絡模型采用BP網絡或它的變化形式,它也是前向網絡的核心部分,體現了人工神經網絡最精華的部分。
二、BP模型原理下面以三層BP網絡為例,說明學習和應用的原理。
1.數據定義P對學習模式(xp,dp),p=1,2,…,P;輸入模式矩陣X[N][P]=(x1,x2,…,xP);目標模式矩陣d[M][P]=(d1,d2,…,dP)。
三層BP網絡結構輸入層神經元節點數S0=N,i=1,2,…,S0;隱含層神經元節點數S1,j=1,2,…,S1;神經元激活函數f1[S1];權值矩陣W1[S1][S0];偏差向量b1[S1]。
輸出層神經元節點數S2=M,k=1,2,…,S2;神經元激活函數f2[S2];權值矩陣W2[S2][S1];偏差向量b2[S2]。
學習參數目標誤差?;初始權更新值Δ0;最大權更新值Δmax;權更新值增大倍數η+;權更新值減小倍數η-。
2.誤差函數定義對第p個輸入模式的誤差的計算公式為中國礦產資源評價新技術與評價新模型y2kp為BP網的計算輸出。
3.BP網絡學習公式推導BP網絡學習公式推導的指導思想是,對網絡的權值W、偏差b修正,使誤差函數沿負梯度方向下降,直到網絡輸出誤差精度達到目標精度要求,學習結束。
各層輸出計算公式輸入層y0i=xi,i=1,2,…,S0;隱含層中國礦產資源評價新技術與評價新模型y1j=f1(z1j),j=1,2,…,S1;輸出層中國礦產資源評價新技術與評價新模型y2k=f2(z2k),k=1,2,…,S2。
輸出節點的誤差公式中國礦產資源評價新技術與評價新模型對輸出層節點的梯度公式推導中國礦產資源評價新技術與評價新模型E是多個y2m的函數,但只有一個y2k與wkj有關,各y2m間相互獨立。
其中中國礦產資源評價新技術與評價新模型則中國礦產資源評價新技術與評價新模型設輸出層節點誤差為δ2k=(dk-y2k)·f2′(z2k),則中國礦產資源評價新技術與評價新模型同理可得中國礦產資源評價新技術與評價新模型對隱含層節點的梯度公式推導中國礦產資源評價新技術與評價新模型E是多個y2k的函數,針對某一個w1ji,對應一個y1j,它與所有的y2k有關。
因此,上式只存在對k的求和,其中中國礦產資源評價新技術與評價新模型則中國礦產資源評價新技術與評價新模型設隱含層節點誤差為中國礦產資源評價新技術與評價新模型則中國礦產資源評價新技術與評價新模型同理可得中國礦產資源評價新技術與評價新模型4.采用彈性BP算法(RPROP)計算權值W、偏差b的修正值ΔW,Δb1993年德國MartinRiedmiller和HeinrichBraun在他們的論文“ADirectAdaptiveMethodforFasterBackpropagationLearning:TheRPROPAlgorithm”中,提出ResilientBackpropagation算法——彈性BP算法(RPROP)。
這種方法試圖消除梯度的大小對權步的有害影響,因此,只有梯度的符號被認為表示權更新的方向。
權改變的大小僅僅由權專門的“更新值”確定中國礦產資源評價新技術與評價新模型其中表示在模式集的所有模式(批學習)上求和的梯度信息,(t)表示t時刻或第t次學習。
權更新遵循規則:如果導數是正(增加誤差),這個權由它的更新值減少。如果導數是負,更新值增加。中國礦產資源評價新技術與評價新模型RPROP算法是根據局部梯度信息實現權步的直接修改。
對于每個權,我們引入它的各自的更新值,它獨自確定權更新值的大小。
這是基于符號相關的自適應過程,它基于在誤差函數E上的局部梯度信息,按照以下的學習規則更新中國礦產資源評價新技術與評價新模型其中0<η-<1<η+。
在每個時刻,如果目標函數的梯度改變它的符號,它表示最后的更新太大,更新值應由權更新值減小倍數因子η-得到減少;如果目標函數的梯度保持它的符號,更新值應由權更新值增大倍數因子η+得到增大。
為了減少自由地可調參數的數目,增大倍數因子η+和減小倍數因子η–被設置到固定值η+=1.2,η-=0.5,這兩個值在大量的實踐中得到了很好的效果。
RPROP算法采用了兩個參數:初始權更新值Δ0和最大權更新值Δmax當學習開始時,所有的更新值被設置為初始值Δ0,因為它直接確定了前面權步的大小,它應該按照權自身的初值進行選擇,例如,Δ0=0.1(默認設置)。
為了使權不至于變得太大,設置最大權更新值限制Δmax,默認上界設置為Δmax=50.0。在很多實驗中,發現通過設置最大權更新值Δmax到相當小的值,例如Δmax=1.0。
我們可能達到誤差減小的平滑性能。5.計算修正權值W、偏差b第t次學習,權值W、偏差b的的修正公式W(t)=W(t-1)+ΔW(t),b(t)=b(t-1)+Δb(t),其中,t為學習次數。
6.BP網絡學習成功結束條件每次學習累積誤差平方和中國礦產資源評價新技術與評價新模型每次學習平均誤差中國礦產資源評價新技術與評價新模型當平均誤差MSE<ε,BP網絡學習成功結束。
7.BP網絡應用預測在應用BP網絡時,提供網絡輸入給輸入層,應用給定的BP網絡及BP網絡學習得到的權值W、偏差b,網絡輸入經過從輸入層經各隱含層向輸出層的“順傳播”過程,計算出BP網的預測輸出。
8.神經元激活函數f線性函數f(x)=x,f′(x)=1,f(x)的輸入范圍(-∞,+∞),輸出范圍(-∞,+∞)。一般用于輸出層,可使網絡輸出任何值。
S型函數S(x)中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍(0,1)。f′(x)=f(x)[1-f(x)],f′(x)的輸入范圍(-∞,+∞),輸出范圍(0,]。
一般用于隱含層,可使范圍(-∞,+∞)的輸入,變成(0,1)的網絡輸出,對較大的輸入,放大系數較小;而對較小的輸入,放大系數較大,所以可用來處理和逼近非線性的輸入/輸出關系。
在用于模式識別時,可用于輸出層,產生逼近于0或1的二值輸出。雙曲正切S型函數中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍(-1,1)。
f′(x)=1-f(x)·f(x),f′(x)的輸入范圍(-∞,+∞),輸出范圍(0,1]。
一般用于隱含層,可使范圍(-∞,+∞)的輸入,變成(-1,1)的網絡輸出,對較大的輸入,放大系數較小;而對較小的輸入,放大系數較大,所以可用來處理和逼近非線性的輸入/輸出關系。
階梯函數類型1中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍{0,1}。f′(x)=0。
類型2中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍{-1,1}。f′(x)=0。
斜坡函數類型1中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍[0,1]。中國礦產資源評價新技術與評價新模型f′(x)的輸入范圍(-∞,+∞),輸出范圍{0,1}。
類型2中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍[-1,1]。中國礦產資源評價新技術與評價新模型f′(x)的輸入范圍(-∞,+∞),輸出范圍{0,1}。
三、總體算法1.三層BP網絡(含輸入層,隱含層,輸出層)權值W、偏差b初始化總體算法(1)輸入參數X[N][P],S0,S1,f1[S1],S2,f2[S2];(2)計算輸入模式X[N][P]各個變量的最大值,最小值矩陣Xmax[N],Xmin[N];(3)隱含層的權值W1,偏差b1初始化。
情形1:隱含層激活函數f()都是雙曲正切S型函數1)計算輸入模式X[N][P]的每個變量的范圍向量Xrng[N];2)計算輸入模式X的每個變量的范圍均值向量Xmid[N];3)計算W,b的幅度因子Wmag;4)產生[-1,1]之間均勻分布的S0×1維隨機數矩陣Rand[S1];5)產生均值為0,方差為1的正態分布的S1×S0維隨機數矩陣Randnr[S1][S0],隨機數范圍大致在[-1,1];6)計算W[S1][S0],b[S1];7)計算隱含層的初始化權值W1[S1][S0];8)計算隱含層的初始化偏差b1[S1];9))輸出W1[S1][S0],b1[S1]。
情形2:隱含層激活函數f()都是S型函數1)計算輸入模式X[N][P]的每個變量的范圍向量Xrng[N];2)計算輸入模式X的每個變量的范圍均值向量Xmid[N];3)計算W,b的幅度因子Wmag;4)產生[-1,1]之間均勻分布的S0×1維隨機數矩陣Rand[S1];5)產生均值為0,方差為1的正態分布的S1×S0維隨機數矩陣Randnr[S1][S0],隨機數范圍大致在[-1,1];6)計算W[S1][S0],b[S1];7)計算隱含層的初始化權值W1[S1][S0];8)計算隱含層的初始化偏差b1[S1];9)輸出W1[S1][S0],b1[S1]。
情形3:隱含層激活函數f()為其他函數的情形1)計算輸入模式X[N][P]的每個變量的范圍向量Xrng[N];2)計算輸入模式X的每個變量的范圍均值向量Xmid[N];3)計算W,b的幅度因子Wmag;4)產生[-1,1]之間均勻分布的S0×1維隨機數矩陣Rand[S1];5)產生均值為0,方差為1的正態分布的S1×S0維隨機數矩陣Randnr[S1][S0],隨機數范圍大致在[-1,1];6)計算W[S1][S0],b[S1];7)計算隱含層的初始化權值W1[S1][S0];8)計算隱含層的初始化偏差b1[S1];9)輸出W1[S1][S0],b1[S1]。
(4)輸出層的權值W2,偏差b2初始化1)產生[-1,1]之間均勻分布的S2×S1維隨機數矩陣W2[S2][S1];2)產生[-1,1]之間均勻分布的S2×1維隨機數矩陣b2[S2];3)輸出W2[S2][S1],b2[S2]。
2.應用彈性BP算法(RPROP)學習三層BP網絡(含輸入層,隱含層,輸出層)權值W、偏差b總體算法函數:Train3BP_RPROP(S0,X,P,S1,W1,b1,f1,S2,W2,b2,f2,d,TP)(1)輸入參數P對模式(xp,dp),p=1,2,…,P;三層BP網絡結構;學習參數。
(2)學習初始化1);2)各層W,b的梯度值,初始化為零矩陣。
(3)由輸入模式X求第一次學習各層輸出y0,y1,y2及第一次學習平均誤差MSE(4)進入學習循環epoch=1(5)判斷每次學習誤差是否達到目標誤差要求如果MSE<?,則,跳出epoch循環,轉到(12)。
(6)保存第epoch-1次學習產生的各層W,b的梯度值,(7)求第epoch次學習各層W,b的梯度值,1)求各層誤差反向傳播值δ;2)求第p次各層W,b的梯度值,;3)求p=1,2,…,P次模式產生的W,b的梯度值,的累加。
(8)如果epoch=1,則將第epoch-1次學習的各層W,b的梯度值,設為第epoch次學習產生的各層W,b的梯度值,。
(9)求各層W,b的更新1)求權更新值Δij更新;2)求W,b的權更新值,;3)求第epoch次學習修正后的各層W,b。
(10)用修正后各層W、b,由X求第epoch次學習各層輸出y0,y1,y2及第epoch次學習誤差MSE(11)epoch=epoch+1,如果epoch≤MAX_EPOCH,轉到(5);否則,轉到(12)。
(12)輸出處理1)如果MSE<ε,則學習達到目標誤差要求,輸出W1,b1,W2,b2。2)如果MSE≥ε,則學習沒有達到目標誤差要求,再次學習。
(13)結束3.三層BP網絡(含輸入層,隱含層,輸出層)預測總體算法首先應用Train3lBP_RPROP()學習三層BP網絡(含輸入層,隱含層,輸出層)權值W、偏差b,然后應用三層BP網絡(含輸入層,隱含層,輸出層)預測。
函數:Simu3lBP()。1)輸入參數:P個需預測的輸入數據向量xp,p=1,2,…,P;三層BP網絡結構;學習得到的各層權值W、偏差b。
2)計算P個需預測的輸入數據向量xp(p=1,2,…,P)的網絡輸出y2[S2][P],輸出預測結果y2[S2][P]。四、總體算法流程圖BP網絡總體算法流程圖見附圖2。
五、數據流圖BP網數據流圖見附圖1。
六、實例實例一全國銅礦化探異常數據BP模型分類1.全國銅礦化探異常數據準備在全國銅礦化探數據上用穩健統計學方法選取銅異常下限值33.1,生成全國銅礦化探異常數據。
2.模型數據準備根據全國銅礦化探異常數據,選取7類33個礦點的化探數據作為模型數據。
這7類分別是巖漿巖型銅礦、斑巖型銅礦、矽卡巖型、海相火山型銅礦、陸相火山型銅礦、受變質型銅礦、海相沉積型銅礦,另添加了一類沒有銅異常的模型(表8-1)。3.測試數據準備全國化探數據作為測試數據集。
4.BP網絡結構隱層數2,輸入層到輸出層向量維數分別為14,9、5、1。學習率設置為0.9,系統誤差1e-5。沒有動量項。表8-1模型數據表續表5.計算結果圖如圖8-2、圖8-3。
圖8-2圖8-3全國銅礦礦床類型BP模型分類示意圖實例二全國金礦礦石量品位數據BP模型分類1.模型數據準備根據全國金礦儲量品位數據,選取4類34個礦床數據作為模型數據,這4類分別是綠巖型金礦、與中酸性浸入巖有關的熱液型金礦、微細浸染型型金礦、火山熱液型金礦(表8-2)。
2.測試數據準備模型樣本點和部分金礦點金屬量、礦石量、品位數據作為測試數據集。3.BP網絡結構輸入層為三維,隱層1層,隱層為三維,輸出層為四維,學習率設置為0.8,系統誤差1e-4,迭代次數5000。
表8-2模型數據4.計算結果結果見表8-3、8-4。表8-3訓練學習結果表8-4預測結果(部分)續表。
bp神經網絡
BP(BackPropagation)網絡是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播算法訓練的多層前饋網絡,是目前應用最廣泛的神經網絡模型之一。
BP網絡能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網絡的權值和閾值,使網絡的誤差平方和最小。
BP神經網絡模型拓撲結構包括輸入層(input)、隱層(hidelayer)和輸出層(outputlayer)。人工神經網絡就是模擬人思維的第二種方式。
這是一個非線性動力學系統,其特色在于信息的分布式存儲和并行協同處理。雖然單個神經元的結構極其簡單,功能有限,但大量神經元構成的網絡系統所能實現的行為卻是極其豐富多彩的。
人工神經網絡首先要以一定的學習準則進行學習,然后才能工作?,F以人工神經網絡對手寫“A”、“B”兩個字母的識別為例進行說明,規定當“A”輸入網絡時,應該輸出“1”,而當輸入為“B”時,輸出為“0”。
所以網絡學習的準則應該是:如果網絡作出錯誤的的判決,則通過網絡的學習,應使得網絡減少下次犯同樣錯誤的可能性。
首先,給網絡的各連接權值賦予(0,1)區間內的隨機值,將“A”所對應的圖象模式輸入給網絡,網絡將輸入模式加權求和、與門限比較、再進行非線性運算,得到網絡的輸出。
在此情況下,網絡輸出為“1”和“0”的概率各為50%,也就是說是完全隨機的。這時如果輸出為“1”(結果正確),則使連接權值增大,以便使網絡再次遇到“A”模式輸入時,仍然能作出正確的判斷。
如果輸出為“0”(即結果錯誤),則把網絡連接權值朝著減小綜合輸入加權值的方向調整,其目的在于使網絡下次再遇到“A”模式輸入時,減小犯同樣錯誤的可能性。
如此操作調整,當給網絡輪番輸入若干個手寫字母“A”、“B”后,經過網絡按以上學習方法進行若干次學習后,網絡判斷的正確率將大大提高。
這說明網絡對這兩個模式的學習已經獲得了成功,它已將這兩個模式分布地記憶在網絡的各個連接權值上。當網絡再次遇到其中任何一個模式時,能夠作出迅速、準確的判斷和識別。
一般說來,網絡中所含的神經元個數越多,則它能記憶、識別的模式也就越多。如圖所示拓撲結構的單隱層前饋網絡,一般稱為三層前饋網或三層感知器,即:輸入層、中間層(也稱隱層)和輸出層。
它的特點是:各層神經元僅與相鄰層神經元之間相互全連接,同層內神經元之間無連接,各層神經元之間無反饋連接,構成具有層次結構的前饋型神經網絡系統。
單計算層前饋神經網絡只能求解線性可分問題,能夠求解非線性問題的網絡必須是具有隱層的多層神經網絡。神經網絡的研究內容相當廣泛,反映了多學科交叉技術領域的特點。
主要的研究工作集中在以下幾個方面:(1)生物原型研究。從生理學、心理學、解剖學、腦科學、病理學等生物科學方面研究神經細胞、神經網絡、神經系統的生物原型結構及其功能機理。(2)建立理論模型。
根據生物原型的研究,建立神經元、神經網絡的理論模型。其中包括概念模型、知識模型、物理化學模型、數學模型等。(3)網絡模型與算法研究。
在理論模型研究的基礎上構作具體的神經網絡模型,以實現計算機模擬或準備制作硬件,包括網絡學習算法的研究。這方面的工作也稱為技術模型研究。(4)人工神經網絡應用系統。
在網絡模型與算法研究的基礎上,利用人工神經網絡組成實際的應用系統,例如,完成某種信號處理或模式識別的功能、構作專家系統、制成機器人等等。
縱觀當代新興科學技術的發展歷史,人類在征服宇宙空間、基本粒子,生命起源等科學技術領域的進程中歷經了崎嶇不平的道路。我們也會看到,探索人腦功能和神經網絡的研究將伴隨著重重困難的克服而日新月異。
神經網絡可以用作分類、聚類、預測等。神經網絡需要有一定量的歷史數據,通過歷史數據的訓練,網絡可以學習到數據中隱含的知識。
在你的問題中,首先要找到某些問題的一些特征,以及對應的評價數據,用這些數據來訓練神經網絡。雖然BP網絡得到了廣泛的應用,但自身也存在一些缺陷和不足,主要包括以下幾個方面的問題。
首先,由于學習速率是固定的,因此網絡的收斂速度慢,需要較長的訓練時間。
對于一些復雜問題,BP算法需要的訓練時間可能非常長,這主要是由于學習速率太小造成的,可采用變化的學習速率或自適應的學習速率加以改進。
其次,BP算法可以使權值收斂到某個值,但并不保證其為誤差平面的全局最小值,這是因為采用梯度下降法可能產生一個局部最小值。對于這個問題,可以采用附加動量法來解決。
再次,網絡隱含層的層數和單元數的選擇尚無理論上的指導,一般是根據經驗或者通過反復實驗確定。因此,網絡往往存在很大的冗余性,在一定程度上也增加了網絡學習的負擔。最后,網絡的學習和記憶具有不穩定性。
也就是說,如果增加了學習樣本,訓練好的網絡就需要從頭開始訓練,對于以前的權值和閾值是沒有記憶的。但是可以將預測、分類或聚類做的比較好的權值保存。
?
總結
以上是生活随笔為你收集整理的bp神经网络的训练方法,一文搞定bp神经网络的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机辅助机械设计实训教程,机械设计教学
- 下一篇: 计算机导论高清课件教程,计算机导论-PP