核技巧与SVM
SVM原本是用来解决二分类的分类模型
它和感知机不同的一点是它取到的分类器是在特征空间上的最大间隔的分类器
而为了解决非线性的分类问题 SVM使用核技巧 所以在SVM中核函数的作用是解决了SVM无法处理非线性可分的问题
核函数本质
1.在实际数据上经常遇到线性不可分的情况 而解决方法是将特征映射到更高维的空间去(为什么低维度线性不可分的情况映射到高维度就可以分了?).
2.凡是遇到线性不可分的情况 一律映射到高维度空间 会出现维度爆炸的情况
3.核函数虽然也是将特征进行从低维到高维的转化 但是是在低维上进行计算 而实际的效果表现在高维上 解决了维度爆炸的问题
线性可分的SVM与硬间隔最大化
对于SVM而言 在特征空间中 分类超平面为
wx+b=0
对应的决策函数 为
f=sign(wx+b)
SVM目标是得到分类超平面 wx+b=0 使得所有样本距离分类超平面距离尽量大 分类样本距离分类超平面的距离可以表示分类预测的确信程度 距离越大 确信度越大
即距离分类超平面距离最近的样本 距离分类超平面的距离尽量大(距离分类超平面最近的样本 即支持向量)
当得到固定的分类超平面 即 w,b 固定的时候 对于任意的x |wx+b|可以相对的表示对于某一个x的分类置信程度 当分类超平面固定的时候 |wx+b| 越大 说明其距离分类超平面越远 例如 w,b 固定 若 |wx1+b| 小于 |wx2+b| 则说明 对于该分类超平面 x2 的分类置信度更高
此时只讨论了样本到分类超平面的距离 没有讨论是否被正确分类 因此需要加上一个限制条件 yi (wxi+b) >0
根据之前SVM的目的 即 最大化间隔
那么对于所有的x
max(min i=1,2…N |wxi+b| )
s.t. yi (wxi+b) >0
对于线性可分的SVM
上述条件可以改写为
maxw,b (mini=1,2…N yi(wxi+b) )
(上述式子可以想象成 给定一组 w,b 该w,b 满足 yi (wxi+b) >0 对于所有的x 存在一个yi(wxi+b) 的最小值 记录下该最小值 对于所有的满足条件的w,b 选择最小值最大的一种 w,b )
但是上述式子有一个问题 即 成比例的更改w和b 分类超平面是不会改变的 但是 最小距离却会改变 假设此时我们找到了一组 w,b 使得该w,b 在所有x上的最小值最大 但是如果不对w和b的大小做限制 这是不可能实现的 因为一旦发现了这样的w和b 我们将w,b修改为 2w和2b 那么 mini=1,2…N yi(wxi+b) 也就变成原来的两倍 虽然找到的超平面还是原来的超平面 但是 这样 maxw,b (mini=1,2…N yi(wxi+b) )是不可能能求出最优的w和b的
通过上述直观的感觉可以发现 找不出最优的w和b的根源是不限制w和b的大小 明明已经找到最优超平面 就是无法输出最优的w和b 那么解决方法自然就是现在w和b的大小 很自然的限制一个向量的大小不改变该向量的方法就是对向量进行归一化
即w和b分别处以|w| 进行归一化
此时 目标函数变成
maxw,b (mini=1,2…N yi(wxi+b)/||w|| )
这就是几何间隔,之所以叫做几何间隔 是因为其自身的几何意义
假定我们已经拥有这样一个平面
wTx+b=0 求 distance(x,w,b)
假设x’和x’’ j均为平面上的点 那么
wTx’=-b 同理 wTx‘’=-b
所以wT(x’-x’’)=0 说明w垂直于平面上任意直线 即 w为平面的法向量
而点到平面的距离为 (x-x’) 投影到垂直于平面的方向 即w的方向
(下述转化过程很容易忘记)
推导至此 线性可分的SVM 优化目标函数 即最大化间隔 也就是使得几何间隔最大
将几何间隔记做 γi=yi(wxi+b)/||w||
最小几何间隔 γ=min γi
max w,b γ
s.t. yi(wxi+b)/||w||>=γ
(接下来的一步转化很关键)
根据几何间隔和函数间隔的关系
即函数间隔/||w|| 等于几何间隔
所有上述优化目标函数可以转化为
maxw,b γ’ /||w||
s.t. yi(wxi+b)>=γ’
函数间隔不会影响最终最优解的求解 既然函数间隔不会影响最优解求解 那么赋予函数间隔任何值 都会得到一个和原始问题等价的最优解问题
因为之前依旧推导了 函数间隔是随着w和b改变而改变的 当w和b 增大λ倍 函数距离也增大λ倍 所以不妨去γ’ 等于一
(第二步转化)
将 maxw,b γ’ /||w|| 转化为求最小值
minw,b1/2