在反向传播中计算误差时,你会使用 (目标输出 – 实际输出) * 实际输出 * (1 – 实际输出)。
那么,实际输出 * (1 – 实际输出) 解决了什么问题呢?
难道 [目标输出 – 实际输出] 不就是输出错误的量吗?
回答:
它解决了神经元输出相对于当前激活水平的导数问题。如果你使用 逻辑 sigmoid 作为激活函数,那么如果 f(x)
是激活 x
的 sigmoid 输出,其导数 df/dx
等于 f(x)(1 - f(x))
。
在反向传播方程中,为了确定应该改变权重多少,你需要估计输出对激活变化的敏感程度。这正是这个项提供的功能。