自组织神经网络SOM——MATLAB
Kohonen网络的拓扑结构
下图是1维和2维的两个SOM网络示意图。
- 网络上层为输出结点(假设为m个),按二维形式排成一个结点矩阵。
- 输入结点处于下方,若输入向量由n个元素,则输入端共有n个结点。
- 所有输入结点到输出结点都有权值连接,而在二维平面的输出结点相互间也可能有局部连接。
- Kohonen网络的功能就是通过自组织方法,用大量的样本训练数据来调整网络的权值,使得最后网络的输出能够反映样本数据的分布情况。
网络自组织算法
- 网络开始训练时,某个输出结点能对某一类模式作出特别的反应,以代表该模式类,但这里规定二维平面上相邻的结点能对实际模式分布中相近的模式类作出特别的反应。当某类数据模式输入时,对其某一输出结点给予最大的刺激,以指示该类模式的所属区域,而同时对获胜结点周围的一些结点给予较大的刺激。
- 当输入模式从一个模式区域移到相邻的模式区域时,二维平面上的获胜结点也从原来的结点移到其相邻的结点。因此,从Kohonen网络的输出状况,不但能判断输入模式所属的类别并使输出结点代表某一类模式,还能够得到整个数据区域的大体分布情况,即从样本数据中抓到所有数据分布的大体本质特性。
- 为了能使二维输出平面上相邻的输出结点对相近的输入模式类作出特别反应,在训练过程中需定义获胜结点的邻域结点。
- 假设本次获胜结点为Nj,它在t时刻的邻域结点用NEj(t)表示,NEj(t)包含以结点Nj为中心而距离不超过某一半径的所有结点。随着训练的进行, NEj(t)的半径逐渐缩小,最后只包含获胜结点Nj自身,即在训练初始阶段,不但对获胜的结点做权值调整,也对其较大范围内的几何邻接结点做相应的调整,而随着训练过程的继续,与输出结点相连的权向量也越来越接近其代表的模式类。
- 此时,对获胜结点进行较细微的权值调整时,只对其几何邻域接近的结点(包括其自身)进行相应调整,直到最后只对获胜的结点本身做细微的权值调整。在训练结束后,几何上相近的输出结点所连接的权向量既有联系(类似性)又互相区别,从而保证对于某一类输入模式,获胜结点能做出最大响应,而相邻结点做出较大响应。几何上相邻的结点代表特征上相近的模式类别。
自组织神经网络:Kohonen网络训练算法
(1) 权连接初始化,对所有从输入结点到输出结点的连接权值赋予随机的小数,置时间计数t = 0。
(2) 对网络输入模式。
(3) 计算输入与全部输出结点所连接向量 的距离:
(4) 具有最小距离的结点竞争获胜:
(5) 调整输出结点j*所连接的权值及几何邻域内的结点所连权值:
(6) 若还有输入样本数据,t = t+1,转(2)。
在算法中,是一种可变学习速度,随时间而衰减,表示随着训练过程的进行,权值调整的幅度越来越小,以使竞争获胜结点所连的权向量代表模式的本质属性。 也随时间而收缩,最后当t充分大时, ,即只训练获胜结点本身以实现Kohonen网络的自组织特征映射功能。
和都有许多不同的形式,在具体训练过程中可根据不同的数据分布进行选择和设计。
结合实例MATLAB语言实现,请看我的另一篇文章:http://blog.csdn.net/u010540396/article/details/52733380
自组织神经网络SOM——MATLAB相关推荐
- 自组织神经网络SOM原理——结合例子MATLAB实现
本文主要内容为SOM神经网络原理的介绍,并结合实例给出相应的MATLAB代码实现,方便初学者接触学习,本人才疏学浅,如有纰漏,还望各路大神积极指点. 一.SOM神经网络介绍 自组织映射神经网络, 即S ...
- 自组织神经网络SOM算法对Iris数据集进行聚类的matlab实现
SOM算法原理 SOM算法是一种将高维数据通过两层神经网络(输入层和竞争层)映射至用户定义的拓扑结构中,一般常用2D矩阵拓扑结构.下图是对SOM的形象展示: 所以算法一般分为以下几步: 第一:用户自定 ...
- SOM自组织神经网络
SOM自组织神经网络是神经网络的一种.个人感觉属于仿生学的一种方法.这种网络是基于生理学和脑科学研究成果提出的.与前向神经网络不同,它是一种无监督的学习.适用于数据聚类. 应用:数据聚类,数据降维(如 ...
- BP神经网络及matlab实现
本文主要内容包括: (1) 介绍神经网络基本原理,(2) AForge.NET实现前向神经网络的方法,(3) Matlab实现前向神经网络的方法 . 第0节.引例 本文以Fisher的Iris数据集 ...
- 机器学习(二)——竞争神经网络-SOM
竞争神经网络(无导师学习) 竞争型神经网络是基于无监督学习(Unsupervised learning)方法的神经网络的一种重要类型,它经常作为基本的网络形式,构成其它一些具有自组织能力的网络,如自组 ...
- MATLAB实现数字识别系统,基于人工神经网络的MATLAB手写数字识别系统
<基于人工神经网络的MATLAB手写数字识别系统>由会员分享,可在线阅读,更多相关<基于人工神经网络的MATLAB手写数字识别系统(8页珍藏版)>请在人人文库网上搜索. 1.基 ...
- matlab模糊解耦,模糊神经网络解耦MATLAB源程序
模糊神经网络解耦MATLAB源程序,有详细的注释和剖析,运行结果等. 模糊神经网络解耦MATLAB程序 例用隶属函数型神经网与模糊控制融合的解耦程序 具有耦合的两个相邻子系统的差分方程为 matlab ...
- 在matlab神经网络中xite,神经网络的MATLAB实现苏析超
<神经网络的MATLAB实现苏析超>由会员分享,可在线阅读,更多相关<神经网络的MATLAB实现苏析超(23页珍藏版)>请在人人文库网上搜索. 1.主要内容,BP神经网络编程 ...
- 自组织竞争网络(SOM)
一类采用无监督学习方式的神经网络模型,它无须期望输出,只是根据数据样本进行学习,并调整自身的权重以期望达到学习目的.自组织神经网络的学习规模大都采用竞争的学习规则. 竞争型神经网路的基本思想是网络竞争 ...
最新文章
- iOS网络开发中的同步、异步和请求队列
- AVFoundation之如何从摄像头获取图像
- Java直接内存与非直接内存性能测试
- Linux日志查找技巧
- 谈谈我对Javascript中This对象的理解
- 现代软件工程系列 学生的精彩文章 (5) 其实还是人的问题
- Python-cvxopt库的使用(2)(解决QP问题)
- ThinkPHP框架 _ 学习5
- 金融数据分析与挖掘实战4.1 Matplotlib(一)
- 北理工计算机专业汇编教材,李元章_北京理工大学计算机学院
- 【sklearn第十八讲】神经网络模型
- 解决Linux Fedora 虚拟机root用户登录提示鉴定故障的问题
- AutoViz:用一行代码自动可视化任何大小的任何数据集
- Interior-point methods(内点法)学习笔记
- 向量场的散度和旋度_矢量场散度和旋度的物理意义
- 输入一段字符串,记录当中有多少数字,大写字母,小写字母
- 慎用!3个容易被打的Python恶搞脚本!
- X86服务器虚拟化的三种技术--(1)
- 【转】跟着动画来学习TCP三次握手和四次挥手
- 大鱼号自媒体原创视频好过吗,大鱼号自媒体原创视频收益怎么样