小结
支持向量机(Support Vector Machine, SVM)是一种监督学习的模型,主要用于分类和回归分析。SVM的基本思想是在高维或无限维的特征空间中寻找一个超平面作为决策边界,以实现最好的类别分割。
与其他常见的线性分类模型的区别
支持向量机(SVM)和其他常见的线性分类模型(如逻辑回归和感知机)在许多方面都有所不同:
- 最大间隔原理:SVM算法的一个独特之处在于,它的目标不仅是简单地区分正例和负例,而且还要最大化它们之间的距离。具体来说,SVM试图找到一个决策边界,使得这个边界到最近的训练样本点(也称为支持向量)的距离尽可能大。这称为“最大间隔”原理,这也是SVM与其他线性分类器最主要的区别。
- 非线性分类:虽然一些其他线性分类器也允许(通过特征工程)在高维特征空间中运行,但SVM通过使用“核技巧”在这一点上更具优势。核技巧允许SVM在原始特征空间中创建非线性决策边界,而无需实际计算高维特征向量。
- 只使用支持向量:在分类决策中,SVM只使用训练样本中的一小部分,也就是支持向量。这是因为优化目标是最小化与支持向量的距离,而与支持向量无关的样本对这个距离没有影响。然而,其他的分类器,例如逻辑回归,通常会用到所有的训练样本。
- 预测结果:SVM通常输出的是类别,而不包含概率解释。理论上可以通过某些技术(如Platt缩放)获取概率,但这不是其本质特性,而且计算成本相对较高。相比之下,逻辑回归等分类器则可以直接输出类别的概率。
- 参数选择:SVM有几个需要选择的重要参数,比如正则化参数C以及核函数和其参数,参数选择会对模型结果产生重大影响。而一些其他线性分类器,如逻辑回归,其模型复杂度可以通过特征选择等方式更直观地控制。
然而,尽管SVM在许多情况下都表现出色,尤其在小样本或者高维问题中,但它们也有一些缺点,例如计算成本高,对参数选择敏感,以及缺乏直接的概率解释等。
应用
- 图像识别:比如人脸识别、手写体识别等。
- 文本分类:支持向量机在情感分析、垃圾邮件识别等文本分类任务上具有出色性能。
- 生物信息学:如蛋白质分类、遗传学中的分类和预测等。
- 计算机视觉:物体识别、图像分割等。
优缺点
优点:
- 重点关注在训练样本中的边界样本,也就是支持向量,对于训练样本的规模不敏感,所以可以得出全局的解。
- SVM通过核函数可以处理非线性问题,无需预知数据的分布,拓展性较好。
- 在处理高维度数据时,仍具有较好的分类效果。
缺点:
- 对于非线性问题,往往难以自行确定合适的核函数。
- 对缺失数据以及噪声较多的数据敏感。
- 当观测样本非常多,或者数据包含很多无关特征时,训练效率低,运算量大,且要消耗大量计算资源。