最常用**函数公式(更新中)
最常用**函数公式
如需转载,请务必标明出处及作者信息:@洋石灰儿@https://blog.****.net/Yshihui/article/details/80540070
(1)what and why
直观的作用就是进行非线性操作,将输入信号input线性加权,再进行非线性操作。
神经网络模拟生物神经元的工作原理,人工神经元的工作是将神经质传输到突出,突出将各个神经质进行进一步操作,权衡后再向下一个神经元传输神经质。可以自行查询生物神经元的工作原理。
-
**函数的性质:
- 非线性——从后面的各个**函数的公式可以明显看出。原因是:层神经网络向下一层 神经网络传递信息时,如果是线性处理,则层和层等价于一层神经网络,从而失去神经元传递的意义。非线性操作——模拟生物神经元工作原理。
- 可微性——进行优化时常利用梯度进行方向优化。
- 单调性——单调性保证单层神经网络的单调性,从而保证输入和输出之间的单调性关系(参考链式法则)。
- 输出范围——当**函数输出值是 有限 的时候,基于梯度的优化方法会更加 稳定,因为特征的表示受有限权值的影响更显著;当**函数的输出是 无限 的时候,模型的训练会更加高效,不过在这种情况小,一般需要更小的learning rate。
(2)常用**函数
sigmoid,tanh,ReLU,LReLU,PReLU,RReLU,ELU,Cost Function,Maxout,Softplus,Softsign
1.sigmoid
2.tanh
3.ReLU
4.LReLU——PReLU
5.RReLU
6.softmax
7.ELU
8.Cost Function——Softmax + Cross Entropy
9.Maxout
Maxout可以看做是在深度学习网络中加入一层**函数层,包含一个参数k.这一层相比ReLU,sigmoid等,其特殊之处在于增加了k个神经元,然后输出**值最大的值.
我们常见的隐含层节点输出:
而在Maxout网络中,其隐含层节点的输出表达式为:
其中
以如下最简单的多层感知器(MLP)为例:
假设网络第i层有2个神经元x1、x2,第i+1层的神经元个数为1个.原本只有一层参数,将ReLU或sigmoid等**函数替换掉,引入Maxout,将变成两层参数,参数个数增为k倍.与常规**函数不同的是,它是一个可学习的分段线性函数.
然而任何一个凸函数,都可以由线性分段函数进行逼近近似。其实我们可以把以前所学到的**函数:ReLU、abs**函数,看成是分成两段的线性函数,如下示意图所示:
实验结果表明Maxout与Dropout组合使用可以发挥比较好的效果。
那么,前边的两种ReLU便是两种Maxout,函数图像为两条直线的拼接,.
原文: https://www.cnblogs.com/makefile/p/activation-function.html © 康行天下
10.Softplus
11.Softsign
sigmoid,tanh,ReLU,LReLU,PReLU,RReLU,ELU,Cost Function,Maxout,Softplus,Softsign
如需转载,请务必标明出处及作者信息:@洋石灰儿@https://blog.****.net/Yshihui/article/details/80540070
参考:
https://zhuanlan.zhihu.com/p/26122560
https://blog.****.net/yshihui/article/details/80444353
https://www.jianshu.com/p/22d9720dbf1a
https://www.cnblogs.com/rgvb178/p/6055213.html
https://www.cnblogs.com/makefile/p/activation-function.html
https://zhuanlan.zhihu.com/p/22142013