ReLU
在神經網絡中,常用到的激活函數有sigmoid函數:
ReLU函數可以表示爲
sigmoid、tanh、ReLU、softplus的對比曲線如下圖所示:
使用ReLU函數時,有幾個重要的優點和缺點:
1. [優點]和sigmoid、tanh神經元昂貴的操作(指數等)相比,ReLU可以通過簡單的零閾值矩陣進行激活,並且不受飽和的影響
2. [優點]和sigmoid、tanh函數相比,ReLU可以大大加快隨機梯度下降算法的收斂,普遍認爲原因在於其具有線性、非飽和的形式
3. [缺點]不幸的是,ReLU在訓練時是非常脆弱的,並且可能會“死”。例如,流經ReLU神經元的一個大梯度可能導致權重更新後該神經元接收到任何數據點都不會再激活。如果發生這種情況,之後通過該單位點的梯度將永遠是零。也就是說,ReLU可能會在訓練過程中不可逆地死亡,並且破壞數據流形。例如,如果學習率太高,你可能會發現,多達40%的網絡會“死”(即,在整個訓練過程中神經元都沒有激活)。而設置一個適當的學習率,可以在一定程度上避免這一問題。
ReLU還存在一些變體,如圖所示:
概述如下:
Noisy ReLU
在ReLU中包含高斯噪聲,便可以得到noisy ReLU:
Leaky ReLU
Leaky ReLU是對於“ReLU死亡問題”的一次解決嘗試
可以表示爲:
其中,a爲一個較小值,如0.01等
有研究表明採用這種形式的激活函數效果更好,但結果並不總是一致的
優勢:
1. Biological plausibility:單邊,相比於反對稱結構(antisymmetry)的tanh
2. Sparse activation:基本上隨機初始化的網絡,只有有一半隱含層是處於激活狀態,其餘都是輸出爲0
3. efficient gradient propagation:不像sigmoid那樣出現梯度消失的問題
4. efficient computation:只需比較、乘加運算。使用rectifier 作爲非線性激活函數使得深度網絡學習不需要pre-training,在大、複雜的數據上,相比於sigmoid函數等更加快速和更有效率。
Randomized Leaky ReLU
對於RReLU,訓練過程中負數部分的斜坡是在一個範圍內隨機選取的,然後在測試過程中固定。在最近的Kaggle National Data Science Bowl (NDSB) 競賽中,據悉RReLU由於其隨機的特性可以有效地減少過擬合。
Conclusion
ReLU的各種變體在一定程度上都超越了原始的ReLU,而PReLU和RReLU似乎是更好的選擇
—————————————————————————–
Web Reference
[1]Rectified Linear Unit (ReLU)
[2]修正線性單元(Rectified linear unit,ReLU)
[3][20140429] Rectified Linear Units