SVM支持向量机-拉格朗日,对偶算法的初解

本文详细介绍了SVM(支持向量机)的原理,重点讲解了如何通过拉格朗日对偶算法实现线性可分SVM的硬间隔最大化。内容包括SVM的目标是寻找最大化间隔的超平面,确保样本点远离超平面,以及如何处理线性不可分情况下的软间隔最大化。通过对拉格朗日函数的求解,得到对偶问题,并讨论了核函数的作用,为非线性分类问题提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

许多地方得SVM讲得都很晦涩,不容易理解,最近看到一篇不错的博文写得很好,同时加上自己的理解,重新梳理一下知识要点

http://blog.youkuaiyun.com/zouxy09/article/details/17291543


一、引入

SVM是个分类器。我们知道,分类的目的是学会一个分类函数或分类模型(或者叫做分类器),该模型能把数据库中的数据项映射到给定类别中的某一个,从而可以用于预测未知类别。

对于用于分类的支持向量机,它是个二分类的分类模型。也就是说,给定一个包含正例和反例(正样本点和负样本点)的样本集合,支持向量机的目的是寻找一个超平面来对样本进行分割,把样本中的正例和反例用超平面分开,但是不是简单地分看,其原则是使正例和反例之间的间隔最大。学习的目标是在特征空间中找到一个分类超平面wx+b=0,分类面由法向量w和截距b决定。分类超平面将特征空间划分两部分,一部分是正类,一部分是负类。法向量指向的一侧是正类,另一侧为负类。这里有两点需要注意,类别为(+1,-1)而之前的逻辑回归算法中多为(+1,0)这里没有什么特别的原因,主要是计算的方便,还有超平面没有限制多少维,只要比数据维度低一维就可以了。

先给出一个简单的例子:

一看就知道黑线分割得最好,但是如果上升维数,就没那么容易理解了,所以需要数学建模

二、线性可分SVM与硬间隔最大化

SVM试图寻找一个超平面来对样本进行分割,把样本中的正例和反例用超平面分开,但是不是很敷衍地简单的分开,而是尽最大的努力使正例和反例之间的间隔margin最大。这样它的分类结果才更加可信,而且对于未知的新样本才有很好的分类预测能力


  我们的目标是寻找一个超平面,使得离超平面比较近的点能有更大的间距。也就是我们不考虑所有的点都必须远离超平面,我们关心求得的超平面能够让所有点中离它最近的点具有最大间距。而距离超平面最近的点就是支持向量

      假设我们有N个训练样本{(x1, y1),(x2, y2), …, (xN, yN)},x是d维向量,而yi∊{+1, -1}是样本的标签,分别代表两个不同的类。

      这里我们需要用这些样本去训练学习一个线性分类器(超平面):f(x)=sgn(wT+ b),也就是wT+ b大于0的时候,输出+1,小于0的时候,输出-1。sgn()表示取符号。而g(x) =wT+ b=0就是我们要寻找的分类超平面,如上图所示。刚才说我们要怎么做了?我们需要这个超平面最大的分隔这两类。也就是这个分类面到这两个类的最近的那个样本的距离相同,而且最大。为了更好的说明,我们在上图中找到两个和这个超平面平行和距离相等的超平面:H1: y = wT+ b=+1 和 H2: y = wT+ b=-1。

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值