对于分类问题,我们可以将其简单分为二分类和多分类。
对于二分类问题,我们可以使用Sigmod函数(又称Logistic函数)。将实数范围内的数值映射成为一个[0,1]区间的数值,一个[0,1区间的数值恰好可以用来表示概率。
函数形式为:
函数图像如下:
参考1
参考2
参考3
Softmax是一种激活函数,它可以将一个数值向量归一化为一个概率分布向量,且各个概率之和为1。Softmax可以用来作为神经网络的最后一层,用于多分类问题的输出。Softmax层常常和交叉熵损失函数一起结合使用。
公式如下:
其中Z是一个向量,Zi和Zj是其中的一个元素。
e的zi次幂 也可以写成exp(zi)
所以softmax函数可以是将输入的的数值转化为0到1之间的数值来表示概率,且所有输出节点概率累加为1。
通过e的指数图像我们可以看到:
1、可以把输入为负数的值转为正数;
2、指数函数曲线呈递增趋势,斜率逐渐增大,这样x轴上很小的变化反映到y轴可以看到很大的变化,所以它可以将差距大的值拉的更大。
缺点:指数函数的曲线斜率逐渐增大虽然能够将输出值拉开距离,但是也带来了缺点,当输入的数值非常大的话,计算得到的数值也会变的非常大,数值可能会溢出。
溢出又分为下溢出(Underflow)和上溢出(Overflow)。计算机用一定长度的二进制表示数值,数值又被称为浮点数。当数值过小的时候,被四舍五入为0,这就是下溢出;当数值过大,超出了最大界限,就是上溢出。
参考1
参考2
参考3