《基于SOM的数据分类.ppt》由会员分享,可在线阅读,更多相关《基于SOM的数据分类.ppt(22页珍藏版)》请在三一办公上搜索。
1、第二十九章,MATLAB优化算法案例分析与应用,第29章 基于SOM的数据分类,第二十九章,MATLAB优化算法案例分析与应用,29.1 SOM原理分析,在网络结构上,自组织竞争网络一般是有输入和竞争层构成的单层网络,网络没有掩藏层,输入和竞争层之间的神经元实现双向链接,同时竞争层各神经元之间还存在横向连接。自组织竞争网络的基本思想是网络竞争层各个神经元竞争对输入模式的响应机会,最后仅一个神经元成为竞争的胜者,并对那些与获胜神经元有关的各连接权值朝向更有利于竞争的方向调整。获胜神经元表示输入模式的分类。除了竞争方法外,还有通过抑制方法获胜的,即网络竞争层各层神经元都能抑制所有其他神经元对输入模
2、式的响应机会,从而使自己成为胜利者。此外,还有一种抑制的方法,即每个神经元只抑制与自己临近的神经元,而对远离自己的神经元则不抑制。因此,自组织竞争网络自组织自适应的学习能力进一步拓宽了神经网络在模式识别分类方面的应用。,第二十九章,MATLAB优化算法案例分析与应用,29.1 SOM原理分析,1981年芬兰Helsink大学的T.Kohonen教授提出一种自组织特征映射网,简称SOM网,又称Kohonen网。生物神经系统中,存在一种“侧抑制”现象,即一个神经细胞兴奋后,通过它的分支会对周围其他神经细胞产生抑制。由于侧抑制的作用,各细胞之间相互竞争的最终结果是:兴奋作用最强的神经细胞所产生的抑制
3、作用战胜了周围所有其他细胞的抑制作用而“赢”了,其周围的其他神经细胞则全“输”了。,Kohonen认为:一个神经网络接受外界输入模式时,将会分为不同的对应区域,各区域对输入模式具有不同的响应特征,而且这个过程是自动完成的。自组织竞争人工神经网络正是基于上述生物系统结构和现象形成的。它是一种以无导师学习学习方式进行网络,具有自组织功能的神经网络。网络通过自身训练,自动对输入模式进行分类。,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,自组织特征映射神经网络(Self-organizing Feature Maps)简称SOFM或者SOM,也是一种无导师学习的网络,
4、主要用于对输入向量进行区域分类。和自组织竞争网络不同的是,它不但识别输入区域临近的区域,还研究输入向量的分布特性和拓扑特性结构。SOM网络模拟大脑神经系统自组织特征映射的功能,是一种竞争型网络,并在学习中能无导师进行自组织学习。脑神经学研究结果表明:神经元之间的信息交互具有的共同特征是:最近邻的两个神经元互相激励,较远的神经元互相抑制,更远的则又具有较弱的激励作用。,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,SOM网络模型层结构图如图29-1所示。,图29-1 SOM模型结构图,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,由
5、于SOM算法是一种无导师的聚类法,它能将任意维输入模式在输出层映射成一维或者二维离散图形,并保持其拓扑结构不变,即在无导师的情况下,通过对输入模式的自组织学习,在竞争层将分类结果表示出来,此外,网络通过对输入模式的反复学习,可以使连接权值空间分布密度与输入模式的概率分布趋于一致,即链接权向量分布能反映输入模式的统计特征。,和自组织竞争网络一样,SOM网络可以用来识别获胜神经元,不同的是,自组织竞争网络只修正获胜神经元,而SOM网络依据Kohonen学习规则,要同时修正获胜神经元附近区域Ni(d)内所有神经元。,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,对于输
6、入向量 p,一旦获胜神经元以及临近神经元的权值被修正后接近p,多次循环后,临近神经元会彼此接近。SOM神经元竞争二维临域示意图如图29-2所示。,图29-2 二维临域示意图,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,如图29-2所示临域可以用集合表示:,(1)Gridtop()网格拓扑结构,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,(2)Hextop()六角形拓扑结构,图29-4 六角形拓扑结构,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,(2)Hextop()六角形拓扑结构,图29-4
7、六角形拓扑结构,增加神经元拓扑结构节点个数,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,(3)Randtop()随机拓扑结构,图29-6 随机拓扑结构,第二十九章,MATLAB优化算法案例分析与应用,29.2 SOM拓扑结构分析,(3)Randtop()随机拓扑结构,增加神经元随机拓扑结构节点个数,图29-7 随机拓扑结构,第二十九章,MATLAB优化算法案例分析与应用,29.3 SOM的癌症样本分类预测,SOM是一类采用无教师学习方式的神经网络模型,它无须期望输出,只是根据数据样本进行学习,并调整自身的权重以达到学习的目的。自组织神经网络的学习规则大都采用竞
8、争型的学习规则。竞争型神经网络的基本思想是网络竞争层的各神经元通过竞争来获取对输入模式的响应机会,最后仅由一个神经元成为胜利者,并将与获胜神经元有关的各连接权值朝向这更有利于的方向调整。自组织映射神经网络用途:模式分类和模式识别。其具体网络层结构图如图29-8所示。,第二十九章,MATLAB优化算法案例分析与应用,29.3 SOM的癌症样本分类预测,图29-8 自组织映射神经网络层结构图,第二十九章,MATLAB优化算法案例分析与应用,29.3 SOM的癌症样本分类预测,%将原数据回带,测试网络效果:%a=sim(net,P);a=sim(net,Pn);%使用变换函数vec2ind(),将单
9、值向量组变换成下标向量%a:为n个元素值为1所在的行下标值构成的一个行向量。%ac:为m行n列的向量矩阵x,x中的每个列向量i,除包含一个1外,其余元素均为0。ac=vec2ind(a)%分类标记%网络作分类的预测%下面将后20个数据带入神经网络模型中,观察网络输出:%sim()来做网络仿真%Y=sim(net,T)Y=sim(net,Tn)%得到预测的可能性结果Yc=vec2ind(Y),第二十九章,MATLAB优化算法案例分析与应用,29.4 柴油机故障分类,第二十九章,MATLAB优化算法案例分析与应用,29.4 柴油机故障分类,应用SOM神经诊断网络柴油机故障的步骤如下:(1)选取标准
10、故障样本;(2)对每一种标准故障样本进行学习,学习结束后,对具有最大输出的神经元标以该故障的记号;(3)将待检样本输人到SOM神经网络中;(4)若输出神经元在输出层的位置与某标准故障样本的位置相同,说明待检样本发生了相应的故障;若输出神经元在输出层的位置介于很多标准故障之间,说明这儿种标准故障都有可能发生,且各故障的程度由该位置与相应标准故障样本位置的欧氏距离确定。,newsom()用于创建一个自组织特征映射其调用格式为:net=newsom(PR,d1,d2,d3,tfcn,dfcd,olr,osteps,tlr,tns),第二十九章,MATLAB优化算法案例分析与应用,29.4 柴油机故障
11、分类,%训练次数为1000次net.trainparam.epochs=a(7);%训练网络和查看分类net=train(net,P);y=sim(net,P);yc(7,:)=vec2ind(y);plotsom(net.IW1,1,net.layers1.distances)yc%网络作分类的预测%测试样本输入t=0.9512 1.0000 0.9458-0.4215 0.4218 0.9511 0.9645 0.8941;%sim()来做网络仿真r=sim(net,t);%变换函数 将单值向量转变成下标向量。rr=vec2ind(r),第二十九章,MATLAB优化算法案例分析与应用,29
12、.4 柴油机故障分类,图29-9 SOM网络拓扑学结构,第二十九章,MATLAB优化算法案例分析与应用,29.4 柴油机故障分类,图29-10 临近神经元之间的距离情况,第二十九章,MATLAB优化算法案例分析与应用,29.4 柴油机故障分类,图29-11 每个神经元分类情况,第二十九章,MATLAB优化算法案例分析与应用,29.4 柴油机故障分类,由程序输出聚类的结果,当训练步数为10时,故障原因1、3分为一类,2、4、6分为一类,5、8为分类,7单独一类。可见,网络已经对样本进行了初步的分类,这种分类不够精准。当训练步数为200时,每个样本都被划分为一类。这种分类结果更加细化厂。当训练步数为500或者1000时,同样是每个样本都被划分为一类。这时如果再提高训练步数,已经没有实际意义了。,