一种集“分类与聚类”为一体的模糊神经网络算法的制作方法

文档序号:13137859阅读:230来源:国知局
一种集“分类与聚类”为一体的模糊神经网络算法的制作方法

本发明涉及模式分类技术领域,尤其涉及一种集“分类与聚类”为一体的模糊神经网络算法。



背景技术:

在模式分类领域中,监督与非监督学习一直扮演着相当重要的角色。所谓监督学习,即作为训练样本的输入数据都有着类别信息,被称之为已标识样本(labeled);模式分类(classification)的主要任务就是探索某个类与类之间的判定边界,使得类别的误分率最小化。而非监督学习方式正相反,作为训练样本的输入数据没有类别信息,被称之为未标识样本(unlabeled);模式聚类(clustering)的主要任务是根据某种相似性准则,将输入模式划分成若干个组(class)或者类(cluster)。

通常,这两种学习方式被分开来研究与应用,例如,simpson提出的模糊最小-最大神经网络(fuzzymin-maxneuralnetwork),简称fmm,就是一种既可以应用于模式分类,也可以用于模式聚类的模糊神经网络。但它们都是分别应用于两种不同的模式分类,一种称为有监督学习,另一种称为无监督学习,因为这两种方法都实现简单,并且效率较高,故这两种方法得到了广泛的研究。

simpson提出的模糊最小-最大神经网络fmm是一种采用超盒(hyperbox)隶属度函数的模糊神经网络,一个超盒就定义了n维模式空间中的一个区域,所有包含在超盒内的模式对该超盒都具有完全的隶属度(membership)。一个超盒完全由它的最小点和最大点确定,且此最小-最大点对和这个超盒的隶属度函数联合起来定义了一个模糊集(即类别)。

下面详细说明simpson提出的模糊最小-最大神经网络fmm的工作原理:

fmm主要采用超盒对模式空间进行划分,一个超盒定义了n维模式空间的一个区域。所有包含在超盒中的模式具有相同的类别,一个超盒由它在模式空间的最小点和最大点共同表示,并且对应一个模糊隶属度函数。(1)在分类问题中,表示相同类别的超盒模糊集合构成并表示一个类别的模糊集合;(2)在聚类问题中,超盒的最小点与最大点对,和这个超盒的隶属度函数联合起来定义了一个模糊集(即聚类)。

图1所示为三维模式空间中的一个超盒c,从图1中可以看出,它完全由一对最小点min和最大点max确定。虽然超盒的每一维分量都可以取任何范围的值,但fmm中规定超盒每维分量的取值都在0和1之间。因此,模式空间将是一个三维的单位立方体。每个超盒模糊集的隶属度函数都描述了样本隶属于该超盒的程度,且隶属度取值范围也在0到1之间。

假设bj为第j个超盒模糊集,则定义bj为如下有序集合:

bj={xh,vj,wj,bj(xh,vj,wj)}(1)

其中:h={1,2,...m},m为设定的正整数;是第h个输入模式,是低端点,是高端点。vj是第h个输入模式的最小点,wj是第h个输入模式的最大点,模糊隶属度函数0≤bj(xh,vj,wj)≤1。隶属度函数衡量了第h个输入样本xh位于由最小点vi和最大点wj形成的超盒中的程度。在逐维比较的标准中,这一准则可以被看成是数据落在超盒最小-最大边界之外的每维分量比该超盒最大(小)点的值大(小)多少。xh越接近于超盒,0≤bj(xh,vj,wj)≤1就越接近于1。

fmm的学习方法就是一个扩张与压缩超盒的过程,假设训练集为x∈{xh|h=1,2,...,m},其中,xh=(xh1,xh2,...xhn)∈in是第n个样本。开始学习中选择有序对并寻找离此样本最近的超盒,如果超盒满足扩张条件,则扩张该超盒以包含这个样本;如果不能找到满足扩张准则的超盒,则形成一个新的超盒并将其加入到系统中。这个递增的过程允许多次修改已存在的超盒,同时,也可以避免新的超盒加入时的重新训练。

