【Matlab】基于支持向量机SVM实现多分类预测(Excel可直接替换数据)
1.算法简介
1.1 算法原理
- 支持向量机算法在解决小样本模式识别中具有较强优势,这里的小样本并不是说样本的绝对数量少,而是说与问题的复杂度相比,SVM要求的样本数是相对比较少的。实际上,对大部分分类回归算法来说,更多的样本总是能带来更好的效果。SVM算法擅长应对样本数据线性不可分的情况,主要通过引用核函数技术来实现。
- 支持向量机将向量映射到一个更高维的空间中,在这个空间中建立一个最大间隔的超平面。在分开数据的超平面的两边建有两个互相平行的临界超平面,建立方向合适的分隔超平面将使两个与之平行的超平面间的距离最大化。其假定为,平行超平面间的距离或差距越大,分类器的总误差越小。
1.2 算法优点
- 算法专门针对有限样本设计,其目标是获得现有信息下的最优解,而不是样本趋于无穷时的最优解。
- 算法最终转化为求解一个二次凸规划问题,因而能求得理论上的全局最优解,解决了一些传统方法无法避免的局部极值问题。
- 算法将实际问题通过非线性变换映射到高维特征空间中,在高维特征空间中构造线性最佳逼近来解决原空间中的非线性逼近问题。这一特殊性质保证了学习机器具有良好的泛化能力,同时巧妙地解决了维数灾难问题,特别值得注意的是支持向量机算法复杂性与数据维数无关。
2.测试数据集
- ris 鸢尾花数据集内包含 3 种类别,分别为山鸢尾(Iris-setosa)、变色鸢尾(Iri