《武汉工程大学学报》  2008年04期 114-117   出版日期:2008-04-30   ISSN:1674-2869   CN:42-1779/TQ
一种面向特征选择的分类神经网络



0引言特征选择与分类是模式识别中两大问题.在多数模式识别问题中,先进行特征选择,去掉对分类不相关的特征以及冗余特征,从而减少数据处理时间以及数据存储空间,然后再根据约简的特征进行分类.近年来,模糊逻辑与神经网络的融合方法研究得到了学术界的极大关注,这是由于两者间具有互补性.文献[1]使用模糊集来表示神经网络分类问题,文献[2]引入均衡学习矢量量化(PLVQ)来解决传统学习矢量量化(LVQ)[3]中的初始化问题和规范化问题,即有些权值因为输入矢量的分布,可能无法在竞争中获胜,因此就不能得到学习,从而使神经网络单元没有被利用的问题.下面对PLVQ及其中的FLL进行简介,对提出的分类神经网络结构和算法进行详细描述,并在IRIS数据集上进行测试实验,最后给出总结.1均衡学习矢量量化简介PLVQ是基于模糊学习规则(FLL)的一种广义学习矢量量化.它是为解决学习矢量量化(LVQ)的问题而得出的,LVQ是一种将大量非标注的矢量分类到某些给定类的聚类算法,目前已经获得了较好结果,但仍受到初始化问题和规范化问题的困扰.基于Hebb的学习中,假定LVQ网络的权学习规则在离散空间中有以下规则:Δmi=αtui(x)(x-mi)(1)
式(1)中x表示输入矢量,mi表示神经元i的中心矢量,ui(x)表示当给定x时,神经元i的输出值,αt=α(1-t/T)指暂时学习率,为了找出ui(x)的数学表达式和其物理意义,考虑下面的丢失函数:
L=∑ci=1∑Nk=1uqik∑pj=1(xkj-mji)2(2)
式(2)中,uik表示xk与中心矢量mi的匹配程度,指数q控制模糊程度,一般比1稍大,N是数据的个数,c是聚类的数目,聚类数目等于输出神经元数目,p为样本特征数,即输入层节点数目.使用最大模糊熵解释方法和规范化条件(对于每个样本k都有∑cj=1ujk=1),得出以下最小化丢失函数的方案为uik=exp-12σ2∑pj=1(xkj-mji)2∑cj=1exp-12σ2∑pj=1(xkj-mji)2(3)
式(3)中,σ是用户选取的非零值,表示聚类中的模糊程度.σ越小,模糊度也越小,一般选取σ=0.25p从等式(1)和式(3)可以看出每个输入以其对输出值的比值更新所有的权,式(1)称为模糊学习规则(FLL)[3],特别地,当σ→0,uik={0,1}时,模糊学习规则演变为竞争学习规则(CLL)[2],这种引入模糊隶属度的模糊学习规则的矢量量化算法为均衡学习矢量量化,实事证明该均衡学习矢量量化避免了学习矢量量化的两个问题.均衡学习矢量量化算法为:(1)参数设定:2≤c≤n,σ>0,ε>0和最大迭代次数T(2)初始化{mi(0)},与学习速率α0∈[0,1](3)for t=1,2,…,T{for k=1,2,…,N{用等式(3)计算{uik};更新{mi(t)}=mi(t-1)+α0(1-t/T)uik(Xk-mi);
k+1}计算E=∑ci=1∑pj=1|mij(t)-mij(t-1)|IfE<ε或t>T终止;elset=t+1}
2面向特征选择的分类神经网络该网络的结构可用图1描述,它包括输入层、匹配层、检测层和输出层,下面具体介绍该网络.图1面向特征选择的分类神经网络结构示意图
Fig.1Structure profile of the classification neural network oriented to feature selection2.1网络结构如图1所示,该网络包含四层,具体而言:第一层:输入层,该层将有p个特征的样本xk=(xk1,…,xkj,…,xxp)输入网络.第二层:匹配层,该层每个节点以两种方式接受输入,一是正向输入层的各个特征值,二是反馈回来的经过训练后的分类中心矢量,该层结点的激励函数f()为比较函数,而输入yij是两个输入值之差,即:yij=(xij-mji),j=1,2,…,p(4)第三层:检测层,该层有两种类型的节点对,前向节点和反馈节点,每个前向节点通过权连接{wij}接收匹配层的p个节点的输入,前向激励函数g()是高斯函数,该前向结点的输出为zi=exp-12σ2∑pj=1w2ij(xkj-mji)2(5)第4期杨海燕,等:一种面向特征选择的分类神经网络
武汉工程大学学报第30卷
反馈节点通过固定与输出层节点的输入连接层的反馈路径,反馈结点的激励函数b()是线性函数,这保证每个神经元有相同的机会去匹配要到来的输入.第四层:输出层,该层结点的个数为样本的分类个数c,输出节点的功能是对把所有检测节点的输出规范化,决定每个输入结点对各个分类的成绩,也就是每个输入结点属于某类的隶属程度.该层的输出节点有c个输入,从检测层通过固定连接的c条路径得到.此时,神经元i的输出为ui=zi∑cj=1zj(6)2.2学习规则在该网络中,对每个输入样本有两种类型的学习,其中一个是中心矢量mi=(mi1,…,mij,…,mip)学习,另一个是权wij学习,中心矢量学习是非监督的,更新规则基于FLL,即采用式(1)学习.在权学习中,wij表示样本特征j对于聚类i的贡献.为了找出wij的更新规则,引入误差函数:E=12∑Nk=1∑ci=1(ui(xk)-di)2(7)
式(7)中di是输出层节点i的预期值,即权学习是有监督的.把等式(5)代入(6),再带入(7),采用基于微分方程的链式法则,获得以下更新规则:
Δwij=βα2s2(u2(xk)-di)×∑cj=1zj-z
wijzi(xkj-mji)2(8)
式(8)中,β为学习率,wij在0到1之间取值,wij=0即特征j对聚类i无用,为1表示j对聚类i的作用最大.2.3学习算法该网络应用模糊隶属度函数进行学习,初始化时采用随机选取的c个数据样本点作为聚类中心,然后再利用神经网络的自学习功能,逐步更新聚类中心矢量和权矢量.具体步骤如下:(1)α>0,α∈[0,1],β>0,ε>0和最大迭代次数T.(2)从{xk}(k=1,2,…,N)中随机产生c个样本初始化聚类中心{mi(0)},并对所有i,j置wij(0)=1.(3)for t=1,2,…,T;{for k=1,2,…,N{用等式(3)计算{ui};计算{mi(t)}=mi(t-1)+α0(1-t/T)uik(xk-mi);用等式(8)更新{wij(0)};k=k+1}
使用等式(7)计算E;IfE<ε或t>T终止;elset=t+1}
3测试实验为验证该网络的有效性,采用IRIS数据[7]进行了实验.实验数据有150个数据样本,每个样本用四个特征表示,可以分为三类,每类有50个样本,通常,已有的方法对其进行有监督分类的误差是5个,对非监督分类的误差是15个.用x1,x2,x3,x4分别表示四个特征,具体为萼片长、萼片宽、花瓣长、花瓣宽,将该数据集用到提出的网络中,该网络的输入维数p为4,输出层结点数c=3,选取运行参数σ=0.5,α=0.01,β=0.10,ε=2.0,T=1 000,把IRIS数据集逐个输入,结果如表1实验一列的结果,可以看出,由于w21,w22,和w31,w32均为0,可知特征x1和x2对聚类c2和c3没有贡献;而聚类c1中特征x1和x2的作用可用特征x3和x4一起表现.基于此,可以假设特征x1和x2无用.为证明假设正确,只用特征x3和x4再次进行实验,该次实验的运行参数与前次一样,结果如表1中的实验二所示,即误分类的个数与前次实验的结果一样,都是5个,而且权矢量为w1=(1.00,1.00),w2=(1.00,1.00),w3=(0.82,0.97).表1IRIS数据实验结果
Table 1The experiment result of IRIS data
实验一(x1,x2,x3,x4)实验二(x3,x4)e55w1(1.00,1.00,0.95,1.00)(1.00,1.00)w2(0.00,0.00,1.00,1.00)(1.00,1.00)w3(0.00,0.00,0.82,0.97)(0.82,0.97)显然,用两个特征达到了与用四个特征一样的分类表现,所以就可以只选x3(花瓣长)和x4(花瓣宽)两个重要特征.即在进行有监督分类的同时完成了特征选择目的.4结语以上针对模式识别中的特征选择与分类问题,提出了一种能够同时进行特征选择和有监督分类的分类神经网络。该网络同时引入了两种类型的学习,即对中心矢量的学习和对权矢量的非监督学习,从IRIS数据进行实验结果得知:从原始四个特征中选取的两个特征与用所有特征进行分类的表现相当,达到了特征选择的目的,同时从分类误差和网络输出看,也完成了有监督分类的目的.实验表明该分类神经网络具有分类和特征选择的能力。