神經網路中的啟用函式是幹是什麼用的?
我是小玉,一個平平無奇的資料小天才!
最近在回顧神經網路這裡知識,發現自己還是有很多知識點掌握不夠清楚明瞭,既然開始搞就要搞得明明白白,會了神經網路等於掌握了大半個機器學習。
跟大家分享一下我在看這裡時候遇到的一些常見問題,神經網路不同於傳統的機器學習方法,它由於更多的性質在機器學習領域得到了大量應用。但是想要真的弄清楚神經網路還需要下下功夫。
啟用函式:
我們在學習神經網路的時候必不可免的會聽到一個詞叫做啟用函式,這個東西就是對於神經網路來說,起了很大的作用,為神經網路添加了更多的非線性因素,舉個例子:
上圖是這是一個簡單的線性分類問題,正常情況下我們只需要一條直線就可以很好地分類。
但是當我們碰到下圖問題時,無法通過一條直線將樣本分類出來,需要我們加入非線性因素才可以將樣本分類好,而我們的啟用函式就是我們要加入的非線性因素:
我們在深入理解啟用函式的時候需要先知道什麼是硬飽和什麼是軟飽和!
假設h(x)是一個啟用函式。
1.當我們的n趨近於正無窮,啟用函式的導數趨近於0,那麼我們稱之為右飽和。
2.當我們的n趨近於負無窮,啟用函式的導數趨近於0,那麼我們稱之為左飽和。
3.當一個函式既滿足左飽和又滿足右飽和的時候我們就稱之為飽和,典型的函式有Sigmoid,Tanh函式。
,則稱其為右硬飽和。如果對於任意的x,如果存在常數c,當x<c時,恆有,則稱其為左硬飽和。既滿足左硬飽和又滿足右硬飽和的我們稱這種函式為硬飽和。
4.對於任意的x,如果存在常數c,當x>c時,恆有趨近於0,則稱其為右軟飽和。如果對於任意的x,如果存在常數c,當x<c時,恆有
常用的啟用函式:
1、Sigmoid函式:
Sigmoid函式的優點:1.求導容易。 2.Sigmoid函式的輸出對映在(0,1)之間,單調連續輸出範圍有限,優化穩定可以用作輸出層。
缺點:1.由於其軟飽和性,容易造成梯度消失問題。2.其輸出沒有以0為中心。
2、Tanh函式:
Tanh函式的優點:1.收斂速度比Sigmoid函式快。 2. 其輸出以0為中心。
缺點:還是出現軟飽和現象,梯度消失問題並沒有解決。
3、Relu函式:
Relu函式的優點:1.在SGD(隨機梯度下降演算法)中收斂速度夠快。2.不會出現像Sigmoid那樣梯度消失問題。3.提供了網路稀疏表達能力。4.在 無監督訓練中也有良好的表現。
缺點:1.不以0為中心。
2.前向傳導(forward pass)過程中,如果 x < 0,則神經元保持非啟用狀態,且在後向傳導(backward pass)中「殺死」梯度。這樣權重無法得到更新,網路無法學習。神經元死亡是不可逆的。
4、LReLU、PReLU與RReLU函式:
LRelu函式:
公式:
LRelu的優點:緩解了Relu神經元死亡的問題。
PRelu函式:
公式:
其中是超引數。這裡引入了一個隨機的超引數,它可以被學習,因為你可以對它進行反向傳播。這使神經元能夠選擇負區域最好的梯度,有了這種能力,它們可以變成 ReLU 或 Leaky ReLU。負值部分的斜率是根據資料來定的,而非預先定義的。
RRelu函式:
RReLU也是Leaky ReLU的一個變體。在RReLU中,負值的斜率在訓練中是隨機的,在之後的測試中就變成了固定的了。RReLU的亮點在於,在訓練環節中,aji是從一個均勻的分佈U(I,u)中隨機抽取的數值。
RReLU中的aji是一個在一個給定的範圍內隨機抽取的值,這個值在測試環節就會固定下來。
5、ELU函式:
優點:右側的線性部分能夠緩解梯度消失,左側的軟飽和能夠對於輸入變化魯棒,而且收斂速度更快。
關於神經網路的啟用函式,彙總有26 種,但是常用的也就這幾種,大家掌握好這幾種啟用函式也就可以將神經網路進行靈活應用啦!
有幫助就點個讚唄!