一、最大间隔与分离
超平面
超平面方程为:wTx+b=0wTx+b=0,其中 w=(w1,w2,...,wn)w=(w1,w2,...,wn) 为法向量,决定了超平面的方向;bb 为位移项,决定了超平面与源点之间的距离。显然划分超平面可被法向量 ww 和位移 bb 决定。
训练数据:
线性可分当且仅当:
最大化间隔: 寻找参数w和b , 使得下述公式最大。
这是支持向量机的基本型。
二、对偶问题
拉格朗日乘子法
:
(1)引入拉格朗日乘子 αi
≥ 0
得到拉格朗日函数
(2)
令L(w,b,α
)对
w
和
b
的偏导为零
(3)
w
,
b
回代到第一步
支持向量机基本型:
最终模型:
未知数为αi
支持向量机解的稀疏性: 训练完成后, 大部分的训练样本都不需保留, 最终模型仅与支持向量有关。
求解
-- SMO 算法流程:
三、核函数
支持向量机算法分类和回归方法的中都支持线性性和非线性类型的数据类型。非线性类型通常是二维平面不可分,为了使数据可分,需要通过一个函数将原始数据映射到高维空间,从而使得数据在高维空间很容易可分,需要通过一个函数将原始数据映射到高维空间,从而使得数据在高维空间很容易区分,这样就达到数据分类或回归的目的,而实现这一目标的函数称为核函数。
工作原理:当低维空间内线性不可分时,可以通过高位空间实现线性可分。但如果在高维空间内直接进行分类或回归时,则存在确定非线性映射函数的形式和参数问题,而最大的障碍就是高维空间的运算困难且结果不理想。通过核函数的方法,可以将高维空间内的点积运算,巧妙转化为低维输入空间内核函数的运算,从而有效解决这一问题。
(摘自:https://blog.csdn.net/qq_42192693/article/details/121164645)
线性不可分—高维可分
基本想法:不显式地构造核映射
,
而是设计核函数。
Mercer
定理
(
充分非必要
)
:只要对称函数值所对应的核矩阵半正 定,
则该函数可作为核函数。
常见的核函数:
四、软间隔与正则化
引入“软间隔”的概念, 允许SVM在一些样本上不满足约束。
损失函数基本思路:最大化间隔的同时, 让不满足约束的样本应尽可能少。
替代损失函数数学性质较好, 一般是0/1损失函数的上界。
五、支持向量回归
特点
:
允许模型输出和实际输出间存在
2
ε
的偏差。
损失函数:
落入中间
2
ε
间隔带的样本不计算损失
,
从而使得模型获得稀疏性。
六、核方法
通过一个非线性变换 ϕ(x)ϕ(x)将输入空间(欧式空间或离散集合)对应于一个特征空间(希尔伯特空间),使得输入空间的超曲面模型对应于特征空间中的超平面模型。幸运的是, 如果原始空间是有限维,即属性数有限,那么一定存在一个高维特征空间使样本线性可分。于是在特征空间中分离超平面所对应的模型可表示为:f(x)=w⋅ϕ(x)+b
优化目标函数可表示为(1)
求解上面的优化函数涉及到计算 ϕ(x(i))⋅ϕ(x(j))ϕ(x(i))⋅ϕ(x(j)),这是样本 x(i)x(i)和 x(j)x(j)映射到特征空间的内积,由于特征空间维度可能很高,甚至是无穷维,因此直接计算ϕ(x(i))⋅ϕ(x(j))ϕ(x(i))⋅ϕ(x(j))通常是困难的,避开这个障碍的一个方法是引入核函数(2)
即我们只定义核函数 K(x,z)K(x,z),而不显式地定义映射函数 ϕ(x)ϕ(x),这样我们就不用去计算高维甚至无穷维特征空间中的内积。对于给定的核函数,可以取不同的特征空间,即便是在同一特征空间里也可以取不同的映射。于是(1)可以重写为:
用SMO算法解得 α∗iαi∗,然后确定分离超平面和分类决策函数。算法步骤和原来SVM一模一样,几乎不需要改动,只需要将 ϕ(x(i))⋅ϕ(x(j))ϕ(x(i))⋅ϕ(x(j))替换成 K(x(i),x(j))K(x(i),x(j))即可。
(摘自:https://blog.csdn.net/qq_16137569/article/details/81873810)
(摘自:https://blog.csdn.net/qq_16137569/article/details/81873810)