自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map)

本文主要是介绍自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://blog.csdn.net/xbinworld/article/details/50818803
本文详细介绍一下自组织神经网络概念和原理,并重点介绍一下自组织特征映射SOM网络。SOM和现在流行的ANN(MLP)模型在结构上类似,都由非常简单的神经元结构组成,但是SOM是一类“ 无监督学习” 模型,一般的用法是将高维的input数据在低维的空间表示[1],因此SOM天然是一种降维方法。除了降维,SOM还可以用于数据可视化,以及聚类等应用中。

1、背景:自组织(竞争型)神经网络

SOM是一种自组织(竞争型)神经网络,除了SOM外,其他常见的自组织(竞争型)神经网络还有对偶传播(Counter propagation)网络,自适应共振理论(Adaptive Resonance Theory)网络等。

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

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

自组织(竞争型)神经网络的结构及其学习规则与其他神经网络相比有自己的特点。在网络结构上,它一般是由输入层和竞争层构成的两层网络;两层之间各神经元实现双向连接,而且网络没有隐含层。有时竞争层各神经元之间还存在横向连接(注:上面说的特点只是根据传统网络设计来说的一般情况,随着技术发展,尤其是深度学习技术的演进,我认为这种简单的自组织网络也会有所改变,比如,变得更深,或者引入time series概念)。在学习算法上,它模拟生物神经元之间的兴奋、协调与抑制、竞争作用的信息处理的动力学原理来指导网络的学习与工作,而不像多层神经网络(MLP)那样是以网络的误差作为算法的准则。竞争型神经网络构成的基本思想是网络的竞争层各神经元竞争对输入模式响应的机会,最后仅有一个神经元成为竞争的胜者。这一获胜神经元则表示对输入模式的分类[3]。因此,很容易把这样的结果和聚类联系在一起。

2、竞争学习的概念与原理

一种自组织神经网络的典型结构:如下图,由输入层和竞争层组成。主要用于完成的任务基本还是“分类”和“聚类”,前者有监督,后者无监督。聚类的时候也可以看成将目标样本分类,只是是没有任何先验知识的,目的是将相似的样本聚合在一起,而不相似的样本分离。

这里写图片描述

说到这里,一般的资料都会介绍一下欧式距离和余弦相似度,我也会讲一下基本的概念,更多距离计算方法可以参考我前面转载介绍的《距离计算方法总结》,以及《机器学习距离公式总结》,尤其是后一篇,写的不错:)

最常见的距离(相似度)计算方法就是欧氏距离和余弦相似度了,示意图如下,我就不多讲了。

欧式距离: 
这里写图片描述

余弦相似度: 
这里写图片描述

很容易证明,当图中X与Xi都是模为1的单位向量时(其实不一定要1,只要是常数就行),欧氏距离等价于余弦相似度(距离最小相似度越大),而余弦相似度退化为向量内积。

竞争学习规则——Winner-Take-All 
网络的输出神经元之间相互竞争以求被激活,结果在每一时刻只有一个输出神经元被激活。这个被激活的神经元称为竞争获胜神经元,而其它神经元的状态被抑制,故称为Winner Take All。

那么如何寻找获胜神经元?首先,对网络当前输入模式向量X和竞争层中各神经元对应的权重向量Wj(对应j神经元)全部进行归一化,使得X和Wj模为1;当网络得到一个输入模式向量X时,竞争层的所有神经元对应的权重向量均与其进行相似性比较,并将最相似的权重向量判为竞争获胜神经元。前面刚说过,归一化后,相似度最大就是内积最大:

这里写图片描述

也就是在单位圆(2D情况)中找到夹角最小的点。 
这里写图片描述

知道哪个神经元获胜后就是神经元的输出和训练调整权重了: 
这里写图片描述

因此,总结来说,竞争学习的步骤是: 
(1)向量归一化 
(2)寻找获胜神经元 
(3)网络输出与权值调整 
步骤(3)完成后回到步骤1继续训练,直到学习率衰减到0。学习率处于(0,1],一般随着学习的进展而减小,即调整的程度越来越小,神经元(权重)趋于聚类中心。

为了说明情况,用一个小例子[2]: 
这里写图片描述
这里写图片描述
这里写图片描述 
这里写图片描述 
这里写图片描述 
这里写图片描述 
这里写图片描述 
这里写图片描述

OK,今天先到这里,简单介绍一下自组织神经网络的概念,下一部分讲一下SOM的原理和应用场景,是重点哦。

参考资料

[1] https://en.wikipedia.org/wiki/Self-organizing_map 
[2] 百度文库,《SOM自组织特征映射神经网络》 
[3] 《第四章 自组织竞争型神经网络》, PPT

这篇关于自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/439949

相关文章

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

C++——stack、queue的实现及deque的介绍

目录 1.stack与queue的实现 1.1stack的实现  1.2 queue的实现 2.重温vector、list、stack、queue的介绍 2.1 STL标准库中stack和queue的底层结构  3.deque的简单介绍 3.1为什么选择deque作为stack和queue的底层默认容器  3.2 STL中对stack与queue的模拟实现 ①stack模拟实现

Mysql BLOB类型介绍

BLOB类型的字段用于存储二进制数据 在MySQL中,BLOB类型,包括:TinyBlob、Blob、MediumBlob、LongBlob,这几个类型之间的唯一区别是在存储的大小不同。 TinyBlob 最大 255 Blob 最大 65K MediumBlob 最大 16M LongBlob 最大 4G

Collection List Set Map的区别和联系

Collection List Set Map的区别和联系 这些都代表了Java中的集合,这里主要从其元素是否有序,是否可重复来进行区别记忆,以便恰当地使用,当然还存在同步方面的差异,见上一篇相关文章。 有序否 允许元素重复否 Collection 否 是 List 是 是 Set AbstractSet 否

FreeRTOS-基本介绍和移植STM32

FreeRTOS-基本介绍和STM32移植 一、裸机开发和操作系统开发介绍二、任务调度和任务状态介绍2.1 任务调度2.1.1 抢占式调度2.1.2 时间片调度 2.2 任务状态 三、FreeRTOS源码和移植STM323.1 FreeRTOS源码3.2 FreeRTOS移植STM323.2.1 代码移植3.2.2 时钟中断配置 一、裸机开发和操作系统开发介绍 裸机:前后台系

nginx介绍及常用功能

什么是nginx nginx跟Apache一样,是一个web服务器(网站服务器),通过HTTP协议提供各种网络服务。 Apache:重量级的,不支持高并发的服务器。在Apache上运行数以万计的并发访问,会导致服务器消耗大量内存。操作系统对其进行进程或线程间的切换也消耗了大量的CPU资源,导致HTTP请求的平均响应速度降低。这些都决定了Apache不可能成为高性能WEB服务器  nginx:

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super