自组织特征映射 (Self-Organizing Feature Mapping),即自组织特征
映射网络 ,简称 SOFM或SOM,是由芬兰神经网络专家Kohonen 于1981年提出的。自组织特征映射是一种竞争学习网络,可以通过神经元之间的竞争实现大脑
神经系统中的“近兴奋远抑制”功能,并具有把高维输入映射到低维的能力(拓扑保形特性)。
简介
1981年,科霍恩(Kohonen)教授提出一种自组织特征映射网络,该网络的出发点是模拟大脑皮层中具有自组织特征的神经信号传送过程,属于无导师学习的竞争型神经网络。科霍恩认为,一个生物神经网l络在接受外界输入模式时,将会分为不同的对应区域,各区域对输入模式具有不同的响应特征,而且这个过程是自功完成的。以此为基础,科霍恩创建了SOM。
SOM的生物学基础是:(1)侧抑制现像:这种侧抑制使神经细胞之间呈现出竞争,一个兴奋程度最强的神经细胞对
周围神经细胞有明显的抑制作用,其结果使周围神经细胞兴奋度减弱,从而该神经网络是这次竞争的“胜者”,而其他神经细胞在竞争中失败。(2)
生物神经网络接受外界的特定时空信息时,神经网络的特定区域兴奋,而且类似的
外界信息在对应区域是连续映象的。SOM经训练后,其竞争层神经元,功能类似的相互靠近,功能不同的相互较远,这与生物神经网络的组织构造非常类似。
自组织特征映射的每个输入模式均对应于二维网格上的一个局部化区域,而且随着输入模式的不同, 该区域的位置和性质也各不相同。 因此,必须有充分数量的输入模式,才能保证网格中所有的神经元都受到训练,并确保自组织过程的正确收敛。SOFM 的一个重要特点是具有拓扑保形特性,即最终形成的以输出权矢量所描述的特征映射能反映输入的模式的分布。
自提出以来,自组织特征映射网得到快速发展和改进,已广泛应用于样本分类、排序和样本检测等方面,和工程、金融、医疗、军事等领域,并成为其他
人工神经网络的基础。其实际应用包括:模式识别、过程和系统分析、机器人、通信、数据挖掘以及知识发现等。
基本原理
SOFM的基本原理是:当某类模式输入时, 输出层某节点得到最大刺激而获胜,获胜节点周围的节点因侧向作用也受到刺激。这时网络进行一次学习操作,获胜节点及周围节点的连接权值向量朝输入模式的方向作相应的修正。当输入模式类别发生变化时, 二维平面上的获胜节点也从原来节点转移到其它节点。这样,网络通过自组织方式用大量样本数据来调整其连接权值,最后使得网络输出层特征图能够反映样本数据的分布情况。
拓扑结构
SOFM网络一个典型的特性就是可以在一维或者二维的处理单元阵列上形成输入信号的特征拓扑分布,SOM网络具有抽取输入信号模式特征的能力。其中应用较多的二维阵列模型由4部分组成:1)处理单元阵列,用于接受事件输入,并且形成对这些信号的判别函数;2)比较选择机制,用于比较判别函数,并选择一个具有最大函数输出值的处理单元;3)局部互连作用,用于同时激励被选择的处理单元及其最邻近的处理单元;4)自适应过程,用于修正被激励的处理单元的参数,以增加其对应于特定输入的判别函数的输出值(如图1所示)。
SOFM的拓扑结构如图1所示,由输入层和输出层(竞争层)组成,SOFM的拓扑结构不包括隐含层。输入层为一维,由 N个神经元组成; 竞争层由 M个输出神经元组成,且形成一个二维阵列,竞争层可以是一维(图2)、二维(图3)或多维。其中二维竟争层由矩阵方式构,二维竞争层的应用最为广泛。输入层与竞争层各神经元之间实现全互连接,竞争层之间实行侧向连接。网络根据其学习规则,对输入模式进行自动分类,即在无导师情况下,通过对输入模式的自组织。 学习,抽取各个输入模式的特征,在竞争层将分类结果表示出来。
主要特性
SOFM的主要特性为:1)自组织排序性质,即拓扑保持能力;2)自组织概率分布性质;3)以若干神经元同时反映分类结果,具有容错性;4)具有自联想功能。
SOFM网络的主要功能为:实现数据压缩、编码和聚类。
学习算法
算法应首先对权值进行初始,SOFM 的初始权值常取小的随机数。权值初始化后, SOFM 还应完成两个基本过程:竞争过程和合作过程。竞争过程就是最优匹配神经元的选择过程,合作过程则是网络中权系数的自组织过程。选择最优匹配神经元实质是选择输入模式对应的中心神经元,权系数的自组织过程则是以“墨西哥帽”的形态来使输入模式得以存放。这两部分是密切相关的,它们共同作用才能完成自组织特征映射的学习过程。
每执行一次学习, SOFM 网络中就会对外部输入模式执行一次自组织适应过程,其结果是强化现行模式的映射形态,弱化以往模式的映射形态。
学习算法的具体过程如下
1)初始化。赋予N个输入神经元到输出神经元较小的连接权值,选取输出神经元 j 临接神经元的集合 。其中, 表示时刻t=0的神经元 j 的临接神经元的集合, 表示 t 时刻 j 的临接神经元的集合, 随着时间的增长而不断缩小。
2)提供新的输入模式X。
3)计算欧式距离 。即输入样本与每个输出神经元 j 之间的距离: ,并计算出一个具有最小距离的神经元 j*,即确定某个单元 k,使得对于任意的 j,都有 。
4)给出一个周围的临域 。
5)按照下式修正输出神经元 j* 及其临接神经元的权值:
其中,为一个增益项,并随时间变化逐渐下降到零,一般取或。
6)计算输出。,式中,一般为0~1函数或其他
非线性函数。
7)提供新的学习样本来重复上述学习过程。