势函数算法的迭代训练预习报告

本文介绍了势函数法在模式识别中的应用,通过借用电场概念解决非线性分类问题。详细阐述了算法的基本思想、判别函数的产生过程,并通过实例解释了迭代训练的过程,旨在帮助学生掌握非线性判别函数的设计和实现。
摘要由CSDN通过智能技术生成

一.实验目的

       通过本实验的学习,使学生了解或掌握模式识别中利用势函数思想设计非线性判别函数的方法,能够实现模式的分类。学会运用已学习的先导课程如数据结构和算法设计知识,选用合适的数据结构完成算法的设计和程序的实现。并通过训练数据来建立非线性判别函数,通过代待分类样本进行分类预测,通过检查预测结果和数据的几何分布特性检验分类器的正确性。通过选用此种分类方法进行分类器设计实验,强化学生对非线性分类器的了解和应用,从而牢固掌握模式识别课程内容知识。

二.实验内容

原理分析

1,理论基础

       势函数法是非线性分类器中常用到的一种方法,它借用电场的概念,来解决模式分类问题。用势函数的概念来确定判别函数和划分类别界面。在势函数法中,把属于一类的样品看做正电荷,而属于另一类的样品看作负电荷,从而把模式的分类转变为正负电荷的转移,电位为0 的等位线即为判别界限。

2,基本思想

  • 假设要划分属于两种类别ω1ω1和ω2ω2的模式样本,这些样本可看成是分布在nn维模式空间中的点xkxk。
  • 把属于ω1ω1的点比拟为某种能源点,在点上,电位达到峰值。
  • 随着与该点距离的增大,电位分布迅速减小,即把样本xkxk附近空间xx点上的电位分布,看成是一个势函数K(x,xk)K(x,xk)。
  • 对于属于ω1ω1的样本集群,其附近空间会形成一个"高地",这些样本点所处的位置就是"山头"。
  • 同理,用电位的几何分布来看待属于ω2ω2的模式样本,在其附近空间就形成"凹地"。
  • 只要在两类电位分布之间选择合适的等高线,就可以认为是模式分类的判别函数。

3,判别函数的产生

  • 模式分类的判别函数可由分布在模式空间中的许多样本向量{xk,k=1,2,⋯且,xk∈ω1∪w2}{xk,k=1,2,⋯且,xk∈ω1∪w2}的势函数产生。
  • 任意一个样本所产生的势函数以K(x,xk)K(x,xk)表征,则判别函数d(x)d(x)可由势函数序列K(x,x1),K(x,x2),⋯K(x,x1),K(x,x2),⋯来构成,序列中的这些势函数相应于在训练过程中输入机器的训练模式样本x1,x2,⋯x1,x2,⋯。
  • 在训练状态,模式样本逐个输入分类器,分类器就连续计算相应的势函数,在第kk步迭代时的积累位势决定于在该步前所有的单独势函数的累加。
  • 以K(x)K(x)表示积累位势函数,若加入的训练样本xk+1xk+1是错误分类,则积累函数需要修改,若是正确分类,则不变。

4,逐步分析

    设初始势函数K0(x)=0K0(x)=0

    第一步:加入第一个训练样本x1x1,

则有  

