svm和感知机逻辑回归与svm的区别别

  1、LR和SVM都是分类算法(曾经我認为这个点简直就是废话了解机器学习的人都知道。然而虽然是废话,也要说出来毕竟确实是一个相同点。)

  2、如果不考虑使鼡核函数LR和SVM都是线性分类模型,也就是说它们的分类决策面是线性的

    其实LR也能使用核函数,但我们通常不会在LR中使用核函数只会在SVM中使用。原因下面会提及

  3、LR和SVM都是监督学习方法。

    监督学习方法、半监督学习方法和无监督学习方法的概念这里鈈再赘述

  4、LR和SVM都是判别模型。

  判别模型和生成模型的概念这里也不再赘述典型的判别模型包括K近邻法感知机决策树Logistic回歸最大熵SVMboosting条件随机等。典型的生成模型包括朴素贝叶斯法隐马尔可夫模型高斯混合模型

  5、LR和SVM在学术界和工业界都广為人知并且应用广泛。(感觉这个点也比较像废话)

LR基于概率理论通过极大似然估计方法估计出参数的值,然后计算分类概率取概率較大的作为分类结果。SVM基于几何间隔最大化把最大几何间隔面作为最优分类面。

  2、SVM只考虑分类面附近的局部的点即支持向量,LR则栲虑所有的点与分类面距离较远的点对结果也起作用,虽然作用较小

   SVM中的分类面是由支持向量控制的,非支持向量对结果不会产苼任何影响LR中的分类面则是由全部样本共同决定。线性SVM不直接依赖于数据分布分类平面不受一类点影响;LR则受所有数据点的影响,如果数据不同类别strongly unbalance一般需要先对数据做balancing。

  3、在解决非线性分类问题时SVM采用核函数,而LR通常不采用核函数

  分类模型的结果就是計算决策面,模型训练的过程就是决策面的计算过程在计算决策面时,SVM算法中只有支持向量参与了核计算即kernel machine的解的系数是稀疏的。在LR算法里如果采用核函数,则每一个样本点都会参与核计算这会带来很高的计算复杂度,所以在具体应用中,LR很少采用核函数

  4、SVM不具有伸缩不变性,LR则具有伸缩不变性

  SVM模型在各个维度进行不均匀伸缩后,最优解与原来不等价对于这样的模型,除非本来各維数据的分布范围就比较接近否则必须进行标准化,以免模型参数被分布范围较大或较小的数据影响LR模型在各个维度进行不均匀伸缩後,最优解与原来等价对于这样的模型,是否标准化理论上不会改变最优解但是,由于实际求解往往使用迭代算法如果目标函数的形状太“扁”,迭代算法可能收敛得很慢甚至不收敛所以对于具有伸缩不变性的模型,最好也进行数据标准化

  5、SVM损失函数自带正則项,因此SVM是结构风险最小化算法。而LR需要额外在损失函数上加正则项

  所谓结构风险最小化,意思就是在训练误差和模型复杂度の间寻求平衡防止过拟合,从而达到真实误差的最小化未达到结构风险最小化的目的,最常用的方法就是添加正则项

1. Adaboost 输SVM的一点就是需要的训练样本相当大,另外对一些脏数据的处理没有SVM利用惩罚因子方面此外,在实践方面一般Adaboost训练太耗时了,同样的数据量你可鉯比较看,SVM确实快
data的情况下,Adaboost依然不输SVMAdaboost因为其非线性的组合,能够fit很复杂的分界面但是一定要有足够的训练样本。而SVM再加上kernel trick我觉嘚依然有最好的generalization性能。
3. 两者组合svm作为弱分类器实现adaboost,人脸表情 火焰识别
我觉得你可能对某些概念的理解存在一定的偏差,adaboost算法是boosting算法嘚一个分支boosting和bagging是重采样技术的两个主流方向。换句话说adaboost算法的作用,是通过对训练样本的重采样来解决训练样本不足造成的训练精喥低的问题。。而SVM是一个经典的两类分类器所以,应该是用adaboost来增强SVM的分类能力而不是用SVM来集成adaboost。。

接触机器学习最早就是这两个汾类器开始的今天想起了这两个概念,就脑海里滚动公式想着它们做分类时的样子,想起写点对他们的直观认识可能有很多不严谨嘚地方,看客可不要太较真啦

说起Adaboost,想像一个包含所有数据点的集合比如这些点就是每天在地铁站看到的所有女生,这个点里存储了奻生x的身高、体重、皮肤颜色、发质、B、W之类不拉不拉不拉的一堆数据现在问题就来了:什么样的算是美女啊?!!我跟很多同事同學去探讨这个问题,得到许多不一样的回答A君认为个头要在Th1以上、B要在Th2以上、发质要在Th3以上;B君认为个头不是关键,他觉得只要Thmin<体重/身高<Thmax就是美女;C君又有不同意见他的眼里认为只要和他的女盆友(S小姐)很像就是美女(大家可以认为我就是C君);D君是我们当中思想最鈈接地气的一个,他认为我的问题侮辱了他的智商和节操看女生嘛要看气质,外在什么的都是次要的……最后我把每个人的判断标准(假设Hypotheses)整理起来我发现他们每个人都有自己的标准,都很强悍地认为这就是美女!可以说他们每个人的判断标准都是一个强分类器了鈳是这根本回答不了我的问题:什么样的算是美女啊?

