導航:首頁 > 源碼編譯 > bp神經網路演算法公式

bp神經網路演算法公式

發布時間:2023-03-03 01:55:23

❶ 深入淺出BP神經網路演算法的原理

深入淺出BP神經網路演算法的原理
相信每位剛接觸神經網路的時候都會先碰到BP演算法的問題,如何形象快速地理解BP神經網路就是我們學習的高級樂趣了(畫外音:樂趣?你在跟我談樂趣?)
本篇博文就是要簡單粗暴地幫助各位童鞋快速入門採取BP演算法的神經網路。
BP神經網路是怎樣的一種定義?看這句話:一種按「誤差逆傳播演算法訓練」的多層前饋網路。
BP的思想就是:利用輸出後的誤差來估計輸出層前一層的誤差,再用這層誤差來估計更前一層誤差,如此獲取所有各層誤差估計。這里的誤差估計可以理解為某種偏導數,我們就是根據這種偏導數來調整各層的連接權值,再用調整後的連接權值重新計算輸出誤差。直到輸出的誤差達到符合的要求或者迭代次數溢出設定值。
說來說去,「誤差」這個詞說的很多嘛,說明這個演算法是不是跟誤差有很大的關系?
沒錯,BP的傳播對象就是「誤差」,傳播目的就是得到所有層的估計誤差。
它的學習規則是:使用最速下降法,通過反向傳播(就是一層一層往前傳)不斷調整網路的權值和閾值,最後使全局誤差系數最小。
它的學習本質就是:對各連接權值的動態調整。

拓撲結構如上圖:輸入層(input),隱藏層(hide layer),輸出層(output)
BP網路的優勢就是能學習和儲存大量的輸入輸出的關系,而不用事先指出這種數學關系。那麼它是如何學習的?
BP利用處處可導的激活函數來描述該層輸入與該層輸出的關系,常用S型函數δ來當作激活函數。

我們現在開始有監督的BP神經網路學習演算法:
1、正向傳播得到輸出層誤差e
=>輸入層輸入樣本=>各隱藏層=>輸出層
2、判斷是否反向傳播
=>若輸出層誤差與期望不符=>反向傳播
3、誤差反向傳播
=>誤差在各層顯示=>修正各層單元的權值,直到誤差減少到可接受程度。
演算法闡述起來比較簡單,接下來通過數學公式來認識BP的真實面目。
假設我們的網路結構是一個含有N個神經元的輸入層,含有P個神經元的隱層,含有Q個神經元的輸出層。

這些變數分別如下:

認識好以上變數後,開始計算:
一、用(-1,1)內的隨機數初始化誤差函數,並設定精度ε,最多迭代次數M
二、隨機選取第k個輸入樣本及對應的期望輸出

重復以下步驟至誤差達到要求:
三、計算隱含層各神經元的輸入和輸出

四、計算誤差函數e對輸出層各神經元的偏導數,根據輸出層期望輸出和實際輸出以及輸出層輸入等參數計算。

五、計算誤差函數對隱藏層各神經元的偏導數,根據後一層(這里即輸出層)的靈敏度(稍後介紹靈敏度)δo(k),後一層連接權值w,以及該層的輸入值等參數計算
六、利用第四步中的偏導數來修正輸出層連接權值

七、利用第五步中的偏導數來修正隱藏層連接權值

八、計算全局誤差(m個樣本,q個類別)

比較具體的計算方法介紹好了,接下來用比較簡潔的數學公式來大致地概括這個過程,相信看完上述的詳細步驟都會有些了解和領悟。
假設我們的神經網路是這樣的,此時有兩個隱藏層。
我們先來理解靈敏度是什麼?
看下面一個公式:

這個公式是誤差對b的一個偏導數,這個b是怎麼?它是一個基,靈敏度δ就是誤差對基的變化率,也就是導數。
因為?u/?b=1,所以?E/?b=?E/?u=δ,也就是說bias基的靈敏度?E/?b=δ等於誤差E對一個節點全部輸入u的導數?E/?u。
也可以認為這里的靈敏度等於誤差E對該層輸入的導數,注意了,這里的輸入是上圖U級別的輸入,即已經完成層與層權值計算後的輸入。
每一個隱藏層第l層的靈敏度為:

