添加 softmax 会显着改变权重更新

Adding softmax significantly changes weight updates

我有一个 N = W1 * Tanh(W2 * I) 形式的神经网络,其中 I 是输入 Vector/Matrix。当我学习这些权重时,输出具有特定的形式。但是,当我添加归一化层时,例如 N' = Softmax( W1 * Tanh(W2 * I) ) 然而,在 N' 的输出向量中,单个元素接近 1,而其余元素几乎为零。这种情况不仅适用于 SoftMax(),而且适用于任何归一化层。这样的问题有没有标准的解决方案?

这就是 softmax function 的行为。也许你需要的是一个sigmoid函数。