机器学习笔记04:逻辑回归(Logistic regression)、分类(Classification)

之前我们已经大概学习了用线性回归(Linear Regression)来解决一些预测问题,详见:
1.《机器学习笔记01:线性回归(Linear Regression)和梯度下降(Gradient Decent)》
2.《机器学习笔记02:多元线性回归、梯度下降和Normal equation》
3.《机器学习笔记03:Normal equation及其与梯度下降的比较》


说明:本文章所有图片均属于Stanford机器学课程,转载请注明出处


面对一些类似回归问题,我们可以通过线性回归方法来拟合一个函数,以此来预测数据,但它的输出是连续的。有时候呢,我们需要一种方法给出一个判定结果,例如”同意(agree)”、”不同意(disagree)”。、下面呢就是关于这个方法的新内容,叫做分类(Classification)问题。又例如,如果我们需要预测一辆汽车是好的还是坏的,只有两种结果:好、坏。这种输出为0或者1的问题,就叫做分类问题,而我们对应与此种问题所采用的方法即是逻辑回归(Logistic regression)


1.分类及其表示(Classification and Representation)

i.分类(Classification)

首先来看看分类(Classification)问题,在第一段中已经简单介绍了什么是分类问题,下面再来举几个例子:

Examples Purposes
Email Spam / Not Spam?
Online Transaction Fraudulent (Yes / No?)
Tumor Malignant / Benign?

第一个例子是判断垃圾邮件,对一封邮件,我们需要判断它是否为垃圾邮件;第二个例子是在线交易,我们需要判断这个交易是否有欺诈的嫌疑;最后一个例子是肿瘤评估,我们需要对一个病人的病情进行综合分析,来判断肿瘤是恶性的还是良性的。

详细地,我们以肿瘤评估为例。我们有如下图所示的一些样本,其横坐标表示肿瘤的大小,纵坐标表示性态(良性还是恶性):

这里写图片描述

假设我们用一条直线 hθ(x)=θTX 来拟合这些数据,其图像可能大致如下:
这里写图片描述

如上图所示, hθ(x) 为紫色的直线,如果我们选择 0.5 作为一个基准点来判断一个肿瘤是良性还是恶性的:
Ifhθ(x)0.5,predict"y=1"
Ifhθ(x)<0.5,predict"y=0"
那么对于上面的数据,看起来好像还不错。但是我们增加一组额外的样本来看看:
这里写图片描述

如上图所示,我们增加了一组数据,通过 线性回归(Linear Regression)得到了一条蓝色的直线,但是其看起有点不那么理想,例如有几个恶性肿瘤,也会被分类为良性肿瘤。所以,在分类问题中, 线性回归通常不是一个很好的办法。所以我们需要使用 逻辑回归(Logistic regression)来解决分类问题。逻辑回归是一个 分类算法(classification algorithm)在逻辑回归中,我们要求 0hθ(x)1 ,下面我们就来看看逻辑回归的假设函数。


ii.假设函数(Hypothesis)

上面我们提到了,在只有两种结果的分类问题中,它的输出不是 0 即是 1 ,所以我们想要将分类器(classifier)的输出控制在 [0,1] 上。在线性回归中,我们的假设函数为 hθ(x)=θTX ,显然其输出并不只限于区间 [0,1] ,所以线性回归中的假设函数在逻辑回归(Logistic regression)中是不合适的。这里我们使我们的假设函数为:

hθ(x)=g(θTX)
其中,函数 g 的形式为:
g(z)=11+ez
其图像为:

这里写图片描述

其与 y 轴的交点为 (0,0.5) ,所以假设函数为:
hθ(x)=11+eθTX


现在我们来看一下逻辑回归(Logistic regression)的假设函数的具体意义是什么。
这里的函数 hθ(x) 代表的是关于输入 x ,使得 y=1 的可能性。来举个例子:
假设有两个特征:

[x1x2]=[1tumorSize]
其中 x1 为 1,这是我们之前约定好的(文章开头列出的文章), x2 表示肿瘤的大小。假如 hθ(x)=0.7 ,这就表示病人的肿瘤为 恶性肿瘤的可能性为 0.7 。进一步地,可以将假设函数表示为:
hθ(x)=P(y=1|x;θ)

即给定参数 θ ,关于输入 x ,使得 y=1 的可能性。进一步,我们也可以知道如下的结论:
P(y=0|x;θ)+P(y=1|x;θ)=1
P(y=0|x;θ)=1P(y=0|x;θ)
假设函数的形式就讲到这里,下面讲一讲 决策边界(Decision boundary)


iii.决策边界(Decision Boundary)

前面提到了 hθ(x)=P(y=1|x;θ) ,那什么时候 hθ(x) 的值为 1 ,什么时候为 0 呢?一般规定:

{ 10if hθ(x)0.5 ;if hθ(x)<0.5 .
同时,我们发现对于函数 g(z)

这里写图片描述

z0 时, hθ(x)0.5 ,当 z<0 时, hθ(x)<0.5 。即对于 hθ(x)=g(θTX)0.5 ,有 θTX0 ;同理,对于 hθ(x)=g(θTX)<0.5 ,有 θTX<0

现在我们就来看看决策边界(Decision boundary)的具体内容,假如我们有如图所示的样本集合:

这里写图片描述

同时假设, 假设函数(hypothesis function) hθ(x)=g(θ0+θ1x1+θ2x2) ,并假设 θ0=3,θ1=θ2=1 。所以此时有:
z=3+x1+x2
根据前面的内容,我们知道若要 y=1 ,就必须使得 z0 ,在这里即使得:
3+x1+x20
其等价于:
x1+x23
。 我们将直线 x1+x2=3 的图像添加到上面的样本分布图中可以得到如下图像:
这里写图片描述

根据高中就学过的线性规划知识,为与直线右上方的点都能满足不等式 3+x1+x20 ,即满足 z0 。而这条直线就是所谓的 决策边界(Decision boundary)。同时需要指出的是,这条直线只跟参数 θ 有关,跟样本集无关。

再来看看非线性的情况,样本集如下:

这里写图片描述

若假设函数为 hθ(x)=g(θ0+θ1x1+θ2x2+θ3x21+θ4x22) ,假设
θ=10011
则若要 hθ(
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值