softmax基本概念
softmax是单层神经网络,与线性回归相同,通常用于离散的分类问题。掌握softmax需要掌握模型、数据集、损失函数和优化函数四个方面。
-
softmax的使用场景
softmax一般用于离散分类问题,使用softmax主要解决两个问题:
(1)不采用softmax层直接使用输出层会使得输出值的范围不确定,难以通过直观意义确定输出数值的意义。
(2)数据集的真实标签是离散值,这些离散值与不确定范围的输出值之间的误差难以衡量。 -
softmax模型
注:上述图片引自https://segmentfault.com/a/1190000017320763
如上图所示,softmax是单层神经网络,其主要作用在于将输出值再通过softmax运算符(softmax operator)进行转换,使其变为所有值为正且和为1的概率分布。转换后,要知道分类后的结果只需找到最大的概率值即可。
z ^ 1 = e 1 z / ∑ k = 1 K e k z , z ^ 2 = e 2 z / ∑ k = 1 K e k z , . . . , z ^ K = e K z / ∑ k = 1 K e k z \hat{z}_{1} = e_{1}^{z} /\sum_{k=1}^Ke_{k}^{z} , \hat{z}_{2} = e_{2}^{z} /\sum_{k=1}^Ke_{k}^{z},..., \hat{z}_{K} = e_{K}^{z} /\sum_{k=1}^Ke_{k}^{z} z^1=e1z/k=1∑