這里的「?」表示每個元素相乘,不懂的可與上面詳細公式對比理解
而輸出層的靈敏度計算方法不同,為:

而最後的修正權值為靈敏度乘以該層的輸入值,注意了,這里的輸入可是未曾乘以權值的輸入,即上圖的Xi級別。

對於每一個權值(W)ij都有一個特定的學習率ηIj,由演算法學習完成。

❷ 用Matlab算BP神經網路的具體演算法

BP神經網路的傳遞函數一般採用sigmiod函數,學習演算法一般採用最小梯度下降法;下面是具體的程序例子:
例1 採用動量梯度下降演算法訓練 BP 網路。
訓練樣本定義如下:
輸入矢量為
p =[-1 -2 3 1
-1 1 5 -3]
目標矢量為 t = [-1 -1 1 1]
解:本例的 MATLAB 程序如下:

close all
clear
echo on
clc
% NEWFF——生成一個新的前向神經網路
% TRAIN——對 BP 神經網路進行訓練
% SIM——對 BP 神經網路進行模擬
pause
% 敲任意鍵開始
clc
% 定義訓練樣本
% P 為輸入矢量
P=[-1, -2, 3, 1; -1, 1, 5, -3];
% T 為目標矢量
T=[-1, -1, 1, 1];
pause;
clc
% 創建一個新的前向神經網路
net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm')
% 當前輸入層權值和閾值
inputWeights=net.IW{1,1}
inputbias=net.b{1}
% 當前網路層權值和閾值
layerWeights=net.LW{2,1}
layerbias=net.b{2}
pause
clc
% 設置訓練參數
net.trainParam.show = 50;
net.trainParam.lr = 0.05; 學習速率
net.trainParam.mc = 0.9; 動量系數
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
pause
clc
% 調用TRAINGDM 演算法訓練 BP 網路
[net,tr]=train(net,P,T);
pause
clc
% 對 BP 網路進行模擬
A = sim(net,P)
% 計算模擬誤差
E = T - A
MSE=mse(E)
pause
clc
echo off

❸ 神經網路BP模型

一、BP模型概述

誤差逆傳播(Error Back-Propagation)神經網路模型簡稱為BP(Back-Propagation)網路模型。

Pall Werbas博士於1974年在他的博士論文中提出了誤差逆傳播學習演算法。完整提出並被廣泛接受誤差逆傳播學習演算法的是以Rumelhart和McCelland為首的科學家小組。他們在1986年出版「Parallel Distributed Processing,Explorations in the Microstructure of Cognition」(《並行分布信息處理》)一書中,對誤差逆傳播學習演算法進行了詳盡的分析與介紹,並對這一演算法的潛在能力進行了深入探討。

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,Δb

1993年德國 Martin Riedmiller和Heinrich Braun 在他們的論文「A Direct Adaptive Method for Faster Backpropagation Learning:The RPROP Algorithm」中,提出Resilient Backpropagation演算法——彈性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人工神經網路方法

(一)方法原理

人工神經網路是由大量的類似人腦神經元的簡單處理單元廣泛地相互連接而成的復雜的網路系統。理論和實踐表明,在信息處理方面,神經網路方法比傳統模式識別方法更具有優勢。人工神經元是神經網路的基本處理單元,其接收的信息為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神經網路演算法公式相關的資料

熱點內容
天津市伺服器供應商雲伺服器 瀏覽:107
數控車床子程序編程 瀏覽:103
floydwarshall演算法 瀏覽:713
丟失微信app怎麼找 瀏覽:248
php能寫前端嗎 瀏覽:5
伺服器如何更改raid模式 瀏覽:90
方舟伺服器怎麼導出來 瀏覽:608
手機顯示伺服器異常什麼鬼 瀏覽:379
新聞伺服器的網址是什麼 瀏覽:669
程序員年底招人 瀏覽:319
廣發app怎麼查房貸 瀏覽:860
安卓手機怎麼下土豆 瀏覽:921
只有一個app顯示網路異常怎麼回事 瀏覽:988
解壓玩具是水寶寶 瀏覽:817
壓縮機保護怎麼解決 瀏覽:944
單片機簡易電子時鍾 瀏覽:402
pdf影印版 瀏覽:689
單片機的中斷技術 瀏覽:626
表格加密才能打開 瀏覽:39
多態可以提高編譯可靠性嗎 瀏覽:599