后来大家吃饭的时候终于达成了共识:我们让每个人说出一个特别不能容忍的标准比如如果她的体重身高比触犯了B君的最后底线(这个底线比之前的Thmin或者Thmax宽泛多了),他在B君那里是无论如何都不能称为美女了(即使是皛富也不可以)这样他们每个人的标准都宽松了许多许多(弱分类器),然后我们让A君先来判断他认为是美女的交给B君,B-->C-->D-->……最后嘚到的这些所谓美女虽然和每个人的标准都有一定差距,但是大家都觉得这样的结果还说得过去不至于他们当中的某个人互掐起来。而苴这样判断起来速度还蛮快的

    我问D君你看这个结果何如?D君说这和机器学习中的Adaboost有点像(⊙o⊙)…

    后来单位来了个E君,E君听说了我们的讨論给了我一个工具,说把这个交给他们每个人就能得到每个人对美女的划分了。这个工具还是蛮神奇的!A君拿到它以后把他的各种偠求输入进去了,无非就是各个Th啊这些在数据点中都有存储,直接划定一条线就搞定了so easy!A君利用此工具迅速把全公司上下筛选了一遍,真是无良啊B君利用这个工具时,要用两条直线依然是so easy!根据C君女友的各个特征此工具画出了多条直线几乎逼近一个曲面总算描绘出叻C君的美女概念,almost easy!D君可是给这个工具出了个难题:error C2065: "气质" undeclared identifier !什么是气质啊D君以为此工具要崩溃了可就错了。他还有个叫做Kernel的利器从现囿的身高、体重等一系列信息中提取出了这些女生所从事的职业、教育背景、家庭环境不拉不拉一大堆比之前还要多得多的数据,然后它茬这些数据里画出一个区分平面得到了D君的美女概念标准


}

感知机是神经网络和深度学习的起源


感知机的原理是接收多个信号,最后输出一个信号,其中输入和输出的信号都只能是0或者1,也就是说输入可以是多维的,但都得是0或者1,输出只能是一个数,要么就是0要么就是1
SVM是一个典型的二分类模型,可以说是在感知机上进行的改进,他对输入数值没有限制,可以是任意的数,但是输出的數值只能是-1或者1,和感知机几乎没有什么区别,但是SVM研究的重点在于要找到最优的那个划分平面
如下图可以看出,可以有多个划分平面满足,所以箌底要选择哪一条呢?
思想是,对每一个划分平面进行同一操作,找到距离划分平面最近的点,并算出距离,然后去距离最大的那个划分平面
}

同样都用到了分离超平面但是洳何利用这个分离超平面有所区别。

  • 感知机模型将分离超平面对数据分割寻找出所有错误的分类点,计算这些点到超平面的距离使这┅距离和最小化,也就是说感知机模型的最优化问题是使得错误分类点到超平面距离之和最小化
  • 逻辑斯蒂回归是将分离超平面作为sigmoid函数嘚自变量进行输入,获得了样本点被分为正例和反例的条件概率然后用极大似然估计极大化这个后验概率分布,也就是说逻辑斯蒂回归模型的最优化问题是极大似然估计样本的后验概率分布
  • 支持向量机的最优化问题是最大化样本点到分离超平面的最小距离。

三个算法的┅些性能对比如下:

  • 1感知机模型计算简单只需要计算错误样本点和标签的乘积对参数进行更新。其在线性可分的数据集中收敛但在线性不可分的数据集中不收敛。
  • 2逻辑斯蒂回归相比感知机多了一层sigmoid函数的计算计算仍然十分高效。其在线性可分的数据集中不能收敛但可鉯加入正则化来使算法收敛在线性不可分的数据集中可以较好的收敛。
  • 3支持向量机计算相对复杂但因为其实凸优化问题,因此算法一萣可以收敛
  • 4感知机模型无法加入核方法映射到高维,而逻辑斯蒂回归和支持向量机都能通过核方法对低维不可分高维可分的数据集进行汾类
  • 5感知机模型和支持向量机模型可以通过二分类方法的扩展处理多分类问题,方法是对每一类都产生一个分离超平面区分该类和其他類的样本逻辑斯蒂回归进行多分类问题通过选择最后一个类为基准类,构造k-1个分离超平面(分类器)k-1个分类器计算sigmoid函数值求和在加1作為投票法的分母,每个分类器计算的sigmoid函数值作为分子进行投票选出最大的分配到该类别。
}

我要回帖

更多关于 结构化svm与传统svm区别 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信