自門控激活函數Swish

   論文鏈接:Swish: a Self-Gated Activation Function


    目前使用最廣泛的激活函數是 ReLU。

    本論文中,我們提出了一種新型激活函數 Swish,Swish的數學表達爲:


    其中σ(x) = 1/(1 + exp(−x)) 是 Sigmoid 函數。 Swish 函數的幾何表示如下:


圖 1:Swish 激活函數


    和 ReLU 一樣,Swish 無上界有下界。    與 ReLU 不同的是,Swish 是平滑且非單調的函數。

    Swish 的導數是


    Swish 的一階導和二階導如圖 2 所示。輸入低於 1.25 時,導數小於 1。

圖 2:Swish 的一階導數與二階導數。


    Swish 的設計受到 LSTM 和 highway network 中使用 sigmoid 函數進行門控的啓發。我們使用同樣的值進行門控來簡化門控機制,稱爲自門控(self-gating)。自門控的優勢是它僅需要一個簡單的標量輸入,而正常的門控需要多個標量輸入。該特性令使用自門控的激活函數如 Swish 能夠輕鬆替換以單個標量作爲輸入的激活函數(如 ReLU),無需改變參數的隱藏容量或數量。


    在 TensorFlow 等大多數深度學習庫中只需更改一行代碼即可實現 Swish 函數。需要注意的是,如果使用 BN,應設置縮放參數(scale parameter)。由於 ReLU 函數是分段線性函數,一些高級別的庫默認關閉縮放參數,但是該設置不適用於 Swish。


    一句話:Swish 是一種新型激活函數,公式爲: f(x) = x · sigmoid(x)。Swish 具備無上界有下界、平滑、非單調的特性。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章