机器学习——SVM
整理自:
https://blog.csdn.net/woaidapaopao/article/details/77806273?locationnum=9&fps=1
- 带核的SVM为什么能分类非线性问题?
- RBF核一定是线性可分的吗?
- 常用核函数及核函数的条件
- SVM的基本思想
- 是否所有的优化问题都可以转化为对偶问题
- 处理数据偏斜
1.带核的SVM为什么能分类非线性问题?
核函数的本质是两个函数的內积,而这个函数在SVM中可以表示成对于输入值的高维映射。注意核并不是直接对应映射,核只不过是一个內积
2.RBF核一定是线性可分的吗?
不一定,RBF核比较难调参而且容易出现维度灾难,要知道无穷维的概念是从泰勒展开得出的。
3.常用核函数及核函数的条件
核函数选择的时候应该从线性核开始,而且在特征很多的情况下没有必要选择高斯核,应该从简单到难的选择模型。我们通常说的核函数指的是正定和函数,其充要条件是对于任意的x属于X,要求K对应的Gram矩阵要是半正定矩阵。
- RBF核径向基,这类函数取值依赖于特定点间的距离,所以拉普拉斯核其实也是径向基核。
- 线性核:主要用于线性可分的情况
- 多项式核
4.SVM的基本思想
间隔最大化来得到最优分离超平面。方法是将这个问题形式化为一个凸二次规划问题,还可以等价位一个正则化的合页损失最小化问题。SVM又有硬间隔最大化和软间隔SVM两种。这时首先要考虑的是如何定义间隔,这就引出了函数间隔和几何间隔的概念(这里只说思路),我们选择了几何间隔作为距离评定标准(为什么要这样,怎么求出来的要知道),我们希望能够最大化与超平面之间的几何间隔x,同时要求所有点都大于这个值,通过一些变化就得到了我们常见的SVM表达式。接着我们发现定义出的x只是由个别几个支持向量决定的。对于原始问题(primal problem)而言,可以利用凸函数的函数包来进行求解,但是发现如果用对偶问题(dual )求解会变得更简单,而且可以引入核函数。而原始问题转为对偶问题需要满足KKT条件(这个条件应该细细思考一下)到这里还都是比较好求解的。因为我们前面说过可以变成软间隔问题,引入了惩罚系数,这样还可以引出hinge损失的等价形式(这样可以用梯度下降的思想求解SVM了)。我个人认为难的地方在于求解参数的SMO算法。
5.是否所有的优化问题都可以转化为对偶问题
这个问题我感觉非常好,有了强对偶和弱对偶的概念。用知乎大神的解释吧
6.处理数据偏斜
可以对数量多的类使得惩罚系数C越小表示越不重视,相反另数量少的类惩罚系数变大
最新文章
- Lua游戏时区问题
- Python开发【第十一篇】:JavaScript
- markdown使用总结
- web server &;&; web framework角色区分
- iOS中的translucent和automaticallyAdjustsScrollViewInsets用法
- gitignore for vs
- PHP time() 函数
- Android平台使用SQLite数据库存储数据
- CSS 样式二
- sql性能优化总结(转)
- Java基础—异常处理总结
- R语言 系统聚类分析1
- winPcap_1_开篇
- POJ-2955括号匹配问题(区间DP)
- TJOI2015 day1解题报告
- Docker常见仓库WordPress
- msm8916 dt选用规则
- java集合框架之LinkedList
- 【angularjs】pc端使用angular搭建项目,实现导出excel功能
- Mock1 moco框架的基本介绍