神经网络基础--softmax

softmax

softmax用于多分类过程,简单来说,它将神经元的输出映射到[0,1]之间,并且归一化保证和为1,从而使多分类的概率之和也为1.也就是,多分类问题中,我们希望得到的是取到每个分类的概率,即概率最大的那类可以经常被取到,概率较小的可以偶尔被取到。

函数表达式:
在这里插入图片描述
其中,Vi 是分类器前级输出单元的输出。总的类别个数为 C。Si 表示的是当前元素的指数与所有元素指数和的比值。下图更易直观理解:
在这里插入图片描述
在实际应用中,很有可能会出现溢出情况,因为如果V很大,经过指数运算以后会变的更大,往往可能出现溢出的情况。所以需要做一些处理:V中每个元素减去V中的最大值。
在这里插入图片描述

softmax求导

使用交叉熵作为损失函数。表达式为:
在这里插入图片描述
在softmax中,ti表示真实值,yi表示求出的softmax值。
公式的简单含义:当yi越大(越接近1),说明概率越大,lnyi越接近0,Loss就越小。

求导过程参考了一篇博客:
在这里插入图片描述在这里插入图片描述在这里插入图片描述