机器学习基石2-3 Guarantee of PLA
2017-04-24 10:23
253 查看
本节主要对上节提出的PLA能否always halt的问题进行了证明。
很明显,如果点分布如第一张图所示的,那么就可以用一条线将它们分来,第二和第三张图中的情况则不能。
我们称第一张图中点的分布情况成为linear separable(线性可分)。
简而言之,当data处于一种线性可分的状态时,那么意味着一定有一条线能将其分开,也就是说PLA最后一定能够停下来。
接下来从数学的角度证明。
如上图,wf表示target assume,那么yn的符号一定与向量wf和向量xn的内积一致,也就是说,yn乘上向量wf和向量xn的内积的值一定是大于0的(yn只有正负1两个取值)。
现在我们的目标就是要求出一个wt,使得wt尽可能地接近wf,评判两个向量是否接近的标准是求出这两个向量的内积,因此我们可以通过计算wf与wt的内积进行评判。
由下面的式子可以看出,wf与wt的内积在每一次update之后都在逐步增长,但是单凭这一点还不能说明两个向量越来越接近,因为内积还与这两个向量的长度有关。为了避免长度造成的影响,可以采用向量正规化的方式调整向量长度。
那么,既然wf与wt的内积一直在不断增长,如果不能够证明它们的内积能够在一定范围内收敛,那么该PLA是有可能停不下来的。
从之前的PLA算法的流程我们知道只有在mistake时才对wt进行更新操作,在mistake的时候意味着yn乘上向量wf和向量xn的内积的值一定是小于0的。从上图的对wt+1和wt关系的推导过程中可以看出来,wt+1每次最多增长最大的xn个长度(yn取值为±1)。这意味着若只有mistake时才进行update的话,那么wt不会成长太快。这就说明了wf与wt的内积不会由于长度的原因一直增长。
另外,进行正规化之后,由于向量的内积始终小于1,因此该内积虽然不断增长,但是也会收敛于1。
进一步,如果从w0从零向量开始计算的话,可以得到上图最低端的式子,constant是一个常数,T为更新的次数,根据这个式子可以计算出T的值。
待证问题:PLA能否always halt?如果能,有没有一定的条件?
如下图:很明显,如果点分布如第一张图所示的,那么就可以用一条线将它们分来,第二和第三张图中的情况则不能。
我们称第一张图中点的分布情况成为linear separable(线性可分)。
简而言之,当data处于一种线性可分的状态时,那么意味着一定有一条线能将其分开,也就是说PLA最后一定能够停下来。
接下来从数学的角度证明。
如上图,wf表示target assume,那么yn的符号一定与向量wf和向量xn的内积一致,也就是说,yn乘上向量wf和向量xn的内积的值一定是大于0的(yn只有正负1两个取值)。
现在我们的目标就是要求出一个wt,使得wt尽可能地接近wf,评判两个向量是否接近的标准是求出这两个向量的内积,因此我们可以通过计算wf与wt的内积进行评判。
由下面的式子可以看出,wf与wt的内积在每一次update之后都在逐步增长,但是单凭这一点还不能说明两个向量越来越接近,因为内积还与这两个向量的长度有关。为了避免长度造成的影响,可以采用向量正规化的方式调整向量长度。
那么,既然wf与wt的内积一直在不断增长,如果不能够证明它们的内积能够在一定范围内收敛,那么该PLA是有可能停不下来的。
从之前的PLA算法的流程我们知道只有在mistake时才对wt进行更新操作,在mistake的时候意味着yn乘上向量wf和向量xn的内积的值一定是小于0的。从上图的对wt+1和wt关系的推导过程中可以看出来,wt+1每次最多增长最大的xn个长度(yn取值为±1)。这意味着若只有mistake时才进行update的话,那么wt不会成长太快。这就说明了wf与wt的内积不会由于长度的原因一直增长。
另外,进行正规化之后,由于向量的内积始终小于1,因此该内积虽然不断增长,但是也会收敛于1。
进一步,如果从w0从零向量开始计算的话,可以得到上图最低端的式子,constant是一个常数,T为更新的次数,根据这个式子可以计算出T的值。
相关文章推荐
- 林轩田机器学习基石——Guarantee of PLA
- 林轩田机器学习基石笔记2:PLA算法
- Coursera课程-机器学习基石作业一Q18-Q20(pocket on D算法 for PLA/C++ edition)
- 机器学习基石-02-2-PLA何时停下来?
- 机器学习基石—作业1(15-20题PLA编程)
- 机器学习基石第一讲:PLA
- PLA算法(机器学习基石)
- 机器学习基石2-2 PLA(Perceptron Learning Algorithm)
- 机器学习基石学习笔记(1)-PLA
- 机器学习基石---第二周PLA
- 机器学习基石 2.4 More about PLA
- PLA(Perceptron Learning Algorithm)--机器学习基石笔记
- PLA算法总结——Percetron Learning Algorithm(机器学习基石2)
- 机器学习基石 作业1 实现PLA和Pocket算法
- 机器学习基石 2.3 Guarantee of PLA
- 机器学习基石PLA算法c++语言实现
- 机器学习基石 2.2 Perceptron Learning Algorithm (PLA)
- 机器学习基石---Why Can Machines Learn(Part5)
- 1. 机器学习基石-When can Machine Learn? - The Learning Problem
- 10. 机器学习基石-How can Machine Learn? - Nonlinear Transformation