BP神經網路數學原理及推導過程

2021-08-09 12:01:04 字數 2114 閱讀 6289

說明:本部落格引自部落格:並對此部落格中有些地方的推導的過程進行詳細地說明。同時,對一些基礎知識進行引申介紹。

bp神經網路,bp即back propagation的縮寫,也就是反向傳播的意思。它是一種前饋神經網路。而前饋神經網路是神經網路的一種典型分層結構,在這種網路中資訊從輸入層進入網路後,逐層向前傳播至輸出層。根據網路中神經元啟用函式、隱層數和權值調整規則的不同,可以形成具有不同特點的前饋神經網路。

誤差反傳(bp)演算法是2023年,rumelhart和mecelland領導的科學家小組在((paralleloist行butedporeessing》一書r掃提出的,實現了minsky關於多層網路的設想。演算法的基本思想是,學習過程由訊號的正向傳播和誤差的反向兩個過程組成。正向傳播時,輸入樣本從輸入層傳入,經各隱層逐層處理後,傳向輸出層。若輸出層的實際輸出和期望輸出不符,則轉入誤差的反向傳播階段,誤差的反向傳播是將誤差以某種形式通過隱層向輸出層逐層反傳,並將誤差分攤給各層的所有單元,從而獲得各層單元的誤差訊號,此誤差訊號即作為修正各單元權值的依據。這種訊號正向傳播和誤差反向傳播的各層權值調整過程,是周而復始進行的。權值不斷調整的過程,也就是網路的學習訓練過程。此過程一直進行到網路輸出的誤差減少到一定範圍之內,或進行到預先設定的學習次數為止。

bp神經網路在函式逼近、模式識別、資料壓縮、風險評估等領域有著更為廣泛的應用。

bp神經網路的模型結構:

用什麼方法最小化l?bp演算法採用的是隨機梯度下降。也就是對每個訓練樣本都使權重往其負梯度方向變化。現在的任務就是求l對連線權重w的梯度。 至於什麼是梯度下降法?這裡插播一下:

至於是什麼是梯度和方向導數?如果不是很清楚的,大家可以開啟同濟版高數.....還是給大家推薦一篇部落格

其實我們就是要求第一層權重的梯度(類似上圖dy/dx):

第二層權值的梯度(第二層權值的梯度簡單多):

先從第一層開始

我們將開始計算第二層:

第二層其實就是要求:

其中對於前半部分其實就是上面的:

後半部分:

所以對於第二層的權重的梯度是:

當誤差達到要求精度時,演算法停止。

機器學習 神經網路及BP推導

參考 這裡的推導都用矩陣和向量的形式,計算單個變數寫起來太麻煩。矩陣 向量求導可參見上面參考的部落格,個人覺得解釋得很直接很好。前向傳播每一層的計算如下 z l 1 w l l 1 a l b l,l 1 1.1 a l 1 f z l 1 1.2 f 是啟用函式。一般有sigmoid tanh r...

BP神經網路模型及演算法推導

一,什麼是bp bp back propagation 網路是1986年由rumelhart和mccelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。bp網路能學習和存貯大量的輸入 輸出模式對映關係,而無需事前揭示描述這種對映關係的數學...

BP神經網路演算法推導

1 前饋神經網路 反饋神經網路 bp網路等,他們之間的關係 前饋型神經網路 取連續或離散變數,一般不考慮輸出與輸入在時間上的滯後效應,只表達輸出與輸入的對映關係 在此種神經網路中,各神經元從輸入層開始,接收前一級輸入,並輸入到下一級,直至輸出層。整個網路中無反饋,可用乙個有向無環圖表示。常見的前饋神...