激活函數總結(十一):激活函數補充
- 1 引言
- 2 激活函數
- 2.1 Absolute激活函數
- 2.2 Bipolar激活函數
- 2.3 Bipolar Sigmoid激活函數
- 3. 總結
1 引言
在前面的文章中已經介紹了介紹了一系列激活函數 (Sigmoid
、Tanh
、ReLU
、Leaky ReLU
、PReLU
、Swish
、ELU
、SELU
、GELU
、Softmax
、Softplus
、Mish
、Maxout
、HardSigmoid
、HardTanh
、Hardswish
、HardShrink
、SoftShrink
、TanhShrink
、RReLU
、CELU
、ReLU6
、GLU
、SwiGLU
、GTU
、Bilinear
、ReGLU
、GEGLU
、Softmin
、Softmax2d
、Logsoftmax
、Identity
、LogSigmoid
、Bent Identity
)。在這篇文章中,會接著上文提到的眾多激活函數繼續進行介紹,給大家帶來更多不常見的激活函數的介紹。這里放一張激活函數的機理圖:
最后,對于文章中沒有提及到的激活函數,大家可以通過評論指出,作者會在后續的文章中進行添加補充。
2 激活函數
2.1 Absolute激活函數
Absolute(絕對值)激活函數是一種基于絕對值
的非線性
激活函數,它將輸入值映射
到其絕對值上。該函數在輸入從負向正變化的過程中保持連續性
。在輸入為負時,絕對值激活函數輸出與輸入值相同的正值;在輸入為正時,輸出仍然是輸入值。其數學表達式和數學圖像分別如下所示:
A b s o l u t e ( x ) = ∣ x ∣ Absolute(x) = |x| Absolute(x)=∣x∣
優點:
- 無梯度消失問題: 絕對值激活函數在所有輸入范圍內的梯度都為
常數
(1或-1),因此不存在類似于Sigmoid或Tanh等函數那樣的梯度消失
問題。這意味著在訓練過程中梯度可以更容易
地傳播,特別是在深層神經網絡中。 - 線性性質:絕對值激活函數是一個
分段線性
函數,其輸出在不同的區間
內是線性的。這可以在某些問題中提供適度的非線性
性質,對于某些任務可能是有用的。 - 穩定性: 絕對值激活函數對于輸入中的大幅度變化有一定的
魯棒性
,因為它總是返回非負的輸出,避免了負數的抑制性
影響。
缺點:
- 缺乏靈活性:絕對值激活函數是
非常簡單
的線性函數,它沒有類似于Sigmoid、ReLU等激活函數引入的非線性特性
。這可能限制了其在某些復雜任務
上的表現能力。 - 信息損失: 由于絕對值激活函數
直接舍棄
了輸入的符號信息,它可能無法區分正負值
對任務的影響,這可能導致在某些情況下丟失有用的信息。 - 非可導連續:絕對值激活函數在0處
不可微分
,表現出導數不連續的狀況。
這個激活函數十分簡單,也因其簡單的性質現在很少使用。。。
2.2 Bipolar激活函數
Bipolar激活函數是一種特殊的激活函數,它是Threshold
函數的一個變種。它的數學表達式如下和數學圖像分別如下所示::
B i p o l a r ( x ) = { 1 i f x > = t h r e s h o l d ? 1 i f x < t h r e s h o l d Bipolar(x)=\left\{ \begin{matrix} \quad \quad \quad 1 \quad \quad \quad if \quad x >= threshold \\ \quad \quad \quad -1 \quad \quad \quad if \quad x < threshold \quad \end{matrix} \right. Bipolar(x)={1ifx>=threshold?1ifx<threshold?
優點:
- 簡單性: 閾值激活函數非常簡單,僅基于閾值對輸入進行二進制判定,因此
計算效率高
。 - 穩定性: 在一些特定的應用中,閾值激活函數可能會表現出穩定性,不易受到
梯度爆炸
等問題的影響。 - 雙極性:輸出范圍在
-1到1
之間,這可以使其在處理輸入數據的正負關系
時表現更好。
缺點:
- 缺乏表達能力:閾值激活函數非常
限制
了神經網絡的表達能力
,它只能輸出兩種值(0和1),無法適應更復雜
的數據模式。這使得神經網絡很難從數據中學習到更高層次的特征表示
。 - 梯度消失:閾值激活函數在大部分輸入范圍內的
導數
都為0,這導致在反向傳播時,梯度會很快消失
,使得網絡很難學習。這個問題也在Sigmoid激活函數中存在,因此它們通常不作為主要的激活函數選擇。 - 不可導性:閾值激活函數在閾值處是
不可導
的,這使得它無法直接應用于使用梯度下降等基于梯度的優化算法進行訓練。這會導致訓練過程不穩定
,并可能需要使用一些近似的方法來處理。
Bipolar同Threshold是一致的,因其特性導致很難在網絡結構中使用。。。
2.3 Bipolar Sigmoid激活函數
論文鏈接:Mansor, Mohd Asyraf, and Saratha Sathasivam. “Activation function comparison in neural-symbolic integration.” In AIP Conference Proceedings, vol. 1750, no. 1, p. 020013. AIP Publishing LLC, 2016.
Bipolar Sigmoid激活函數是一種特殊的激活函數,它是Sigmoid
函數的一個變種。它的數學表達式如下和數學圖像分別如下所示::
B i p o l a r S i g m o i d ( x ) = 2 / ( 1 + e x p ( ? x ) ) ? 1 Bipolar Sigmoid(x) = 2 / (1 + exp(-x)) - 1 BipolarSigmoid(x)=2/(1+exp(?x))?1
優點:
- 雙極性輸出: Bipolar Sigmoid的輸出范圍在
-1到1
之間,這可以使其在處理輸入數據的正負關系
時表現更好。它適用于處理具有雙極性
性質的數據,例如一些情感分析任務中的正面和負面情感。 - 連續可微性: 與標準的Sigmoid函數一樣,Bipolar Sigmoid也是
連續可微
的。這對于使用梯度下降等優化方法進行訓練和反向傳播是至關重要
的,因為它們要求激活函數是可微的。 - 非線性特性: Bipolar Sigmoid是
非線性
的激活函數,它可以引入一定的非線性表達能力,有助于神經網絡模型捕獲復雜的數據關系。
缺點:
- 飽和問題: Bipolar Sigmoid激活函數在
輸入遠離0
的時候,輸出會飽和,即梯度趨近于0
。這可能導致訓練時的梯度消失
問題,特別是在深層網絡中。 - 計算復雜性: 與標準的Sigmoid函數一樣,Bipolar Sigmoid的
計算開銷也較大
,因為它涉及到指數運算
。這可能會在網絡訓練中導致較慢的收斂速度。
雖然Bipolar Sigmoid 在理論上具有比Sigmoid更好的效果,但是結合Sigmoid系列
整體的激活函數而言,這是微不足道的!!!因此,Bipolar Sigmoid作為Sigmoid系列
激活函數的一員也是很少使用的一類激活函數。。。。
3. 總結
到此,使用 激活函數總結(十一) 已經介紹完畢了!!! 如果有什么疑問歡迎在評論區提出,對于共性問題可能會后續添加到文章介紹中。如果存在沒有提及的激活函數
也可以在評論區提出,后續會對其進行添加!!!!
如果覺得這篇文章對你有用,記得點贊、收藏并分享給你的小伙伴們哦😄。