首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

二十七:自组织映射神经网络

今天的内容是

【自组织映射神经网络】

场景描述

自组织映射算法是无监督学习方法中一类重要方法,可以用作聚类、高维可视化、数据压缩、特征提取等多种用途。在深度神经网络大为流行的今天,谈及自组织映射神经网络(Self-Organizing Map, SOM)依然是一件非常有意义的事情,这主要是由于自组织映射神经网络融入了大量人脑神经元的信号处理机制的特点。具体而言,在人脑的感知通道上,神经元的组织是有序排列的;同时,大脑皮层会对外界特定时空信息的输入在特定区域产生兴奋,而且相类似的外界信息输入产生对应兴奋的大脑皮层区域也连续映像的。此外,在生物神经系统中,还存在着一种“侧抑制”现象,这种抑制作用会使神经细胞之间出现竞争,其结果是某些获胜,而另一些则失败,表现形式是获胜神经细胞兴奋,失败神经细胞抑制。自组织神经网络就是对上述生物神经系统功能的一种人工神经网络模拟,该模型由芬兰赫尔辛基大学教授Teuvo Kohonen于1981年提出,因此有时也称为Kohonen网络。

问题描述

自组织映射神经网络是如何工作的?它有什么样的特点?

解答与分析

自组织映射算法是无监督学习方法中一类重要方法,可以用作聚类、高维可视化、数据压缩、特征提取等多种用途。在深度神经网络大为流行的今天,谈及自组织映射神经网络依然是一件非常有意义的事情,这主要是由于自组织映射神经网络融入了大量人脑神经元的信号处理机制的特点。该模型由芬兰赫尔辛基大学教授Teuvo Kohonen于1981年提出,因此有时也称为Kohonen网络。

生物学研究表明,在人脑的感知通道上,神经元组织是有序排列的;同时,大脑皮层会对外界特定时空信息的输入在特定区域产生兴奋,而且相类似的外界信息输入产生对应兴奋的大脑皮层区域也连续映像的。例如,生物视网膜中有许多特定的细胞对特定的图形比较敏感,当视网膜中有若干个接收单元同时受特定模式刺激时,就使大脑皮层中的特定神经元开始兴奋,且输入模式接近时与之对应的兴奋神经元也接近;在听觉通道上,神经元在结构排列上与频率的关系十分密切,对于某个频率,特定的神经元具有最大的响应,位置相邻的神经元具有相近的频率特征,而远离的神经元具有的频率特征差别也较大。大脑皮层中神经元的这种响应特点不是先天安排好的,而是通过后天的学习自组织形成的。

在生物神经系统中,还存在着一种侧抑制现象,即一个神经细胞兴奋以后,会对周围其它神经细胞产生抑制作用。这种抑制作用会使神经细胞之间出现竞争,其结果是某些获胜,而另一些则失败。表现形式是获胜神经细胞兴奋,失败神经细胞抑制。自组织神经网络就是对上述生物神经系统功能的一种人工神经网络模拟。

自组织映射神经网络本质上是一个两层的神经网络,包含输入层和竞争层(输出层)。输入层模拟感知外界输入信息的视网膜,输出层模拟做出响应的大脑皮层。竞争层中神经元的个数通常是聚类的个数,代表每一个需要聚成的类。训练时采用“竞争学习”的方式,每个输入的样例在竞争层中找到一个和它最匹配的节点,称为它的激活节点,也叫“winning neuron”;紧接着用随机梯度下降法更新激活节点的参数;同时,和激活节点临近的点也根据它们距离激活节点的远近而适当地更新参数。这种竞争可以通过神经元之间的横向抑制连接(负反馈路径)来实现。SOM的竞争层节点是有拓扑关系的。这个拓扑关系依据需求确定,如果想要一维的模型,那么隐藏节点可以是“一维线阵”;如果想要二维的拓扑关系,那么就行成一个“二维平面阵”,也如图(1)所示,也有更高维度的拓扑关系的,比如“三维栅格阵”,但并不常见。

