Loading...

支持向量机

  支持向量机是一种二分类模型。它的基本模型是定义在特征空间上的间隔最大化的线性分类器,间隔最大是他有区别于感知机。
  支持向量机由简至繁:线性可分支持向量机,线性支持向量机和非线性支持向量机。

1.线性可分支持向量机与硬间隔最大化

1.1 线性可分支持向量机

分离超平面:ww^*·x+bb^*=0

分类决策函数:f(x)=sign(ww^*·x+bb^*)

1.2 函数间隔与几何间隔

  函数间隔:rir_i=yiy_i(w·xix_i+b)
  几何间隔:rir_i=yiy_i(1w\frac{1}{||w||}·xix_i+bw\frac{b}{||w||})
  如果超平面参数w和b成比例的改变,函数间隔也会按比例改变,而几何间隔不变。

1.3 间隔最大化

  对训练数据集找到几何间隔最大的超平面意味着以充分大的确信度对训练数据进行分类
  max r —> max rr^{'}/||w|| —> min 12\frac{1}{2}w2||w||^2

(1)最大间隔算法:
输入:线性可分训练数据集T
输出:最大间隔分离超平面和分离决策函数

  • 构造并求解约束最优化问题:
    minw,bmin_{w,b}    12\frac{1}{2}w2||w||^2
    s.t.    yiy_i(w·xix_i+b)-1≥0 ,i=1,2,…,N

  • 由此得到分离超平面:
    ww^*·x+bb^*=0

    分类决策函数:
    f(x)=sign(ww^*·x+bb^*)

(2)例题

1.4学习的对偶算法

(1)对偶算法
输入:同原始算法
输出:同原始算法

  • 构造并求解约束最优化问题:
    minamin_a   12\frac{1}{2}i=1N\sum^{N}_{i=1}j=1N\sum^{N}_{j=1}aia_iaja_jyiy_iyjy_j(xix_i·xjx_j) - i=1N\sum^{N}_{i=1}aia_i
    s.t.   i=1N\sum^{N}_{i=1}aia_iyiy_i=0
    aia_i≥0   ,i=1,2,…,N
    求解最优解aa^*=(a1a^*_1,a2a^*_2,…,aNa^*_N)

  • 计算:
    ww^*=i=1N\sum^{N}_{i=1}aia^*_iyiy_ixix_i
    bb^*=yjy_j - i=1N\sum^{N}_{i=1}aia^*_iyiy_i(xix_i·xjx_j)

  • 由此得到分离超平面:
    ww^*·x+bb^*=0

    分类决策函数:
    f(x)=sign(ww^*·x+bb^*)

(2)例题