SVM总结
来源:互联网 发布:淘宝9块9包邮 编辑:程序博客网 时间:2024/05/18 08:49
来源于张驰原的博客
1. 有两个margin,一个是function margin,一个是geometric margin。优化目标函数就是优化geometric margin,它比function margin多除了一个||w||。这样分割平面尽管没有变化,function margin是有可能变化的,因为w和b可以等比例地缩小放大,但是geometric是随着分割平面变化的。
2. 要max geometric margin。这个margin是离分割平面最近的点距离分割平面的距离,要最大化它,这样我们在分类时才会有最大的confidence。这个式子为
3. 固定的方式有两种,分子或分母。固定γ^会比较方便计算。所以优化变成了
4. 目标函数改成了这样,变成了凸二次优化问题了! quadratic programming
在这里,拉格朗日函数里面的不等式约束函数变成了 -(yi(wx+b)-1)≤0 乘子是αi,这样就可以用极小极大方法,求取全局的最小值了!
但是原本的优化的式子里面是先极小的,所以想办法用对偶问题
5. 但是我们假设了它的强对偶性(因为首先,它是凸函数。如果它不是凸函数,KKT条件仅仅是必要条件,但现在KKT条件因为凸函数的缘故成为了充要条件,而这个问题是满足KKT条件的,所以可以用对偶的方法求得),所以我们用极大极小方法来求得最优解。原问题是要求上确界,现在改为求下确界。
6. 最后变成了优化这个式子:
这个优化过程有更高效的算法(见11)
7. 关于怎么预测点。前面的推导过程中得到了w的替换式子,所以f(x)变为了
结果就变成了求内积。这个求内积的过程是核函数的基础,可以用到高维的分布。而且对于非支持向量,α都是为0的。因为αy=0(这样L函数才会极大化).所以计算量并不大。
8. 核函数映射到高维时,不需要先映射到高维后做内积,可以先做低维的内积再映射到高维。高维的优化函数变成了:
计算两个向量在映射过后的空间中的内积的函数叫做核函数 (Kernel Function)
在低维内积完以后再通过核函数变换到高维。我们不需要知道映射的具体形式。这样一来计算的问题就算解决了,避开了直接在高维空间中进行计算,而结果却是等价的。
高斯核可以将数据映射到无穷维度的空间。但如果σ选的很大,实际上高次特征的权重会衰减的很快,相当于映射到了低维的子空间;
如果选的很小,容易产生过拟合。
9. 除了 SVM 之外,任何将计算表示为数据点的内积的方法,都可以使用核方法进行非线性扩展
10. 关于松弛变量
关于优化函数唯一的区别实际上就是α有了上限C
11. 优化算法SMO
如果要选择最合适的α,一般可以用最简单的梯度下降。但是对于某些函数有可能陷入局部最小值。如果用coordinate descent,一次选一个α,固定其他的α,也不可以。因为由于所有的αy的和为0,固定n-1个α,剩下的那个就确定了。SMO算法是一次选择一对α。这两个α都在[0,C]里(考虑松弛变量)。并且由于固定了其他α,这两个αy的和等于一个固定的数值。这样α就有了可行区间,在这个区间上迭代找极值。但如何选择这两个变量,也是有讲究的。
- SVM总结
- SVM总结
- SVM总结
- SVM总结
- SVM总结
- SVM总结
- SVM总结
- SVM(MATLAB) 学习总结
- SVM相关总结
- SVM(MATLAB) 学习总结
- SVM算法总结
- svm详细总结
- SVM核函数总结
- SVM学习总结
- SVM学习总结
- SVM入门学习总结
- SVM学习总结
- SVM相关知识总结
- tiny64103G模块拨号问题
- 基于OK6410的u-boot2010.03…
- 嵌入式linux的tftp安装配置
- 更改嵌入式Linux中开机画面
- read与fread的区别
- SVM总结
- 手把手教你写基于C++ Winsock的图片下载的网络爬虫
- MySql数据库:数据查重、去重的实现
- java中位运算符与逻辑运算符
- JavaScript基础
- 11.3~11.4NOIP模拟测试总结
- java之多线程中Thread类和Runnable接口使用方法
- mysql 插入数据,若存在则更新某一字段
- CentOS 7 firewalld 的基本使用