Answers:
仅在您的输出接受多个“真”答案(例如,检查图像中各种对象是否存在的网络)时,才使用简单的S形。换句话说,输出不是概率分布(不需要求和为1)。
我参加聚会可能会很晚,但是似乎有些事情需要在这里清除。
首先:输出层的激活函数通常取决于成本函数。这样做是为了使衍生成本函数的相对于所述输入在最后层容易计算。
作为一个例子,我们可以使用的平均平方误差损失在回归设置中。通过设置(线性激活函数),我们发现对于衍生物
这就是为什么线性激活经常用于回归而将logistic / softmax激活用于二进制/多类分类的原因。但是,没有什么可以阻止您尝试不同的组合。虽然表达可能不会那么好,这并不意味着你的激活功能将执行更差。
其次,我想补充一点,有很多激活功能可用于隐藏层。S形(如物流功能和双曲线正切)已被证明的工作确实很好,但指示Jatin,这些从消失梯度遭受当你的网络变得过深。在这种情况下,ReLU变得很流行。不过,我想强调的是,还有更多可用的激活函数,并且不同的研究人员一直在寻找新的函数(例如,指数线性单位(ELU),高斯误差线性单位(GELU)等)更好的性能
结论:寻找最佳的激活功能时,请发挥创造力。尝试不同的方法,看看哪些组合可以带来最佳性能。
附录:对于更多的损失函数和激活对,您可能想要寻找(规范的)链接函数
Sigmoid和tanh不应用作隐藏层的激活函数。这是由于梯度消失的问题所致,即,如果您的输入位于较高的一侧(S型曲线平坦),则梯度将接近零。这将导致反向传播过程中非常缓慢的学习,甚至没有学习效果,因为权重将使用非常小的值进行更新。
此处有详细说明:http : //cs231n.github.io/neural-networks-1/#actfun
因此,隐藏图层的最佳功能是ReLu。