首页 > 试题广场 >

什么是支持向量机,SVM与LR的区别?

[问答题]

什么是支持向量机,SVM与LR的区别?

1.损失函数
我们先来看一下带松弛变量的 SVM 和正则化的逻辑回归它们的损失函数:

其中

这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。SVM的处理理方法是只考虑support vectors,也就是和分类最相关的少数点,去学习分类器。而逻辑回归通过非线性映射,大大减小了离分类平面较远的点的权重,相对提升了与分类最相关的数据点的权重,两者的根本目的都是一样的。即支持向量机只考虑局部的边界线附近的点,而逻辑回归考虑全局(远离的点对边界线的确定也起作用)。影响SVM决策面的样本点只有少数的支持向量量,当在支持向量外添加或减少任何样本点对分类决策面没有任何影响;而在LR中,每个样本点都会影响决策面的结果。

2.核技巧
在解决非线性问题时,支持向量机采用核函数的机制,而LR通常不不采用核函数的方法。这个问题理理解起来非常简单。分类模型的结果就是计算决策面,模型训练的过程就是决策⾯面的计算过程。通过上面的第二点不不同点可以了解,在计算决策面时,SVM转化为对偶问题后,只有少数几个代表支持向量的样本参与了计算,也就是只有少数几个样本需要参与核计算(即kernal machine解的系数是稀疏的),这个在进行行复杂核函数计算时优势很明显,能够大大简化模型和计算量。。然而,LR算法⾥里,每个样本点都必须参与决策面的计算过程,也就是说,假设我们在LR里里也运用核函数的原理,那么每个样本点都必须参与核计算,这带来的计算复杂度是相当高的。所以,在具体应用时,LR很少运用核函数机制。

3.异常值
两者对异常的敏感度也不一样。同样的线性分类情况下,如果异常点较多的话,无法剔除,首先LR,LR中每个样本都是有贡献的,最大似然后会自动压制异常的贡献,SVM+软间隔对异常还是比较敏感,因为其训练只需要支持向量,有效样本就不高,一旦***扰,预测结果难以预料。

4.normalization
两个模型对数据和参数的敏感程度不同,Linear SVM比较依赖penalty的系数和数据表达空间的测度,而(带正则项的)LR比较依赖对参数做L1 regularization的系数。但是由于他们或多或少都是线性分类器器,所以实际上对低维度数据overfitting的能力都比较有限,相比之下对高维度数据,LR的表现会更加稳定,为什么呢?

因为Linear SVM在计算margin有多“宽”的时候是依赖数据表达上的距离测度的,换句话说如果这个测度不好(badly scaled,这种情况在高维数据尤为显著),所求得的所谓Large margin就没有意义了,这个问题即使换用kernel trick(⽐比如⽤用Gaussian kernel)也无法完全避免。所以使用Linear SVM之前一般都需要先对数据做normalization,而求解LR(without regularization)时则不需要或者结果不敏敏感。

编辑于 2019-08-10 16:01:07 回复(1)

https://blog.csdn.net/Neekity/article/details/87973689
与线性可分的情形一样,对于线性不可分的概率分布,我们可以用最小化正则化的误差函数来重新表示SVM。这也使得我们能够强调与logistic回归模型之间的相似性和差别。 我们已经看到对于边缘边界正确的一侧数据点,即满足。对于其余的数据点所以我们能得到
是铰链hinge误差函数,表示x的正数部分 再来看LR回归,为了方便与SVM对比,取那么所以我们能得出取似然函数的负对数形式并带正则化作为误差函数为了方便对比我们对除以,四种误差函数对比如下所示,蓝色是SVM的hinge,红色是LR,黑色是误分类,绿色是平方误差
误差函数对比图
我们可以看到hinge与LR形式相近,但hinge在大于1时产生稀疏解。hinge和LR函数都可以看成是误分类误差函数的连续近似。有时候也可以用一个平方误差去近似,但平方误差会着重强调那些被正确分类的在正确一侧距离决策边界较远的点。如果这些点是误分类的,那么也会被赋予较高的权值。因此我们对于最小化分类错误率来说,更好的选择是一个单调递减的函数。

LR与SVM的区别,和大家分享:
1、LR可以输出属于每一类别的概率,SVM则不行
2、LR是基于概率最大化推导的,而SVM是基于最大化几何间隔推导的
3、SVM的决策超平面只有少量的支撑向量决定,而LR所有的样本都参与决策面的更新,所以SVM对异常数据并不敏感,LR更加敏感
4、SVM依赖数据表达的距离测度,所以需要先对数据进行标准化处理,但是LR不需要。

发表于 2019-04-14 14:49:45 回复(0)

支持向量机是属于分类算法,寻找一个超平面进行分类,分类原则是间隔最大化,从而转化为凸二次规划问题求解


发表于 2019-04-19 00:20:15 回复(0)