大纲

机器学习基石-Linear Model for Classification

Linear Models for Binary Classification

1 Linear Models Revisited

机器学习基石-Linear Model for Classification

通过上图,我们发现,linear regression和logistic regression的损失函数都是凸函数,都可以方便的求出最小值对应的解,而linear classification的损失函数不易优化,所以我们能否利用linear regression和logistics regression来做linear classification?

2 Error Function Revisited

机器学习基石-Linear Model for Classification
我们对以上三种模型都引入了ys变量,ys变量代表的物理意义是正确性得分,就是分数越大,分类的越好。

3 Visual Error function

机器学习基石-Linear Model for Classification

通过画出损失函数的图像,我们可以发现linear regression和logistic regression的损失函数都是0/1损失函数的上界,将scale版本的logistic regression 损失是0/1损失的一个更好的上界

Theoretical Implication of Upper Bound

机器学习基石-Linear Model for Classification
这里用logistic regression做说明

  • VC on 0/1
    E0/1out(w)E0/1in(w)+Ω0/11ln2ECEin(w)+Ω0/1
  • VC-Reg on CE
    E0/1out(w)1ln2ECEout(w)1ln2ECEin(w)+ΩCE

所以
small ECEin(w) small E0/1out(w)

Regression for classification

我们可以利用回归来做分类

  • 通过logistics/linear reg在数据机上学习参数wreg
  • 返回函数g(x)=sign(wTregx)

机器学习基石-Linear Model for Classification

  • PLA算法简单,但是只能用于线性可分的场景,对于线性不可分的情况,可以
    利用pocket算法

  • linear regression易于求解,但是对于大|ys|,上界过于宽松

  • logistic regression易于求解,在very negative ys,上界过于宽松

所以我们一般利用linear regression跑出一初始解w0,然后利用PLA/pocket/logistic regression来继续求解。logistic性能常常优于pocket

Stochastic Gradient Descent

机器学习基石-Linear Model for Classification

  • SGD简单,计算量小,经常用于海量数据,和在线学习
  • 但是稳定性差

机器学习基石-Linear Model for Classification

SGD logistic regression称之为’soft’ PLA,因为PLA只对分类错误的点进行修正,而SGD logistic regression每次迭代都会进行或多或少的修正。另外,当η=1,且wTxn足够大的时候,SGD近似等于PLA

Multiclass Via Logistic Regression

1 One Class at a Time

机器学习基石-Linear Model for Classification

但是,这样的二分类会带来一些问题,因为我们只用{-1,+1}两个值来标记,那么平面上某些可能某些区域都被上述四次二分类模型判断为负类,即不属于四类中的任何一类;也可能会出现某些区域同时被两个类甚至多个类同时判断为正类,比如某个区域又判定为正方形又判定为菱形。那么对于这种情况,我们就无法进行多类别的准确判断,所以对于多类别,简单的binary classification不能解决问题。

2 One Class at a Time Soft

针对这种问题,我们可以使用另外一种方法来解决:soft软性分类,即不用{-1,+1}这种binary classification,而是使用logistic regression,计算某点属于某类的概率、可能性,取概率最大的值为那一类就好。

机器学习基石-Linear Model for Classification

3 One-Versus-All Decomposition

机器学习基石-Linear Model for Classification

  • 高效
  • 当K很大时,容易造成分类数据不平衡
  • 可以通过多分类算法,softmax来解决

Multiclass Via Binary Classification

One Versus One at a Time

机器学习基石-Linear Model for Classification

这种方法呢,每次只取两类进行binary classification,取值为{-1,+1}。假如k=4,那么总共需要进行C24=6次binary classification。那么,六次分类之后,如果平面有个点,有三个分类器判断它是正方形,一个分类器判断是菱形,另外两个判断是三角形,那么取最多的那个,即判断它属于正方形,我们的分类就完成了。这种形式就如同k个足球对进行单循环的比赛,每场比赛都有一个队赢,一个队输,赢了得1分,输了得0分。那么总共进行了C24次的比赛,最终取得分最高的那个队就可以了。

One Versus One Decomposition

机器学习基石-Linear Model for Classification

  • 高效,稳定
  • 空间复杂度大

相关文章: