目前有很多激活函數,比如sigmoid、tanh、ReLU(作為首選),但我有一個問題,需要考慮哪些選項,以便選擇某個激活函數。
例如:當我們想在GANs中對網絡進行上采樣時,我們更喜歡使用LeakyReLU。
我是這方面的新手,還沒有找到一個具體的解決方案,在不同的情況下使用哪個激活函數。
我現在的知識是:Sigmoid:當你有一個二進制類來識別Tanh:?雷魯:?利基雷盧:當你想增加采樣的時候
任何幫助或文章都將不勝感激。
目前有很多激活函數,比如sigmoid、tanh、ReLU(作為首選),但我有一個問題,需要考慮哪些選項,以便選擇某個激活函數。
例如:當我們想在GANs中對網絡進行上采樣時,我們更喜歡使用LeakyReLU。
我是這方面的新手,還沒有找到一個具體的解決方案,在不同的情況下使用哪個激活函數。
我現在的知識是:Sigmoid:當你有一個二進制類來識別Tanh:?雷魯:?利基雷盧:當你想增加采樣的時候
任何幫助或文章都將不勝感激。
公眾號:1024技術圈
?? 提供互聯網知識和資訊,分享IT前沿技術,熱門資源,大廠面試題 ??
這是一個開放的研究問題。激活的選擇也與模型的體系結構和可用的計算/資源緊密交織在一起,因此在思洛存儲器中無法回答。Yann LeCun等人的論文《高效的Backprop》對什么是好的激活功能有很多很好的見解。
也就是說,這里有一些玩具的例子,可能有助于獲得激活函數的直覺。考慮一個簡單的MLP與一個隱藏層和一個簡單的分類任務:
在最后一層中,我們可以將
sigmoid
與binary_crossentropy
損失結合使用,以便使用邏輯回歸的直覺——因為我們只是對隱藏層提供給最后一層的學習特征進行簡單的邏輯回歸。學習什么類型的特征取決于隱藏層中使用的激活函數和隱藏層中的神經元數量。
以下是雷盧在使用兩個隱藏神經元時學到的知識:
https://miro.medium.com/max/2000/1*5nK725uTBUeoIA0XjEyA_A.gif
(左邊是特征空間中決策邊界的樣子)
當你添加更多的神經元時,你會得到更多的片段來近似決策邊界。下面是3個隱藏的神經元:
和10個隱藏的神經元:
Sigmoid
和Tanh
產生類似的分離邊界(這是tanh
https://miro.medium.com/max/2000/1*jynT0RkGsZFqt3WSFcez4w.gif-sigmoid
類似),它們更連續、更正弦。主要區別在于
sigmoid
不是zero-centered,這并不是隱藏層的好選擇,尤其是在深層網絡中。