目录
1.什么是逻辑回归
逻辑回归不是回归,而是一种分类。 逻辑回归(Logistic Regression)广泛应用在二分类问题中。虽然有"回归"二字,但实际上是一种线性模型,它用于预测一个事件发生的概率,核心是将线性回归的输出通过一个特定的函数(称为逻辑函数或Sigmoid函数)映射到0和1之间,从而进行分类。
逻辑回归是一种比较简单的算法,在机器学习中,效果差不多的情况下,尽量选择简单的算法,越复杂的算法,过拟合风险越高。这也是为什么逻辑回归更加流行,而神经网络难以应用的原因。
同时逻辑回归的决策边界也可以是非线性的,如下图的黑色线。
2.与线性回归的区别和联系
线性回归最终得到一个数,而逻辑回归最终得到两个结果 。举个简单的例子:房价与房屋面积、朝向、地址等特征变量存在相关性,例如房屋面积越大,房价就越高。这种特征变量和目标变量之间的内在规律,就可以用线性回归算法来表达。
但如果"房价"不再给出具体的数值,而是按照划分标准给出"高档房屋""普通房屋"这种分类,我们又该如何让机器去预测房子属于哪一种房屋呢?
线性回归算出来的"房价"是一个数值(-∞,+∞)。而现在给出的"房价"已经不再是具体数值了,而是分类数据"普通房屋"和"高档房屋"。这个分类数据标准化处理后可以表达为0和1,其中0表示"普通房屋",1表示"高档房屋"。
这意味着我们需要把f(x)的取值范围从(-∞,+∞)变为(0,1),我们就要改造线性回归算法将其函数值压缩为0~1。而sigmoid函数恰好提供了这样的功能。也就是我们将线性回归算法中得到的最终值映射在sigmoid函数上,这时候就讲究概率了,如果它大于0.5,就认为更可能属于1"高档房屋",小于0.5就认为更可能属于0"普通房屋"。
3.sigmoid函数
sigmoid函数及其图像如下
其中就是线性回归中的预测值,g就是sigmoid函数。这就是映射的过程
分类概率如下:有h(x)的概率属于1,那么就有1-h(x)概率属于0。
将上面两个式子整合如下:当y=1时,概率为h(x),当y=0时概率为1-h(x)
4.逻辑回归求解方法
求解方法思路和线性回归完全一致(参考专栏内最小二乘法和梯度下降法)。似然函数--对数似然--令对数似然最大化,最后加个负号转换为梯度下降。
最终的J(θ)表达式如下
补充
逻辑回归是一种典型的分类问题处理算法,它同样可以做多分类问题。其中二分类(LR)是多分类 (softmax)的基础或者说多分类可以由多个二分类模拟得到。工程实践中,LR输出结果是概率 的形式,而不仅是简单的0和1分类判定,同时LR具有很高的可解释性,非常受工程界青睐, 是分类问题的首选算法。
而神经网络、支持向量机这类的模型,它们内部很多参数都是不可解释的,没有实际的物理含义,虽然能得到一个效果,但是我们不明白究竟是怎么得到的,解释性不如逻辑回归强,因此不管怎样,先考虑逻辑回归,不行再去考虑其他算法。