逻辑回归和SVM的区别
- LR采用log损失,SVM采用合页(hinge)损失函数;SVM的损失函数自带正则项,而LR需要在损失函数外面再加正则项
- LR对异常值敏感,SVM对异常值不敏感
- 在训练集较小时,SVM较适用,而LR需要较多的样本
- LR模型考虑的是全部样本,SVM考虑的支持向量。
- SVM有核函数
应用的场景
在Andrew NG的课里讲到过:
- 如果Feature的数量很大,跟样本数量差不多,这时候选用LR或者是Linear Kernel的SVM
如果Feature的数量比较小,样本数量一般,不算大也不算小,选用SVM+Gaussian Kernel
如果Feature的数量比较小,而样本数量很多,需要手工添加一些feature变成第一种情况
在小规模数据集上,Linear SVM要略好于LR,但差别也不是特别大,而且Linear SVM的计算复杂度受数据量限制,对海量数据LR使用更加广泛。