SVM的基本思想

一、SVM的基本思想

SVM的基本思想是在样本的向量空间中寻找一个超平面,使得两类样本被分割在平面的两端。这样的平面理论上有无穷多个,但SVM的目标是找到一个最优的超平面,即两侧距离超平面最近的样本点到超平面的距离被最大化的超平面。这个最优的超平面所对应的判别模型即为支持向量机。距离超平面最近的样本点被称为支持向量。

二、线性可分情况下的SVM求解

  1. 问题转化

    对于线性可分的情况,SVM的求解可以转化为一个凸优化问题。具体来说,就是找到一个超平面(wx+b=0),使得两类样本点分别位于该平面的两侧,并且距离该平面最近的样本点到平面的距离最大化。

  2. 函数间隔和几何间隔

    • 函数间隔:对于给定的超平面和样本点,样本点到超平面的函数间隔定义为y(wx+b)。但是,函数间隔存在一个问题,即当w和b成倍增加时,函数值也会成倍增加,而超平面并没有改变。因此,需要引入几何间隔。
    • 几何间隔:几何间隔是样本点到超平面的真正距离。它通过对w进行约束(通常假设w的模为1),然后计算样本点到超平面的垂直距离来得到。
  3. 优化问题

    SVM的目标是最大化几何间隔,这可以转化为一个优化问题。具体来说,就是最小化w的模的平方(即||w||^2/2),同时满足所有样本点到超平面的函数间隔大于等于1的约束条件。这个优化问题可以表示为:

其中,n是样本点的数量,x_i和y_i分别是第i个样本点的特征向量和标签。

  1. 拉格朗日乘子法和对偶问题

    为了求解上述优化问题,可以使用拉格朗日乘子法将其转化为一个无约束的优化问题。具体来说,就是引入拉格朗日乘子α_i(i=1,2,...,n),然后构造拉格朗日函数:

接着,对拉格朗日函数分别求w和b的偏导数,并令其等于0,可以得到w和b的表达式(这些表达式中包含了α_i)。然后,将w和b的表达式代入拉格朗日函数,得到一个新的函数(即拉格朗日对偶函数),该函数只包含α_i作为变量。最后,求解这个新的函数的最大值(即对偶问题的解),就可以得到原始优化问题的解。

  1. KKT条件和支持向量

    在求解对偶问题的过程中,需要满足KKT条件(Karush-Kuhn-Tucker条件)。这些条件包括:

    • α_i≥0
    • y_i(wx_i+b)-1≥0
    • α_i(y_i(wx_i+b)-1)=0

    其中,第三个条件表明,只有当样本点位于间隔边界上(即y_i(wx_i+b)=1)时,对应的α_i才可能不为0。这些位于间隔边界上的样本点就是支持向量。

  2. 求解α_i

    通过对偶问题,可以求解出α_i的值。然后,利用α_i和样本点的特征向量x_i,可以求解出w和b的值(通过w的表达式和任意一个支持向量)。

  3. 决策函数

    最后,可以得到SVM的决策函数:f(x)=sign(wx+b)。对于新的样本点x,将其代入决策函数,就可以得到其所属的类别。

三、线性不可分情况下的SVM求解

对于线性不可分的情况,SVM通过引入核函数将样本点映射到高维空间,使得在高维空间中样本点变得线性可分。然后,在高维空间中应用线性可分情况下的SVM求解方法。

  1. 核函数

    核函数的作用是将原始输入空间中的样本点映射到新的特征空间(通常是高维空间)。常用的核函数包括线性核、多项式核、径向基函数(RBF)核(也称为高斯核)等。选择合适的核函数对于SVM的性能至关重要。

  2. 映射后的优化问题

    在引入核函数后,原始的优化问题中的x_i和x_j(表示两个样本点的特征向量)需要被替换为φ(x_i)和φ(x_j)(表示映射后的特征向量)。然后,在新的特征空间中应用线性可分情况下的SVM求解方法。

  3. 软间隔和松弛变量

    对于线性不可分的情况,通常允许某些样本点被错误分类(即位于间隔边界以内或另一侧)。这可以通过引入软间隔和松弛变量来实现。具体来说,就是在优化问题中添加一个惩罚项(即松弛变量的平方和乘以一个正数C),以允许一定的分类错误。同时,约束条件也相应地进行调整(即允许函数间隔小于1)。

  4. 求解过程

    软间隔情况下的SVM求解过程与线性可分情况类似,但需要对拉格朗日函数、KKT条件等进行相应的调整。最终,可以求解出α_i、w和b的值,并得到决策函数。

相关推荐
锋行天下8 分钟前
LangGraph 1.2+ 新特性:set_node_defaults,批量统一节点策略
人工智能
找方案11 分钟前
AI+人力资源:AI招聘面试的兴起与争议
人工智能·面试·职场和发展
日常通勤穿搭12 分钟前
2026 电商 AI 作图工具推荐|淘宝抖音跨境商品主图 AI 生图测评
人工智能·aigc·ai工具·电商美工
ZhengEnCi18 分钟前
L2A-一个域名如何访问多台云服务器-子域名、路径前缀与Nginx反向代理选型指南
linux·人工智能
2601_9637491026 分钟前
越华环保集团污水站曝气系统边缘闭环控制架构与能耗优化实现
人工智能·架构
工业涂料百问28 分钟前
【生产施工】系列(六)工业涂料固化方式怎么选?自然干 / UV / 电子束原理与选型实战
人工智能
葡萄城技术团队1 小时前
活字格 12.1 新特性解密:禁用自动回复后,AI 对话单元格也能流式输出了
人工智能
东风破_1 小时前
从 RAG 到 Agentic RAG:第一步,让模型决定「要不要检索」
人工智能
火山引擎开发者社区1 小时前
一图看懂 ADrive 跨产品协作实践:文件通了,Agent 就通了
人工智能
蒲公英内测分发1 小时前
App 更新一次就换一个二维码?智能硬件配套 App 的版本和下载入口怎么管理
人工智能·测试工具·智能家居·智能硬件