支持向量机(Support Vector Machine,简称SVM)是一种监督学习模型,主要用于分类和回归分析

SVM的基本思想是寻找一个决策边界或超平面,使得两类样本之间的间隔最大化

这个间隔被定义为支持向量到超平面的最短距离,而支持向量就是那些恰好位于间隔边缘上的训练样本点。

线性可分情况下的SVM

假设我们有一组训练数据 支持向量机(Support Vector Machine,SVM)_支持向量机 ,其中 支持向量机(Support Vector Machine,SVM)_算法_02输入特征向量支持向量机(Support Vector Machine,SVM)_特征空间_03对应的输出标签支持向量机(Support Vector Machine,SVM)_特征空间_04支持向量机(Support Vector Machine,SVM)_支持向量机_05

SVM试图找到一个最优超平面 支持向量机(Support Vector Machine,SVM)_算法_06 来区分这两类数据,其中 支持向量机(Support Vector Machine,SVM)_算法_07权重向量支持向量机(Support Vector Machine,SVM)_机器学习_08偏置项。

最大间隔超平面公式

为了找到最大间隔超平面,我们需要满足以下条件:
支持向量机(Support Vector Machine,SVM)_算法_09

这表示对于所有的训练样本,它们都必须正确分类并且与决策边界保持至少单位距离。

这个距离由 支持向量机(Support Vector Machine,SVM)_支持向量机_10 给出,因此我们的目标是最小化 支持向量机(Support Vector Machine,SVM)_支持向量机_11

公式解释
  • 支持向量机(Support Vector Machine,SVM)_核函数_12
  • 支持向量机(Support Vector Machine,SVM)_机器学习_13
  • 支持向量机(Support Vector Machine,SVM)_机器学习_14 :第 支持向量机(Support Vector Machine,SVM)_特征空间_15
  • 支持向量机(Support Vector Machine,SVM)_算法_16 :第 支持向量机(Support Vector Machine,SVM)_特征空间_15 个训练样本的标签,取值为 支持向量机(Support Vector Machine,SVM)_核函数_18支持向量机(Support Vector Machine,SVM)_核函数_19
  • 支持向量机(Support Vector Machine,SVM)_算法_20

软间隔SVM

在实际问题中,数据可能不是完全线性可分的,此时可以允许一些样本点跨越决策边界,这就是所谓的软间隔SVM。

为此,我们引入松弛变量 支持向量机(Support Vector Machine,SVM)_算法_21惩罚参数 支持向量机(Support Vector Machine,SVM)_机器学习_22 ,并最小化以下目标函数:
支持向量机(Support Vector Machine,SVM)_算法_23
同时满足:
支持向量机(Support Vector Machine,SVM)_核函数_24
支持向量机(Support Vector Machine,SVM)_机器学习_25

核技巧

数据不是线性可分时,SVM通过核函数(Kernel Function)将原始低维特征空间映射到高维特征空间,在高维空间中找到一个线性超平面来实现分类。

常用的核函数包括多项式核、高斯核(RBF核)、Sigmoid核等。

核函数公式

支持向量机(Support Vector Machine,SVM)_核函数_26

其中, 支持向量机(Support Vector Machine,SVM)_支持向量机_27 表示从原始特征空间到高维特征空间的映射函数支持向量机(Support Vector Machine,SVM)_支持向量机_28核函数,它直接计算两个向量在高维空间中的内积。

拉格朗日乘子法

SVM的优化问题通常通过拉格朗日乘子法转化为对偶问题来解决,对偶问题的形式为:
支持向量机(Support Vector Machine,SVM)_特征空间_29

其中, 支持向量机(Support Vector Machine,SVM)_支持向量机_30

这些公式和概念构成了SVM的基础,通过调整参数和选择合适的核函数,SVM可以非常有效地处理复杂的数据分类问题。