机器学习算法——逻辑回归算法简介
深度学习生态圈
发布时间:18-12-2209:44
1 逻辑回归的概念
逻辑回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。逻辑回归从本质来说属于二分类问题。
二分类问题是指预测的y值只有两个取值(0或1),二分类问题可以扩展到多分类问题。例如:我们要做一个垃圾邮件过滤系统,x是邮件的特征,预测的y值就是邮件的类别,是垃圾邮件还是正常邮件。对于类别我们通常称为正类(positive class)和负类(negative class),垃圾邮件的例子中,正类就是正常邮件,负类就是垃圾邮件。
之前我们已经介绍了线性回归模型,如下图所示,预测值h(x)和目标值y越接近,表名模型的预测能力越好。
2 为什么要用逻辑回归
既然已经有了线性回归模型,我们为什么还要使用逻辑回归。如下图所示:在线性回归中使用0.5作为阈值来判断正例和负例的依据,但是在下图中,如果继续使用0.5作为阈值就不合适了,会导致错误的样本分类。二逻辑回归可以将预测范围从实数域压缩到(0,1)范围内,进而提升预测准曲率。
逻辑回归使用sigmoid函数将预测值映射为(0, 1)上的概率值,帮助判断结果。如下图所示:
3 逻辑回归分类和梯度上升算法
现在我们将y的取值 h(x)通过Logistic函数归一化到(0,1)间,y的取值有特殊的含义,它表示结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为:
得到了逻辑回归的表达式,下一步跟线性回归类似,构建似然函数,然后最大似然估计,最终推导出θ的迭代更新表达式,如下图所示:
转换后的似然函数对参数θ求偏导数,这里我们以只有一个训练样本的情况为例:
这样我们就得到了梯度上升每次迭代的更新方向,那么θ的迭代表达式为:
这个表达式与线性回归算法的表达式相比,看上去完全相同,但是梯度上升与线性回归是两个不同的算法,因为 h(x)表示的是 关于θx的一个非线性函数。
4 逻辑回归的优点和缺点
优点:
1)预测结果是介于0和1之间的概率;
2)可以适用于连续性和类别性自变量;
3)容易使用和解释。
缺点:
1)对模型中自变量多重共线性较为敏感,例如两个高度相关自变量同时放入模型,可能导致较弱的一个自变量回归符号不符合预期,符号被扭转。需要利用因子分析或者变量聚类分析等手段来选择代表性的自变量,以减少候选变量之间的相关性;
2)预测结果呈“S”型,因此从log(odds)向概率转化的过程是非线性的,在两端随着log(odds)值的变化,概率变化很小,边际值太小,slope太小,而中间概率的变化很大,很敏感。 导致很多区间的变量变化对目标概率的影响没有区分度,无法确定阀值。