神經網路
神經網路可以理解為乙個輸入x到輸出y的對映函式,即f(x)=y,其中這個對映f就是我們所要訓練的網路引數w,我們只要訓練出來了引數w,那麼對於任何輸入x,我們就能得到乙個與之對應的輸出y。只要f不同,那麼同乙個x就會產生不同的y,我們當然是想要獲得最符合真實資料的y,那麼我們就要訓練出乙個最符合真實資料的對映f。訓練最符合真實資料f的過程就是神經網路的訓練過程,神經網路的訓練可以分為兩個步驟:乙個是前向傳播,另外乙個是反向傳播
神經網路的前向傳播
神經網路前向傳播從輸入層到輸出層:前向傳播就是從輸入層開始(layer1),經過一層層的layer,不斷計算每一層的神經網路得到的結果net
anet_
neta
及通過啟用函式(一般使用relu函式)的本層輸出結果 out
zout_
outz
,最後得到輸出y
ˉ\bar
yˉ的過程。前向傳播公式:
a (1
)=xz
(2)=
relu
(a(1
))a(
2)=g
(z(2
))z(
3)=r
elu(
a(2)
)...
.\\a^=x\\z^=relu(a^)\\a^=g(z^)\\z^=relu(a^)\\....
a(1)=x
z(2)
=rel
u(a(
1))a
(2)=
g(z(
2))z
(3)=
relu
(a(2
))..
..這裡公式只寫了包括輸入層的前三個layer的結果,依次最後由layer4輸出的結果為yˉ=
a(4)
=g(z
4)
\bar=a^=g(z^)
yˉ=a(
4)=g
(z4)
。神經網路的反向傳播
前向傳播計算出了**值y
ˉ\bar
yˉ,就可以根據y
ˉ\bar
yˉ和真實值y的差別來計算損失l(y
ˉ,y)
l(\bar,y)
l(yˉ,
y),反向傳播就是根據損失函式l(y
ˉ,y)
l(\bar,y)
l(yˉ,
y)來反方向地計算每一層的a、z、w、b的偏導數(梯度),從最後一層逐層向前去改變每一層的權重,也就是更新引數,其核心是損失l對每一層的每乙個引數求梯度的鏈式求導法則。
計算反向傳播,我們首先需要通過前向傳播的輸出y
ˉ\bar
yˉ和真實樣本y(target)計算此時神經網路的損失,這個神經網路有兩個輸出,所以我們的損失應該是兩個輸出神經元損失的和, 神經網路的總損失e←l
(yˉ,
y)
e\leftarrow l(\bar,y)
e←l(yˉ
,y):et
otal
=∑12
(tar
get−
outp
ut)2
etot
al=e
o1+e
o2
e_=\sum(target-output)^}\\e_=e_+e_
etotal
=∑2
1(t
arge
t−ou
tput
)2et
otal
=eo
1+e
o2對引數w5求偏導可以看出w5對整體誤差產生的影響,總體誤差對w5求偏導的鏈式規則如下所示:
e o1
=∑12
(tar
geto
1−ou
tput
o1)2
etot
al=e
o1+e
o2
e_=\sum(target_-output_)^}\\e_=e_+e_
eo1=∑
21(
targ
eto1
−ou
tput
o1)
2eto
tal
=eo1
+eo
2w5求偏導進行整合,求出偏導數之後,下面的任務就是進行梯度下降從而更新引數:
w 5+
=w5−
η∗∂e
tota
l∂w5
\\w_^=w_-\eta*\frac}}
w5+=w
5−η
∗∂w5
∂et
otal
梯度下降
神經網路就是通過不斷的前向傳播和反向傳播不斷調整神經網路的權重,最終到達預設的迭代次數或者對樣本的學習已經到了比較好的程度後,就停止迭代,那麼乙個神經網路就訓練好了。
前向傳播和反向傳播 手撕 神經網路反向傳播
神經網路前向傳播一般用於搭建整個神經網路的結構框架,形成整個網路的邏輯通路。反向傳播用於更新每層之間的權重,減少損失,進而提公升 準確度。下面是乙個神經網路的結構圖 第一層是輸入層,包含兩個神經元i1,i2,和截距項b1 第二層是隱含層,包含兩個神經元h1,h2和截距項b2,第三層是輸出o1,o2,...
神經網路 前向,反向傳播過程
x,資料集矩陣。每一行的元素代表了乙個樣例的特徵值x1,x2,x3.共有n行,說明資料集一共n個樣例 theta,引數矩陣 行數 要生成的神經元個數 列數 上一層的輸入個數 每一行的元素代表了對樣例各個特徵值的權重 以資料集為x 5 3 使用上圖的網路結構為例 輸入層 x 5 3 說明資料集有5個樣...
詳解神經網路的前向傳播和反向傳播(從頭推導)
詳解神經網路的前向傳播和反向傳播 本篇部落格是對michael nielsen所著的 neural network and deep learning 第2章內容的解讀,有興趣的朋友可以直接閱讀原文neural network and deep learning。對神經網路有些了解的人可能都知道,神...