一、SVM
支持向量机(support vector machines,SVM)是一种二分类模型,将实例的特征向量映射为空间中的一些点,SVM 的目的就是想要画出一条线,以 “最好地” 区分这两类点,以至如果以后有了新的点,这条线也能做出很好的分类。SVM 适合中小型数据样本、非线性、高维的分类问题。
一个经久不衰的算法,深度学习出现之前,SVM 被认为机器学习中近十几年来最成功,表现最好的算法。高准确率,为避免过拟合提供了很好的理论保证,而且就算数据在原特征空间线性不可分,只要给个合适的核函数,它就能运行得很好。在动辄超高维的文本分类问题中特别受欢迎,可惜内存消耗大,难以解释,运行和调参也有些烦人,相比较随机森林刚好避开这些缺点,比较实用。
在机器学习领域,支持向量机SVM(Support Vector Machine)是一个有监督的学习模型,通常用来进行模式识别、分类(异常值检测)以及回归分析。
二、特征和优缺点
1、特征:
(1).SVM可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数的全局最小值。而其他分类方法均采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
(2).SVM通过最大化决策边界的边缘来实现控制模型的能力。尽管如此,用户必须提供其他参数,如使用核函数类型和引入松弛变量等。
(3).SVM一般只能用在二类问题,对于多类问题效果不好。
2、优点:
(1).可以解决高维问题,即大型特征空间;
(2).解决小样本下机器学习问题;
(3).能够处理非线性特征的相互作用;
(4).无局部极小值问题;(相对于神经网络等算法)
(5).无需依赖整个数据;
(6).泛化能力比较强。