第四章 深層神經(jīng)網(wǎng)絡(luò)

1.深層神經(jīng)網(wǎng)絡(luò)

????????到目前為止我們熟悉了logistic回歸、單隱藏層神經(jīng)網(wǎng)絡(luò)、前向和后向傳播、向量化以及為什么隨機(jī)初始化比較重要?,F(xiàn)在要把這些理念結(jié)合起來(lái)構(gòu)成深度神經(jīng)網(wǎng)絡(luò)模型。

圖4.1 logistic回歸、單隱藏層雙層神經(jīng)網(wǎng)絡(luò)、雙隱藏層三層神經(jīng)網(wǎng)絡(luò)、五隱藏層六層神經(jīng)網(wǎng)絡(luò)? ??

????????如圖4.1,logistic回歸可以看成是單層神經(jīng)網(wǎng)絡(luò),層數(shù)是指隱藏層加輸出層,淺層和深層只是一個(gè)程度問(wèn)題。對(duì)于具體問(wèn)題,一開(kāi)始我們并不能準(zhǔn)確預(yù)測(cè)需要多少層神經(jīng)網(wǎng)絡(luò),可以先從logistic回歸開(kāi)始,逐漸增加層數(shù),找到合適層數(shù)的神經(jīng)網(wǎng)絡(luò)。

圖4.2 深層神經(jīng)網(wǎng)絡(luò)標(biāo)記方式? ? ??

????????如圖4.2,我們用大寫(xiě)L表示層數(shù)如L=4,小寫(xiě)l表示某一層,n^{[l]}表示某一層單元數(shù)如n^{[3]}=3,a^{[l]}表示第l層激活函數(shù)如a^{[l]}=g^{[l]}(z^{[l]}),類(lèi)似表示還有w^{[l]},b^{[l]}

圖4.3 深層神經(jīng)網(wǎng)絡(luò)前向傳播

如圖4.3,前向過(guò)程為

z^{[1]}=w^{[1]}x+b^{[1]},a^{[1]}=g^{[1]}(z^{[1]}),

z^{[2]}=w^{[2]}a^{[1]}+b^{[2]}a^{[2]}=g^{[2]}(z^{[2]})

...

z^{[4]}=w^{[4]}a^{[3]}+b^{[3]},a^{[3]}=g^{[3]}(z^{[3]}),

x可以表示為a^{[0]},則z^{[l]}=w^{[l]}a^{[l-1]}+b^{[l]}a^{[l]}=g^{[l]}(z^{[l]})。

向量化過(guò)程為

Z^{[1]}=W^{[1]}A^{[0]}+b^{[1]},A^{[1]}=g^{[1]}(Z^{[1]}),

Z^{[2]}=W^{[2]}A^{[1]}+b^{[2]},A^{[2]}=g^{[2]}(Z^{[2]})

...

Z^{[4]}=W^{[4]}A^{[3]}+b^{[4]},

=A^{[4]}=g^{[4]}(Z^{[4]})。

3.核對(duì)矩陣的維數(shù)

????????實(shí)現(xiàn)深度神經(jīng)網(wǎng)絡(luò)的時(shí)候,防止代碼出錯(cuò),我們應(yīng)該用紙筆過(guò)一遍算法中矩陣維數(shù)。

圖4.4 各步驟矩陣維數(shù)

4.為什么要使用深層網(wǎng)絡(luò)

????????深度網(wǎng)絡(luò)可以解決很多問(wèn)題,神經(jīng)網(wǎng)絡(luò)不要很大,但是要有深度,即要有比較多的隱藏層。

圖4.5 神經(jīng)網(wǎng)絡(luò)的直覺(jué)解釋過(guò)程? ? ??

????????如圖4.5,假設(shè)這是人臉識(shí)別過(guò)程,根據(jù)直覺(jué),我們認(rèn)為第1層識(shí)別邊緣,第2層利用上一層的邊緣結(jié)合成各個(gè)部位,第三層利用上一層的部位結(jié)合成人臉,再比如音頻識(shí)別也類(lèi)似,從簡(jiǎn)單到復(fù)雜一步步識(shí)別。前面的層識(shí)別一些低層次的特征,到后面的層就能結(jié)合前面的特征去探測(cè)更加復(fù)雜的東西。從而需要神經(jīng)網(wǎng)絡(luò)需要很多層,即深層網(wǎng)絡(luò)。這些靈感來(lái)源是人類(lèi)大腦,大腦識(shí)別也是從簡(jiǎn)單開(kāi)始,然后再結(jié)合到整體。

圖4.6 異或運(yùn)算

????????如圖4.6,計(jì)算y=x_1XOR x_2XOR x3... x_{n-1}XOR x_n,使用多層計(jì)算(圖左),很少的隱藏單元計(jì)算出y。但使用單層計(jì)算(圖右),需要指數(shù)級(jí)更多的隱藏單元,因?yàn)榭赡苡?img class="math-inline" src="https://math.jianshu.com/math?formula=2%5E%7Bn-1%7D" alt="2^{n-1}" mathimg="1">種情況。即深層層計(jì)算更容易計(jì)算出y。

????????其實(shí)深度學(xué)習(xí)只不過(guò)就是多隱藏層神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)

5.搭建深層神經(jīng)網(wǎng)絡(luò)塊

? ? ????前面已經(jīng)看到了正向反向傳播的基礎(chǔ)組成部分,他們也是深度神經(jīng)網(wǎng)絡(luò)的重要組成部分。

圖4.7 深層神經(jīng)網(wǎng)絡(luò)

????????如圖4.7,輸入a^{[0]}(即x),計(jì)算出a^{[1]},緩存z^{[1]},a^{[1]},w^{[1]},b^{[1]}供反向傳播使用,這個(gè)過(guò)程不斷循環(huán),直到計(jì)算出a^{[l]},緩存z^{[l]}a^{[l]},w^{[l]}b^{[l]}供反向傳播使用,然后進(jìn)入反向傳播。

6.前向和反向傳播

????????構(gòu)建深度神經(jīng)網(wǎng)絡(luò)的基本模塊,每一層都有前向傳播步驟和相對(duì)的后向傳播步驟。接下來(lái)看看具體傳播步驟。

圖4.8 某一層前向傳播過(guò)程及向量化
圖4.9 某一層后向傳播過(guò)程及向量化? ? ??

7.參數(shù)和超參數(shù)

????????想要你的深度神經(jīng)網(wǎng)絡(luò)起很好的效果,還要規(guī)劃好參數(shù)以及超參數(shù)。神經(jīng)網(wǎng)絡(luò)模型中的W和b是參數(shù),學(xué)習(xí)率∝、梯度下降循環(huán)次數(shù)、隱藏層數(shù)L、隱藏單元數(shù)(n^{[1]},n^{[2]})、激活函數(shù)等這些屬于超參數(shù)。超參數(shù)需要人為設(shè)定,超參數(shù)實(shí)際上決定著參數(shù)W和b的值。

????????還有其他超參數(shù)比如momentum、mini batch大小、正則化參數(shù)等,這些稍后會(huì)講。

圖4.10 通過(guò)經(jīng)驗(yàn)獲取最佳超參數(shù)? ? ??

????????如圖4.10,設(shè)置超參數(shù)需要不斷嘗試,根據(jù)成本函數(shù)值變化去調(diào)整超參數(shù)。

8.深度學(xué)習(xí)和大腦有什么關(guān)系

????????一句話(huà),關(guān)系不大,深度學(xué)習(xí)或者其他學(xué)科只是受大腦神經(jīng)元啟發(fā)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容