halcon第十七講,神經(jīng)網(wǎng)絡(luò)

一、神經(jīng)網(wǎng)絡(luò)是什么

  1. 神經(jīng)網(wǎng)絡(luò)起源于對生物神經(jīng)元的研究,如下圖所示生物神經(jīng)元包括細胞體、樹突、軸突等部分。
  2. 樹突是用于接收輸入信息,輸入信息經(jīng)過突觸處理,當達到一定條件時通過軸突傳出,此時神經(jīng)元處于激活狀態(tài)。
  3. 沒有達到相應(yīng)條件,神經(jīng)元處于抑制狀態(tài)。

[圖片上傳中...(image-432d8f-1641287520063-0)]

  1. 人工神經(jīng)元又稱為感知機,如下圖所示。輸入經(jīng)過加權(quán)和偏置后,由激活函數(shù)處理后決定輸出。
    [圖片上傳中...(image-920083-1641287528230-0)]
  2. 生物神經(jīng)元和人工神經(jīng)元對應(yīng)關(guān)系如下:

<colgroup><col style="width: 310px;"><col style="width: 310px;"></colgroup>
|

生物神經(jīng)元

|

人工神經(jīng)元

|
|

細胞核

|

神經(jīng)元

|
|

樹突

|

輸入

|
|

軸突

|

輸出

|
|

突觸

|

權(quán)重

|

  1. 由大量的人工神經(jīng)元互相連接而形成的復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu)成為人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network, ANN)

二、神經(jīng)網(wǎng)絡(luò)的相關(guān)概念

  1. 輸入層、隱含層、輸出層
  • 一般的神經(jīng)元網(wǎng)絡(luò)包含以下幾個部分,輸入層、隱含層和輸出層。下圖是一個含有隱層的神經(jīng)網(wǎng)絡(luò),隱層的層數(shù)越多,隱層的節(jié)點數(shù)目越多,在非線性的激活函數(shù)下,神經(jīng)網(wǎng)絡(luò)就可以學習更深層次的特征。

[圖片上傳中...(image-269e67-1641287555263-8)]

  1. 激活函數(shù)
  • 激活函數(shù)是神經(jīng)網(wǎng)絡(luò)設(shè)計核心單元,激活函數(shù)是用來加入非線性因素的,因為線性模式的表達能力不夠。激活函數(shù)需要滿足一下幾個條件:
  1. 非線性(如果激活函數(shù)是線性的,那么不管引入多少隱層,其效果和單層感知機沒有任何差別)

  2. 可微信(訓練網(wǎng)路時使用的基于梯度的優(yōu)化方法需要激活函數(shù)必須可微)

  3. 單調(diào)性(單調(diào)性保證了神經(jīng)網(wǎng)絡(luò)模型簡單)

  4. 權(quán)重和偏置

[圖片上傳中...(image-ba78ce-1641287555263-7)]

  • 如上圖所示,假設(shè)神經(jīng)元輸入是X = [x1,x2,x3],權(quán)重為w,偏置為b, 那么其輸出為:

[圖片上傳中...(image-5dedce-1641287555263-6)]

  • 可以看出,w,b會影響感知機的輸出結(jié)果,正是因為此神經(jīng)網(wǎng)絡(luò)在迭代過程中修改的是權(quán)重w和偏置b。
  1. 損失函數(shù)
  • 損失函數(shù)(loss function)也叫代價函數(shù)(cost function)。是神經(jīng)網(wǎng)絡(luò)優(yōu)化的目標函數(shù),神經(jīng)網(wǎng)絡(luò)訓練或者優(yōu)化的過程就是最小化損失函數(shù)的過程(損失函數(shù)值小了,對應(yīng)預(yù)測的結(jié)果和真實結(jié)果的值就越接近)。損失函數(shù)也有很多種,拿常用的交叉熵損失函數(shù)舉例,其單個樣本二分類的損失函數(shù)公式如下:

[圖片上傳中...(image-d4aadb-1641287555263-5)]

  • 當樣本標簽為1時,

[圖片上傳中...(image-eef949-1641287555263-4)]

  • ,此時希望損失函數(shù)盡量的小,那么

[圖片上傳中...(image-fcd341-1641287555263-3)]

  • 就要接近1;
  • 當樣本標簽為為0時,

[圖片上傳中...(image-d0711b-1641287555263-2)]

  • ,此時希望損失函數(shù)盡量的小,那么

[圖片上傳中...(image-a37d38-1641287555263-1)]

  • 就要接近0。

[圖片上傳中...(image-eb49a1-1641287555263-0)]

  1. 反向傳播(Back Propagation,BP)算法
  • BP算法分為正向傳播和誤差的反向傳播兩個部分。
  • 正向正向傳播時,輸入樣本從輸入層進入網(wǎng)絡(luò),經(jīng)隱層逐層傳遞至輸出層,如果輸出層的實際輸出與期望輸出(導(dǎo)師信號)不同,則轉(zhuǎn)至誤差反向傳播;如果輸出層的實際輸出與期望輸出(導(dǎo)師信號)相同,結(jié)束學習算法。
  • 反向傳播時,將輸出誤差(期望輸出與實際輸出之差)按原通路反傳計算,通過隱層反向,直至輸入層,在反傳過程中將誤差分攤給各層的各個單元,獲得各層各單元的誤差信號,并將其作為修正各單元權(quán)值的根據(jù)。這一計算過程使用梯度下降法完成,在不停地調(diào)整各層神經(jīng)元的權(quán)值和閾值后,使誤差信號減小到最低限度。
  • 權(quán)值和閾值不斷調(diào)整的過程,就是網(wǎng)絡(luò)的學習與訓練過程,經(jīng)過信號正向傳播與誤差反向傳播,權(quán)值和閾值的調(diào)整反復(fù)進行,一直進行到預(yù)先設(shè)定的學習訓練次數(shù),或輸出誤差減小到允許的程度。
  1. 如圖所示,其中藍色為正向傳播,紅色為反向傳播,反向傳播的導(dǎo)數(shù)為損失函數(shù)對各變量求導(dǎo)。
?著作權(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)容