【神經(jīng)網(wǎng)絡(luò)原理】神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) & 符號約定

本文將主要講解全連接神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu),包括對神經(jīng)元、網(wǎng)絡(luò)的輸入 & 輸出,權(quán)重w & 偏置b,激活函數(shù)的理解與符號約定。主要參考Neural Networks and Deep Learning這本書,非常適合初學(xué)者入門。

一、神經(jīng)元—神經(jīng)網(wǎng)絡(luò)的組成單元

神經(jīng)元模型的符號約定:輸入:\vec{x},權(quán)重(weight):\vec{w},偏置(bias):b,未激活值:z,激活輸出值:a
神經(jīng)元可用于解決部分二分類問題——當(dāng)有一個類別未知的\vec{x}輸入感知機(jī),若輸出值a = 1時,感知機(jī)被激活,代表x屬于第一類;若輸出值a = 0時,感知機(jī)未激活,則代表x屬于第二類。而對于sigmoid神經(jīng)元,若輸出值a ≥ 0.5時,代表x屬于第一類,否則為第二類。

二、sigmoid神經(jīng)元的優(yōu)勢

不難看出,感知機(jī)可以輕松實現(xiàn)“與非”邏輯,而與非邏輯可以組合成其他任意的邏輯,但對于一些過于復(fù)雜的問題,我們難以寫出其背后地邏輯結(jié)構(gòu)。這時候神經(jīng)網(wǎng)絡(luò)就能大顯身手:它可以自適應(yīng)的學(xué)習(xí)規(guī)律,調(diào)節(jié)網(wǎng)絡(luò)地權(quán)重和偏置等參數(shù),我們只需要用大量的數(shù)據(jù)對其正確地訓(xùn)練,即可得到我們想要的效果!
那有一個很有意思的問題:相比于階躍函數(shù),為什么我們在神經(jīng)網(wǎng)絡(luò)中更愿意采用sigmoid函數(shù)作為激活函數(shù)呢?

首先,由于感知機(jī)的激活函數(shù)為階躍函數(shù)(在0處突變),權(quán)重的一個小的變化就可能導(dǎo)致輸出值的突變,而如果將激活函數(shù)替換為sigmoid函數(shù),輸出值的變化就能發(fā)生相應(yīng)的小的變化,有利于網(wǎng)絡(luò)學(xué)習(xí);另外,由于采用二次代價函數(shù)作為損失函數(shù)時,利用BP算法求梯度值需要對沖激函數(shù)求導(dǎo),sigmoid函數(shù)正好時連續(xù)可導(dǎo)的,而且導(dǎo)數(shù)很好求。

三、全連接神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

為了便于理解,先畫一個三層的全連接神經(jīng)網(wǎng)絡(luò)示意圖,激活函數(shù)都選用sigmoid函數(shù)。全連接神經(jīng)網(wǎng)絡(luò)指除輸出層外,每一個神經(jīng)元都與下一層中的各神經(jīng)元相連接。網(wǎng)絡(luò)的第一層為輸入層,最后一層為輸出層,中間的所有層統(tǒng)稱為隱藏層。其中,輸入層的神經(jīng)元比較特殊,不含偏置b,也沒有激活函數(shù)\sigma(·)。

神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的符號約定w^l_ {kj}代表第l層的第k個神經(jīng)元與第(l-1)層的第j個神經(jīng)元連線上的權(quán)重;W^l代表第l層與第l-1層之間的所有權(quán)重w構(gòu)成的權(quán)重矩陣。b^l_ {k}、z^l_ {k}、a^l_ {k}分別代表第l層的第k個神經(jīng)元對應(yīng)的偏置、未激活值、激活值;\vec^l、\vec{z}^l、\vec{a}^l則分別代表第l層的所有偏置組成的列向量、所有未激活值組成的列向量以及所有激活值組成的列向量。

注意!w^l_ {kj}上角標(biāo)數(shù)字l是連線右邊的層的層數(shù),而下角標(biāo)數(shù)字kj是先寫連線右邊的層中神經(jīng)元所在的位置k,再寫連線左邊的層中神經(jīng)元所在的位置j,此順序是為了使W·\vec{x}時無需轉(zhuǎn)置,方便書寫。

下面展示了一個手寫體識別的三層全連接神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu):

隱藏層的功能可以看作是各種特征檢測器的組合:檢測到相應(yīng)特征時,相應(yīng)的隱藏層神經(jīng)元就會被激活,從而使輸出層相應(yīng)的神經(jīng)元也被激活。

近期的更新計劃是 1. 如何利用梯度下降法更新各層網(wǎng)絡(luò)參數(shù)——權(quán)重與偏置,使損失函數(shù)的值盡可能小、2. 如何利用BP反向誤差傳播算法優(yōu)化損失函數(shù)對各層網(wǎng)絡(luò)參數(shù)梯度求解、3. 梯度下降算法的常見變種。后面也會更新一些BP網(wǎng)絡(luò)、CNN網(wǎng)絡(luò)源代碼,歡迎關(guān)注,有不嚴(yán)謹(jǐn)之處請指正~

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

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

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