自门控激活函数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 具备无上界有下界、平滑、非单调的特性。

你可能感兴趣的:(数学基础,Swish,激活函数)