但是,超盒扩张带来一个问题,就是超盒的重叠。超盒重叠会引起歧义,试想一个样本对不止一个超盒集有相同的部分隶属度是合理的,但一个样本完全属于多个超盒集就不合理了。因此,最理想的情况就是清晰的类别间没有重叠。由此,fmm的学习算法由四步组成:初始化-扩张-重叠测试-压缩。每输入一个样本都要重复上述四步,直至边界稳定为止。

(1)初始化(initialization):在正式开始学习前,初始化所有超盒的最大点。

(2)扩张(expansion):判断离输入样本最近的超盒是否可被扩张,如果可,则扩张该超盒。如果不存在这样的超盒,则加入一个新的超盒到系统中。

(3)重叠测试(overlaptest):确定最近扩张的超盒是否导致了超盒间的重叠。

(4)压缩(contraction):如果重叠测试检测出任何重叠超盒,则压缩这盒以消除重叠。一旦检测出两个超盒间有重叠,则立即执行压缩操作,这样做可以避免重叠先检测再消除时可能导致的不必要的或错误的压缩操作。

输入样本数据集中的每一个样本都要重复上述的步骤(1)~(4),直到得到稳定的边界结果。这里定义边界稳定性为在以相同的顺序连续的输入数据集时,所有超盒的最小-最大点都不再改变。图2是一个a、b两类分类问题的二维示意图。

上述原理分析可以看出,fmm的学习过程过程就是在模式空间中构造和调整超盒的过程。一旦对输入样本训练完毕,分类界面就此形成。随后,对于给定的测试样本,网络的操作就是计算该样本对于当前已存在的每个超盒集的隶属度值,以此判定该样本属于哪一类超盒集。在此过程中,每一个样本都只有一次通过分类器的机会。

综上所述,fmm的学习算法由四步组成:初始化-扩张-重叠测试-压缩。每输入一个样本都要重复上述四步,直至边界稳定为止。这四步学习算法中,每一步都只考虑单个种类的学习样本,即:要么样本是已标识的,要么样本是未标识的,两种不同的样本不能同时作为学习样本存在。

可是,在现实生活中,人类已能够将已标识样本与未标识样本集成在一个识别系统中,将监督与非监督这两种学习方式集成在一起,这是人类对未知世界进行认知的一个重要特征。

如何模拟人类认知的这一重要特征,将分类与聚类两种不同的学习方法集成在一个模糊神经网络系统中,同时实现既对“已标识的样本”进行有监督学习(分类),又对“未标识的样本”进行无监督学习(聚类),是本领域技术人员致力于解决的难题。



技术实现要素:

本发明要解决的技术问题是如何将分类与聚类两种不同的学习方法集成在一个模糊神经网络系统中,同时实现既对“已标识的样本”进行有监督学习(分类),又对“未标识的样本”进行无监督学习(聚类)。

为了解决上述技术问题,本发明的技术方案是提供一种集“分类与聚类”为一体的模糊神经网络算法,其特征在于,具体为:

一、基本定义

1、输入向量

集成算法模型的输入模式采用下列形式的序对:{xh,dh};

其中,表示第h个输入模式,是低端点,是高端点,h为正整数;dh∈{0,1,2,...p}表示p+1类中某一类的类别标记,p为正整数,当dh=0时意味着输入样本为未标识样本;

2、模糊超盒隶属度函数

一个超盒定义n维模式空间中的一个区域,n为正整数;每个超盒具有一个模糊隶属度函数,模糊隶属度函数决定了模式空间中任意一点对该超盒的隶属程度;超盒的最小最大点和模糊隶属度函数定义了一个模糊集,属于同一类模式的超盒模糊集的并就构成了该类模式的分类空间;

首先,第j个超盒模糊集定义为一个有序集合:

bj={xh,vj,wj,bj(xh,vj,wj)}(1)

其中:h={1,2,...m},m为正整数;是第h个输入模式,vj是第h个输入模式的最小点,wj第h个输入模式的最大点,模糊隶属度函数0≤bj(xhvj,wj)≤1,模糊隶属度函数定义如下:

