零基础学SVM—Support Vector Machine系列之一

合集下载

支持向量机的基本原理

支持向量机的基本原理

支持向量机的基本原理
支持向量机(Support Vector Machine, SVM)是一种二分类模型,其基本原理是找到一个最优的超平面来进行数据的划分。

其基本思想是将样本空间映射到高维特征空间,找到一个超平面使得正负样本之间的间隔最大化,从而实现分类。

具体来说,SVM的基本原理包括以下几个步骤:
1. 寻找最优超平面:将样本空间映射到高维特征空间,使得样本在特征空间中线性可分。

然后寻找一个超平面来最大化两个不同类别样本的间隔(也称为“分类间隔”)。

2. 构建优化问题:SVM通过解决一个凸二次规划问题来求解最优超平面。

该优化问题的目标是最大化分类间隔,同时限制样本的分类正确性。

3. 核函数技巧:在实际应用中,数据通常是非线性可分的。

通过引入核函数的技巧,可以将非线性问题转化为高维或无限维的线性问题。

常用的核函数有线性核、多项式核、高斯核等。

4. 寻找支持向量:在求解优化问题时,只有一部分样本点对于最优超平面的确定起到决定性作用,这些样本点被称为“支持向量”。

支持向量决定了超平面的位置。

5. 分类决策函数:在得到最优超平面后,可以通过计算样本点到超平面的距离来进行分类。

对于新的样本点,根据其距离超平面的远近来判断其所属类别。

支持向量机的基本原理可以简单概括为在高维特征空间中找到一个最优超平面,使得样本的分类间隔最大化。

通过引入核函数的技巧,SVM也可以处理非线性可分的问题。

支持向量机具有理论基础牢固、分类效果好等优点,在实际应用中得到了广泛的应用。

《支持向量机SVM》课件

《支持向量机SVM》课件

多分类SVM
总结词
多类分类支持向量机可以使用不同的核函数和策略来解决多 类分类问题。
详细描述
多类分类支持向量机可以使用不同的核函数和策略来解决多 类分类问题。常用的核函数有线性核、多项式核和RBF核等 。此外,一些集成学习技术也可以与多类分类SVM结合使用 ,以提高分类性能和鲁棒性。
03
SVM的训练与优化
细描述
对于非线性数据,线性不可分SVM通 过引入核函数来解决分类问题。核函 数可以将数据映射到更高维空间,使 得数据在更高维空间中线性可分。常 用的核函数有线性核、多项式核和径 向基函数(RBF)。
通过调整惩罚参数C和核函数参数, 可以控制模型的复杂度和过拟合程度 。
详细描述
多分类支持向量机可以通过两种策略进行扩展:一对一(OAO)和一对多(OAA)。 在OAO策略中,对于n个类别的多分类问题,需要构建n(n-1)/2个二分类器,每个二分 类器处理两个类别的分类问题。在OAA策略中,对于n个类别的多分类问题,需要构建
n个二分类器,每个二分类器处理一个类别与剩余类别之间的分类问题。
鲁棒性高
SVM对噪声和异常值具有 一定的鲁棒性,这使得它 在许多实际应用中表现良 好。
SVM的缺点
计算复杂度高
对于大规模数据集,SVM的训练时间可能会很长,因为其需要解决一 个二次规划问题。
对参数敏感
SVM的性能对参数的选择非常敏感,例如惩罚因子和核函数参数等, 需要仔细调整。
对非线性问题处理有限
SVM的优点
分类效果好
SVM在许多分类任务中表 现出了优秀的性能,尤其 在处理高维数据和解决非 线性问题上。
对异常值不敏感
SVM在训练过程中会寻找 一个最优超平面,使得该 平面的两侧的类别距离最 大化,这使得SVM对异常 值的影响较小。

支持向量机原理SVMPPT课件

支持向量机原理SVMPPT课件

