人工智能–SOM算法

人工智能之SOM算法

前言:人工智能机器学习有关算法内容,请参见公众号“科技优化生活”之前相关文章。人工智能之机器学习主要有三大类:1)分类;2)回归;3)聚类。今天我们重点探讨一下SOM算法。^_^

SOM自组织映射是一种人工神经网络(ANN)[请参考人工智能(23)]。SOM自组织映射算法是一种聚类高维可视化无监督学习算法,是通过模拟人脑对信号处理的特点而发展起来的一种人工神经网络。

SOM算法由芬兰赫尔辛基大学教授Teuvo Kohonen于1981年提出,因此又称为Kohonen算法,现在已成为应用最广泛的自组织神经网络方法,其中的WTA(Winner Takes All)竞争机制反映了自组织学习最根本的特征。

SOM算法是一种非监督无导师)的聚类方法,具有良好的自组织、可视化等特性,自20年前该算法提出至今很多研究者围绕该算法在模式识别、信号处理,数据挖掘等理论和应用领域做了大量工作,并且取得了大量研究成果。这些成果的取得很大程度上归功于SOM算法本身的简明性实用性

SOM算法概念:

SOM(Self Organizing Maps)即自组织映射神经网络,通过自动寻找样本中的内在规律和本质属性,自组织、自适应地改变网络参数与结构。

SOM模型本质上是一种只有输入层--隐藏层的神经网络。隐藏层中的一个节点代表一个需要聚成的类。训练时采用“竞争学习”的方式,每个输入的样例在隐藏层中找到一个和它最匹配的节点,称为它的激活节点,也叫“winning neuron”。紧接着用随机梯度下降法更新激活节点的参数。同时,和激活节点临近的点也根据它们距离激活节点的远近而适当地更新参数。

SOM一个特点是,隐藏层的节点是有拓扑关系的。这个拓扑关系需要确定,如果想要一维的模型,那么隐藏节点依次连成一条线;如果想要二维的拓扑关系,那么就行成一个平面,如下图所示:

隐藏层是有拓扑关系的,SOM可以把任意维度的输入离散化到一维或者二维(更高维不常见)的离散空间上。Computation layer里面的节点与Input layer的节点是全连接的。

SOM算法本质:

SOM网络接收外界输入模式时,将会分为不同的对应区域,各区域对输入模式有不同的响应特征,而这个过程是自动完成的。其特点与人脑的自组织特性类似。SOM的目标是用低维(通常是二维或三维)目标空间的点来表示高维空间中的所有点,尽可能地保持点间的距离和邻近关系(拓扑关系)。

SOM自组织映射不同于其他人工神经网络,因为SOM自组织映射应用竞争学习,而不是纠错学习(例如BP神经网络)。并且SOM自组织映射使用邻域功能来保持输入的拓扑性质。

SOM网络结构:

SOM网络结构由2层组成,即输入层和竞争层(输出层),如下图所示。

1)输入层:接收外界信息,将输入模式向竞争层传递,起到观察作用。

2)竞争层(输出层):负责对输入模式进行分析比较,寻找规律,并归类。

输入层神经元数为n,竞争层由m个神经元组成的一维或者二维平面阵列。网络是全连接的,即每个输入结点都同所有的输出结点相连接。

SOM有关术语:

1)相似性测量:人工神经网络的输入模式向量的相似性测量可用向量之间的距离来衡量。常用的方法有欧氏距离法和余弦法两种。

(a)欧式距离法,公式如下:

d越小,X与Xi越接近,两者越相似。

(b)余弦法,公式如下:

φ越小,X与Xi越接近,两者越相似。

2)竞争学习:竞争学习规则的生理学基础是神经细胞的侧抑制现象:当一个神经细胞兴奋后,会对其周围的神经细胞产生抑制作用。最强的抑制作用是竞争获胜的“唯我独兴”,这种做法称为“胜者为王”(WTA)。竞争学习规则就是从神经细胞的侧抑制现象获得的。

SOM算法原理:

SOM网络能将任意维输入模式在输出层映射一维或二维图形,并保持其拓扑结构不变。

SOM网络通过对输入模式的反复学习可以使权重向量空间与输入模式的概率分布趋于一致,即概率保持性

SOM网络竞争层各神经元竞争对输入模式的响应机会,获胜神经元有关的各权重朝着更有利于它竞争的方向调整。以获胜神经元为圆心,对近邻神经元表现出兴奋性侧反馈,而对远邻神经元表现出抑制性侧反馈。正所谓,近邻者相互激励,远邻者相互抑制。

SOM算法是一个降维算法,它可以将高维的数据投影到节点平面上,实现高维数据可视化,然后根据降维之后的数据再进行聚类

SOM算法流程:

1)向量归一化

对SOM网络中的当前输入模式向量、竞争层中各神经元对应的权向量(),进行归一化处理,如下图所示,得到X^和Wj^:

2)寻找获胜神经元

将X^与竞争层所有神经元对应的权向量Wj^(j=1,2,3,4,5...m)进行相似性比较。最相似的神经元获胜,权向量为Wj^:

3)网络输出与权调整

按WTA学习法则,获胜神经元输出为“1”,其余为0。即:

只有获胜神经元才有权调整其权向量Wj*。其权向量学习调整如下:

α为学习率,0

4)重新归一化处理

归一化后的权向量经过调整后,得到的新向量不再是单位向量,因此要对学习调整后的向量重新进行归一化,循环运算,直到学习率衰减到0。保证了学习过程的收敛性

SOM算法优点:

1)将相邻关系强加在簇质心上,有利于聚类结果的解释;

2)具有降维功能;

3)可视化;

4)自组织;

5)无导师学习;

6)拓扑结构保持;

7)概率分布保持。

SOM算法缺点:

1)用户必选选择参数、邻域函数、网格类型和质心个数;

2)一个SOM簇通常并不对应单个自然簇、可能有自然簇的合并和分裂;

3)缺乏具体的目标函数;

4)SOM不保证收敛。

SOM与K-Means比较:

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

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

3)SOM可视化比较好,具有优雅的拓扑关系图。而K-Means不具有。

SOM算法应用:

SOM算法具有拓扑结构保持、概率分布保持、无导师学习及可视化等特性,吸引了广泛注意,有关SOM算法应用研究的各种成果不断涌现,现已被广泛应用于语音识别图像处理分类聚类组合优化(如TSP问题)、数据分析和预测等众多信息处理领域。

结语:

SOM自组织映射是通过模拟人脑对信号处理的特点而发展起来的一种人工神经网络(ANN),由芬兰赫尔辛基大学教授Teuvo Kohonen于1981年提出,是一种聚类高维可视化无监督学习算法。SOM自组织映射不同于其他人工神经网络,因为SOM自组织映射应用竞争学习,而不是纠错学习(例如BP神经网络)。并且SOM自组织映射使用邻域函数来保持输入的拓扑性质。SOM算法已经被广泛应用于语音识别图像处理分类聚类组合优化数据分析和预测等领域。有着较好的发展前景,值得大家作进一步的研究

------以往文章推荐------

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180503G1SNAV00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券