激活函数Tanh
Tanh的诞生比Sigmoid晚一些,sigmoid函数我们提到过有一个缺点就是输出不以0为中心,使得收敛变慢的问题。而Tanh则就是解决了这个问题。Tanh就是双曲正切函数。等于双曲余弦除双曲正弦。函数表达式和图像见下图。这个函数是一个奇函数。
对tanh函数求导需要一定的数学基础,这里直接给出结果。 t a n h ′ ( x ) = 1 − t a n h 2 ( x ) tanh'(x)=1-tanh^2(x) tanh′(x)=1−tanh2(x),这个函数同样是根据函数求导数很容易,但是函数值的计算比较复杂。
同样可以很轻易的证明这个函数两边趋于无穷极限是饱和的,函数图像和sigmoid函数非常像,其实就是直接在竖直方向拉伸两倍,然后在y轴向下平移了1个单位,使得函数的中心回到了0,然后在水平方向上拉伸两倍。 t a n h ( x ) = 2 s i g m o i d ( 2 X ) − 1 tanh(x)=2sigmoid(2X)-1 tanh(x)=2sigmoid(2X)−1。解决了sigmoid函数收敛变慢的问题,相对于sigmoid提高了收敛速度。
其他特点都是类似的,根据函数值求导数值简单,但是指数的计算复杂。梯度消失的特点依旧保留,因为两边的饱和性使得梯度消失,进而难以训练。
尽管tanh函数和sigmoid函数存在梯度消失的问题,但是与之类似,如果函数的梯度过大又会导致梯度爆炸的问题,显然tanh和sigmoid的导函数非常有界,根据导数公式,很容易得出 t a n h ′ ( x ) ∈ [ 0 , 1 ] tanh'(x)\in[0,1] tanh′(x)∈[0,1],所以完全不用担心因为使用激活函数而产生梯度爆炸的问题。
系列文章:
神经网络中的激活函数总述
sigmoid激活函数
tanh激活函数
ReLU系列激活函数
maxout激活函数
Swish激活函数
激活函数发展的新里程——EvoNorms
今天的文章激活函数Tanh_一阶因子和二阶因子[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/77432.html