前面线性回归的内容主要关注于预测一个数字,而在这一章中间更加关注分类(classification)问题。
目录
目的与动机
目前已经学习的线性回归算法并不能很好地解决分类问题,通过下图可以很好地进行说明。
可以看到,随着右边的一个特例叉叉(恶性肿瘤),使得预测的精准程度发生了较大的误差,这就导致线性回归在分类问题上的效果不佳,添加了数据,却导致结果更差了。
由此,作者引入了逻辑回归算法的概念。
逻辑回归
逻辑回归的使用范围很广,经常应用于分类问题,它拟合出来经常是这亚子的曲线:
在数轴上也可以看出,随着肿瘤大小x的变化,y的变化范围是从0至1的(我个人喜欢理解成概率),比如某个x对应的y是0.7,那么大于0.5,那么输出的结果就是yes(1),可以用数学符号表示为:
这就是用概率论的方式理解这个逻辑回归输出值的过程了。
数学函数——Sigmoid
Sigmoid函数也称为逻辑函数(sigmoid function),它长这个亚子:
注意,数学中标准的sigmoid函数和逻辑回归的函数它的数值取值范围可能是不同的,也就是平移或缩放一下子,当然它们的取值范围都是0~1之间。
它的方程表达式是这样子的:
从sigmoid到逻辑回归过程
第一步,我们设置:
这有点类似于线性回归,只不过直线方程的对象变为了这里的z。
第二步,就是将z带入g(z)之中:
第三步,就可以让g(z)输出值了,此时为了便于理解,可以写出以下一系列等式:
到这里,就可以写出逻辑回归的方程了,但是和线性回归一样,光有个方程是不够的,因为我们需要调整,使得获得的函数能够提供高准确率。
决策边界
在上面的图之中,我们看到sigmoid的函数在z等于零的时候,输出的值为0.5,可以理解为函数预测结果为1的概率为0.5,此时,z=0,可以根据sigmoid的函数公式自己带入看看。
而z等于0,是个非常特殊的边界,因为此时的概率为0.5,意味着此时的预测结果既不偏向于1,也不偏向于0,从另一个角度理解,就是只要z从零向左右哪怕移动了一点点,那么就会得到结果为1或者0,我们将的这条线称为决策边界,因为正是这条线“分割”了两种不同的预测结果。
例如,在如下的图中,具有两个维度x1,x2:
那么它的决策边界就是:,即图中紫色的线。
当然,决策边界也不一定是一条直线,例如以下的图:
反正只要满足z=0就ok了。