支持向量机SVM
2016-03-04 23:12
225 查看
是什么?
支持向量机SVM(Support Vector Machine)是一个有监督的学习模型。
SVM的主要思想可以概括为两点:
⑴它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而 使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能;
⑵它基于结构风险最小化理论之上在特征空间中建构最优分割超平面,使得学习器得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上界。
SVM,常用的核函数有以下4种:
⑴线性核函数K(x,y)=x·y;
⑵多项式核函数K(x,y)=[(x·y)+1]^d;
⑶径向基函数K(x,y)=exp(-|x-y|^2/d^2)
⑷二层神经网络核函数K(x,y)=tanh(a(x·y)+b)
什么用?
通常用来进行模式识别、分类、以及回归分析。
怎么用?
libsvm
优点:
对线性不可分问题通过将数据映射到高维空间在通过一个线性超平面实现线性划分(或回归)
SVM学习问题可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数的全局最小值。而其他分类方法(如基于规则的分类器和人工神经网络)都采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
小规模数据集上效果比较好
缺点:
SVM一般只能用在二类问题,对于多类问题效果不好。
在大规模的数据集上训练耗时比较长
支持向量机SVM(Support Vector Machine)是一个有监督的学习模型。
SVM的主要思想可以概括为两点:
⑴它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而 使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能;
⑵它基于结构风险最小化理论之上在特征空间中建构最优分割超平面,使得学习器得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上界。
SVM,常用的核函数有以下4种:
⑴线性核函数K(x,y)=x·y;
⑵多项式核函数K(x,y)=[(x·y)+1]^d;
⑶径向基函数K(x,y)=exp(-|x-y|^2/d^2)
⑷二层神经网络核函数K(x,y)=tanh(a(x·y)+b)
什么用?
通常用来进行模式识别、分类、以及回归分析。
怎么用?
libsvm
优点:
对线性不可分问题通过将数据映射到高维空间在通过一个线性超平面实现线性划分(或回归)
SVM学习问题可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数的全局最小值。而其他分类方法(如基于规则的分类器和人工神经网络)都采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
小规模数据集上效果比较好
缺点:
SVM一般只能用在二类问题,对于多类问题效果不好。
在大规模的数据集上训练耗时比较长
相关文章推荐
- 关于TCL加载TCOM报错不能加载的问题
- memcached分布式集群算法(一致性哈希实现)
- STL笔记(4)——空间配置器Allocator(二)
- ThreadPoolExecutor
- 斐波那契数列与生成器
- oracle体系结构 非常详细
- 欢迎使用CSDN-markdown编辑器
- Animator角色重复受击播放问题
- win7笔记本电脑计算机右键管理打开命令
- hdu 2011
- 深夜学网页(5)——html(5)
- Hust oj 1753 Triangular numbers(三角数)
- NYOJ248(贪心)
- 推送流程
- 虚拟机中CentOS 7下PHP环境配置
- java复习总结2
- 软件工程作业 四则运算(一)
- 【POJ】[1363]Rails
- druid removeAbandoned 含义 和使用
- AngularJS中的指令