其中,f(r,γ)是两个参数的斜坡阈值函数,它符合在模糊逻辑系统中,能够简明直观的表达专家知识的特征;

γ=[γ1,γ2,...γn]表示灵敏度参数,其表明隶属度值下降的速率;当γ变大时,模糊集边界将变得更加清晰,且随着γ的减小,模糊集边界的这种清晰性也会逐渐降低;

其中,公式(2)中的xihu表示第h个超盒高端点的第i维分量值,wji表示第j个超盒的高端点,vji表示第j个超盒的低端点,xih1表示第h个输入模式低端点的第i维分量值。(第h个超盒与第.j个超盒两者之间逐维进行比较)

二、学习算法

1、超盒初始化

对于给定的样本集x∈{xh|h=1,2,...,m},vj及wj的初始值设为:vj=0,wj=0;当第j个超盒被首次增加进来时,超盒的最大、最小点将依次被修改为:初始化标识集class(bk)=dk对于所有的k=0,1....p,如果dk=0则意味着样本未被标识;

2、超盒扩张

当从上一步中选出的第h个输入模式bh与超盒bj满足相似性测度最大时,判断其是否满足下列扩张准则:

θ为自定义参数,用来限制超盒的最大尺寸,并且0<θ<1;其后再根据下列公式来调整bj:

如果class(bh)=0则调整bj(5)

否则

如果

上述扩张可以分成两种情况,其一:当输入模式bh属于未标识样本,即class(bh)=0,并且超盒bh与超盒bj又满足超盒的扩张准则,以及相似性最大的测度值,那么认为这个输入模式bh归属于足够接近的某个类别或聚类族,则调整bh和bj进行扩张;其二:当输入模式的标识是已知的,即class(bh)≠0,属于某个特定的类别,则又可以分为以下三种情况:1)超盒bj没有具体的类别信息,即class(bj)=0,则调整bh和bj进行扩张;并且,超盒bj被赋予与超盒bh相同的类别标识;2)超盒bj与超盒bh具有相同的类别信息,即class(bj)=class(bh),则调整bh和bj进行扩张;3)超盒bj有具体的类别信息,但不同于超盒bh,即class(bj)≠class(bh),则在相似性矩阵中取其他的一对,满足最大相似性测度的超盒。

bj的调整操作如下:

将bh从原超盒集中除去,加入扩张后的超盒bj;

其中,分别表示超盒低端点和高端点的新值,分别表示超盒低端点和高端点的旧值,分别表示超盒的低端点和高端点。

3、重叠测试

超盒的重叠测试分为两种情况,

如以下公式所示:

上述测试原则充分体现了不同类别超盒之间不允许有重叠的原则;用δ表示重叠程度,且初始值δold=1;对前一步扩张所得的超盒bj,逐维比较bj和当前超盒集中的其他超盒bk,如果bj和bk的每一维分量都符合下列四种情况之一,则它们之间发生重叠:1)vji<vki<wji<wki;2)vki<vji<wki<wji;3)vji<vki≤wki<wji;4)vki<vji≤wki<wji;

其中,v即表示最低端,w即表示最高端,i表示其中的某一维。

4、超盒压缩

如果超盒发生了重叠,则也要按照上述四种情况进行压缩,以消除重叠,具体操作与fmm学习算法的重叠测试与压缩操作一样;

压缩操作完成后,还要对模糊隶属度函数进行更新,即对扩张与压缩操作后得到的超盒集,根据式(1)、(2)重新计算其模糊隶属度函数,上述过程循环往复,直至不再有超盒可以进行扩张为止。

优选地,1)当输入的样本集全是未标识的样本,随后的学习过程采用非监督学习方式,对样本集进行聚类操作;2)当输入的样本集全是已标识的样本,随后的学习过程采用监督学习方式,对样本集进行分类操作;3)当输入的样本集部分是已标识的样本、部分是未标识的样本,则随后的学习过程采用监督学习方式,对样本集进行分类操作。

