LR与SVM的联系与区别:
联系:
1、LR和SVM都可以处理分类问题,且一般都用于处理
线性二分类
问题(在改进的情况下可以处理多分类问题)
2、两个方法都可以增加不同的正则化项
,如l1、l2等等。所以在很多实验中,两种算法的结果是很接近的。
区别:
1、LR是参数模型[逻辑回归是假设y服从Bernoulli分布],SVM是非参数模型,LR对异常值更敏感。
2、从目标函数来看,区别在于逻辑回归采用的是logistical loss,SVM采用的是hinge loss,这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。
3、SVM的处理方法是只考虑support vectors,也就是和分类最相关的少数点,去学习分类器。而逻辑回归通过非线性映射,大大减小了离分类平面较远的点的权重,相对提升了与分类最相关的数据点的权重。
4、逻辑回归相对来说模型更简单,好理解,特别是大规模线性分类时比较方便。而SVM的理解和优化相对来说复杂一些,SVM转化为对偶问题后,分类只需要计算与少数几个支持向量的距离,这个在进行复杂核函数计算时优势很明显,能够大大简化模型和计算。
5、logic 能做的 svm能做,但可能在准确率上有问题,svm能做的logic有的做不了。
如何选择LR与SVM?
1、如果Feature的数量很大,跟样本数量差不多,这时候选用LR或者是Linear Kernel的SVM
2、如果Feature的数量比较小,样本数量一般,不算大也不算小,选用SVM+Gaussian Kernel
3、如果Feature的数量比较小,而样本数量很多,需要手工添加一些feature变成第一种情况。
模型复杂度:
- SVM支持核函数,可处理线性非线性问题;
- LR模型简单,训练速度快,适合处理线性问题;
- 决策树容易过拟合,需要进行剪枝
损失函数:
- SVM hinge loss;
- LR L2正则化;
- adaboost 指数损失
数据敏感度:
- SVM添加容忍度对outlier不敏感,只关心支持向量,且需要先做归一化;
- LR对远点敏感
数据量:
- 数据量大就用LR
- 数据量小且特征少就用SVM非线性核
什么是参数模型(LR)与非参数模型(SVM)?
- 在统计学中,参数模型通常假设总体(随机变量)服从某一个分布,该分布由一些参数确定(比如正太分布由均值和方差确定),在此基础上构建的模型称为参数模型;
- 非参数模型对于总体的分布不做任何假设,只是知道总体是一个随机变量,其分布是存在的(分布中也可能存在参数),但是无法知道其分布的形式,更不知道分布的相关参数,只有在给定一些样本的条件下,能够依据非参数统计的方法进行推断。
作者:流川枫AI
链接:https://www.imooc.com/article/46843
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作
网友评论