SVM(支持向量机)

SVM(支持向量机)


原理

SVM的核心目标是找到一个最大化分类间隔的超平面,将不同类别的样本分隔开。其原理可分为三部分:

  1. 线性可分情况

    • 通过硬间隔最大化确定超平面,确保所有样本正确分类且间隔最大
    • 间隔定义为超平面到最近样本(支持向量)的距离,优化目标为最小化权重向量的范数,同时满足约束条件。
  2. 近似线性可分(软间隔)

    • 引入松弛变量 允许部分样本违反间隔约束,通过调整惩罚参数C平衡分类精度与模型复杂度。
  3. 非线性分类(核技巧)

    • 通过核函数将数据映射到高维空间,使其线性可分。例如,RBF核(径向基函数)通过计算样本间相似性实现非线性分割。

关键概念
  1. 支持向量

    • 定义:距离超平面最近的样本点,决定了超平面的位置和方向。
    • 作用:仅支持向量参与模型计算,赋予SVM稀疏性和高效性。
  2. 对偶问题

    • 原始问题转化为对偶问题,通过拉格朗日乘子法简化求解,避免直接处理高维特征空间的内积计算。
    • 优势:便于引入核技巧,且对偶问题的解直接关联支持向量。
  3. 核函数

    • RBF核(高斯核)K(x,y) = exp(-γ||x-y||²),适合处理复杂非线性问题,参数γ控制样本影响范围。
    • 多项式核K(x,y) = (γx·y + r)^d,通过阶数d控制映射维度,适用于中等复杂度的非线性问题。

损失函数:Hinge Loss

公式:L(y, f(x)) = max(0, 1 - y·f(x))

  • 作用:惩罚误分类和间隔不足的样本,使得模型学习更大的分类间隔。
  • 特性:在正确分类且间隔足够时为0,误分类时线性增长,保证解的稀疏性(仅支持向量贡献损失)。

常见问题解答

Q1: 为什么SVM对缺失数据敏感?

  • 原因:SVM依赖支持向量计算样本间距离或核矩阵,缺失值会破坏特征空间的几何结构,导致距离计算偏差。
  • 影响:若缺失值出现在支持向量中,可能显著改变超平面位置,降低模型鲁棒性。

Q2: SVM如何解决多分类?

  • OvO(One-vs-One) :构建k(k-1)/2个二分类器,通过投票决定类别,适合类别数较少的场景。
  • 直接多类SVM:通过结构化SVM或修改优化目标直接处理多分类,但计算复杂度较高。
相关推荐
哲讯智能科技3 分钟前
【无标题】威灏光电&哲讯科技MES项目启动会圆满举行
人工智能
__Benco3 分钟前
OpenHarmony平台驱动开发(十七),UART
人工智能·驱动开发·harmonyos
小oo呆15 分钟前
【自然语言处理与大模型】Windows安装RAGFlow并接入本地Ollama模型
人工智能·自然语言处理
开放知识图谱18 分钟前
论文浅尝 | HOLMES:面向大语言模型多跳问答的超关系知识图谱方法(ACL2024)
人工智能·语言模型·自然语言处理·知识图谱
weixin_4445793020 分钟前
基于Llama3的开发应用(二):大语言模型的工业部署
人工智能·语言模型·自然语言处理
一点.点23 分钟前
自然语言处理的简单介绍
人工智能·深度学习·自然语言处理
CodeJourney.1 小时前
基于MATLAB的生物量数据拟合模型研究
人工智能·爬虫·算法·matlab·信息可视化
中电金信1 小时前
中电金信参编的国家标准《信息技术 中间件 消息中间件技术要求》正式发布
人工智能
胡耀超1 小时前
18.自动化生成知识图谱的多维度质量评估方法论
人工智能·python·自动化·知识图谱·数据科学·逻辑学·质量评估
虾球xz1 小时前
游戏引擎学习第290天:完成分离渲染
c++·人工智能·学习·游戏引擎