感知器和大间隔分类器(The perceptron and large margin classifiers)

来源:互联网 发布:淘宝联盟订单失效 编辑:程序博客网 时间:2024/06/06 20:45

在学习理论的最后一节我们会介绍一个与之前不同的机器学习模型。在前面的内容里我们讨论了太多批量学习的情形,即先在给定训练集上学习,将学习后的假设在另一个测试集上评估其表现。而在本节中,我们将关注在线学习这一情形,算法一边学习一边对输入进行预测。

在这种情景下,我们给学习算法一个有顺序的输入样本序列(x(1),y(1)),(x(2),y(2)),,(x(m),y(m))。当碰到输入x(1)后,它就开始预测y(1)的值。当它结束预测后,我们就将y(1)的真实值反馈给它(它根据反馈值进行学习)。紧接着我们就将x(2),然后它继续做出预测并接收反馈,依次循环直至(x(m),y(m))。在线学习的情形中,我们对整个学习过程中算法出错的总次数感兴趣,因为它反映这种算法的效果。

我们会对感知器算法在在线学习中的犯错数给出一个上界。为了使后面的推到更简单,我们定义输出的类标签y{1,1},权重θRn+1,通过下列公式进行预测:

hθ(x)=g(θTx)(1)

且:

g(z)={11if z0if z<0

当给定一个训练样本(x,y)后,感知器学习法这样更新权重:如果hθ(x)=y,不做任何改变;否则:

θ:=θ+yx.

下面我们给出关于错误数上界的定理,需要注意的是,经此定理可知错误数的上界和样本数m以及输入维数n都没有关系


定理(Block, 1962,and Novikoff, 1962) 对于给定训练集序列(x(1),y(1)),(x(2),y(2)),,(x(m),y(m)),若输入的二范数满足x(i)D对于所有i成立,且存在单位向量u(u2=1)使得y(i)(uTx(i))γ对所有样本均成立。那么感知器算法在这一序列中犯错的总数不会超过(D/γ)2

证明如下,若θ(k)是算法第k次犯错时的权重值。那么θ(1)=0⃗ (权重是从零开始的)且第k次犯错时的样本为(x(i),y(i)),则有:

(x(i))Tθ(k)y(i)0(2)

另外由感知器学习法的性质可知θ(k+1)=θ(k)+y(i)x(i),我们可推得:

(θ(k+1))Tu=(θ(k))Tu+y(i)(x(i))Tu(θ(k))Tu+γ

依次递推下去,可得:

(θ(k+1))Tukγ.(3)

考察θ(k+1)的2范数有:

θ(k+1)2=θ(k)+y(i)x(i)2=θ(k)2+x(i)2+2y(i)(x(i))Tθ(i)θ(k)2+x(i)2θ(k)2+D2(4)

其中第三步的小于推导使用了方程(2),我们将上式进一步递推则有:

θ(k+1)2=kD2.(5)

将不等式(3)和(5)结合起来可推得:

kDθ(k+1)(θ(k+1))Tukγ

在第二步不等式的推导中使用了单位向量的性质(ϕ表示z和u之间的夹角,有zTu=zucosϕzu)。最后可推得我们的结论k(D/γ)2

0 0
原创粉丝点击