对于对上面4点的分隔,如果是用线性回归的话,三个图形都可能发生。因为PLA是遇到一个输入值,才进行调整,即如果用PLA模型的话,最终的模型与初始状态和输入点的顺序有关。都是我们从直觉上来看,不难发现,其实最右边的分割线由于另外两个分割线的。
那为什么最右边的超平面是最好的呢???
现在,我们先来一个直观的理解。
在这里我们先假设数据是可分。
以上有4个点,我们要对其分类,然后我们得出来以上三种结果。假设来了第5个点,它其实就是上面4个点中最左边的那一个点‘ * ’,但是,由于测量等影响,有了一些误差。作为我们看来,我们肯定是希望把这个点分为‘ * ’。如果我们用最左边的那个模型,可以发现,哪怕是一点点的误差,数据有一点点的干扰,第5个点就有可能被分为 ‘ 。’.再看最右边的那个模型,发现阴影圆部分都是第5个点可以容忍的误差范围。所以,我们认为,数据点离分隔线的距离越大,模型就可以容忍各大的干扰,对过拟合有更好的健壮性。 又点是不能动的,分割线是可以动的。再加上分割线必须把所有点都正确分隔。所以以上也可以理解为,分割线距离 最近点 的距离越大,模型就可以容忍各大的干扰,超平面对过拟合有更好的健壮性。 所以,我们说,由于最右边的分割线距离 最近点 最远,于是具有最高的健壮性,所以我们选最右边的点。
所以,我们是要找到最胖的分隔线,这个最胖的意思,就是分隔线距离最近点的距离。然而前提是,这个分割线要把所有点都正确分隔(默认数据是可分的)。所以最终化成求一个目标函数,但有约束条件。
即
为了规范化,我们定义最胖的意思是,最大边界,即fatness==largest_margin
约束条件——分隔线必须把点都正确分类,即 wT∗x+b>0 时,对应该点的 yn>0 , wT∗x+b<0 时,对应该点的 yn<0 。即 yn(wT∗x+b)>0 。
- 为了求出上面方程的解,我们要先弄明白什么是distance(x,b,w)?
假设超平面的方程为
wTx+b=0
,且
x1,x2
,都是超平面上的点,那么都有
wTx1+b=0
wTx2+b=0
两式相减,即可得,
(wT∗(x2−x1))=0
,由于
x1,x2
是超平面的任意两点,即二者可以表示超平面任意一条直线,则上式表明W 是超平面的垂线(即法线)。
假设平面外有一点 x , 则
h→∗(x→−x′→)=|h|∣∣∣x→−x′→∣∣∣cosΘ
|h|=∣∣∣x→−x′→∣∣∣cosΘ=h→∗(x→−x′→)|h|
这里h 就是 w
于是可得
好了,我们就表示出了distance(x,b,w)的公式了
由于这是任一点到任意平面的距离公式,然而我们要求的是超平面能够把所有的数据点正确分类,则有附加条件
其实
|wTx+b|
可以表示为
yn(wTxn+b)
即最终化为
我们再来分析分析,我们最终想要的结果是得到超平面 wTx+b=0 ,但是我们发现对x,b同等放缩时,得到的超平面是一样的。那么为了能简化公式,我们能否通过对w,b同等放缩(反正最终结果不变),使得其满足条件。
这样
就化简会
即可得到
由于 比 every
yn(wTxn+b)>0
还要严格,则
yn(wTxn+b)>0
就可以不要了。
即得到
但是这还是不能求解啊!!约束条件里面有min。现在就想方法把min也去掉。
我们现在用反证法证明
yn(wTxn+b)>=1
的约束能力与 相同。其实二者是否相同,关键是看
yn(wTxn+b)>=1
右边能否取到1,如果能,就表明是相同的, 如果不能就表明是不同的。
假设二者约束能力不同,即假设
yn(wTxn+b)>=1
不能取到1.即表示
yn(wTxn+b)
最小不为1,我们假设是1.126,即
yn(wTxn+b)>=1.126
我们求出最优的
w1,b1
,但是我们还可以对
w1,b1
进行放缩成,
(b11.126,w11.126)
。因为即使这样放缩,也可以满足约束条件。 而
(b11.126,w11.126)
对应的
1∥w∥
就大于
w1,b1
对应的 的
1∥w∥
。而我们前面假设
w1,b1
对应的 的
1∥w∥
是最大的。这就矛盾了。所以假设不成立。所以
yn(wTxn+b)>=1
右边能否取到1。即
yn(wTxn+b)>=1
的约束能力与 相同。
再对
1||w||
化简为
12wTw
。
最终得到
那这个方程怎么解出w,b呢???
我们发现目标函数是二次的,约束条件是一次的。而这是一个二次规划(QP)问题。QP问题用一些商业软件(比如matlab,lingo等)就可以直接求出来。
我们只需把他化成右图中二次规划的标准形式,在商业软件中输入合适参数就可以得到结果。