K1(x)={K(x,x1)−K(x,x1)ifx1∈ω1ifx1∈ω2K1(x)={K(x,x1)ifx1∈ω1−K(x,x1)ifx1∈ω2

这里第一步积累势函数K1(x)K1(x)描述了加入第一个样本时的边界划分。当样本属于ω1ω1时,势函数为正;当样本属于ω2ω2时,势函数为负。

      第二步:加入第二个训练样本x2x2,

则有

  1. 若x2∈ω1x2∈ω1且K1(x2)>0K1(x2)>0,或x2∈ω2x2∈ω2且K1(x2)<0K1(x2)<0,则分类正确,此时K2(x)=K1(x)K2(x)=K1(x),即积累势函数不变。
  2. 若x2∈ω1x2∈ω1且K1(x——2)<0K1(x——2)<0,则

    K2(x)=K1(x)+K(x,x2)=±K(x,x1)+K(x,x2)K2(x)=K1(x)+K(x,x2)=±K(x,x1)+K(x,x2)

  3. 若x2∈ω2x2∈ω2且K1(x2)>0K1(x2)>0,则

K2(x)=K1(x)−K(x,x2)=±K(x,x1)−K(x,x2)K2(x)=K1(x)−K(x,x2)=±K(x,x1)−K(x,x2)

     以上(ii)、(iii)两种情况属于错分。假如x2x2处于K1(x)K1(x)定义的边界的错误一侧,则当x∈ω1x∈ω1时,积累位势K2(x)K2(x)要加K(x,x2)K(x,x2),当x∈ω2x∈ω2时,积累位势K2(x)K2(x)要减K(x,x2)K(x,x2)。

      第KK步:设Kk(x)Kk(x)为加入训练样本x1,x2,⋯,xkx1,x2,⋯,xk后的积累位势,则加入第(k+1)(k+1)个样本时,Kk+1(x)Kk+1(x)决定如下:

1. 若xk+1∈ω1xk+1∈ω1且Kk(xk+1)>0Kk(xk+1)>0,或xk+1∈ω2xk+1∈ω2且Kk(xk+1)<0Kk(xk+1)<0,则分类正确,此时Kk+1(x)=Kk(x)Kk+1(x)=Kk(x),即积累位势不变。

2. 若xk+1∈ω1xk+1∈ω1且Kk(xk+1)<0Kk(xk+1)<0,则Kk+1(x)=Kk(x)+K(x,xk+1)Kk+1(x)=Kk(x)+K(x,xk+1);

3. 若xk+1∈ω2xk+1∈ω2且Kk(xk+1)>0Kk(xk+1)>0,则Kk+1(x)=Kk(x)−K(x,xk+1)Kk+1(x)=Kk(x)−K(x,xk+1).

     因此,积累位势的迭代运算可写成:Kk+1(x)=Kk(x)+rk+1K(x,xk+1)Kk+1(x)=Kk(x)+rk+1K(x,xk+1),rk+1rk+1为校正系数:     

rk+1=⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪001−1ifxk+1∈ω1andKk(xk+1)>0ifxk+1∈ω2andKk(xk+1)<0ifxk+1∈ω1andKk(xk+1)<0ifxk+1∈ω2andKk(xk+1)>0rk+1={0ifxk+1∈ω1andKk(xk+1)>00ifxk+1∈ω2andKk(xk+1)<01ifxk+1∈ω1andKk(xk+1)<0−1ifxk+1∈ω2andKk(xk+1)>0

      若从给定的训练样本集x1,x2,⋯,xk,⋯x1,x2,⋯,xk,⋯中去除不使积累位势发生变化的样本,即使Kj(xj+1)>0Kj(xj+1)>0且xj+1∈ω1xj+1∈ω1,或Kj(xj+1)<0Kj(xj+1)<0且xj+1∈ω2xj+1∈ω2的那些样本,则可得一简化的样本序列{x⌢1,x⌢2,…,x⌢j,…}{x⌢1,x⌢2,…,x⌢j,…},它们完全是校正错误的样本。此时,上述迭代公式可归纳为:

Kk+1(x)=∑x⌢jajK(x,x⌢j)Kk+1(x)=∑x⌢jajK(x,x⌢j)

其中         

aj={+1−1forx⌢j∈ω1forx⌢j∈ω2aj={+1forx⌢j∈ω1−1forx⌢j∈ω2

也就是说,由k+1k+1个训练样本产生的积累位势,等于ω1ω1类和ω2ω2类两者中的校正错误样本的总位势之差。

      从势函数可以看出,积累位势起着判别函数的作用:当xk+1xk+1属于ω1ω1时,Kk(xk+1)>0Kk(xk+1)>0;当xk+1xk+1属于ω2ω2时,Kk()xk+1<0Kk()xk+1<0,则积累位势不做任何修改就可用作判别函数。

由于一个模式样本的错误分类可造成积累位势在训练时的变化,因此势函数算法提供了确定ω1ω1和ω2ω2两类判别函数的迭代过程。判别函数表达式:取d(x)=K(x)d(x)=K(x),则有:dk+1(x)=dk(x)+rk+1K(x,xk+1)dk+1(x)=dk(x)+rk+1K(x,xk+1).

4 构成势函数的两种方式:

     第一类势函数

     可用对称的有限多项式展开,即:

K(x,xk)=∑i=1mϕi(x)ϕi(xk)K(x,xk)=∑i=1mϕi(x)ϕi(xk)

其中{

}在模式定义域内为正交函数集。将这类势函数代入判别函数,有:

dk+1(x)=dk(x)+rk+1∑i=1mϕi(xk+1)ϕi(x)=dk(x)+∑i=1mrk+1ϕi(xk+1)ϕi(x)dk+1(x)=dk(x)+rk+1∑i=1mϕi(xk+1)ϕi(x)=dk(x)+∑i=1mrk+1ϕi(xk+1)ϕi(x)

得迭代关系:

dk+1(x)=∑i=1mCi(k+1)ϕi(x)dk+1(x)=∑i=1mCi(k+1)ϕi(x)

其中

Ci(k+1)=Ci(k)+rk+1ϕi(xk+1)Ci(k+1)=Ci(k)+rk+1ϕi(xk+1)

因此,积累位势可写成:

Kk+1(x)=∑i=1mCi(k+1)ϕi(x)Kk+1(x)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值