数据挖掘十大算法之SVM支持向量机分类算法

Posted Better Bench

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据挖掘十大算法之SVM支持向量机分类算法相关的知识,希望对你有一定的参考价值。

目录

1 基本概念

支持向量机(support vector machines,SVM)是一种二分类模型。分为

  • 线性可分支持向量机:训练数据线性可分,通过硬间隔最大化学习一个线性的分类器,又称为硬间隔支持向量机。
  • 线性支持向量机:训练数据近似线性可分,通过软间隔最大化学习一个线性的分类器,又称为软间隔支持向量机。
  • 非线性支持向量机:训练数据线性不可分,通过核技巧及软间隔最大化,学习非线性支持向量机。(核技巧:当输入空间为欧式空间或离散集合、特征空间为希尔伯特空间时,核函数表示将输入空间映射到特征空间得到的特征向量之间的内积。通过使用核函数,可以学习非线性支持向量机,等价于隐式地在高维的特征空间中学习线性支持向量机)

2 线性可分支持向量机

2.1 定义

给定线性可分训练数据集,通过间隔最大化或等价地求解相应的凸二次规划问题学习得到的分离超平面为
w ∗ ⋅ x + b ∗ = 0 (1) w^* \\cdot x + b^* = 0\\tag1 wx+b=0(1)
以及相应的分类决策函数
f ( x ) = s i g n ( w ∗ ⋅ x + b ∗ ) (2) f(x) = sign(w^* \\cdot x +b^*)\\tag2 f(x)=sign(wx+b)(2)
称为线性可分支持向量机。

2.2 相关概念

(1)函数间隔

一个点距离超平面的远近可以表示分类预测的确信程度,即函数间隔来表述分类的正确性及确信度。

对于给定的训练数据集T和超平面(w,b),定义超平面(w,b)关于样本点 ( x i , y i ) (x_i,y_i) (xi,yi)的函数间隔为
γ ^ i = y i ( w ⋅ x i + b ) (3) \\hat\\gamma _i = y_i(w \\cdot x_i +b) \\tag3 γ^i=yi(wxi+b)(3)
定义超平面(w,b)关于训练数据集T的函数间隔为超平面(w,b)关于T中所有样本点 ( x i , y i ) (x_i,y_i) (xi,yi)的函数间隔之最小值,即
γ ^ = m i n i γ ^ i     i = 1 , . . . , N (4) \\hat\\gamma = min_i\\hat\\gamma _i ~~~ i = 1,...,N \\tag4 γ^=miniγ^i   i=1,...,N(4)

(2)几何间隔

在函数间隔的基础上,将点与超平面之间的间隔规范化。对分离超平面的法向量 w w w取L2范数。表示为 ∣ ∣ w ∣ ∣ ||w|| w,使得超平面的两个参数成比例变化,间隔都是确定。

对于给定的训练数据集T和超平面(w,b),定义超平面(w,b)关于样本点 ( x i , y i ) (x_i,y_i) (xi,yi)的几何间隔为
γ ^ i = y i ( w ∣ ∣ w ∣ ∣ ⋅ x i + b ∣ ∣ w ∣ ∣ ) (5) \\hat\\gamma _i = y_i(\\fracw||w|| \\cdot x_i +\\fracb||w||) \\tag5 γ^i=yi(wwxi+wb)(5)
其中 ∣ ∣ w ∣ ∣ ||w|| w表示取w的L2范数。 定义超平面(w,b)关于训练数据集T的几何间隔为超平面(w,b)关于T中所有样本点 ( x i , y i ) (x_i,y_i) (xi,yi)的几何间隔之最小值,即
γ ^ = m i n i γ ^ i     i = 1 , . . . , N (6) \\hat\\gamma = min_i\\hat\\gamma _i ~~~ i = 1,...,N \\tag6 γ^=miniγ^i   i=1,...,N(6)

(3)间隔最大化

支持向量机学习的基本想法是求解能够正确划分训练数据集并且几何间隔最大的分离超平面。

间隔最大化:对训练数据集找到几何间隔最大的超平面,以充分大的确信度对训练数据进行分类。

(4)最大间隔法

输入:线性可分训练数据集 T = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) T = \\(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\\ T=(x1,y1),(x2,y2),...,(xN,yN),其中 x ∈ X = R n , y i ∈ Y = − 1 , + 1 , i = 1 , 2 , . . . , N x \\in X = R^n,y_i \\in Y = -1,+1,i=1,2,...,N xX=Rn,yiY=1,+1,i=1,2,...,N

输出:最大间隔分离超平面和分类决策函数

a.构造并求解约束最优化问题
m i n w , b 1 2 ∣ ∣ w ∣ ∣ 2 s . t . y i ( w ⋅ x i + b ) − 1 ≥ 0 , i = 1 , 2 , . . , N (7) min_w,b \\frac12||w||^2 \\\\ s.t. y_i(w \\cdot x_i +b)-1 \\geq 0,i=1,2,..,N \\tag7 minw,b21w2s.t.yi(wxi+b)10,i=1,2,..,N(7)

求得最优解 w ∗ , b ∗ w^*,b^* w,b

b.由此得到分离超平面
w ∗ ⋅ x + b ∗ = 0 (8) w^* \\cdot x + b^* = 0\\tag8 wx+b=机器学习-支持向量机SVM算法

数据挖掘学习——支持向量机(SVM)

深入理解SVM之对偶问题

分类算法之支持向量机SVM

机器学习的分类算法之SVM(支持向量机)

机器学习入门之四:机器学习的方法--SVM(支持向量机)(转载)