您的位置:首页 > 其它

林轩田机器学习基石心得11:Linear Models for Classification

2018-01-30 21:13 357 查看

0. 前言

本篇文字是个人对机器学习基石11课的一些总结。这节课主要讲解的是线性分类模型。

1. Linear Models for Binary Classification

几种线性模型的总结:

线性分类:假设函数:h(x)=sign(wTx)h(x)=sign(wTx);它的error是0/1的,对应的EinEin是离散的,求解EinEin是个NP-hard问题,通常用PLA,Pocket等算法求最优。

线性回归:假设函数:h(x)=wTxh(x)=wTx;它的error是个最小二乘,EinEin是个凸函数,可通过求解微分=0求得最优点。

逻辑回归:假设函数:h(x)=θ(wTx)h(x)=θ(wTx);它的error是个cross-entropy,通过最大似然估计求得最优ww;通常用梯度下降方法求最优。



三种模型的error function:



线性分类是个阶跃函数,线性回归和逻辑回归是个凸函数。其中逻辑回归的误差函数为errCE(s,y)errCE(s,y),为了简化起见,我们通常简化为errSCE(s,y)errSCE(s,y)。

PLA算法、线性回归、逻辑回归的优缺点:



线性回归是最简单的,但是上界是最大的。Pocket的速度是比较慢的。逻辑回归通常是种较好的办法,我们通常的办法是先使用线性回归得到较优解,然后使用逻辑回归求解。

2. Stochastic Gradient Descent

PLA算法的复杂度为O(1),逻辑回归的复杂度为O(n),因为每次梯度下降中的损失函数由所有样本所确定,我们可以想办法简化梯度下降。(随机梯度下降)

随机梯度下降:在梯度下降过程中,每次下降过程的损失函数由随机选取的一个样本决定,这会大大增加算法速度,但是会变得不稳定。

随即梯度下降结束判断:在梯度下降算法中,判断算法结束的条件是梯度接近与0。但是在随机梯度下降中若再计算梯度,那么就没有起到简化算法的效用了。通常情况下是使用尽可能多的步数t。

随机梯度步长:经验上通常取0.1。

3. Multiclass Classification

处理多分类问题时,可以用多个二分类问题进行处理。比如一共有4个类别A,B,C,D时,可以有4条直线进行二分,每一条直线表示一个一个类别的二分问题(如A或B),分为是A和非A 。

One-Versus-All(OVA):



就是使用逻辑回归对所有类别进行二分类,样本所属的类别就是该样本在所以逻辑回归中概率最大的类别。

优缺点:



优点:效率很高。

缺点: 当类别很多时,会存在这么一种情况。样本x1x1属于类别A的概率和类别B的概率都几乎为0(这在逻辑回归中出现时,圈圈的数量小上叉叉的数量很多。而类别多时这种情况更常见),那么该样本的实际类别会很难判断。

4. Multiclass via Binary classification

上一小节说当类别数量很多时会出现OVA不好用,这一节解决这一问题。

One-Versus-one(OVO):之前的二分类中,是分为类别A或非类别A。我们现在这么处理,有ABCD四个类别,我们分为A或B,C或D…就是在四种类别中取出两个类别作为两种分类结果。那么四种类别就有6条直线(C24C42)。接着就可以判断每个样本在所有直线中所属的类别,结果为出现次数最多的类别。



红色样本点有三次被分为长方形,也是最多的,因此该样本为正方形。

优缺点:



优点:很有效率。

缺点:需要使用储存空间来存储每条二分直线的预测结果。

5. 总结

这一课程主要总结了之前讲过的三种分类器:线性分类、线性回归和逻辑回归。介绍了更有效率的梯度算法:随机梯度算法。并考虑使用逻辑回归来处理多分类问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  机器学习