本发明以模糊最小-最大神经网络fmm为基准,重新设计该学习算法的四个步骤,在每一步骤中,充分考虑两种样本同时存在的可能性,区分分类学习与聚类学习的不同之处,实现两种学习方法共存在同一个模糊神经网络系统中。相比传统的fmm学习算法,本发明具有如下有益效果:

1、每走一步,本发明都要判断从输入端口进来的学习样本是未标识的?还是已标识的?并根据它们不同的类别采取不同相似性矩阵运算公式,以及对超盒采取不同的扩张和压缩方式,使得无论是未标识的样本,还是已标识的样本都能够在同一个模糊神经网络中进行学习;

2、根据样本是否标识的前提,本发明在非监督(聚类)学习方法或者监督学习(分类)方法两者之间任意的转换,而不影响学习效果。

3、本发明提供的集成监督与非监督学习的新型模糊最小-最大神经网络,该学习算法既可以用于全部是未标识样本的纯聚类,全部是已标识样本的纯分类,也可以用于聚类与分类的混合学习方式。在混合样本学习过程中,不同于原有学习算法,无论是已标识的样本,还是未标识的样本,都得到了充分的利用,因此,使得分类正确率有了一定的提高。

附图说明

图1为三维模式空间中的超盒示意图;

图2为超盒集构成的两分类结果示意图。

具体实施方式

下面结合具体实施例,进一步阐述本发明。

本发明提供了一种集“分类与聚类”为一体的模糊神经网络算法,主要思想是:(1)当输入样本全是未标识的样本,即随后的学习过程以非监督学习方式为主,对样本集进行聚类操作;(2)当样本集是全部已标识的,随后的学习过程以监督学习方式为主,对样本进行分类操作;(3)当样本是部分已标识,部分未标识的,则采取与(2)相同的学习方式,即监督学习法。

一、基本定义:

1、输入向量

集成学习模型的输入模式采用下列形式的序对:{xh,dh}。

其中,表示第h个输入模式,是低端点,是高端点。而dh∈{0,1,2,...p}表示p+1类中某一类的类别标记,当dh=0时就意味着输入样本为未标识样本。

本实施例中所定义的超盒表示了n维模式空间的一个子区域,其位置及大小完全由模式空间的一个最小点和最大点确定,当时,这个子区域缩成一个点。因此,这个定义完全可以推广到n维模式空间的一个点的定义。而dh的引入,则是为了满足后面的将监督与非监督学习集成在一起的需要。

2、模糊超盒隶属度函数:

每个超盒还具有一个模糊隶属度函数,它决定了模式空间中任意一点对该超盒的隶属程度。超盒的最小最大点和模糊隶属度函数就定义了一个模糊集。属于同一类模式的超盒模糊集的并就构成了该类模式的分类空间。

首先第j个超盒模糊集定义为一个有序集合:

bj={xh,vj,wj,bj(xh,vj,wj)}(1)

其中:h={1,2,...m},是第h个输入模式,vj是第h个输入模式的最小点,wj第h个输入模式的最大点,模糊隶属度函数0≤bj(xh,vj,wj)≤1,为了满足新的标准,一个新的模糊隶属度函数定义如下:

其中f(r,γ)是两个参数的斜坡阈值函数,它符合在模糊逻辑系统中,能够简明直观的表达专家知识的特征。

γ=[γ1,γ2,...γn]表示灵敏度参数,其表明隶属度值下降的速率。当γ较大时,模糊集边界将变得更加清晰,且随着γ的减小,模糊集边界的这种清晰性也会逐渐降低。

其中,公式(2)中的xihu表示第h个超盒高端点的第i维分量值,wji表示第j个超盒的高端点,vji表示第j个超盒的低端点,xih1表示第h个输入模式低端点的第i维分量值。(第h个超盒与第j个超盒两者之间逐维进行比较)

二、学习算法:

1、超盒初始化

对于给定的样本集x∈{xh|h=1,2,...,m},vj及wj的初始值设为:vj=0,wj=0。当第j个超盒被首次增加进来时,超盒的最大、最小点将依次被修改为:初始化标识集class(bk)=dk对于所有的k=0,1....p,如果dk=0则意味着样本未被标识。

2、超盒扩张

当从上一步中选出的第h个输入模式bh与超盒bj满足相似性测度最大时,判断其是否满足下列扩张准则:

θ为用户定义参数,用来限制超盒的最大尺寸,并且0<θ<1。其后再根据下列公式来调整bj

如果class(bh)=0则调整bj(5)

否则

如果

上述扩张可以分成两种情况,其一:当输入模式bh属于未标识样本,即class(bh)=0,并且超盒bh与超盒bj又满足超盒的扩张准则,以及相似性最大的测度值,那么可以认为这个输入模式bh可以归属于足够接近的某个类别或聚类族,则调整bh和bj进行扩张。其二:当输入模式的标识是已知的,即class(bh)≠0,属于某个特定的类别,则又可以分为以下三种情况:(1)超盒bj没有具体的类别信息,即class(bj)=0,则调整bh和bj进行扩张。并且,超盒bj被赋予与超盒bh相同的类别标识;(2)超盒bj与超盒bh具有相同的类别信息,即class(bj)=class(bh),则调整bh和bj进行扩张。(3)超盒bj有具体的类别信息,但不同于超盒bh,即class(bj)≠class(bh),则在相似性矩阵中取其他的一对,满足最大相似性测度的超盒。

bj的调整操作如下:

将bh从原超盒集中除去,加入扩张后的超盒bj。

其中,分别表示超盒低端点和高端点的新值,分别表示超盒低端点和高端点的旧值,分别表示超盒的低端点和高端点。

3、重叠测试

超盒的压缩由超盒重叠检测和超盒压缩两步组成。考虑到输入模式中既包含已标识样本,又包含未标识样本,故超盒的重叠测试分为两种情况,如以下公式所示:

上述测试原则充分体现了不同类别超盒之间不允许有重叠的原则。用δ表示重叠程度,且初始值δold=1。对前一步扩张所得的超盒bj,逐维比较bj和当前超盒集中的其他超盒bk,如果bj和bk的每一维分量都符合下列四种情况之一,则它们之间发生重叠:(1)vji<vki<wji<wki;(2)vki<vji<wki<wji;(3)vji<vki≤wki<wji;(4)vki<vji≤wki<wji。

其中,v即表示最低端,w即表示最高端,i表示其中的某一维。

4、超盒压缩

如果超盒发生了重叠,则也要按照上述四种情况进行压缩,以消除重叠。具体操作与fmm学习算法的重叠测试与压缩操作一样,这里就不进行详细描述。

压缩操作完成后,还要对模糊隶属度函数进行更新,即对扩张与压缩操作后得到的超盒集,根据式(1)、(2)重新计算其模糊隶属度函数。上述过程循环往复,直至不再有超盒可以进行扩张为止。

通过上面对集成监督与非监督两种学习方法的模糊最小-最大神经网络学习算法的介绍,可以看出,每输入一个样本,算法就在超盒集中寻找离该样本最近(即隶属度最大)并满足扩张条件的超盒,扩张该超盒使其包含这个样本。如果超盒集中找不到满足上述条件的超盒,就为该输入样本形成一个新的超盒并将其加入超盒集中。由于扩张过程可能使超盒之间产生重叠,而重叠会导致一个样本同时完全属于两个或更多个超盒,因此在扩张之后还要采用压缩过程来消除这些重叠。总之,集成学习算法就是由初始化、扩张、重叠测试、压缩四步组成的,且每输入一个样本,后三步都要进行一次循环,直到学完所有样本。

以上所述,仅为本发明的较佳实施例,并非对本发明任何形式上和实质上的限制,应当指出,对于本技术领域的普通技术人员,在不脱离本发明方法的前提下,还将可以做出若干改进和补充,这些改进和补充也应视为本发明的保护范围。凡熟悉本专业的技术人员,在不脱离本发明的精神和范围的情况下,当可利用以上所揭示的技术内容而做出的些许更动、修饰与演变的等同变化,均为本发明的等效实施例;同时,凡依据本发明的实质技术对上述实施例所作的任何等同变化的更动、修饰与演变,均仍属于本发明的技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1