机器学习算法篇--回归--逻辑回归(Logistic Regression)

介绍:

首先要理解二分类问题,二分类问题是指预测的y值只有两个取值(0或1),二分类问题可以扩展到多分类问题。例如:我们要做一个垃圾邮件过滤系统,X(i)是邮件的特征,预测的y值就是邮件的类别,是垃圾邮件还是正常邮件。对于类别我们通常称为正类(positive class)和负类(negative class),垃圾邮件的例子中,正类就是正常邮件,负类就是垃圾邮件。

如果我们忽略二分类问题中y的取值是一个离散的取值(0或1),我们继续使用线性回归来预测y的取值。这样做会导致y的取值并不为0或1。逻辑回归使用一个函数来归一化y值,使y的取值在区间(0,1)内,称为Sigmoid函数。函数公式如下:

机器学习算法篇--回归--逻辑回归(Logistic Regression)

Sigmoid函数当z趋近于无穷大时,g(z)趋近于1;当z趋近于无穷小时,g(z)趋近于0。Sigmoid函数的图形如下:

机器学习算法篇--回归--逻辑回归(Logistic Regression)

判定边界:

我们现在再来看看,为什么逻辑回归能够解决分类问题。这里引入一个概念,叫做判定边界,可以理解为是用以对不同类别的数据分割的边界,边界的两旁应该是不同类别的数据。

从二维直角坐标系中,举几个例子,大概是如下这个样子:

机器学习算法篇--回归--逻辑回归(Logistic Regression)

这就是我们的判定边界,下面我们来看看,逻辑回归是如何根据样本点获得这些判定边界的

回到sigmoid函数,我们发现:

当g(z)≥0.5时, z≥0;对于hθ(x)=g(θTX)≥0.5, 则θTX≥0, 此时意味着预估y=1;反之,当预测y = 0时,θTX<0;所以我们认为θTX =0是一个决策边界,当它大于0或小于0时,逻辑回归模型分别预测不同的分类结果。

看一下例子hθ(x)=g(θ0+θ1X1+θ2X2),其中θ0 ,θ1 ,θ2分别取-3, 1, 1。则当−3+X1+X2≥0时, y = 1; 则X1+X2=3是一个决策边界,图形表示如下,刚好把图上的两类点区分开来:

机器学习算法篇--回归--逻辑回归(Logistic Regression)

优点:

  1. 逻辑回归的算法已经比较成熟,预测较为准确。

  2. 模型求出的系数易于理解,便于解释,不属于黑盒模型,尤其在银行业,80%的预测是使用逻辑回归。

  3. 结果是概率值,可以做ranking model。

  4. 训练快。

缺点:

  1. 分类较多的y都不是很适用。

  2. 对于自变量的多重共线性比较敏感,所以需要利用因子分析或聚类分析来选择代表性的自变量。

  3. 另外预测结果呈现S型,两端概率变化小,中间概率变化大比较敏感,导致很多区间的变量的变化对目标概率的影响没有区分度,无法确定阈值。

总结:

二分类问题是指预测的y值只有两个取值;Sigmoid函数从图上可以看出,函数y=g(z)在z=0的时候取值为1/2,而随着z逐渐变小,函数值趋于0,z逐渐变大的同时函数值逐渐趋于1,而这正是一个概率的范围。


分享到:


相關文章: