【机器学习】SVM浅谈
来源:互联网 发布:开源wiki系统 java 编辑:程序博客网 时间:2024/05/22 03:51
SVM对于中小规模的数据来说是非常好的模型。由于其可以用数学严谨的推导出结果,可解释性比较强,所以在工业上应用的比较广。
一,SVM的推导
简单起见先考虑SVM在线性的二分类中的应用。
图1
如图1所示svm的目的就是找到一条直线能够很好的将正、负样本“很好的”分开。这个“很好的”是指对于样本的鲁棒性比较好,及时样本点受到一点噪声也不会影响分类的结果,比较直观的看就是正负样本点离分割线的距离比较远。这就是svm的关键点之一:
KEY 1:分割线与正负样本的间隔越大越好。
那么就有如下公式:
w为分割线的法向量,u为要判断的样本点,通过公式来判断样本对是正样本还是负样本。
此时svm的目标是找到合适的w ⃗和b来使对新样本的判断比较正确。
在训练样本中,对于正负样本的存在如下的不等式,即svm的最大间隔假设:
其中离分割线最近的正负样本点(就是图1中出现在分割线两遍绿色边界线上的点)称作“支持向量点”,Vector Point,这些点能够使公式(3)上的等号成立。
图1中的边界的距离margin为,正样本向量减去负样本的向量然后向边界的法向量上的投影:如图2:
只有“支持向量点”对应的α_i才不为0,其他的α_i都为0。可以使用QP或者是SMO来求得一组α_i的值及其对应的x_i的值来,这样就能得到要求的支持向量模型。
二,SVM核函数
若训练集为非线性的,那么与线性的类似,非线性中关心的也是变换之后的样本点的点乘ρ(x_1 )*ρ(x_2),核函数是两个线性变化之后的点乘:k(x_1,x_2 )=ρ(x_1 )*ρ(x_2)
只要一个对称函数所对应的核矩阵半正定,它就能作为核函数。常用的作为核函数的函数有:
另外还可以函数组合得到核函数,若k_1和k_2为核函数,那么他们的线性组合也是核函数:a*k_1+b*k_2
- 【机器学习】SVM浅谈
- 机器学习 SVM
- 机器学习7-SVM
- 机器学习实战--svm
- 机器学习系列----SVM
- 机器学习---SVM(1)
- 机器学习笔记-SVM
- 机器学习 SVM sklearn
- SVM NG机器学习
- 机器学习笔记:SVM
- [机器学习] SVM
- 机器学习之SVM
- 机器学习--SVM
- 机器学习之SVM
- 机器学习-SVM算法
- 【机器学习】SVM漫谈
- 机器学习算法-SVM
- 机器学习(6)SVM
- Cloud微服务入门【3】--配置管理服务
- centos添加环境变量
- 1122. Hamiltonian Cycle (25)
- 补c++第二次实验
- Android中关于ScrollView嵌套listView,ListView Item只显示一行的解决方法
- 【机器学习】SVM浅谈
- HashMap的工作原理
- 详解Java解析XML的四种方法
- ros-qt环境搭建
- 安卓智能地图开发与实施八:离线业务图层(浏览查询)
- 战旗直播平台弹幕登录分析
- Linux入门(一)根目录介绍
- HashMap和Hashtable的区别
- 一致性哈希算法