一、什么是支持向量机
支持向量机(Support Vector Machine, SVM)是一种强大的机器学习算法,可用于解决数据分类(二分类)和回归问题。在分类问题上,SVM的核心思想是在特征空间中找到一个最优的超平面,这个超平面能够最大化地分开不同类别的数据点,即最大化两类数据点之间的间隔;而在回归问题中,支持向量机的目标是找到一个函数,该函数在给定的数据点上有最小的预测误差,与分类问题中最大化两类数据点之间的间隔不同,回归问题关注的是找到一个合适的函数,使得实际值和预测值之间的差异最小。支持向量机与其他机器学习/深度学习不一样的地方在于,其他方法往往通过降维解决问题(比如神经网络每一层神经元数量的递减设置),而支持向量机是通过升维直至维度高到足以满足分类/回归要求来解决问题的。
二、支持向量机的原理
1、最优超平面
SVM的目标是找到一个超平面,使得不同类别的数据点之间的间隔(margin)最大化。间隔定义为从超平面到最近的数据点(支持向量)的最短距离。对于线性可分的情况,SVM的优化问题可以表示为:
受以下约束条件,对于所有的i,有:
其中,w是超平面的法向量,b是超平面的偏置项,是数据点,
是数据点的标签,取值为 +1 或 -1,
是数据点到超平面的距离。
2、软间隔
在现实世界中,数据往往不是完全线性可分的。为了处理这种情况,SVM引入了软间隔(soft margin)的概念,允许一些数据点违反间隔规则。软间隔SVM的优化问题可以表示为:
&n

最低0.47元/天 解锁文章
4241

被折叠的 条评论
为什么被折叠?



