logistic回归及缺点分析

1 算法介绍

logistic回归其实是对线性回归的结果再做一次映射,因此也可以称之为广义线性回归。
logistic回归及缺点分析
其中Z就是线性回归的结果,如果数据在线性回归超平面的上侧,则z > 0,则经过sigmoid函数计算之后的值为0.5到1之间。反之则为0到0.5之间。我们要做的就是训练出W和b得到一个好的模型。

2 损失函数

logistic回归的重点并不是在于表达式上,因为表达式无非就是在线性回归的基础上加一层映射(在深度学习中,也称为**函数,activation function)。而真正难以理解的重点在于它的损失函数,因为logistic回归不能再使用平方损失了!

先看损失函数的定义
logistic回归及缺点分析
这个表达式的意思是,x1与x2是正样本,也就是值在0.5到1之间的;x3是负样本,也就是值在0到0.5之间的。这个损失函数是越大越好的,所以如果想要获得最好结果,按理说应该使用梯度上升,但我们一般只使用梯度下降法。并且,每一项都是相乘的,所以需要对这个公式进行变形。变形的方法就是取对数,然后取负。
logistic回归及缺点分析
这就是最终的损失函数表达式,我们要做的就是通过梯度下降求最好的w与b
logistic回归及缺点分析

3 logistic回归的梯度下降

懒得编辑公式了,直接上自己做的笔记吧
logistic回归及缺点分析

4 为什么不能均方损失

logistic回归及缺点分析
logistic回归及缺点分析
看李宏毅老师的课程PPT可知,无论结果离目标太近或者太远,梯度都会接近于0,这就会造成梯度消失问题,也就是参数无法得到更新。
logistic回归及缺点分析
从这张图可以看出,交叉熵损失在距离目标(全局最小值)时的梯度很大,这会让更新速度变快,反观均方损失的图像,在距离目标较远时,梯度很小,这就会造成更新缓慢甚至无变化。

5 神经网络为什么不使用sigmoid

  1. sigmoid函数以及其求导公式的计算代价高(较于relu等函数而言)(即使导数公式仍然容易表示,但是对数的幂次很难计算),这在神经网络的模型中更加明显;logistic回归及缺点分析
  2. 在趋于无穷的地方,函数值变化很小,容易梯度消失问题,这在深层的神经网络模型中更加明显;
  3. 输出不是0均值(zero-contered)
    logistic回归及缺点分析