您的位置:首页 > 其它

关于Novikoff定理与感知机算法的收敛性

2018-03-15 12:18 691 查看

感知机模型

感知机是一种二类分类的线性模型,它是由误分类驱动的,属于判别模型。说白了,它的实质就是输入空间或特征空间中的一个分离超平面。

《统计学习方法》中的定义:



学习策略

假设训练数据集是线性可分的,感知机学习的目标是求得一个能够将训练集正实例点和负实例点完全分开的分离超平面。

在这里,损失函数选择误分类点到超平面S的总距离:

−1||w||∑xi∈Myi(w⋅xi+b)−1||w||∑xi∈Myi(w⋅xi+b)

其中MM表示误分类点的集合。不考虑1||w||1||w||,得到最终的感知机损失函数:

−∑xi∈Myi(w⋅xi+b)−∑xi∈Myi(w⋅xi+b)

学习算法

我们上面选择的损失函数是可导的,因此可以采用一般的梯度下降法对感知机的参数进行学习,这里我们采用随机梯度下降法。首先我们可以推导得到损失函数对于参数ww与bb的梯度:

∇wL(w,b)=−∑xi∈Myixi∇bL(w,b)=−∑xi∈Myi∇wL(w,b)=−∑xi∈Myixi∇bL(w,b)=−∑xi∈Myi

对于随机梯度下降法而言,我们选取一个误分类点(xi,yi)(xi,yi),得到ww和bb的更新式:

w←w+ηyixib←b+ηyiw←w+ηyixib←b+ηyi

这种学习算法的几何意义是:当一个实例点被误分类时,即位于分离超平面的错误一侧时,则调整ww和bb的值,使得分离超平面向该误分类点的一侧移动,以减少误分类点与超平面的距离,直至超平面越过该误分类点使其被正确分类。

我们从图像上来对此进行理解:



假设目前的分界线为x1+x2−2=0x1+x2−2=0,也即w1=1,w2=1,b=−2w1=1,w2=1,b=−2,A点坐标为(1,−1)(1,−1)。我们假设对于样本A,其真实类别为1,但是预测结果为-1。在训练时,取η=1η=1,那么由公式w←w+ηyixi,b←b+ηyiw←w+ηyixi,b←b+ηyi可得w←w+(1,−1)w←w+(1,−1),b←b+1b←b+1,计算可得w1=2,w2=0,b=−1w1=2,w2=0,b=−1,此时分界线为2x1−1=02x1−1=0,分类正确。图中实线为原始的分类线,虚线为新的分类线,可以看出,分界线是努力朝着A靠拢的。

算法的收敛性

Novikoff定理表明,对于线性可分数据集感知机学习算法原始形式收敛,即经过有限次迭代可以得到一个将训练数据集完全正确划分的分离超平面及感知机模型。



关于这个定理的证明就不详述了,感兴趣的话可以看一下《统计学习方法》。在这里我们主要对定理中出现的关键性变量kk进行说明:变量kk表示训练数据集上的误分类次数,也即我们总共所需要的迭代次数,在迭代过程中,可能某一个点xixi会被误分类多次,那么这些次数都是要计入kk当中的。

我们对(2)中的RR与γγ进行理解。如果RR越大,也就是max||x̂ i||max||x^i||越大,此时相当于有一个点距离原点很远,在初始化时,我们常常初始化w=0,b=0w=0,b=0,所以我们要到达正确的分界面所需要的迭代次数也就越多,因此上界越大;如果γγ越小,即min{yi(wopt⋅xi+bopt)}min{yi(wopt⋅xi+bopt)}越小,也就是说,对于点xi,yixi,yi来说,虽然它被正确分类,但是它离最优分界面wopt,boptwopt,bopt很近,所以很容易就因为在对其它点进行更新时,导致这个点被误分类,因而迭代次数的上界越大。

关于Novikoff定理是不是清晰了一点呢?^-^
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: