支持向量机(SVM)

2017-10-13  本文已影响0人  闫阿佳

参考博客:http://blog.csdn.net/szlcw1/article/details/52259668

1.谈谈对支持向量机的理解

公式推导:硬间隔最大化(几何间隔)-> 学习的对偶问题 -> 软间隔最大化(引入松弛变量)-> 非线性支持向量机(核技巧)。

2. 引入对偶问题的作用:

3. KKT条件

Paste_Image.png

4. SVM核函数

svm核函数的理解和选择

5. SVM解决多分类问题

6. SVM优化方法-SMO

SMO(序列最小最优算法): SMO算法是支持向量机学习的一种快速方法,其特点是不断地将原二次规划问题分解为只有两个变量的二次规划子问题,并对子问题进行解析求解,直到所有变量满足KKT条件为止。这样通过启发式的方法得到原二次规划问题的最优解。因为子问题有解析解,所以每次计算子问题都很快,虽然子问题次数很多,但在总体上很是高效的。

Paste_Image.png Paste_Image.png

7. 为什么SVM对缺失数据敏感?

这里说的缺失数据是指缺失某些特征数据,向量数据不完整。SVM没有处理缺失值的策略(决策树有)。而SVM希望样本在特征空间中线性可分,所以特征空间的好坏对SVM的性能很重要。缺失特征数据将影响训练结果的好坏。

8. LR和SVM的联系与区别:

联系:

  1. LR和SVM都可以处理分类问题,且一般都用于处理线性二分类问题(在改进的情况下可以处理多分类问题)
  2. 两个方法都可以增加不同的正则化项,如l1、l2等等。所以在很多实验中,两种算法的结果是很接近的。

区别:

  1. LR是参数模型,SVM是非参数模型。
  2. 从目标函数来看,区别在于逻辑回归采用的是logistical loss,SVM采用的是hinge loss.这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。
  3. SVM的处理方法是只考虑support vectors,也就是和分类最相关的少数点,去学习分类器。而逻辑回归通过非线性映射,大大减小了离分类平面较远的点的权重,相对提升了与分类最相关的数据点的权重。
  4. 逻辑回归相对来说模型更简单,好理解,特别是大规模线性分类时比较方便。而SVM的理解和优化相对来说复杂一些,SVM转化为对偶问题后,分类只需要计算与少数几个支持向量的距离,这个在进行复杂核函数计算时优势很明显,能够大大简化模型和计算。
  5. logic 能做的 svm能做,但可能在准确率上有问题,svm能做的logic有的做不了。

9. 核函数的选择

口诀:
初级:高维用线性,不行换特征;低维试线性,不行换高斯
中级:线性试试看,不行换高斯,卡方有奇效,绝招MKL
玩家:Kernel度量相似性,自己做啊自己做

上一篇 下一篇

猜你喜欢

热点阅读