iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 15
0
AI & Data

Machine Learning與軟工是否搞錯了什麼?系列 第 15

Day 15 Activation function之兄弟大戰

  • 分享至 

  • xImage
  •  

Activation function之兄弟大戰

今天要來介紹一些常見的activation function,先從Relu三兄弟開始。

為什麼要Activation function?

在類神經網路中如果不使用激勵函數,那麼在類神經網路中皆是以上層輸入的線性組合作為這一層的輸出(也就是矩陣相乘),輸出和輸入依然脫離不了線性關係,做深度類神經網路便失去意義。
深度學習:使用激勵函數的目的、如何選擇激勵函數 Deep Learning : the role of the activation function

可以看到,有了Activation function以後,網路產生極大的可變性,這樣我們才具有非線性的能力。

Activation function的圖片皆取自Activation Functions

elu

elu是一種傾向於將數值更快地收斂到零並產生更準確結果的函數。
elu具有一個額外的alpha常數,且這個常數為正的。

優點

  • 較為緩慢的變平滑。
  • elu為Relu的替代品,可以有負的輸出。

缺點

  • 當輸入大於0,這個激勵函數可能會blow up。

Relu

有sigmoid的優點,但速度較快。

優點

  • 避免且糾正梯度消失的問題。
  • 計算比tanh和Sigmoid快,因為Relu的數學運算較簡單。

缺點

  • 只能在神經網絡模型的隱藏層中使用。
  • 可能會導致權重更新不了,因為輸入X<0時,梯度將為0(Relu的特性),這樣會使權重調整不了,這稱為dying ReLu problem。
  • 當輸入大於0,這個激勵函數可能會blow up。

LeakyReLU

具有Relu的特點,但x<0時梯度不為0,可以解決dying ReLu problem。

優點

  • x<0不為0,可以解決dying ReLu problem。

缺點

  • x<0時是線性的,因此不能在複雜的分類中使用。
  • 效能可能會低於Sigmoid與Tanh。

結論

今天我們看了三種Relu的兄弟。

  • elu:負的可以有梯度。
  • Relu:速度快,但有垂死的問題。
  • LeakyReLU:負的可以有梯度,但具有線性,因此不太能處理複雜的分類。

參考資料

深度學習:使用激勵函數的目的、如何選擇激勵函數 Deep Learning : the role of the activation function
Activation Functions


上一篇
Day 14 Optimizer大亂鬥
下一篇
Day 16 Activation function之群雄亂舞
系列文
Machine Learning與軟工是否搞錯了什麼?30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言