【机器学习】 二次损失函数的不足及交叉熵损失softmax详解

二次代价函数的不足:

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第1张图片

以sigmoid激活函数为例,由于初始化是随机的,假设目标值为0,第一次随机初始化使得输入为0.82,那么还可以,多次迭代之后可以收敛到0.09,但如果第一次随机初始化到0.98,由于sigmoid激活函数的性质,就会使得梯度特别小,从而即使迭代次数特别大,也很难收敛到一个较好的值。故实验二的输出0.2很不理想。

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第2张图片

这个时候就需要引入交叉熵损失。当然我们可以更换激活函数,但这个为了引出交叉熵函数但作用,我们不换激活函数。

逻辑回归中使用的就是交叉熵损失函数。

 

对sigmoid函数再多一嘴,sigmoid函数的产生是由最大熵原理而来的,可以参考这篇文章https://blog.csdn.net/zynash2/article/details/79261039

但日常使用的理解其实可以很简单

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第3张图片

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第4张图片

具体看文末链接,总结一下就是交叉熵损失函数的梯度更新中可以避免对激活函数求导(抵消掉了),从而摆脱了激活函数的限制,实现了真正的误差越大,梯度越大。

 

Softmax函数

在逻辑回归二分类问题中,我们通常使用sigmoid将输出映射到[0,1]区间中以0.5为界限来分类。

LR是一个传统的二分类模型,它也可以用于多分类任务,其基本思想是:将多分类任务拆分成若干个二分类任务,然后对每个二分类任务训练一个模型,最后将多个模型的结果进行集成以获得最终的分类结果。常用的策略有One VS One和One VS All。

softmax回归是LR在多分类的推广。https://www.cnblogs.com/lianyingteng/p/7784158.html

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第5张图片

 

Softmax的求导

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第6张图片

softmax的计算与数值稳定性

 

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第7张图片

 

Softmax回归

【机器学习】 二次损失函数的不足及交叉熵损失softmax详解_第8张图片

  1. softmax回归也需要建立多个lr二分类器,不过只是在最后表决的时候用softmax函数做了一下处理。
  2. softmax的梯度推导,其中为符号函数要不是0要不是1,sign(y(i)=j).

多分类LR与Softmax回归

  有了多分类的处理方法,那么我们什么时候该用多分类LR?什么时候要用softmax呢?

总的来说,若待分类的类别互斥,我们就使用Softmax方法;若待分类的类别有相交,我们则要选用多分类LR,然后投票表决。

 

 

参考文章:https://blog.csdn.net/u014313009/article/details/51043064

https://www.cnblogs.com/lianyingteng/p/7784158.html

你可能感兴趣的:(机器学习)