回归分析
除了分类问题,SVM也可以用于 回归分析,如预测股票价格、预 测天气等。通过训练模型,SVM
能够预测未知数据的输出值。
数据降维
SVM还可以用于数据降维,通过 找到数据的低维表示,降低数据
的复杂性,便于分析和理解。
02 支持向量机的基本原理
线性可分与不可分数据
线性可分数据
在二维空间中,如果存在一条直线, 使得该直线能够将两类样本完全分开 ,则称这些数据为线性可分数据。
支持向量机原理 svmppt课件
目录
CONTENTS
• 引言 • 支持向量机的基本原理 • 支持向量机的数学模型 • 支持向量机的优化问题 • 支持向量机的核函数 • 支持向量机的训练和预测 • 支持向量机的应用案例 • 总结与展望
01 引言
什么是支持向量机
定义
支持向量机(Support Vector Machine,简称SVM)是一种监督学习算法, 用于分类和回归分析。它通过找到一个超平面来分隔数据集,使得分隔后的两 类数据点到该平面的距离最远。
支持向量机的优势和局限性
01
对大规模数据集效 率较低
对于大规模数据集,支持向量机 可能需要较长时间进行训练和预 测。
02
核函数选择和参数 调整
核函数的选择和参数调整对支持 向量机的性能有很大影响,需要 仔细选择和调整。
03
对多分类问题处理 不够灵活
对于多分类问题,支持向量机通 常需要采用一对一或一对多的策 略进行处理,可能不够灵活。
图像识别
• 总结词:支持向量机用于图像识别,通过对图像特征的提取和分类,实现图像 的自动识别和分类。
• 详细描述:支持向量机在图像识别中发挥了重要作用,通过对图像特征的提取 和选择,将图像数据映射到高维空间,然后利用分类器将相似的图像归为同一 类别,不相似图像归为不同类别。

处理非线性分类和回归的新方法—支持向量机方法(SVM)

处理非线性分类和回归的新方法—支持向量机方法(SVM)
处理非线性分类和回 归的新方法
—支持向量机方法(SVM)
(Support Vector Machine)
支持向量机方法(SVM) 简介
(Support Vector Machine)
机器学习问题的提法
利用有限数量的观测来 寻求待求的依赖关系
模式识别(分类) 回归分析(回归) 概率密度估计
SVM应用于 降水分类预报的试验
四川盆地面雨量的 SVM建模与预报检验
预报对象: 由于单站降水的不确定性较 大,因此,采用面雨量做为预报 对象。 考虑四川盆地降雨的气候特点, 将四川省内盆地部分划分为三个 片区: 盆地西北部(1)、 盆地东北部(2)、 盆地西南部(3),
分别作为预报对象进行试验
x
i
) exp r
x

x
2 i

