机器学习-逻辑回归与SVM的联系与区别

(搬运工)

逻辑回归(LR)与SVM的联系与区别

LR 和 SVM 都可以处理分类问题,且一般都用于处理线性二分类问题(在改进的情况下可以处理多分类问题,如LR的Softmax回归用在深度学习的多分类中)

区别:

1、LR 是 参数模型,SVM是非参数模型,(svm中的 linear 和 rbf 是指线性可分和不可分的问题)

2、从目标函数来看,逻辑回归的目标是使得经验风险最小化,采用的是logistical loss,svm则是最大化分类间隔,使用的损失函数是合页损失( hinge损失):当样本点被正确分类且函数间隔大于1时,损失为0,否则损失是1-y(wx+b),即对于分类正确的样本也有一定的损失。其目标函数为 min  sum(1-y(wx+b)) + λ ||w||^2

逻辑回归基于概率理论,假设样本为正样本的概率可以用sigmoid函数(S型函数)来表示,然后通过极大似然估计的方法估计出参数的值。支持向量机基于几何间隔最大化原理,认为存在最大几何间隔的分类面为最优分类面。

这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。

直接依赖数据分布,每个样本点都会影响决策面的结果。如果训练数据不同类别严重不平衡,则一般需要先对数据做平衡处理,让不同类别的样本尽量平衡。

3、SVM的处理方法是只考虑支持向量,也就是和分类最相关的少数点,去学习分类器。而逻辑回归通过非线性映射,大大减小了离分类超平面较远的点的权重,相对提升了与分类最相关的数据点的权重。但是LR还是受到所有的数据点的影响。

4、逻辑回归相对来说模型更加简单,好理解,特别是大规模线性分类时比较方便。而SVM的理解和优化相对复杂,svm转化为对偶问题后,分类只需要计算与少数几个支持向量的距离,这个在进行复杂核函数计算时优势较为明显,能够大大简化计算。LR算法里,每个样本点都必须参与分类决策的计算过程,也就是说,假设我们在LR里也运用核函数的原理,那么每个样本点都必须参与核计算,这带来的计算复杂度是相当高的。

5、logic能够做的svm都可以做,只是在准确率上有问题,svm能做的logic有时做不了

6、SVM 基于距离分类,LR 基于概率分类。SVM依赖数据表达的距离测度,所以需要对数据先做 normalization;LR不受其影响。

7、SVM的损失函数就自带正则,而 LR 必须另外在损失函数之外添加正则项。

联系:

1、都是判别模型,判别模型不关心数据是如何生成的,只关心信号之间的差别,然后用差别来简单对给定的信号进行分类。

2、都是监督学习模型。训练数据带有标记。

3、都是线性分类器,本质上都是求一个最佳分类超平面。


参考文献

[1] https://www.cnblogs.com/zhizhan/p/5038747.html

[2] http://blog.csdn.net/timcompp/article/details/62237986

原文地址:https://www.cnblogs.com/wzhao-cn/p/11326184.html