【机器学习】SVM原理公式推导及常见问题(2)

目录


软间隔最大化

接着上篇的最基本的支持向量机模型,下面介绍“软间隔”最大化。简单来说,就是对间隔放宽一个系数 ξ i 目标函数为:

min ω , b , ξ 1 2 | | ω | | 2 + C i = 1 N ξ i
s . t . y i ( ω x i + b ) 1 ξ i , i = 1 , 2 , . . . , N
ξ i , i = 1 , 2 , . . . , N 0

其中, C 代表惩罚系数,惩罚系数越大,目标函数对于松弛系数 ξ i 越严苛。

合页损失函数

软间隔最大化问题,可以转化为合页损失函数最小化问题。令 ξ i = 1 y i ( ω x i + b ) , ξ i 0 ,所以

[ 1 y i ( ω x i + b ) ] + = [ ξ i ] + = ξ i

其中
(13) [ z ] + = { z , z 0 0 , o t h e r
所以
min ω , b 1 2 | | ω | | 2 + C i = 1 N [ 1 y i ( ω x i + b ) ] +
λ = 1 2 C ,则原目标函数转化为
min ω , b i = 1 N [ 1 y i ( ω x i + b ) ] + + λ | | ω | | 2
其中,第一项,称为合页损失函数 [ 1 y ( ω x + b ) ] + ,是经验风险;第二项,系数 λ 乘以 ω L 2 范数的平方,是正则化项。

支持向量

对偶问题的解 α = ( α 1 , α 2 , . . . , α N ) T 中, α i > 0 的实例 ( x i , y i ) 被称为支持向量,点到分离超平面的距离为 ξ i | | ω | |

非线性支持向量机

非线性可分的数据集,需要用核技巧,即经过非线性变换,将原空间转到特征空间,通过在特征空间求解线性问题,求解原问题。其中,若将x空间变换到z空间的映射 z = ϕ ( x ) ,则称函数 K ( x , z ) = ϕ ( x ) ϕ ( z ) 是核函数,K是 ϕ ( x ) ϕ ( z ) 的内积。

支持向量机是如何引入核函数的概念进行非线性化的?注意,支持向量机对偶问题中

θ d = m a x ω , b 1 2 i 1 N j = 1 N α i α j y i y i ( x i x j ) i = 1 N α i
包含向量的内积 ( x i x j ) ,自然想到,如果做非线性变换,可以引入核函数 K ( x , z ) 。所以,非线性支持向量机对偶问题目标函数为,
W ( α ) = 1 2 i 1 N j = 1 N α i α j y i y i K ( x i x j ) i = 1 N α i

常用核函数

一般情况下,很难知道一个合适的映射 z = ϕ ( x ) 。且如果将输入空间映射到特征空间,再对特征空间做内积,可能会由于特征空间维度过高使得计算量很大。所以,直接在输入空间定义运算 K ( x , z )

在不知道映射 z = ϕ ( x ) 时,如果要定义一个 K ( x , z ) 是核函数,必须满足 K ( x , z ) 是正定核函数,即对于任意 x i χ , i = 1 , 2 , . . . , m K G r a m 矩阵 [ K ( x i , x j ) ] m × m 是半正定矩阵。实际情况中,任意一个核 K ( x , z ) 都要对数据集检验 G r a m 矩阵是否为半正定矩阵,才能确定他是不是一个核函数,但是验证是非常复杂的。所以有一些常用的核函数方便使用。

  • 线性核函数: K ( x , z ) = x z
  • 多项式核函数: K ( x , z ) = ( x z + 1 ) p
  • 高斯核函数: K ( x , z ) = exp ( | | x z | | 2 2 σ 2 )
  • 混合核: λ K 1 ( x , z ) + ( 1 λ ) K 2 ( x , z ) , 0 λ < 1

通常根据数据集的特性选择核,选择交叉验证下误差最小的。


参考:
1. SVM核函数

猜你喜欢

转载自blog.csdn.net/zeo_m/article/details/81666814