i
。要构造(3)式的决策规则,就需要估计: 参数r的值;中心 i 的数目N;描述各中心的向量xx ; 参数 i的值。
这四种类型的参数都是通过控制泛函的参数来最小化测试错误概率的界确定。
将预报对象进行分类
我们关注的是大于15mm降水 的面雨量,因此把面雨量 大于或等于15mm的归为 +1类, 小于15mm的归为 -1类。
资料长度: 1990—2000年4—9月 共11年的历史资料
建模方式:
确定核函数 归一化因子
将预报对象进行分类
将预报因子和预报对象进行整理,分为三部分: 训练集、测试集、检验集 选取参数建立SVM模型
确定核函数
我们以径向基函数(满足Mercer定理)做为SVM中内积的回旋函数建立推 理模型。径向基函数采用下面的决策规则集合: N (3)
( x1 ,
y ),( xl ,

支持向量机原理

支持向量机原理

支持向量机原理支持向量机(Support Vector Machine,SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器。

支持向量机的学习策略是间隔最大化,可形式化为一个求解凸二次规划问题。

SVM是一种分类算法,它的基本原理是找到一个超平面,将不同类别的数据分隔开来,使得两个类别的数据点到超平面的距离最大化。

支持向量机的原理主要包括间隔、支持向量、对偶问题和核函数等几个方面。

首先,我们来看支持向量机的间隔。

在支持向量机中,间隔是指两个异类样本最近的距离,而支持向量机的目标就是要找到一个超平面,使得所有样本点到这个超平面的距离最大化。

这个距离就是间隔,而支持向量机的学习策略就是要最大化这个间隔。

其次,支持向量机的支持向量。

支持向量是指离超平面最近的那些点,它们对超平面的位置有影响。

支持向量决定了最终的超平面的位置,而其他的点对超平面的位置没有影响。

因此,支持向量是支持向量机模型的关键。

然后,我们来看支持向量机的对偶问题。

支持向量机的原始问题是一个凸二次规划问题,可以通过求解对偶问题来得到最终的分类超平面。

通过对偶问题,我们可以得到支持向量的系数,从而得到最终的分类超平面。

最后,我们来看支持向量机的核函数。

在实际应用中,很多时候样本不是线性可分的,这时就需要用到核函数。

核函数可以将原始特征空间映射到一个更高维的特征空间,使得样本在这个高维特征空间中线性可分。

常用的核函数有线性核、多项式核和高斯核等。

综上所述,支持向量机是一种非常强大的分类算法,它通过最大化间隔来得到最优的分类超平面,支持向量决定了最终的超平面的位置,对偶问题可以通过求解对偶问题来得到最终的分类超平面,而核函数可以处理非线性可分的情况。

支持向量机在实际应用中有着广泛的应用,是一种非常重要的机器学习算法。

希望本文对支持向量机的原理有所帮助,让读者对支持向量机有更深入的理解。

支持向量机作为一种经典的机器学习算法,有着重要的理论意义和实际应用价值。

支持向量机算法的原理

支持向量机算法的原理

支持向量机算法的原理支持向量机(Support Vector Machine,SVM)是一种广泛应用于分类和回归问题的机器学习算法。

它的原理基于统计学习理论中的结构风险最小化原则,通过寻找一个最优的超平面来实现数据的分类。

在SVM中,数据被看作是高维空间中的点,每个点都有一个与之对应的特征向量。

这些特征向量的维度取决于特征的数量。

SVM的目标是找到一个超平面,使得其能够尽可能地将不同类别的数据点分隔开。

超平面是一个d维空间中的d-1维子空间,其中d为特征向量的维度。

在二维空间中,超平面即为一条直线,可以完全将两类数据点分开。

在更高维的空间中,超平面可以是一个曲面或者是一个超平面的组合。

为了找到最优的超平面,SVM引入了支持向量的概念。

支持向量是离超平面最近的数据点,它们决定了超平面的位置和方向。

通过最大化支持向量到超平面的距离,SVM能够找到一个最优的超平面,使得分类误差最小化。

SVM的核心思想是将低维空间中的数据映射到高维空间中,使得原本线性不可分的数据变得线性可分。

这一映射是通过核函数实现的。

核函数能够计算两个数据点在高维空间中的内积,从而避免了显式地进行高维空间的计算。

常用的核函数有线性核、多项式核和高斯核等。

SVM的训练过程可以简化为一个凸优化问题。

通过最小化结构风险函数,SVM能够找到一个最优的超平面,使得分类误差最小化。

结构风险函数由经验风险项和正则化项组成。

经验风险项衡量了分类器在训练集上的错误率,正则化项则防止过拟合。

SVM的优点是具有较好的泛化性能和较强的鲁棒性。

由于最大化支持向量到超平面的距离,SVM对异常值不敏感,能够有效地处理噪声数据。

此外,SVM还可以通过引入松弛变量来处理非线性可分的问题。

然而,SVM也存在一些限制。

首先,SVM对于大规模数据集的训练时间较长,且对内存消耗较大。

其次,选择合适的核函数和参数是一个挑战性的问题,不同的核函数和参数可能会导致不同的分类结果。

支持向量机

支持向量机
2、不管是离线训练还是在线训练只能获得真酒样本,假酒 样本不能获取到或者说种类无穷,实际中可能出现各种“假 酒”,所以也无法判定为简单的真假二类分类问题。
结 论: 唯一能确定得到的是真酒样本,故确定为单类分类问题,并 采用多个单类分类器分解问题的策略。
单类分类器分类:
基于概率密度的方法(Density-based classifiers) 基于神经网络的方法(ANN-based classifiers) 基于支持域的方法(Domain-based classifiers) 基于聚类的方法(Clustering-based classifiers)
软件包功能:
支持多个平台,可以在windows(命令行环境)、java、matlab 中运行,其中包括的分类器有 C-SVC 、nu-SVC、one-class SVM、 epsilon-SVR、nu-SVR,可以进行分类或者回归以及参数优选。
基本思想:通过对目标数据的学习,形成一个围绕目标的边界或区域, 如超球面、超平面等,并最小化数据支撑域的体积,已达到错误接受 率最小的目的。
优 点:由于借鉴了SVM的最大间隔理论,因而适合处理小样本、 高维和存在噪声数据的单类分类问题,代表方法有One-class SVM和 SVDD(Support Vector Data Description).
One-class SVM
算法基本原理:
给定训练数据集D,将其从RN到某高维特征空间 的非线性映射 使得
(Xi ) ,在高维空间建立一个超平面 W (x) 0 将映射样本与原点以间
隔 分开,其中w为超平面的法向量,为超平面的截距,为了使超平面尽可能
远离原点,最大化原点到目标数据间的欧氏距离 / W 来寻找最优超平面。经 过映射后的OCSVM在二维空间中寻找最优超平面。

支持向量机入门PPT

支持向量机入门PPT

支持向量机
-SVR
-不敏感损失函数 c(x, y, f (x)) | y f (x) | max{0,| y f (x) |
其有一个特点:对样本点来说,存在着一个不为
目标函数提供任何任何损失值的区域,即 -带.
-SVR
在 -SVR中,需要事先确定 -不敏感损失函数 中的参数 .然而在某些情况下选择合适的 并不是一件容易的事情. -SVR能够自动计算 -SVR中的.
x (x1,...xl) (x) (1(x),..., n(x)) 将输入空间X映射到一个新的空间F ={(x) | x X } 例如: (x1, x2) (x1, x2) (x12 , x22 , x1x2)
支持向量机
K(xi, yi) ((xi) ( yi))
f (x) sgn{
折衷考虑最少错分样本和最大分类间隔,就得到广义 最优分类面,其中,C>0是一个常数,它控制对错分 样本惩罚的程度。
支持向量机
• 上节所得到的最优分类函数为:
f (x) sgn{w* x b*} sgn{
l
*
i1 i
yi
(xi
x)
b*}
• 该式只包含待分类样本与训练样本中的支持向量的内 积 运算,可见,要解决一个特征空间中的最优线性分 类问题,我们只需要知道这个空间中的内积运算即可。
图中, 方形点和圆形点代表两类样 本, H 为分类线,H1, H2分别为过 各类中离分类线最近的样本且平行 于分类线的直线, 它们之间的距离 叫做分类间隔(margin)。
所谓最优分类线就是要求分类线不 但能将两类正确分开(训练错误率 为0),而且使分类间隔最大.
推广到高维空间,最优分类线就变 为最优分类面。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

零基础学SVM—Support Vector Machine系列之一本文原作者耳东陈,本文原载于作者的知乎文章。

AI 研习社已获得转载授权。

如果你是一名模式识别专业的研究生,又或者你是机器学习爱好者,SVM是一个你避不开的问题。

如果你只是有一堆数据需要SVM帮你处理一下,那么无论是Matlab的SVM工具箱,LIBSVM还是python框架下的SciKit Learn都可以提供方便快捷的解决方案。

但如果你要追求的不仅仅是会用,还希望挑战一下“理解”这个层次,那么你就需要面对一大堆你可能从来没听过的名词,比如:非线性约束条件下的最优化、KKT条件、拉格朗日对偶、最大间隔、最优下界、核函数等等。

这些名词往往会跟随一大堆天书一般的公式。

如果你稍微有一点数学基础,那么单个公式你可能看得明白,但是怎么从一个公式跳到另一个公式就让人十分费解了,而最让人糊涂的其实并不是公式推导,而是如果把这些公式和你脑子里空间构想联系起来。

我本人就是上述问题的受害者之一。

我翻阅了很多关于SVM的书籍和资料,但没有找到一份材料能够在公式推导、理论介绍,系统分析、变量说明、代数和几何意义的解释等方面完整地对SVM加以分析和说明的。

换言之,对于普通的一年级非数学专业的研究生而言,要想看懂SVM需要搜集很多资料,然后对照阅读和深入思考,才可能比较透彻地理解SVM算法。

由于我本人也在东北大学教授面向一年级硕士研究生的《模式识别技术与应用》课程,因此希望能总结出一份相对完整、简单和透彻的关于SVM算法的介绍文字,以便学生能够快速准确地理解SVM算法。

以下我会分为四个步骤对最基础的线性SVM问题加以介绍,分别是1)问题原型,2)数学模型,3)最优化求解,4)几何解释。

