从 neuralnetworksanddeeplearning 理解第 1 章示例 2

Understanding Chapter 1 Example 2 from neuralnetworksanddeeplearning

我正在学习 Chapter 1 of neuralnetworksanddeeplearning 并且没有理解第二个练习(模拟感知器的 S 形神经元,第二部分

Show that in the limit as c→∞ the behaviour of this network of sigmoid neurons is exactly the same as the network of perceptrons. How can this fail when w⋅x+b=0 for one of the perceptrons?

我能够证明 c→∞ 的行为与感知器网络相同。但是我不确定我对 w⋅x+b=0 失败的原因是否正确。

通过用 z = 0 代替 sigmoid 函数 (1 / (1 + e^-z),我得到 1 / (1 + e^-0) 分解为 1 / (1 + 1) = 1/2

如果定义 1/2 会在神经元中触发 1,那么我不明白为什么 w⋅x+b=0 会失败。

您或多或少已经回答了您的问题。 感知器的传递函数是阶跃函数 H(z),当 z<0 时为零,否则为 1。 大 c 的 S 形函数 S(c*z) 等效于阶梯函数,除了在 z=0 处,其中 H(z)=1 且 S(c*z) = 0.5。

图片来源:Towards Data Science

正如您在上图中所见,很明显,对于值 < -5 和值 > 5,sigmoid 函数分别输出接近 0 或 1 的值。这里 5 仅用于表示,但实际上这意味着对于 z 的极值,sigmoid 函数输出 0 或 1。

因此,在您的情况下,当您将等式 (w.x + b) 与正数 c 相乘时,其中 c→∞ z = c 的值。(w.x + b) ~ - ∞(对于 w.x + b < 0)和 z = c.(w.x + b) ~ ∞(对于 w.x + b > 0)。因此,在这两种情况下,您可以期望值接近 0 或 1。但是当 w.x + b = 0、z = 0 和 sigmoid 函数输出 0.5 或 1/2,这不是感知器的特征,这在您的问题中被描述为 "failing to mimic the behaviour of perceptron"。