SVM 支持向量机(2) 软间隔最大化与核方法
2017-03-10 18:07
176 查看
对于某些数据集, 并不能找到一个超平面把它们分开, 也就是说不能找到一组w⃗ , b, 满足yi(w⃗ ⋅x⃗ i+b)≥1, 解决办法就是引入一个松弛变量ξi, 让所有样本点都满足yi(
1fff7
w⃗ ⋅x⃗ i+b)≥1−ξi, 这样得到一个新的约束条件, 可以注意到ξi与1的关系,等于1的时候样本刚好落在分隔超平面上,大于1的时候符号反转, 说明被分错.形象的解释就是把某些样本点挪一下, 挪成线性可分的, 并且要使得挪的距离尽量小(挪太远就误分了), 同时间隔尽量大, 这样支持向量机的学习问题就变成了
minw⃗ ,b,ξ⃗ 12||w⃗ ||2+C∑iξi
s.t. yi(w⃗ ⋅x⃗ i+b)≥1−ξi
ξi≥0
C是一个关联系数, 若C为无穷大, 优化问题则要求ξi=0, 迫使样本均满足约束条件.
还有另外一种解释, ξi是损失函数(比如合页损失函数), 若样本没有落在间隔带正确的那一边, 则ξi大于0, 学习问题是让总损失尽可能小, 并且加了L2正则项(||w⃗ ||2)
和硬间隔类似, 利用拉格朗日乘子法可以得到对偶问题, 拉格朗日函数为
L(w⃗ ,b,ξ⃗ ,α⃗ ,μ⃗ )=12||w⃗ +C∑iξi+∑iαi(yi(w⃗ ⋅x⃗ i+b)−1+ξi)−∑iμiξi
进行求导, 代入等操作以后可得对偶问题
minα⃗ 12∑i∑jαiαjyiyj(x⃗ i⋅x⃗ j)−∑iαi
s.t.∑iαiyi=0, C≥αi≥0
求得最优解α∗→之后
w∗=∑iα∗iyixi,
选择合适的α∗j
b∗=yj−∑iα∗iyi(x⃗ i⋅x⃗ j)
minα⃗ 12∑i∑jαiαjyiyj(x⃗ i⋅x⃗ j)−∑iαi
s.t.∑iαiyi=0, C≥αi≥0
有时候遇到非线性划分的时候, 需要将样本映射到高维空间, 在高维空间中是线性可分的, 假设有一个从χ到H的映射ψ(x⃗ ), 使得
K(x⃗ ,z⃗ )=ψ(x⃗ )⋅ψ(z⃗ )
为了避免直接计算高维空间的ψ(x⃗ )⋅ψ(z⃗ ), 选取的K(x⃗ ,z⃗ )具有内积性质就可以了,这种方法被称为核诡计(kennel trick). 通常所说的和函数是正定核, 具有内积的性质.
李航的书上定义的再生核希尔伯特空间H是一个函数空间, 里面定义了函数的内积和范数
正定核: 对于任意个样本x⃗ i∈χ, i=1,2,...,m, Gram矩阵: [K(x⃗ i,x⃗ j)]m×m是半正定的, 则称K(x⃗ ,z⃗ )为正定核函数.
常用的有多项式核
K(x⃗ ,z⃗ )=(x⃗ ⋅z⃗ +1)p
高斯核
K(x⃗ ,z⃗ )=exp(−||x⃗ −z⃗ ||p2σ2)
等等.
这样, 目标函数变成
W(α⃗ )=12∑i∑jαiαjyiyjK(x⃗ i⋅x⃗ j)−∑iαi
决策函数变为
f(x⃗ )=sign∑iα∗iyiK(x⃗ i,x⃗ )+b∗
1fff7
w⃗ ⋅x⃗ i+b)≥1−ξi, 这样得到一个新的约束条件, 可以注意到ξi与1的关系,等于1的时候样本刚好落在分隔超平面上,大于1的时候符号反转, 说明被分错.形象的解释就是把某些样本点挪一下, 挪成线性可分的, 并且要使得挪的距离尽量小(挪太远就误分了), 同时间隔尽量大, 这样支持向量机的学习问题就变成了
minw⃗ ,b,ξ⃗ 12||w⃗ ||2+C∑iξi
s.t. yi(w⃗ ⋅x⃗ i+b)≥1−ξi
ξi≥0
C是一个关联系数, 若C为无穷大, 优化问题则要求ξi=0, 迫使样本均满足约束条件.
还有另外一种解释, ξi是损失函数(比如合页损失函数), 若样本没有落在间隔带正确的那一边, 则ξi大于0, 学习问题是让总损失尽可能小, 并且加了L2正则项(||w⃗ ||2)
和硬间隔类似, 利用拉格朗日乘子法可以得到对偶问题, 拉格朗日函数为
L(w⃗ ,b,ξ⃗ ,α⃗ ,μ⃗ )=12||w⃗ +C∑iξi+∑iαi(yi(w⃗ ⋅x⃗ i+b)−1+ξi)−∑iμiξi
进行求导, 代入等操作以后可得对偶问题
minα⃗ 12∑i∑jαiαjyiyj(x⃗ i⋅x⃗ j)−∑iαi
s.t.∑iαiyi=0, C≥αi≥0
求得最优解α∗→之后
w∗=∑iα∗iyixi,
选择合适的α∗j
b∗=yj−∑iα∗iyi(x⃗ i⋅x⃗ j)
核方法
支持向量机的对偶问题为minα⃗ 12∑i∑jαiαjyiyj(x⃗ i⋅x⃗ j)−∑iαi
s.t.∑iαiyi=0, C≥αi≥0
有时候遇到非线性划分的时候, 需要将样本映射到高维空间, 在高维空间中是线性可分的, 假设有一个从χ到H的映射ψ(x⃗ ), 使得
K(x⃗ ,z⃗ )=ψ(x⃗ )⋅ψ(z⃗ )
为了避免直接计算高维空间的ψ(x⃗ )⋅ψ(z⃗ ), 选取的K(x⃗ ,z⃗ )具有内积性质就可以了,这种方法被称为核诡计(kennel trick). 通常所说的和函数是正定核, 具有内积的性质.
李航的书上定义的再生核希尔伯特空间H是一个函数空间, 里面定义了函数的内积和范数
正定核: 对于任意个样本x⃗ i∈χ, i=1,2,...,m, Gram矩阵: [K(x⃗ i,x⃗ j)]m×m是半正定的, 则称K(x⃗ ,z⃗ )为正定核函数.
常用的有多项式核
K(x⃗ ,z⃗ )=(x⃗ ⋅z⃗ +1)p
高斯核
K(x⃗ ,z⃗ )=exp(−||x⃗ −z⃗ ||p2σ2)
等等.
这样, 目标函数变成
W(α⃗ )=12∑i∑jαiαjyiyjK(x⃗ i⋅x⃗ j)−∑iαi
决策函数变为
f(x⃗ )=sign∑iα∗iyiK(x⃗ i,x⃗ )+b∗
相关文章推荐
- 【机器学习】使用Scikit-Learn库实现支持向量机(SVM)最大化分类间隔
- SVM 支持向量机(1) 硬间隔最大化
- 支持向量机SVM的SMO方法实现(C++)
- 简单理解支持向量机SVM的方法
- Spark中组件Mllib的学习28之支持向量机SVM-方法1
- 模式识别(Pattern Recognition)学习笔记(十一)--SVM支持向量机(狭义):大间隔
- 判别或预测方法汇总(判别分析、神经网络、支持向量机SVM等)
- [转载]支持向量机(SVM)方法简介
- 支持向量机(SVM)(三)-- 最优间隔分类器(optimal margin classifier)
- 支持向量机 - 3 - 线性支持向量机与软间隔最大化
- 支持向量机 - 2 - 线性可分支持向量机与硬间隔最大化
- 支持向量机原理(二) 线性支持向量机的软间隔最大化模型
- 机器学习(七、八):SVM(支持向量机)【最优间隔分类、顺序最小优化算法】
- 支持向量机(二)线性可分支持向量机与硬间隔最大化
- 支持向量机SVM(一):支持向量机SVM的推倒:从logistic回归,到函数间隔,集合间隔,到寻找最优间隔分类器。
- 模式识别(Pattern Recognition)学习笔记(十一)--SVM支持向量机(狭义):大间隔
- 支持向量机(SVM)(三)-- 最优间隔分类器(optimal margin classifier)
- [机器学习&数据挖掘]SVM---软间隔最大化
- 机器学习(7)——支持向量机(三):线性支持向量机和软间隔最大化
- 支持向量机(SVM)方法的一些扩充