我正在编写一些基本的神经网络方法——特别是激活函数——并且已经达到了我垃圾数学知识的极限。我了解各自的范围(-1/1)(0/1)等,但不同的描述和实现让我感到困惑。
特别是sigmoid、logistic、bipolar sigmoid、tanh等。
sigmoid是否简单地描述了函数的形状而不考虑范围?如果是这样,那么 tanh 是一个“sigmoid 函数”吗?
我在一篇论文中看到了 'bipolar sigmoid' 与 'tanh' 的比较,但是我看到两个函数都使用相同的代码实现(在各种库中):
(( 2/ (1 + Exp(-2 * n))) - 1)。它们完全一样吗?
同样,我看到了用相同的代码实现的逻辑和sigmoid激活:
( 1/ (1 + Exp(-1 * n)))。这些也是等价的吗?
最后,在实践中它甚至那么重要吗?我在 wiki 上看到了一个非常相似的 sigmoid 函数图- 可以使用其中的任何一个吗?有些看起来他们的计算速度可能比其他人快得多。