3.1 神经网络概览-深度学习-Stanford吴恩达教授
| 2.19 總結習題 | 回到目錄 | 3.2 神經(jīng)網(wǎng)絡表示 |
神經(jīng)網(wǎng)絡概覽 (Neural Networks Overview)
本周你將學習如何實現(xiàn)一個神經(jīng)網(wǎng)絡。在我們深入學習具體技術之前,我希望快速的帶你預覽一下本周你將會學到的東西。如果這個視頻中的某些細節(jié)你沒有看懂你也不用擔心,我們將在后面的幾個視頻中深入討論技術細節(jié)。
現(xiàn)在我們開始快速瀏覽一下如何實現(xiàn)神經(jīng)網(wǎng)絡。上周我們討論了邏輯回歸,我們了解了這個模型如何與下面公式建立聯(lián)系。
xwb}→z=wTx+b\left.\begin{matrix} x \\ w \\ b \end{matrix}\right\}\rightarrow z=w^Tx+bxwb?????→z=wTx+b
如上所示,首先你需要輸入特征 xxx ,參數(shù) www 和 bbb ,通過這些你就可以計算出 zzz ,
xwb}→z=wTx+b→a=σ(z)→L(a,y)\left.\begin{matrix} x \\ w \\ b \end{matrix}\right\}\rightarrow z=w^Tx+b\rightarrow a=\sigma(z) \\ \rightarrow L(a,y)xwb?????→z=wTx+b→a=σ(z)→L(a,y)
接下來使用就可以計算出 aaa 。我們將的符號換為表示輸出 y^→a=σ(z)\hat{y}\rightarrow a=\sigma(z)y^?→a=σ(z) ,然后可以計算出loss function L(a,y)L(a,y)L(a,y)
神經(jīng)網(wǎng)絡看起來是如下這個樣子。正如我之前已經(jīng)提到過,你可以把許多sigmoid單元堆疊起來形成一個神經(jīng)網(wǎng)絡。對于圖3.1.1中的節(jié)點,它包含了之前講的計算的兩個步驟:首先通過公式3.1計算出值 zzz ,然后通過 σ(z)\sigma(z)σ(z) 計算值 aaa 。
在這個神經(jīng)網(wǎng)絡(圖3.1.2)對應的3個節(jié)點,首先計算第一層網(wǎng)絡中的各個節(jié)點相關的數(shù) z[1]z^{[1]}z[1] ,接著計算 a[1]a^{[1]}a[1] ,在計算下一層網(wǎng)絡同理; 我們會使用符號 [m]^{[m]}[m] 表示第 mmm 層網(wǎng)絡中節(jié)點相關的數(shù),這些節(jié)點的集合被稱為第 mmm 層網(wǎng)絡。這樣可以保證 [m]^{[m]}[m] 不會和我們之前用來表示單個的訓練樣本的 (i)^{(i)}(i) (即我們使用表示第 iii 個訓練樣本)混淆; 整個計算過程,公式如下: 公式3.3:
xW[1]b[1]}→z[1]=W[1]x+b[1]→a[1]=σ(z[1])\left.\begin{matrix} x \\ W^{[1]} \\ b^{[1]} \end{matrix}\right\}\rightarrow z^{[1]}=W^{[1]}x+b^{[1]}\rightarrow a^{[1]}=\sigma(z^{[1]})xW[1]b[1]?????→z[1]=W[1]x+b[1]→a[1]=σ(z[1])
公式3.4:
a[1]=σ(z[1])W[2]b[2]}→z[2]=W[2]a[1]+b[2]→a[2]=σ(z[2])→L(a[2],y)\left.\begin{matrix} a^{[1]}=\sigma(z^{[1]}) \\ W^{[2]} \\ b^{[2]} \end{matrix}\right\}\rightarrow z^{[2]}=W^{[2]}a^{[1]}+b^{[2]}\rightarrow a^{[2]}=\sigma(z^{[2]})\\\rightarrow L(a^{[2]},y)a[1]=σ(z[1])W[2]b[2]?????→z[2]=W[2]a[1]+b[2]→a[2]=σ(z[2])→L(a[2],y)
類似邏輯回歸,在計算后需要使用計算,接下來你需要使用另外一個線性方程對應的參數(shù)計算 z[2]z^{[2]}z[2] , 計算 a[2]a^{[2]}a[2] ,此時 a[2]a^{[2]}a[2] 就是整個神經(jīng)網(wǎng)絡最終的輸出,用 y^\hat{y}y^? 表示網(wǎng)絡的輸出。
公式3.5:
da[1]=dσ(z[1])dW[2]db[2]}→dz[2]=d(W[2]a[1]+b[2])→da[2]=dσ(z[2])→dL(a[2],y)\left.\begin{matrix} da^{[1]}=d\sigma(z^{[1]}) \\ dW^{[2]} \\ db^{[2]} \end{matrix}\right\}\rightarrow dz^{[2]}=d(W^{[2]}a^{[1]}+b^{[2]})\rightarrow da^{[2]}=d\sigma(z^{[2]})\\\rightarrow dL(a^{[2]},y)da[1]=dσ(z[1])dW[2]db[2]?????→dz[2]=d(W[2]a[1]+b[2])→da[2]=dσ(z[2])→dL(a[2],y)
我知道這其中有很多細節(jié),其中有一點非常難以理解,即在邏輯回歸中,通過直接計算 zzz 得到結果 aaa 。而這個神經(jīng)網(wǎng)絡中,我們反復的計算 zzz 和 aaa ,計算 aaa 和 zzz ,最后得到了最終的輸出loss function。
你應該記得邏輯回歸中,有一些從后向前的計算用來計算導數(shù) da、dzda、dzda、dz 。同樣,在神經(jīng)網(wǎng)絡中我們也有從后向前的計算,看起來就像這樣,最后會計算 da[2]、dz[2]da^{[2]}、dz^{[2]}da[2]、dz[2] ,計算出來之后,然后計算 dW[2]、db[2]dW^{[2]}、db^{[2]}dW[2]、db[2] 等,按公式3.4、3.5箭頭表示的那樣,從右到左反向計算。
現(xiàn)在你大概了解了一下什么是神經(jīng)網(wǎng)絡,基于邏輯回歸重復使用了兩次該模型得到上述例子的神經(jīng)網(wǎng)絡。我清楚這里面多了很多新符號和細節(jié),如果沒有理解也不用擔心,在接下來的視頻中我們會仔細討論具體細節(jié)。
那么,下一個視頻講述神經(jīng)網(wǎng)絡的表示。
課程PPT
| 2.19 總結習題 | 回到目錄 | 3.2 神經(jīng)網(wǎng)絡表示 |
總結
以上是生活随笔為你收集整理的3.1 神经网络概览-深度学习-Stanford吴恩达教授的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2.19 总结-深度学习-Stanfor
- 下一篇: 3.2 神经网络表示-深度学习-Stan