机器学习——linear model for classification
到目前为止,已经学习了3个线性模型了,他们都使用到了(后文中简写为),使用特征间线性组合来打分,通过分数来做后续的处理。
linear regression用于分类前面有一篇博客已经说明,现在我们想要知道,logistic regression 是否也可以用于分类?毕竟线性回归的错误对于二元分类来说是一个很大的上界,这意味着它的效果虽然不差,但可能错失更好的。而PLA找到一个最小的是NP-hard问题,只能使用改进的POCKET算法。我们希望看到logistic regression用于二元分类可以有更好的表现。
与之前的步骤一样,逻辑回归中,,我们对比的是单个样本的错误,就写作好了。
为了让这3种模型都有较为清晰的对比,我们对PLA以及线性回归的错误衡量也做处理,如下:
| method | linear classification | linear regression | logistic regression |
|---|---|---|---|
| err |
将它们的曲线绘制到一张图上,可以得到下面的结果:
其中蓝色是linear classification的错误,红色是linear
regression的错误,绿色是logistic
regression。坏了,绿色的线并不总是大于蓝色的线,这意味着我们无法像之前一样,简单地将换成。
实际上,之前我们选择用函数是因为这是最常见的,只是将乘法换成加法,理论上我们可以取任何对数,如,将对数函数换为,就可以得到另外一副曲线图:

这样就可以满足我们的需要,也方便下面的证明。 我们称使用函数的错误为,使用的为,则由上图可以知道:
, (由换底公式:$ = log_2x ) 也就可以知道:
同样的道理:
因此,我们可以像之前一样推导:
同样,从另一个方向也可以推导:
无论哪个,都可以证明,logistic regression是可以用于二元分类的。而上面的图像也说明了,他的效果比线性回归更好,bound更紧一点。
在实际应用中,我们使用linear regression来初始化,然后通过POCKET或者logistic regression来进行后面的步骤,而且logistic regression更为常用。
注:上面推导中,判断都是以s=0为界定,对应到logistic regression也就是概率为0.5为界定。