我尽可能用最简单的语言和最基本的数学知识对上述问题进行介绍,希望能对困惑于SVM算法的学生有所帮助。

SVM算法要解决什么问题SVM的全称是Support Vector Machine,即支持向量机,主要用于解决模式识别领域中的数据分类问题,属于有监督学习算法的一种。

SVM要解决的问题可以用一个经典的二分类问题加以描述。

如图1所示,红色和蓝色的二维数据点显然是可以被一条直线分开的,在模式识别领域称为线性可分问题。

然而将两类数据点分开的直线显然不止一条。

图1(b)和(c)分别给出了A、B两种不同的分类方案,其中黑色实线为分界线,术语称为“决策面”。

每个决策面对应了一个线性分类器。

虽然在目前的数据上看,这两个分类器的分类结果是一样的,但如果考虑潜在的其他数据,则两者的分类性能是有差别的。

图1 二分类问题描述SVM算法认为图1中的分类器A在性能上优于分类器B,其依据是A的分类间隔比B要大。

这里涉及到第一个SVM独有的概念“分类间隔”。

在保证决策面方向不变且不会出现错分样本的情况下移动决策面,会在原来的决策面两侧找到两个极限位置(越过该位置就会产生错分现象),如虚线所示。

虚线的位置由决策面的方向和距离原决策面最近的几个样本的位置决定。

