多分类问题
- softmax分类器
对于多分类,假如我们对每个输出层的神经元用sigmoid输出,并用交叉熵损失进行训练,那么可能会产生一个模糊的结果,比如对于某一输入,第一类的输出概率为0.8,第二类的输出概率为0.8,第三类的为0.9那么我们应该选择哪个结果?
所以,对于多分类,我们希望输出层的神经元之间是有竞争的,我们希望神经网络输出的是一个分布,每个输出大于0,且和为1
假设 Z l ∈ R k Z^l\in R^k Zl∈Rk是神经网络的输出层,softmax函数:
P ( y = i ) = e Z i ∑ j = 0 K − 1 e Z j , i ∈ { 0 , . . . , K − 1 }