为什么事实上的标准S形函数在(非深度)神经网络和逻辑回归中如此流行?
我们为什么不使用许多其他可导函数,它们的计算时间更快或更慢的衰减(因此消失的梯度发生得更少)。维基百科上关于Sigmoid函数的例子很少。是我最喜欢的具有缓慢衰减和快速计算的功能。
编辑
这个问题与具有优点/缺点的神经网络中激活函数的综合列表不同,因为我只对“为什么”感兴趣,而对乙状结肠不感兴趣。
为什么事实上的标准S形函数在(非深度)神经网络和逻辑回归中如此流行?
我们为什么不使用许多其他可导函数,它们的计算时间更快或更慢的衰减(因此消失的梯度发生得更少)。维基百科上关于Sigmoid函数的例子很少。是我最喜欢的具有缓慢衰减和快速计算的功能。
这个问题与具有优点/缺点的神经网络中激活函数的综合列表不同,因为我只对“为什么”感兴趣,而对乙状结肠不感兴趣。
Answers:
在模式识别和机器学习的第4.2节(Springer,2006年)中,Bishop表明,在两类分类的贝叶斯处理中,对数自然地以后验概率分布的形式出现。然后,他继续证明离散分布的特征以及指数分布族的子集也是如此。对于多类分类,logit概括为归一化指数函数或softmax函数。
这就解释了为什么在逻辑回归中使用这种S形。
关于神经网络,此博客文章解释了如何对不同的非线性(包括logit / softmax和神经网络中使用的概率)进行统计解释,从而获得动力。基本思想是,多层神经网络可以看作是广义线性模型的层次结构。据此,激活函数是链接函数,它们依次对应于不同的分布假设。
该函数看起来比其他函数更“自然”的一个原因是,它恰好是伯努利分布的规范参数的反函数: (指数中的函数称为规范参数。)p
也许更令人信服的理由来自信息理论,在该理论中,可以将S形函数推导为最大熵模型。粗略地说,S型函数假定结构最小,反映了我们对基础模型的总体无知状态。
我问自己这个问题已经好几个月了。关于CrossValidated和Quora的答案都列出了逻辑Sigmoid函数的不错的属性,但似乎我们都巧妙地猜测了该函数。我错过的是选择它的理由。我终于在Bengio(2016)的“深度学习”书的第6.2.2.2节中找到了一个。用我自己的话:
简而言之,我们希望模型输出的对数适合于训练数据对数似然的基于梯度的优化。
切断与产生一个零梯度为以外。每当模型的预测错误时,我们都需要一个强梯度,因为我们用梯度下降来解决逻辑回归。对于逻辑回归,没有封闭形式的解决方案。
考虑到我们使用最大似然估计来拟合模型,逻辑函数具有当模型的预测错误时渐近恒定梯度的良好特性。如下所示:
为了获得数值收益,可以通过最小化训练数据的负对数似然来完成最大似然估计。因此,我们的成本函数为:
由于,因此我们可以关注情况。因此,问题是在给定z = w T x + b的情况下如何建模。
函数将映射到的明显要求是:
所有这些要求都可以通过重新缩放S型函数来满足。两者和实现他们。但是,在基于对数似然的基于梯度的优化过程中,S型函数的行为有所不同。我们可以通过插入逻辑函数f(z)=1来看到差异进入我们的成本函数。
对于且,则一个错误分类的样本(即)的成本为:
我们可以看到存在一个线性分量。现在,我们来看两种情况:
上面,我们集中于情况。对于,成本函数的行为类似,仅当模型的预测错误时才提供强梯度。
这是成本函数为:
它是水平翻转的softplus功能。对于,它是softplus函数。
您提到了逻辑Sigmoid函数的替代方法,例如
看起来像这样:
由于最初的问题提到了衰减梯度问题,所以我想补充一下,对于中间层(您无需将激活解释为类概率或回归输出),其他非线性通常比S形函数更可取。最突出的是整流器功能(如在ReLU中),它们在正域上呈线性,在负域上呈零。它们的优点之一是它们较少受到衰减梯度问题的影响,因为导数在正域上是恒定的。ReLU变得很流行,以至于乙状结肠可能不再被称为事实上的标准。
Glorot等。(2011)。深稀疏整流器神经网络