淺談神經網絡中的bias


1、什么是bias?

偏置單元(bias unit),在有些資料里也稱為偏置項(bias term)或者截距項(intercept term),它其實就是函數的截距,與線性方程 y=wx+b 中的 b 的意義是一致的。在 y=wx+b中,b表示函數在y軸上的截距,控制着函數偏離原點的距離,其實在神經網絡中的偏置單元也是類似的作用。 
因此,神經網絡的參數也可以表示為:(W, b),其中W表示參數矩陣,b表示偏置項或截距項。

2、bias的計算方式?

 神經網絡結構中對偏置單元的計算處理方式有兩種, 
 (1)設置偏置單元=1,並在參數矩陣 Θ 中設置第 0 列對應偏置單元的參數,對應的神經網絡如下: 
 神經網絡架構 
 其中,x0 是第一層的偏置單元(設置為1),Θ(1)10 是對應該偏置單元 x0 的參數;a(2)0 是第二層的偏置單元,Θ(2)10 是對應的參數。 
 在計算激活值時按照(以a(2)1為例): 
 激活值計算公式

   相當於bias本身值為1,但它連接各個神經元的權重不為1,即---整個神經網絡只有1個bias,對應有多個不同的權重(權重個數等於hide層和out層神經元的個數)

 (2)設置偏置單元,不在參數矩陣中設置對應偏置單元的參數,對應的神經網絡如下: 
 神經網絡架構 
 其中,b(1) 是 W(1) 對應的偏置單元向量,b(2) 是 W(2) 對應的偏置單元向量,b(1)1 是對應 a(2)1 的偏置單元。注意,此時神經網絡的參數表示更改為:(W, b) 
 在計算激活值時按照: 
 激活值計算公式 

   相當於bias連接各個神經元的所有權重都為1,但bias本身不為1,即---有多個bias,但所有的bias對應的權重都為1(bias的個數等於hide層和out層神經元的個數)


 綜上, 
 兩者的原理是一致的,只是具體的實現方式不同。 
 其實在大部分資料和論文中看到的神經網絡的參數都是表示為:(W, b),其中W代表weight,b代表bias。包括在UFLDL Tutorial中也是采用 (W, b) 表示,只是在Coursera上Andrew Ng老師的在線教程中看到將神經網絡參數表示為 Θ,個人還是更喜歡 (W, b) 這種表示,很清晰。

 

參考資料

http://blog.csdn.net/walilk/article/details/50278697


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM