每天进步一点点《ML - 支持向量机》.docx
【支持向量机(SVM)】 支持向量机(SVM)是机器学习领域中的一种二分类模型,它的基本思想是找到一个能够将不同类别数据最大程度分开的超平面。在感知机中,我们已经了解到,超平面可以通过内积公式`w·x+b`来定义,其中`w`是超平面的法向量,`x`是样本点,`b`是偏置项。当`w·x+b > 0`时,样本点位于超平面的一侧,标记为正类;当`w·x+b < 0`时,样本点位于另一侧,标记为负类。 然而,SVM的目标是找到一个能够使样本点之间具有最大间隔的超平面,即几何间隔最大的分离超平面。这样,对于新的未见过的样本,即使有些误差,它们也更有可能被正确分类,因为有较大的安全边界(间隔)作为缓冲。几何间隔是样本点到超平面的最短距离,表示为`|w·x+b|/||w||`,其中`||w||`是`w`的范数。 在SVM的数学模型中,我们引入了一个大于0的常数`K`,使得正样本满足`w·x+b ≥ K`,负样本满足`w·x+b ≤ -K`。通常会设定`K=1`简化表达,从而得到分类条件`y = f(x) = {1, if w·x+b ≥ 1; -1, if w·x+b ≤ -1}`。这里的`y`是样本的标签,`f(x)`是预测函数。 **代价函数(Cost Function)** SVM的核心在于优化问题,其目标是最大化间隔,即最小化`1/2||w||^2`。这里,我们引入了代价函数(Cost Function),通常表示为`J(θ)`,它反映了模型的复杂度和分类错误的惩罚。在SVM中,代价函数是`1/2||w||^2`,这实际上是范数平方的一半,便于求导。同时,为了确保所有样本点到超平面的间隔至少为1,我们有约束条件`y*(w·x+b) ≥ 1`。 通过最小化代价函数`J(θ)`,SVM可以找到一个最优的超平面,使得所有样本点的间隔最大化。这个优化过程通常通过拉格朗日乘数法和凸优化算法(如SMO算法)来解决,它不仅寻找最优解,还能处理线性不可分情况下的非线性分类问题,通过核函数将数据映射到高维空间,使得原本线性不可分的数据变得可分。 支持向量机(SVM)是一种强大的分类工具,通过寻找最大间隔的超平面来提高模型的泛化能力。它的核心概念包括几何间隔、代价函数和核函数,能够处理线性和非线性分类问题,并在实际应用中表现出良好的性能。
- 粉丝: 303
- 资源: 16
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助