一、交叉熵损失原理
一般情况下,在分类任务中,神经网络最后一个输出层的节点个数与分类任务的标签数相等。
假设最后的节点数为N,那么对于每一个样例,神经网络可以得到一个N维的数组作为输出结果,数组中每一个维度会对应一个类别。在最理想的情况下,如果一个样本属于k,那么这个类别所对应的第k个输出节点的输出值应该为1,而其他节点的输出都为0,即[0,0,1,0,….0,0],这个数组也就是样本的Label,是神经网络最期望的输出结果,交叉熵就是用来判定实际的输出与期望的输出的接近程度。
二、公式
1.softmax回归
假设神经网络的原始输出为y1,y2,….,yn,那么经过Softmax回归处理之后的输出为:
单个节点的输出变成的一个概率值。
2.交叉熵的原理
交叉熵刻画的是实际输出(概率)与期望输出(概率)的距离,也就是交叉熵的值越小,两个概率分布就越接近。假设概率分布p为期望输出,概率分布q为实际输出,H(p,q)为交叉熵,则:
除此之外,交叉熵还有另一种表达形式,还是使用上面的假设条件: