Record of the Task 2: First step to DL——softmax

关于softmax函数选择

看完代码,明显softmax和其他模型最与众不同的特点就是softmax函数了,那么为什么选择softmax函数呢?
softmax函数是来自于sigmoid函数在多分类情况下的推广,他们的相同之处:
1.都具有良好的数据压缩能力是实数域R→[ 0 , 1 ]的映射函数,可以将杂乱无序没有实际含义的数字直接转化为每个分类的可能性概率。
2.都具有非常漂亮的导数形式,便于反向传播计算。
3.它们都是 soft version of max ,都可以将数据的差异明显化。
相同的,他们具有着不同的特点,sigmoid函数可以看成softmax函数的特例,softmax函数也可以看作sigmoid函数的推广。
1.sigmoid函数前提假设是样本服从伯努利 (Bernoulli) 分布的假设,而softmax则是基于多项式分布。首先证明多项分布属于指数分布族,这样就可以使用广义线性模型来拟合这个多项分布,由广义线性模型推导出的目标函数即为Softmax回归的分类模型。
2.sigmoid函数用于分辨每一种情况的可能性,所以用sigmoid函数实现多分类问题的时候,概率并不是归一的,反映的是每个情况的发生概率,因此非互斥的问题使用sigmoid函数可以获得比较漂亮的结果;softmax函数最初的设计思路适用于首先数字识别这样的互斥的多分类问题,因此进行了归一化操作,使得最后预测的结果是唯一的。

关于交叉熵损失函数

由于需要损失函数替我们判断分类问题的准确程度,需要判断出具体有多准确或者多不准确,所以不能简单地用判断正确的个数决定。很容易想到的是在线性模型中使用的均方误差损失函数,但是由于均方误差损失函数并不是一个性质很好的函数,它存在着偏导值在输出概率值接近0或者接近1的时候非常小,这可能会造成模型刚开始训练时,偏导值几乎消失的缺点。
因此在分类问题中我们选择了交叉熵函数,是因为在等价意义下,最小化交叉熵函数和最小化相对熵函数是一样的,而交叉熵函数在计算方面具有优势,

Record of the Task 2: First step to DL——softmax_第1张图片https://www.cnblogs.com/kyrieng/p/8694705.html#name4
Record of the Task 2: First step to DL——softmax_第2张图片
https://blog.csdn.net/shenshikexmu/article/details/89185142

你可能感兴趣的:(Record of the Task 2: First step to DL——softmax)