图1. SOM常见的两种网络结构

自组织映射神经网络的自组织学习过程也可以归纳为以下四个子过程,其中假设输入空间是D维,输入模式为:x={xi,i=1, …,D},输入单元i和神经元j之间在计算层的连接权重为:w={wi,j,j=1, …,N,i=1, …,D},其中N是神经元的总数:

基于自组织映射神经网络,通常会引发以下常见的几个问题:

SOM具有什么样的显著特点,为什么?

保序映射。SOM网络可以将任意维输入模式在输出层映射为一维或者二维图形,并保持拓扑结构不变。这种拓扑映射使得“输出层神经元的空间位置对应于输入空间的特定域或特征”。由其学习过程可以看出,每个学习权重更新的效果等同于将获胜的神经元及其邻居的权向量wi向输入向量x移动,同时对该过程的迭代进行会使得网络的拓扑有序。

怎样设计自组织映射神经网络并设定网络训练参数?

自组织映射神经网络设计和参数主要包括以下几个部分:

输出层神经元数量设定:和训练集样本的类别数相关。若不清楚类别数量,则尽可能先设定较多的节点数,以便较好的映射样本的拓扑结构,如果分类过细再酌情减少输出节点。这样可能会带来少量从未更新过权值的 “死节点”,但此问题一般可通过重新初始化权值得到解决。

输出层节点排列的设计:输出层的节点排列成哪种形式取决于实际应用的需要,排列形式应尽量直观反映出实际问题的物理意义。例如,对于一般的分类问题,一个输出节点节能代表一个模式类,用一维线阵意义明确结构简单;对于颜色空间或者旅行路径类的问题,二维平面则比较直观。

权值初始化问题:可以随机初始化,但尽量使权值的初始位置与输入样本的大概分布区域充分重合,避免出现大量的初始“死节点”。一种简单易行的方法是从训练集中随机抽取m个输入样本作为初始权值。

拓扑邻域的设计:拓扑领域设计原则是使领域不断缩小,这样输出平面上相邻神经元对应的权向量之间既有区别又有相当的相似性,从而保证当获胜节点对某一类模式产生最大响应时,其领域节点也能产生较大响应。领域的形状可以是正方形、六边形或者菱形。优势领域的大小用领域的半径表示,通常凭借经验来选择。

学习率的设计:学习率是一个递减的函数,可以结合拓扑邻域的更新一起考虑,也可分开。在训练开始时,学习率可以选取较大的值,之后以较快的速度下降,这样有利于很快捕捉到输入向量的大致结构,然后学习率在较小的值上缓降至0值,这样可以精细地调整权值使之符合输入空间的样本分布结构。

自组织映射神经网络中的竞争学习是怎样实现的?

网络的竞争层各神经元竞争对输入模式的响应机会,获胜的神经元将使得相关的各权重向更加有利于它竞争的方向调整,即以获胜神经元为中心,对近邻的神经元表现出兴奋性侧反馈,而对远邻的神经元表现出抑制性侧反馈,近邻者互相激励,远邻者相互抑制。近邻和远邻均有一定的范围,对更远邻的神经元则表现弱激励的作用。这种交互作用的方式以曲线可视化则类似于“墨西哥帽”,如图2所示。

图2. 神经元的激励交互方式

SOM对比K-means有何不同点?

(1)K-Means需要事先定下类的个数,也就是K的值; SOM则不用,隐藏层中的某些节点可以没有任何输入数据属于它。所以,K-Means受初始化的影响要比较大。

(2)K-means为每个输入数据找到一个最相似的类后,只更新这个类的参数;SOM则会更新临近的节点。所以,K-mean受noise data的影响比较大,SOM的准确性可能会比k-means低(因为也更新了临近节点);

(3) SOM的可视化比较好,具有优雅的拓扑关系图。

下一题

节后更新,敬请期待~

欢迎留言提问或探讨

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180208G0WZFH00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券