而这两条平行虚线正中间的分界线就是在保持当前决策面方向不变的前提下的最优决策面。

两条虚线之间的垂直距离就是这个最优决策面对应的分类间隔。

显然每一个可能把数据集正确分开的方向都有一个最优决策面(有些方向无论如何移动决策面的位置也不可能将两类样本完全分开),而不同方向的最优决策面的分类间隔通常是不同的,那个具有“最大间隔”的决策面就是SVM要寻找的最优解。

而这个真正的最优解对应的两侧虚线所穿过的样本点,就是SVM中的支持样本点,称为“支持向量”。

对于图1中的数据,A决策面就是SVM寻找的最优解,而相应的三个位于虚线上的样本点在坐标系中对应的向量就叫做支持向量。

从表面上看,我们优化的对象似乎是这个决策面的方向和位置。

但实际上最优决策面的方向和位置完全取决于选择哪些样本作为支持向量。

而在经过漫长的公式推导后,你最终会发现,其实与线性决策面的方向和位置直接相关的参数都会被约减掉,最终结果只取决于样本点的选择结果。

到这里,我们明确了SVM 算法要解决的是一个最优分类器的设计问题。

既然叫作最优分类器,其本质必然是个最优化问题。

所以,接下来我们要讨论的就是如何把SVM变成用数学语言描述的最优化问题模型,这就是我们在第二部分要讲的“线性SVM算法的数学建模”。

*关于“决策面”,为什么叫决策面,而不是决策线?好吧,在图1里,样本是二维空间中的点,也就是数据的维度是2,因此1维的直线可以分开它们。

但是在更加一般的情况下,样本点的维度是n,则将它们分开的决策面的维度就是n-1维的超平面(可以想象一下3维空间中的点集被平面分开),所以叫“决策面”更加具有普适性,或者你可以认为直线是决策面的一个特例。

线性SVM算法的数学建模一个最优化问题通常有两个最基本的因素:1)目标函数,也就是你希望什么东西的什么指标达到最好;2)优化对象,你期望通过改变哪些因素来使你的目标函数达到最优。

在线性SVM算法中,目标函数显然就是那个“分类间隔”,而优化对象则是决策面。

所以要对SVM问题进行数学建模,首先要对上述两个对象(“分类间隔”和“决策面”)进行数学描述。

按照一般的思维习惯,我们先描述决策面。

2.1决策面方程(请注意,以下的描述对于线性代数及格的同学可能显得比较啰嗦,但请你们照顾一下用高数课治疗失眠的同学们。

)请你暂时不要纠结于n维空间中的n-1维超平面这种超出正常人想象力的情景。

我们就老老实实地看看二维空间中的一根直线,我们从初中就开始学习的直线方程形式很简单。

现在我们做个小小的改变,让原来的x轴变成x?轴,y变成x?轴,于是公式(2.1)中的直线方程会变成下面的样子公式(2.3)的向量形式可以写成考虑到我们在等式两边乘上任何实数都不会改变等式的成立,所以我们可以写出一个更加一般的向量表达形式:看到变量ω、x略显粗壮的身体了吗?他们是黑体,表示变量是个向量,,。

一般我们提到向量的时候,都默认他们是个列向量,所以我在方括号后面加上了上标T,表示转置(我知道我真的很啰嗦,但是关于“零基础”三个字,我是认真的。

),它可以帮忙把行向量竖过来变成列向量,所以在公式(2.5)里面ω后面的转置符号T,会把列向量又转回到行向量。

这样一个行向量和一个列向量x就可快快乐乐的按照矩阵乘法的方式结合,变成一个标量,然后好跟后面的标量γ相加后相互抵消变成0。

就着公式(2.5),我们再稍稍尝试深入一点。

那就是探寻一下向量点积,和标量γ的几何意义是什么。

让我们回到公式(2.4),对比公式(2.5),可以发现此时的。

然后再去看公式(2.2),还记得那条我们熟悉的直线方程中的a的几何意义吗?对的,那是直线的斜率。

