Softmax前向
设是维列向量,,即对每个分量满足:
。
Softmax的winner-take-all性质
不失一般性,我们设,则有:,即当最大的那个量与其它拉开的差距越大时,它会占据决定性的地位。事实上,由于指数函数的增长速度,当与其它稍微拉开一点差距时,就会占据主导地位。
Softmax后向
当时,
当时,
SoftmaxCrossEntropy后向
设为n维one-hot列向量,因此所有维度的和为1,则与的交叉熵为:,其关于任一个的导数为:,显然若直接对进行求导,势必会要进行大量的指数运算,很容易发生溢出,而且还多了一次除法运算。所以一般在训练的时候,会考虑将softmax函数和crossentropy放到一起求出解析的导数,确保数值稳定性。考虑直接对未规范化向量进行求导:
因此写成梯度形式有:
Hyperbolic Tangent
设为向量,的展开形式为:
所以雅可比矩阵为:
又,所以,代入矩阵得:
Sigmoid
由于,所以
同理可得的导数:
参考:Ian Goodfellow《深度学习》