softmax 作用

softmax 函数一般用在分类场景,尤其是多分类,它接受一组任意值作为输入,然后输出对应的一组0-1之间的数值,并且加起来为1,也就是做了归一化,实际上输出的值代表概率值。

softmax 计算方式

如上图,z1,z2,z3 作为输入,分别取exp, 然后加起来作为分母,分别的除以分母就得到对应的值。即zi的softmax值为:

推广一下:

其中,

再看交叉熵

对于二分类问题,交叉熵函数为:

对于多分类问题:

其中,表示label,y表示预测的值,由softmax函数计算得到

softmax求导

上面已经知道多分类时交叉熵的公式,预测第i个时,认为它的label是1,则:

则:

具体推导如下图:


以上便是softmax函数的相关知识了。