1、softmax作用
softmax将输出的分类结果映射到(0-1)之间,将神经网络的分类结果转化成对应的概率。不同的概率,表示此样本属于对应类别的可能性大小,概率越大,样本属于该分类的可能性越大。概率的总和为1。
2、softmax工作原理
softmax位于网络输出层的后边,其在网络结构中的位置如下图所示:
和隐藏层神经元计算类似,softmax层对输出数据先进行线性运算,再使用softmax激活函数将输出转化为概率。
假设softmax的前一层输出用 表示,则softmax首先进行线性运算:
。
线性运算结束后进行softmax激活函数计算,激活函数公式为:
示例说明:
为了更好地理解softmax激活函数作用,假设在一个分类任务中,softmax前一层输出经线性运算后的结果是[5, 2, -1, 3],即。
采用softmax激活函数将输出转化为概率值。其中
根据softmax公式分别算出每一类的概率,得到最终的概率输出为
3、损失计算
假设分类任务的真实结果是,经过softmax预测结果是,根据如下损失计算公式:
在假设的例子中,n=4,则
假设有m个样本,损失为: