机器学习06-逻辑回归-分类与决策边界

时间:2021-08-15 23:52:44

  在这篇博文以及之后博文中,开始介绍分类问题。在分类问题中,你要预测的变量是离散的值,我们将学习一种叫做逻辑回归 (Logistic Regression) 的算法,这是目前最流行使用最广泛的一种学习算法。在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问题的例子有:判断一封电子邮件是否是垃圾邮件;判断一次金融交易是否是欺诈;之前我们也谈到了肿瘤分类问题的例子,区别一个肿瘤是恶性的还是良性的。


一,分类问题  

  我们从二元的分类问题开始讨论。我们将因变量(dependant variable)可能属于的两个类分别称为负向类(negative class)和正向类(positive class),则因变量y ∈{0,1},其中表示负向类,表示正向类。下图以肿瘤的恶性良性举例:

机器学习06-逻辑回归-分类与决策边界

 如果我们要用线性回归算法来解决一个分类问题,对于分类,y 取值为 0或者 1,但如果你使用的是线性回归,那么假设函数的输出值可能远大于 1,或者远小于 0,即使所有训练样本的标签 y 都等于 0 或 1。尽管我们知道标签应该取值 0或者 1,但是如果算法得到的值远大于 1 或者远小于 0 的话,就会感觉很奇怪。所以我们在接下来的要研究的算法就叫做逻辑回归算法,这个算法的性质是:它的输出值永远在0到 1之间。顺便说一下,逻辑回归算法是分类算法,我们将它作为分类算法使用。有时候可能因为这个算法的名字中出现了“回归”使你感到困惑,但逻辑回归算法实际上是一种分类算法,它适用于标签 y 取值离散的情况,如:1 0 0 1。

  回顾在一开始提到的乳腺癌分类问题,我们可以用线性回归的方法求出适合数据的一条直线:

机器学习06-逻辑回归-分类与决策边界

  根据线性回归模型我们只能预测连续的值,然而对于分类问题,我们需要输出 1,

  我们可以预测:

  当hθ大于等于 0.5 时,预测 y=1。

  当hθ小于 0.5 时,预测 y=0 对于上图所示的数据,这样的一个线性模型似乎能很好地完成分类任务。假使我们又观测到一个非常大尺寸的恶性肿瘤,将其作为实例加入到我们的训练集中来,这将使得我们获得一条新的直线。


机器学习06-逻辑回归-分类与决策边界


为什么线性回归不适合做分类问题

 解答:这时,再使用 0.5 作为阀值来预测肿瘤是良性还是恶性便不合适了。可以看出,线性回归模型,因为其预测的值可以超越[0,1]的范围,并不适合解决这样的问题。我们引入一个新的模型,逻辑回归,该模型的输出变量范围始终在 0 和 1 之间。 

逻辑回归模型的假设是:hθ(x)=g(θTX)

其中:

X 代表特征向量

g 代表逻辑函数(logistic function)是一个常用的逻辑函数为 S 形函数(Sigmoid function)

公式为: 机器学习06-逻辑回归-分类与决策边界

该函数的图像为:

机器学习06-逻辑回归-分类与决策边界

机器学习06-逻辑回归-分类与决策边界


二,决策边界

   现在讲下决策边界(decision boundary)的概念。这个概念能更好地帮助我们理解逻辑回归的假设函数在计算什么。

机器学习06-逻辑回归-分类与决策边界

在逻辑回归中,我们预测:

 当 hθ 大于等于 0.5 时,预测 y=1

 当 hθ 小于 0.5 时,预测 y=0

 根据上面绘制出的形函数图像,我们知道当

 z=0 时 g(z)=0.5

 z>0 时 g(z)>0.5

 z<0 时 g(z)<0.5

  z=θTX,即:

 θTX 大于等于 0 时,预测 y=1

 θTX 小于 0 时,预测 y=0

 

现在假设我们有一个模型:

机器学习06-逻辑回归-分类与决策边界

并且参数 θ 是向量[-3 1 1]则当-3+x1+x2  大于等于 0,即 x1+x2 大于等于时,模型将预 y=1。我们可以绘制直线 x1+x2=3,这条线便是我们模型的分界线,将预测为的区域和预测的区域分隔开。

机器学习06-逻辑回归-分类与决策边界

假使我们的数据呈现这样的分布情况,怎样的模型才能适合呢?

机器学习06-逻辑回归-分类与决策边界

 因为需要用曲线才能分隔 y=0 的区域和 y=1 的区域,我们需要二次方特征:假设参数: hØ(x) = g(Ø0 + Ø1x1 + Ø2x2 + Ø3x12 +Ø4x22 )是[-1 0 0 1 1],则我们得到的判定边界恰好是圆点在原点且半径为的圆形。

 我们可以用非常复杂的模型来适应非常复杂形状的判定边界。

  

   本博文参阅斯坦福大学机器学习教学,同时感谢黄海广博士的指导,转载请标明出处。