SVM(Support Vector Machine),支持向量机,有监督学习模型,一种分类模型。在特征空间(输入空间为欧式空间或离散集合,特征空间为欧式空间或希尔伯特空间)中寻找间隔最大化的分离超平面的线性分类器。学习策略就是间隔最大化,可形式化为一个求解凸二次规划(QP)的问题,也等价于正则化的合页损失函数的最小化问题。

针对数据特点,处理方法或者说原理是:

(1).当训练样本线性可分时,通过硬间隔最大化,学习一个线性分类器,即线性可分SVM;

(2).当训练数据近似线性可分时,引入松弛变量,通过软间隔最大化,学习一个线性分类器,即线性支持向量机;

(3).当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机。

一句话解释一下线性核和高斯核的区别:

Linear核主要用于线性可分的情形,参数少,速度快;高斯核主要用于线性不可分的情形,参数多,分类结果依赖于参数,可通过公式辨别。

1. 如果Feature的数量很大,跟样本数量差不多,这时候选用LR或者是LinearKernel的SVM

2. 如果Feature的数量比较小,样本数量一般,不算大也不算小,选用SVM+Gaussian Kernel

3. 如果Feature的数量比较小,而样本数量很多,需要手工添加一些feature变成第一种情况

当样本在原始空间线性不可分时,将样本由原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分。(高维空间线性可分)

通过核函数可以学习非线性支持向量机,等价于隐式地在高维的特征空间中学习线性支持向量机。即传说中的核方法。

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

SVM没有处理缺失值的策略(决策树有),SVM希望样本在特征空间中线性可分,所以特征空间的好坏对SVM性能很重要。

为什么使用间隔最大化:

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

为什么将SVM的原始问题转换为其对偶问题来解决:

因为对偶问题往往更容易求解,原问题的求解包含约束条件,使问题求解变得复杂,将目标函数和约束重新整合到一个新函数,即拉格朗日函数,然后再通过这个函数来寻找最优解比较容易。

具体求解过程见李航统计学习方法第七章。

SVM用到的Python库和调参:

Sklearn库,调用sklearn.svm,-c 惩罚参数;kernel:0为线性,1为多项式,2为RBF核,3为sigmoid(tanh);gamma:核函数参数;coef0:核函数的常数项。

https://www.zhihu.com/question/21094489上的例子解释的很通俗易懂。

最新文章

  1. iOS 开发总结(上)
  2. jee websocket搭建总结
  3. 【FPGA】【代码】资源优化,结构优化
  4. nodejs在同一台服务器上部署并同时运行两个或以上服务端时,一个服务用户登录后会挤掉另一个用户的问题
  5. httpServletRequest对象、filter、servlet、servlet容器、catalina、tomcat、以及web容器之间的关系
  6. Objective-C Polymorphism
  7. Android 编程下的代码混淆
  8. python 面向对象、特殊方法与多范式、对象的属性及与其他语言的差异
  9. localStorage、sessionStorages 使用
  10. MySQL密码忘了怎么办?MySQL重置root密码方法
  11. mybatis支持oracle批量插入
  12. [Linux] host dig nslookup查询域名的DNS解析
  13. PostgreSQL自学笔记:6 PostgreSQL函数
  14. nginx之代理websocket
  15. Eclipse 常用技巧及常见问题解决
  16. [04] Bean的实例化和多个配置文件
  17. 获取泛型的class 反射
  18. centos7.2 mysql5.5编译安装
  19. PHP的数组合并
  20. ccf-170902-公共钥匙盒(模拟)

热门文章

  1. linux网络相关配制及命令
  2. Struts2 第二讲 -- Struts2的入门
  3. spring入门(六) spring mvc+mybatis
  4. iOS 从0到1搭建高可用App框架
  5. rest_framework --- APIView
  6. 《瞿葩的数字游戏》T3-三角圣地(Lucas)
  7. [洛谷]P3704-数字表格
  8. WIN10 vagrant和virtualbox虚拟机和一键搭建lnmp环境配置thinkphp虚拟主机
  9. mysql系列一
  10. (五)、python 函数