Machine learning 人工神经网络-为什么通常在隐藏层使用S形激活函数而不是tanh-S形激活函数?

Machine learning 人工神经网络-为什么通常在隐藏层使用S形激活函数而不是tanh-S形激活函数?,machine-learning,neural-network,normalization,activation-function,Machine Learning,Neural Network,Normalization,Activation Function,为什么log sigmoid激活函数是隐藏层中的主要选择,而不是tanh sigmoid激活函数?而且,如果我使用Z分数标准化,我可以在隐藏层中使用sigmoid激活函数吗 古代史 使用乙状结肠功能的动机在历史上是出于生理动机。最初的神经网络,在很早的时候,实际上使用了阶跃函数 其动机是,这就是神经元在大脑中的工作方式,至少当时是这样理解的。在一定的固定激活能下,神经元“激活”,从非活动(0)变为活动(1)。然而,这些网络很难训练,标准范式也有物理动机,例如“经常使用的神经元,获得更强的连接”

为什么log sigmoid激活函数是隐藏层中的主要选择,而不是tanh sigmoid激活函数?而且,如果我使用Z分数标准化,我可以在隐藏层中使用sigmoid激活函数吗

古代史 使用乙状结肠功能的动机在历史上是出于生理动机。最初的神经网络,在很早的时候,实际上使用了阶跃函数

其动机是,这就是神经元在大脑中的工作方式,至少当时是这样理解的。在一定的固定激活能下,神经元“激活”,从非活动(0)变为活动(1)。然而,这些网络很难训练,标准范式也有物理动机,例如“经常使用的神经元,获得更强的连接”。这种方法适用于非常小的网络,但根本无法扩展到更大的网络

梯度下降和乙状结肠的出现 在80年代,当人们发现神经网络可以使用梯度下降法进行训练时,神经网络发生了一次小小的革命。这允许网络扩展到更大的规模,但也意味着激活步骤的结束,因为它是不可微的。然而,考虑到阶跃激活的悠久历史及其看似合理的物理动机,人们对完全放弃它犹豫不决,因此用sigmoid函数来近似它,该函数具有许多相同的特征,但在0左右是可微的

后来,人们开始使用tanh函数,因为它是以零为中心的,在某些情况下会提供更好的特性

革命 然后在2000年,《自然》杂志发表了一篇开创性的论文,建议使用激活功能:

这是由早期激活功能的问题引起的,但最重要的是速度和它不受影响的事实。从那时起,基本上所有顶级神经网络研究都使用ReLU激活或其细微变化

唯一的例外可能是循环网络,其中输出作为输入反馈。在这些情况下,使用诸如ReLU之类的无限激活函数将很快导致结果爆炸,在这些情况下,人们仍然使用sigmoid和/或tanh