吴恩达神经网络和深度学习——第三周笔记
Week 3
目錄
Week 3
3-1神經(jīng)網(wǎng)絡(luò)概述
3-2神經(jīng)網(wǎng)絡(luò)的表示
3-3計算神經(jīng)網(wǎng)絡(luò)的輸出
3-4多個栗例子中的向量化
3.5 向量化實現(xiàn)的解釋
3-6、3-7、3-8激活函數(shù)
3-11隨機初始化權(quán)重
3-1神經(jīng)網(wǎng)絡(luò)概述
這就是神經(jīng)網(wǎng)絡(luò):
3-2神經(jīng)網(wǎng)絡(luò)的表示
這個神經(jīng)網(wǎng)絡(luò)是“雙層神經(jīng)網(wǎng)絡(luò)”,只有兩層,雖然有輸入層、隱藏層、輸出層,但從上標(biāo)來看,輸入層是為第0層,所以隱藏層才是第一層,輸出層為第二層:
3-3計算神經(jīng)網(wǎng)絡(luò)的輸出
圓圈代表了回歸計算的兩個步驟:所以,神經(jīng)網(wǎng)絡(luò)只不過重復(fù)的計算這些步驟很多次。
這是神經(jīng)網(wǎng)絡(luò)的第一個小圓圈,也是第一個節(jié)點,它所作的事情就是做了這兩步計算。
其余三個節(jié)點,同樣的計算著這兩步,唯一的差別就是下標(biāo)發(fā)生了變化,從1逐漸變?yōu)?,上標(biāo)不發(fā)生變化,因為始終都在第一層,所以始終為1.如下圖所示:
如上圖所示,如果采用for循環(huán)來執(zhí)行這些計算,那么效率會非常低下,所以我們將這四個等式向量化:首先,我們有四個logistic回歸單元(也就是隱藏層的四個小圓圈),每一個回歸單元,都有對應(yīng)的W,b參數(shù)。那么我們把4個向量W堆疊在一起:如下圖所示,就形成了一個4×3的矩陣——4表示有4個隱藏單元(4個圈),3表示有3個輸入特征(x1,x2,x3)
然后和X相乘,在加上b結(jié)果就為Z:
所以,我們就可以將等式向量化,變成更容易理解的符號:
第一層隱藏層的參數(shù)就變成:
第二層輸出層參數(shù)就變?yōu)?#xff1a;
3-4多個栗例子中的向量化
如何將不同訓(xùn)練樣本向量化??
如果沒有向量化的話,那么只能用for循環(huán)來實現(xiàn):對m個訓(xùn)練樣本內(nèi)循環(huán):
上面循環(huán)里的四步,就是我們要做的,我們可以將其轉(zhuǎn)化為:
大家也許會很好奇,圈起來的4個東西怎么和上面的不一樣,還有,怎么x變成了X,原因就是,我們將向量橫向堆疊起來,構(gòu)成了另一個向量:
所以就有了
橫向代表不同的訓(xùn)練樣本,豎向代表每一個節(jié)點)
3.5 向量化實現(xiàn)的解釋
3-6、3-7、3-8激活函數(shù)
到目前為止,一直用的都是sigmoid函數(shù),其實也有其他更好的選擇
tanh()函數(shù)是-1~1,用在哪都比較好,一個例外是用在輸出層不太好,因為我們更希望輸出是一個0~1的值,所以輸出還是可以用sigmoid函數(shù)的。也反映出,不同層可以有不同的激活函數(shù)。
因此我專門總結(jié)了一篇關(guān)于激活函數(shù)的博客https://blog.csdn.net/LLyj_/article/details/82945025
3-9、3-10神經(jīng)網(wǎng)絡(luò)的梯度下降算法
前向傳播(Forward propagation)
反向傳播(Back propagation)
3-11隨機初始化權(quán)重
訓(xùn)練神經(jīng)網(wǎng)絡(luò)的時候,隨機初始化權(quán)重非常重要,對于logistic回歸,可以將權(quán)重初始化為0.但如果將神經(jīng)網(wǎng)絡(luò)的各參數(shù)數(shù)組全部初始化為0,再使用梯度下降算法,那會完全無效。
- ?
總結(jié)
以上是生活随笔為你收集整理的吴恩达神经网络和深度学习——第三周笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常用几种激活函数的总结
- 下一篇: 吴恩达神经网络和深度学习——第四周笔记