一、逻辑回归的作用
logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。例如,探讨引发疾病的危险因素,并根据危险因素预测疾病发生的概率等。以胃癌病情分析为例,选择两组人群,一组是胃癌组,一组是非胃癌组,两组人群必定具有不同的体征与生活方式等。因此因变量(Y)就为是否胃癌,值为“是”或“否”,自变量(X)就可以包括很多了,如年龄、性别、饮食习惯、幽门螺杆菌感染等。自变量既可以是连续的,也可以是分类的。然后通过logistic回归分析,可以得到自变量的权重,从而可以大致了解到底哪些因素是胃癌的危险因素。同时根据该权值可以根据危险因素预测一个人患癌症的可能性。
- 用于分类:适合做很多分类算法的基础组件。
- 用于预测:预测事件发生的概率(输出)。
- 用于分析:单一因素对某一个事件发生的影响因素分析(特征参数值)。
二、何时使用逻辑回归
Logistic 回归通过线性边界将你的输入分成两个「区域」,每个类别划分一个区域。因此,你的数据应当是线性可分的,如下图所示的数据点:
换句话说:当 Y 变量只有两个值时(例如,当你面临分类问题时),您应该考虑使用逻辑回归。注意,你也可以将 Logistic 回归用于多类别分类。
三、逻辑回归的优缺点
优点:
- 形式简单,模型的可解释性非常好。从特征的权重可以看到不同的特征对最后结果的影响,某个特征的权重值比较高,那么这个特征最后对结果的影响会比较大。
- 模型效果不错。在工程上是可以接受的(作为baseline),如果特征工程做的好,效果不会太差,并且特征工程可以大家并行开发,大大加快开发的速度。
- 训练速度较快。分类的时候,计算量仅仅只和特征的数目相关。并且逻辑回归的分布式优化sgd发展比较成熟,训练的速度可以通过堆机器进一步提高,这样我们可以在短时间内迭代好几个版本的模型。
- 资源占用小,尤其是内存。因为只需要存储各个维度的特征值,。
- 方便输出结果调整。逻辑回归可以很方便的得到最后的分类结果,因为输出的是每个样本的概率分数,我们可以很容易的对这些概率分数进行cutoff,也就是划分阈值(大于某个阈值的是一类,小于某个阈值的是一类)。
缺点:
- 准确率并不是很高。因为形式非常的简单(非常类似线性模型),很难去拟合数据的真实分布。
- 很难处理数据不平衡的问题。举个例子:如果我们对于一个正负样本非常不平衡的问题比如正负样本比 10000:1.我们把所有样本都预测为正也能使损失函数的值比较小。但是作为一个分类器,它对正负样本的区分能力不会很好。
- 处理非线性数据较麻烦。逻辑回归在不引入其他方法的情况下,只能处理线性可分的数据,或者进一步说,处理二分类的问题 。
- 逻辑回归本身无法筛选特征。有时候,我们会用gbdt来筛选特征,然后再上逻辑回归。
四:逻辑回归简述
当因变量为二分法(二进制)时,逻辑回归是进行回归分析的合适方法。像所有回归分析一样,逻辑回归是一种预测分析,当然还包括其他作用,但是目前用的最多的应该是预测分析。Logistic回归用于描述数据并解释一个因变量二进制变量和一个或多个名义,有序,区间或比率级别的自变量之间的关系。下面这样子图就很生动形象,x1、x2、x3为输入值,θ1、θ2、θ3为权重,happy与sad为输出值
五:逻辑回归的类型
1.二元Logistic回归
类别响应只有两个2种可能的结果。示例:是否为垃圾邮件
2.多项逻辑回归
三个或更多类别,无需订购。示例:预测哪种食物更受欢迎(蔬菜,非蔬菜,素食主义者)
3.有序逻辑回归
带有订购的三个或更多类别。示例:电影分级从1到5
六:逻辑回归数学推导以及操作步骤
我们分析逻辑回归还是从以下三个步骤着手操作:
- 寻找Hypothesis(假设)函数,讲的简单点,就是构建逻辑回归;
- 构造Loss Function(损失函数);
- 求得Loss Function最小值,并得到回归参数。
有兴趣的可以参考(理论推导)