導航:首頁 > 編程大全 > 人工神經網路反向傳播

人工神經網路反向傳播

發布時間:2021-03-04 03:42:30

① 循環神經網路的反向傳播

可以採用MATLAB軟體中的神經網路工具箱來實現BP神經網路演算法。BP神經網路的學習過程專由屬前向計算過程、誤差計算和誤差反向傳播過程組成。雙含隱層BP神經網路的MATLAB程序,由輸入部分、計算部分、輸出部分組成,其中輸入部分包括網路參數與訓練樣本數據的輸入、初始化權系、求輸入輸出模式各分量的平均值及標准差並作相應數據預處理、讀入測試集樣本數據並作相應數據預處理;計算部分包括正向計算、反向傳播、計算各層權矩陣的增量、自適應和動量項修改各層權矩陣;輸出部分包括顯示網路最終狀態及計算值與期望值之間的相對誤差、輸出測試集相應結果、顯示訓練,測試誤差曲線。

② 如何理解神經網路裡面的反向傳播演算法

可以採用MATLAB軟體中的神經網路工具箱來實現BP神經網路演算法。BP神經網路的學習過程由前專向屬計算過程、誤差計算和誤差反向傳播過程組成。雙含隱層BP神經網路的MATLAB程序,由輸入部分、計算部分、輸出部分組成,其中輸入部分包括網路參數與訓練樣本數據的輸入、初始化權系、求輸入輸出模式各分量的平均值及標准差並作相應數據預處理、讀入測試集樣本數據並作相應數據預處理;計算部分包括正向計算、反向傳播、計算各層權矩陣的增量、自適應和動量項修改各層權矩陣;輸出部分包括顯示網路最終狀態及計算值與期望值之間的相對誤差、輸出測試集相應結果、顯示訓練,測試誤差曲線。

③ 如何理解反向傳播演算法

反向傳播演算法(Backpropagation)是目前用來訓練人工神經網路(Artificial Neural Network,ANN)的最常用且最有效的演算法。其主要思想是:
(1)將訓練集數據輸入到ANN的輸入層,經過隱藏層,最後達到輸出層並輸出結果,這是ANN的前向傳播過程;
(2)由於ANN的輸出結果與實際結果有誤差,則計算估計值與實際值之間的誤差,並將該誤差從輸出層向隱藏層反向傳播,直至傳播到輸入層;
(3)在反向傳播的過程中,根據誤差調整各種參數的值;不斷迭代上述過程,直至收斂。

反向傳播演算法的思想比較容易理解,但具體的公式則要一步步推導,因此本文著重介紹公式的推導過程。

1. 變數定義

上圖是一個三層人工神經網路,layer1至layer3分別是輸入層、隱藏層和輸出層。如圖,先定義一些變數:
表示第層的第個神經元連接到第層的第個神經元的權重;
表示第層的第個神經元的偏置;
表示第層的第個神經元的輸入,即:

表示第層的第個神經元的輸出,即:

其中表示激活函數。

2. 代價函數
代價函數被用來計算ANN輸出值與實際值之間的誤差。常用的代價函數是二次代價函數(Quadratic cost function):

其中,表示輸入的樣本,表示實際的分類,表示預測的輸出,表示神經網路的最大層數。

3. 公式及其推導
本節將介紹反向傳播演算法用到的4個公式,並進行推導。如果不想了解公式推導過程,請直接看第4節的演算法步驟。
首先,將第層第個神經元中產生的錯誤(即實際值與預測值之間的誤差)定義為:

本文將以一個輸入樣本為例進行說明,此時代價函數表示為:

公式1(計算最後一層神經網路產生的錯誤):

其中,表示Hadamard乘積,用於矩陣或向量之間點對點的乘法運算。公式1的推導過程如下:

公式2(由後往前,計算每一層神經網路產生的錯誤):

推導過程:

公式3(計算權重的梯度):

推導過程:

公式4(計算偏置的梯度):

推導過程:

4. 反向傳播演算法偽代碼

輸入訓練集

對於訓練集中的每個樣本x,設置輸入層(Input layer)對應的激活值:
前向傳播:


計算輸出層產生的錯誤:

④ 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神經網路在一維反演有較多應用,在二維、三維反演應用較少,原因就是難以產生全面代表性的樣本空間。

⑤ 如何理解神經網路裡面的反向傳播演算法

反向傳播演算法(Backpropagation)是目前用來訓練人工神經網路(Artificial Neural Network,ANN)的最常用且最有效的演算法。回其主要思想是:答
(1)將訓練集數據輸入到ANN的輸入層,經過隱藏層,最後達到輸出層並輸出結果,這是ANN的前向傳播過程;
(2)由於ANN的輸出結果與實際結果有誤差,則計算估計值與實際值之間的誤差,並將該誤差從輸出層向隱藏層反向傳播,直至傳播到輸入層;
(3)在反向傳播的過程中,根據誤差調整各種參數的值;不斷迭代上述過程,直至收斂。

