机器学习基石-02-2-PLA何时停下来?

PLA停止的条件:找到一条“best”的直线可以把圆圈和叉叉完美的分开。

这就要求资料data是线性可分的(linear separability),否则PLA永远也不会停下来。

接下来假设D线性可分,那么PLA什么情况会停下来(halt)呢?

假设wf是“perfect”的:

机器学习基石-02-2-PLA何时停下来?_第1张图片

上面的公式含义:两个向量的内积几何意义是,一个向量在另一个向量上投影的长度。所以就是平面上的某一个点x到“红蓝分界线”的距离(是分正负的),前面的yn就是用来调整正负号的,可以保证距离都是正的满足>0。哪怕是最小的min也肯定满足>0,所以其他的点到“红蓝分界线”的距离一定都会>0。

影响PLA是否停下从两个方面来考虑:

1.wt和wf两个向量的内积越来越大,一定程度上表示两个变量越来越接近。但需要注意,两个变量的内积大小不是判断是否接近的充分条件,还需要考虑两个变量的长度变化。

2.比较||w(t+1)||和||w(t)||

两个变量的内积:

机器学习基石-02-2-PLA何时停下来?_第2张图片

wt和wf的内积每一次更新之后都会增大,可能两个变量越来越接近了(内积的大小不能完全确定)。

||wt||大小

机器学习基石-02-2-PLA何时停下来?_第3张图片

||w(t+1)||和||w(t)||的平方差最大的时候是max||xn||的平方,并不是很显著的大了很多,所以每次更新之后的长度变化并不会特别大。

上面的yn是灰色的,因为y取值{-1,+1}取平方之后没什么区别,可以直接将||ynxn||写成||xn||。

注意点:第一部分的内积大小是满足“线性可分”条件下的公式;第二部分的向量长度是“PLA只会在有mistake的时候继续循环”的条件下。


上面提到过向量的内积并不能确定是否越来越接近,但是正规化之后的两个向量如果内积越来越大就一定是越来越接近。

向量正规化之后的内积最大是1,不可能超过1。

从w0=0,经过T次错误修正。

机器学习基石-02-2-PLA何时停下来?_第4张图片

怎么得到常数的表达式呢?我看了博客园的一篇推导过程笔记,我在推算过程中有一点不一样,也希望大家帮我纠错。

课后习题推导

机器学习基石-02-2-PLA何时停下来?_第5张图片

推导过程如下:

机器学习基石-02-2-PLA何时停下来?_第6张图片

机器学习基石-02-2-PLA何时停下来?_第7张图片

需要用到一个关于循环次数T的公式,如下图

机器学习基石-02-2-PLA何时停下来?_第8张图片

机器学习基石-02-2-PLA何时停下来?_第9张图片

more about PLA

只要满足“线性可分”和“存在错误需要修正”的条件,

1.wf和wt的内积会增加的很快;wt的长度会增加的比较缓慢。

2.w(PLA)越来越接近wf(和wf几乎成为一条线)时,循环就会停止。

PLA的优缺点:

优点:很快速,无论是多少维的数据都可以。

缺点:PLA使用的前提是“线性可分”,但是很难确定是否“线性可分”;T<=R的平方/ρ的平方,ρ取决于wf,所以循环的次数T是取决于wf的(wf是未知的)

噪声数据(noisy data)

当存在噪声数据时要怎么找到“最好的”那条线呢?

首先假定噪声很小:yn=f(xn)在大多数情况下都满足

然后,g≈f on D 等价于yn=g(xn)在大多数的情况下都满足

存在噪声数据,找不到“完全没有错误”的直线,那么就找“错误最少”的直线当做是“最好”的。

机器学习基石-02-2-PLA何时停下来?_第10张图片

但是这种方法很难实现!!下面介绍一种针对“noisy data”的方法。


pocket algorithm

大致的过程和PLA是相同的,只是在PLA循环的过程中会找到一个我们觉得“最好”的w装在口袋里,再次遇到“更好的”和之前的“我们认为最好的”进行比较,留下“错误更少的”放在口袋里。

你可能感兴趣的:(机器学习基石-02-2-PLA何时停下来?)