机器学习之SVM算法常用问题

1.SVM原理

SVM是一种二类分类模型,它的基本模型是在特征空间中寻找间隔最大化的分离超平面的线性分类器。

  • (1)当训练样本线性可分时,通过硬间隔最大化,学习线性分类器,即线性可分支持向量机。
  • (2)当训练数据近似线性可分时,引入松弛变量,通过软间隔最大化学习一个线性分类器
  • (3)当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机

2. SVM为什么间隔最大化

线性可分支持向量机利用间隔最大化求得最优分离超平面,这时解是唯一的,另一方面此时的分割超平面锁产生的分裂结果是最鲁棒的,对未知实例的泛化性能最强

3. 为什么要引入核函数

当样本在原始空间不可分时,可将样本从原始空间映射到更高维的特征空间,使得样本在这个特征空间线性可分。在学习预测中,只定义核函数,而不是显示的定义映射函数,是因为特征空间维数可能很高,甚至可能是无穷维因此直接计算比较困难的。常用的 核函数(线性核,高斯核,拉普拉斯核)

4. 为什么将求解SVM原始问题转化为对偶问题

对偶问题更易求解,我们的方法是将自约束融入一个新的函数,即拉格朗日函数,再通过这个函数寻找最优点。

  • (1)目前处理的模型严重依赖于数据集的维度d,如果维度d太高,就会严重提升运算时间
  • (2)多偶问题事实上把SVM从依赖d个维度转变到依赖N个数据点,考虑到最后计算时只有支持向量才有意义,所以计算量实际上比N小很多。

5.关于参数的选择问题

参数C,当参数C的值比较大时,会造成Lower Bias,High variance,当参数C较小时会造成High bias,low variance.

猜你喜欢

转载自blog.csdn.net/liushao123456789/article/details/79676621