反向傳播演算法的思想比較容易理解,但具體的公式則要一步步推導,因此本文著重介紹公式的推導過程。

1. 變數定義

上圖是一個三層人工神經網路,layer1至layer3分別是輸入層、隱藏層和輸出層。如圖,先定義一些變數:
表示第層的第個神經元連接到第層的第個神經元的權重;
表示第層的第個神經元的偏置;
表示第層的第個神經元的輸入,即:

表示第層的第個神經元的輸出,即:

其中表示激活函數。

⑥ bp神經網路誤差反向傳播損失函數對什麼求導數

一般是對參量求導。問題就是選擇最佳的參量值使損失最小。

⑦ BP神經網路反向傳播中的問題

BP演算法的基本思想是:學習過程由信號正向傳播與誤差的反向回傳兩個部專分組成;正向傳播時屬,輸入樣本從輸入層傳入,經各隱層依次逐層處理,傳向輸出層,若輸出層輸出與期望不符,則將誤差作為調整信號逐層反向回傳,對神經元之間的連接權矩陣做出處理,使誤差減小。經反復學習,最終使誤差減小到可接受的范圍。具體步驟如下: 1、從訓練集中取出某一樣本,把信息輸入網路中。 2、通過各節點間的連接情況正向逐層處理後,得到神經網路的實際輸出。 3、計算網路實際輸出與期望輸出的誤差。 4、將誤差逐層反向回傳至之前各層,並按一定原則將誤差信號載入到連接權值上,使整個神經網路的連接權值向誤差減小的方向轉化。 5、対訓練集中每一個輸入—輸出樣本對重復以上步驟,直到整個訓練樣本集的誤差減小到符合要求為止。

⑧ 如何理解CNN神經網路里的反向傳播backpropagation,bp演算法

見附件,一個基本的用java編寫的BP網路代碼。BP(BackPropagation)神經網路是86年由Rumelhart和McCelland為首的科學家小組提出,是版一種按誤差逆傳播權演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。BP網路能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。BP神經網路模型拓撲結構包括輸入層(input)、隱層(hiddenlayer)和輸出層(outputlayer)。

⑨ 求神經網路反向傳播過程matlab程序

[inputn,inputps]=mapminmax(input_train);
[outputn,outputps]=mapminmax(output_train);

%% BP網路訓來練源
% %初始化網路結構
net=newff(inputn,outputn,5);

net.trainParam.epochs=100;
net.trainParam.lr=0.1;
net.trainParam.goal=0.00004;

%網路訓練
net=train(net,inputn,outputn);

%% BP網路預測
%預測數據歸一化
inputn_test=mapminmax('apply',input_test,inputps);

%網路預測輸出
an=sim(net,inputn_test);

%網路輸出反歸一化
BPoutput=mapminmax('reverse',an,outputps);

⑩ 神經網路反向傳播訓練函數除traingdx、trainlm外還有哪些反向傳播權/閾值學習函數除learngdm外還有哪些

神經網路反向傳播訓練函數:traingdm traingda trainoss trainrb traincgf traincgb、traingdx、trainlm等回

反向傳播權/閾值答學習函數有learngdm、learncon、learngd、learnh、learnhd、learnis、learnos、learnp、learnk、learnpn、learnsom、learnwh等

閱讀全文

與人工神經網路反向傳播相關的資料

熱點內容
word轉pdf大文件怎麼打開 瀏覽:447
不顯示u盤文件怎麼回事 瀏覽:691
想^_^香港看啪啪視頻 瀏覽:496
qq群贊賞照片不見了 瀏覽:187
不要錢免費看電影網站 瀏覽:425
u盤刪除文件可以恢復嗎 瀏覽:138
在森林槍戰的國產電影 瀏覽:133
食人癖女孩的電影 瀏覽:19
iphone5藍牙聽歌 瀏覽:802
al創世者電影完整版免費2023 瀏覽:303
小說電影免費網站有哪些 瀏覽:567
應城市網站到期怎麼續費 瀏覽:772
360擴展器固件在哪升級 瀏覽:103
青春愛情激情電影 瀏覽:209
韓國電影 女主角在療養院工作 瀏覽:926
javascriptsidebar 瀏覽:769
義烏用什麼app坐公交 瀏覽:14
矩陣縱橫cad文件下載 瀏覽:832
四個字的動畫片 瀏覽:461
js最新皮膚2017 瀏覽:587

友情鏈接