如果我们构造一个向量,它应该跟我们的公式(2.2)描述的直线平行。

然后我们求一下两个向量的点积,你会惊喜地发现结果是0。

我们管这种现象叫作“两个向量相互正交”。

通俗点说就是两个向量相互垂直。

当然,你也可以在草稿纸上自己画出这两个向量,比如让,你会发现在第一象限,与横轴夹角为60°,而在第四象限与横轴夹角为30°,所以很显然他们两者的夹角为90°。

你现在是不是已经忘了我们讨论正交或者垂直的目的是什么了?那么请把你的思维从坐标系上抽出来,回到决策面方程上来。

我是想告诉你向量跟直线是相互垂直的,也就是说控制了直线的方向。

另外,还记得小时候我们学过的那个叫做截距的名词吗?对了,γ就是截距,它控制了直线的位置。

然后,在本小节的末尾,我冒昧地提示一下,在n维空间中n-1维的超平面的方程形式也是公式(2.5)的样子,只不过向量ω、x的维度从原来的2维变成了n维。

如果你还是想不出来超平面的样子,也很正常。

那么就请你始终记住平面上它们的样子也足够了。

到这里,我们花了很多篇幅描述一个很简单的超平面方程(其实只是个直线方程),这里真正有价值的是这个控制方向的参数ω。

接下来,你会有很长一段时间要思考它到底是个什么东西,对于SVM产生了怎样的影响。

2.2 分类“间隔”的计算模型我们在第一章里介绍过分类间隔的定义及其直观的几何意义。

间隔的大小实际上就是支持向量对应的样本点到决策面的距离的二倍,如图2所示。

图2 分类间隔计算所以分类间隔计算似乎相当简单,无非就是点到直线的距离公式。

如果你想要回忆高中老师在黑板上推导的过程,可以随便在百度文库里搜索关键词“点到直线距离推导公式”,你会得到至少6、7种推导方法。

但这里,请原谅我给出一个简单的公式如下:这里||ω||是向量ω的模,表示在空间中向量的长度,就是支持向量样本点的坐标。

ω,γ就是决策面方程的参数。

而追求W的最大化也就是寻找d的最大化。

看起来我们已经找到了目标函数的数学形式。

但问题当然不会这么简单,我们还需要面对一连串令人头疼的麻烦。

2.3 约束条件接着2.2节的结尾,我们讨论一下究竟还有哪些麻烦没有解决:1.并不是所有的方向都存在能够实现100%正确分类的决策面,我们如何判断一条直线是否能够将所有的样本点都正确分类?2.即便找到了正确的决策面方向,还要注意决策面的位置应该在间隔区域的中轴线上,所以用来确定决策面位置的截距γ也不能自由的优化,而是受到决策面方向和样本点分布的约束。

3.即便取到了合适的方向和截距,公式(2.6)里面的x不是随随便便的一个样本点,而是支持向量对应的样本点。

对于一个给定的决策面,我们该如何找到对应的支持向量?以上三条麻烦的本质是“约束条件”,也就是说我们要优化的变量的取值范围受到了限制和约束。

事实上约束条件一直是最优化问题里最让人头疼的东西。

但既然我们已经论证了这些约束条件确实存在,就不得不用数学语言对他们进行描述。

尽管上面看起来是3条约束,但SVM算法通过一些巧妙的小技巧,将这三条约束条件融合在了一个不等式里面。

我们首先考虑一个决策面是否能够将所有的样本都正确分类的约束。

图2中的样本点分成两类(红色和蓝色),我们为每个样本点加上一个类别标签:如果我们的决策面方程能够完全正确地对图2中的样本点进行分类,就会满足下面的公式如果我们要求再高一点,假设决策面正好处于间隔区域的中轴线上,并且相应的支持向量对应的样本点到决策面的距离为d,那么公式(2.8)就可以进一步写成:符号是“对于所有满足条件的” 的缩写。

我们对公式(2.9)中的两个不等式的左右两边除上d,就可得到:其中和就当成一条直线的方向矢量和截距。

你会发现事情没有发生任何变化,因为直线和直线其实是一条直线。

现在,现在让我忘记原来的直线方程参数ω和γ,我们可以把参数和重新起个名字,就叫它们ω和γ。

我们可以直接说:“对于存在分类间隔的两类样本点,我们一定可以找到一些决策面,使其对于所有的样本点均满足下面的条件:”公式(2.11)可以认为是SVM优化问题的约束条件的基本描述。

相关文档
最新文档