SVM与LR的异同

SVM与LR相同点:

  1. SVM与LR都是分类算法,解决分类问题
  2. 如果不考虑使用核函数,SVM与LR都是线性分类模型,也就是说它们的分类决策面是线性
  3. SVM与LR都是监督学习方法
  4. SVM与LR都是判别模型。典型判别模型:KNN,感知机,DT,LR,SVM,最大熵,条件随机场,boosting等;典型生成模型:朴素贝叶斯,隐马尔可夫,高斯混合模型等
  5. SVM与LR在学术界和工业都广泛使用。

SVM与LR不同点:

  1. 损失函数(loss function)不同;

       (1)SVM的loss function为:

  

        (2)LR的loss function 为:

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

      2.SVM只考虑分类面附近的局部点,即支持向量,LR则考虑所有点,与分类面聚类较远的点对结果也起作用,虽然作用较小。SVM中的分类是由支持向量控制的,非支持向量对结果不会产生任何影响。LR中的分类面是由全部样本共同决定。线性SVM不直接依赖数据分布,分类面不受一类点影响;LR受所有数据点的影响,如果数据不同类别严重不平衡,一般先对数据做balancing,例如多大类样本进行降采样,对少类样本进行重采样,或者同时对大类样本进行降采样对少类样本进行重采样。

    3.在解决非线性分类问题时,SVM采用核函数,而LR不采用核函数或者说在LR中没有核函数的提法。

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

    4.SVM不具有伸缩不变性,LR具有伸缩不变性。

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

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

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

参考博文:

1.https://blog.csdn.net/qq_35945399/article/details/81175772

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值