支持向量机可分为:线性可分支持向量机,线性支持向量机,非线性支持向量机
线性可分支持向量机:当训练数据线性可分时,通过硬间隔最大化,学习一个线性的分类器,即线性可分支持向量机,又称硬间隔支持向量机;
线性支持向量机:当训练数据近似线性可分时,通过软间隔最大化,也学习一个线性的分类器,即线性支持向量机,又称软间隔支持向量机;
非线性支持向量机:当训练数据线性不可分时,通过适用核技巧或软间隔最大化,学习非线性支持向量机;
线性可分支持向量机与硬间隔最大化
定义1.1(线性可分支持向量机) 给定线性可分训练数据集,通过间隔最大化或等价地求解相应的凸二次规划问题学习得到的分离超平面为
w∗⋅x+b∗=0(1)(1)w∗⋅x+b∗=0
以及相应的分类决策函数
f(x)=sign(w∗⋅x+b∗)(2)(2)f(x)=sign(w∗⋅x+b∗)
称为线性可分支持向量机
算法1.1(线性可分支持向量机学习算法——最大间隔法)
输入:线性可分训练数据集 T=(x1,y1),(x2,y2),...,(xN,yN)T=(x1,y1),(x2,y2),...,(xN,yN) ,其中, xi∈χ=Rnxi∈χ=Rn , yi∈Y={ −1,+1}yi∈Y={ −1,+1} , i=1,2,...,Ni=1,2,...,N ;
输出:最大间隔分离超平面和分类决策函数。
(1)构造并求解约束最优化问题:
minw,b12||w||2minw,b12||w||2
s.t.yi(w⋅xi+b)−1≥0s.t.yi(w⋅xi+b)−1≥0
求得最优解
w∗,b∗w∗,b∗
(2)由此得到分类超平面:
w∗⋅x+b∗=0w∗⋅x+b∗=0
分类决策函数
f(x)=sign(w∗⋅x+b∗)f(x)=sign(w∗⋅x+b∗)
算法1.2(线性可分支持向量机学习算法)
输入:线性可分训练数据集 T=(x1,y1),(x2,y2),...,(xN,yN)T=(x1,y1),(x2,y2),...,(xN,yN) ,其中, xi∈χ=Rnxi∈χ=Rn , yi∈Y={ −1,+1}yi∈Y={ −1,+1} , i=1,2,...,Ni=1,2,...,N ;
输出:最大间隔分离超平面和分类决策函数。
(1)构造并求解约束最优化问题:
minα12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)−∑i+1Nαiminα12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)−∑i+1Nαi
s.t.∑i=1Nαiyi=0s.t.∑i=1Nαiyi=0
αi≥0,i=1,2,...,Nαi≥0,i=1,2,...,N
求得最优解
α∗=(α∗1,α∗2,...,α∗N)Tα∗=(α1∗,α2∗,...,αN∗)T
(2)计算
w∗=∑i=1Nα∗iyixiw∗=∑i=1Nαi∗yixi
并选择
α∗