FTS:Flatten-T Swish 激活函数

FTS: Flatten-T Swish : a thresholded ReLU-Swish-like activation function for deep learning

介绍:

ReLU激活函数是深度学习在CNN中的默认激活函数,但是负输入时,0输出,严重负值通过网络传播。该文章提出了一个称为扁平化Swish的激活函数(Flatten-T Swish(FTS))。通过简单的试验发现分类的准确率有所提高,而且FTS的收敛速度是ReLU的两倍。

方法:

FTS包含了ReLU和Swish的相似属性,并且附加了阈值T参数,可以提高分类精度。首先将原始的ReLU的线性恒等部分与Sigmoid激活函数进行修正,具体可以简单的表达为:
F T S ( x ) = R e L U ( x ) ⋅ S i g m o i d ( x ) = { x 1 + e − x x ≥ 0 0 x < 0 FTS(x)= ReLU(x)\cdot Sigmoid(x) = \begin{cases} \frac{x}{1+e^{-x}} & x\ge 0\\ 0 & x<0 \end{cases} FTS(x)=ReLU(x)Sigmoid(x)={1+exx0x0x<0
可以发现 x ≥ 0 x\ge 0 x0区域FTS与Swish具有相似的性质;FTS在负区域保留了与ReLU相同的强制为零的特性,这样减少了计算的复杂度,增加了稀疏性。FTS的对x的导数为:
F T S ′ ( x ) = { 1 + e − x + e − x x ( 1 + e − x ) 2 x ≥ 0 0 x < 0 FTS^\prime(x)= \begin{cases} \frac{1+e^{-x}+e^{-x}x}{(1+e^{-x})^2} & x\ge 0\\ 0 & x<0 \end{cases} FTS(x)={(1+ex)21+ex+exx0x0x<0
FTS具体的函数图像如下图所示:
FTS的函数曲线和导数曲线
当前FTS仍然存在负神经元死亡问题,由此添加一个参数T,将阈值T设置为小于零的值,用以保证网络在负值时仍可以进行反向传播,具体的公式为:
F T S ( x ) = { x 1 + e − x + T x ≥ 0 T x < 0 FTS(x) = \begin{cases} \frac{x}{1+e^{-x}} +T& x\ge 0\\ T & x<0\end{cases} FTS(x)={1+exx+TTx0x<0
加入参数后的FTS(x)的导数为:
F T S ′ ( x ) = { 1 + e − x + e − x x ( 1 + e − x ) 2 x ≥ 0 0 x < 0 FTS^\prime(x)= \begin{cases} \frac{1+e^{-x}+e^{-x}x}{(1+e^{-x})^2} & x\ge 0\\ 0 & x<0 \end{cases} FTS(x)={(1+ex)21+ex+exx0x0x<0
加入参数T后的函数曲线如下图:
加入参数T后的函数曲线加入参数T后的函数导数曲线
通过试验表明当 T = − 0.2 T=-0.2 T=0.2时的FTS由于其它激活函数。而且FTS的收敛速度比ReLU快两倍。但是FTS没有解决负值神经元死亡问题。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值