2020-5-6 吳恩達-NN&DL-w3 淺層NN(3.1 神經網絡概覽)

1.視頻網站:mooc慕課https://mooc.study.163.com/university/deeplearning_ai#/c
2.詳細筆記網站(中文):http://www.ai-start.com/dl2017/
3.github課件+作業+答案:https://github.com/stormstone/deeplearning.ai

3.1 神經網絡概覽 Neural Networks Overview

上週我們討論了邏輯迴歸。我們瞭解了這個模型(如下圖)如何與下面公式建立聯繫。
在這裏插入圖片描述
公式
xwb}    z=wTx+b\left. \begin{array}{l} x\\ w\\ b \end{array} \right\} \implies{z={w}^Tx+b}
你需要輸入特徵x,參數w和b,通過這些你就可以計算出z。
接下來使用z就可以計算出y^\hat yy^=σ(z)\hat y=\sigma(z)
最後可以計算出損失函數L(y^,y)L(\hat y,y)

神經網絡NN看起來是如下這個樣子
在這裏插入圖片描述

你可以把許多sigmoid單元堆疊起來形成一個神經網絡。

我們已經知道,本節第一個圖中介紹的邏輯迴歸模型中的節點包含2個計算步驟

  • 首先計算出z
  • 然後通過σ(z)\sigma(z)計算出y^\hat y

而現在NN網絡的每個節點也是類似的計算出z和y^\hat y

在這裏插入圖片描述

符號約定
我們使用新的符號上標[1]來表示第一列節點相關的量,並稱之爲“層”。
在這裏插入圖片描述

同理,在上圖中符號上標[2]來表示第二列節點相關的量,這是NN網絡的另外一層。

這裏使用方括號上標,是爲了區分表示單個訓練樣本的圓括號

  • x(i)表示第i個訓練樣本
  • 上標[1]表示NN網絡第一層, 上標[2]表示NN網絡第二層

然後類似邏輯迴歸一樣使用線性方程z[1]=W[1]x+b[1]z^{[1]}=W^{[1]}x+b^{[1]}去計算z[1],再使用σ(z[1])\sigma(z^{[1]})計算y^[1]\hat y^{[1]}
接下來使用線性方程z[2]=W[2]y^[1]+b[2]z^{[2]}=W^{[2]}\hat y^{[1]}+b^{[2]}去計算z[2],再使用σ(z[2])\sigma(z^{[2]})計算y^[2]\hat y^{[2]}
y^[2]\hat y^{[2]}是整個NN的最終輸出。損失函數L(y^[2],y)L(\hat y^{[2]},y)

你可以發現,NN網絡需要反覆多次計算z和y^\hat y,最後計算損失函數。

在上週學習中還介紹過反向計算,用來計算da和dz。
在這裏插入圖片描述

在NN網絡中,同樣有類似的反向計算。計算da[2]和dz[2],然後計算出dW[2],db[2],按照這個次序從右向左反向計算,即紅色箭頭方向。
在這裏插入圖片描述

總結:
在本節中我們對NN有了瞭解。基本上就是邏輯迴歸重複了2次。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章